Звоните! 
 (926)274-88-54 
 Бесплатная доставка. 
 Бесплатная сборка. 
Ассортимент тканей

График работы:
Ежедневно. С 8-00 до 20-00.
Почта: soft_hous@mail.ru
Читальный зал -->  База цифровых устройств 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 [ 161 ] 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176

Глава В 483

ready<=0; strob<=0; endout<=0; endRd<=l;

next sreg<=Idle; WHEN WaitOut =

load<=0*; shift<=0; clkcou<=0; clrc- i<=0;

ready<=0*.; 5trob<=0,- endout<= 0; endRd<=0;

IF (ack- 0) then next 3req<=WaitOut; END if;

if (ack-lj THEN next sreg<=StateStbOut; end IF; WHEN StateStbOut =>

lO3d<-0; shift<=0; :lkcou<-0 ; clrcou<T;

ready<=l.; strob<=; endout<-0; t ndPd< 0:

if (count=0) THEN next sreg<=StateCount; END if;

if (count=l) then next sreg<=Quit; END if; when StateCount =>

load<=0; shift<-4; clkcou<-4; clrcou<=0;

ready<=l; strob<=0; endout<=0; endBd< 0;

next sreg<=StateStbOat; WHEN Quit =

load<=0: shift<=0; clkcou i; clrcou<=u; ready<=0; strob<=0; endout<=4; ttiidRd< 0; IF iack-O) then next sreg<-Idle; end if; if (ack=4, THEN next sreg<-Quit; END if; WHEN OTHERS => end case; end if; END PROCESS; END BEHAVIOR;

Разделы проектного модуля типичны для языка VHDL, В заголовочном разделе ENTITY (аналог прототипа в алгоритмических языках) перечислены имена и типы всех сигналов: входных внешних управляющих сигналов - тактового сигнала (clk), начального сброса (reset), запросов на чтение и вывод (RD и АСК) соответственно, и, наконец, сигнала окончания счета (count) и выходных управляющих сигналов - управления слвигаюшим регистром (load, shift), управления счетчиком сдвигов (clrcou, cikccu), внешними выходными сигналами (ready, strob) и сигналами окончания

подрежимов (ENDOUT, ENDRD).

Следующий раздел - architecture представляет собой описание архитектуры или поведения (в натем случае повеления) блока, интерфейс которого был описан в entity. Как и в обычных языках, в начале раздела дастся опи-



сание типов и объявление переменных, используемых при описании действий, выполняемых в разделе architect -re. В данном автомате определен перечислительный тип данных tyF- : f g со всем списком допустимых значений (они, естественно, совпадают с имспа.ми, введенными в фаф-схеме переходов). Далее в тексте объявлены две переменные (класса Signal) . - i и next sreg введенного типа type sr*=g- Введение двух переменных связано с желанием избежать гонок в автомате при переходе от одного состояния к другому.

Главная часть архитектурного тела содержит два оператора параллельного типа (процесса). Первый процесс запускается на исполнение каждый раз, ко1да происходит изменение сигналов clk или atir... Однако его ос-

новное действие - назначение автомату нового состояния происходит только по переднему фронту сигнала clk. Использование для тактирования автомата переднего фронта синхронизирующею сигнала (предложение

clk-l AND clkevenL THEN srcg-nextsrpg; FKj tf;) СЛуЖИТ для СИН-

хронизации выбранных библиотечных операционных узлов и обсспсчпг стабильность входных управляюших сигналов в моменты тактирования.

Поведение управляющего автомата в тексте программы задано вторым процессом. Второй процесс запускается каждый раз, когда изменяется сосгоя-нис автомата или изменяется какой-либо входной сигнал, содержимое этого процесса и определяет повеление управляющего автомата. При составлении программы автомата учитывалась необходимосгь сш установки в исходное состояние при подаче сигнала сброса (выражение if (r=s= Ч) тне

nextsreg..- Idle;).

Конечные автоматы в языке VHDL удобно описывать посредством оператора выбора CASE , используя в качестве ключа выбора варианта переменную состояния автомата в текущий момент времени. Внутри каждого варианта определяется состояние перехода и значения выходных сипшюв, формируемых в соответствии с входными условиями. Состояние перехода из текущего состояния (назначение переменной nextsreg нового значения) задается условным оператором, логическое выражение которого совпадает с последовательностью условий, встречающихся на соответствующих путях переходов на схеме алгоритма. Аналогично определяются и выходные сигналы, вырабатываемые на переходах и задающие исполняемые в других блоках опезации. Основное отличие профаммы на языке VHDL от аналогичной профаммы на языке AUDI. наблюдается в правилах формирования будущих состояний.

Четвертый этап.

Компиляция проекта и основные параметры устройства

После создания всех фрагментов проекта и схемы проекта в целом выполняется его компиляция. Требуемый объем ОЗУ сделал целесообразным выбор в качестве БИС PLD семейства FLEX IOK. После успешной компиля-гщи был получен (]зггйл отчета (*.ф1). ноказашиий. что данный проект далеко



не полностью использует возможности, предлагаемые самым млачпжм представителем семейства EPF10K10. Общие затраты БИС на реализацию проекта компилятор определил как 7%. Правда, на реа.тизати1Ю модуля ОЗУ компилятор использовал 33% имеющихся у БИС ресурсов

Пятый этап. Тестирование проекта

Тестирование проекта также выполнялось средствами САПР МАХ + PLUS п. Созданная тестовая последовательность должна была проверять лишь ключевые моменты работы разработанного устройства. Результаты моделирования приведены на рис. 9.9. Дадим пояснения основным фрагментам моделирования.

\. Системное время в интервале от О до 0,1 мкс. Режим начального сброса устройства. Проверка всех возможных исходных ситуаций перед сбросом весьма громоздка и в данном примере эти варианты из соображений большого объема не включены.

2. Системное время в интервале от 0,1 до 0,3 мкс. Режим записи в ОЗУ по адресу 04 (здесь, как и далее, значения всех адресов и данных будут даны в шестнадцатиричной системе счисления) содержимого, равного 45.

3. Системное время в интервале от 0,3 до 0,.S5 мкс. Режим записи в ОЗУ по адресу 05 данных, равных АА.

4. Когда системное время достигло значения 0,7 мкс, начался режим записи в сдвигаюшии регистр содержимого ОЗУ по адресу 04. Физически запись произошла ири переходе автомата sreg в состояние LdBl, т. е. приблизительно в момент времени 1,1 мкс, однако поскольку внешним признаком завершения процесса перезаписи служит появление сигнала OutReacly, то именно после появления этого сигнала внешнее устроГтство может изменять значения адреса ОЗУ от удерживаемого ранее значения 04 Поэтому окончанием четверто]0 этапа тестирования можно считать момент системного времени после 1,7 мкс.

5. В качестве следующего проверяемого фрагмента алгоритма работы устройства целесообразно выбрать вывод содержимого сдвигающего регистра в форме последовательного кода (со стороны старших разрядов) на выходной контакт OutData. Инициализируюшим вывод ст налом является входной сигнал устройства OutAck, после его появления (в примере это момент времени 2,25 мкс) начинается цикл выдачи последовательного кода, каждый бит после его появления на выходном контакте через 0,2 мкс сопровождается стробируюшим сигналом OuiStrob. Признаком окончания цикла служит сброс сигнала OutReady (в примере это происходит после 5,7 мкс).

AnajHTj временных диаграмм позволяет не только проверить правильность функционирования устройства, но и исследовать временное поведение отдельных элементов проекта



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 [ 161 ] 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176



ООО «Мягкий Дом» - это Отечественный производитель мебели. Наша профильная продукция - это диваны еврокнижка. Каждый диван можем изготовить в соответствии с Вашими пожеланияи (размер, ткань и материал). Осуществляем бесплатную доставку и сборку.



Звоните! Ежедневно!
 (926)274-88-54 
Продажа и изготовление мебели.


Копирование контента сайта запрещено.
Авторские права защищаются адвокатской коллегией г. Москвы
.