Как перестать бояться железа и собрать свой процессор. Мой симулятор в браузере
Привет, Пикабу!
Периодически думаю про Римскую империю отечественную микроэлектронику, Байкалы и Эльбрусы. И вот захотелось поделиться своим проектом. Вообще, ситуация с разработкой чипов у нас двоякая: с одной стороны, компаний, которые умеют проектировать процессоры, в мире по пальцам пересчитать, и мы в этом клубе. С другой — сами понимаете, своего массового современного производства пока не хватает.
Отрасль надо поднимать, и очевидно, что начинать растить инженеров нужно со школы. У крупных контор вроде YADRO есть свои образовательные инициативы, но порог входа там обычно довольно высокий.
Я сам когда-то давно преподавал архитектуру ЭВМ студентам И, честно говоря, объяснять работу процессора, стоя у меловой доски — то еще удовольствие. Рисуешь эти триггеры, мультиплексоры, шины... Студенты кивают, но по глазам видно: для многих системный блок так и остается «черным ящиком» с какой-то непонятной магией внутри. Я долго искал простой наглядный тренажер, чтобы можно было прямо руками пощупать логику, но ничего подходящего не нашел. Ну и в итоге решил написать свой.
Что получилось
Сделал браузерный симулятор (соответственно, скачивать и даже регистрироваться не надо). Назвал «Алгоритм Ершова» — в честь нашего академика Андрея Петровича Ершова (я сам из Академгородка, у нас это имя знаковое). Он говорил, что «программирование — вторая грамотность». А мне кажется, что понимание того, как это программирование физически работает на уровне железа — это тот самый базис, без которого никуда. Примерно как буквы в общей грамотности :)
По сути, это игра-головоломка. Вы начинаете с абсолютного нуля:
Сначала просто соединяете проводами вентили И, ИЛИ, НЕ.
Потом из этого собираете сумматоры и ячейки памяти.
Шаг за шагом сложность растет, и в финале вы строите полноценный 8-битный процессор по гарвардской архитектуре. А потом еще и пишете для него код на ассемблере.
Зачем пишу сюда
Проект полностью бесплатный. Моя глобальная цель — допилить его до такого состояния, чтобы можно было спокойно внедрять в учебный процесс в школах, кружках робототехники или универах вместо скучных лаб.
Поэтому пришел за критикой к местным гикам и айтишникам. Потыкайте, пожалуйста. Где криво? Где логика ломается? Где слишком сложно для новичка?
Любой фидбек интересен — пишите прямо тут в комментах или в сообщения каналу https://t.me/ershovalgorithm.
Ну и буду дико благодарен, если просто кинете ссылку знакомым учителям информатики/схемотехники или тем, кто интересуется темой.
Ссылка на сам тренажер: https://ershovalgorithm.ru/






