Системная магистраль: различия между версиями

Материал из ПМК вики
Перейти к навигации Перейти к поиску
(Новая страница: «Суммарно два регистра M (см. ИК13) и два регистра по 1008 бит (см. ИР2) образуют '''системную...»)
 
Нет описания правки
Строка 1: Строка 1:
Суммарно два регистра M (см. [[ИК13]]) и два регистра по 1008 бит (см. [[ИР2]]) образуют '''системную магистраль''' ПМК — кольцо размером в 42*4 + 42*4 + 1008 + 1008 = 2352 бита.  
Суммарно два регистра M (см. [[ИК13]]) и два регистра по 1008 бит (см. [[ИР2]]) образуют '''системную магистраль''' ПМК — кольцо размером в 42*4 + 42*4 + 1008 + 1008 = 2352 бита.  


Всё поле данных разработчики разбили на три одинаковые области по 784 бита (196 тетрад или 98 байт). В первой области хранится программа пользователя (98 шагов), во второй области — регистры данных (14 регистров с номерами 0-9, a, b, c, d по 14 тетрад каждый), а третья область — служебная.
Всё поле данных разработчики разбили на три одинаковые области по 784 бита (196 тетрад или 98 байт). В первой области М3 хранится [[программа пользователя]] (98 шагов), во второй области М1 [[регистры данных]] (14 регистров с номерами 0-9, a, b, c, d по 14 тетрад каждый), а третья область М2 — служебная.
 
Три области не идут друг за другом. В синхропрограмме есть несколько повторяющихся операций, которые отнимают три такта и приводят к тому, что числа в регистрах хранятся на каждой третьей ячейке. В данных кольца это и реализовано. Сначала передается первая тетрада области М1, затем первая тетрада области М2 и затем первая тетрада области М3. Потом идут вторые тетрады и так далее. И пока за три такта отрабатываются микрокоманды 3, 4, 5 в синхропрограмме, ненужные области пропускаются.
 
Через несколько лет после появления [[Б3-34]] появились две новые модели — [[МК-61]] и [[МК-52]]. У них добавился еще один чип [[К145ИК1306]], где вычисляются операции с градусами и логические операции.
 
В [[К145ИК1306]] есть такой же регистр М, как и в [[К145ИК1302]] и [[К145ИК1303]]. Появление этого чипа добавило в кольцо один регистр памяти (14 тетрад), еще семь шагов программы (14 тетрад) и на 14 тетрад увеличилась служебная область.
 
== Область памяти М1 ==
В области М1 находятся регистры памяти 0-9, a, b, c, d, e. В них интересно то, что для хранения чисел надо 12 тетрад (1 — знак мантиссы, 8 — мантисса, 3 — порядок), а на один регистр выделяется 14 тетрад (чтобы делилось на 42 в процессоре). В итоге две тетрады на каждый регистр не используются.
 
== Область памяти М3 ==
В области М3 располагается память программ. Там всё просто — 98 шагов для Б3-34 и 105 шагов (на 14 тетрад больше) для МК-61 и МК-52.
 
== Область памяти М2 ==
Область М2 самая интересная. В нем кроме регистров X, Y, Z, T, BX, располагается область Ms, канал связи КС и Метка.
 
=== Подобласть Ms ===
Область, обозначенная как Ms, довольно большая. Она занимает одну шестую часть области данных кольца. И эта область не используется в калькуляторе. При разработке архитектуры разработчики предусматривали возможность сделать «область программ-данных». Это — такая область, в которую можно записывать или программу, или регистры с данными. Причем довольно большая область — 56 программных шагов.
 
В калькуляторах предполагались включить специальные функции в комбинации с кнопкой [К] для обмена (над кнопками 1 и 2, сейчас там пустое место). В серийных моделях эта область пропала, а так у нас могло бы быть больше регистров памяти или программа длиннее на 56 шагов. Об этой области вскользь упоминалось в журнале «Техника-молодежи», № 7 за 1986 год.
 
=== Метка ===
Самый важный элемент синхронизации в данных кольца — так называемая «Метка». Это последовательность из девяти тетрад, состоящих из единиц. При появлении кода «Метка» внутренний счетчик у процессоров сбрасывается, и начинается отсчет данных кольца относительно кода Метка. В самом начале после включения машинки головной процессор К145ИК1302 инициализирует кольцо и формирует Метку. Команды и содержимое регистров подобраны так, что код Метка не может встретиться ни в данных, ни в программе.
 
Продвинутые пользователи калькуляторов семейства Б3-34 наслышаны о «пустышке» — недокументированной операции, когда на индикаторе отображается только десятичная точка. Это — код, состоящий только из единиц. Когда этот код появляется, внутренний счетчик сбивается, и калькулятор начинает чудить — появляется два кода Метка и вся синхронизация сбивается — калькулятор принимает одну область памяти за другую.
 
Внутренняя адресация относительна относительно кода Метка. При появлении чип [[К745ИК1306]] с дополнительным регистром М, количество ячеек увеличилось, и они условно добавились в конец, потому что в архитектуре вся область данных в кольце непрерывна. В этой архитектуре можно добавить еще один процессор типа [[К145ИК13]], тогда станет больше еще на один регистр памяти, и добавится еще 7 шагов программы (максимально — 112).
 
 
== Ссылки ==
* Практически вся приведённая здесь информация взята из статьи [https://habr.com/ru/post/467501/ «Внедрение в архитектуру советских программируемых калькуляторов «Электроника МК-52»»] на Хабре
* См. также книгу Я.К. Трохименко [[Программируемые микрокалькуляторы. Устройство и пользование. (книга)| Программируемые микрокалькуляторы. Устройство и пользование.]]

Версия от 06:06, 11 июня 2020

Суммарно два регистра M (см. ИК13) и два регистра по 1008 бит (см. ИР2) образуют системную магистраль ПМК — кольцо размером в 42*4 + 42*4 + 1008 + 1008 = 2352 бита.

Всё поле данных разработчики разбили на три одинаковые области по 784 бита (196 тетрад или 98 байт). В первой области М3 хранится программа пользователя (98 шагов), во второй области М1 — регистры данных (14 регистров с номерами 0-9, a, b, c, d по 14 тетрад каждый), а третья область М2 — служебная.

Три области не идут друг за другом. В синхропрограмме есть несколько повторяющихся операций, которые отнимают три такта и приводят к тому, что числа в регистрах хранятся на каждой третьей ячейке. В данных кольца это и реализовано. Сначала передается первая тетрада области М1, затем первая тетрада области М2 и затем первая тетрада области М3. Потом идут вторые тетрады и так далее. И пока за три такта отрабатываются микрокоманды 3, 4, 5 в синхропрограмме, ненужные области пропускаются.

Через несколько лет после появления Б3-34 появились две новые модели — МК-61 и МК-52. У них добавился еще один чип К145ИК1306, где вычисляются операции с градусами и логические операции.

В К145ИК1306 есть такой же регистр М, как и в К145ИК1302 и К145ИК1303. Появление этого чипа добавило в кольцо один регистр памяти (14 тетрад), еще семь шагов программы (14 тетрад) и на 14 тетрад увеличилась служебная область.

Область памяти М1

В области М1 находятся регистры памяти 0-9, a, b, c, d, e. В них интересно то, что для хранения чисел надо 12 тетрад (1 — знак мантиссы, 8 — мантисса, 3 — порядок), а на один регистр выделяется 14 тетрад (чтобы делилось на 42 в процессоре). В итоге две тетрады на каждый регистр не используются.

Область памяти М3

В области М3 располагается память программ. Там всё просто — 98 шагов для Б3-34 и 105 шагов (на 14 тетрад больше) для МК-61 и МК-52.

Область памяти М2

Область М2 самая интересная. В нем кроме регистров X, Y, Z, T, BX, располагается область Ms, канал связи КС и Метка.

Подобласть Ms

Область, обозначенная как Ms, довольно большая. Она занимает одну шестую часть области данных кольца. И эта область не используется в калькуляторе. При разработке архитектуры разработчики предусматривали возможность сделать «область программ-данных». Это — такая область, в которую можно записывать или программу, или регистры с данными. Причем довольно большая область — 56 программных шагов.

В калькуляторах предполагались включить специальные функции в комбинации с кнопкой [К] для обмена (над кнопками 1 и 2, сейчас там пустое место). В серийных моделях эта область пропала, а так у нас могло бы быть больше регистров памяти или программа длиннее на 56 шагов. Об этой области вскользь упоминалось в журнале «Техника-молодежи», № 7 за 1986 год.

Метка

Самый важный элемент синхронизации в данных кольца — так называемая «Метка». Это последовательность из девяти тетрад, состоящих из единиц. При появлении кода «Метка» внутренний счетчик у процессоров сбрасывается, и начинается отсчет данных кольца относительно кода Метка. В самом начале после включения машинки головной процессор К145ИК1302 инициализирует кольцо и формирует Метку. Команды и содержимое регистров подобраны так, что код Метка не может встретиться ни в данных, ни в программе.

Продвинутые пользователи калькуляторов семейства Б3-34 наслышаны о «пустышке» — недокументированной операции, когда на индикаторе отображается только десятичная точка. Это — код, состоящий только из единиц. Когда этот код появляется, внутренний счетчик сбивается, и калькулятор начинает чудить — появляется два кода Метка и вся синхронизация сбивается — калькулятор принимает одну область памяти за другую.

Внутренняя адресация относительна относительно кода Метка. При появлении чип К745ИК1306 с дополнительным регистром М, количество ячеек увеличилось, и они условно добавились в конец, потому что в архитектуре вся область данных в кольце непрерывна. В этой архитектуре можно добавить еще один процессор типа К145ИК13, тогда станет больше еще на один регистр памяти, и добавится еще 7 шагов программы (максимально — 112).


Ссылки