mirror of
https://github.com/MPSU/APS.git
synced 2025-09-17 18:10:39 +00:00
Исправление ссылок в списке лаб
This commit is contained in:
@@ -22,10 +22,10 @@
|
|||||||
- [10. Подсистема прерывания (IC)](#10-подсистема-прерывания-ic)
|
- [10. Подсистема прерывания (IC)](#10-подсистема-прерывания-ic)
|
||||||
- [11. Интеграция подсистемы прерывания](#11-интеграция-подсистемы-прерывания)
|
- [11. Интеграция подсистемы прерывания](#11-интеграция-подсистемы-прерывания)
|
||||||
- [12. Увеличение количества источников прерываний с помощью дейзи-цепочки](#12-увеличение-количества-источников-прерываний-с-помощью-дейзи-цепочки)
|
- [12. Увеличение количества источников прерываний с помощью дейзи-цепочки](#12-увеличение-количества-источников-прерываний-с-помощью-дейзи-цепочки)
|
||||||
- [12. Периферийные устройства (PU)](#12-периферийные-устройства-pu)
|
- [13. Периферийные устройства (PU)](#13-периферийные-устройства-pu)
|
||||||
- [13. Программирование на языке высокого уровня](#13-программирование-на-языке-высокого-уровня)
|
- [14. Программирование на языке высокого уровня](#14-программирование-на-языке-высокого-уровня)
|
||||||
- [14. Программатор](#14-программатор)
|
- [15. Программатор](#15-программатор)
|
||||||
- [15. Оценка производительности](#15-оценка-производительности)
|
- [16. Оценка производительности](#16-оценка-производительности)
|
||||||
|
|
||||||
## Полезное
|
## Полезное
|
||||||
|
|
||||||
@@ -106,17 +106,17 @@
|
|||||||
|
|
||||||
## 1. Сумматор. SystemVerilog (Adder)
|
## 1. Сумматор. SystemVerilog (Adder)
|
||||||
|
|
||||||

|

|
||||||
На первой лабораторной работе изучаются базовые конструкции языка описания аппаратуры SystemVerilog, с помощью которого разрабатывается цифровой сумматор из примитивных логических вентилей, который, в последствии, конфигурируется в ПЛИС и его работа проверяется на отладочном стенде.
|
На первой лабораторной работе изучаются базовые конструкции языка описания аппаратуры SystemVerilog, с помощью которого разрабатывается цифровой сумматор из примитивных логических вентилей, который, в последствии, конфигурируется в ПЛИС и его работа проверяется на отладочном стенде.
|
||||||
|
|
||||||
## 2. Арифметико-логическое устройство (ALU)
|
## 2. Арифметико-логическое устройство (ALU)
|
||||||
|
|
||||||

|

|
||||||
На второй лабораторной изучаются новые конструкции языка SystemVerilog, на основе которых разрабатывается блок арифметико-логического устройства (АЛУ). АЛУ — это устройство, на входы которого подаются операнды, над которыми нужно выполнить некоторую операцию (сложение, вычитание и тому подобное) и код операции, которую нужно выполнить, а на выходе появляется результат этой операции. Проще говоря АЛУ - это "калькулятор" процессора.
|
На второй лабораторной изучаются новые конструкции языка SystemVerilog, на основе которых разрабатывается блок арифметико-логического устройства (АЛУ). АЛУ — это устройство, на входы которого подаются операнды, над которыми нужно выполнить некоторую операцию (сложение, вычитание и тому подобное) и код операции, которую нужно выполнить, а на выходе появляется результат этой операции. Проще говоря АЛУ - это "калькулятор" процессора.
|
||||||
|
|
||||||
## 3. Регистровый файл и внешняя память (RF)
|
## 3. Регистровый файл и внешняя память (RF)
|
||||||
|
|
||||||

|

|
||||||
На третьей лабораторной разрабатываются элементы памяти для будущего процессора: память команд, память данных и регистровый файл. В памяти команд будет храниться программа, которую будет выполнять процессор. В памяти данных хранятся данные, которые будут обрабатываться процессором. Регистровый файл — это маленькая память, тоже с данными, которые могут быть поданы непосредственно на АЛУ. Особенность RISC-архитектур в том, что данные перед обработкой необходимо перенести из памяти данных в регистровый файл, только после этого к ним можно применять различные операции.
|
На третьей лабораторной разрабатываются элементы памяти для будущего процессора: память команд, память данных и регистровый файл. В памяти команд будет храниться программа, которую будет выполнять процессор. В памяти данных хранятся данные, которые будут обрабатываться процессором. Регистровый файл — это маленькая память, тоже с данными, которые могут быть поданы непосредственно на АЛУ. Особенность RISC-архитектур в том, что данные перед обработкой необходимо перенести из памяти данных в регистровый файл, только после этого к ним можно применять различные операции.
|
||||||
|
|
||||||
## 4. Простейшее программируемое устройство (PPD)
|
## 4. Простейшее программируемое устройство (PPD)
|
||||||
@@ -126,12 +126,12 @@
|
|||||||
|
|
||||||
## 5. Основной дешифратор команд (MD)
|
## 5. Основной дешифратор команд (MD)
|
||||||
|
|
||||||

|

|
||||||
Пятая лабораторная посвящена разработке устройства управления – основному дешифратору команд. Функция основного дешифратора — получать на вход коды выполняемых операций и преобразовывать их в управляющие сигналы для всех блоков процессора (АЛУ, память, регистровый файл, мультиплексоры). Работа требует внимательности в реализации, а ее результат проверяется заранее подготовленными автоматическими тестами.
|
Пятая лабораторная посвящена разработке устройства управления – основному дешифратору команд. Функция основного дешифратора — получать на вход коды выполняемых операций и преобразовывать их в управляющие сигналы для всех блоков процессора (АЛУ, память, регистровый файл, мультиплексоры). Работа требует внимательности в реализации, а ее результат проверяется заранее подготовленными автоматическими тестами.
|
||||||
|
|
||||||
## 6. Тракт данных (DP)
|
## 6. Тракт данных (DP)
|
||||||
|
|
||||||

|

|
||||||
Разработанные блоки объединяются, образуя тракт данных, управляемый основным дешифратором команд. Результатом шестой лабораторной работы является однотактный процессор, с архитектурой RISC-V, поддерживающий стандартный набор целочисленных инструкций RV32I. В качестве проверки на процессоре запускаются программы, заранее написанные на языке ассемблера RISC-V. Сравнивается результат полученный на симуляторе и на разработанном процессоре.
|
Разработанные блоки объединяются, образуя тракт данных, управляемый основным дешифратором команд. Результатом шестой лабораторной работы является однотактный процессор, с архитектурой RISC-V, поддерживающий стандартный набор целочисленных инструкций RV32I. В качестве проверки на процессоре запускаются программы, заранее написанные на языке ассемблера RISC-V. Сравнивается результат полученный на симуляторе и на разработанном процессоре.
|
||||||
|
|
||||||
## 7. Внешняя память
|
## 7. Внешняя память
|
||||||
@@ -142,7 +142,7 @@
|
|||||||
|
|
||||||
## 8. Блог загрузки и сохранения данных (LSU)
|
## 8. Блог загрузки и сохранения данных (LSU)
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
Для корректного исполнения инструкций `LB`, `LBU`, `SB`, `LH`, `LHU`, `SH` мало использовать память с побайтовой записью. Необходимо также уметь управлять этой памятью, определенным образом подготавливать данные как для записи в память данный, так и для записи в регистровый файл, а также следить за тем, чтобы за время работы с памятью, программа процессора не начала исполняться дальше. Все эти задачи возлагаются на специальный модуль, который называется **Блок загрузки и сохранения** (**Load and Store Unit**, **LSU**)
|
Для корректного исполнения инструкций `LB`, `LBU`, `SB`, `LH`, `LHU`, `SH` мало использовать память с побайтовой записью. Необходимо также уметь управлять этой памятью, определенным образом подготавливать данные как для записи в память данный, так и для записи в регистровый файл, а также следить за тем, чтобы за время работы с памятью, программа процессора не начала исполняться дальше. Все эти задачи возлагаются на специальный модуль, который называется **Блок загрузки и сохранения** (**Load and Store Unit**, **LSU**)
|
||||||
|
|
||||||
@@ -150,11 +150,11 @@
|
|||||||
|
|
||||||
Вспомогательная лабораторная работа по интеграции реализованного ранее блока загрузки и сохранения, а также новой памяти данных в модуль `riscv_unit`.
|
Вспомогательная лабораторная работа по интеграции реализованного ранее блока загрузки и сохранения, а также новой памяти данных в модуль `riscv_unit`.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
## 10. Подсистема прерывания (IC)
|
## 10. Подсистема прерывания (IC)
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
Одной из основных функций процессоров является возможность реагировать на внешние события (дернуть мышку, нажать кнопку и т.п.), автоматически запуская, при их возникновении, соответствующие программы. В данной лабораторной создается и подсистема прерывания, к которой относятся контроллер прерываний с циклическим опросом и блок регистров статуса и управления.
|
Одной из основных функций процессоров является возможность реагировать на внешние события (дернуть мышку, нажать кнопку и т.п.), автоматически запуская, при их возникновении, соответствующие программы. В данной лабораторной создается и подсистема прерывания, к которой относятся контроллер прерываний с циклическим опросом и блок регистров статуса и управления.
|
||||||
|
|
||||||
@@ -162,7 +162,7 @@
|
|||||||
|
|
||||||
Вспомогательная лабораторная работа по интеграции реализованной ранее подсистемы прерывания.
|
Вспомогательная лабораторная работа по интеграции реализованной ранее подсистемы прерывания.
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
## 12. Увеличение количества источников прерываний с помощью дейзи-цепочки
|
## 12. Увеличение количества источников прерываний с помощью дейзи-цепочки
|
||||||
|
|
||||||
@@ -170,19 +170,19 @@
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
## 12. Периферийные устройства (PU)
|
## 13. Периферийные устройства (PU)
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
В данной лабораторной создаются и подключаются к общей шине и подсистеме прерывания контроллеры периферийных устройств: переключатели, светодиоды, клавиатура, семисегментные дисплеи а также контроллер uart.
|
В данной лабораторной создаются и подключаются к общей шине и подсистеме прерывания контроллеры периферийных устройств: переключатели, светодиоды, клавиатура, семисегментные дисплеи а также контроллер uart.
|
||||||
|
|
||||||
## 13. Программирование на языке высокого уровня
|
## 14. Программирование на языке высокого уровня
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
В рамках данной лабораторной настраивается компилятор GCC для RISC-V и для разработанной системы пишется программное обеспечение на языке программирования C++.
|
В рамках данной лабораторной настраивается компилятор GCC для RISC-V и для разработанной системы пишется программное обеспечение на языке программирования C++.
|
||||||
|
|
||||||
## 14. Программатор
|
## 15. Программатор
|
||||||
|
|
||||||
До этого момента, исполняемая процессором программа попадала в память инструкций через магический вызов `$readmemh`. Однако реальные микроконтроллеры не обладают такими возможностями. Программа из внешнего мира попадает в них посредством так называемого **программатора** — устройства, обеспечивающего запись программы в память микроконтроллера. Программатор записывает данные в постоянное запоминающее устройство (ПЗУ). Для того, чтобы программа попала из ПЗУ в память инструкций, после запуска контроллера сперва начинает исполняться **загрузчик** (**bootloader**) — небольшая программа, вшитая в память микроконтроллера на этапе изготовления, которая отвечает за первичную инициализацию и подготовку микроконтроллера к выполнению основной программы (включая её перенос из ПЗУ в память инструкций).
|
До этого момента, исполняемая процессором программа попадала в память инструкций через магический вызов `$readmemh`. Однако реальные микроконтроллеры не обладают такими возможностями. Программа из внешнего мира попадает в них посредством так называемого **программатора** — устройства, обеспечивающего запись программы в память микроконтроллера. Программатор записывает данные в постоянное запоминающее устройство (ПЗУ). Для того, чтобы программа попала из ПЗУ в память инструкций, после запуска контроллера сперва начинает исполняться **загрузчик** (**bootloader**) — небольшая программа, вшитая в память микроконтроллера на этапе изготовления, которая отвечает за первичную инициализацию и подготовку микроконтроллера к выполнению основной программы (включая её перенос из ПЗУ в память инструкций).
|
||||||
|
|
||||||
@@ -190,7 +190,7 @@
|
|||||||
|
|
||||||

|

|
||||||
|
|
||||||
## 15. Оценка производительности
|
## 16. Оценка производительности
|
||||||
|
|
||||||
На текущий момент мы создали процессорную систему, которая способна взаимодействовать с внешним миром посредством периферийных устройств ввода-вывода и программатора. Однако сложно понять, какое место данная система занимает в ряду уже существующих вычислительных систем.
|
На текущий момент мы создали процессорную систему, которая способна взаимодействовать с внешним миром посредством периферийных устройств ввода-вывода и программатора. Однако сложно понять, какое место данная система занимает в ряду уже существующих вычислительных систем.
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user