Электроника МК 90: различия между версиями

Материал из Emuverse
Нет описания правки
Нет описания правки
 
(не показано 11 промежуточных версий этого же участника)
Строка 5: Строка 5:


== Технические характеристики ==
== Технические характеристики ==
* Процессор: на микросхемах серии 588, по системе команд совместим с [[PDP-11]], [[Электроника-60]], [[Диалоговый вычислительный комплекс|ДВК]]
* Процессор: на [[Микропроцессорный комплект 588|микросхемах серии 588]], по системе команд совместим с [[PDP-11]], [[Электроника-60]], [[Диалоговый вычислительный комплекс|ДВК]]
* Оперативная память: 16 КБ
* Оперативная память: 16 КБ
* ПЗУ: 16 КБ либо 32 КБ (с интерпретатором Бейсика)
* ПЗУ: 16 КБ либо 32 КБ (с интерпретатором Бейсика)
Строка 12: Строка 12:
* Устройства хранения данных — сменные модули памяти (СМП), объёмом 10 КБ
* Устройства хранения данных — сменные модули памяти (СМП), объёмом 10 КБ


== Процессор ==
== Процессор и чипсет ==
* [[588ВС2|КА588ВС2]] (D1) — арифметико-логическое устройство (АЛУ), управляется 12-разрядными микрокомандами из КА588ВУ2 −0001, −0002, −0004
* [[588ВУ2|КА588ВУ2]] −0001, −0002, −0003, −0004, −0005 — управляющая память (УП)
* [[588ВГ1|КА588ВГ1]] — системный контроллер (СК), управляется 5-разрядными микрокомандами из КА588ВУ2−0005
* [[1835РЕ1|КА1835РЕ1]] — ПЗУ
* [[КА1034НР3]] —
* [[КА1835ВГ5]] — системный контроллер-диспетчер
* [[КА512ВИ1]] —
* [[КА1835ВГ4]] — контроллер внешних устройств
* [[КА1835ВГ3]] — контроллер запоминающего устройства
* [[КА1835ВГ1]] —
 
Ветора прерываний:
* 000004 — нечётный адрес при обращении по слову; ошибка обращения к каналу; HALT в режиме USER; неверная адресация JMP/JSR
* 000010 — резерный код команды
* 000014 — прерывание по T-разряду или команда BPT
* 000020 — команда IOT
* 000030 — команда EMT
* 000034 — команда TRAP
* 000100 — прерывание EVNT
* 000310 — прерывание от клавиатуры
* 160002 — сигнал/команда HALT в режиме HALT
* 160006 — двойное зависание
* 160012 — ошибка при приёме вектора прерывания
 
== Регистры (порты) ==
{| class=standard
! Регистр !! Назначение !! Примечание
|-
| 164000, 164004 || Регистр начального адреса (мл., ст. байт) ||rowspan=2| Контроллер запоминающего устройства<br />КА1835ВГ3
|-
| 164002, 164006 || Регистр режима (мл., ст. байт)
|-
| 164020 || Регистр данных, байтовый ||rowspan=4| Контроллер внешних устройств<br />КА1835ВГ4
|-
| 164022 || Регистр коэффициэнта деления для частоты сигнала CLK
|-
| 164024 || Регистр контроля (W), регистр состояния (R)
|-
| 164026 || Регистр команд
|-
| 164032 || Регистр конфигурации RG1 (слово) ||rowspan=2| Системный контроллер<br />КА1835ВГ5
|-
| 164034 || Регистр конфигурации RG2 (слово)
|-
| 165000-165177 ||  || Часы реального времени (RTC)
|-
|}
 
<pre>
164024 (R) Регистр состояния контроллера внешних устройств КА1835ВГ4
    ┌──┬──┬──┬──┬──┬──┬──┬──┐
    │ 7  6│ 5  4  3│ 2  1  0│
    └─┬┴─┬┴─┬┴─┬┴─┬┴─┬┴─┬┴─┬┘
      │ INT mask  │ RA  0  0
Data ─┘  │  │  │ SELECT
ready    │  │  └─ 4: от внешних устройств
          │  └──── 5: от регистра данных
          └─────── 6: от таймера
</pre>
 
TODO
TODO


== Регистры ==
== Память ==
TODO
* Адреса 000000-037777 — ОЗУ 16 КБ
* Адреса 040000-077777 — дополнительное ПЗУ 16 КБ
* Адреса 100000-177777 — основное ПЗУ 32 КБ


== Клавиатура ==
== Клавиатура ==
TODO
Контроллер клавиатуры построен на микросхеме КА1835ВГ1.
 
Скан-код нажатой клавиши передаётся через канал 2 контроллера КА1835ВГ4. Нажатие клавиши также приводит к прерыванию по вектору 000310.


== Эмуляция ==
== Эмуляция ==
* Эмулятор от Piotr Piatek с исходниками на Delphi [http://www.pisi.com.pl/piotr433/mk90emue.htm]
* Эмулятор от Piotr Piatek с исходниками на Delphi [http://www.pisi.com.pl/piotr433/mk90emue.htm]
* Драйвер <code>mk90</code> в составе MAME [https://github.com/mamedev/mame/blob/30371b5717b3aa88da7f3d19235821f7eca0d429/src/mame/drivers/mk90.cpp], нерабочий


== Ссылки ==
== Ссылки ==
* [https://ru.wikipedia.org/wiki/%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%B8%D0%BA%D0%B0_%D0%9C%D0%9A-90 Электроника МК 90 в Википедии]
* [https://ru.wikipedia.org/wiki/%D0%AD%D0%BB%D0%B5%D0%BA%D1%82%D1%80%D0%BE%D0%BD%D0%B8%D0%BA%D0%B0_%D0%9C%D0%9A-90 Электроника МК 90 в Википедии]
* [http://www.pisi.com.pl/piotr433/mk90hwe.htm Elektronika MK-90 - hardware] от Piotr Piatek
* [http://www.pisi.com.pl/piotr433/mk90hwe.htm Elektronika MK-90 — hardware] от Piotr Piatek (материалы по советским устройствам удалены автором в 2022 году)
* [https://github.com/Yprits/MK90 Yprits/MK90] — бэкап информации с сайта Piotr Piatek


[[Категория:Электроника МК 90]]
[[Категория:Электроника МК 90]]

Текущая версия от 15:55, 6 марта 2023

Этот документ создан для Emuverse и распространяется на условиях лицензии CC-BY-SA-3.0.

Электроника МК 90 — советский микрокалькулятор (портативная электронно-вычислительная машина) с 16-разрядным процессором на микросхемах серии 588.

Производился в Минске на заводе «Электрон».

Технические характеристики

  • Процессор: на микросхемах серии 588, по системе команд совместим с PDP-11, Электроника-60, ДВК
  • Оперативная память: 16 КБ
  • ПЗУ: 16 КБ либо 32 КБ (с интерпретатором Бейсика)
  • Дисплей: жидкокристаллический, 120 × 64 пикселей, обычно это 8 строк по 20 символов
  • Клавиатура: 63 клавиши
  • Устройства хранения данных — сменные модули памяти (СМП), объёмом 10 КБ

Процессор и чипсет

  • КА588ВС2 (D1) — арифметико-логическое устройство (АЛУ), управляется 12-разрядными микрокомандами из КА588ВУ2 −0001, −0002, −0004
  • КА588ВУ2 −0001, −0002, −0003, −0004, −0005 — управляющая память (УП)
  • КА588ВГ1 — системный контроллер (СК), управляется 5-разрядными микрокомандами из КА588ВУ2−0005
  • КА1835РЕ1 — ПЗУ
  • КА1034НР3
  • КА1835ВГ5 — системный контроллер-диспетчер
  • КА512ВИ1
  • КА1835ВГ4 — контроллер внешних устройств
  • КА1835ВГ3 — контроллер запоминающего устройства
  • КА1835ВГ1

Ветора прерываний:

  • 000004 — нечётный адрес при обращении по слову; ошибка обращения к каналу; HALT в режиме USER; неверная адресация JMP/JSR
  • 000010 — резерный код команды
  • 000014 — прерывание по T-разряду или команда BPT
  • 000020 — команда IOT
  • 000030 — команда EMT
  • 000034 — команда TRAP
  • 000100 — прерывание EVNT
  • 000310 — прерывание от клавиатуры
  • 160002 — сигнал/команда HALT в режиме HALT
  • 160006 — двойное зависание
  • 160012 — ошибка при приёме вектора прерывания

Регистры (порты)

Регистр Назначение Примечание
164000, 164004 Регистр начального адреса (мл., ст. байт) Контроллер запоминающего устройства
КА1835ВГ3
164002, 164006 Регистр режима (мл., ст. байт)
164020 Регистр данных, байтовый Контроллер внешних устройств
КА1835ВГ4
164022 Регистр коэффициэнта деления для частоты сигнала CLK
164024 Регистр контроля (W), регистр состояния (R)
164026 Регистр команд
164032 Регистр конфигурации RG1 (слово) Системный контроллер
КА1835ВГ5
164034 Регистр конфигурации RG2 (слово)
165000-165177 Часы реального времени (RTC)
 164024 (R) Регистр состояния контроллера внешних устройств КА1835ВГ4
     ┌──┬──┬──┬──┬──┬──┬──┬──┐
     │ 7  6│ 5  4  3│ 2  1  0│
     └─┬┴─┬┴─┬┴─┬┴─┬┴─┬┴─┬┴─┬┘
       │ INT mask  │ RA  0  0 
 Data ─┘  │  │  │ SELECT
 ready    │  │  └─ 4: от внешних устройств
          │  └──── 5: от регистра данных
          └─────── 6: от таймера

TODO

Память

  • Адреса 000000-037777 — ОЗУ 16 КБ
  • Адреса 040000-077777 — дополнительное ПЗУ 16 КБ
  • Адреса 100000-177777 — основное ПЗУ 32 КБ

Клавиатура

Контроллер клавиатуры построен на микросхеме КА1835ВГ1.

Скан-код нажатой клавиши передаётся через канал 2 контроллера КА1835ВГ4. Нажатие клавиши также приводит к прерыванию по вектору 000310.

Эмуляция

  • Эмулятор от Piotr Piatek с исходниками на Delphi [1]
  • Драйвер mk90 в составе MAME [2], нерабочий

Ссылки