Главная » Просмотр файлов » Проектирование цифровых устройств с использованием ПЛИС

Проектирование цифровых устройств с использованием ПЛИС (1055366), страница 7

Файл №1055366 Проектирование цифровых устройств с использованием ПЛИС (Проектирование цифровых устройств с использованием ПЛИС) 7 страницаПроектирование цифровых устройств с использованием ПЛИС (1055366) страница 72017-12-27СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 7)

Потребность в таких линиях часто возникает при наращивании блоков ОЗУ, подключении к общим магистралям микропроцессорных устройств и т. д.Примеры описания устройств выходов с третьим состоянием:LIBRARY ieee;USE ieee.std_logic_1164.ALL;-- Синтезируемое описание простого выходного буфера (драйвера)ENTITY tristate1 ISPORT ( input, enable : IN std_logic;output : OUT std_logic) ;END tristate1 ;ARCHITECTURE single_driver OF tristate1 ISBEGINoutput <= input WHEN enable = '1' ELSE 'Z' ;END single_driver ;-- Синтезируемое описание драйвера шиныLIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY tristate2 ISPORT ( input3, input2, input1, input0: IN std_logic_vector (7DOWNTO 0);enable : IN std_logic_vector (3 DOWNTO 0);output : OUT std_logic_vector (7 DOWNTO 0) );END tristate2 ;ARCHITECTURE multiple_drivers of tristate2 ISBEGINoutput <= input3 WHEN enable(3) = '1' ELSE "ZZZZZZZZ" ;output <= input2 WHEN enable(2) = '1' ELSE "ZZZZZZZZ" ;output <= input1 WHEN enable(1) = '1' ELSE "ZZZZZZZZ" ;output <= input0 WHEN enable(0) = '1' ELSE "ZZZZZZZZ" ;END multiple_drivers;-- Синтезируемое описание шинного формирователяLIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY bidir ISPORT ( input_val, enable: IN std_logic;output_val : OUT std_logic;46bidir_port : INOUT std_logic) ;END bidir ;ARCHITECTURE tri_state OF bidir ISBEGINbidir_port <= input_val WHEN enable = '1' ELSE 'Z' ;output_val <= bidir_port;END tri_state;2.8.

Пример описания ОЗУДля описания адресной памяти с произвольным доступом целесообразно применять общепринятый шаблон, правильно распознаваемый программами синтеза и размещаемый на ПЛИС вовстроенных блоках памяти.В примере описан блок памяти, состоящий из восьми 16разрядных слов. Запись в память осуществляется с учетом сигналов разрешения байт BE:LIBRARY ieee;USE ieee.std_logic_1164.ALL;USE ieee.std_logic_arith.ALL;USE ieee.std_logic_unsigned.ALL;ENTITY MEM_8_16_BE ISPORT (A : IN std_logic_vector(2 DOWNTO 0);BE: IN std_logic_vector(1 DOWNTO 0);WE: IN std_logic;CLK: IN std_logic;DIN: IN std_logic_vector(15 DOWNTO 0);DOUT: OUT std_logic_vector(15 DOWNTO 0));END MEM_8_16_BE;ARCHITECTURE BEHAV OF MEM_8_16_BE ISTYPE MEM_8_16 IS ARRAY (0 TO 7) OF std_logic_vector(7DOWNTO 0);SIGNAL RAM0: MEM_8_16;SIGNAL RAM1: MEM_8_16;SIGNAL D:std_logic_vector(15 DOWNTO 0);BEGINOUT0: PROCESS (CLK,WE,A,BE)47BEGINIF (CLK'EVENT AND CLK='1') THENIF ((WE = '1' OR WE = 'H') AND BE(0)='0') THENRAM0(conv_integer(unsigned(A)))(7 DOWNTO 0) <=DIN(7 DOWNTO 0);END IF;END IF;END PROCESS OUT0;DOUT(7 DOWNTO 0) <= RAM0(conv_integer(unsigned(A)))(7DOWNTO 0);OUT1: PROCESS (CLK,WE,A,BE)BEGINIF (CLK'EVENT AND CLK='1') THENIF ((WE = '1' OR WE = 'H') AND BE(1)='0') THENRAM1(conv_integer(unsigned(A)))(7 DOWNTO 0) <= DIN(15DOWNTO 8);END IF;END IF;END PROCESS OUT1;DOUT(15 DOWNTO 8) <= RAM1(conv_integer(unsigned(A)))(7DOWNTO 0);END behav;2.9.

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

12. Как известно, в автоматах Мура выходной сигнал зависиттолько от текущего состояния и, в отличие от автомата Мили, независит от входного сигнала.Пример реализации устройства управления в виде автоматаМура с синхронными входами:LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;ENTITY control_unit IS48PORT(U : IN std_logic_vector ( 3 DOWNTO 1 );clk : IN std_logic;rst : IN std_logic;V : OUT std_logic_vector ( 3 DOWNTO 1 ) );Состоянияавтомата Мураs0Состоянияавтомата МилиНачало0s0U11s1V10s1U21s2V2U31s20s3V3s0КонецРис. 12. Алгоритм работы устройства управления и примеры кодирования состояний для автоматовМура и МилиARCHITECTURE moore OF control_unit ISTYPE STATE_TYPE IS (s0,s1,s2,s3);SIGNAL current_state : STATE_TYPE;BEGINclocked_proc : PROCESS (clk, rst)BEGINIF (rst = '0') THENcurrent_state <= s0;ELSIF (clk'EVENT AND clk = '1') THENCASE current_state ISWHEN s0 =>V(3 downto 1) <= (OTHERS => '0');IF (U(1)='1') THEN current_state <= s1;49ELSE current_state <= s0; END IF;WHEN s1 =>V<= "001";IF (U(2) = '1') THEN current_state <= s2;ELSE current_state <= s1; END IF;WHEN s2 =>V <= "010";IF (U(3) = '0') THEN current_state <= s3;ELSE current_state <= s0; END IF;WHEN s3 =>V <= "100";current_state <= s0;WHEN OTHERS =>current_state <= s0;END CASE;END IF;END PROCESS clocked_proc;END moore;Пример реализации устройства управления в виде автоматаМили с синхронными входами и выходами:LIBRARY ieee;USE ieee.std_logic_1164.all;USE ieee.std_logic_arith.all;ENTITY control_unit ISPORT(U : IN std_logic_vector ( 3 DOWNTO 1 );clk : IN std_logic;rst : IN std_logic;V : OUT std_logic_vector ( 3 DOWNTO 1 ) );ARCHITECTURE mielie OF control_unit ISTYPE STATE_TYPE IS (s0,s1,s2,s3);SIGNAL current_state : STATE_TYPE;BEGINclocked_proc : PROCESS (clk, rst)BEGINIF (rst = '0') THENcurrent_state <= s0;ELSIF (clk'EVENT AND clk = '1') THENCASE current_state ISWHEN s0 =>IF (U(1)='1') THEN50V<="001";current_state <= s1;ELSIF (U(1) = '0') THENV(3 DOWNTO 1) <= (OTHERS => '0');current_state <= s0;ELSE current_state <= s0; END IF;WHEN s1 =>IF (U(2) = '1') THENV <= "010";current_state <= s2;ELSE current_state <= s1; END IF;WHEN s2 =>IF (U(3) = '1') THENV <= "000";current_state <= s0;ELSIF (U(3) = '0') THENV <= "100";current_state <= s0;ELSE current_state <= s2; END IF;WHEN OTHERS => current_state <= s0;END CASE;END IF;END PROCESS clocked_proc;END mielie;3.

СИСТЕМЫ АВТОМАТИЗИРОВАННОГОПРОЕКТИРОВАНИЯ ЦИФРОВЫХ УСТРОЙСТВС ИСПОЛЬЗОВАНИЕМ ПЛИС3.1. Процесс проектирования цифровых устройствс использованием ПЛИСПроектирование цифровых устройств представляет собой итерационный процесс, основанный на принципах функциональнойдекомпозиции. Проектирование традиционно разделяют на этапы:системный, структурно-алгоритмический, функционально-логический, конструкторско-технологический.На системном этапе весь проект разбивается на части, определяются их назначение и взаимосвязь, принимается решение о способах51реализации частей.

Решение об использовании ПЛИС, принятое насистемном этапе, позволяет выполнять конструкторско-технологическое проектирование модуля верхнего уровня параллельно с выполнением других этапов. Например, при проектировании контроллера шины принимается решение о реализации логики взаимодействия с шиной на основе ПЛИС. Это позволяет приступить кконструированию печатной платы сразу после определения номенклатуры ПЛИС и множеств входных и выходных сигналов.Проектирование устройств на основе ПЛИС выполняется сприменением специализированных САПР, в большой степени диктующих методику и средства разработки, а также элементную базу. При этом используются как визуальные средства проектирования, обладающие хорошей наглядностью, так и средствакомандного управления процессом проектирования, способствующие большей автоматизации.

Проектирование с помощью таких САПР заключается в последовательном использовании предоставляемых программных средств. В терминологии САПР такойпроцесс называется маршрутом проектирования.Структурно-алгоритмический и функционально-логическийэтапы проектирования устройств на основе ПЛИС базируются наитерационном вводе и верификации описаний параллельно функционирующих процессов, каждый из которых реализует заданныйалгоритм.Современные САПР поддерживают несколько способов описания устройства:• с использованием языков описания аппаратных средств(VHDL, Verilog, AHDL и др.) и специализированного текстовогоредактора;• схемотехнический способ описания с помощью программывизуального проектирования, позволяющей разработчику помещать на рабочую область функциональные блоки и производитьих соединение.

По окончании визуального проектирования схемапреобразуется в языковое описание;• графическое представление цифровых автоматов в специализированном редакторе, обеспечивающем преобразование полученного графического представления в языковое описание;• описание комбинационной логики с помощью таблиц истинности, карт Карно, функций алгебры логики.52Конструкторско-технологический этап проектирования устройств с использованием ПЛИС разделяется на связанные подзадачи, схожие с подзадачами, решаемыми при схемно-топологическомпроектировании на основе заказных ИС.Данный этап включает следующие подзадачи (заметим, чтоанглоязычная терминология в некотоных случаях не соответствуетустоявшейся русской терминологии) [5].• Синтез (Synthesis) — отображение схемы в базис логическихресурсов ПЛИС.

Цель синтеза — преобразование исходного схемотехнического или высокоуровневого описания устройства вописание, оптимально реализуемое на выбранной ПЛИС, а такжепригодное для дальнейшего размещения и трассировки. На стадиисинтеза и после нее используются различные методы оптимизацииописания, направленные на достижение наилучших результатов сточки зрения минимума требуемых ресурсов кристалла, максимума частоты синхросигнала, минимума потребляемой мощности.Например, на стадии синтеза принимается решение о способе кодирования состояний цифровых автоматов: кодирование One-Hotобеспечивает наибольшее быстродействие, в то время как иныеспособы (код Грея, двоичное кодирование) требуют меньших ресурсов.• Глобальное размещение (Mapping) — назначение частям схемы макрообластей ПЛИС, представляющих собой группы соседних логических блоков, макроячеек и блоков ввода/вывода.

Характеристики

Тип файла
PDF-файл
Размер
22,67 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6485
Авторов
на СтудИзбе
303
Средний доход
с одного платного файла
Обучение Подробнее