Проектирование цифровых устройств с помощью языка описания аппаратуры VHDL. Бобрешов А.М - 33 стр.

UptoLike

Составители: 

33
CLK<='0';
loop wait for 50 NS;
CLK<= NOT CLK;
end loop;
end process CLOCK_GENERATOR;
EXECUTE : process
variable INT_STATE: integer range 0 to 63:=0;
begin
OUT DATA<=0;
loop
wait until(CLK='L' AND CLK'EVENT);
if (INT_STATE=MAX VALUE) THEN INT_STATE:=0;
else INT_STATE:=INT_STATE+L;
end if;
OUT_DATA<= INT_STATE;
end loop;
end process EXECUTE;
end BEHAVIOR;
Оператор с ключевым словом while обязательно содержит в теле
цикла операторы, изменяющие описанное в итерационной схеме условие.
Операторы цикла повторяются, пока при вычислении условия не
получается значения false. Условие проверяется каждый раз перед
исполнением тела цикла. Например
, оператор повторения с ключевым
словом for повторяется для всех значений переменной из заданного
итерационной схемой диапазона.
Если при моделировании и, в частности, при описании тестовых
воздействий смысл операторов повторения практически не отличается от
подобных конструкций в традиционных языках программирования, то при
интерпретации в аппаратуре имеются существенные отличия.
Предусматривается не просто
последовательное во времени повторение
набора преобразований, а реализация набора устройств, выполняющих
однотипные действия, причем эти устройства работают параллельно.
Число устройств определяется итерационной схемой. Для оператора
с ключевым словом forэто просто число значений переменной в
объявленном диапазоне. Для варианта с ключевым словом while условие
не может быть связано с сигнальными
данными, способными изменяться в
реальном устройстве. Как правило, для аппаратной реализации оператор
повторения должен иметь логически постоянные границы. В противном
                                 33
          CLK<='0';
          loop wait for 50 NS;
                CLK<= NOT CLK;
          end loop;
      end process CLOCK_GENERATOR;


     EXECUTE : process
     variable INT_STATE: integer range 0 to 63:=0;
     begin
       OUT DATA<=0;
       loop
            wait until(CLK='L' AND CLK'EVENT);
            if (INT_STATE=MAX VALUE) THEN INT_STATE:=0;
            else INT_STATE:=INT_STATE+L;
            end if;
            OUT_DATA<= INT_STATE;
       end loop;
     end process EXECUTE;
     end BEHAVIOR;

     Оператор с ключевым словом while обязательно содержит в теле
цикла операторы, изменяющие описанное в итерационной схеме условие.
Операторы цикла повторяются, пока при вычислении условия не
получается значения false. Условие проверяется каждый раз перед
исполнением тела цикла. Например, оператор повторения с ключевым
словом for повторяется для всех значений переменной из заданного
итерационной схемой диапазона.
     Если при моделировании и, в частности, при описании тестовых
воздействий смысл операторов повторения практически не отличается от
подобных конструкций в традиционных языках программирования, то при
интерпретации в аппаратуре имеются существенные отличия.
Предусматривается не просто последовательное во времени повторение
набора преобразований, а реализация набора устройств, выполняющих
однотипные действия, причем эти устройства работают параллельно.
     Число устройств определяется итерационной схемой. Для оператора
с ключевым словом for – это просто число значений переменной в
объявленном диапазоне. Для варианта с ключевым словом while условие
не может быть связано с сигнальными данными, способными изменяться в
реальном устройстве. Как правило, для аппаратной реализации оператор
повторения должен иметь логически постоянные границы. В противном