Главная    Почта    Новости    Каталог    Одноклассники    Погода    Работа    Игры     Рефераты     Карты
  
по Казнету new!
по каталогу
в рефератах

Моделирование времени. Обеспечение параллельности в работе устройств ВС в системе VHDL

ания аппаратуры (параллельные процессы и  средства  их  взаимодействия);
средства потокового описания (описания на уровне межрегистровых  передач)  -
параллельные операторы назначения сигналу ( <= ) с транспортной  (transport)
или  инерциальной  задержкой  передачи  сигналов  и  средства   структурного
описания объектов (операторы конкретизации компонент с заданием карт  портов
port map и карт настройки generic map).
   Параллельные операторы VHDL включают:
    . оператор процесса (process);
    . оператор блока (blok);
    . параллельный оператор назначения сигналу (<=)
    . параллельный оператор утверждения (assert);
    . параллельный оператор вызова процедуры;
    . оператор конкретизации компоненты;
    . оператор генерации (generate).

      Последовательные и параллельные операторы назначения  сигнала,  вызова
процедуры и утверждения различаются  контекстно,  т.е.  внутри  процессов  и
процедур  они  последовательные,  вне  -  параллельные.   Все   параллельные
операторы VHDL могут быть выражены через оператор процесса.  Порядок  записи
параллельных операторов может быть произвольным.
      Базовым элементом описания систем на языке VHDL  является  блок.  Блок
содержит  раздел  описаний   данных   и   раздел   параллельно   исполняемых
операторов. Частным случаем блока является описание архитектуры  объекта.  В
рамках  описания  архитектуры  могут  использоваться  внутренние,  вложенные
блоки. Наряду со всеми  преимуществами  блочной  структуры  программы  и  ее
соответствия естественному иерархическому  представлению  структуры  проекта
операторы  блока  языка  VHDL  позволяют   устанавливать,   условия   охраны
(запреты) входа в блок. Только при истинности значения  охранного  выражения
управление передается в блок и инициирует выполнение операторов его тела.
Блок содержит  раздел  описаний  данных  и  раздел  параллельно  исполняемых
операторов. Частным случаем блока является описание архитектуры  обьекта.  В
рамках  описания  архитектуры  могут  использоваться  внутренние,  вложенные
блоки.

Наряду  со  всеми  преимуществами   блочной   структуры   программы   и   ее
соответствия естественному иерархическому  представлению  структуры  сложной
системы, операторы блока (block) языка VHDL позволяют устанавливать  условия
охраны выполнения параллельных операторов  назначения  сигналу,  входящих  в
тело блока.


            Средства поведенческого описания ВС. Оператор process

Приведенный ниже вариант  описания  архитектуры  behavior1  обьекта  Object1
(при A1 = A2 = 1  выходы В1=1  и  В2=0,  в  остальных  случаях  В1=0,  В2=1)
использует условный оператор (if) языка VHDL

architecture behavior1 of Object1 is
   begin
      process
         begin                               -- в теле процесса
последовательные
         if  (A1='1') and (A2='1')         -- операторы if и wait
             then B1<='1'; B2<='0';
             else B1<='0'; B2<='1';
         end if;
         wait  on  А1,А2;
      end process;
   end ;
После заголовка, содержащего имя архитектуры (behavior1)  следует  ее  тело,
являющееся процессом (process).  Процесс,  находясь  в  операторе  wait  on,
ожидает, пока   не   изменится  хотя  бы  один  из  сигналов  (А1  или  А2),
указанных в списке оператора  ожидания  wait.  Как  только  это  произойдет,
дойдя до оператора конца (end process) вернется к своему началу.  Выполнится
условный  оператор  if,  который,  в  зависимости  от  истинности   условия,
передает управление той или другой  группе  операторов  назначения  (  <=  )
выходным сигналам В1 и В2  новых  значений.  В  итоге  процесс  снова  будет
ожидать в операторе wait on.
     Второй вариант поведенческого  описания  архитектуры  обьекта  Object2,
назовем его behavior2,  использует оператор  выбора  (CASE)  языка  VHDL.  В
заголовке процесса дан список чувствительности  процесса  process  (A1,A2)).
Это указание эквивалентно оператору wait on A1,A2 в конце описания  процесса
и   позволяет   повысить   компактность   описания.   Процесс   со   списком
чувствительности не может содержать явный оператор wait  on.  Ниже  приведен
текст второго варианта:

architecture behavior2 of Object1 is
  begin
    process (A1,A2)
      begin
        case (A1 & A2) is
           when "11"=> В1<='1'; B2<='0';
           others B1<='0'; B2<='1';
        end case;
    end process;
end behavior2;



                      Средства потокового описания ВС.
                  Параллельный оператор назначения сигналу
Параллельные операторы назначения сигнала (  <=  )  срабатывают  параллельно
при изменении хотя бы одного из сигналов в своих правых частях.
Например, если некоторые  выходные  сигналы  B1  и  B2  зависят  от  входных
сигналов A1, A2, A3 следующим образом: B1 = A1 & A2, B2 = A1  &  A3,  то  их
можно описать следующим образом:

begin
      …
      B1<= A1 and A2;
      B2<= A1 and A3;
      …
end;

Здесь при изменении сигнала A1 вычисляется новое  значение  обоих  сигналов,
сигнала A2 – только сигнала B1, A3 – только B2.

                     Средства структурного описания ВС.
                      Оператор конкретизации компоненты
Структурное  описание  архитектуры  представляет  структуру   объекта,   как
композицию  из  компонент,  соединенных   между   собой   и   обменивающихся
сигналами. Функции, реализуемые компонентами, в  явном  виде  в  отличие  от
предыдущих примеров  в  структурном  описании  не  указываются.  Структурное
описание включает описание интерфейсов компонент, из которых состоит  схема,
и их связей. Полные (интерфейс + архитектура) описания объектов -  компонент
должны  быть  ранее  помещены  в  проектную   библиотеку,   подключенную   к
структурному описанию архитектуры.

       A1        X                B2

       A2
                                  B1



Например, структурное описание  архитектуры объекта Object2, схема которого
приведена выше, может быть таким:
architecture STRUCT_Object2 of Object2 is
        component INE2                  -- ниже интерфейс компоненты INE2
        port  (X1,X2:in bit; Y:out bit);
        end component;
        signal X: bit;                       -- вспомогательный сигнал Х
begin                                   -- ниже описание связей экземпляров
компонент
   E1:INE2  port  map  (A1,A2,Х); -- схема Е1
   E2:INE2  port  map (Х,Х,B1);     -- схема Е2
   B2<=X;                                    -- передача Х на порт В2
end;


Источники:
1. А.Поляков «Моделирование ЭВМ на языке VHDL»
2. Дж.Армстронг «Моделирование цифровых систем на языке VHDL»
3. http://ermak.cs.nstu.ru/
4. http://www.sm.bmstu.ru/
5. http://www.chipnews.ru/

12
скачать работу

Моделирование времени. Обеспечение параллельности в работе устройств ВС в системе VHDL

 

Отправка СМС бесплатно

На правах рекламы


ZERO.kz
 
Модератор сайта RESURS.KZ