Текущий план проекта мэсм-6
Apr. 11th, 2019 03:13 pmПо хардверу
(*) Добавить регистры-модификаторы режима прерываний: так называемые К[] регистры.
(*) Сделать экстракоды
(*) Сделать команду IJ - выход из прерывания.
(*) Реализовать внешние прерывания.
(*) FPGA: соорудить систему-на-кристалле для Altera Max 10. Для начала процессор, память данных, память команд.
(*) FPGA: система-на-кристалле для Xilinx Spartan-7.
(*) Контроллер внешних прерываний.
(*) Последовательный асинхронный порт UART.
(*) Таймер.
(*) Порты GPIO.
(*) Порты SPI.
(*) Порты I2C.
(*) Схема платы МЭСМ-6.
(*) Разводка платы.
(*) Изготовление платы.
По софту
(*) Собрать Паскаль-Монитор компилятором FreePascal. Добиться, чтобы он выдавал ровно тот же объектный код.
(*) Документировать объектный код, выдаваемый компилятором (так называемый "стандартный массив").
(*) Дизассемблер для этого объектного код, на основе имеющегося DTRAN.
(*) Линкер для этого объектного кода.
(*) Ассемблер, принимающий на вход упрощённый БЕМШ/Madlen, и выдающий совместимый объектный код.
(*) Переписать рантайм библиотеку Паскаля на этот ассемблер. Адаптировать к нуждам приложений Arduino.
(*) Библиотеки обслуживания прерываний, таймера, портов UART, GPIO, SPI, I2C. Всё в стиле Ардуино, но на Паскале и ассемблере.
(*) Набор примеров простых ардуинных приложений на Паскале.
(*) Руководство по компилятору на основе имеющейся документации Паскаль-Монитор.
(*) Пакет plug-in для стандартной среды Arduino, добавляющий компилятор Паскаль, библиотеки и примеры для платы МЭСМ-6.
Планы наполеоновские, но есть шанс постепенно осилить. Кто за что готов из этого списка взяться - объявляйтесь. Тут работы на роту хватит.
План не высечен в граните: будем менять по мере продвижения и изменения концепции.
no subject
Date: 2019-04-17 04:56 am (UTC)Для нашей системы вот этот мультиплексор будет просто космических масштабов.
Или это принято нормальным считать? Мне кажется там длина пути сигнала в этой цепочке будет очень большая.
Или не заморачиваться с третьим состоянием?
no subject
Date: 2019-04-17 06:02 am (UTC)Вот как здесь:
https://github.com/MIPSfpga/mipsfpga-plus/blob/master/system_rtl/mfp_ahb_lite_matrix.v#L422
И декодер адресов:
https://github.com/MIPSfpga/mipsfpga-plus/blob/master/system_rtl/mfp_ahb_lite_matrix.v#L372