Регистром называется упорядоченная последовательность запоминающих элементов, предназначенных для хранения слова информации. В качестве запоминающих элементов используются триггеры. Как составная часть ОА, регистр может выполнять различные микрооперации.
Пример 1. Спроектировать 4-разрядный регистр, выполняющий следующие микрооперации:
у0: P(1:4):=0000 – обнуление (сброс) регистра,
y1: P(1:4):=1010 – установка кода,
у2: Р(1:4):= Т(1:4) – прием кода с регистра Т (межрегистровая передача),
y3: P(1:4):=P(2:4).P1 – циклический сдвиг влево информации в регистре.
Регистр должен вычислять осведомительные сигналы
х1= (P(1:4)=1111), x2= (p(1:4)>=1010).
В качестве элементного базиса для реализации i-го разряда регистра можно взять, например, микросхему К155ТМ2 (ТТЛ-логика) - рисунок 3. Микросхема К155ТМ2 содержит два независимых D-триггера, имеющих общую цепь питания. У каждого триггера есть входы , а также комплиментарные выходы и . Входы и асинхронные, потому что они работают независимо от сигнала на тактовом входе ; активный уровень для них – низкий. Сигнал от входа передается на выходы и по положительному (от низкого к высокому уровню) перепаду на тактовом входе . Чтобы триггер переключился правильно, нужный уровень на входе следует зафиксировать заранее, перед приходом тактового перепада. Защитный интервал должен превышать время задержки распространения сигнала в триггере. Если на входы и одновременно подать напряжения низкого уровня, состояние выходов и окажется неопределенным. Асинхронная установка нужного сочетания уровней на выходах получится, когда на входы и поданы взаимно-противоположные логические сигналы. В это время входы и отключены. Загрузить в триггер входной сигнал по входу можно, если на входы и подано напряжение высокого уровня.
Подробно микросхемы серии К155 описаны в [3]. Таблица 1 – таблица переходов триггера K155TM2. Для реализации регистра необходимо 2 таких микросхемы. Обозначим входы триггеров 1 – 4 соответственно R1-R4, S1-S4, D1-D4, C1-C4, выходы – Q1-Q4.
Выходы внешнего регистра T(1:4), с которого принимается информация на регистр Р, обозначим Т1-Т4.
Необходимо синтезировать функции возбуждения входов регистра для осуществления набора заданных микроопераций. Построим таблицу зависимости функций возбуждения входов от управляющих сигналов и входной информации (таблица 2). Операции установки и приема кода целесообразно выполнять при помощи специально для этого предназначенных установочных R-S входов регистра. Эти входы асинхронные и имеют приоритет перед другими входами (что отражено в таблице 1). При этом различают двухтактные и однотактные операции установки и приема. Для двухтактных операций характерно, что в первом такте в схему (на R входы, ответственные за установку нуля) подается управляющий сигнал y0, вследствие чего регистр обнуляется. Во втором такте в схему подается непосредственно сигнал установки ( или приема) – у1(или y2). Этот сигнал подается только на S входы, ответственные за установку единицы (так как нули уже установлены в предыдущем такте).
Таблица 1
X | X | 0 | 0 | Не определено определено |
X | X | 0 | 1 | 0 |
X | X | 1 | 0 | 1 |
0 | X | 1 | 1 | |
1 | 0 | 1 | 1 | 0 |
1 | 1 | 1 | 1 | 1 |
При однотактной установке и нули и единицы входного слова должны быть приняты на регистр за один такт под воздействием единственного сигнала у1 (или у2). В таблице 2 элементы, необходимые для однотактной установки (приема) и лишние для двухтактной, заключены в квадратные скобки. Пустые клетки в таблице 2 означают, что соответствующий сигнал имеет низкий уровень (равен логическому нулю). Анализ таблицы 2 позволяет сделать вывод, что функции для R-входов при однотактной установке усложняются, что является своеобразной платой за выигрыш в быстродействии.
Примечание - У микросхемы К155ТМ2 для исключения запрещенной комбинации 11 на R-S входах, эти входы выполнены инверсными (в TTЛ-логике на свободном (не подключенном) входе микросхемы уровень логической единицы). При составлении таблицы 2 инверсии на установочных входах микросхемы К155ТМ2 не учитывались. Эти инверсии будут учтены при составлении булевых функций возбуждения входов по таблице 2 (так как инвертироваться должна вся функция, а не отдельные входящие в нее переменные).
Микрооперацию сдвига целесообразно выполнять с использованием синхронного D-триггера. При этом синхроимпульсы будут использоваться для отсчета сдвигов: на один синхроимпульс будет выполняться один сдвиг. Для этого управляющий сигнал у3, домноженный на синхроимпульс, целесообразно подать на входы С триггеров.
Внимание. В схему регистра не может быть подано два или более управляющих сигнала одновременно, так как в конкретный момент времени на одном операционном элементе может выполняться только одна микрооперация.
Таблица 2
y | R1 | S1 | R2 | S2 | R3 | S3 | R4 | S4 |
у0 | 1 | 1 | 1 | 1 | ||||
у1 | 1 | [1] | 1 | [1] | ||||
у2 | ||||||||
y | D1 | D2 | D3 | D4 | C1 | C2 | C3 | C4 |
y3 | Q2 | Q3 | Q4 | Q1 | c | c | c | c |
Из таблицы 2 получаем следующие функции возбуждения входов триггеров.
Осведомительный сигнал х1 вычисляется по формуле .
На рисунке 4 показаны наборы значений регистра, на которых осведомительный сигнал x2 должен принимать единичные значения. Минимальная ДНФ для вычисления х2:
Схема регистра (вариант двухтактной установки (приема) кода) представлена на рисунке 5. В дальнейшем под словом схема будем понимать функциональную схему устройства. Если будут подразумеваться другие виды схем, это будет оговорено.
Для реализации функций возбуждения входов и осведомительных сигналов используются микросхемы К155ЛР1(2И-2И-ИЛИ-НЕ), К155ЛА1(2 элемента 4И-НЕ), К155ЛА3(4 элемента 2И-НЕ).
Временные диаграммы регистра при выполнении им микрооперации сдвига в динамическом режиме (при подаче на С-входы последовательности синхроимпульсов) приведены на рисунке 6. Триггеры К155ТМ2 переключаются по нарастающему фронту синхросигнала. Временные интервалы, в частности, задержки переключения триггеров относительно начала синхроимпульса, на рисунке показаны условно без соблюдения масштаба. Параметры синхросерии (частота, скважность) обычно рассчитываются исходя из принципов взаимодействия УА и ОА и задержек срабатывания операционных элементов. В данном случае, например, важно, чтобы за время положительного уровня на входе С, триггер успел сработать.
Микрооперации установки и приема кода в данной схемной реализации осуществляются асинхронно при подаче в схему единичного значения соответствующего управляющего сигнала (можно предположить, что время формирования этих значений задается (синхронизируется) управляющим автоматом).
Поставленную задачу синтеза регистра можно решить, например, с использованием микросхемы К155ИР1 – четырехразрядного регистра в интегральном исполнении (рисунок 7). Вход разрешения параллельной загрузки служит для выбора режима работы регистра. Если на вход поступает напряжение высокого уровня, разрешается синхронизация по входу . В момент прихода на этот вход отрицательного перепада синхроимпульса в регистр загружаются данные с параллельных входов D1-D4 (микрооперация Q(1:4):=D(1:4)).
Если на вход поступает напряжение низкого уровня, синхронизация осуществляется по входу . По отрицательному перепаду синхроимпульса информация в регистре сдвигается в сторону разряда Q4 (микрооперация Q(1:4):=S.Q(1:3)).
Напряжение на входе можно менять только если на обоих тактовых входах и напряжение низкого уровня, перемена сигнала на входе не меняет состояния выходов.
Режимы работы регистра К155ИР1 представлены в таблице 3 .
На этой и следующих таблицах приведены следующие обозначения: 0 – низкий уровень (логический ноль), 1- высокий уровень (логическая единица), X – состояние входа не влияет на работу микросхемы, с – синхроимпульс, l – перепад сигнала от высокого уровня к низкому, Γ - перепад сигнала от низкого уровня к высокому, А1, А2, А3, А4 – состояние регистра (значения сигналов на выходах Q1, Q2, Q3, Q4) до начала выполнения микрооперации.
Построим таблицу зависимости функций возбуждения входов микросхемы К155ИР1 от управляющих сигналов и входной информации (таблица 4). Так как сдвиг в регистре возможен только в сторону выхода Q4, а необходимо реализовать операцию y3: P(1:4):=P(2:4).P1, будем считать, что с выхода Q4 снимается разряд P1, Q3 – P2, Q2 – P3, Q1 – P4.
Таблица 3
Входы | Выходы | Режим | ||||||||||
S | D1 | D2 | D3 | D4 | Q1 | Q2 | Q3 | Q4 | ||||
1 | X | 1 | X | X | X | X | X | A1 | A2 | A3 | A4 | хранение |
1 | X | с(l) | X | a | b | c | d | a | b | c | d | загрузка |
0 | 1 | X | X | X | X | X | X | A1 | A2 | A3 | A4 | хранение |
0 | с(l) | X | a | X | X | X | X | a | A1 | A2 | A3 | сдвиг |
l | 0 | 0 | X | X | X | X | X | A1 | A2 | A3 | A4 | |
Γ | 0 | 0 | X | X | X | X | X | A1 | A2 | A3 | A4 |
Таблица 4
y | S | D1 | D2 | D3 | D4 | |||
y0 | 1 | X | c | X | 0 | 0 | 0 | 0 |
y1 | 1 | X | с | X | 0 | 1 | 0 | 1 |
y2 | 1 | X | c | X | T4 | T3 | T2 | T1 |
y3 | 0 | c | X | P1 | X | X | X | X |
Функции возбуждения входов:
Функция для входа S упрощена (отсутствует сигнал у3), так как информация с этого входа используется только в режиме сдвига, инициируемом сигналом у3.
Схема регистра (без вычисления осведомительных сигналов) представлена на рисунке 8. В микросхеме К155ЛР3 (2И-2И-3И-2И-ИЛИ-НЕ) заземлен один из входов неиспользуемого логического элемента «И». При отсутствии заземления вследствие наличия на неподключенных входах элемента ТТЛ уровня логической единицы, на выходе микросхемы будет постоянно присутствовать уровень логического нуля.
0 коммент.:
Отправить комментарий