АрхивАппаратная частьРеверсивные N-разрядные троичные двухуровневые одноединичные трёхбитные регистры сдвига c предустановочными входами

Из нереверсивного N-разрядного троичного двухуровневого одноединичного трёхбитного регистра сдвига с предустановочными входами http://trinary.ru/discussions/76 относительно просто построить реверсивный регистр сдвига. Для этого на каждый из трёх входов D0, D1 и D2 каждого триггера нужно поставить мультиплексор 2 в 1. Выходы Out всех мультиплексоров соединяют со входами D0, D1 и D2 всех триггеров. Первые входы A каждой триады мультиплексоров соединяют с выходами Q0, Q1 и Q2 предыдущего триггера или (для первого триггера) с последовательными входами регистра, вторые входы B каждой триады мультиплексоров соединяют с выходами Q0, Q1 и Q2 следующего триггера или (для последнего триггера) с последовательными выходами регистра.
Линии включения первых входов VA мультиплексоров объединяют в одну линию включения прямого сдвига. Линии включения вторых входов VB мультиплексоров объединяют в одну линию включения реверсивного сдвига.
На предустановочные входы S0, S1 и S2 всех триггеров подают сигнал предустановки в параллельном троичном двухуровневом одноединичном трёхбитном коде.
Так как все мультиплексоры одинаковые, то достаточно рассмотреть схему одного мультиплексора 2 в 1. В работе http://digital.sibsutis.ru/digital/MS.htm на рис.2 приведена схема мультиплексора 3 в 1. В отличие от схемы мультиплексора 3 в 1 схема мультиплексора 2 в 1 состоит из двух двухвходовых логических элементов 2И и одного двухвходового логического элемента 2ИЛИ и имеет два входа A и B для переключаемых цифровых сигналов и два входа VA и VB для сигналов управления переключением входов A и B.

Андрей Куликов,

Мнения

  • 001Андрей Куликов

      Вышеописанные реверсивные N-разрядные троичные двухуровневые одноединичные трёхбитные регистры сдвига c предустановочными входами являются простейшими троичными процессорами, которые, в зависимости от числа импульсов сдвига (1 или k) и направления сдвига (вправо - прямое или влево - реверсивное) выполняют операции деления на 3 или 3^k или умножения на 3 или 3^k.
      Троичный двухуровневый одноединичный трёхбитный код операнда загружается параллельно через установочные входы S0, S1 и S2. После операций сдвига (деление и умножение на 3 или 3^k) результат в параллельном троичном двухуровневом одноединичном коде появляется на выходах Q0, Q1 и Q2 всех N-триггеров троичного реверсивного регистра сдвига.
      Загружать троичный код операнда, направление сдвига операнда (вид операции - деление или умножение), число импульсов сдвига (степень 3) и считывать результат операции можно из и в обычный двоичный компьютер с параллельной шиной (интерфейсом).
      Вышеописанный простейший троичный процессор можно выполнить в виде сопроцессора к обычному двоичному процессору:
      1. приставка, подключаемая к компьютеру через параллельный интерфейс,
      2. приставка, подключаемая к компьютеру через последовательный интерфейс (с добавлением преобразователей из параллельного кода в последовательный и наоборот),
      3. плата, вставляемая в слоты расширения на материнской плате компьютера,
      4. микросхема, вставляемая в разъём сопроцессора на материнской плате компьютера,
      5. дополнительный узел в микросхеме самого микропроцессора.

    • 002Андрей Куликов

        В позиционной троичной системе счисления http://ru.wikipedia.org/wiki/Троичная_система_счисления операция сдвига влево или вправо на 1 или n разрядов является умножением или делением на 3 или 3^n.
        В непозиционной унарной системе счисления http://ru.wikipedia.org/wiki/Унарная_система_счисления операция сдвига влево или вправо на 1 или n разрядов является прибавлением или вычитанием 3 или 3*n.
        В непозиционной нецелочисленной дробной системе счисления с дробным основанием равным 1/3 операция сдвига влево или вправо на 1 или n разрядов является прибавлением или вычитанием 1 или n.
        В других системах счисления операция сдвига влево или вправо на 1 или n разрядов будет являться другим действием или функцией, что зависит от применённой системы счисления http://ru.wikipedia.org/wiki/Система_счисления.
        Таким образом вышеописанные
        реверсивные N-разрядные троичные двухуровневые одноединичные трёхбитные регистры сдвига c предустановочными входами могут прибавлять, вычитать, умножать, делить и производить многие другие действия в зависимости от применённой системы счисления, т.е. производить многие действия свойственные процессорам-вычислителям.

      • 003Андрей Куликов

          В позиционной нецелочисленной системе счисления с дробным основанием равным 1/3 вышеописанные реверсивные N-разрядные троичные двухуровневые одноединичные трёхбитные регистры сдвига c предустановочными входами при сдвиге влево или вправо на 1 или n разрядов производят операцию умножения или деления на 1.

          • 004Андрей Куликов

              ... производят операцию умножения или деления на 1 или n.
              Прошу прощения за ошибку.

          • 005Андрей Куликов

              Одним из существенных недостатков вычислений на таком регистре является необходимость n тактов тактовой частоты для сдвига кода на n разрядов. При этом на одну операцию сдвига затрачивается n*t времени, где t - длительность одного такта.

              • 006Андрей Куликов

                  Если к вышеописанному устройству добавить регистр, в который записывается число разрядов на которое нужно сдвинуть код - n, а к каждому из трёх входов каждого троичного триггера добавить мультиплексоры с n-1 входами, входы которых соединены с соответствующими входами всех других разрядов, то такое устройство будет выполнять операцию сдвига на любое число разрядов - n за один такт тактовой частоты.

                  • 008Андрей Куликов

                      Должно быть: "... входы которых соединены с соответствующими выходами всех других разрядов ...".
                      Прошу прощения за ошибку.

                  • 007Андрей Куликов

                      При этом, на одну операцию сдвига на любое число разрядов - n, будет затрачиваться один такта тактового генератора длительностью - t, независимо от числа разрядов - n, на которое нужно сдвинуть код.

                      • 009Андрей Куликов

                          Должно быть: "... будет затрачиваться один такт тактового генератора ...".
                          Прошу прощения за ошибку.

                    • 010Андрей Куликов

                        Схема реверсивного N-разрядного трёхбитного троичного регистра сдвига с предустановочными входами.

                      • 011Андрей Куликов

                          Управление направлением сдвига (влево или вправо) можно сделать однопроводным, например, "0" - сдвиг влево, а "1" - сдвиг вправо.