Привет!
После тестирования всех компонентов и успешного запуска нескольких конфигураций на плате я могу наконец-то с уверенностью сказать: релиз платы AeonLite свершился! Никаких изменений на плате больше не будет, такой она и останется. На этой странице будет опубликована вся информация о плате, о конфигурациях и т.д.Напомню, что проект является полностью открытым. Тоесть все исходники по-возможности будут доступны миру. Это касается как самой платы (схема, файлы сверловки и «Gerber»), так и прошивки микроконтроллера и всех доступных конфигураций.
Вопрос с производством платы пока не решен, но как только будут новости я сразу напишу.
А теперь немного о железе…
Что же представляет из себя девайс?
Aeon Lite – Платформа предназначена в первую очередь для “реплик” 8-битных компьютеров и игровых приставок. Упор в данной версии платы делался на минимализацию затрат, поэтому плата получилась достаточно компактная с минимумом используемых компонентов.
“Сердцем” платформы является FPGA “Spartan 6″ от фирмы Xilinx. Я использовал камень XC6SLX9 в корпусе TQFP144. Сам чип чрезвычайно быстрый, если сравнивать его с предшественником (имееится в виду Spartan 3), а стоит немного меньше. FPGA тактируется от кварцевого генератора с частотой 50МГц. Порт JTAG выведен на внешний разъём что позволяет подключать внешний программатор, который может понадобиться лишь только в случае использования внутрисхемного “логического анализатора” ChipScope.
В качестве оперативной памяти использованы 2 чипа 16-битной статической памяти объёмом 512Кб или 1Мб каждая. Выбор в пользу SRAM был сделан в связи с простотой их использования.
“Управляет” платформой микроконтроллер Microchip PIC24F. Он выполняет несколько важных функций:
Во-первых, микроконтроллер “заливает” прошивки в FPGA. Прошивки могут находится во встроенной флэш-памяти или на SD-карте (SD-карта и SPI-флэш подключены к микроконтроллеру и FPGA через мультиплексор). Так же можно в любой момент загрузить прошивку в FPGA с компьютера через USB.
Во-вторых, микроконтроллер может “эмулировать” дисковод и другую периферию.
Так же PIC24F выполняет функции коммуникации платы с компьютером разработчика и позволят управлять каждым компонентом платы. Это чрезвычайно удобно при разработке новых прошивок. Помимо основного протокола “CustomUSBDevice” с использованием библиотеки libusb в контроллере реализован виртуальный COM-порт.
На шине I2C находятся EEPROM и часы реального времени. EEPROM пока не используется, но планировался как “хранилище” настроек платформы.
Все неиспользуемые выводы микроконтроллера и FPGA выведены на 2 разъёма что позволяет расширять функционал платформы установкой “вторым этажем” платы расширения.
На плату выведен разъём внутрисхемного программирования ICSP. В принципе у него только одна функция: один раз прошить “bootloader” в микроконтроллер. В дальнейшем обновление прошивок микроконтроллера выполняется через USB без использования внешнего программатора.
Вывод видео осуществляется на VGA-монитор с использованием трёх резисторных четырёхбитных ЦАП-ов, что позволяет отображать до 4096 цветов и оттенков.
Стереозвук поступает через фильтры на 3.5мм разъём. Для этого я в своих проектах использую Дельта-Сигма-ЦАП.
В качестве устройств ввода предусмотрена возможность подключения PS/2 клавиатуры и PS/2 мышки. Для одновременного их использования понадобится так называемый Y-адаптер. На передней панели находятся ещё 2 PS/2 разъёма. Они служат для поключения джойстиков от игровых консолей NES или SNES. Такие нестандартные для джойстиков раъёмы я использовал в связи с их малым размером.
Питается плата от внешнего источника с напряжением 6.5-9В или через USB-порт.
Ссылки по теме:
Загрузка прошивки в FPGA через USB
Download Принципиальная схема
Download Печатная плата
Download Проект в формате Altium Designer
Download Файлы для производства печатной платы