Лекция 8. Регистры
Раздел 4.Синтез типовых узлов ЭВМ
Переход от автомата Мура к автомату Мили
Таблица переходов
yg | y1 | y2 | y1 | y1 | y2 |
xj\bi | b1 | b2 | b3 | b4 | b5 |
x1 | b4 | b4 | b1 | b2 | b2 |
x2 | b1 | b1 | b5 | b3 | b3 |
В качестве начального состояния автомата S b можно взять любое из состояний b 1 или b 2, так как оба порождены состоянием a0 автомата S a.
Обратная задача, то есть переход от автомата Мура к автомату Мили решается чрезвычайно просто. Пусть дан автомат Мура
S b ={ A b, X b, Y b, d b, l b}.
Необходимо построить эквивалентный ему автомат Мили
S a = { A a, X a, Y a, d a, l a}.
По определению эквивалентности имеем X a = X b; Y a = Y b. Кроме того,
A a = A b, d a= d b. Остается только построить функцию выходов. Если в автомате Мура d b(a i, x j) = a s, а l b(a s) = yg, то в автомате Мили l a(a i, x j) = y g. Другими словами l a(a i, x j) = l b(d b(a i, x j)). Таким образом, таблица переходов автоматов Мили и Мура совпадают. А таблица выходов эквивалентного автомата Мили строится так, что в каждую клетку таблицы записывается выходной сигнал, которым отмечено состояние, расположенное в данной клетке.
Пример:
Пусть дан автомат Мура:
xj\yi | y1 | y1 | y3 | y2 | y3 |
xj\ai | a0 | a1 | a2 | a3 | a4 |
x1 | a1 | a4 | a4 | a2 | a2 |
x2 | a3 | a1 | a1 | a0 | a0 |
Тогда эквивалентный ему автомат Мили имеет следующую совмещенную таблицу переходов и выходов.
xj\ai | a0 | a1 | a2 | a3 | a4 |
x1 | a1/y1 | a4/ y3 | a4/ y3 | a2/ y3 | a2/ y3 |
x2 | a3/ y2 | a1/ y1 | a1/ y1 | a0/ y1 | a0/ y1 |
К типовым узлам ЭВМ, предназначенным для хранения и преобразования двоичной информации, относятся различные виды регистров, счетчиков, сумматоров и дешифраторов.
Регистром называется устройство, предназначенное для приема, хранения и передачи информации. Информация в регистре хранится в виде двоичного числа, причем каждому разряду числа, записанного в регистр, соответствует свой разряд регистра.
Регистры используются также для выполнения некоторых операций над числами, такими как сдвиг числа влево или вправо, образование обратного кода числа, преобразование последовательного кода в параллельный и обратно, поразрядное логическое сложение и умножение чисел и т.д. В зависимости от способа ввода и вывода информации различают регистры параллельного, последовательного и параллельно-последовательного действия.
В регистрах параллельного действия запись числа осуществляется параллельным кодом, т.е. во все разделы регистра одновременно.
Регистр строится на триггерах, число которых равно числу разрядов в хранимом слове, т.е. каждый триггер предназначен для запоминания одного разряда числа. В качестве триггеров в таких регистрах используется, как правило, RS- и D- триггера. В зависимости от количества каналов, по которым поступает информация на входы регистра, различают регистры парафазного и однофазного вида. Парафазные регистры характеризуются тем, что информация на каждый разряд поступает по двум каналам (прямому и инверсному), а в однофазных регистрах информация поступает по одному каналу (прямому или инверсному). Приведем схему парафазного регистра на синхронных RS-триггерах с асинхронными и установочнымивходами R и S:
Пусть в n -разрядный регистр необходимо записать n -разрядное двоичное число X=xn-1xn-2…x1x 0. Прямой и обратный коды каждого разряда числа поступают одновременно на S и R входы триггера. Запись числа осуществляется по синхронизирующему сигналу С. Если необходимо прочитать прямой код числа, хранящегося в регистре, необходимо в схему подать сигнал Чтпр (чтение прямое). Тогда на выходах конъюнкторов первой группы появится число в прямом коде, поскольку входы этих конъюнкторов соединены с прямыми выходами триггеров. Аналогично, при подаче сигнала Чтобр (чтение обратное), на выходах конъюнкторов второй группы появится число в обратном коде, а при одновременной подаче сигналов Чтпр и Чтобр будет прочитано число из регистра в парафазном параллельном коде.
Схема однофазного регистра на синхронных RS -триггерах с установочными R и S входами отличаются от приведенной лишь тем, что на вход R регистра инверсный код числа не подается. В этом случае этапу приема числа в регистр предшествует этап сброса регистра в нулевое состояние, который осуществляется по сигналу Уст «0», поступающему одновременно на асинхронные R входы всех триггеров. Далее по сигналу С те триггера, на вход S которых подается единичный сигнал, перейдут в единичное состояние, а остальные останутся в нулевом состоянии. Таким образом, однофазный регистр на RS -триггерах является двухтактным, тогда, как парафазный регистр – однотактным. Поэтому для увеличения быстродействия однофазные регистры строятся на D -триггерах, сбрасывать которые в нулевое состояние нет необходимости.