Проблем с созданием было ну просто море. Все осложнялось тем, что не ясно где ошибка. Или в микроархитектуре, или микросхема бракованная, или компилятор что попало откомпилировал.
Почти 2 года я медленно, но уверено двигаюсь дальше. На текущий момент задействовано 146 микросхем.
ЭВМ работает от кварца 4 МГц. и выполняет одну операцию за 2 такта. То есть 2 миллиона операций в секунду. Программа грузится словами по 16 бит – 8 бит команда, 8 бит данные. Внутренняя шина 8 бит. АЛУ 8 битное выполняет операции сложения, вычитания, сравнения больше, меньше, равно, сравнение по битам. ПЗУ (ноутбук и посредник в лице Arduino) со временем будут установлены КР573РФ4. ОЗУ (2 штуки 537РУ17) 8к х 16 бит. На борту имеется один таймер. Процессор знает 39 инструкций.
Для связи с внешним миром есть два 8 битных порта ввода данных и два 8 битных порта вывода. На эти порты параллельно вешаются дополнительные устройства: плата памяти данных, звуковая карта, SD плата, видеокарта, … и возможно что-нибудь еще.
плата памяти данных: 8к х 8 бит. В ней хранятся массивы переменных
звуковая карта: Генерирует 4 частоты (когда ни будь сделаю её совершенней, а пока и так нормально – пищит и ладно)
SD плата: ЭВМ прекрасно снюхалась с SD-Card. FAT32 отличная вещь, но у меня слишком мало ОЗУ. Поэтому буду изобретать велосипед (примитивную файловую систему).
видеокарта: 256 х 96 пикселей, 64 цвета ( ЦАП руки не доходят переделать – тогда будет 256 цветов). Можно расширить разрешение по вертикали добавив еще 537РУ17.
Хотелось бы отдельно выразить эмоции от видеокарты. Никогда не делайте видеокарту, если у Вас нет осциллографа! За полгода она свернула столько моей крови, что страшно вспоминать. И до сих пор есть незначительные искажения. То ли синхроимпульсы «гуляют», то ли тактирование пикселей с отклонениями. В идеале надо «тикать» от кварца 25,175 МГц, а у меня 12,5 МГц. Да и частоты возможно высоки для данного типа микросхем.