Схемотехника / Учебники и методички / lect13_m5_vt_vt_aloiscevm_niy06
.pdf0 |
|
MS |
|
|
|
1 |
|
D0 |
|
|
|
|
D1 |
|
|
|
|
|
|
|
|
|
|
x0 |
|
D2 |
y |
y1 |
y |
|
D3 |
||||
|
|
||||
|
|
a1 |
|
|
|
|
|
a0 |
|
|
|
x3 |
|
V |
|
|
|
x2 |
|
|
|
|
|
|
|
|
|
|
|
x1 |
|
|
|
|
|
1 |
|
MS |
|
|
|
x0 |
|
D0 |
|
|
|
|
D1 |
|
|
|
|
|
|
|
|
|
|
1 |
|
D2 |
y |
y2 |
|
|
D3 |
|
|||
|
|
a1 |
|
|
|
|
|
a0 |
|
|
|
|
1 |
V |
|
|
|
|
|
|
|
|
|
Рис.4.21. Реализация ФАЛ на двух стробируемых |
|
||||
|
мультиплексорах MS 4→1 |
|
|
|
4.2.3. Мультиплексор в режиме сдвигателя
Сдвигателем называется цифровой комбинационный узел, предназначенный для сдвига n-разрядного слова на любое число разрядов в диапазоне от 0 до m «за один такт». Фразу в кавычках надо понимать так: смена однопозиционного управляющего сигнала вызывает немедленное (через время, определяемое задержками распространения сигналов через логические элементы) выполнение требуемой микрооперации. Рассмотрим уравнения для сдвигателя с параметрами n = 4, m = 3 (разрядность входного слова X n = 4, разрядность выходного слова Y n + m = 7, сдвиг может быть реализован на 0, 1, 2 и максимум на три разряда):
y0 = S0x0, y1 = S0x1 y2 = S0x2 y3 = S0x3 y4 =
y5 = y6 =
+S1x0,
+S1x1 + S2x0,
+ S1x2 + S2x1 |
+ S3x0, |
(4.13) |
S1x3 + S2x2 + S3x1, |
|
|
S2x3 |
+ S3x2, |
|
|
S3x3, |
|
где S0 - однопозиционный управляющий сигнал, при активном значении «1» которого и S1 = S2 = S3 = 0 обеспечивается передача входного слова на выход без сдвига, при S1 = 1 и S0 = S2 = S3 = 0 осуществляется сдвиг входного слова на один разряд и т.д.
Для реализации уравнений (4.13) требуются двухвходовые элементы И и элементы ИЛИ на 2, 3 и 4 входа.
Таблица 4.5
Кодирование микроопераций сдвигателя
набораНомер |
a1 |
a0 |
m |
0 |
0 |
0 |
0 |
|
|
|
|
1 |
0 |
1 |
1 |
|
|
|
|
2 |
1 |
0 |
2 |
|
|
|
|
3 |
1 |
1 |
3 |
|
|
|
|
Так как в данном случае выполняется четыре микрооперации (m = 0, 1, 2 или 3), то наиболее просто реализовать такой сдвигатель на семи одноразрядных MS 4→1, используя их адресные входы как управляющий код числа m (табл.4.5). Схема такого сдвигателя приведена на рис.4.22.
На свободные входы мультиплексоров подаются сигналы, характер которых определяется конкретным алгоритмом, реализуемым операционным узлом (логический, арифметический, циклический сдвиг и т.п.)
x3 x2 x1 x0 |
|
MS |
|
|
D0 |
|
|
|
D1 |
|
|
|
D2 |
y |
y0 |
|
D3 |
|
|
|
a1 |
|
|
|
a0 |
|
|
|
D0 |
MS |
|
|
D1 |
|
|
|
D2 |
y |
y1 |
|
D3 |
|
|
|
a1 |
|
|
|
a0 |
|
|
|
D0 |
MS |
|
|
D1 |
|
|
|
D2 |
y |
y2 |
|
D3 |
|
|
|
a1 |
|
|
|
a0 |
|
|
|
D0 |
MS |
|
|
D1 |
|
|
|
D2 |
y |
y3 |
|
D3 |
|
|
|
a1 |
|
|
|
a0 |
|
|
|
D0 |
MS |
|
|
D1 |
|
|
|
D2 |
y |
y4 |
|
D3 |
|
|
|
a1 |
|
|
|
a0 |
|
|
|
D0 |
MS |
|
|
D1 |
|
|
|
D2 |
y |
y5 |
|
D3 |
|
|
|
a1 |
|
|
|
a0 |
|
|
|
D0 |
MS |
|
|
D1 |
|
|
|
D2 |
y |
y6 |
|
D3 |
|
|
Код m |
a1 |
|
|
a0 |
|
|
|
|
|
|
Рис.4.22. Реализация сдвигателя на семи мультиплексорах MS 4→1
4.2.4. Использование мультиплексора в качестве преобразователя параллельного кода в последовательный
Схема преобразователя параллельного кода в последовательный приведена на рис.4.23.
|
|
|
|
RG |
Q0 |
|
|
D0 |
MS |
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
Q1 |
|
|
D1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
Q2 |
|
|
D2 |
|
|
|
y |
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
Q3 |
|
|
D3 |
|
y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a1 |
|
|
|
|
|
|
CT |
|
Q1 |
|
|
|
|
|
|
|
||
|
+1 |
|
|
|
|
a0 |
|
|
|
|
|||
|
|
|
|
|
|
|
|
||||||
|
–1 |
|
|
Q0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис.4.23. Структура преобразователя параллельного двоичного кода
впоследовательный
Вэтой схеме четырёхразрядный параллельный код с выходов регистра подаётся на информационные входы MS 4→1, адресные входы которого подключены к выходам двухразрядного счётчика. Если счётчик изменяет свои состояния от тактовых импульсов в последовательности 0, 1, 2, 3, то на выходе мультиплексора появляются разряды слова, начиная с младшего. Если счётчик изменяет свои состояния как 3, 2, 1, 0, то на выходе мультиплексора последовательно появляются разряды слова, начиная со старшего. Варианты схем, использующих эту структуру, чрезвычайно разнообразны.
4.2.5.Мультиплексор в составе многоканального селектора
Многоканальным селектором называется цифровой комбинационный узел, имеющий n входов и m выходов, с возможностью передачи данных с любого входа в любой выход при использовании между входами и выходами минимального числа линий связи. Рассмотрим конкретную схему для случая n = m = 8. Общая идея такова: из восьми входов передадим данные в одну линию с помощью мультиплексора, а затем из этой линии передадим данные на восемь выходов с помощью однобитового селектора. Схема приведена на рис.4.24, где src (source) - источник; dst (destination) - приёмник; А - адрес источника; В - адрес приёмника.
src
0
1
2
3
4
5
6
7
A
B
D0 MS D1
D2
D3
D0
D1 y D2
D3
a2 a1 a0
|
2/10 |
y |
dst |
|
|
||
|
0 |
0 |
|
|
DC |
||
|
1 |
1 |
|
|
|
||
8 |
|
2 |
2 |
4 |
|
3 |
3 |
2 |
|
4 |
4 |
15 5
6 6
7 7
8
9
Рис.4.24. Структура многоканального селектора
В качестве однобитового селектора используется двоичнодесятичный дешифратор с активным нулём на выходах. При А = В реализуется алгоритм передачи данных scri→dsti, а при А ≠ В - алгоритм scri→dstj, i = 0 - 7, j = 0 - 7.
4.2.6. Мультиплексор в составе компаратора двух чисел
Компаратор вырабатывает осведомительный сигнал А = В (А ≠ В). Если в распоряжении разработчика нет специализированного компаратора, то его можно реализовать, используя совместно дешифратор и мультиплексор. Определение, структура и применение специализированного компаратора будут рассмотрены в главе 5. На рис.4.25 приведена схема компаратора, сравнивающего два трёхразрядных числа. В ней используются дешифратор «1 из 8-ми» с активной единицей выхода и мультиплексор MS 8→1 с прямым выходом.
|
|
|
|
|
|
|
DC |
|
y |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
D0 |
MS |
|
|
|
||
|
|
|
|
|
|
|
|
0 |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
1 |
|
D1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
4 |
|
|
2 |
|
D2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
A |
|
|
|
|
2 |
|
|
3 |
|
D3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|||||||||
|
|
|
|
|
|
1 |
|
|
4 |
|
D0 |
|
y |
Fa=b |
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
5 |
|
D1 |
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
6 |
|
D2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
7 |
|
D3 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
a2 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
B |
|
|
|
|
|
|
|
|
a1 |
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
a0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Рис.4.25. Цифровой компаратор двух чисел на равенство (неравенство)
При А = В активная единица с выхода дешифратора передается на выход мультиплексора и, следовательно, Fa=b = 1. При А ≠ В на выход будет передаваться сигнал 0 (Fa=b = 0). Рекомендуется самостоятельно реализовать компаратор двух двухразрядных чисел, используя один MS 8→1 и один инвертор (см. раздел 4.2.2).
4.2.7. Мультиплексор в составе контроллера состояния сложного объекта
Постановка задачи: пусть сложный цифровой блок разбит на восемь функционально законченных узлов (источник вторичного питания, операционный блок, память, система синхронизации, устройство управления и т.д.). Каждый из этих узлов снабжен встроенной системой контроля его работоспособности. Если узел работоспособен, то система контроля выставляет осведомительный сигнал 1, если неработоспособен - 0. Требуется быстро определить неработоспособный узел и заменить его на исправный. Схема контроллера, выполняющего поставленную задачу, приведена на рис.4.26, где G - генератор тактовых импульсов; СТ - трёхразрядный суммирующий счётчик; DC - дешифратор «1 из 8-ми»; в качестве дисплея используется один семисегментный индикатор.
Если все функциональные узлы 0 - 7 работоспособны, то, независимо от адреса мультиплексора, y = 1, вентиль И будет открыт, счётчик циклически изменяет свои состояния, дешифратор дешифрирует эти
состояния и при частоте генератора более 200 Гц на индикаторе будет светиться «с половинной яркостью» символ 8, который указывает на полную работоспособность цифрового блока. Пусть в какой-то момент времени узел с номером 6 обнаружил, что он неработоспособен, и на нем выставляется осведомительный сигнал 0. Как только счётчик примет состояние 6, на выходе мультиплексора появляется сигнал 0, запирающий вентиль И, и счётчик остается в состоянии 6, которое высвечивается на семисегментном индикаторе. После замены узла 6 на работоспособный контроллер снова показывает на индикаторе символ 8.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
D0 |
MS |
|
|
||
|
|
|
|
|
|
0 |
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
1 |
|
|
|
D1 |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
2 |
|
|
|
D2 |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
3 |
|
|
|
D3 |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
4 |
|
|
|
D0 |
|
|
|
y |
|
||
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
5 |
|
|
|
D1 |
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
6 |
|
|
|
D2 |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
7 |
|
|
|
D3 |
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
CT |
|
|
|
|
a2 |
|
|
|
|
|
||
|
|
|
& |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+1 |
|
|
|
|
|
|
a1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
G |
|
|
|
|
n=3 |
|
|
|
|
|
|
a0 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
DC
Рис.4.26. Контроллер состояния сложного объекта
4.2.8. Мультиплексор MS 2→1 в качестве тактируемого
потенциалом D-триггера
Уравнение MS 2→1 имеет вид
y |
a0 |
D0 a0D1 . |
(4.14) |
Характеристическое уравнение тактируемого потенциалом D-триггера с активной единицей на тактовом входе имеет вид
Qt 1 |
|
Ct 1 |
Qt Ct 1Dt , |
(4.15) |
|
с активным нулём на тактовом входе: |
|
||||
Qt 1 |
|
|
Dt Ct 1Qt , |
|
|
Ct 1 |
(4.16) |
где индекс t соответствует текущему состоянию сигналов (до переклю-
чения), а t+1 - следующему состоянию (после переключения). Полагая в уравнении (4.14) y = Qt+1, D0 = Qt, D1 = Dt и a0 = Ct+1, получаем выраже-
ние Qt 1 Ct 1Qt Ct 1Dt , полностью совпадающее с уравнением
(4.15).
Полагая в уравнении (4.14) y = Qt+1, D0 = Dt, D1 = Qt и a0 = Ct+1, получаем выражение
Qt 1 Ct 1Qt Ct 1Dt ,
полностью совпадающее с уравнением (4.16). Итак, на одном и том же MS 2→1 можно получить схему потенциально управляемого D-триггера с активными нулём или единицей на тактовом входе. Схема MS 2→1 и соответствующие D-триггеры приведены на рис.4.27.
D0 |
|
|
& |
|
1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
y |
|
& |
1 |
|
|
|
||||
D1 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Q |
|||||
|
|
& |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
a0 |
|
|
|
|
|
|
|
|
|
|
|
|
D |
|
|
& |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
C |
|
|
|
|
|
|
|
|
|
|
|
|
|
а |
|
|
|
|
|
|
||||||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
б |
|||
|
|
|
D |
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
& |
1 |
|
|
|
|
|
|
|
|
||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Q |
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
& |
|
|
|
|
|
|
|
|
|
|||
|
|
|
C |
|
|
|
|
|
|
|
|
|
|
|
|
|||||
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
в
Рис.4.27. Реализация триггера-защёлки на мультиплексоре MS 2→1: а - структура мультиплексора MS 2→1; б - триггер с активным С = 1; в - триггер с активным С = 0
4.2.9. Мультиплексор MS 2→1 в качестве сдвигового регистра
Полученные выше D-триггеры являются прозрачными. Этот термин говорит о том, что при активном сигнале на тактовом входе изменения данных на D-входе немедленно передаются на выход. Известно, что на прозрачных D-триггерах с одним и тем же активным сигналом на тактовых входах нельзя построить сдвиговый регистр. Однако, чередуя триггеры с различными активными сигналами на тактовых входах, его можно построить, причём сдвиг данных в нем будет осуществляться как фронтом (переходом 01), так и спадом (переходом 10) на тактовом входе [14]. Хорошим примером может служить схема регистра (рис.4.28,а), построенная на интегральной схеме счетверённого мультиплексора типа КР1533КП16 (SN74ALS157A), где DR (data right) - данные справа - по-
следовательный вход в младший разряд при сдвиге в сторону старших разрядов. На рис.4.28,б приведена временная диаграмма работы данного сдвигового регистра. На рис.4.28,а С = 0 - активный уровень для разрядов Q0 и Q2, С = 1 - активный уровень для разрядов Q1 и Q3. Так как от-
дельно взятые триггеры прозрачные, необходимо помнить, во-первых, обнуление регистра надо осуществлять при С = 1, в противном случае - при С = 0 после снятия сигнала «сброс» (активная единица) разряд Q0 немедленно примет значение сигнала DR и, во-вторых, данные на последовательном входе DR надо менять при С = 0 (неактивном сигнале для разряда Q0). Как видно из временных диаграмм, данные сдвигаются таким регистром с перекрытием.
|
|
Q0 |
Q1 |
Q2 |
Сброс |
& |
|
|
|
|
|
|
|
|
DR |
|
& 1 |
& 1 |
& 1 |
|
|
|
|
|
|
|
& |
& |
& |
C |
1 |
& |
|
|
|
|
|
||
|
|
|
а |
|
|
Q3 |
& |
1 |
& |
|
C |
t |
Сброс |
t |
DR |
t |
Q0 |
t |
Q1 |
t |
Q2 |
t |
Q3 |
t |
б |
|
Рис.4.28. Сдвиговой регистр на основе мультиплексоров MS 2→1: |
|
а - структура; б - временные диаграммы |
|