КДПВ:
Lichee Tang Nano - это плата с ПЛИС по цене $5. Лавры Pi Zero не дали покоя китайской компании Sipeed (судя по всему она как-то связана с SeeedStudio). ПЛИС за такую цену вышла конечно весьма скромной, 1152 LUT4, 852 триггера, 9 килобайт блочной памяти, разработки китайской Gowin Semiconductor. Чтобы хоть как-то скрасить недостаток ресурсов, Sipeed приклеила странную QSPI PSRAM память на 8 мегабайт производства не менее китайской IPUS Limited. Плюс очевидно-необходимые кварцы, источники, внезапно USB Type-C и отладчик на базе контроллера CH552T конечно же совсем не британской Jiangsu Qin Heng.
У вас наверное возникает закономерный вопрос, а какое эта китайская солянка имеет отношение к ретрокомпьютерам?
Некоторое время назад я решил попробовать упихать в эту плату Радио86-РК. Нашёл реализацию 8080 на верилоге, собрал, и понял что это тупик, потому что один лишь процессор занимает больше LUT4, чем доступно. Так бы это всё и закончилось, но тут внезапно волны гугла выбросил на берег ссылку на сайт Тэда Фрайда (http://www.microcorelabs.com) с реализацией 8086, 8052 и 6502 в весьма скромном объеме логики - 300-500 LUT! Как потом оказалось, цифры Тэда в LUT6, и в пересчёте на LUT4 в Танг влезает только 6502, и тот без периферии, но меня заинтересовал сам подход использования микрокода для уменьшения используемой логики. Я взял за основу ядро 8086 Тэда, и по его мотивам сделал своё, реализующее на микрокоде логику 8080. Ядро заняло примерно в 500 LUT4 и 1 блок памяти (18 килобит) для микрокода. Правда пока не поддерживает порты, прерывания и HLT, а также шина у него проще оригинальной, но это несложно добавить. А ещё можно дописать микрокод и добавить регистры и логику до Z80, но насколько оно разрастётся сказать пока не могу. Предполагаю что ещё будет помещаться. Исходники ядра, исходники микрокода и исходники ассемблера микрокода я прикреплю к сообщению. Но учтите, оно сырое, до Exerciser-а ход ещё не дошёл.
Проблемы начались, когда я приступил к контроллеру внешней памяти. Память PSRAM, т.е. регенерацией занимается сама, и при этом QSPI, т.е. интерфейс 4-проводной. Инициализация процедуры записи в таком режиме занимает 9 тактов, а чтения так вообще 14. Хорошо что такты быстрые, до 133 МГц, если постоянно чередовать чтения для видеоконтроллера с чтениями/записями процессора, то можно успеть с запасом, но есть одно но. Память должна заниматься регенерацией. Чтобы она сделала это, нужно долго не активировать сигнал разрешения, но сколько именно - не написано вообще нигде. Добро пожаловать в чудесный мир китайской документации.
И вот теперь я стою перед дилеммой - то ли сделать кэш-контроллер и читать PSRAM блоками, в надежде что в промежутках она успеет регенерироваться, то ли прилепить внешнюю SRAМ. Учитывая что кэш отнимет логику, которой и так кот наплакал, я потихоньку склоняюсь ко второму варианту.
Вложение 72799
- - - Добавлено - - -
В качестве лирического отступления пару слов о Gowin Semiconductors. Компания основана в поднебесной, по официальной легенде выходцами из Lattice, и это даёт знать о себе во всём начиная от логотипа и заканчивая числом примитивов в "очень похожем" семействе. Впрочем компания не стала заявлять о совместимости (которой может быть и нет) как GigaDevice, а выкатила свою IDE, причём более-менее работоспособную. В отрасли, где под 90% затрат идёт на разработку софта, это наверное хороший знак. Дистрибутив качается с сайта, лицензия на среду бесплатная, но нужно запрашивать. Все базовые ядра есть, начиная от сумматоров и заканчивая БПФ.
Помимо "похожих" чипов, Gowin выпустила многоайфонов с телевизорамивариантов с прибамбасами, про которые не только Lattice, но и большая двойка бы не подумали. Например до 256 Мбит PSRAM, Cortex M3 и даже Bluetooth. И есть старшее семейство Arora, в котором логики аж до 55 тыщ LUT4.
Из недорогих плат кроме Tang Nano есть вполне серъёзная FPGA Module with GOWIN LittleBee and 8 MByte internal SDRAM от тренца. Цена У неё 29 евро, зато ресурсов в 9 раз больше, а ещё 64 мегабита SDRAM внутри чипа. Все отладки самой Gowin достаточно дорогие, видимо у них нет традиции захватывать рынок, продавая отладки в убыток.
В конце прошлого года АО "Восток" начало работу по сертификации Gowin в стране водки и медведей. Основной мотив и аргумент - низкая цена. К сожалению вирус затормозил этот процесс, но надеюсь не навсегда. Как говаривала одна моя знакомая, будем посмотреть.