MK90

A repository devoted to MK 90 soviet computer

View the Project on GitHub Yprits/MK90

Картридж памяти МК90 (СМП)

Эта информация была получена путем обратной разработки

Описание

Картридж предназначен как съемный носитель информации для карманного компьютера «Электроника МК90». Компьютер получает доступ к ОЗУ внутри картриджа через последовательный интерфейс со скоростью передачи ок. 100 кбит/с. Несмотря на то, что на борту всего 10 КБ ОЗУ, встроенный чип контроллера способен адресовать до 64 КБ ОЗУ.

Что внутри

Картридж состоит из 5 микросхем статической оперативной памяти КА537РУ10 с резервным аккумулятором и контроллера КА1835ВГ2.

## Контакты разъема

 Пин| Обозначение| Функция
 -------------------------------------------------
 1    BATT.       +3В внутренней литиевой батарейки
 2    VCC         +5В питания
 3    CLOCK       последовательный тактовый вход
 4    DATA        последовательный ввод/вывод данных
 5    SELECT      вход выбора чипа
 6    GND         земля

Протокол связи по шине

Данные, записываемые в картридж, изменяются по переднему фронту импульсов CLOCK и сдвигаются по заднему фронту импульсов CLOCK, начиная со старшего бита. Первый передаваемый байт после перехода SELECT с высокого уровня на низкий является кодом операции команды. После кода операции передаются любые адреса и данные.

На приведенной ниже форме сигнала показан пример команды записи адреса (сигналы SELECT, CLOCK, DATA). mk90cawr

Данные, считанные с картриджа, изменяются по спадающим фронтам импульсов CLOCK и отбираются по нарастающим фронтам импульсов CLOCK. На приведенной ниже осциллограмме показан пример команды чтения данных. mk90care

Команды

Код      |   Имя команды    |                             Функция
операции |                  |
-----------------------------------------------------------------------------------------------
0x00        Статус чтения

0x10        Чтение            Считывает любое количество байт данных из картриджа, начиная
            постдекремента    с места, на которое указывает адресный регистр. Он уменьшается
                              после каждого полученного байта. Не использется МК-90.


0x20        Стереть           Запишите любое количество байт данных в картридж, начиная с места
            постдекремент     на которое указывает адресный регистр. Регистр адреса должен быть
                              инициализирован значением 0xFFFF (в противном случае команда
                              игнорируется) и уменьшается на единицу после каждого переданного
                              байта. Эта команда используется MK-90 для заполнения оперативной
                              памяти картриджа пробелами при форматировании с помощью INIT.
                              
0x80        Заблокировать

0x90        Разблокировать

0xA0        Записать адрес    Записать 16-битный адресный регистр, начиная со старшего байта.

0xA0        Читать адрес      Прочитать 16-битный адресный регистр, начиная со старшего байта.
                              Не используется МК-90
                              
0xC0        Написать          Записать любое количество байт данных в картридж, начиная с места,
            постинкремент     на которое указывает адресный регистр. Он увеличивается после
                              каждого переданного байта.
                              
0xD0        Читать            Прочитать любое количество байт данных в картридж, начиная с места,
            постинкремент     на которое указывает адресный регистр. Он увеличивается после             
                              каждого переданного байта.
                              
0xE0        Записать          Записать любое количество байт данных в картридж, начиная с места,
            постдекремент     на которое указывает адресный регистр. Он уменьшается после  
                              каждого переданного байта. Не используется МК-90

Нижние 4 бита кода операции ни на что не влияют, их значение безразлично. Остальные коды операций, не перечисленные в таблице, игнорируются вместе со всеми последующими данными.