Язык AHDL


Импорт и экспорт конечных автоматов


Вы можете импортировать и экспортировать конечные автоматы между TDF файлами и другими файлами проекта, определяя входные и выходные порты как MACHINE INPUT или MACHINE OUTPUT в разделе Subdesign. Прототип функции, который представляет файл, содержащий конечный автомат, должен указывать, какие входы и выходы принадлежат конечному автомату с помощью предварения имен сигналов ключевым словом MACHINE.

Типы портов MACHINE INPUT и MACHINE OUTPUT нельзя использовать в файле проекта верхнего уровня. Хотя высокоуровневый файл с этими портами полностью не компилируется, Вы можете использовать команду Project Save & Check (меню File) для проверки его синтаксиса и команду Create Default Include File (меню File) для создания Include файла, который представляет текущий файл.

Вы можете переименовать конечный автомат с помощью временного имени, вводя объявление псевдоимени автомата в раздел Variable. Вы можете использовать это псевдоимя в файле, где создан этот автомат или в файле, который использует порт MACHINE INPUT для импорта конечного автомата. Затем Вы можете применить это имя вместо исходного имени автомата.

Файл ss_def.tdf, приведенный ниже, определяет и экспортирует конечный автомат ss с помощью порта ss_out.

 

SUBDESIGN ss_def

(

 clk, reset, count : INPUT;

ss_out    : MACHINE OUTPUT;

)

VARIABLE

   ss: MACHINE WITH STATES (s1, s2, s3, s4, s5);

BEGIN

   ss_out = ss;

 

   CASE ss IS

      WHEN s1=>

         IF count THEN ss = s2; ELSE ss = s1; END IF;

      WHEN s2=>

         IF count THEN ss = s3; ELSE ss = s2; END IF;

      WHEN s3=>

         IF count THEN ss = s4; ELSE ss = s3; END IF;

      WHEN s4=>

         IF count THEN ss = s5; ELSE ss = s4; END IF;

      WHEN s5=>

         IF count THEN ss = s1; ELSE ss = s5; END IF;

   END CASE;

 

   ss.(clk, reset) = (clk, reset);

END;

 

Файл ss_use.tdf, приведенный ниже, импортирует конечный автомат с помощью порта ss_in.

 

SUBDESIGN ss_use

(

   ss_in : MACHINE INPUT;




Начало  Назад  Вперед



Книжный магазин