Собираем компьютер в симуляторе железа в рамках учебника — sukharev.io
Настройка состоит из двух шагов:
- Установка Java (JRE), чтобы запускать симулятор железа компьютера. Симулятор в котором собирается компьютер написан на Java. JRE позволяет выполнять Java код.
- Установка VSCode (обычный редактор кода), чтобы проектировать чипы для симулятора. Почему VSCode? Отвечаю — я сделал расширение для VSCode, которое позволяет запускать симулятор прямо в редакторе кода, очень экономит время. Если хотите использовать свой любимый редактор или IDE — используйте, но тогда прочитайте, как запускать симулятор руками в отдельном окне (TODO).
Установите Java (JRE) c официального сайта — https://www.java.com/ru/download/.
Если у вас Windows и в процессе выполнения задач вы столкнетесь с ошибкой You need to install [Java Runtime Environment] First. [Done] Comparison Failure with code=2
— выполните установку переменных окружения, а пока можете пропустить этот раздел.
- Откройте «Панель управления» (Control Panel), затем «Система» (System).
- Кликните в «Расширенные настройки» (Advanced), а потом «Переменные окружения» (Environment Variables).
- Кликните «Редактировать переменные окружения» (Edit the system environment variables). Далее кликните «Новая» (New).
- В Системных переменных (System Variables) добавьте две новые переменные JRE_HOME и JAVA_HOME.
- В каждую переменную запишите адрес до папки
bin
из JDK, которую вы только что установили. Обычноbin
папка в JDK устанавливается по адресуC:\Program Files\Java\jdk-9\bin
.
Если у вас Windows и в процессе выполнения задач вы столкнетесь с ошибкой You need to install [Java Runtime Environment] First. [Done] Comparison Failure with code=2
— значит вы неправильно установили переменные. Перечитайте этот раздел и выполните шаги еще раз. Если ничего не помогает — пишите в на почту help@sukharev.io.
Установите редактор кода — VSCode
Далее, откройте VSCode и установите расширения «Sukharev Nand2Tetris» автора di.sukharev. Скриншот ниже.
После настройки склонируйте репозиторий или скачайте zip архив.
В архиве 5 проектов. Один проект — один уровень строения компьютера.
Все вопросы задавайте мне в телеграм @jlo_olj
Перед выполнением проектов, почитайте — как писать HDL код. HDL — это язык на котором проектируется железо компьютера, мы используем его в четырех проектах, чтобы собрать компьютер.
Почти в каждой папке внутри /projects
есть README.md
файлы, все их нужно читать, это инструкции по выполнению заданий.
Практические задачи доступны по лицензии Creative Common Attribution-NonCommercial-ShareAlike 3.0 Unported License в рамках книги «The Elements of Computing Systems». Спасибо авторам — Ноаму Нисану (Noam Nisan) и Шимону Шокену (Shimon Schocken) ❤️