Электроника МК 90: различия между версиями
Nzeemin (обсуждение | вклад) Нет описания правки |
Nzeemin (обсуждение | вклад) Нет описания правки |
||
(не показано 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 | ||
== | == Память == | ||
* Адреса 000000-037777 — ОЗУ 16 КБ | |||
* Адреса 040000-077777 — дополнительное ПЗУ 16 КБ | |||
* Адреса 100000-177777 — основное ПЗУ 32 КБ | |||
== Клавиатура == | == Клавиатура == | ||
Контроллер клавиатуры построен на микросхеме КА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- | * [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.
Эмуляция
Ссылки
- Электроника МК 90 в Википедии
- Elektronika MK-90 — hardware от Piotr Piatek (материалы по советским устройствам удалены автором в 2022 году)
- Yprits/MK90 — бэкап информации с сайта Piotr Piatek