Отчет о создании скалярного микропроцессора с симметричной регистровой архитектурой на основе ПЛИС семейства SPARTAN-3E средствами языка аппаратного проектирования VHDL | Статья в журнале «Молодой ученый»

Автор:

Рубрика: Информатика

Опубликовано в Молодой учёный №6 (6) июнь 2009 г.

Статья просмотрена: 38 раз

Библиографическое описание:

Усатюк В. С. Отчет о создании скалярного микропроцессора с симметричной регистровой архитектурой на основе ПЛИС семейства SPARTAN-3E средствами языка аппаратного проектирования VHDL // Молодой ученый. — 2009. — №6. — С. 13-16. — URL https://moluch.ru/archive/6/430/ (дата обращения: 19.10.2018).

Введение

Современные САПР цифровых систем (ЦС) предоставляют наряду с возможностью схематического проектирования, разработку ЦС при  помощи языков аппаратного проектирования (HDL). К числу достоинств разработки ЦС с использованием языков аппаратного проектирования относят [1]:

ü  сокращение времени цикла разработки и производства конечного устройства;

ü  гибкие возможности устранения возможных ошибок в процессе проектирования;

ü  возможность применения сторонних или ранее разработанных аппаратных модулей;

ü  легкость при формировании сводной документации устройства для стандартов описания по ISO9001 и специфическим внутренним стандартам документирования организации заказчика/разработчика.

Наряду с преимуществами использования вариативных методов проектирования, современные САПР ЦС позволяют, в зависимости от потребностей заказчика, реализовать ЦС на основе устройств на «жесткой логике», интегральной схеме (ИС) не способной менять собственную логическую организацию, или используя программируемые логические интегральные схемы (ПЛИС), ИС с программируемой логической организацией. ПЛИС обладают следующими преимуществами перед ИС на «жесткой логике»:

ü  высокое быстродействие (до 700 МГц);

ü  возможность перепрограммирования в конечном устройстве;

ü  высокая степень интеграции, за счет разработки ЦС на одном кристалле;

ü  возможность малосерийного производства специализированных ЦС.

Таким образом, разработка ЦС с использованием ПЛИС средствами языков аппаратного проектирования актуальна уже сегодня.

 

Реализация микропроцессора NBITCPU 2

Рассмотрим случай разработки  вычислительного устройства (ВУ) на примере микропроцессора с симметричной регистровой архитектурой в САПР WEB ISE 10.1i [4] на отладочной плате DIGILENT NEXYS 2 с ПЛИС Spartan 3E-500 [6].

Скалярным процессором называется процессор, выполняющий за один рабочий такт одну команду. Процессором с симметричной регистровой архитектурой, называется процессор, в котором результат выполнения операции может сохраняться в любой из имеющихся регистров процессора. Что упрощает:

ü  для программиста программную модель данного микропроцессора;

ü  для инженера-разработчика дальнейшую модификацию ВУ с целью перехода на суперскалярную и/или многоядерную архитектуру;

ü  для инженера-разработчика реализацию механизмов сопряжения микропроцессора с периферийными устройствами, микроконтроллерами, датчиками и элементами вспомогательной логики.

За основу регистрового микропроцессора был использован 64-битный микропроцессор Tiny64, автором которого является Ulrich Riedel [3], переданный на правах GPL. В исходном проекте была изменена модель организации регистров и описание верхнего уровня абстракции, с целью перехода к одной общей построечной константе в качестве опорной разрядности регистров. В результате модификации, разбиение управляющей команды на поля операций выполняется автоматически.  Что привело к упрощению создания симметричного регистрового микропроцессора произвольной разрядности и соответствующего модифицированным параметрам процессора - компилятору.

Структура регистровой модели полученного микропроцессора, следующая:

ü  Массив из восьми регистров общего назначения R[0..7] –  размером n-бит, восьмой регистр является счетчиком команд, т.е. используется в качестве назначения команды перехода к инструкции (jmp и его условные аналоги).

ü  Вспомогательные регистры для исполнения команды;

ü  Массив четырех флаговых регистров: регистр переноса (regC), регистра  переполнения (regV), регистр отрицательного значения (regN), регистр нуля (regN);

ü  Регистр адресации памяти (adrbus) размер которого определяется размерностью регистров общего назначения.

Набор инструкций реализуемого микропроцессора NBITCPU 2 состоящий из 14 команд представлен в таб. 1.

 

Мнемоническая форма

Машинный код

Описание

ADD

0100AAAA

R(n)= opa+opb обновить регистр переноса, переполнения, знака

SUB

0101AAAA

R(n)= opa-opb обновить регистр переноса, переполнения, знака

MOV

0000AAAA

R(n)= opb из mem, или R(n)

XOR

0011AAAA

R(n)= if ((opa==true or opb==true) and (opa!=opb)

OR

0010AAAA

R(n)=opa||opb

AND

0001AAAA

R(n)=opa and opb

INC

1011AAAA

R(n)=opa++

DEC

1100AAAA

R(n)=opa--

Над произвольным регистром R(n)

ROR

0110AAAA

циклический сдвиг вправо на фиксированную величину

RORB

1101AAAA

циклический сдвиг вправо на один бит

LSR

0111AAAA

логический сдвиг вправо на фиксированную величину

LSRA

1000AAAA

логический сдвиг вправо на один бит

SWAP

1001AAAA

меняет местами условные нибблы (полуслово процессора)

SWAPB

1010AAAA

меняет местами восьмую часть условного ниббла и остальную часть слова

Таб. 1. Набор команд микропроцессора

 

В результате компиляции кода микропроцессора и непосредственной конфигурирования ПЛИС для 64-битного регистра аккумулятора, 32 битной адресации ОЗУ – затрачено 26% вентилей ПЛИС, рабочая частота процессора составила 69 МГц. Так как, на выполнение произвольной операции затрачивается два такта, пиковая производительность разработанного ВУ NBITCPU 2 составляет 34 миллиона инструкции в секунду, 34 MIPS.

Рис. 1. Сравнение пиковой производительности микропроцессоров

NBITCPU 1, NBITCPU 2 и некоторых промышленных микропроцессоров

Сравнение производительности с ранее разработанным автором асимметричным микропроцессором NBITCPU 1 [5, c. 63-64], NBITCPU 2 описываемом в данной статье и  коммерческими процессорами представлено выше на рис. 1.

Используемая при проектировании NBITCPU 2 САПР WEB ISE 10.1i [4] является бесплатной и обладает ограничением на размер проекта до 1 миллиона логических вентилей, схематический аналог трех Intel Pentium 3 микропроцессоров.

В качестве аппаратной основы процессора NBITCPU используется отладочная плата DIGILENT NEXYS 2 Spartan 3E-500 содержащая:

ü  ПЛИС на 500 тыс. логических вентилей;

ü  16 Мбайт ОЗУ фирмы Micron и 16 Мбайт флэш-памяти Intel;

ü  кварцевый осциллятор на 50 МГц, так же имеется возможность установки стороннего осциллятора;

ü  8 переключателей, четыре 7-ми сегментных светодиодных дисплея, 4 клавиши, USB-порт с максимальной передачей 38 Мбайт/с, PC/2 порт для подключения клавиатуры или мыши, VGA выход с разрешением 640х480 и 256 цветах, один RS232-порт с максимальная скорость приема/передачи 9600 Кбит/с;

ü  разъем Hirose FX-2 для 100 МГц коммутации периферийных элементов;

ü  четыре блока Pmod 2х6 контактов для подключения датчиков и устройств управления шаговыми двигателями.

Наличие развитой системы интерфейсов ввода-вывода у DIGILENT NEXYS 2 позволяет на основе процессора NBITCPU 2 реализовать ЦС специального назначения.

11052009484

Рис. 2. Тестовый стенд процессора NBITCPU 2

Для реализации интерфейса сопряжения с микроконтроллерами использовалась отладочная плата Arduino Diecimila на микроконтроллере ATMEGA168 и плата контактного монтажа WISH Board 208. Тестовый стенд микропроцессора представлен выше на рис. 2.

 

Заключение

Таким образом, разработанный в САПР  WEB ISE микропроцессор с симметричной регистровой архитектурой – NBITCPU 2, обладает сравнительно большой производительностью, при 4-кратном преимуществе в разрядности оперируемых структур по сравнению с 32-битными процессорами и затратах около 26% логических вентилей кристалла ПЛИС. Оценка производительности на отладочной плате NEXYS 2 Spartan 3E-500, подтверждает эффективность разработки ЦС при помощи современных средств аппаратного проектирования, а именно ПЛИС XILINX Spartan 3e-500 и языка аппаратного проектирования VHDL.

 

Литература

  1. Максфилд К.  Проектирование на ПЛИС. Курс молодого бойца. – М.: «Додэка-XXI»,2007. – 408 с.

2.      Зотов В.Ю. Проектирование цифровых  устройств на основе ПЛИС фирмы Xilinx в САПР WebPack ISE. – М.: Горячая линия – Телеком, 2005. –  624 с.

  1. Сайт разработчиков открытых ЦС [Электронный ресурс]. - Режим доступа http:// opencores.com/, свободный.
  2. Официальный сайт Xilinx [Электронный ресурс]. - Режим доступа http://www.xilinx.com /webpack/index.htm, свободный.

5.      Усатюк В.С. Отчет о создании микропроцессора с ассиметричной архитектурой регистров на основе ПЛИС семейства SPARTAN-3E средствами языка аппаратного проектирования VHDL. Сборник трудов VII Всероссийской научно-практической конференции студентов, аспирантов и молодых ученых «Молодежь и современные информационные технологии». Томск, 25 - 27 февраля 2009 г., ч.1. Томск: Изд-во СПБ Графикс–354 с.

6.      Nexys 2 Board Reference Manual. Revision: January 21, 2008. Официальный сайт Digilent [Электронный ресурс]. - Режим доступа [http://www.digilentinc.com/], свободный.

7.      Pong P. C. FPGA prototyping by VHDL examples Xilinx Spartan – 3 versions. John Wiley & Sons 2008. - 440 p.

Основные термины (генерируются автоматически): NBITCPU, ISE, аппаратное проектирование, NEXYS, VHDL, WEB, DIGILENT, Электронный ресурс, отладочная плата, симметричная регистровая архитектура.


Похожие статьи

Отчет о создании стекового микропроцессора на основе ПЛИС...

Рис. 3. Сравнение пиковой производительности NBitCpu 1-2, Stack CPU. и других микропроцессоров.

Основные термины (генерируются автоматически): STACK, CPU, аппаратное проектирование, NEXYS, стековый микропроцессор, ISE, USA, VHDL, DIGILENT...

Перспективы создания универсальных вычислительных...

Отчет о создании скалярного микропроцессора с симметричной регистровой архитектурой на основе ПЛИС семейства SPARTAN-3E средствами языка аппаратного проектирования VHDL.

Структурные особенности программируемой платы Digilent Nexys 2

Плата Nexys 2 является мощной платформой для проектирования цифровых систем, созданной на базе ядра XilinxSpartan — 3EFPGA.

ISE/ WebPackCAD от Xilinx может быть использован для создания битовых файлов из VHDL или Verilog.

Проектирование одновибратора без перезапуска на...

Рис. 1. Модель одновибратора без перезапуска в среде Xilinx ISE Design Suite.

Сравнительный анализ полностью заказных СБИС, ПЛИС и СБИС с программируемой архитектурой. Структурные особенности программируемой платы Digilent Nexys 2.

Анализ эффективности применения аппаратных устройств...

– Неполное использование площади и ресурсов БМК

Микропроцессор состоит из цепей управления, регистров, сумматоров, счетчиков команд и очень быстрой памяти малого объема.

Поляков А,К,. Языки VHDL и VERILOG в проектировании цифровой аппаратуры.

Использование отладочной платы STM32F7 Discovery для...

Данная статья направлена на изучение технических и аппаратных характеристик отладочной платы STM32F7 Discovery для макетирования микропроцессорных устройств.

ARM mbed Enabled [Электронный ресурс]: сообщество программистов по микроконтроллерам STM32.

Синтез конфигураций программируемых логических интегральных...

set_part -quiet $part. foreach a $VHDL_sources {. read_vhdl $srcdir/$a.

Используя этот процесс можно одновременно запускать синтез различных частей устройства для быстрой оценки потребления аппаратных ресурсов.

Разработка КИХ-фильтра с использованием распределенной...

В итоге с помощью Xilinx ISE 14.7 был разработан КИХ-фильтр с использованием

Программирование выполнялось для ПЛИС Spartan 3E-1200 на языке VHDL.

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

Микроконтроллеры интеллектуальных систем управления

Микроконтроллеры AVR имеют гарвардскую RISC-архитектуру.

При разработке на ПЛИС, зная языки программирования Verilog или VHDL, можно не только программировать любой ПЛИС из линейки одного

Официальный сайт фирмы Atmel [Электронный ресурс].

Обсуждение

Социальные комментарии Cackle

Похожие статьи

Отчет о создании стекового микропроцессора на основе ПЛИС...

Рис. 3. Сравнение пиковой производительности NBitCpu 1-2, Stack CPU. и других микропроцессоров.

Основные термины (генерируются автоматически): STACK, CPU, аппаратное проектирование, NEXYS, стековый микропроцессор, ISE, USA, VHDL, DIGILENT...

Перспективы создания универсальных вычислительных...

Отчет о создании скалярного микропроцессора с симметричной регистровой архитектурой на основе ПЛИС семейства SPARTAN-3E средствами языка аппаратного проектирования VHDL.

Структурные особенности программируемой платы Digilent Nexys 2

Плата Nexys 2 является мощной платформой для проектирования цифровых систем, созданной на базе ядра XilinxSpartan — 3EFPGA.

ISE/ WebPackCAD от Xilinx может быть использован для создания битовых файлов из VHDL или Verilog.

Проектирование одновибратора без перезапуска на...

Рис. 1. Модель одновибратора без перезапуска в среде Xilinx ISE Design Suite.

Сравнительный анализ полностью заказных СБИС, ПЛИС и СБИС с программируемой архитектурой. Структурные особенности программируемой платы Digilent Nexys 2.

Анализ эффективности применения аппаратных устройств...

– Неполное использование площади и ресурсов БМК

Микропроцессор состоит из цепей управления, регистров, сумматоров, счетчиков команд и очень быстрой памяти малого объема.

Поляков А,К,. Языки VHDL и VERILOG в проектировании цифровой аппаратуры.

Использование отладочной платы STM32F7 Discovery для...

Данная статья направлена на изучение технических и аппаратных характеристик отладочной платы STM32F7 Discovery для макетирования микропроцессорных устройств.

ARM mbed Enabled [Электронный ресурс]: сообщество программистов по микроконтроллерам STM32.

Синтез конфигураций программируемых логических интегральных...

set_part -quiet $part. foreach a $VHDL_sources {. read_vhdl $srcdir/$a.

Используя этот процесс можно одновременно запускать синтез различных частей устройства для быстрой оценки потребления аппаратных ресурсов.

Разработка КИХ-фильтра с использованием распределенной...

В итоге с помощью Xilinx ISE 14.7 был разработан КИХ-фильтр с использованием

Программирование выполнялось для ПЛИС Spartan 3E-1200 на языке VHDL.

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

Микроконтроллеры интеллектуальных систем управления

Микроконтроллеры AVR имеют гарвардскую RISC-архитектуру.

При разработке на ПЛИС, зная языки программирования Verilog или VHDL, можно не только программировать любой ПЛИС из линейки одного

Официальный сайт фирмы Atmel [Электронный ресурс].

Задать вопрос