Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
Топ:
Методика измерений сопротивления растеканию тока анодного заземления: Анодный заземлитель (анод) – проводник, погруженный в электролитическую среду (грунт, раствор электролита) и подключенный к положительному...
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Интересное:
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Финансовый рынок и его значение в управлении денежными потоками на современном этапе: любому предприятию для расширения производства и увеличения прибыли нужны...
Средства для ингаляционного наркоза: Наркоз наступает в результате вдыхания (ингаляции) средств, которое осуществляют или с помощью маски...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Атрибутом называют особенное, долговременное свойство предмета. В языке VHDL сигналы, переменные и другие объекты, кроме своего значения, также имеют множество атрибутов. У каждого типа объектов есть несколько предопределенных атрибутов. Пользователь также может ввести ряд специальных атрибутов. Атрибуты бывают различного типа: атрибут - тип, значение, сигнал, функция, диапазон.
Атрибут объекта записывается как
\имя объекта\' \имя атрибута\.
Для скалярного типа Т предопределены следующие атрибуты:
T'left - самое левое значение множества элементов скалярного типа Т.
T'right - самое правое значение множества элементов скалярного типа Т.
T'high - наибольшее значение в множестве элементов скалярного типа Т.
T'low -наименьшее значение в множества элементов скалярного типа Т.
T'image(X) - функция строкового представление выражения Х типа Т.
T'value(Х) - функция значения типа Т от строкового представления Х.
T'pos(Х) - функция номера позиции элемента Х типа Т.
T'val(Х) -функция значения элемента типа Т стоящего в позиции Х.
Примерыатрибутов:
type st is (one,two,three); st'right = three, st'pos(three) = 2, st'val(1) = two.
positive'low = 1, positive'high =2147483647.
integer'value("1_000") =1000, integer'image(330) ="330".
Атрибуты регулярного типа в языке VHDL.
Атрибутом называют особенное, долговременное свойство предмета. В языке VHDL сигналы, переменные и другие объекты, кроме своего значения, также имеют множество атрибутов. У каждого типа объектов есть несколько предопределенных атрибутов. Пользователь также может ввести ряд специальных атрибутов. Атрибуты бывают различного типа: атрибут - тип, значение, сигнал, функция, диапазон.
Атрибут объекта записывается как
\имя объекта\' \имя атрибута\.
Для регулярного типа A предопределены следующие атрибуты:
A'left[(N)] - левое значение диапазона индексов по N-й размерности.
A'right[(N)] - правое значение диапазона индексов по N-й размерности.
A'high[(N)] - наибольшее значение диапазона индексов по N-й размерности.
A'low[(N)] - наименьшее значение диапазона индексов по N-й размерности.
A'range[(N)] - диапазон индексов по N-й размерности.
A'reverse_range[(N)] - обратный диапазон индексов по N-й размерности.
A'length[(N)] - протяженность диапазона индексов по N-й размерности.
A'ascending[(N)] - функция, равная true, если диапазон индексов по N-й размерности - возврастающий.
Примерыпримененияатрибутов:
type s2 is array (2 downto 1, 0 to 3) of integer;
s2'left(1) = 2, s2'right(2) = 3, s2'high(1) = 2, s2'low(2) = 0,
s2'range(2) = 0 to 3, s2'reverse_range(1) = 1 to 2, s2'length(2) = 4.
Циклы в 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
endloop 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;
endloop 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;
endloop;
Цикл while
Выполнение операторов, размещенных в условном цикле while, будет продолжаться до тех пор, пока условие conditionимеет значение истины:
[ loop_label: ] while condition loop
{ sequential_statement }
end loop [ loop_label ];
|
|
|
Механическое удерживание земляных масс: Механическое удерживание земляных масс на склоне обеспечивают контрфорсными сооружениями различных конструкций...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Архитектура электронного правительства: Единая архитектура – это методологический подход при создании системы управления государства, который строится...
Таксономические единицы (категории) растений: Каждая система классификации состоит из определённых соподчиненных друг другу...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!