Методическое руководство
1. Философия курса: Откуда берется компьютер?
Современные школьные курсы информатики учат программировать внутри готового компьютера. Мы меняем парадигму: мы учим строить сам компьютер.
Отношение к языку Verilog. Мы не прячем от детей индустриальные технологии — мы учим понимать их смысл. Verilog — это не язык программирования. Это язык описания аппаратуры. Школьник должен знать, что именно на нем проектируют чипы инженеры в Apple и AMD. Но он должен уяснить: вы не пишете исполняемую программу, вы прокладываете физические провода с помощью текста.
2. Аппаратная платформа: Ershov Board
Мы отказываемся от макетных плат с путаницей проводов. Ученик работает с Ershov Board — лабораторной платформой, превращающей абстрактный код в осязаемое устройство.
| Элемент платформы | Методическое назначение |
|---|---|
| Сокет процессора | Слот для пустой FPGA-платы (Tang Nano). Психологический якорь: ученик вставляет пустой кремний, который станет процессором только благодаря его архитектуре. |
| Вращающийся переключатель | Аппаратный мультиплексор. Позволяет физически переключать фокус отладки между узлами (PC → IR → ACC → ALU). |
| Кнопка STEP | Генератор ручного такта. Идеальный инструмент для понимания природы времени в цифровых схемах. |
| Периферия | Матрица 16×16, джойстик, тумблеры. Служат для вывода данных и взаимодействия с внешним миром. |
3. Программная среда: Оживление компьютера
Главный барьер в изучении микроэлектроники — перегруженные профессиональные САПР (IDE). Процесс оживления компьютера сведен к интуитивно понятному конвейеру:
1. Создать компьютер: Ученик завершает архитектуру в браузере. При нажатии кнопки симулятор упаковывает код и невидимый файл привязки пинов (pins.cst) в архив.
2. Ershov Loader: Ученик открывает локальную утилиту и скармливает ей архив. Программа показывает простой лог синтеза логики.
3. Оживление кремния: По нажатию «Прошить» архитектура загружается в FPGA. Компьютер начинает жить по правилам, которые написал ученик.
4. Инструменты отладки (Остановка времени)
Обычный процессор делает миллионы тактов в секунду, его процессы невидимы. Ваша суперсила на уроках — возможность заморозить время. Именно так инженеры исследуют настоящие процессоры в лабораториях.
Магия кнопки STEP: Переключив процессор на ручное тактирование, ученик сам становится генератором частоты. Одно нажатие — загрузка байта. Второе — декодирование. Третье — результат в АЛУ.
Рентген переключателя: 8 светодиодов не могут показать весь процессор сразу. Ученик поворачивает переключатель в положение PC и видит строку кода. Поворачивает на ALU и видит результат сложения. Плата становится прозрачным логическим анализатором.
5. Финал: Эволюция версий (CPU v1.0 vs CPU v2.0)
Финальный проект — это не просто написание программы, это демонстрация силы инженерии. Финал проходит в два этапа:
CPU v1.0 (Рабочая сборка): Ученик прошивает свой базовый процессор и пишет для него игру «Змейка». Игра работает, но матрица обновляется медленно, программная отрисовка «съедает» такты.
CPU v2.0 (Аппаратное ускорение): Вы ставите задачу — сделать процессор лучше. Ученик спускается на уровень архитектуры, добавляет аппаратный таймер или новую инструкцию DRAW, которая аппаратно выводит данные на матрицу.
Триумф инженерии: Змейка запускается на CPU v2.0 и начинает летать без задержек. Ученик на практике видит, почему новые версии процессоров работают быстрее старых.