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

UptoLike

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

27
T'pred(X)
Перечислимый,
физический, целый
Значение в наборе значений Т
на одну позицию меньшее X
T'succ(X)
Перечислимый,
физический, целый
Значение в наборе значений T
на одну позицию большее X
Для перечислимых типов номер позиции значения отсчитывается от
нуля, присвоенного крайнему левому значению с инкрементом номера
позиции для каждого следующего значения. Для перечислимых типов
справедливо:
T'leftof = T'pred Т'left = Т'low Т'right = Т'high
Т'rightof = T'succ.
Смысл конструкторов leftof, pred, left, low, right, high, rightof, succ
для целых и физических типов зависит от направления (to
или downto),
объявленного в декларации типа. Если объявлено обратное направление,
то T'left= т'high T'leftof= T'succ и т. д.
Пусть совокупность возможных состояний некоторого устройства
объявлена типом
type STATE is(s0, s1, s2, s3, s4, s5);
а текущее состояние представлено сигналом current_state.
Рассмотрим поведение фрагмента, представленного процессом:
process
if CURRENT_STATE = STATE’right then
CURRENT_STATE<=STATE'left;
else current_state <=state'succ(current_state);
wait 100 nS;
end if;
end process;
В соответствии с приведенным фрагментом через каждые 100 нс
происходит инициализация процесса и изменение состояния. Устройство
поочередно принимает состояния в порядке записи в списке значений от
S0 до S5, а из S5 выполняется переход в начальное состояние S0.
Предопределенные атрибуты массивов упрощают запись
подпрограмм и описаний настраиваемых модулей. Они, в частности,
позволяют записывать границы обработки безотносительно к
фактическому
размеру массива.
                                     27
  T'pred(X)    Перечислимый,          Значение в наборе значений Т
               физический, целый      на одну позицию меньшее X
  T'succ(X)    Перечислимый,          Значение в наборе значений T
               физический, целый      на одну позицию большее X

      Для перечислимых типов номер позиции значения отсчитывается от
нуля, присвоенного крайнему левому значению с инкрементом номера
позиции для каждого следующего значения. Для перечислимых типов
справедливо:
      T'leftof = T'pred        Т'left = Т'low        Т'right = Т'high
      Т'rightof = T'succ.
      Смысл конструкторов leftof, pred, left, low, right, high, rightof, succ
для целых и физических типов зависит от направления (to или downto),
объявленного в декларации типа. Если объявлено обратное направление,
то T'left= т'high T'leftof= T'succ и т. д.


      Пусть совокупность возможных состояний некоторого устройства
объявлена типом
      type STATE is(s0, s1, s2, s3, s4, s5);
      а текущее состояние представлено сигналом current_state.
Рассмотрим поведение фрагмента, представленного процессом:
      process
        if CURRENT_STATE = STATE’right then
            CURRENT_STATE<=STATE'left;
        else current_state <=state'succ(current_state);
            wait 100 nS;
        end if;
      end process;
      В соответствии с приведенным фрагментом через каждые 100 нс
происходит инициализация процесса и изменение состояния. Устройство
поочередно принимает состояния в порядке записи в списке значений от
S0 до S5, а из S5 выполняется переход в начальное состояние S0.

     Предопределенные атрибуты массивов упрощают запись
подпрограмм и описаний настраиваемых модулей. Они, в частности,
позволяют записывать границы обработки безотносительно к
фактическому размеру массива.