Системная магистраль: различия между версиями
AtH (обсуждение | вклад) (Новая страница: «Суммарно два регистра M (см. ИК13) и два регистра по 1008 бит (см. ИР2) образуют '''системную...») |
AtH (обсуждение | вклад) Нет описания правки |
||
Строка 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).
Ссылки
- Практически вся приведённая здесь информация взята из статьи «Внедрение в архитектуру советских программируемых калькуляторов «Электроника МК-52»» на Хабре
- См. также книгу Я.К. Трохименко Программируемые микрокалькуляторы. Устройство и пользование.