Каталог :: Программирование и комп-ры

Курсовая: Синтез логических схем для хранения и переработки информации

                   Министерство народного образования и науки                   
               Колледж иностранных языков и международного бизнеса               
             Университет иностранных языков и международного бизнеса             
     

Курсовая работа

По курсу: Элементы и приборы вычислительной техники

Тема: Синтез логических схем для хранения и переработки информации.

Выполнил: Сергеев Александр Владимирович

Гр. 989 Проверил: Кишинёв 2000
  1. Синтез реверсивного десятиразрядного регистра сдвига на одну позицию. Использовать триггеры типа D. При сдвиге вправо в крайний разряд загружать единицу.
  2. Синтез асинхронного двоичного счётчика, выполняющего прямой счёт, с модулем счёта равным 26, используя триггеры типа D.
  3. Синтез синхронного двоичного счётчика, выполняющего обратный счёт, с модулем счёта равным 14, используя триггеры типа JK и логику И-НЕ.
  4. Синтез последовательного восьмиразрядного сумматора.
Задача№1.......................................................................2 Задача№2.......................................................................5 Задача№3.......................................................................6 Задача№4.......................................................................8

Задача№1

Синтез реверсивного регистра сдвига. Регистр на 10 разрядов. Использовать триггеры типа D.

Решение

Регистры представляют собой узлы цифровых систем, предназначенные для записи и хранения двоичных кодов. Например: Если необходимо сложить два числа А и В, то необходима их предварительная запись в два регистра. А В Clk Рг. А Clk Рг. В Т. к. Схема регистра должна хранить двоичные цифры, а триггер предназначен для записи и хранения 0 или 1, то схема регистра должна содержать столько триггеров, сколько двоичных цифр необходимо хранить. Обычно регистры строят, используя триггеры типа D. Q D T Clk C Q
В качестве примера представим структуру регистра, предназначенного для записи и хранения 4-ёх разрядных двоичных чисел.
A3 Q3 A2 Q2 A1 Q1 A0 Q0
D T D T D T D T Clk C C C C

Q3 Q2 Q1 Q0 В представленной схеме выходы Q3, Q2, Q1, Q0 являются прямыми выходами регистра, в то время как необязательные выходы Q3, Q2, Q1, Q0 являются инверсными выходами регистра. Очень часто в цифровых системах используется операция сдвига. Имеем 01100111, тогда сдвиг влево выглядит: 0 1 1 0 0 1 1 1 0 1 1 0 0 1 1 1 Влево Вправо 1 1 0 0 1 1 1 0 0 0 1 1 0 0 1 1 Для реализаций операций сдвига влево/вправо могут использоваться либо мультиплексоры, либо регистры. Регистр, способный сдвигать данные в обоих направлениях, называется реверсивным сдвигающим регистром (РСР). Синтез РСР. Выполним синтез РСР на триггерах типа D. 1) Составим таблицу, в которой отразим текущее и следующее состояние каждого из триггеров регистра. При этом будем полагать, что регистр 3-ёх разрядный. Так как регистр должен сдвигать либо влево, либо вправо, то в этой таблице следует в отдельном столбце записывать значение специального управляющего сигнала SL/R. Кроме того, таблица будет содержать значения, которые нужно подавать на входы D каждого из триггеров при переходе от текущего состояния в следующее состояние.
SL/Rtt+1

D2

D1

D0

Q2

Q1

Q0

Q2

Q1

Q0

0000000000
0001010010
0010100100
0011110110
0100000000
0101010010
0110100100
0111110110
1000000000
1001000000
1010001001
1011001001
1100010010
1101010010
1110011011
1111011011
2) Заполним диаграмму Вейча-Карно с тем, чтобы получить логические выражения для D2 , D1 , D0 .
OOO1111OOOO1111OOOO1111O
OO11OO11OO
O111O111O1
111111111111
1O1O1O11
D2 = SL/R* Q1 D1 = SL/R* Q0 SL/R* Q2 D0 = SL/R* Q1 3) По полученным логическим выражениям синтезируем схему регистра. D T 1 D T D T
C C C clk

1 На основе полученных логических выражений и синтезированной схемы можно получить логическое выражение и схему для i-го триггера. Di = SL/R* Qi - 1 SL/R* Qi + 1 На основе полученного выражения можно построить схему заданного регистра.

Задача№2

Синтез асинхронного двоичного счётчика, выполняющего прямой счёт, с модулем счёта равным 26, используя триггеры типа D.

Решение

Самыми простыми двоичными счётчиками являются асинхронные двоичные счётчики(АДС).Пусть к=3, тогда АДС с М=2^3 будет выглядеть: Представленная схема является схемой АДС, обеспечивающего суммирование входных импульсов ( с прымым счётом). Представленная временная диаграмма поясняет работу асинхронного 3-х разрядного счётчика. Таблица переходов для прямого счёта записывается так: 000 Младший триггер счётчика срабатывает по срезу входных 001 импульсов на линии clk. Как видно из диаграммы состояние 010 на выходе младшего триггера меняется после каждого среза 011 входных синхроимпульсов.Так как средний триггер 100 синхронизируется прямым выходом соседнего младшего 101 триггера, то состояние на его выходе будет менятся при 110 формировании среза на выходе Q0 .Так же как и на Q2 . 111 Преимуществом этой схемы является простота структуры,наряду с этим есть огромный недостаток: с ростом разрядности, то есть числа триггеров счётчика, возрастает суммарная задержка срабатывания самого старшего триггера счётчика, что означает необходимость уменшения частоты входных синхроимпульсов. Иначе говоря, в АДС невозможно обеспечить высокие рабочие частоты. Если вход синхронизации соседнего старшего триггера пдключить к обратному выходу соседнего триггера, то счётчик станет вычитающим. В этом случае говорят,что имеет место обратный счёт. Осуществим синтез заданного АДС: Определим количество триггеров log2 26=5. Переведём число 26 из десятичной системы счисления в двоичную: 262 = 110102 . Изобразим схему заданного АДС: Задача№3 Синтез синхронного двоичного счётчика, выполняющего обратный счёт, с модулем счёта равным 14, используя триггеры типа JK и логику И-НЕ.

Решение

Используем триггеры типа JK. 1) Определим количество триггеров. M = log2 14 = 4 2) Строится таблица переходов счётчика. При этом ипсользуется таблица переходов соответствующего триггера. J = 1 запись 1 J = 0 хранение.Выход не K = 0 K = 0 меняется J = 0 запись 0 (сброс) J = 1 0 1 K = 1 K = 1 1 0

Qt

Qt+1

JK
000*
011*
10*1
11*0
Для счётчика с к = 14 таблица переходов будет выглядеть следующим образом:

Q3

Q2

Q1

Q0

Q3'

Q2'

Q1'

Q0'

J3

K3

J2

K2

J1

K1

J0

K0

000011011*1*0*1*
11011100*0*00**1
11001011*0*11*1*
10111010*00**0*1
10101001*00**11*
10011000*00*0**1
10000111*11*1*1*
011101100**0*0*1
011001010**0*11*
010101000**00**1
010000110**11*1*
001100100*0**0*1
001000010*0**11*
000100000*0*0**1
11100000*1*1*10*
11110000*1*1*1*1
3) Строим диаграмму Вейча-Карно для функции управления J и K каждого из триггеров, используя таблицу переходов счётчика. По диаграммам выполним минимизацию соответствующих функций, то есть получаем минимальные дизъюнктивные нормальные формы для всех сигналов J и K.
OOO1111OOOO1111OOOO1111OOOO1111O
OO1OO****OO1OO****
O1O1****O1****O11
11****11111****11111
1O****1O111O11O****

J3 = Q2*Q1*Q0

K3 = Q2*Q1*Q0 Q1*Q0

J2 = Q1*Q0

K2 = Q1*Q0 Q3*Q1

OOO1111OOOO1111OOOO1111OOOO1111O
OO**OO**1OO1**1OO*11*
O11**O1**1O11**1O1*11*
111**11**11111**11*11*
1O1**1O**11O1**11O*11*

J1 = Q3*Q0 Q2*Q0

K1 = Q0 Q3*Q2

J0 = Q1 Q3 Q3*Q2

K0 = 1

Переведём полученные выражения в логику И-НЕ:
J3 = Q2*Q1*Q0 K3 = (Q2*Q1*Q0) * (Q1*Q0)
J2 = Q1*Q0 K2 = (Q1*Q0)* (Q3*Q1)
J1 = (Q3*Q0) * (Q2*Q0) K1 = Q0 * (Q3*Q2)
J0 = Q1 * Q3 * (Q3*Q2) K0 = 1 По полученным выражениям можно построить схему заданного счётчика: Задача№4 Синтез последовательного восьмиразрядного сумматора.

Решение

При сложении двоичных чисел на уровне I-го разряда необходимо учитывать двоичные цифры ai и bi, а также возможный перенос из соседнего младшего разряда. Элементарное устройство, выполняющее суммирование указанных двоичных цифр называется полным одноразрядным двоичным сумматором (ПОДС). Синтез ПОДС выполняется классическим путём, то есть начинается с таблицы истинности. Функции, описывающие выходы Si и Ci зависят от 3-х переменных ai, bi и ci ; поэтому таблица истинности будет выглядеть следующим образом:

ai

bi

Ci-1

Si

Ci

OOO1111O
00000O11
01010111
10010
11001

Si = ai*bi*Ci-1 ai*bi*Ci-1 ai*bi*Ci-1 ai*bi*Ci-1

00110
01101OOO1111O
10101O1
111111111

Ci = ai*bi Ci-1*bi ai*Ci-1

Логическая схема ПОДС в базисе И-ИЛИ-НЕ будет выглядеть следующим образом: В общем случае нам необходимо складывать n-разрядные двоичные числа. Для сложения таких чисел необходимо взять n ПОДС. Структура n-разрядного двоичного сумматора называется сумматором с последовательным распределением переноса. Преимуществом такого сумматора является простота и низкая стоимость схемы. Недостатком является его низкое быстродействие, то есть большое время суммирования двоичных чисел. Легко заметить, что время суммирования двоичных чисел на таком сумматоре возрастает с ростом разрядности складываемых чисел. Если требуется быстрое суммирование двоичных чисел независимо от их разрядности, используют схему сумматора, в которой реализуется так называемый ускоренный перенос. В таком сумматоре, наряду с одноразрядными двоичными сумматорами, используется специальная схема ускоренного переноса. При этом одноразрядные сумматоры складывают двоичные цифры исходных чисел с учётом переносов вырабатываемых схемой ускоренного переноса. Так как подобная схема вычисляет все переносы одновременно (параллельно), то при суммировании чисел не приходится ждать последовательной генерации требуемых переносов. На базе полученной схемы одноразрядного двоичного сумматора можно построить заданный сумматор. При этом нужно осуществлять загрузку двух восьмиразрядных чисел, а также сдвиг результата вправо. Таким образом схема заданного сумматора будет выглядеть следующим образом: