Партнерка на США и Канаду по недвижимости, выплаты в крипто

  • 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