Разработка БК-0010 на программируемой логике

Цель проекта - создание аналога компьютера БК-0010 на базе микросхемы программируемой логики (FPGA).

Хардвер

Для разработки процессора решено применить FPGA XC3S500E из серии Xilinx Spartan3E. Он имеет 10000 гейтов и стоит около $40. Есть исполнение в корпусе QFP208.

hw-spar3e-sk-us_t.jpg У 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.

Разработка делится на два этапа:

  • моделирование (simulation) — проверка правильности функционирования создаваемого устройства;
  • синтез (synthesis) — создание файла “прошивки” для загрузки в микросхему программируемой логики (ПЛИС, FPGA).

Документация по Verilog:

Есть интересные лекции профессора Джона Кубиатовича по разработке микропроцессоров.


Составные части

Проект можно разбить на составные части:


Документация по БК-0010


Похожий проект 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.

 
proj/bk-fpga.txt · Последние изменения: 2016/09/28 22:55 vak
 
Copyright (C) 1996-2013 Serge Vakulenko
serge@vak.ru