Проектирование компьютерного технического устройства

Методическое пособие - Компьютеры, программирование

Другие методички по предмету Компьютеры, программирование

µ устройства 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>