Table of Contents
Разработка БК-0010 на программируемой логике
Цель проекта - создание аналога компьютера БК-0010 на базе микросхемы программируемой логики (FPGA).
Хардвер
Для разработки процессора решено применить FPGA XC3S500E из серии Xilinx Spartan3E. Он имеет 10000 гейтов и стоит около $40. Есть исполнение в корпусе QFP208.
У Xilinx есть хорошая инструментальная плата для разработки - Spartan-3E Starter Kit. Весьма недорогая, в Москве $150. Есть выход VGA, два порта RS-232 и один порт PS/2 для клавиатуры. Для подключения к 100-контактному расширителю нужны разъемы FX2-100S-1.27DS (на плату) или FX2BA-100SA-1.27R (на кабель).
Еще один вариант - Digilent DL-S3BOARD на чипе XC3S200. Цена 3912 руб. на сhip-dip.ru.
Более сложные вещи можно делать на плате Xess XSA-3S1000.
Xilinx подкупает наличием бесплатного софта, в том числе под Linux — ISE Webpack. Как использовать Xilinx ISE под Linux описывается здесь.
Для радиолюбительского монтажа корпусов VQFP100, TQFP144, PQFP208 годятся макетные платы фирмы "Миктех".
Verilog
Для разработки выбран язык Verilog.
- Краткий обзор из журнала “Схемотехника” 2001/02.
Разработка делится на два этапа:
- моделирование (simulation) — проверка правильности функционирования создаваемого устройства;
- синтез (synthesis) — создание файла “прошивки” для загрузки в микросхему программируемой логики (ПЛИС, FPGA).
Документация по Verilog:
- Introduction to Verilog - прекрасный учебник по языку.
- Designer’s Guide to Verilog - пошаговое введение в Verilog.
- Сайт для разработчиков FPGA - много полезного.
Есть интересные лекции профессора Джона Кубиатовича по разработке микропроцессоров.
Составные части
Проект можно разбить на составные части:
- Процессор
- Память
- Клавиатура PS/2
- Диск IDE или SD/MMC
Документация по БК-0010
- Схема компьютера Электроника БК-0010.
- Схема компьютера Электроника БК-0011М.
- Статья из журнала “Микропроцессорные средства и системы” №1, 1985.
- Руководство пользователя для БК-0010 (недоформатировано).
- Руководство системного программиста для БК-0011М.
- Методичка В.Н.Негода и И.А.Никищенков. “Функциональная организация микро-эвм и микроконтроллеров. Часть 1: PDP-11”.
- Описание 1806ВМ2 - одночиповый отечественный аналог PDP-11, выпускается заводом "Ангстрем".
- Документация на DCJ-11 - четвертый и последний микропроцессор в линейке LSI-11. (12 мегабайт)
- Подборка документации на сайте pdp-11.org.ru.
- Контроллер флоппи-диска фирмы “АльтПро”. Шлейф для БК. Подпрограммы ПЗУ контроллера дисковода. Работа с флопиками 800k под Линукс и Windows.
Похожий проект XSOC
The xr16 CPU Core - проект 16-битного процессора с открытым исходным кодом (verilog). Можно попытаться переделать в pdp11.
- Статья, описывающая проект.
Аналогичный проект POP11
Японцы сделали pdp-11 на программируемой логике. Плюс встроенный контроллер прерываний, таймер, управление памятью, асинхронный порт RS-232 и интерфейс к диску IDE. Фотографии:
Осталось добавить видеоадаптер и контроллер клавиатуры. Язык, правда, не Verilog и не VHDL - некий SFL.
Minimig - Amiga на FPGA
Minimig - клон компьютера Amiga 500 на базе FPGA Xilinx. В качестве процессора, правда, используется реальная Motorola 68000. Здесь есть фотографии проекта Minimig.
C-One - Commodore 64
C-One - клон компьютера Commodore 64 на основе FPGA и процессора 65c816. Плата выполнена в стандарте ATX, её можно приобрести за 269 евро.
Электронный флоппи-диск
Аппаратный эмулятор флоппи-диска для использования в старых компьютерах.
Еще один вариант — на базе Atmel AVR.