Pentagon 2.666
King of Evil
Основная версия, поддерживаемая сейчас мною, это 2.6ббLE. В ней
реализовано следующее:
Основная ПЛИС - EP2C8Q208C8 - ф.Altera, семейство Cyclone-II.
Общий логический объем - 8256 макроячeeк ("logic elements" по
терминологии ф. Altera). По состоянию на сегодня, занято 6017.
Распределение такое: 2623 занимает код Z80, 429+444 занимают 2
чипа YM2149 и цифровой сумматор каналов (Turbo Sound, но есть
идея объединить их логические функции в один модуль), 305 -
эмулятор ВГ93 (на данный момент до конца не отлажен), 327 -
видеоконтроллер (отображение на VGA-мониторе стандартного
ZX-экрана и режим 1бCOLOUR), 75 - прозрачный текстовый режим
(отображение на VGA-мониторе текста поверх обычного ZX-экрана,
используется в аппаратном отладчике для вывода служебной
информации), 1814 - все остальное (реализация
Spectrum-совместимой архитектуры, mannep памяти, работа с
периферийным микроконтроллером, аппаратный отладчик, SD-карта и
прочая мелочь, которой до хрена). При этом компилятор настроен
на максимальную скорость компиляции в ущерб конечной логической
емкости (прошивка собирается от 12 до 30 минут, в зависимости от
настроек (комп P4 2.8 Ghz, 4 Gb RAM, система winXP 32 bit,
SPЗ)). На работе собирается за 3..6 минут, комп 4 ядра х 2.4
Ghz, 4 Gb RAM, система та же.
Видeвыход - аппаратно рeализвано VGA, 50 Гц (можно другие
частоты), 5 бит на каждый цвет (!!!) независимо.
Звуковой выход - 2 канала х 8 бит независимо.
Оперативная память - 2 Мб SRAM. Минимальное время доступа 10 нс
(эквивалентно частоте выборок 100 МГц). При этом 2 линейки по 1
Мб, выборки из которых можно делать независимо (реальная
разрядность шины данных SRAM - 16 бит), но шины адреса реальных
чипов запаралелены (экономия выводов FPGA).
Пeрифeрийный контроллер - LPC2368FBD100 (ARM7TDMI, 512kb
flash-памяти, 58 kb RAM, тактовая частота 72 МГц (!!!)). Помимо
стандартных дел (RTC, ps2, timer, counter, SPI, i2с), умеет
делать USB device (в 2.6ббle программно поддержано обновление
прошивок по USB) и ethernet на аппаратном уровне. В 2.6ббle
ethernet физически не поддержан, но есть разъем на плате, куда
можно подключть физуровeнь (один чип, на выходе которого
стандартный RG-45). В 2.666 без LE ethernet физически есть, но
не через аппаратные возможности периферийного контроллера, а
через отдельный чип RTL8019, подключенный к внешним шинам
периферийного контроллера. Софта нет (и не будет, судя по
всему).
Кроме того, в 2.6ббLe реализован АЦП на базе периферийного
контроллера (10 бит, частота выборок ~100 кГц, можно еще немного
поднять). Есть интерфейс SD-карты, IDE. Нет интерфейса дисковода
(и не будет, вследствие ненадобности). Но есть надежда, что я
все-таки доnилю аппаратный эмулятор ВГ93.
Other articles: