Ириша/Техническая информация: различия между версиями

Материал из Emuverse
(+ io)
 
(не показано 14 промежуточных версий этого же участника)
Строка 27: Строка 27:
После сброса устанавливается карта 0. При этом на нижние адреса подключается ПЗУ, а на верхние – нулевая страница памяти видеоконтроллера.
После сброса устанавливается карта 0. При этом на нижние адреса подключается ПЗУ, а на верхние – нулевая страница памяти видеоконтроллера.


= Видеоконтроллер =
= Порты ввода-вывода =
 
Видеоконтроллер поддерживает только графические режимы. Текстовые режимы эмулируются программным обеспечением.
 
[[Изображение:Irisha vodeomodes.png|700px|center]]
 
Объем памяти, необходимой для режима 1 – 8000 байт (страницы выровнены по границе 8 Кб), для режимов 2 и 3 – 16000 байт.
 
== Регистры управления видеоконтроллером ==
 
[[Изображение:Irisha video registers.png|300px|center]]
 
* $D8 – регистр управления режимом.
** $0A, 1A  – режим 1.
** $8A – режим 2.
** $9A – режим 3.
** $*8, $*2, $*0 – гашение изображения.
* $D9 – регистр управления цветом.
* $DA – регистр выбора рабочих страниц.
 
== Монохромные режимы ==
 
[[Изображение:Irisha mono modes.png|400px|center]]
 
В монохромном режиме среднего разрешения каждый бит отвечает за засветку одной точки на экране.
 
В режиме высокого разрешения, в зависимости от установки перемычки П1, контроллер может работать аналогично режиму среднего разрешения (П1 снята), тогда в строке выводится 640 независимых точек, либо, за счет снижения разрешения (П1 установлена), яркость соседних точек усредняется (используется для бытовых телевизоров с узкой полосой пропускания).
 
В режиме 1 на экране отображается одна из двух экранных страниц 8000 байт (адрес начала страниц выровнен но границе 8 Кб), в левом верхнем углу находится первый байт изображения. Старший бит соответствует первой точке.
 
Структура регистра управления цветом показана на рисунке:
 
<center>[[Изображение:Irisha mode 1 register.png|300px]] [[Изображение:Irisha mode 3 pallette.png|300px]]</center>
 
== Цветной режим ==
 
В режиме 2 каждая точка может быть окрашена одним из трёх цветов из выбранной палитры (доступно 2):
 
<center>[[Изображение:Irisha mode 2.png|300px]] [[Изображение:Irisha mode 2 pallette.png|300px]]</center>
 
== Контроллер прерываний ==
 
[[Изображение:Irisha interrupts.png|400px|center]]
 
Наивысший приоритет имеет прерывание ITIMER от таймера ВИ53. IKBD и IUART отвечают за прием данных с клавиатура и по локальной сети.
 
== Порты ввода-вывода ==


{| class="wide"
{| class="wide"
Строка 182: Строка 136:
|-
|-
| style="text-align:center;" | 14H  
| style="text-align:center;" | 14H  
| style="text-align:center;" | R
| style="text-align:center;" | R/<span style="text-decoration: overline;">W</span>
|| Регистр данных расширения ROM
|| Порт расширения ROM. Чтение &ndash; получение следующего байта. Запись &ndash; сброс счетчика.
||  
||  


Строка 192: Строка 146:
||
||


|- style="border-bottom:hidden;"
| style="text-align:center;" | D8H
| style="text-align:center;" | <span style="text-decoration: overline;">W</span>
|| Регистр управления видеорежимом
||
|- style="border-bottom:hidden;"
| style="text-align:center;" | D9H
| style="text-align:center;" | <span style="text-decoration: overline;">W</span>
|| Регистр управления цветом
||
|-
| style="text-align:center;" | DAH
| style="text-align:center;" | <span style="text-decoration: overline;">W</span>
|| Регистр выбора видеостраницы
||


|}
|}
= Видеоконтроллер =
Видеоконтроллер поддерживает только графические режимы. Текстовые режимы эмулируются программным обеспечением.
[[Изображение:Irisha vodeomodes.png|700px|center]]
Объем памяти, необходимой для режима 1 &ndash; 8000 байт (страницы выровнены по границе 8 Кб), для режимов 2 и 3 &ndash; 16000 байт.
== Регистры управления видеоконтроллером ==
[[Изображение:Irisha video registers.png|300px|center]]
* D8H &ndash; регистр управления режимом.
** 0AH, 1AH  &ndash; режим 1.
** 8AH &ndash; режим 2.
** 9AH &ndash; режим 3.
** x8H, x2H, x0H &ndash; гашение изображения.
* D9H &ndash; регистр управления цветом.
* DAH &ndash; регистр выбора рабочих страниц.
== Монохромные режимы ==
[[Изображение:Irisha mono modes.png|400px|center]]
В монохромном режиме среднего разрешения каждый бит отвечает за засветку одной точки на экране.
В режиме высокого разрешения, в зависимости от установки перемычки П1, контроллер может работать аналогично режиму среднего разрешения (П1 снята), тогда в строке выводится 640 независимых точек, либо, за счет снижения разрешения (П1 установлена), яркость соседних точек усредняется (используется для бытовых телевизоров с узкой полосой пропускания).
В режиме 1 на экране отображается одна из двух экранных страниц 8000 байт (адрес начала страниц выровнен но границе 8 Кб), в левом верхнем углу находится первый байт изображения. Старший бит соответствует первой точке.
Структура регистра управления цветом показана на рисунке:
<center>[[Изображение:Irisha mode 1 register.png|300px]] [[Изображение:Irisha mode 3 pallette.png|300px]]</center>
== Цветной режим ==
В режиме 2 каждая точка может быть окрашена одним из трёх цветов из выбранной палитры (доступно 2):
<center>[[Изображение:Irisha mode 2.png|300px]] [[Изображение:Irisha mode 2 pallette.png|300px]]</center>
= Контроллер прерываний =
[[Изображение:Irisha interrupts.png|400px|center]]
Наивысший приоритет имеет прерывание ITIMER от таймера ВИ53. IKBD и IUART отвечают за прием данных с клавиатура и по локальной сети.
= ППА =
ППА построен на основе КР580ВВ55. Порты используются следующим образом:
* Порт A: Ввод/вывод данных.
* Порт B: Только ввод.
* Порт C: Только вывод.
Выходы порта C используются для управления работой внутренних схем модуля процессора.
На входе порта B установлен мультиплексор К555КП13. Управление мультиплексором осуществляется выходом PC7.
<center>
{| class="wikitable"
|+ Функции входов и выходов БИС ППА КР580ВВ55
|-
! rowspan="2" | Сигнал
! colspan="2" | Назначение
|-
! PC7 = 0
! PC7 = 1
|- style="border-bottom:hidden;"
| style="text-align:center;" |'''PA0''' || Вход-выход ПИ 0 || Старт цикла преобразователя игрового адаптера
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PA1''' || Вход-выход ПИ 1 || Выбор игрового пульта. Запись по сигналу PC6. «0» — пульт 1, «1» — пульт 2
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PA2''' || Вход-выход ПИ 2 || rowspan="2" | Не используется
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PA3''' || Вход-выход ПИ 3
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PA4''' || Вход-выход ПИ 4 || Канал побитного управления звуком (шумовой канал)
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PA5''' || Вход-выход ПИ 5 || Разрешение работы канала 1 синтезатора звука. «0» — разрешена
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PA6''' || Вход-выход ПИ 6 || Не используется
|-
| style="text-align:center;" | '''PA7''' || Вход-выход ПИ 7 || Выход программного канала последовательного интерфейса
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PB0''' || Вход статуса ПИ S13 || Анализ завершения цикла преобразования игрового адаптера: «0» — завершён
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PB1''' || Вход статуса ПИ S14 || Анализ состояния кнопки игрового пульта 1: «0» — нажата
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PB2''' || Вход статуса ПИ S15 || Анализ состояния кнопки пульта 2: «0» — нажата
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PB3''' || Вход статуса ПИ S16 || Вход программного канала последовательного интерфейса
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PB4''' || Вход статуса ПИ S12 || Анализ сигнала BUSRQ системной магистрали: «1» — установлен
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PB5''' || Вход статуса ПИ S11 || Анализ сигнала PON системной магистрали: «1» — норма
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PB6''' || Вход анализа типа дополнительной платы EX1 || Анализ сигнала INT1 системной магистрали: «1» — установлен
|-
| style="text-align:center;" | '''PB7''' || Вход анализа типа дополнительной платы EX2 || Анализ готовности клавиатуры: «1» — код принят
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PC0''' || colspan="2" | Выход управления ПИ SO1
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PC1''' || colspan="2" | Выход управления ПИ SO2
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PC2''' || colspan="2" | Управление выбором рабочей карты памяти MC0
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PC3''' || colspan="2" | Управление выбором рабочей карты памяти MC1
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PC4''' || colspan="2" | Разрешение захвата системной магистрали: «1» — захват разрешён
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PC5''' || colspan="2" | Выбор режима игровой адаптер — синтезатор звука: «1» — игровой адаптер, «0» — синтезатор звука
|- style="border-bottom:hidden;"
| style="text-align:center;" | '''PC6''' || colspan="2" | Строб записи в дополнительный регистр управления игровым адаптером и синтезатором звука
|-
| style="text-align:center;" | '''PC7''' || colspan="2" | Выбор функций портов А и В
|}
</center>
= Клавиатура =
Клавиатура записывает код нажатой клавиши в регистр К589ИР12, после чего устанавливается сигнал прерывания IKBD. После чтения регистра сигнал IKBD сбрасывается. Также, наличие кода символа в регистре можно контролировать с помощью бита PB7 ППА.
= Последовательный интерфейс =
Последовательный интерфейс предназначен для обмена информацией с внешними устройствами, в том числе бытовым магнитофоном. Последовательный интерфейс имеет два канала:
* '''Канал 1''' построен на базе КР580ВВ51.
* '''Канал 2''' реализуется программно: вывод с помощью манипуляции выходом PA7 ППА, ввод с помощью анализа состояния PB3 ППА.
Скорость обмена в Канале 1 задается с помощью программирования режимов КР580ВВ51 и канала 0 КР580ВИ53, который используется как делитель базовой частоты Ф2TTL, равной 1,7777 МГц.
Канал 2 используется для обмена с бытовым магнитофоном и поддерживает скорости до 1200 бод. Метод и формат записи соответствует стандарту MSX.
Для полноценной работы магнитофон должен поддерживать вход отключения двигателя. Программа работы с магнитофоном использует бит PA7 ППА для вывода информации, выход DTR ВВ51 для управления двигателем и вход DSR для чтения данных.
= Параллельный интерфейс (ПИ) =
Параллельный интерфейс предназначен для подключения принтеров и других периферийных устройств. Интерфейс реализует следующие сигналы:
* <span style="text-decoration: overline;">P0</span>&nbsp;&hellip;&nbsp;<span style="text-decoration: overline;">P7</span> &mdash; двунаправленные. Подключены к каналу A ППА.
* <span style="text-decoration: overline;">S01</span>, <span style="text-decoration: overline;">S02</span> &mdash; выходы, PC0 и PC1 ППА.
* S11&nbsp;&hellip;&nbsp;S16 &mdash; входы, подключены к каналу B ППА.
В зависимости от типа подключенного устройства, конкретное назначение сигналов определяется схемой его подключения и программным обеспечением.
= Таймер =
В качестве таймера используется БИС К580ВИ53.
'''Канал 0''' используется как делитель частоты для последовательного интерфейса.
'''Канал 1''' используется для формирования временных интервалов. Опорная частота формируется делением сигнала Ф2TTL на 256, что позволяет формировать временные интервалы от 432 мкс до 9,4 сек с дискретностью 144 мкс. Выходной сигнал канала поступает на контроллер прерываний и имеет наивысший приоритет.
'''Канал 2''' используется для генерации звука.
= Синтезатор звука =
Синтезатор звука состоит из двух независимых каналов:
* Канал 1 использует второй канал К580ВИ53.
* Канал 2 предназначен для синтеза шумовых сигналов и управляется битом PA4 ППА.
Разрешение работы обоих каналов управляется выводом PC5 ППА (активный &ndash; низкий).


[[Категория:Ириша]]
[[Категория:Ириша]]

Текущая версия от 22:03, 14 марта 2026

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


Процессор

Адресное пространство

В базовом варианте Ириша содержит два основных блока оперативной памяти:

  1. Память видеоконтроллера (до 64 Кб).
  2. Память на дополнительной плате (64 Кб).

Каждый блок памяти разбит на 4 подстраницы по 16 Кб.

Плата процессора собственной памяти не содержит и использует память видеоконтроллера и/или память на дополнительной плате.

На плате процессора устанавливается ПЗУ (от 2 до 16 Кб).

Отображение страниц ОЗУ и ПЗУ на адресное пространство процессора управляется битами PC2 и PC3 регистра ВВ55 на плате процессора.

Всего доступно 4 карты распределения памяти. Полученные варианты (для стандартной прошивки ПЗУ блока управления памятью) приведены на рисунке.

После сброса устанавливается карта 0. При этом на нижние адреса подключается ПЗУ, а на верхние – нулевая страница памяти видеоконтроллера.

Порты ввода-вывода

Адрес Вид операции Назначение Примечание
00H … 03H Резерв
04H R Регистр данных клавиатуры К589ИР12
05H R Регистр данных клавиатуры (дубль)
06H R/W Регистр данных последовательного интерфейса КР580ВВ51
07H R/W Регистр управления/статуса последовательного интерфейса
08H R/W Счётчик 0 таймера КР580ВИ53
09H R/W Счётчик 1
0AH R/W Счётчик 2
0BH W Регистр управления
0CH R/W Считывание состояния регистра запроса прерывания / Запись команд ICW1, OCW2, OCW3 КР580ВН59
0DH R/W Считывание регистра маски прерываний / Запись команд ICW2, ICW3, ICW4, OCW1
0EH R/W Дублирует 0CH
0FH R/W Дублирует 0DH
10H R/W Порт A ППА КР580ВВ55
11H R/W Порт B ППА (В МПСиС ошибочно порт 12H)
12H R/W Порт C ППА (В МПСиС ошибочно порт 11H)
13H W Регистр управления ППА
14H R/W Порт расширения ROM. Чтение – получение следующего байта. Запись – сброс счетчика.
15H … 1BH Резерв
D8H W Регистр управления видеорежимом
D9H W Регистр управления цветом
DAH W Регистр выбора видеостраницы

Видеоконтроллер

Видеоконтроллер поддерживает только графические режимы. Текстовые режимы эмулируются программным обеспечением.

Объем памяти, необходимой для режима 1 – 8000 байт (страницы выровнены по границе 8 Кб), для режимов 2 и 3 – 16000 байт.

Регистры управления видеоконтроллером

  • D8H – регистр управления режимом.
    • 0AH, 1AH – режим 1.
    • 8AH – режим 2.
    • 9AH – режим 3.
    • x8H, x2H, x0H – гашение изображения.
  • D9H – регистр управления цветом.
  • DAH – регистр выбора рабочих страниц.

Монохромные режимы

В монохромном режиме среднего разрешения каждый бит отвечает за засветку одной точки на экране.

В режиме высокого разрешения, в зависимости от установки перемычки П1, контроллер может работать аналогично режиму среднего разрешения (П1 снята), тогда в строке выводится 640 независимых точек, либо, за счет снижения разрешения (П1 установлена), яркость соседних точек усредняется (используется для бытовых телевизоров с узкой полосой пропускания).

В режиме 1 на экране отображается одна из двух экранных страниц 8000 байт (адрес начала страниц выровнен но границе 8 Кб), в левом верхнем углу находится первый байт изображения. Старший бит соответствует первой точке.

Структура регистра управления цветом показана на рисунке:

Цветной режим

В режиме 2 каждая точка может быть окрашена одним из трёх цветов из выбранной палитры (доступно 2):

Контроллер прерываний

Наивысший приоритет имеет прерывание ITIMER от таймера ВИ53. IKBD и IUART отвечают за прием данных с клавиатура и по локальной сети.

ППА

ППА построен на основе КР580ВВ55. Порты используются следующим образом:

  • Порт A: Ввод/вывод данных.
  • Порт B: Только ввод.
  • Порт C: Только вывод.

Выходы порта C используются для управления работой внутренних схем модуля процессора. На входе порта B установлен мультиплексор К555КП13. Управление мультиплексором осуществляется выходом PC7.

Функции входов и выходов БИС ППА КР580ВВ55
Сигнал Назначение
PC7 = 0 PC7 = 1
PA0 Вход-выход ПИ 0 Старт цикла преобразователя игрового адаптера
PA1 Вход-выход ПИ 1 Выбор игрового пульта. Запись по сигналу PC6. «0» — пульт 1, «1» — пульт 2
PA2 Вход-выход ПИ 2 Не используется
PA3 Вход-выход ПИ 3
PA4 Вход-выход ПИ 4 Канал побитного управления звуком (шумовой канал)
PA5 Вход-выход ПИ 5 Разрешение работы канала 1 синтезатора звука. «0» — разрешена
PA6 Вход-выход ПИ 6 Не используется
PA7 Вход-выход ПИ 7 Выход программного канала последовательного интерфейса
PB0 Вход статуса ПИ S13 Анализ завершения цикла преобразования игрового адаптера: «0» — завершён
PB1 Вход статуса ПИ S14 Анализ состояния кнопки игрового пульта 1: «0» — нажата
PB2 Вход статуса ПИ S15 Анализ состояния кнопки пульта 2: «0» — нажата
PB3 Вход статуса ПИ S16 Вход программного канала последовательного интерфейса
PB4 Вход статуса ПИ S12 Анализ сигнала BUSRQ системной магистрали: «1» — установлен
PB5 Вход статуса ПИ S11 Анализ сигнала PON системной магистрали: «1» — норма
PB6 Вход анализа типа дополнительной платы EX1 Анализ сигнала INT1 системной магистрали: «1» — установлен
PB7 Вход анализа типа дополнительной платы EX2 Анализ готовности клавиатуры: «1» — код принят
PC0 Выход управления ПИ SO1
PC1 Выход управления ПИ SO2
PC2 Управление выбором рабочей карты памяти MC0
PC3 Управление выбором рабочей карты памяти MC1
PC4 Разрешение захвата системной магистрали: «1» — захват разрешён
PC5 Выбор режима игровой адаптер — синтезатор звука: «1» — игровой адаптер, «0» — синтезатор звука
PC6 Строб записи в дополнительный регистр управления игровым адаптером и синтезатором звука
PC7 Выбор функций портов А и В

Клавиатура

Клавиатура записывает код нажатой клавиши в регистр К589ИР12, после чего устанавливается сигнал прерывания IKBD. После чтения регистра сигнал IKBD сбрасывается. Также, наличие кода символа в регистре можно контролировать с помощью бита PB7 ППА.

Последовательный интерфейс

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

  • Канал 1 построен на базе КР580ВВ51.
  • Канал 2 реализуется программно: вывод с помощью манипуляции выходом PA7 ППА, ввод с помощью анализа состояния PB3 ППА.

Скорость обмена в Канале 1 задается с помощью программирования режимов КР580ВВ51 и канала 0 КР580ВИ53, который используется как делитель базовой частоты Ф2TTL, равной 1,7777 МГц.

Канал 2 используется для обмена с бытовым магнитофоном и поддерживает скорости до 1200 бод. Метод и формат записи соответствует стандарту MSX.

Для полноценной работы магнитофон должен поддерживать вход отключения двигателя. Программа работы с магнитофоном использует бит PA7 ППА для вывода информации, выход DTR ВВ51 для управления двигателем и вход DSR для чтения данных.

Параллельный интерфейс (ПИ)

Параллельный интерфейс предназначен для подключения принтеров и других периферийных устройств. Интерфейс реализует следующие сигналы:

  • P0 … P7 — двунаправленные. Подключены к каналу A ППА.
  • S01, S02 — выходы, PC0 и PC1 ППА.
  • S11 … S16 — входы, подключены к каналу B ППА.

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

Таймер

В качестве таймера используется БИС К580ВИ53.

Канал 0 используется как делитель частоты для последовательного интерфейса.

Канал 1 используется для формирования временных интервалов. Опорная частота формируется делением сигнала Ф2TTL на 256, что позволяет формировать временные интервалы от 432 мкс до 9,4 сек с дискретностью 144 мкс. Выходной сигнал канала поступает на контроллер прерываний и имеет наивысший приоритет.

Канал 2 используется для генерации звука.

Синтезатор звука

Синтезатор звука состоит из двух независимых каналов:

  • Канал 1 использует второй канал К580ВИ53.
  • Канал 2 предназначен для синтеза шумовых сигналов и управляется битом PA4 ППА.

Разрешение работы обоих каналов управляется выводом PC5 ППА (активный – низкий).