Презентация проекта
«Компьютер Ершова» — инженерный курс, на котором класс строит настоящий компьютер с нуля: от провода до процессора на FPGA-плате
Суть проблемы
Школьная информатика учит программировать внутри готового компьютера. Ученик пишет код, воспринимая машину как «чёрный ящик», и к выпуску не представляет, что происходит между строкой программы и мигающим светодиодом. Этот пробел всплывает позже: в технических вузах, на олимпиадах, на собеседованиях в инженерные команды.
Наше решение
«Компьютер Ершова» переворачивает порядок: курс учит строить сам компьютер. Вот ключевые цифры курса:
47 уровней в 4 частях. Первый уровень — соединить провод. Финальный — собственный процессор на языке Verilog, выгружаемый на реальную FPGA-плату Tang Nano 9K. Между ними — вентили, сумматоры, память, тактирование, архитектура Harvard, ассемблер из 15 инструкций и игра «Змейка», которую ученик программирует на собственном процессоре.
Около 21 часа чистого решения — столько суммарно занимает прохождение по замерам типичного времени каждого уровня. Это план учебного года при двух уроках в неделю или пятидневный интенсив.
Работает в браузере, без установки — нужен только компьютер и интернет. Весь курс двуязычный: русский и английский.
Как это работает
1. Проектирование. Ученик собирает схемы в графическом редакторе, а затем описывает их на Verilog — языке, на котором индустрия проектирует реальные микросхемы.
2. Оживление. Каждая схема проходит проверку симулятором: таблицы истинности, чекпойнты, временные диаграммы. Пройденные схемы становятся чипами, из которых собирается следующий уровень.
3. Оптимизация и отладка. Ученик останавливает время кнопкой STEP, читает осциллограммы, ищет неверный вентиль в иерархии схемы через RTL Viewer.
Финал — материализация. Курс завершается ZIP-проектом для реальной FPGA-платы: процессор ученика прошивается в кристалл Tang Nano 9K и мигает светодиодами лабораторной платы Ershov Board.
Образовательные механики
За каждой цифрой стоит проработанная методика — все её механики разобраны на странице «Дидактика курса». Вот основные из них.
Лестница абстракций «снизу вверх»
Курс проходит всю историю вычислительной техники в одном семестре: провод → вентиль NAND → логика → арифметика → память → тактирование → процессор → ассемблер → Verilog. Пройденная схема становится чипом, причём внутри чипа сохраняется схема самого ученика: полусумматор, собранный на уровне 6, работает внутри 8-битного сумматора на уровне 8. Абстракция перестаёт быть словом из учебника, когда ученик сам её построил.
Вступления «Основы»
Перед 11 ключевыми уровнями курса ученик получает интерактивное вступление: сначала опыт с метафорой (собери число 5 из ламп-весов, нажми кнопку записи у триггера), потом прогноз «что будет, если…», и только затем формальный термин. Термин вводится после явления, а не до него — так работает учебный цикл «опыт → прогноз → наблюдение → объяснение → перенос».
Концепт-чеки — 28 микротестов
Проверяется не факт сборки, а понимание принципа. Микротест появляется до сборки (предскажи результат) или после успеха (объясни, почему схема работает). На трёх уровнях — «краш-тесты»: задача намеренно сломать схему заданным образом, что требует понимания того, как элемент работает. Неверный ответ не блокирует прогресс: показывается разбор заблуждения и кнопка «Попробовать ещё», а каждый дистрактор снабжён объяснением типичной ошибки.
Лестница подсказок и система поддержки
Кнопка «Подсказка» работает в два клика: сначала наводящий вопрос, затем решение. Вторая ступень открыта не сразу, а через гейт: ученик должен открыть гайд уровня, провести 10 минут над задачей или набрать 7 неудачных проверок. На шести принципиальных уровнях вместо готового решения вставляется faded-каркас: схема с вырезанными 1–3 проводами, которые ученик замыкает сам. Такой ответ стоит половину награды, и при самостоятельной пересдаче штраф возвращается полностью. В кабинете учителя автосборку для класса можно отключить.
ИИ-наставник и авто-помощь на «стенах»
ИИ-наставник видит текущую схему ученика и контекст уровня. По умолчанию он работает сократическим методом: не даёт готовое решение, а задаёт наводящие вопросы. Если ученик застрял, помощь приходит сама: после 3 неудачных проверок подряд появляется баннер с локальной диагностикой ошибки (система различает 7 классов сбоев, вплоть до имён упавших тестовых векторов), после 7 — предложение разобрать решение. Помощь ненавязчива: баннер закрывается кнопкой «Позже» без последствий.
«Остановка времени» и инженерная отладка
Обычный процессор делает миллионы тактов в секунду, и его процессы невидимы. В курсе у ученика есть суперсила: ручное тактирование кнопкой STEP позволяет заморозить время и наблюдать каждый такт. В Verilog-части к этому добавляются временные диаграммы (waveform), RTL Viewer с раскрытием субмодулей двойным кликом и уровень, где баг ищется по осциллограмме, как на реальном стенде.
Игра «Транзисторный забег»
Параллельно курсу работает платформер из 33 уровней, где мир устроен как схема: герой бежит по карте, переключает тумблеры и жмёт STEP у кнопки такта, а цепь уровня считается настоящим движком симулятора. Дверь открывается только у правильно собранной схемы. После каждого уровня — квиз переноса по учебному результату курса. В бонус-комнатах примеры битовых операций генерируются заново при каждом заходе, так что ответ можно только вычислить. Есть музей из 50 табличек реальной вычислительной техники и экономика перков.
Игровая экономика и профиль инженера
За уровни начисляются транзисторы: сложность умножается на 50, подсказки и автосборка снижают награду, самостоятельная пересдача возвращает её. У каждого ученика — профиль инженера со статистикой: время прохождения, уровни без подсказок, «стены» и звание от Монтажника до Архитектора за 40 пройденных уровней. Минусовой баланс не запрещает играть: мотивация поддерживается, но прогресс не блокируется.
Сертификаты инженера
Завершение каждой части курса отмечается именным сертификатом с серверной верификацией. Сервер кросс-проверяет прохождение по логам телеметрии и выдаёт документ с уникальным номером EC-XXXX-XXXX-XXXX и публичной страницей проверки. Такой сертификат можно распечатать, приложить к портфолио и дать директору ссылку, по которой подлинность проверяется за минуту.
Готовность к внедрению
Курс поставляется с материалами для учителя: программа курса с таймлайном всех 47 уровней и планом учебного года, 11 методических карточек с готовыми планами занятий на 45 минут, кабинет учителя с аналитикой класса, входная диагностика placement, встроенный ассемблер, песочница для свободных экспериментов и библиотека из более чем 100 материалов: гайды по каждому уровню, даташиты компонентов, статьи по схемотехнике. О пилотном формате — на странице пилотного внедрения, методические материалы — в разделе «Для преподавателей».
Чему научатся школьники
| Область | Что осваивает ученик |
|---|---|
| Булева алгебра | Таблицы истинности, законы де Моргана, функциональная полнота NAND |
| Двоичная арифметика | Сложение в битах, переносы, дополнительный код, переполнение |
| Последовательная логика | Защёлки, триггеры, регистры, счётчики, фронты такта |
| Архитектура ЭВМ | Harvard-архитектура, шины, устройство управления, memory-mapped I/O |
| Программирование | Ассемблер: переменные, ветвления, циклы, состояние в RAM |
| Verilog и отладка | Структурное описание аппаратуры, осциллограммы, drill-down по иерархии схемы |
Ценность для школы
Престиж и уникальность. Это курс уровня сильных технических лицеев при университетах. Он заметно выделяет школу на фоне стандартных кружков по робототехнике.
Профориентация. Курс формирует Т-образных инженеровТ-образный специалист — это сотрудник, который сочетает глубокую экспертизу в одной конкретной области с базовыми знаниями и навыками в смежных дисциплинах, которые понимают и «железо», и программы. Финальный проект — работающий процессор на реальной плате — остаётся у ученика как портфолио.
Измеримость. Прогресс каждого ученика виден в кабинете учителя: пройденные уровни, «стены», результаты микротестов, время прохождения. Школа получает не «детям понравилось», а данные.
Качество продукта. Курс покрыт 645 автотестами и работает в двух языковых версиях. Проект носит имя академика Андрея Ершова, продолжая отечественную школу программирования и инженерии.