# Лекция 2. Основные концепции и инструменты

![../.pic/Lectures/02.%20Instruments/fig_01.jpg](../.pic/Lectures/02.%20Instruments/fig_01.jpg)

Для каких бы специализированных задач не разрабатывались процессоры, структурно любой их них состоит из 4 основных блоков: 

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


И даже при большом выборе моделей на рынке, в новых инженерных и научных областях все больше и больше применяются специализированные решения на основе *программируемых логических интегральных схем* (ПЛИС, *англ*. FPGA) - микросхем с реконфигурируемой структурой. Разработка проектов на ПЛИС практически всегда ведется с использованием *языков описания аппаратуры*(hardware description language, HDL). Одним из наиболее популярных языков является Verilog HDL. Мы рассмотрели его основные языковые конструкции.

![../.pic/Lectures/02.%20Instruments/fig_02.jpg](../.pic/Lectures/02.%20Instruments/fig_02.jpg)

В заключении было рассказано про такое понятие, как ***критический путь***. Сигналу требуется время, чтобы пройти через логический вентиль. Комбинационная схема, как правило, состоит из нескольких рядов цифровых вентилей. Так вот, критический путь, это самый длинный путь прохождения сигнала через схему. Другими словами, цепь с самой большой задержкой распространения сигнала от входа до выхода. Критический путь характеризует скорость работы устройства – чем он больше, тем дольше будет реакция устройства на изменение входного сигнала.

![../.pic/Lectures/02.%20Instruments/fig_03.jpg](../.pic/Lectures/02.%20Instruments/fig_03.jpg)

## Основные материалы лекции

1. [Ссылка](https://www.youtube.com/watch?v=oEsyRCdao9w) на видеозапись лекции
2. Про основную структуру процессора и назначение его 4 основных блоков [**Кафедра ВТ**. *Микропроцессорные средства и системы* — Лекция 1.2]
3. [Хорошая статья](https://tech-geek.ru/fpga/) о том, что такое ПЛИС и как это работает
4. Пожалуй не самый удачный, но очень краткий обзор языка Verilog HDL [**Кафедра ВТ**. *Моделирование микропроцессорных систем на базе ПЛИС в САПР Quartus II* — параграфы 1.3 — 1.4]
5. Про критический путь [**Харрис и Харрис**. *Цифровая схемотехника и архитектура компьютера —* параграф 2.9]

## Дополнительные материалы к лекции для саморазвития

1. Снова про структуру процессора и его основные блоки, но другими словами, а в чем-то и подробнее [**Орлов и Цилькер**. *Организация ЭВМ и систем* — Глава 1. параграф 'Концепция машины с хранимой в памяти программой']
2. [Классический курс](http://iosifk.narod.ru/hdl_coding/verilog.htm) по Verilog HDL на русском языке
3. Наглядные примеры синтеза языка описания аппаратуры в цифровую схему. Вот только язык не Verilog HDL, а SystemVerilog, но они очень похожи. А еще параллельно разбирается язык VHDL — конкурент Verilog HDL. Можно сразу два языка подтянуть и увидеть в сравнении. Короче, рекомендую [**Харрис и Харрис**. *Цифровая схемотехника и архитектура компьютера —* Глава 4]

## Популярные материалы

Мне кажется очень удачные три коротенькие **видео-лекции** (9, 6 и 22 минуты соответственно) по основам Verilog HDL. Если не нравится, что парнишка говорит медленно, то в настройках его можно ускорить и лекции станут еще короче. Наслаждайся:

1. [Verilog. Модули. Симуляция](https://www.youtube.com/watch?v=xA7rl2a4vmI)
2. [Комбинационная логика](https://www.youtube.com/watch?v=pMrJkHk10wU)
3. [Последовательностная логика](https://www.youtube.com/watch?v=Vdz7_wMFAy)
