- •Курсовой проект
- •Задание на курсовой проект
- •Аннотация
- •Содержание
- •1 Структура цву
- •2 Алгоритм алу
- •3 Разработка основных функциональных блоков и узлов
- •4 Функциональная схема операционного автомата
- •5 Разработка управляющего автомата
- •6 Компиляция и верификация проекта в среде Quartus II
- •Приложение в (справочное) ahdl-описание цву
Министерство образования и науки Российской Федерации
Федеральное агентство по образованию
ГОУ ВПО «Оренбургский государственный университет»
Факультет информационных технологий
Кафедра вычислительной техники
Курсовой проект
по схемотехнике
Цифровое вычислительное устройство
Пояснительная записка
ГОУ ОГУ 230101.4.1 07.04 ПЗ
Руководитель проекта:
Хлуденев А.В.____________
"___"______________2008 г.
Исполнитель:
Студент группы 05 ВМК-2
Викторов О. В.___________
"___"______________2008 г.
Оренбург 2008
Министерство образования и науки Российской федерации
Федеральное агентство по образованию
Государственное образовательное учреждение
Высшего и профессионального образования
«ОРЕНБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ»
Факультет информационных технологий
Кафедра вычислительной техники
Задание на курсовой проект
Цифровое вычислительное устройство
Исходные данные: Операции АЛУ – CMP, SBB, SWAP;
Операции управления и вода-
вывода – JZ;
Разрядность данных – 16;
Число РОН – 4;
Число ячеек ПЗУ программ – 256;
Емкость ОЗУ данных – 64х16;
Адресация – РГ, ПР;
Элементная база – ЕР1С3.
Разработать: 1) Схему электрическую функциональную;
2) HDL – описание ЦВУ.
Дата выдачи задания “25” марта 2008 г.
Срок защиты проекта “3” июня 2008 г.
Руководитель проекта __________ Хлуденев А.В.
Исполнитель
студент группы 05ВМК-2 _______ Викторов О.В.
Аннотация
В данном курсовом проекте разработано цифровое вычислительное устройство, реализующее операции АЛУ - CMP, SBB, SWAP, и операция управления: JZ.
Курсовой проект выполнен с учетом требований современных разработок в области проектирования на микросхемах программируемой логики. Для реализации ЦВУ использован язык описания аппаратуры AlteraHDL.
Пояснительная записка состоит из 24 листов, в том числе 3 рисунка, 3 приложения.
Содержание
1 Структура ЦВУ …………………………………………………………………..5
2 Алгоритм АЛУ …………………………………………………………….……..8
3 Разработка основных функциональных блоков и узлов……………………...10
4 Функциональная схема операционного автомата …………………………....14
5 Разработка управляющего автомата...…………………………………………15
6 Компиляция и верификация проекта в среде Quartus II...…………………....17
Список использованных источников…………………………………………….20
Приложение А. Функциональная схема ЦВУ ………………………………….21
Приложение Б. AHDL-описание управляющего автомата Мура…………...…22
Приложение В. AHDL-описание ЦВУ…………………………………………..23
1 Структура цву
Выполним развернутый анализ задания и примем решения, определяющие структуру ЦВУ.
Под запись числа без знака отводятся 16 разрядов. Примем, что оперативная память ЦВУ имеет емкость 64 16-разрядных ячеек, тогда каждое число занимает одну ячейку ОЗУ.
Примем, что ЦВУ будет выполнять операции по одноадресной команде.
В таком случае для работы ЦВУ также необходимы следующие команды:
- mov w,ram загрузка операнда в аккумулятор из ОЗУ, адресация прямая;
- mov w,ron pзагрузка операнда в аккумулятор из РОН, адресация регистровая;
- mov ram(Adr), w– сохранение результата в ОЗУ, адресация прямая;
- mov ron(Adr), w – сохранение результата в РОН, адресация регистровая;
- END – завершение выполнения программы. При этом обнуляется значение программного счетчика.
Все команды (кроме END) одноадресные. Каждая команда имеет формат 12-разрядного слова (таблица 1) и занимает одну ячейку ПЗУ программ. Память программ имеет емкость 256 12-разрядных ячеек.
Таблица 1
-
Команда
Адресация
Код операции
W<-
Прямая
0000aaaaaaaa
Регистровая
0001 aaaaaaaa
CMP
Прямая
0010aaaaaaaa
Регистровая
0011 aaaaaaaa
SBB
Прямая
0100aaaaaaaa
Регистровая
0101 aaaaaaaa
SWAP
Прямая
0110aaaaaaaa
Регистровая
0111 aaaaaaaa
RAM<-W
Прямая
1010aaaaaaaa
RON<-W
Регистровая
1000aaaaaaaa
JZ
Прямая
1110 aaaaaaaa
END
xxxxx
1111xxxxxxxх
Таким образом, ЦВУ должно включать следующие функциональные блоки и узлы:
- ОЗУ данных 64 х 16;
- ПЗУ программ 256 х 12;
- программный счетчик (8 разрядов);
- АЛУ (16 разрядов, 4 команды);
- управляющий автомат;
- регистр общего назначения(4 регистра, 16 разрядов);
- аккумулятор (16 разрядов);
- мультиплексор 2->1 (16 разрядов);
Для построения ЦВУ используем гарвардскую архитектуру с раздельными адресными пространствами памяти данных и программ, а также ОЗУ с раздельными входами и выходами данных. Таким образом, интерфейс в ЦВУ будет выполнен независимыми линиями связи.
Реализуем ЦВУ на ПЛИС. Это позволит устранить жесткость задания микропрограмм. Устройство управления реализуем в форме автомата Мура.
Схема ЦВУ, построенная в соответствии с принятыми решениями, приведена в приложении А. Адрес AdrROM выбираемой из ПЗУ команды определяется содержимым программного счетчика Ctr. Четыре старших разряда считанного слова COP[3..0] представляют код текущей операции. Код операции анализируется управляющим автоматом (CO) и определяет выполняемую операцию. Восемь младших разрядов слова DROM[7..0] при выполнении вычислений (в случае прямой адресации) определяют адрес AdrRAM ячейки памяти данных, или номер регистра общего назначения (в случае регистровой адресации) . Вычисления выполняет ALU. Память данных имеет раздельные шины входа и выхода данных. Операнды извлекаются из памяти данных по шине DRAM, результаты вычислений поступают по шине W. На триггерах OVF и ZF формируются признаки переполнения разрядной сетки и получения нулевого результата (см. приложение А).
Управляющий автомат СО анализирует разряды COP и вырабатывает последовательность микрокоманд Y, управляющих работой узлов и блоков ЦВУ. Микропрограмма СО приведена на рисунке 1.
Рисунок 1 – Микропрограмма СО
В начале главного цикла микропрограммы выполняется проверка нажатия клавиши ctrl_bt. В следующем такте выполняется инкремент программного счетчика Inc(AdrROM) – подготовка к выборке следующей команды.
Анализируются разряды COP[3..1], которые определяют вид текущей операции.
Фаза исполнения команд занимает три такта.