55. Циклы в vhdl.
В VHDL существует три вида циклов: бесконечный, while и for. Синтаксис бесконечного цикла выглядит следующим образом:
[ loop_label: ] loop
{ sequential_statement }
end loop [ loop_label ] ;
Такие циклы часто используются для генерирования синхросигнала, как это сделано в следующем примере:
signal Clock: BIT := ’0′; — инициализация в 0
Clk_1: process (Clock)
begin
L1: loop
Clock <= not Clock after 5 ns; — период Clock равен 10 ns
end loop L1;
end process Clk_1;
Для завершения цикла может быть применен оператор exit, а для прерывания теку-
щейитерации – оператор next:
[ label: ] exit [ loop_label ][when boolean _expression];
[ label:] next [ loop_label ] [when boolean _expression];
Если метка не указана, то действие оператора относится к содержащему его циклу. Необязательное выражение boolean_expression позволяет задавать условие прерыва- ния выполнения цикла или его итерации. В следующем коде выполнение цикла завер- шится, когда А станет больше 10:
L2: loop
A := A+1;
exit L2 when A > 10;
end loop L2;
Цикл for
Общая форма цикла for имеет следующий вид:
[loop_label:] for loop_index in range loop
sequential statements
end loop [loop-label];
Индекс цикла loop_index автоматически описывается при использовании оператора цикла и не требует его предварительного декларирования. Индекс инициализируется первым значением из указанного диапазона range, после чего выполняются последо- вательные операторы (sequential statements). Индекс цикла может быть использован в последовательных операторах, но не может быть изменен в них. После выполнения одной итерации цикла индекс получает следующее значение из диапазона и последо- вательность операторов выполняется снова. Процесс продолжается до тех пор, пока индекс цикла не переберет все значения диапазона. После этого выполнение операто- ра цикла заканчивается и индекс становится недоступным. Для следующего цикла- индекс count_value в начале выполнения цикла будет инициализирован значением 0 и последовательность операторов в цикле будет выполнена 128 раз:
for count_value in 0 to 127 loop
count_out <= count_value after 5 ns;
end loop;
Цикл while
Выполнение операторов, размещенных в условном цикле while, будет продолжаться до тех пор, пока условие condition имеет значение истины:
[ loop_label: ] while condition loop
{ sequential_statement }
end loop [ loop_label ] ;
- 3. Режимы функционирования технических объектов.
- 4. Основные виды анализа технических систем (тс) при математическом
- 5. Классификация математических моделей.
- 6. Операторные модели систем (частотные, преобразование Лапласа, z-преобразование).
- 7. Свойства преобразования Лапласа.
- 9. Свойства пф. Классификация типовых пф.
- 10. Анализ систем в частотной области.
- 11. Анализ устойчивости тс: определения, критерии устойчивости, примеры анализа.
- 12. Качественный анализ технических систем. Необходимость выполнения качественного анализа технических систем, его цели.
- 13. Моделирование нелинейных систем: определение нелинейной системы, виды нелинейных характеристик элементов технических систем.
- 14. Особенности поведения и анализа нелинейных систем, методы решения систем нелинейных ду.
- 15. Модели нелинейных систем на фазовой плоскости. Анализ технических систем по фазовому портрету. Примеры построения фазовых портретов.
- 16. Факторные модели и модели регрессионного анализа. Примеры реализации.
- 17. Состав пакета OrCad. Порядок работы с пакетом OrCad.
- 18. Спектральный анализ в OrCad.
- 19. Частотный анализ в OrCad.
- 20. Статистический анализ в OrCad.
- 21. Язык моделирования pSpice. Основные семантические конструкции языка pSpice.
- 22. Язык моделирования pSpice. Описание топологии схемы.
- 23. Язык моделирования pSpice. Первые символы имён компонентов.
- 24. Язык моделирования pSpice. Классификация моделей компонентов. Имена типов моделей.
- 25. Математические операции в pSpice: классификация, порядок и примеры применения.
- Name — имя функции;
- 27. Язык pSpice. Анализ режима по постоянному току.
- 28. Язык pSpice. Частотный анализ.
- 29. Язык pSpice. Спектральный анализ.
- 30. Язык pSpice. Анализ шума.
- 31. Примеры описания директив на языке pSpice.
- 35. Реализация поведенческой модели в пакете OrCad. Применение элементов библиотеки abm.Slb.
- 36. Моделирование аналого-цифрового преобразователя (ацп) в пакете OrCad.
- 37. Моделирование цифро-аналогового преобразователя (цап) в пакете OrCad.
- 38. Основные блоки и конструкции языка vhdl.
- 39. Модели описания цифровой системы. Примеры.
- 40. Структура описания архитектурного тела vhdl. Примеры.
- 41. Структура описания интерфейса проекта на языке vhdl. Примеры.
- 42. Синтезируемое подмножество языка vhdl.
- 43. Интерфейс и архитектура объекта в языке vhdl.
- 44. Карта портов и карта настройки в языке vhdl.
- 45. Параллельный оператор generate в языке vhdl: назначение, общая формаописания, примеры применения.
- 46. Алфавит языка vhdl.
- 47. Скалярные типы в vhdl.
- 48. Регулярные типы в vhdl.
- 49. Физические типы в vhdl. Тип time.
- 50. Стандартные типы в vhdl.
- 51. Понятия сигнала и переменной в vhdl.
- 52. Атрибуты сигналов в языке vhdl.
- 53. Атрибуты скалярного типа в языке vhdl.
- 54. Атрибуты регулярного типа в языке vhdl.
- 55. Циклы в vhdl.
- 56. Оператор ветвления и селектор в vhdl.
- 57. Объявление компонента в vhdl. Включение компонента в схему.
- 58. Модели задержки в языке vhdl. Примеры применения.
- 59. Примеры описания регистровых схем на языке vhdl. Триггер d-типа
- Vhdl-файл имеет следующее описание:
- D-триггер с асинхронным сбросом
- 60. Основные операции в vhdl. Приоритеты операций.
- 61. Типы std_ulogic и std_logic.
- 62. Спецификация процедуры в vhdl.
- 63. Спецификация функции в vhdl.
- Объявление функции
- 64. Пакет std_logic_arith. Функции преобразования типов.