книги из ГПНТБ / Смолов, В. Б. Аналого-цифровые и цифро-аналоговые нелинейные вычислительные устройства
.pdfа #вы х — множество выходных узлов этих блоков. Для того чтобы решить задачу переключения блоков, построим таблицу соединений Т. Строки этой таблицы обозначим элементами множества I U Ввых,
а столбцы — элементами множества ОU ^ bx- |
Каждый |
элемент |
матрицы t-ф расположенный на пересечении |
t-й строки |
и /-го |
столбца, определяет соединение между узлами соответствующих элементов множеств I\JBSUX и 0 U 5 BX. Если такое соединение является запрещенным в схеме, то на соответствующее место в таб лице записывается звездочка. Условимся считать, что в схемах из делителей запрещенными являются следующие соединения: а) не посредственные соединения входных и выходных узлов одного бдока, б) соединения аналоговых входов блоков с их цифровыми входами, в) соединения цифровых входов схемы с аналоговыми входами блоков.
Построим для каждой схемы Sk таблицу соединений Ск. По строение такой таблицы выполним следующим' образом. Если в схеме существует соединение между узлами, обозначающими строку
с номером i и столбец с номером /, то элемент таблицы t{j = ^ (v). Если же такое соединение в схеме отсутствует, то tц = 0.
Таблица соединений каждой отдельной схемы, как правило, содержит, большое число нулей, поэтому условимся клетки, соот ветствующие нулевым элементам, оставлять пустыми.
Введем операцию дизъюнкции таблиц соединений Т — Т' V Т". В результате выполнения этой операции над двумя таблицами мы получаем также таблицу, элементы которой определяются следую
щим образом. Если элементы |
и |
tCj не отмечены звездочками, то |
tij = |
> |
п |
tij \/ tij. |
Если же tij и tij отмечены звездочками, то tti тоже есть звез дочка.
Пользуясь операцией дизъюнкции, построим таблицу
T = \ J T k.
k=\-
В каждой клетке таблицы Т может быть записан ноль, звездочка или переключательная функция. Ноль указывает на отсутствие соединений между соответствующими узлами, звездочка — на за прещенное соединение, а переключательная функция, которая мо
жет представлять собой дизъюнкцию нескольких функций (v), показывает, что соединение между узлами должно осуществляться при значениях функции, равных единице.
Окончательный вид перестраиваемой схемы находится по таб лице соединений Т. Для этого к каждому узлу, соответствующему строке с номером i, присоединяется столько переключателей, сколько функций расположено в этой строке таблицы. Управление каждым переключателем осуществляется соответствующей ему пе реключательной функцией.
70
|
|
|
Таблица соединений на схеме 3-9, |
а |
|
Таблица 3-1 |
|||||||
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
Вход |
|
|
|
|
|
|
|
В ы х о д |
D xa |
D l x |
D 2a |
° 2 * |
a |
D 3X |
a |
D x x |
c u |
D 12 |
C 2l |
C 22 |
^ В Ы Х |
Dx |
* |
* |
V |
|
|
|
|
|
|
|
|
|
|
d 2 |
|
|
* |
* |
|
|
|
|
V |
|
|
|
|
D3 |
|
|
|
|
* |
* |
V |
|
|
|
|
|
|
Dx |
|
|
|
|
|
|
* |
* |
|
V |
|
|
|
Cx |
|
|
|
|
|
|
|
|
* |
* |
|
|
V |
^ 2 |
|
|
|
|
|
|
|
|
|
|
* |
* |
|
£ / в х |
V |
* |
|
* |
V |
* |
|
* |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
X x |
■ * |
V |
* |
V |
* |
|
* |
|
* |
* |
* |
* |
* |
|
|
|
|
|
|||||||||
x 2 |
* |
|
* |
|
* |
|
* |
|
* |
* |
* |
* |
x- - |
X 3 |
* |
|
* |
|
* |
V |
* |
V |
* |
* |
* |
* |
* |
В качестве примера использования описанной процедуры рас смотрим следующую задачу. Пусть требуется построить перестраи
ваемую схему для |
выполнения двух зависимостей: х* + х3 и |
(хг + х 2)2. Выбор |
воспроизводимой зависимости должен опреде |
ляться переменной v. Схемы, реализующие заданные зависимости, изображены на рис. 3-9, а и б. Определим множества блоков для этих схем
В х — {Di, D 2, D3, D^, Ci}, |
B ,= {Dlt D2, D3, D4, |
Cx, |
C2). |
|
||||||
и найдем множество В = |
В г \J B 2 = |
{D b |
D 2, D 3, |
I |
D4, |
C4, |
C2}. |
|||
Затем |
запишем множество |
входных |
узлов |
схемы |
— {£/вх, |
x lt |
||||
х 2, х3\, |
множество выходных узлов схемы О = |
{ UBUX), множество |
||||||||
выходных узлов блоков Ввых = |
{ Dx, |
D 2, D 3, |
D4, Сг, C2 } и мно |
|||||||
жество их входных узлов |
|
|
|
|
|
|
|
|
|
|
В 3х ~ [Dxai B^xxt D 2a, D 3x, |
D 3c, |
D 3xi |
B)xx, |
C44, |
C42> C24, C22). |
Первый индекс каждого элемента множества Ввх является по рядковым номером блока рассматриваемого типа. Второй индекс указывает либо вид сигнала, подаваемого на этот вход схемы,—
71
|
|
|
|
|
|
|
|
|
|
|
|
Таблица 3-2 |
|
|
|
|
Таблица соединений на |
схеме 3-9, |
б |
|
|
|
|||||
|
|
|
|
|
|
Вход |
|
|
|
|
|
|
|
Выход |
D 1а |
°1Х D 2а |
^2Х D s a |
D 3x |
а |
D iX С11 |
С12 |
С21 |
С22 |
^вых |
|||
D t |
* |
* |
|
|
|
|
|
|
|
|
V |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
D 2 |
|
|
* |
* |
|
|
|
|
V |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
D s |
|
|
|
|
* |
* |
|
|
|
|
|
V |
|
|
|
|
|
|
|
|
|
|
|
|
|||
D t |
|
|
|
|
|
|
* |
* |
|
V |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
Ci |
|
|
|
|
|
|
|
|
* |
* |
|
|
V |
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
V |
|
|
|
V |
|
|
|
|
* |
|
U в х |
V |
* |
|
* |
и |
* |
|
* |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
ч |
* |
V |
* |
V |
* |
|
* |
|
* |
у (г |
* |
* |
* |
|
|
|
|
||||||||||
х 2 |
* |
|
* |
|
* |
V |
* |
V ^ |
* |
* |
* |
|
* |
|
|
|
|
|
|||||||||
|
* |
|
* |
|
* |
|
|
|
* |
* |
* |
* |
* |
цифровой (х) или аналоговый (а), либо порядковый номер входа для тех блоков, на входы которых разрешается подавать сигналы одного вида.
Пользуясь этими множествами, построим таблицы соединений для первой и второй схем (табл. 3-1 и 3-2). Выполняя дизъюнкцию этих таблиц, находим таблицу соединений перестраиваемой схемы (табл. 3-3). Схема, соответствующая этой таблице, изображена на рис. 3-9, в.
Второй тип схем — с автоматической перестройкой относится к устройствам универсального вида. Такие схемы могут быть ис
пользованы для |
построения |
гибридных вычислительных машин |
[5], а также для |
создания гибридных вычислителей, работающих |
|
в режиме разделения времени |
[73]. Следует отметить, что приводи |
|
мые в настоящей |
работе способы описания перестраиваемых^ схем |
и коммутации блоков применимы и для построения устройств, ис пользующих только аналоговые блоки.
Если при частичной перестройке схем необходимо было реали зовать только соединения, определяемые переключательными функ-
72
В ы х о д |
D l a D l x |
* *
d 2
D3
Ci
c 2
U BX |
|
1 |
|
|
|
X l |
* |
1 |
* 2 |
* |
|
* 3 |
* |
|
|
|
|
|
|
|
|
|
|
Т а б л и ц а |
3-3 |
|
Таблица соединений на схеме 3-9, |
в |
|
|
|
|
||||||
|
|
|
В х о д |
|
|
|
|
|
|
|
|
|
a ® 2 X |
D z a |
D 3 x D 4a |
D 4X c u |
C 12 |
C 21 |
C 22 |
^ В Ы Х |
|||
V |
|
|
|
|
|
|
|
V |
|
|
|
* |
* |
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
* |
* |
V |
|
|
|
|
V |
|
|
|
|
|
|
* |
* |
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
1 |
V |
|
|
|
V |
|
|
|
|
|
|
|
|
* |
1 |
* |
|
* |
|
|
|
|
|
|
* |
1 |
* |
|
% |
|
* |
* |
* |
> |
|
* |
|
|
|
|
||||||||
* |
|
* |
V |
* |
V |
|
* |
* |
* |
' |
* |
* |
|
|
V |
* |
V |
* |
* |
* |
* |
|
* |
днями, расположенными в каждой строке таблицы С, то в случае универсальной схемы необходимо иметь возможность реализации любого из разрешенных соединений этой таблицы. При этом пред полагается, что для каждого выхода блока задается цифровой код, определяющий номер того выхода, который необходимо к нему при соединить.
Основой универсальной схемы является коммутатор, позволяю щий осуществить любые необходимые соединения блоков. Такой коммутатор строится по таблице соединений. Допустим, что таб лица соединений состоит из р столбцов и q строк и что каждый узел, соответствующий строке такой таблицы, может быть соединен с лю бым из узлов, указанных в заголовках столбцов. Чтобы реализо вать все возможные соединения i-ro узла, присоединим к нему группу из р—1 переключателей. Вторые зажимы этих переключа телей подключим ко всем узлам, соответствующим столбцам таб лицы. Присоединяя такую группу переключателей к каждому узлу, соответствующему строке таблицы соединений, получаем схему универсального коммутатора. Число переключателей Q, необхо-
73
димое для его построения, в первом приближении определяется произведением числа строк и числа столбцов таблицы соединений:
0. —РЯ-
Эта оценка является приближенной, поскольку мы не учли су ществования запрещенных соединений в таблице, а также необхо димости введения дополнительных переключателей для реализации
соединений одного выходного узла блока с несколькими входными узлами других блоков. В каждой конкретной реализации коммута тора оба эти обстоятельства безусловно необходимо учитывать. Однако, чтобы упростить анализ различных способов построения универсальных перестраиваемых схем, мы в дальнейшем будем пользоваться приближенными оценками.
Учитывая, что непосредственные соединения входов схемы и входов блоков с выходами схемы практически не используются, коммутатор можно разбить на три части: 1) коммутатор входов, осуществляющий соединение входов схемы со входными узлами блоков, 2) коммутатор выходов схемы, осуществляющий соедине ние выходов схемы с выходными узлами блоков, 3) коммутатор сое
74
динений, производящий подключение входных узлов к выходным узлам различных блоков. Структурная схема такого устройства приведена на рис. 3-10, а. Все коммутаторы в этой схеме могут быть построены по принципу реализации соответствующей таблицы сое динений. Общий вид коммута
тора связей (КС) для |
трех |
||||
блоков |
приведен на |
рис. |
|||
3-10, б. |
|
|
|
|
|
Чтобы подсчитать |
|
число |
|||
переключателей |
Qu |
необхо |
|||
димое для |
построения |
|
такой |
||
схемы, |
введем |
обозначения: |
|||
ро — число |
входов |
схемы, |
|||
<7„ — число |
выходов |
схемы, |
|||
pi — общее |
число |
входов |
всех блоков, qx — общее чис ло выходов всех блоков. Под считывая число переключате лей, требуемое для построе ния каждого коммутатора отдельно, и складывая ре зультаты, получаем
Qi= PoPi + |
Pi?i + M i - |
|
Учитывая, |
что |
р — р0 + |
+ 4i и q = |
Pi + |
<70, опре |
делим число переключателей, необходимое для построения схемы с одним коммутато ром,
■‘ 1-1 1 |
—L 1—1 |
<>•1 |
Дш1 |
Дш2 |
ДшЗ |
Рг1 |
Рг2 |
РгЗ |
КС
Q = |
(Ро + Pi) (pi + Яо) —PoPi + |
Рис. 3-10. Структурная схема универ |
|||
|
+ PoPo+ PiPi-HiPo- |
||||
|
сального |
перестраиваемого |
вычисли |
||
|
Вычитая |
из последнего |
теля (а) |
и коммутатора соединений (б) |
|
|
для набора из трех блоков |
||||
выражения Qu находим чис |
|
|
|
||
ло |
переключателей, которое |
удается |
сэкономить при |
использо |
|
вании второй |
схемы, |
|
|
|
Q - Q i = PoPo-
Подавляющее большинство схем, применяемых на практике, строится с использованием цепных соединений блоков. Если в та кой схеме условно разорвать все обратные связи, то блоки можно разбить на ярусы следующим образом. Назовем блоками первого яруса все блоки, на входы которых подаются только входные сиг налы, а блоками яруса с номером i назовем все блоки, на входы ко торых подаются входные сигналы и сигналы с выходов блоков i—1-го яруса.
75
Учитывая ярусную структуру применяемых схем, можно пред ложить организацию универсальной перестраиваемой схемы, со ответствующую ярусному принципу. Такая схема должна состоять из нескольких наборов блоков, принадлежащих различным яру сам, коммутаторов связей блоков каждого яруса и коммутаторов соединений между ярусами. Структурная схема подобного устрой ства, состоящего из двух ярусов, изображена на рис. 3-11. При со ставлении схемы предполагалось, что в коммутаторы соединений между ярусами входят специальные узлы, позволяющие осущест влять непосредственные соединения между входами и выходами блоков различных ярусов. Использование таких узлов расширяет возможности соединений блоков и позволяет реализовать обратные связи.
Для того чтобы подсчитать число переключателей, необходимое для построения двухъярусной универсальной перестраиваемой
Рис. 3-11. Структурная схема двухъярусного универсального перестраиваемого вычислителя
схемы, введем следующие обозначения: р\ — общее число входов первого яруса, р\ — общее число входов второго яруса, <7} — об" щее число выходов первого яруса, q^ — общее число выходов вто
рого яруса. Общее число переключателей в такой схеме равно сумме переключателей, требуемых для построения каждого комму татора отдельно
Q2= Р0Р\ + р\й\ + й\Р\ + Р\й\ + #70-
Учитывая, что р = pQ+ р\ + р\, a q = q0+ q\ + q\, найдем общее выражение для числа переключателей, необходимых для по строения схемы с одним коммутатором,
Q = [Po+P\ + P\) (<70+ <7l+ <??)•
Вычитая из последнего выражения Q2, определим экономию переключателей, которую можно получить при использовании двухъярусной схемы,
Q- ® 2 = Ро%+ Рой1+ й\%+ й\р\-
76
Очевидно, что с увеличением числа ярусов необходимое для по строения схемы число переключателей будет уменьшаться. Однако с увеличением числа ярусов необходимо увеличивать число вспомо гательных узлов, обеспечивающих связи между блоками несмеж ных ярусов. Определение числа ярусов универсальной схемы должно, на наш взгляд, выполняться с учетом отмеченных факто ров, на основании анализа типов схем, которые предполагается реализовать на универсальной структуре.
В заключение настоящей главы необходимо отметить, что по сравнению со схемами из резисторов и переключателей делители позволяют воспроизводить знакопеременные величины, выполнять операции перемножения цифровых величин с меньшими затратами элементов, выполнять умножение цифровых величин на аналого вые, представленные в виде напряжения. Использование активных делителей делает возможным выполнение операции деления цифро вых величин и построение сложных схем из делителей, реализую щих скобочные выражения со знаками сложения и умножения.
Применение коммутации входных и выходных узлов активных делителей создает предпосылки для построения универсальных вы числительных устройств из делителей напряжения.
Глава ч е т в е р т а я
ЦИФРО-АНАЛОГОВЫЕ СТУПЕНЧАТЫЕ АППРОКСИМАТОРЫ
4-1. Общие положения
Настоящая глава посвящена описанию способов построения функциональных преобразователей цифровых кодов в величину сопротивления (проводимости) или напряжения, называемых сту пенчатыми аппроксиматорами (СА). Подобные устройства воспроиз водят не заданную функцию F (х), а некоторую ступенчатую функ цию G (X), отличающуюся от заданной не более чем на величину етах. Эту величину называют погрешностью аппроксимации.
В практических применениях наиболее часто используются двоичные коды, поэтому в дальнейшем изложении мы будем ориен тироваться именно на эти коды, хотя описываемые ниже методы применимы к любым двоично-кодированным системам представле ния чисел.
Прежде всего остановимся на способах задания цифровых ве личин, подаваемых на вход преобразователя. Входная величина является аргументом функции F (X), определенной на промежутке [Хнач, X кон ] и реализуемой преобразователем. Она может пред ставлять собой двоичное число, полученное путем перевода зна чений аргумента в двоичную систему счисления. Такая величина записывается с помощью n-разрядного двоичного кода. При этом,
77
как правило, часть кодовых комбинаций остается неиспользуемой из-за несоответствия диапазонов изменения переменной X и двоич ного кода. Чтобы добиться полного использования всех кодовых комбинаций, выполним преобразование аргумента. Для этого за
фиксируем N = 2" равноотстоящих одна от другой точек на задан ном промежутке [Хнач, Хкон], расстояние между которыми
у^_ХКон -^нач
~2п — 1
ипронумеруем их. Тогда выбранные значения аргумента могут быть выражены с помощью десятичных номеров точек X следующим об
разом: |
|
Х = Х аач + /гх. |
(4-1) |
Если номер точки задается двоичным кодом х = |
(х1г х 2, ■• • , |
хп), десятичный эквивалент которого |
|
* = % 2 п- % i=i
где xt — компоненты двоичного вектора х, то аргумент может быть записан так:
Х = Хнач+ & ^ 2 п~ % |
(4-2) |
i=i |
|
Выполняя замену переменной в функции F (X) согласно выра жениям (4-1) и (4-2), получаем функции, зависящие соответственно от десятичного номера и двоичного кода этой точки:
F (x) = F{Xaa4 + hx),
F(x) = F ^ X saq + h t 2"“ Ч ) •
Для дальнейшего изложения необходимо уточнить понятие сту пенчатой функции. Обозначим множество значений переменной X,
соответствующих наборам кода, X = |
{Х0, |
Х 1; . . . , |
Хдг-Д, |
где |
|||
Х 0 = Х яач, Х#_1 |
= |
Хкон и Xo^^Xi-sC |
. . .< Х д г _ 1. Разобьем |
||||
это множество на |
I |
подмножеств: Х ъ Х 2, . . |
. , Xh |
таких, |
что |
||
i |
|
|
|
|
i=j=j. |
|
|
U Ху — X и Х/ П Х г = 0 |
для всех |
|
|
||||
/=1 |
|
|
|
|
|
|
|
Поставим в соответствие каждому такому подмножеству X/ дей ствительное число щ и определим ступенчатую функцию G (Хг)
следующим образом: если значение переменной X,- £Ху, то G (Хг) = а,-. Определенная таким образом функция G (X) прини мает конечное число значений на заданном промежутке для всех значений подмножества Ху.
78
Построение схем СА основано на моделировании зависимостей, представляющих собой аналитические выражения ступенчатыхфункций, поэтому в первую очередь необходимо исследовать спо собы построения ступенчатых функций и соответствующих им ана литических выражений.
4-2. Схемы для табличных функций
Рассмотрим способы построения схем для тех случаев, когда функция F (х) задана таблицей, в которой для каждого значения
кода а указано соответствующее ему значение функции F (а). Та кая таблица, согласно определению, приведенному в § 4-1, задает
ступенчатую функцию, у которой каждое подмножество X,- состоит только из одного элемента Xj. Используя аналогию с рабочими таб лицами РП-схем, описанными во второй главе, запишем ступенча тую функцию, задаваемую этой таблицей, в виде:
F(x) = N^ K f F ( o |
(/)), |
(4-3) |
l=o |
|
|
где Kj — элементарная конъюнкция, |
определяемая |
вектором х |
и набором а (/'), N = 2п — число строк таблицы, п — число ком понентов вектора х.
Умножая правую и левую части равенства (4-3) на масштабный коэффициент, устанавливающий пропорциональность между зна
чениями |
функции |
и величиной |
резисторов |
РП-схемы, ту — |
|
= FmaxIY*, где Атах — наибольшее значение функции, |
Y * — наи |
||||
большее |
значение |
проводимости, |
допустимое |
в схеме, |
получаем |
|
|
Y ( х ) ^ К ,у,. |
|
(4-4) |
|
|
|
/=1 |
|
|
Схема преобразователя кода в величину проводимости, опреде ляемаяпоследним выражением, состоит из дешифратора, реали зующего все элементарные конъюнкции п переменных, и парал
лельной схемы, состоящей из 2" резисторов и переключателей. В качестве оценки сложности полного дешифратора п перемен ных примем число логических элементов с двумя входами L (п), необходимое для его построения [19]. Так, для создания двухсту
пенчатого дешифратора требуется число элементов
L{n) = 2n + L(k) + L(n— Щ,
где L (k) и L (п—/г) — число элементов, требуемое для построения дешифратора п и п—k переменных, a k = п/2, если п четное и от личается на единицу от п—k при нечетном п.
Сложность описанной схемы преобразователя определяется в ос новном числом логических элементов, необходимых для построе ний' дешифратора. Это число логических элементов может быть
79