Проектирование компьютерного технического устройства
Методическое пособие - Компьютеры, программирование
Другие методички по предмету Компьютеры, программирование
µ устройства Spartan-II содержат два таких столбца, по одному вдоль каждой вертикальной кромки. Эти колонки увеличивают полный размер кристалла.
Для реализации выбирается кристалл типа FPGA семейства Spartan-II серии XC2S100-6 фирмы Xilinx.
Эскизный проект
После анализа технического предложения переходим к следующему этапу проектирования, а именно эскизному проекту. Данные, размером 9 бит, заносятся в регистр (RG), после чего они оттуда поступают на блок проверки на нечетность (mod). Если последовательность четная, то сигналу "ОК" присваивается "1", который запускает генератор импульсов (ГИ). Он, в свою очередь, вырабатывает частоту, равную 65 МГц, которая поступает на управляемый делитель частоты (УДЧ). Старшие 4 разряда слова Nki поступают на шифратор (ШФ), который преобразует поступающие на него данные в последовательность, разрядностью n1, которая и будет являться делителем частоты для УДЧ. С УДЧ частота, деленная на делитель, поступает на распределитель импульсов (РИ). Он служит для последовательной передачи n2 импульсов на формирователь выходных последовательностей, а также сигнала готовности "ГТ". Эти импульсы поступают на блок дизъюнкторов (БД), который предназначен для формирования m выходных последовательностей, которые поступают на коммутатор импульсов (КИ). Он производит коммутацию импульсных последовательностей, поступающих с БД. Выбор той или иной последовательности осуществляется с помощью младших 4 разрядов данных Nj, приходящих от входного регистра (RG).
Рисунок 4.4 - Подробная структурно-блочная схема устройства
Спецификация блоков
Блок Шифратор. Данный блок выполняет шифрование данных, т.е. на вход поступают старшие разряды слова, с помощью которых определяется коэффициент деления частоты, уменьшенный на единицу. Входные параметры и данные для данного блока представлены в таблицах 4.6 и 4.7 соответственно.
Таблица 4.6 - Входные параметры для блока Шифратор
Data4- разрядный входной сигнал, предназначенный для определения коэффициента частотыDataOut9 - разрядный выходной сигнал, который и является двоичным представлением коэффициента частоты уменьшенным на единицу
Таблица 4.7 - Данные для блока Шифратор
NKiNki110110001299900103820010047330101564510006551100174831010
Интерфейс данного блока приведен ниже.
Рисунок 4.5 - Интерфейс блока Шифратор
Блок Проверки на нечетность. Данный блок предназначен для проверки на четность данные разрядностью девять бит. Формат данных выглядит следующим образом: формат слова - CNkiNj, где С - бит четности, Nki - старшие четыре разряда слова, Nj - младшие четыре разряда слова. Входные параметры написаны в таблице 4.8.
Таблица 4.8 - Входные параметры для блока проверки на нечетность
Data9-разрядный сигнал данных, формат которого описан вышеErrorбитовый сигнал, сигнализирующий о том, что существует ошибкаOKбитовый сигнал, сигнализирующий о том, что ошибки нет
Принцип работы данного устройства определяется формулой
Интерфейс данного устройства приведен ниже.
Рисунок 4.6 - Интерфейс блока Проверка на четность
Технический проект
Осуществив, все выше изложенные этапы проектирования и проанализировав эскизный проект, мы переходим к следующей стадии проектирования - технический проект, а именно к описанию проекта для ввода в САПР.
Существует несколько способов ввода описания проекта: структурный (в виде схемы из функциональных блоков), автоматный (в виде графа переходов, ГСА и т.д.), кодовый (использую языки описания аппаратуры типа VHDL или Verilog), в виде списка соединений и т.д.
Для моделирования и верификации выбран программный пакет Active-HDL 6.1. Он позволяет автоматизировать процесс ввода проекта и TestBench к нему, а также эффективно осуществлять анализ проектных решений. Помимо прочего у нас не имеется другой более-менее подходящей альтернативы.
Для синтеза проекта выбран программный продукт фирмы Synplicity Synplify 7.0.2, так как он имеет следующие преимущества по сравнению с программами синтеза других производителей:
высокая скорость синтеза (основное);
визуальное представление результатов синтеза (нетлиста);
-наличие библиотек под современную элементную базу крупнейших мировых производителей.
Ввод проекта с помощью языкового описания на ЯОА является наиболее гибким вариантом, хотя требует больше времени и знаний специфики используемого ЯОА.
Описание блоков проекта на ЯОА
В качестве ЯОА для описания выбран VHDL. Это обусловлено высокой адаптацией средств языка для нужд проектировщика, наличием эффективной среды моделирования (Active-HDL), а также среды синтеза, использующей VHDL (Synplify).
При описании проекта на языке VHDL удобно представлять сложный проект в виде иерархической структуры, все более детализируя его описание на низших уровнях. Тем самым упрощается процесс написания VHDL-моделей отдельных компонент проекта а также их отладка. После анализа структурно-функциональной схемы была определена иерархия данного проекта, и она представлена на рисунке.
Рисунок 4.7 - Файловая иерархия проекта
Файловая структура содержит: BlackPack.vhdl, gi.vhdl, UDC.vhdl, rasp_imp.vhdl, kod.vhdl, mod2.vhdl, RG.vhdl, kom_imp.vhdl, BlockD.vhdl.
Блок проверки на нечетность. В заголовке объекта проектирования (entity) указаны входные и выходные сигналы данных блока:
Data: std_logic_vector (8 downto 0);: std_logic;: std_logic.
В архитектуре (architecture) реализуется выражение (4.1), а также инверси?/p>