Опубликован: 03.04.2013 | Уровень: для всех | Доступ: платный
Лекция 6:

Базовые положения теории многофункциональных логических модулей

< Лекция 5 || Лекция 6: 123456 || Лекция 7 >

С практических позиций достаточно рассмотреть схемотехнические особенности использования PD- ассоциативные конструкций при реализации следующих бит-операций [130]:

  • "арифметическая сумма" (ADD),
  • "запоминание единицей" (ST1),
  • "неравнозначность" (XOR),
  • "логическое умножение"(AND),
  • "логическое умножение с инверсией"(NAND).

Все перечисленные бит-инструкции реализуются в бит-процессоре с принудительной задержкой на 1 такт, за исключением операции ST 1, в которой принудительная задержка составляет 2 такта.

Согласно таблице истинности (табл. 5.7) потоковую бит-операцию ADD можно представить в PD- ассоциативном виде:

  • e(t) =
\begin{cases}
x_2(t)*x_1(t), & \text{ если } e(t-1)=0, \\
x_2(t)+x_1(t), & \text{ если } e(t-1)=1.
\end{cases}
  • ADD(t) =
\begin{cases}
\overline{x_2(t)}*x_1(t) + x_2(t)*\overline{x_1(t)}, & \text{ если } e(t-1)=0, \\
\overline{x_2(t)}*\overline{x_1(t)} + x_2(t)*x_1(t), & \text{ если } e(t-1)=1.
\end{cases}

где целочисленное время t изменяется от 1 до \infty.

В (5.30) PD- ассоциативная и в данном случае переключательная конструкция проявляется в том, что в зависимости от содержимого "единицы переноса" на предыдущем такте e(t-1):

  • "единица переноса" на текущем такте e(t) реализуется либо как бит-операция AND, либо как бит-операция OR ;
  • "арифметическая сумма" на текущем такте ADD(t) реализуется либо как XOR, либо как \overline{XOR}.
Таблица 5.7. Таблица истинности функций бит-сумматора
e(t-1) x_{2}(t) x_l(t) ADD(t) e(t)
0 0 0 0 0
0 0 1 1 0
0 1 0 1 0
0 1 1 0 1
1 0 0 1 0
1 0 1 0 1
1 1 0 0 1
1 1 1 1 1

В логической схеме (рис. 5.12), реализующей PD- ассоциативную конструкцию (5.30), "единица переноса" e(t-1) является промежуточной переменной и подается на u_{s} -входы селектора-мультиплексора, формируя на них управляющий вектор

U_3(t) = (u_0:= e(t-1), u_1:=\overline{e(t -1)}, u_2:=\overline{e(t -1)}, u_3:=e(t-1)). ( t-1)))
Логическая схема АЛУ бит-процессора при выполнении бит-инструкции ADD

Рис. 5.12. Логическая схема АЛУ бит-процессора при выполнении бит-инструкции ADD

В данном случае PD- ассоциативная конструкция реализуется на селекторе-мультиплексоре с четырьмя коммутируемыми входами (u_{0}-u_{3} ), который в тоже время является универсальным логическим модулем по отношению к двум переменным (x_{1}, x_{2}), причем управляющая ассоциативная переменная e(t-1) является внутренней и недоступна пользователю.

Согласно таблице истинности (табл. 5.8) потоковую бит-операцию ST1 можно представить в PD- ассоциативном виде:

ST1(t) =
\begin{cases}
x_2(t)*x_1(t), & \text{ если }  ST1(t)=0, \\
\overline{x_2(t)*\overline{x_1(t)}}, & \text{ если } ST1(t)=1.
\end{cases} ( 5.31)
Таблица 5.8. Таблица истинности бит-функции "запоминание единицей" (ST1)
ST1(t) x_{2}(t) x_1(t) ST1(t+1)
0 0 0 0
0 0 1 0
0 1 0 0
0 1 1 1
1 0 0 1
1 0 1 1
1 1 0 0
1 1 1 1

В словесном виде (5.31) выражается: на выход канала АЛУ поступает переменная x_{1}(t), если x_{2}(t) = 1, а при x_{2}(t) = 0 на выходе сохраняется последнее значение x_{1}(t^{?}), отвечающее x_{2}(t^{?}) = 1, что дает эквивалентную форму записи:

ST1(t+1) =
\begin{cases}
x_1(t), & \text{ если } x_2(t) =1, \\
ST1(t^*), & \text{ если } x_2(t) =1.
\end{cases} ( 5.32)

где t^* - последний предшествующий момент времени, когда x_{2}( t^*) = 1.

В данном случае PD- ассоциативная конструкция также является переключательной и в зависимости:

  • от собственного значения ST1(t), которое в (5.31) является не только выходной, но и внутренней переменной, реализуется либо как AND, либо как IMP (импликация: \overline{x_2(t)*\overline{x_1(t)}} );
  • от значения внешней переменной x_{2}(t), которое в записи (5.32) переводит канал АЛУ бит-процессора из режима транзитной передачи переменной x_1(t) (при x_{2}(t) = 1 ) в режим запоминания последнего прошедшего на выход значения x_1(t-t^*) (при x_{2}(t) = 0 ).

При выполнении потоковой бит-операции ST1 (рис. 5.13) управляющий вектор U_3(t) = (u_0=ST1(t), u_1:=ST1(1), u_{2}:=0, u_{3}:=1) формируется как за счет ассоциативных (ST1(t-1), x_{2}(t)), так и не ассоциативных переменных ( \equiv 0, \equiv 1), причем первые могут быть как внутренними (задаваемыми фиксированной схемой соединения вентилей) и недоступными пользователю (ST1(t- 1)), так и внешними ( x_{2}(t) ) и доступными пользователю.

Логическая схема АЛУ бит-процессора при выполнении бит-инструкции ST1

Рис. 5.13. Логическая схема АЛУ бит-процессора при выполнении бит-инструкции ST1

Именно эквивалентность форм записи (5.31) и (5.32) объективно подтверждает существование в вычислительной технике дуализма между потоками инструкций и данных, т. к. в записи (5.31) x_{2}(t) считается информационной переменной, а ST1(t) - управляющей, в то время как в записи (5.32) они меняются ролями.

Из приведенных данных видно:

  1. Ассоциативное "замыкание" бит-операнда e(t-1) на поток бит-инструкций позволило реализовать ЛФ трех переменных F(e(t-1), x_{2}(t), x1(t)) на двухвходовом УДМ2.
  2. Разложение Стоуна - Шеннона произвольной F_{\alpha} типа (5.13)
    F_{\alpha}(X_n^s)=\sum_p{\varphi_p(x_i)*F_{\alpha p}X_{n-1}^s}

    допускает ассоциативное замыкание любой переменной x_{i} на соответствующее \alpha_p -подмножество функций с входным вектором размерности (n -1). Здесь \varphi_р(x_{i}) - характеристическая функция:

    \varphi_p(x_i)=
\begin{cases}
1, & \text{ если } x_i =\alpha_p, \\
1, & \text{ если } x_i =\alpha_j \text{ и } j\ne p.
\end{cases}
  3. Для ассоциативного "замыкания" можно использовать не только входные, но и выходные и "внутренние" переменные, причем в последних двух случаях речь уже идет о конечных, а не комбинационных автоматах.
  4. Если продолжить разложение Стоуна - Шеннона для функций F_{\alpha p}(x_{n-1}), F_{\alpha p}(x_{n-2}) и т. д., то окажется, что для ассоциативного замыкания можно использовать составной вектор, компоненты которого представляют собой произвольную комбинацию подмножеств входных, внутренних и выходных переменных.

В частности, в классе булевых функций ассоциативная схема УДМn приобретает вид рис. 5.14, где в сравнении с рис. 5.4 ассоциативное параллельное по разрядам и последовательное по словам ЗУ [115, 116] с организацией 2^{n/2}*2^{n/2} используется как регистр настройки селектора-мультиплексора с n/2 i -входами.

Функциональная схема ассоциативного УДМ

Рис. 5.14. Функциональная схема ассоциативного УДМ

Классические для DD- ассоциативных конструкций [115] бит-операции "маскирование" ( AND ), "маскирование с инверсией" ( NAND ) или "маскирование с условной инверсией" ( XOR ) также можно представить в PD- ассоциативном виде:

AND(t+1) =
\begin{cases}
\equiv 0, & \text{ если }  x_2(t) =0, \\
x_1(t), & \text{ если } x_2(t) =1.
\end{cases} ( 5.33)
NAND(t+1) =
\begin{cases}
\equiv 1, & \text{ если } x_2(t) =0, \\
\overline{x_1(t)}, & \text{ если } x_2(t) =1.
\end{cases} ( 5.34)
XOR(t+1) =
\begin{cases}
x_1(t), & \text{ если }  x_2(t) =0, \\
\overline{x_1(t)}, & \text{ если } x_2(t) =1.
\end{cases} ( 5.35)

где ассоциативной для пользователя считается "управляющая" переменная x_{2}(t).

Несмотря на кажущееся усложнение записи (правая часть (5.33)- (5.35)), PD- ассоциативная форма удобна тем, что раскрывает подстановочные механизмы реализации логических функций AND, NAND и XOR в нанометровых вычислителях, где на уровне квантовых процессов можно задействовать высокодинамичные реакции замещения, зависящие от некоторого комплекса внешних условий, кодируемого переменной x_{2}(t).

Поэтому схемотехническая ценность форм записи (5.33)-(5.35) состоит в том, что в квантовых системах для вычислительных нужд можно использовать не только традиционные для твердотельной микро- и оптоэлектроники методы и средства управления параметрами (значениями токов, интенсивностями потоков фотонов, напряжениями и т. п.), но и методы и средства структурной адаптации атомарных или (макро)моле-кулярных структур по крайней мере подстановочного типа.

Из (5.33)-(5.35), в частности, следует, что для перехода от DD- ассоциативной формы записи к эквивалентной PD- ассоциативной форме достаточно воспользоваться разложением Шеннона для булевых функций n переменных:

F_{\alpha}(X_n^s) = x_i^* * F_{\alpha(1)}(X_{n-1}^s) + \overline{x_i^*} * F_{\alpha(2)}(X_{n-1}^s) ( 5.36)

где выделенная "свободная" переменная x_i^* играет управляющую роль в переходе от F_{\alpha(1)}(X_{n-1}^s) к F_{\alpha(2)}(X_{n-1}^s).

Продолжив процедуру (5.36) до (n -2) переменных и далее, получим, что в PD- ассоциативных конструкциях в качестве управляющих могут выступать не только отдельные переменные, но и вектора, с ростом размерности которых понижается уровень "элементарности" маскируемых ими функций.

В нанометровых и супрамолекулярных вычислителях при построении PD- ассоциативных конструкций более фундаментальную роль может сыграть разложение Колмогорова [131] непрерывной функции n переменных:

где \varphi_{iu} и \psi_{iu} - некоторые непрерывные функции одной переменной, на которые не налагаются какие-либо дополнительные ограничения.

Такое положение вещей является объективной предпосылкой эффективного использования PD- ассоциативных конструкций в процессе высокодинамичного синтеза квантового "рабочего тела" для проблемно-ориентированных нанометровых или супрамолекулярных вычислителей.

В этом случае:

  • физико-химический синтез нанометрового или супрамолекулярного вычислителя становится составной частью вычислительного процесса, совмещается с ним в пространстве и во времени и запускается после активизации поток-инструкции пользователя, что соответствует режиму интерпретации программ в традиционных вычислителях;
  • предшествующий такому синтезу уровень деструкции "рабочего тела" вычислителя-предка тем глубже, чем выше размерность PD-ассоциативного управляющего вектора в вычислителе-потомке. Таким образом, основное преимущество PD- ассоциативных конструкций и основанных на них вычислительных технологий состоит в том, что они инвариантны физико-техническим условиям работы как субмикронных, так и нанометровых аппаратных платформ. При этом обеспечивают плавный переход вычислительной техники в нанометровую или супрамолекулярную область с квантовым "рабочим телом" с минимальными системотехническими издержками, связанными с реконструкцией или заменой инструментальных средств.

Системотехнические выводы по лекции 5

  1. Многофункциональность используемых в вычислительной технике операционных модулей является атрибутом всех программируемых изделий, в которых функция пользователя реализуется некоторой частично упорядоченной последовательностью "элементарных" функций, составляющих формально-логическую основу вычислительного процесса.
  2. Частичная упорядоченность последовательности исполняемых "элементарных" функций предполагает совмещение во времени и пространстве двух процессов, один из которых принято считать вычислительным, а другой - перечислительным. Последний в традиционной вычислительной технике реализуется методами и средствами адресации инициализируемых инструкций и преобразуемых ими данных. В результате любая традиционная ЭВМ работает по правилу: "делай то, что расположено по адресу … над тем, что расположено по адресу …".
  3. Если в традиционной вычислительной технике объектами перечисления являются ассемблерные инструкции, в своем большинстве реализуемые независимыми операционными блоками (сумматор, умножитель, делитель и т. п.), то в нейроподобной вычислительной технике объектами перечисления уже являются логические функции, изменение которых приводит к изменению функции, реализуемой всей сетью. Поэтому в традиционной вычислительной технике изменение функций операционных устройств осуществляется (в основном) методами и средствами коммутации входов-выходов специализированных операционных блоков и составляющих их узлов, а в нейроподобной вычислительной технике - переназначением параметров настройки отдельных формальных нейронов: пороговых и весовых векторов, а также правил подстановки выходных значений заданной логической функции.
  4. В нейроподобных многофункциональных модулях перечислительный процесс сопряжен с нарушением некоторого отношения порядка, что требует знания структуры пространства изменения непрерывных параметров (пороговых и весовых векторов).
  5. Канонической схеме перечисления всех дискретных функций некоторого класса отвечает теоретико-групповая система преобразований, которая основана на отношении эквизначности. Как и в формальных нейронах, в многофункциональных дискретных модулях переход от одной функции к другой сопровождается переходом от одного отношения эквизначности к другому.
  6. Перечислительный процесс можно выполнить как на основе "ассоциации по сходству", так и на основе "ассоциации по отличию", причем обе ассоциации можно совместить в одном перечислительном процессе.
  7. Многоконтурное управление многофункциональными модулями в своей основе избыточно, и минимизация такой объективно избыточности требует перехода к одноконтурным схемам управления, которое проще всего сконцентрировать в выходном контуре многофункционального модуля, где осуществляется подстановка значений реализуемой функции.
  8. Объективно существующий структурно-функциональный и кодовый дуализм между управляющими и информационными потоками предопределяет эффективность использования PD -ассоциативных методов управления, особенно в многопроцессорных вычислительных системах МКМД-типа, которые критичны к процедурам инициализации и распределения потоков инструкций. В таких условиях

PD -ассоциативное управление позволяет без обращения к внешней памяти модифицировать в реальном времени инструкцию с помощью специально организованного потока данных, закрепленную за локальным вычислителем. Однако PD -ассоциативное управление критично к информационным и аппаратным "сбоям". Вместе с тем такое управление адекватно условиям работы нанометровых и супрамолекулярных вычислителей, в которых "тирания" паразитных полимодальных квантовых взаимодействий способна изменить реализуемую функцию.

< Лекция 5 || Лекция 6: 123456 || Лекция 7 >
Максим Брагута
Максим Брагута
Россия, Москва, МЭИ, 2006
Nozimjon Fayziev
Nozimjon Fayziev
Таджикистан, Душанбе