Logo GenDocs.ru

Поиск по сайту:  

Загрузка...

Лекции по проектированию цифровых устройств - файл 3a_применение мультиплексоров.doc


Лекции по проектированию цифровых устройств
скачать (813.3 kb.)

Доступные файлы (11):

1_Основы алгебры логики.doc188kb.08.07.2004 05:33скачать
2а_минимизация.doc519kb.08.07.2004 06:16скачать
2_Проектиров цифр устр.doc174kb.08.07.2004 05:41скачать
3a_применение мультиплексоров.doc287kb.01.12.2001 00:22скачать
3b_Cумматоры.doc176kb.08.07.2004 05:53скачать
3c_интегральные сумматоры.doc202kb.08.07.2004 05:59скачать
3_Типовые комбинационные устройства.doc242kb.08.07.2004 06:25скачать
4_Интегральные триггеры.doc388kb.08.07.2004 06:04скачать
5_задержки в цифровых цепях.doc100kb.01.09.2004 20:00скачать
6_Проектир последоват схем.doc276kb.14.01.2007 17:22скачать
ПЦУ_программа_2002.doc111kb.01.09.2004 20:07скачать

3a_применение мультиплексоров.doc

Мультиплексор как многофункциональный узел


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

1. Использование мультиплексора по прямому назначению [1]. В качестве примеров можно привести следующие: мультиплексирование многоразрядного адреса микросхем памяти; мультиплексное управление многоразрядными многоэлементными индикаторами [12]; последовательный опрос многих переменных, датчиков и других однобитовых источников информации; временное уплотнение аналоговых сигналов в телефонии; мультиплексирование выходных данных тестопригодных БИС; построение многоканальных коммутаторов, осциллографов.

^ 2. Реализация произвольных функций алгебры логики на мультиплексорах. Пусть требуется реализовать функцию, зависящую от двух переменных и представленную таблицей истинности (табл. 1). Запишем обобщенную форму СДНФ для этой функции и одновременно уравнение для MS 41:


Yфункция = x1x0 .1+x1x0 .0+x1x0.0+x1x0.1 (1)
YMS = a1a0.D0+a1a0.D1+a1a0.D2+a1a0.D3 (2)

Таблица 1


N набора

х1

х0

y

0

0

0

1

1

0

1

0

2

1

0

0

3

1

1

1

    Очевидно полное совпадение выражений (1) и (2), из которых следует: если логические переменные x1 и x0 подать на соответствующие адресные входы а1 и а0 MS 41, то на его информационные входы D0, D1, D2 и D3 нужно подать соответственно 1, 0, 0 и 1 (рис. 1).


Рис. 1


    В общем случае можно сформулировать следующее правило: если количество логических переменных n, от которых зависит реализуемая логическая функция, совпадает с разрядностью адресной части мультиплексора, то эти переменные подаются на адресные входы мультиплексора (старшая переменная — на старший адресный вход), а на информационные входы мультиплексора MS 2n1 — константы 0 и 1 в соответствии с таблицей истинности реализуемой функции.

         

Рис.2         Рис.3


    Реализуем на том же MS 41 функцию, зависящую от трех переменных (табл. 2). Запишем для нее минимальную дизъюнктивную нормальную форму (МДНФ), воспользовавшись картой Карно, представленной на рис. 2.

Таблица 2


N набора

x2

x1

x0

y

0

0

0

0

0

1

0

0

1

1

2

0

1

0

0

3

0

1

1

0

4

1

0

0

1

5

1

0

1

0

6

1

1

0

1

7

1

1

1

1

y = x2x1x0+x2x0+x2x1 (3)

Преобразуем выражение (3) к виду, аналогичному выражению (1):

y = x2x1.x0+x2x1.0+x2x1 .x0+x2x1.1, (4)

где произведение x2x1.0 введено, чтобы в выражении (4) были представлены все четыре конституенты единицы двух переменных x2 и x1. Сравнивая выражения (4) и (2), опять видим их полное соответствие. Отсюда вывод: на адресные входы а1 и а0 MS 41 нужно подать логические переменные x2 и x1, а информационные входы D0, D1, D2 и D3 для произвольной функции, зависящей от трех переменных, в общем случае являются функциями от третьей переменной x0. Такими функциями являются 0, 1, x0 и x0. Реализация данной функции представлена на рис. 3. Тот же результат проще получить, если в табл. 2 выделить четыре группы по две строки в каждой и отделить переменную x0 от x2 и x1 (табл. 3).

Таблица 3


N набора

x2

x1

x0

y

0
1

0
0

0
0

0
1

0
1

2
3

0
0

1
1

0
1

0
0

4
5

1
1

0
0

0
1

1
0

6
7

1
1

1
1

0
1

1
1

Видно, что переменные x2 и x1 образуют четыре набора, на каждом из которых функция y зависит только от одной переменной x0, причем значения y = f(x0) легко выявляются из этой таблицы.

Для общего случая можно сформулировать следующее правило: если количество логических переменных n, от которых зависит реализуемая функция, на единицу больше разрядности адресной части мультиплексора, то данную функцию можно реализовать на мультиплексоре MS 2n1 и одном инверторе.

Если распространить данный метод на реализацию ФУНКЦИЯ, зависящую от четырех переменных, на том же MS 4®1, то очевидно, что если две старшие переменные x3 и x2 подать соответственно на адресные входы а1 и а0, то информационные входы будут функциями двух младших переменных x1 и x0. Всего таких функций 16, из них 6 — вырожденные (0, 1, x1, x0, x1, x0), а 10 функций зависят от двух переменных, причем для реализации последних требуются 8 различных логических элементов (И, И-НЕ, ИЛИ, ИЛИ-НЕ, аb — элемент запрета, а+b — элемент, реализующий функцию импликации, аb+аb — элемент равнозначности и аb+аb — элемент, реализующий сумму по модулю два [2]. Итак, кроме мультиплексора, данная реализация потребует в худшем случае восемь различных логических элементов, поэтому ее, как правило, не рекомендуется использовать.


Рис. 4


    В некоторых частных случаях функцию, зависящую от четырех переменных, можно реализовать с использованием только одного мультиплексора MS 41 без каких либо логических элементов. Рассмотрим эти случаи. Пусть требуется реализовать ФУНКЦИЯ, представленную картой Карно (рис. 4). Если две старшие переменные x3 и x2 подать на адресные входы а1 и а0 MS 41, то информационные входы D0, D1, D2 и D3 можно представить четырьмя картами Карно для двух переменных x1 и x0 (рис. 5). Эти карты являются в данном случае строками карты Карно, представленной на рис. 4. Из рис. 5 следует: D0 = x1x0, D1 = x0, D2 = x1+x0 и D3 = x1. Соответствующая реализация показана на рис. 6.

    Подадим теперь на адресные входы а1 и а0 соответственно переменные x1 и x0, тогда информационные входы D0, D1, D2 и D3 можно представить четырьмя картами Карно для двух переменных x3 и x2 (рис. 7), причем эти карты в данном случае — столбцы карты Карно, данной на рис. 4. Из рис. 7 следует: D0 = 0, D1 = x2, D2 = 1 и D3 = x3. Соответствующая реализация — на рис. 8. Сравнивая рис. 6 и 8, делаем очевидный вывод о предпочтительности реализации, представленной на рис. 8, так как здесь не требуется никаких логических элементов.

         
^

Рис. 5             Рис.6


    Поиск рациональной структуры по данной методике в общем случае потребует анализа шести вариантов подачи двух различных переменных из четырех на адресные входы MS 41 (здесь шесть — это число различных сочетаний из четырех переменных по две). Проще рациональную структуру выявить, выполняя следующие процедуры:

         

Рис.7             Рис.8


- Записать реализуемую функцию в МДНФ. В нашем случае из рис. 4 следует:

y = x3x1+x1x0+x2x0 (5)

    - Определить две переменные, наиболее часто встречающиеся в различных простых импликантах. В нашем случае это x1 и x0, так как они встречаются по два раза, а переменные x3 и x2 только один. Именно переменные x1 и x0 необходимо подать на соответствующие адресные входы а1 и а0 MS 41.

    - Используя правило развертывания, законы дополнительности, одинарных элементов, поглощения и распределительный закон первого рода [3], преобразовать МДНФ к виду, когда в выражении для реализуемой функции присутствуют все четыре конституенты единицы двух переменных, выявленных в предыдущей процедуре. В нашем случае имеем:

y = x3x1+x1x0+x2x0 = x3x1.1+x1x0+x2.1.x0 =
x3x1(x0+x0)+x1x0+x2(x1+x1)x0 =
x3x1x0+x3x1x0+x1x0 +x2x1x0+x2x1x0 =
x2x1x0+x3x1x0+x1x0(1+x3+x2) =
x2x1x0+x3x1x0+x1x0 (6)

    Представим теперь выражение (6) в виде, аналогичном выражению (1):

y = x1x0 .0+x1x0 .x2+x1x0 .x3+x1x0 .1 (7)
    Сравнивая (7) и (2), выявляем: D0 = 0, D1 = x2, D2 = x3 и D3 = 1 (рис. 8). Эту методику можно распространить и на реализацию систем двух или четырех функций с использованием 2- или 4-разрядных мультиплексоров, имеющих общую адресную часть. Рациональный выбор переменных, подаваемых на адресные входы мультиплексоров, определяются подсчетом общего числа каждой переменной, входящей в две или четыре функции, и в качестве адресных выбираются те, которые встречаются наибольшее число раз во всех простых импликантах всех реализуемых функций.

         

Рис.9            Рис.10


    ^ Если использовать стробируемые MS 2n1, имеющие три состояния выхода, то любую функцию, зависящую от n+2 переменных, легко реализовать на двух стробируемых мультиплексорах и двух инверторах. Один из инверторов используется в цепи стробирования одного из мультиплексоров, другой — на их информационных входах. Рассмотрим пример. Пусть требуется реализовать функцию, представленную картой Карно на рис. 9, на стробируемых мультиплексорах MS 41, имеющих три состояния выхода и активный уровень 0 на стробирующих входах. Представим эту карту в виде двух, зависящих от трех младших переменных (рис. 10). Подавая переменную x3 непосредственно на стробирующий вход одного из мультиплексоров MS 41, мы реализуем функцию y1 (карта Карно, рис. 10а) и через дополнительный внешний инвертор на вход другого — y2 (рис. 10б). Очевидно, что y = y1+y2, причем логическая операция ИЛИ здесь — монтажная операция соединения в единую цепь выходов этих двух мультиплексоров. Подавая переменные x2 и x1 на соответствующие адресные входы а1 и а0, а переменную x0 непосредственно или через второй дополнительный внешний инвертор вместе с константами 0 и 1 на информационные входы мультиплексоров, получаем окончательную реализацию функции (рис. 11). Отметим, что функции y1 и y2 можно реализовать по рациональным структурам, способы получения которых описаны выше, так как на адресные входы двух мультиплексоров не обязательно подавать одни и те же переменные.


    Реализацию одной функции на мультиплексоре можно рассматривать как одноразрядное ПЗУ, а систем n функций, зависящих от одних и тех же переменных — как n-разрядное ПЗУ.


Рис. 11


    ^ 3. Мультиплексор в режиме сдвигателя. Сдвигателем называется цифровой комбинационный узел, предназначенный для сдвига n-разрядного слова на любое число разрядов в диапазоне от 0 до m за один такт. Имеется в виду, что смена однопозиционного управляющего сигнала вызывает немедленное (через время, определяемое задержками распространения сигналов через логические элементы) выполнение требуемой микрооперации. Рассмотрим уравнения для сдвигателя с параметрами n = 4, m = 3 (разрядность входного слова X n = 4, разрядность выходного слова Y n+m = 7, сдвиг может быть реализован на 0, 1, 2 и максимум на три разряда).


y0 = S0x0
y1 = S0x1+S1x0
y2 = S0x2+S1x1+S2x0
y3 = S0x3+S1x2+S2x1+S3x0 (8)
y4 = S1x3+S2x2+S3x1
y5 = S2x3+S3x2
y6 = S3x3,

где S0 — однопозиционный управляющий сигнал; при его активном состоянии S0 = 1 и S1 = S2 = S3 = 0 обеспечивается передача входного слова на выход без сдвига, при S1 = 1 и S0 = S2 = S3 = 0 осуществляется сдвиг входного слова на один разряд и т. д.
    Для реализации этих уравнений требуются двухвходовые элементы И и элементы ИЛИ на 2, 3 и 4 входа. Так как в данном случае выполняется четыре микрооперации (m = 0, 1, 2 или 3), то наиболее просто реализовать такой сдвигатель на семи одноразрядных MS 41, используя их адресные входы как управляющий код числа m (табл. 4).

Таблица 4


N набора

а1

а0

m

0

0

0

0

1

0

1

1

2

1

0

2

3

1

1

3

Схема такого сдвигателя приведена на рис. 12. На свободные входы мультиплексоров подаются сигналы, характер которых определяется конкретным алгоритмом, реализуемым операционным узлом (логический, арифметический, циклический сдвиг и т. п.)


Рис. 12


    4. Мультиплексор — преобразователь параллельного кода в последовательный. Схема такого преобразователя приведена на рис. 13. Здесь четырехразрядный параллельный код с выходов регистра подается на информационные входы MS 41, адресные входы которого подключены к выходам 2-разрядного счетчика. Если счетчик изменяет свои состояния от тактовых импульсов в последовательности 0, 1, 2, 3, то на выходе мультиплексора появляются разряды слова, начиная с младшего; если как 3, 2, 1, 0, то начиная со старшего. Варианты схем, использующих эту структуру, чрезвычайно разнообразны.


Рис. 13


    ^ 5. Мультиплексор в составе многоканального селектора. Многоканальным селектором называется цифровой комбинационный узел, имеющий n входов и m выходов, с возможностью передачи данных с любого входа в любой выход при использовании между входами и выходами минимального числа линий связи. Рассмотрим конкретную схему для случая n = m = 8. Общая идея: из 8 входов передадим данные в одну линию с помощью мультиплексора, а затем из этой линии передадим данные на 8 выходов с помощью однобитового селектора. Схема приведена на рис. 14, где обозначено: src (source) — источник, dst (destination) — приемник, А — адрес источника, В — адрес приемника. В качестве однобитового селектора используется двоично-десятичный дешифратор с активным нулем на выходах. При А = В реализуется алгоритм передачи данных scri ® dsti, а при А = В — scri ® dstj, i = 0...7, j = 0...7.


Рис. 14


    6. Мультиплексор в составе компаратора двух чисел, вырабатывающего осведомительный сигнал А = В. Если в распоряжении разработчика нет специализированного компаратора, то его можно реализовать, используя совместно дешифратор и мультиплексор. Определение, структура и применение специализированного компаратора будут рассмотрены в следующей статье учебного цикла. На рис. 15 приведена схема компаратора, сравнивающего два 3-разрядных числа. В ней используются дешифратор “1 из 8” с активной единицей выхода и мультиплексор MS8®1 с прямым выходом. При А = В активная единица с выхода дешифратора передается на выход мультиплексора и, следовательно, Fa=b= 1. При А = В на выход будет передаваться сигнал 0 (Fa=b= 0). Рекомендуется самостоятельно реализовать компаратор двух 2-разрядных чисел, используя один MS 8®1 и один инвертор (см. раздел 2 данной статьи).


Рис. 15


    ^ 7. Мультиплексор в составе контроллера состояния сложного объекта. Постановка задачи: пусть сложный цифровой блок разбит на 8 функционально законченных узлов — источник вторичного питания, операционный блок, память, система синхронизации, устройство управления и т. д. Каждый из этих узлов снабжен встроенной системой контроля работоспособности. Если узел исправен, то система контроля выставляет осведомительный сигнал 1, если нет — 0. Требуется быстро определить неработоспособный узел и заменить его. Схема контроллера, выполняющего поставленную задачу, приведена на рис. 16, где обозначено: G — генератор тактовых импульсов, СТ — трехразрядный суммирующий счетчик, DC — дешифратор “1 из 8”, в качестве дисплея используется один 7-сегментный индикатор.


Рис. 16


    Если все функциональные узлы 0...7 в порядке, то независимо от адреса мультиплексора y = 1, вентиль И открыт, счетчик циклически изменяет свои состояния, дешифратор их дешифрирует и при частоте генератора более 200 Гц на индикаторе светится с половинной яркостью символ 8, указывающий на полную работоспособность цифрового блока. Пусть в какой-то момент времени узел с номером 6 обнаружил, что он неисправен, и на нем выставляется осведомительный сигнал 0. Как только счетчик примет состояние 6, на выходе мультиплексора появится сигнал 0, который запрет вентиль И. Счетчик останется в том же состоянии, а на 7-сегментном индикаторе высветится 6. После замены узла 6 на индикаторе снова появится символ 8.


    8. Мультиплексор MS 2-1 в качестве тактируемого потенциалом D-триггера. Уравнение MS2-1 имеет вид:
y = a0D0 + a0D1 (9)


Характеристическое уравнение тактируемого потенциалом D-триггера с активной единицей на тактовом входе имеет вид:


Qt+1 = Ct+1Qt + Ct+1Dt, (10)

и с активным нулем на тактовом входе:

Qt+1 = Ct+1Dt + Ct+1Qt (11)


где индекс t соответствует текущему состоянию сигналов (до переключения), а t+1 — следующему после переключения. Полагая в уравнении (9) y = Qt+1, D0 = Qt, D1 = Dt и a0 = Ct+1, получаем выражение Qt+1 = Ct+1Qt + Ct+1Dt, полностью совпадающее с уравнением (10).


Рис. 17


    Полагая в уравнении (9) y = Qt+1, D0 = Dt, D1 = Qt и a0 = Ct+1, получаем выражение Qt+1 = Ct+1Dt + Ct+1Qt, полностью совпадающее с (11). Итак, на одном и том же MS 2®1 можно получить схему потенциально управляемого D-триггера с активными нулем или единицей на тактовом входе. Схема MS 21 и соответствующие D-триггеры приведены на рис. 17.


    ^ 9. Мультиплексоры MS 21 в качестве сдвигового регистра. Полученные выше D-триггеры являются прозрачными. Этот термин говорит о том, что при активном сигнале на тактовом входе изменения данных на D-входе немедленно передаются на выход. Известно, что на прозрачных D-триггерах с одним и тем же активным сигналом на тактовых входах нельзя построить сдвиговый регистр. Однако, чередуя триггеры с различными активными сигналами на тактовых входах, это возможно, причем сдвиг данных в нем будет осуществляться как фронтом (переходом 01), так и спадом (переходом 10) на тактовом входе [4]. Хорошим примером может служить схема (рис. 18а) регистра, построенная на интегральной схеме счетверенного мультиплексора типа КР1533КП16 (SN74ALS157A), где DR (data right — данные справа) — последовательный вход в младший разряд при сдвиге в сторону старших разрядов. На рис. 18б приведена временная диаграмма работы данного сдвигового регистра.



Рис. 18


Примечания к рис. 18а:

  1. C = 0 - активный уровень для разрядов Q0 и Q2, C=1 - для Q1 и Q3.

  2. Так как отдельно работающие триггеры прозрачны, необходимо помнить: во-первых, обнуление регистра надо осуществлять при С=1, в противном случае при С=0 после снятия сигнала "сброс" (активная единица) разряд Q0 немедленно примет значение сигнала DR; во-вторых, данные на последовательном входе DR надо менять при С=0 (неактивном сигнале для разряда Q0).

  3. Как видно из временных диаграмм, данные сдвигаются таким регистром с перекрытием.


Рис. 19


    10. Мультиплексоры в режиме кольцевого счетчика. Кольцевым счетчиком называется сдвиговый регистр, замкнутый в кольцо. Рассмотрим кольцевой 2-разрядный счетчик с одной перекрестной связью (такие структуры называются счетчиками Джонсона). Его схема приведена на рис 19а, а временные диаграммы работы — на рис. 19б. Как видно из временных диаграмм, счетчик имеет четыре состояния в течение двух тактов синхронизации.

    Если рассматривать только один выход Q1, то данную схему можно считать счетным триггером, срабатывающим по переходу 10 на входе С, а если только один выход Q0, то ее же можно считать счетным триггером, срабатывающим по переходу 01.
    Ограничившись рассмотренными выше простыми схемами применения мультиплексора, перечислим более сложные варианты использования, опубликованные в литературе. В работе [1] рассмотрена структура и возможные режимы работы универсального селектора — мультиплексора типа К561КП2, способного обрабатывать не только цифровые, но и аналоговые сигналы. В [5] показан способ уменьшения емкости памяти с помощью входного мультиплексора. В [6] предложена мажоритарная схема с приоритетом. В [7] рассмотрена схема двоичного шифратора клавиатуры, нечувствительного к “дребезгу” контактов. В [8] предлагается использование мультиплексора для повышения производительности микропроцессора за счет рациональной обработки сигналов запроса на прерывание. В [9] описаны типичные варианты применения программируемого мультиплексора: управление прохождением информации, расшифровка команд микропрограммируемой машины, реализация цифрового хронирующего генератора. В [10] рассматриваются “статистические” или “разумные” мультиплексоры, дающие возможность реализовать в сетях передачи данных многие функции, свойственные более дорогим сетевым процессорам с микропрограммным управлением и концентратором. Другое достоинство статистических мультиплексоров в том, что их распределенная логика позволяет им также работать в качестве модемов и устройств коммутации. В [11] описывается структура цифрового логарифмического преобразователя, который сжимает 8-разрядный двоичный код в 5-разрядный в соответствии с законом 2n® 4n. В [12] подробно рассматривается эффективная адресация жидкокристаллических индикаторов.


Литература

  1. Воробьев Н. В. Мультиплексоры// CHIP NEWS. — 1998. — №

  2. Воробьев Н. В. Формы представления и классификация функций алгебры логики// CHIP NEWS. — 1997. — № 7-8. — С. 43–49.

  3. Воробьев Н. В. Введение в булеву алгебру// CHIP NEWS. — 1997. — № 5-6. — С. 39–43.

  4. Джеймс Мирс. Использование мультиплексора в качестве регистра со сдвигом информации по обоим фронтам тактовых импульсов// Электроника. — 1981. — № 20. — С. 83–84.

  5. Титце У., Шенк К. Полупроводниковая схемотехника: Справочное руководство. Пер. с нем. — М.: Мир. — 1982. — С. 366–368.

  6. Крэбб. Мультиплексор в качестве мажоритарной схемы// Электроника. — 1997. — № 1. — С. 69–70.

  7. Кеппел. Формирование двоичного кода клавиатуры при помощи мультиплексора//Электроника. — 1977. — № 6. — С. 61–62.

  8. Гарриман. Мультиплексор, увеличивающий производительность микропроцессора//Электроника. — 1977. — № 11. С. 54–56.

  9. Уайленд. Управление прохождением информации при помощи программируемого мультиплексора//Электроника. — 1978. — № 10. — С. 52–57.

  10. Харви Хиндин. Статистические мультиплексоры с микропроцессорным управлением// Электроника. — 1981. — № 15. — С. 52–62.

  11. Анджей Пясецки. Использование мультиплексоров для сжатия информации// Электроника. — 1981. — № 18. — С. 72–73.

  12. Биренда Бахадур. Мультиплексирование — эффективное средство адресации жидкокристаллических индикаторов// Электроника. — 1984. — № 19. — С. 68–73.



Скачать файл (813.3 kb.)

Поиск по сайту:  

© gendocs.ru
При копировании укажите ссылку.
обратиться к администрации