В данной теме хотелось бы обсудить будущий минималистический модульный однокристальный компьютер, предназначенный для довольно широкого круга применений: робототехника, искусственный интеллект, специализированные серверы, встраиваемые и игровые системы и т.д.
Прототип такого компьютера моей разработки успешно действует. Но, думаю, из него можно будет взять лишь некоторые идеи и переработать с учетом новых требований. Процесс обсуждения может оказаться не очень быстрым. Возможно, что до поставленной цели и не дойду. Не судите строго.
Модули будут двух типов:
1. Программные модули на языке Verilog. Модулями могут являться процессоры, видеоподсистемы, интерфейсы, таймеры и т.д.
2. Внешние модули, которыми можно дооснащать компьютер: камеры, 3G модемы, чипы памяти и т.д.
Кроме того, хотелось бы на основе данного компьютера легко создавать мультикомпьютерные системы.
Компьютер будет не самым дешевым, т.к. я на данный момент выбрал микросхему Altera/Intel FPGA MAX10. Надеюсь, что можно будет использовать и другие аппаратные платформы. Чуть позже представлю фото внешнего вида компьютера и опишу имеющиеся на плате интерфейсы.
У прототипа имеется:
1. 16-битный Forth процессор с 16 кбайтами общей памяти.
2. Графический контроллер LRGA (Low Resolution Graphic Adapter) с разрешением 320х180 16-битный цвет для каждой точки и выводном на HDMI (1280х720 60 гц).
3. Модуль таймера.
4. Модуль I2C контроллера.
5. Модуль UART со скоростью до 4 мбод.
6. Модуль видеокамеры 640х480 16 битный цвет.
7. Модуль управления шаговым двигателем с аппаратным плавным изменением скорости.
Процессор компьютера выполняет все операции за один такт. Сейчас надежно работает на частоте 74 Мгц. Первые, более простые варианты работали на 111 Мгц.