Copyleft HUMONGOUS CP/M Archives
При поддержке журналаRadio Magazine
RU | EN

CRISS CP/M

Архитектура компьтера КРИСС CP/M

Общая посылка разработки: сделать простой компьютер с классической архитектурой, лёгкий для повторения даже в домашних условиях, но при этом обладающий всеми свойствами компьютера. Да и реальных возможностей у такого устройства, на самом деле, не так уж и мало.

В качестве вычислительной базы выбрана линейка микроконтроллеров семейства AVR (Atmel/Microchip), как надёжная и честная 8-разрядная платформа, интерфейсы реализованы на базе стандартных специализированных микросхем.

Компьютер построен по стандартной схеме: центральный процессор реализован на базе МК ATMEGA1284P, контроллер периферии на МК ATMEGA328, контроллер VGA на двух МК ATMEGA328 и ATTINY13, контроллер Ethernet на специализированной микросхеме ENC28J60 (Microchip), часы реального времени на DS1305. ОЗУ внешнее 64Кх8 типа W24512 (Winbond). Внутренняя шина типа SPI.

Общая структура компьютера

Питается компьютер напрямую от бытовой сети 230 В 50 Гц от модульного преобразователя, установленного на плате. Благодаря этому никакие дополнительные источники питания не нужны.

Системное ОЗУ выполнено в виде отдельной микросхемы статического ОЗУ объёмом 64 К по 8 бит. Кажется мало, но расширение ОЗУ для "не игровых" задач большого смысла не имеет: для работы ПО CP/M 64 Кб вполне достаточно, нет сложностей с выбором страниц, а кроме того в данном компьютере реально в распоряжении разработчика гораздо больше памяти, чем на стандартном CP/M устройстве.

Для хранения данных использован накопитель на стандартной SD-карте. Контроллер SD-накопителя поддерживает все виды карт, данные записываются в виде образов дискет через специальную программу.

Для удобства на плате установлены часы реального времени с резервной батареей.

Контроллер внешних устройств обеспечивает решение следующих задач:

  • работа в внешним COM-портом RS-232 (через преобразователь уровней);
  • формирование сигнала ЗЧ однотонального синтезатора мелодий;
  • работа со стандартной клавиатурой PS/2;
  • работы с опционными внешними устройствами блока GPIO;

Внешний COM-порт RS-232 может быть использован для подключения принтера с последовательным интерфейсом.

Клавиатура используется стандартная с интерфейсом PS/2, поддерживаются все стандартные функции и две альтернативные раскладки (РУС. и ЛАТ. в базовом варианте).

Поддержка GPIO (блок входов/выходов общего назначения) обеспечивается через внешний блок расширителей, всего может быть реализовано до 128 каналов ввода/вывода без каскадирования и в 8 раз больше при использовании специализированного мультиплексора.

Для вывода на экран в устройстве реализован видеоконтроллер (ВК), который работает в полном соответствии со стандартами "Industrial VGA", формирует монохромное (зелёное на чёрном фоне) изображение постоянной яркости, поддерживает вывод алфавитно-цифровой информации до 25 строк по 80 символов, псевдографики 160*96 точек, аппаратное отображение курсора. ВК поддерживает несколько таблиц знакогенератора.

Все внешние устройства удобно подключаются через внешние разъёмы.

Коммуникационные разъёмы

Центральный процессорный модуль (ЦП) выполнен на базе МК ATmega1284P (Microchip) с программным эмулятором системы команд микропроцессора Z80 (Zilog) и объединяет в себе функции микропроцессора, контроллера накопителя на SD-картах с DMA, программную часть контроллера Ethernet с DMA, и др. задачи.

Эмулятор микропроцессора Z80 исполняет инструкции в объёме официально документированных команд с небольшими дополнениями. Задача точного воспроизведения поведения процессора Z80 не ставилась, ставилась задача обеспечения работоспособности стандартных программ для ОС CP/M.

Скорость выполнения операций типа "запись регистр - регистр" составляет 1 мкс, что эквивалентно скорости работы процессора Z80 на частоте 4 МГц, что является для него стандартной частотой. А многие компьютеры даже работали на частоте 2.8 МГц. Поэтому компьютер обеспечивает быстродействие вполне достаточное для комфортной работы для соответствующего программного обеспечения.

Эмулятор корректно отрабатывает все тесты Z80 Instruction Exerciser в объёме zexdoc.

Для обеспечения комфортной работы предусмотрен слой обеспечения "аппаратной" совместимости на уровне портов ввода/вывода и кодов символов и клавиатуры, благодаря чему на компьютере работает большинство программ для Robotron 1715 и Kaypro II. Поддержка других платформ может быть легко добавлена. В настоящее время поддерживается ОС CP/M версии 2.2.

Подробное описание читайте в журналах Радио №№ 1-4 за 2021 год, ищите статьи с зелёным заголовком!

Статья в журнале Радио

© Copyright Radio / Радио / OGSS / НГСС / I. Reshetnikov / Решетников И.С. 2020-2022