Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
ВВЕДЕНИЕ
В ходе выполнения курсового проекта требуется реализовать микроЭВМ с условиями, приведенными в задании к курсовому проекту.
Тип архитектуры, используемой при реализации – гарвардская.
Гарвардская архитектура — архитектура ЭВМ, отличительным признаком которой является раздельное хранение и обработка команд и данных. Архитектура была разработана Говардом Эйкеном в конце 1930-х годов в Гарвардском университете.
В Гарвардской архитектуре принципиально невозможно осуществить операцию записи в память программ, что исключает возможность случайного разрушения управляющей программы в случае ошибки программы при работе с данными или атаки третьих лиц. Кроме того, для работы с памятью программ и с памятью данных организуются отдельные шины обмена данными (системные шины),
В такой архитектуре невозможны многие методы программирования (например, программа не может во время выполнения менять свой код; невозможно динамически перераспределять память между программным кодом и данными), зато гарвардская архитектура позволяет более эффективно выполнять работу в случае ограниченных ресурсов, поэтому она часто применяется во встраиваемых системах.
На рисунке 1 приведена схема гарвардской архитектуры.

Рисунок 1 – Схема гарвардской архитектуры
Гарвардской архитектуре используется два вида памяти микропроцессора:
· Память программ (для хранения инструкций микропроцессора)
· Память данных (для временного хранения и обработки переменных)
В гарвардской архитектуре принципиально невозможно осуществить операцию записи в память программ, что исключает возможность случайного разрушения управляющей программы в случае ошибки программы при работе с данными или атаки третьих лиц. Кроме того, для работы с памятью программ и с памятью данных организуются отдельные шины обмена данными (системные шины).
Гарвардская архитектура применяется в микроконтроллерах и в сигнальных процессорах, где требуется обеспечить высокую надёжность работы аппаратуры. В сигнальных процессорах Гарвардская архитектура дополняется применением трехшинного операционного блока микропроцессора. Трехшинная архитектура операционного блока позволяет совместить операции считывания двух операндов с записью результата выполнения команды в оперативную память микропроцессора. Это значительно увеличивает производительность сигнального микропроцессора без увеличения его тактовой частоты.
Применение двух системных шин для обращения к памяти программ и памяти данных в гарвардской архитектуре имеет два недостатка — высокую стоимость и большое количество внешних выводов микропроцессора. При использовании двух шин для передачи команд и данных, микропроцессор должен иметь почти вдвое больше выводов, так как шина адреса и шина данных составляют основную часть выводов микропроцессора. Для уменьшения количества выводов кристалла микропроцессора фирмы-производители микросхем объединили шины данных и шины адреса для внешней памяти данных и программ, оставив только различные сигналы управления (WR, RD, IRQ) а внутри микропроцессора сохранили классическую гарвардскую архитектуру. Такое решение получило название модифицированная гарвардская архитектура.
Модифицированная гарвардская структура применяется в современных микросхемах сигнальных процессоров. Ещё дальше по пути уменьшения стоимости кристалла за счет уменьшения площади, занимаемой системными шинами пошли производители однокристалльных ЭВМ — микроконтроллеров. В этих микросхемах применяется одна системная шина для передачи команд и данных (модифицированная гарвардская архитектура) и внутри кристалла.
При разработке микроЭВМ мы будем использовать программу Altera Quartus II 9.1.
Отличительные особенности программного комплекса Altera Quartus II 9.1:
• Поддержка семейств FPGA
• Опция интерфейса пользователя MAX+
• Файл однократных присваиваний (.qsf)
• Средство просмотра RTL
• Поддержка изменений компиляции
• Формирование последовательности тактирования встроенной памяти
• Новая опция методики "сбалансированной" оптимизации
• Функция улучшенной синхронизации SignalTap® II
Программный интерфейс: Позволяет пользователям MAX+ использовать предоставляемые Quartus II возможности, не затрудняя себя изучением нового интерфейса. Будет ли Quartus II установлен первым или будет установлен впоследствии, пользователь увидит окно диалога, позволяющее «увидеть-и-ощутить ( look-and-feel )» выбор: Quartus II или MAX+. Однако, пользователь может в любое время изменить этот выбор.
Средство просмотра: Новое средства просмотра RTL файлов программы Quartus II обеспечивает возможность схематического представления VHDL и Verilog RTL файлов, что может быть использовано для анализа структуры проекта до проведения этапов поведенческого моделирования, синтеза, размещения и маршрутизации. Средство просмотра RTL позволяет разработчику управлять иерархией проекта и размещать отдельные элементы, представляющие интерес, для упрощения отладки и оптимизации. Выбранные в средстве просмотра RTL элементы могут быть напрямую трассированы в исходный файл проекта.
Изменения компиляции: Позволяют разработчикам экспериментировать с различными установками компиляции и присвоениями проекта. Группа установок, присвоений и результатов компиляции может быть сохранена и обработана отдельно как версия проекта.
Формирование последовательности тактирования встроенной памяти: Функция компилятора памяти программы Quartus II может быть задействована для упрощения использования встроенной в FPGA памяти, за счет способности динамически генерировать последовательности импульсов, необходимые для операций чтения/записи RAM и FIFO, на основе выбранных конфигураций. Такая возможность обеспечивается MegaWizard ® Plug - In Manager.
1 РАЗРАБОТКА ОБЩЕЙ СТРУКТУРЫ МИКРОЭВМ
1.1 Функциональный состав
Согласно заданию, шина данных ограничена 8 битами, а шина адреса ограничена 10 битами. Тип адресации памяти – регистрово-косвенная. При косвенно-регистровой адресации искомый операнд берется из памяти или отправляется в память, но адрес не фиксируется жестко в команде, как при прямой адресации, а находится в регистре. Если адрес используется таким образом, он называется указателем. Преимущество косвенной адресации состоит в том, что можно обращаться к памяти, не имея в команде полного адреса.
В ходе разработки микроЭВМ была составлена функциональная схема, представленная на рисунке 1.1. Исходя из полученной схемы, рассмотрим более подробно компоненты, которые формируют данное устройство.

Рисунок 1.1 – Функциональная схема разрабатываемой микроЭВМ.
Функциональными блоками микроЭВМ являются: синхронные ПЗУ данных и команд, синхронные ОЗУ, регистры общего назначения, АЛУ, устройство управления, контроллер прямого доступа к памяти, контроллер прерываний.
ПЗУ (постоянное запоминающее устройство) – энергонезависимый тип памяти, позволяющий постоянно хранить данные, внесенные на этапе прошивки. Данный тип памяти - только для чтения. В ПЗУ - основная программа микроЭВМ. Считывание происходит асинхронно по изменению состояния адресных входов.
ОЗУ (оперативное запоминающее устройство) – энергозависимый тип памяти, в данной микроЭВМ – синхронное. Необходимость данного типа памяти обосновано тем, что ее содержимое может быть легко модифицировано, что важно для функционирования ЭВМ как вычислительной системы. АЛУ должно реализовывать операции сравнения (CMP) и побитового сложения «И» (AND).
Контроллер прерываний предназначен для обслуживания запросов на прерываний, которые поступили от внешних устройств. При поступлении запроса на прерывание основной командный цикл прерывается и выполняется микрокоманда соответствующего прерывания.
Контроллер прямого доступа к памяти предназначен для обмена данными между внешними устройствами и ОЗУ без участия центрального процессора. Начальный адрес контроллера прямого доступа к памяти – 10. Объем при передачи данных в режиме прямого доступа к памяти – 8.
В своем составе микроЭВМ также должно содержать регистры общего назначения (РОНы). Должно быть реализовано 12 регистров общего назначения.
Устройство управления служит для выдачи всех управляющих сигналов (такие как чтение/запись в память, синхросигналы для работы устройств, асинхронные сигналы-события.
1.2 Описание взаимодействия всех блоков микроЭВМ
МикроЭВМ будет содержать 4 общие шины, через которые будет осуществляться обмен между отдельными устройствами: шина управления (ШУ), шина данных (ШД), шина адреса (ША), шина команд (ШК).
Шина управления включает в себя все управляющие и синхросигналы устройств.
Шина данных используется для передачи непосредственно данных (значений операндов). По заданию курсового проекта шина данных должна быть 8-разрядной. Таким образом, размер одного машинного слова для данной ЭВМ – 8 бит.
Шина адреса необходима для адресации памяти. По условию она должна быть 10-разрядной. Следовательно, ПЗУ и ОЗУ должны адресоваться 10 битами. Исходя из разрядности шины адреса, максимально адресуемый размер памяти равен 1024 словам.
Шина команд используется для передачи данных машинных инструкций. Разрядность шины принята равной разрядности ШД.
В общем случае выполнение команды в ЭВМ будет выполняться в несколько этапов:
- чтение команды из ОЗУ команд;
- анализ кода операции;
- чтение данных для выполнения команды из ОЗУ данных;
- выполнение команды;
- запись результатов.
Назначение используемых сигналов приведено в таблицах 1.1 – 1.5.
Таблица 1.1 – Назначение сигналов постоянного запоминающего устройства
Название | Тип | Назначение |
1 | 2 | 3 |
clock | Входной | Сигнал тактирования микросхемы |
adress[9..0] | Входной | Адрес ячейки памяти |
out_data[7..0] | Выходной | Выходные данные |
Таблица 1.2 – Назначение сигналов оперативного запоминающего устройства
Название | Тип | Назначение |
1 | 2 | 3 |
in_data[7..0] | Входной | Входные данные |
adress[9..0] | Входной | Адрес ячейки памяти |
Clock | Входной | Сигнал тактирования микросхемы |
out_data[7..0] | Выходной | Выходные данные |
We | Входной | Сигнал записи\чтения |
Таблица 1.3 – Назначение входов и выходов АЛУ
Название | Тип | Назначение |
1 | 2 | 3 |
A[7..0] | Входной | Первый операнд операции |
B[7..0] | Входной | Второй операнд операции |
CMP_SEL | Входной | Выбор режима сравнение |
AND_SEL | Входной | Выбор режима логического И |
CS | Входной | Разрешение работы устройства |
CLK | Входной | Тактовый синхросигнал |
RESULT[7..0] | Выходной | Результат операции AND |
bigger | Выходной | А>B (операция CMP) |
smaller | Выходной | A<B (операция CMP) |
equal | Выходной | A=B (операция CMP) |
Таблица 1.4 – Назначение входов и выходов КПДП
Название | Тип | Назначение |
1 | 2 | 3 |
DMA_ACK_WR | Входной | Запрос на запись в память |
DMA_ACK_RD | Входной | Запрос на чтение из памяти |
CPU_READY | Входной | Сигнал об освобождении шин устройством управления |
CLK | Входной | Синхросигнал |
DATA | Выходной | Информационные двунаправленные входы внешнего устройства |
BUS_ADDR | Выходной | Адрес, выставляемый на шину адреса |
BUS_DATA | Выходной | Информационные двунаправленные входы шины данных |
RAM_CS | Выходной | Сигнал разрешения работы ОЗУ |
RAM_WE | Выходной | Сигнал разрешения записи в ОЗУ |
RAM_OE | Выходной | Сигнал разрешения чтения из ОЗУ |
CPU_DMA_ACK | Выходной | Сигнал о запросе на ПДП для устройства управления |
END_OF_CYCLE | Выходной | Сигнал о конце цикла обмена данными с памятью |
Таблица 1.5 – Назначение входов и выходов контроллера прерываний
Название | Тип | Назначение |
1 | 2 | 3 |
IRQ_IN | Входной | Линии прерываний |
CLI | Входной | Сигнал запрета прерывания |
STI | Входной | Сигнал разрешения прерывания |
NUM | Входной | Номер запрещаемого/разрешаемого прерывания |
CLK | Входной | Синхросигнал |
ADDR | Выходной | Адрес обработчика прерывания |
IRQ_OUT | Выходной | Выход сигнала возникновения прерывания |
MASK[4..0] | Выходной | Маска прерываний |
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 |


