МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ СЕВЕРО-ЗАПАДНЫЙ ГОСУДАРСТВЕННЫЙ ЗАОЧНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ Государств...
36 downloads
252 Views
529KB Size
Report
This content was uploaded by our users and we assume good faith they have the permission to share this book. If you own the copyright to this book and it is wrongfully on our website, we offer a simple DMCA procedure to remove your content from our site. Start by pressing the button below!
Report copyright / DMCA form
МИНИСТЕРСТВО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ СЕВЕРО-ЗАПАДНЫЙ ГОСУДАРСТВЕННЫЙ ЗАОЧНЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ Государственное образовательное учреждение высшего профессионального образования
Кафедра компьютерных технологий и программного обеспечения
СХЕМОТЕХНИКА ЭВМ Методические указания к выполнению курсового проекта
Факультет информатики и систем управления Направление и специальность подготовки дипломированного специалиста: 654600 – информатика и вычислительная техника 220100 – вычислительные машины, комплексы, системы и сети Направление подготовки бакалавра: 552800 – информатика и вычислительная техника
Санкт-Петербург 2004
Утверждено редакционно-издательским советом университета УДК 681.3(07) Схемотехника
ЭВМ:
Методические
указания
к
выполнению
курсового проекта СПб: СЗТУ, 2004, 37 с. Методические указания к выполнению курсового проекта составлены в соответствии
с
рабочей
программой,
разработанной
согласно
государственных образовательных стандартов высшего профессионального образования по направлению подготовки дипломированного специалиста 654600 (специальность 220100-«Вычислительные машины, комплексы, системы и сети») и направлению подготовки бакалавра 552800.
Брошюра содержит методические указания к выполнению курсового проекта по дисциплине «Схемотехника ЭВМ». Изложены цели и основные теоретические положения, необходимые для выполнения задания на курсовое проектирование.
Рассмотрено на заседании кафедры компьютерных технологий и программного обеспечения 25 сентября 2003 г.; одобрено методической комиссией факультета информатики и систем управления
20 октября 2003 г.
Рецензенты: Кафедра компьютерных технологий и программного обеспечения, (зав. каф. И.А.Бригаднов, д-р физ-мат. наук., проф.), А.Н. Губин, канд.техн.наук., доц. ЛИНКомп «ЛТД».
Составители: Г.И. Анкудинов, д-р. тех. наук, проф.; И.Г. Анкудинов, канд.техн. наук, доц.; P.P. Хамидуллин, канд.техн.наук, проф.
©
Северо-Западный
университет, 2004
государственный
заочный
технический
3 ВВЕДЕНИЕ
1. Цель курсового проектирования. Целью курсового проекта является решение комплексной задачи, охватывающей основные разделы дисциплины «Схемотехника ЭВМ»
и
заключающейся
в
выполнении
схемотехнического
проектирования заказной интегральной микросхемы, выполняющей заданные функции преобразования цифровой информации. Объектом
курсового
проектирования
являются
синхронные
пересчетные схемы и реверсивные сдвигающие регистры. 2. Задачи курсового проектирования. В процессе работы над курсовым проектом должны быть рассмотрены и решены следующие задачи: 1) синтез структуры проектируемого устройства; 2) анализ сложности проектируемого устройства и выбор типа триггера, использование которого для реализации устройства позволяет минимизировать его сложность; 3) синтез триггерного устройства выбранного типа; 3. Тематика курсового проектирования Спроектировать схему заказной ИС, выполняющую функцию восьмиразрядного синхронного реверсивного сдвигающего регистра и синхронной реверсивной пересчётной схемы по следующим исходным данным, приведенным в табл. 1 а, 1б и 2 а, 2 б, соответственно.
4
Выполняемые операции сдвига
Таблица 1а Типы триггеров, подлежащих рассмотрению при реализации регистра D,JK Т,RS Т,JK D,RS Т,DV Две последние цифры шифра
Влево на 2 разряда Вправо на 1 разряд Влево на 3 разряда Вправо на 2 разряда Влево на 1 разряд Вправо на 3 разряда Влево на 3 разряда Вправо на 3 разряда Влево на 2 разряда Вправо на 3 разряда
Выполняемые операции сдвига Влево на 2 разряда Вправо на 2 разряд Влево на 3 разряда Вправо на 2 разряда Влево на 3 разряд Вправо на 1 разряда Влево на 2 разряда Вправо на 2 разряда Влево на 1 разряда Вправо на 2 разряда
02
06
20
24
28
00
04
09
22
26
42
46
60
64
68
40
44
48
62
66
82
86
80
84
88
Таблица 1б Типы триггеров, подлежащих рассмотрению при реализации регистра T,RS Т,DV D, RS T,JK JK,RS Две последние цифры шифра 03 07 21 25 29 01
05
08
23
27
43
47
61
65
69
41
45
49
63
67
87
83
81
85
89
5 Таблица 2 а Генерируемая послед. двоичных эквивалентов чисел
Типы триггеров, подлежащих рассмотрению при реализации счётчика T,RS T,DV D,RS T,JK JK,RS Две последние цифры шифра
7,3,0,6,5,1,4
10
14
18
32
36
12
16
30
34
38
50
54
58
72
76
52
56
70
74
78
92
96
90
94
98
(4,1,5,6,0,3,7) 7,1,2,3,0,5,4 (4,5,0,3,2,1,7) 0,7,1,5,4,2,3 (3,2,4,5,1,7,0) 0,5,1,7,3,2,4 (4,2,3,7,1,5,0) 5,4,2,0,7,6,1 (1,6,7,0,2,4,5)
Таблица 2 б Генерируемая послед. двоичных эквивалентов чисел 5,4,2,0,7,6,1
Типы триггеров, подлежащих рассмотрению при реализации счётчика D,JK Т,RS Т,JK D,RS Т,DV Две последние цифры шифра 11 15 19 33 37
(1,6,7,0,2,4,5) 1,5,6,2,4,3,0
13
17
31
35
39
51
55
59
73
77
53
57
71
75
79
93
97
91
95
99
(0,3,4,2,6,5,1) 7,3,0,6,5,1,4 (4,1,5,6,0,3,7) 7,4,5,3,6,1,0 (0,1,6,3,5,4,7) 0,7,1,5,4,2,3 (3,2.4,5,1,7,0)
6
4. Расчетная часть курсового проекта 4.1. Проектирование синхронных сдвигающих регистров. Регистр, как устройство для хранения и преобразования цифровой информации, можно рассматривать как совокупность элементов памяти (триггеров) и комбинационной схемы, которая управляет работой этих элементов. В связи с этим, процесс проектирования регистров можно разделить на два этапа - проектирование схемы управления и проектирования триггерных устройств. Рассмотрим вопросы проектирования схемы управления элементами памяти регистра. Сам процесс проектирования схемы можно представить как поэтапное преобразование описания работы регистра; от словесного
описания
до
формального
описания
сигналов,
управляющих работой триггеров, которое позволяет построить схему, формирующую требуемые сигналы. Содержание основных этапов
проектирования
проектирования сдвигающего
рассмотрим
кольцевого регистра,
на
конкретном
восьмиразрядного
осуществляющего
примере
синхронного
операции
сдвига
информации влево на 2 разряда и вправо на 3 разряда. Выбор типа операций, выполняемой регистром, осуществляется с помощью сигналов управления, количество которых определяется по формуле: my =] log k [ ,
( 1)
7 где k - количество выполняемых операций, ] A [ - оператор округления числа А до ближайшего целого с избытком. В данном случае необходимо обеспечить выполнение двух операций (сдвиг влево на 2 разряда и сдвиг вправо на 3 разряда), следовательно, my=1, т.е. требуется один управляющий сигнал. Обозначим этот сигнал как у и примем, что при y=1 осуществляется сдвиг на 3 разряда вправо, при y = 0 – на 2 разряда
влево. Учитывая
регулярный характер структуры сдвигающих регистров, описание работы всего регистра можно свести к описанию поведения только одного i-го разряда этого регистра. Из рис. 1 видно, что состояние i -го разряда регистра в последующий момент времени (t+1) полностью
определяется
состоянием
разрядов
(i
-
3)
и
(i + 2), а также состоянием управляющей переменной у. Описание поведения i-го разряда представим в виде таблицы, в левой части которой расположим все возможные состояния сигналов, влияющих на поведение
i-го разряда, (рис.1), а в правой - состояние
i-го
разряда после выполнения операции сдвига и тип перехода, который при этом должен осуществить выходной сигнал
i-го разряда.
Условные обозначения возможных типов переходов переменной Qi представлены в табл.3.
i–3
i–2
i–1
i
Рис.1
i+1
i+2
8 Таблица 3
Условные обозначения типов переходов переменной Qi Значения в момент времени t
Значения в момент времени t+1
Тип переходов
0 0 1 1
0 1 0 1
0→ 0 → 1→ 1→
Условные обозначения перехода
ϕQi
Qi 0 1 0 1
0 α β 1
Описание поведения i-го разряда регистра в терминах типов переходов его выходного сигнала приведено в табл.4. В столбцах Qi-3, Qi,
Qi+2 в момент времени t представлены все возможные
комбинации сигналов на выходе соответствующих разрядов при у=0 и у=1. Сигнал Qi включен в левую часть таблицы потому, что его состояние перед операцией сдвига влияет на тип перехода, который осуществляет
i-й разряд при операции сдвига. В столбце
Qi в
момент времени (t+1) показаны значения выходного сигнала i-го разряда регистра после выполнения операции сдвига влево при у=0 (Qi=Qi+2) и после выполнения операции сдвигах вправо при у=1 (Qi=Qi-3). В столбце ϕQi указан тип перехода, осуществляемого сигналом Qi при выполнении соответствующей операции сдвига. Тип перехода определяется сравнением значений
Qi в момент
времени t и (t+1), с учетом обозначений, представленных в табл.3.
9 Таблица 4
Описание реверсивного сдвигающего регистра № состояния
t
t+1
ϕQi
y
Qi-3
Qi
Qi+2
Qi
1
0
0
0
0
0
0
2
0
0
0
1
1
α
3
0
0
1
0
0
β
4
0
0
1
1
1
1
5
0
1
0
0
0
0
6
0
1
0
1
1
α
7
0
1
1
0
0
β
8
0
1
1
1
1
1
9
1
0
0
0
0
0
10
1
0
0
1
0
0
11
1
0
1
0
0
β
12
1
0
1
1
0
β
13
1
1
0
0
1
α
14
1
1
0
1
1
α
15
1
1
1
0
1
1
16
1
1
1
1
1
1
Данные табл. 4 позволяют представить описание работы регистра в виде карты Карно для четырех переменных рис.2 Qi – карта yQi-3 QiQi+2
00
01
11
10
00
0
0
α
0
01
α
α
α
0
11
1
1
1
β
10
β
β
1
β
Рис. 2
10 В каждую клетку, соответствующую различным состояниям сигналов Qi-3, Qi, Qi+2 и управляющей переменной у, заносится тип перехода, осуществляемого i-м разрядом регистра при выполнении соответствующей
операции
сдвига.
Тип
перехода
i-го разряда определяется значениями столбца ϕQi табл.4. Например, вторая клеточка сверху в крайнем левом столбце карты соответствует следующей комбинации сигналов: у=0, QiQi+2=1.
Эта
комбинация
соответствует
второму
3=0,
Qi=0,
состоянию
описываемого разряда (табл.4), которое характеризуется переходом типа α. Следовательно, в карту Карно, в рассматриваемую клеточку необходимо записать символ α. Аналогичным образом заполняется остальная часть карты. Таким образом, для того чтобы триггер выполнял
функции
i-го
разряда
проектируемого
регистра,
необходимо чтобы его выходной сигнал вел себя в соответствии с полученной картой Карно (рис. 2). Поскольку
типы
переходов
выходного
сигнала
триггера
полностью определяются значениями входных сигналов триггера (т.е. словарным описанием триггера), как показано в табл. 5, то очевидно, что подставив в карту Карно (рис.2) вместо обозначений типов переходов значения входных сигналов, которые обеспечивают требуемый
тип
перехода
можно
определить
карту
Карно,
описывающую логику формирования входных сигналов триггера, выполняющего функции i-го разряда проектируемого регистра.
11 Из табл. 5 видно, что использование для реализации регистра различных
типов
триггеров
приведет
к
формированию
отличающихся друг от друга карт Карно, описывающих входные сигналы этих триггеров. В качестве примера рассмотрим схемную реализацию регистра на базе триггеров JK - и Т-типов. Таблица 5 Словарное описание триггеров D, Т, RS и JК-типов Q
0 1 α β
Ттриггер T 0 0 1 1
Dтриггер D 0 1 1 0
RSтриггер R X 0 0 1
S 0 X 1 0
JКтриггер J 0 Х 1 Х
К Х 0 Х 1
После замены типов переходов в карте Карно, изображенной на рис.2, на значения входных сигналов JK и Т-триггеров получим карты Карно, описывающие поведение входных сигналов этих триггеров (рис. 3, 4, 5). Проведя склеивание, как это показано на рис.3, 4, 5 получим
12 Ji– карта
Ki - карта
Рис.3
Рис.4 Ti - карта
yQi-3 QiQi+2
00
01
11
10
00
0
0
1
0
01
1
1
1
0
11
0
0
0
1
10
1
1
0
1
Рис. 5
Ji = ⎯yQi+1 + yQi-3
(2)
Ki = ⎯y⎯Qi+1 + y⎯Qi-3
Докажем, что если Ji + Ki =1, то Ki = ⎯Ji. Если это условие выполняется, то при построении схемы управления достаточно разработать только схему для J входа, а на K вход инвертированный J
подать
сигнал с выхода этой схемы, что позволяет
получить выигрыш в аппаратной реализации. Ji + Ki = ⎯yQi+1 + yQi-3 + ⎯y⎯Qi+1 + y⎯Qi-3 = ⎯y(Qi+1 + ⎯Qi+1) +y(Qi-3 +⎯Qi-3) =1 Ti = ⎯y⎯Qi Qi+2 + y⎯Qi Qi -3+ yQi⎯Qi-3 + ⎯yQi⎯Qi + 2
13 Преобразуем логические функции Ji, Ki и Тi в базис И-НЕ Ji = ⎯yQi+1 + yQi-3 = ⎯yQi+1 * yQi-3
(3)
Ti = ⎯y⎯Qi Qi + 2 y⎯Qi Qi - 3 yQi ⎯Qi- 3
⎯yQi ⎯Qi + 2
(4)
Проведем оценку сложности комбинационной схемы управления (КСУ)
i -м разрядом регистра в обоих случаях. По Квайну
сложность комбинационной схемы вычисляется как N
S = ∑ E i, i=1
где N - число логических входов во всей оцениваемой схеме; ⎧1, если в схеме используется прямой вход ⎪ Еi = ⎨ ⎪2, если в схеме используется инверсный в ход ⎩
Анализируя выражения (3),(4), получим: SJiKi = (2+1) + (1+1) + (1+1) + (2+1) + (1+1) + (1+1)=14. STi= (2+1+1) + (1+1+1) + (1+1+1) + (2+1+1) + (1+1+1+1)=18.
При определении сложности схем SJiKi, SТi, следует иметь ввиду, что
для
получения
сигналов⎯Qi,⎯Qi-3,⎯Qi+2
не
требуется
дополнительных затрат на инверсию, поэтому эти входы оценены по 1.
14 Сравнение показателей сложности схем показывает, что SJiKi< SТi и,
следовательно,
для
реализации
сдвигающего
регистра
целесообразно выбрать триггер JK -типа. Для
построения
схемы
сдвигающего
регистра,
требуется
определить выражения, отражающие логику формирования входных сигналов каждого разряда, учитывая кольцевую структуру регистра. Чтобы получить искомые выражения необходимо вместо индексов у переменных в формуле (3) подставить значения, соответствующие номерам разрядов от 1 до 8, при этом, если результат вычислений значения индекса окажется меньше или равен 0, то к результату следует прибавить число, указывающее количество разрядов в проектируемом кольцевом сдвигающем регистре; если результат окажется больше 8, то из него следует вычесть это число. Используя указанное правило, получим следующие выражения, описывающие логику формирования сигналов на входе JK-триггера каждого из 8-ми разрядов регистра:
J1 = yQ6 *⎯yQ2, J2 = yQ7 *⎯yQ3, J3 = yQ8 *⎯yQ4, J4 = yQ1 * ⎯yQ5,
15 J5 = yQ2 * ⎯yQ6, J6 = yQ3 * ⎯yQ7, J7 = yQ4 * ⎯yQ8, J8 = yQ5 * ⎯yQ1.
Фрагмент
схемы
сдвигающего
регистра,
построенный
по
полученным выражениям, приведен на рис. 6. 4.2. Проектирование синхронных пересчетных схем Поскольку пересчётные схемы, также как и сдвигающие регистры, относятся к классу последовательностных схем, то все замечания, касающиеся
проектирования
регистров,
справедливы
и
для
проектирования пересчётных схем. Задание на курсовое проектирование предусматривает синтез реверсивной
пересчётной
схемы,
вырабатывающей
заданную
последовательность двоичных эквивалентов чисел. В качестве примера
рассмотрим
реализующей
проектирование
следующую
пересчётной
последовательность
схемы, двоичных
эквивалентов чисел 3, 7, 5, 0, 6, 4, 2,
(5)
в которой предусмотрена возможность реверса, т.е. изменение порядка работы схемы на обратный
16
17 2, 4, 6, 0, 5, 7, 3.
(6)
Так как число выполняемых счётчиком операций К=2 (прямой счёт и обратный счёт), то в соответствии с (1) потребуется одна управляющая переменная у. Условимся, что при y=0 счётчик будет вырабатывать
последовательность
последовательность
чисел
(6).
чисел Описание
(5),
а
работы
при
у=1
счётчика
представим в виде таблицы 6. Вследствие нерегулярности структуры пересчётных схем при их описании необходимо рассматривать поведение каждого разряда счётчика в отдельности. Количество разрядов счётчика определяется как n = ] log (Nmax + 1) [,
где N
mах
- максимальное число в заданной последовательности.
Для рассматриваемого примера N mах=7, следовательно, n = ] log (7+1) [ =3.
Обозначим выходные сигналы каждого разряда счётчика как Q1, Q2, Q3 (Q1-старший разряд, Q3 - младший разряд). В столбцах Q1, Q2, Q3 табл. 6 перечислены разрешенные комбинации выходных сигналов счётчика. Порядок следования этих комбинаций строго определен выражениями (5), (6) и значениями переменной у. Так, при у=1 вслед за комбинацией сигналов
Q1=0, Q2=1, Q3=1,
(число 3) следует комбинация Q1=1, Q2=1, Q3=1 (число 7) и т. д. В столбцах ϕQ1, ϕQ2, ϕQ3 указан тип перехода, который осуществляется
18 каждым разрядом счётчика при соответствующем изменении состояния этого счётчика. Тип перехода определяется сравнением значений Q1, Q2, Q3 в рассматриваемом состоянии счётчика со значениями этих сигналов в следующем состоянии пересчётной схемы. Так, рассматривая состояние №=1, которое характеризуется значениями выходных переменных Q1=0, Q2=1, Q3=1 и состояние №=2, при котором Q1=1, Q2=1, Q3=1, определяем, что первый разряд пересчётной схемы при переходе этой схемы из состояния №=1 в состояние №=2 должен осуществить переход из 0 в 1, т.е. переход типа α. Аналогично определяются типы переходов которые осуществляют второй (переход типа 1) и третий (переход типа 1) разряды счётчика. Полученная информация заносится в первую строку табл. 6. Используя карту Карно для четырех переменных, опишем поведение каждого разряда счётчика. Информация для заполнения карт аналогичен ранее рассмотренному случаю описания поведения i-го разряда
сдвигающего
регистра.
Карты
Карно,
описывающие
поведение 1-го, 2-го и 3-го разрядов проектируемого реверсивного счетчика представлены на рис. 7. Q1- карта
Q2 - карта
yQ1 Q2Q3
Q3- карта
yQ1 00
01
11
10
00
α
β
1
α
01
x
β
1
11
α
1
10
0
1
Q2Q3
yQ1 00
01
11
10
00
α
α
α
0
x
01
x
0
α
β
0
11
1
β
β
α
10
1
β
Рис. 7
Q2Q3
00
01
11
10
00
0
0
0
α
x
01
x
β
1
x
1
1
11
1
1
1
β
β
β
10
α
0
0
0
19 Таблица 6 Описание синхронного реверсивного счётчика № сост. 1 2 3 4 5 6 7 Х 8 9 10 11 12 13 14 Х
В
у 0 0 0 0 0 0 0 Х 1 1 1 1 1 1 1 Х
качестве
Q1 0 1 1 0 1 1 0 Х 0 1 1 0 1 1 0 Х
примера
Q2 1 1 0 0 1 0 1 Х 1 0 1 0 0 1 1 Х
Q3 1 1 1 0 0 0 0 Х 0 0 0 0 1 1 1 Х
рассмотрим
ϕQ1 α 1 β α 1 β 0 Х α 1 β α 1 β 0 Х
ϕQ2 1 β 0 α β α 1 Х β α β 0 α 1 1 Х
схемную
ϕQ3 1 1 β 0 0 0 α Х 0 0 0 α 1 1 β Х
реализацию
проектируемого счетчика на базе D и JK- триггеров, словарное описание которых приведено в табл. 7. После выполнения операции подстановки в карты Карно (рис.7) значений входных сигналов триггеров из табл. 5, состояние входов триггеров трех разрядов счётчика будут
характеризоваться соответствующими картами
Карно, приведенными на рис.8 для D- триггера и на рис.9 для JKтриггера.
20
D1- карта
D2 – карта
yQ1 Q2Q3
D3 - карта
yQ1 00
01
11
10
00
1
0
1
1
01
x
0
1
11
1
1
10
0
1
Q2Q3
yQ1 00
01
11
10
00
1
1
1
0
x
01
x
0
1
0
0
11
1
0
0
1
10
1
0
00
01
11
10
00
0
0
0
1
x
01
x
0
1
x
1
1
11
1
1
1
0
0
0
10
1
0
0
0
Q2Q3
Рис. 8
J3 - карта
J1 – карта
yQ1 Q2Q3
J2 – карта
yQ1 00
01
11
10
00
1
x
x
1
01
x
x
x
11
1
x
10
0
x
yQ1 00
01
11
10
00
1
1
1
0
x
01
x
0
x
x
0
11
x
x
x
1
10
x
x
Q2Q3
00
01
11
10
00
0
0
0
1
x
01
x
x
x
x
x
x
11
x
x
x
x
x
x
10
1
0
0
0
Q2Q3
21 K1- карта
К2 - карта
yQ1
yQ1 00
01
11
10
00
x
1
0
x
01
x
1
0
11
x
0
10
x
0
Q2Q3
К3 - карта
Q2Q3
yQ1 00
01
11
10
00
x
x
x
x
x
01
x
x
x
1
x
11
0
1
1
x
10
0
1
Q2Q3
00
01
11
10
00
x
x
x
x
x
01
x
1
0
x
0
0
11
0
0
0
1
1
1
10
x
x
x
x
Рис.9
Проведя склеивание, как это показано на рис. 8 и рис. 9, получим следующие выражения D1 =⎯y⎯Q1⎯Q2 +⎯y Q2 Q3 + ⎯y Q1Q2 +y⎯Q2 + y⎯Q1⎯Q3, D2= ⎯y ⎯Q1 + Q1 ⎯Q2 ⎯Q3 + yQ3, D3= ⎯y⎯Q1 Q2 +⎯y Q2 Q3 + yQ1 Q3 + y⎯Q1⎯Q2, J1= ⎯Q2 + ⎯yQ3 + y⎯Q3, K1 =⎯y⎯Q2 + yQ2, J2=yQ1 + ⎯y⎯Q3, K2= ⎯yQ1 + y⎯Q3, J3=y⎯Q1⎯Q2 + ⎯y⎯Q1 Q2, K3=y⎯Q1 + ⎯y⎯Q2.
Преобразуем полученные функции в базис И-НЕ ----------------D1=⎯y⎯Q1⎯Q2 ⎯yQ2 Q3 ----D2=⎯y⎯Q1
------⎯yQ1 Q2 ------------Q1⎯Q2⎯Q3
----y⎯Q2 ---yQ3,
---------y⎯Q1⎯Q3,
22
---------D3 = ⎯y⎯Q1 Q2 ----J1 = Q2 ⎯yQ3
-------⎯y Q2 Q3 -----y ⎯Q3,
-------J2 = y Q1 ⎯y⎯Q3 J3 = y⎯Q1⎯Q2 ⎯y⎯Q1 Q2,
-------- ---------y Q3 Q1 y⎯Q1⎯Q2, ----K1 = ⎯y⎯Q2
----K 2= ⎯yQ1
----y Q2,
----y⎯Q3,
K3 = y ⎯Q1 ⎯y⎯Q2.
Проведем оценку сложности комбинационных схем управления в полученных счётчиках. Для счётчика, реализованного на базе триггеров, сложность определяется суммой SD=(2+1+1) + (2+1+1) + (2+1+1) + (1+1) + (1+1+1) + (1+1+1+1+1) + (2+1) + (1+1+1) + (1+1) + (1+1+1) + (2+1+1) + (2+1+1) + (1+1+1) + (1+1+1) + (1+1+1+1) = 51,
а для счётчика, реализованного на базе JK -триггеров, составит SJK = 1 + (2+1) + (1+1) + (1+1+1) + (2+1) + (1+1) + (1+1) + (1+1) + (2+1) + (1+1) + (2+1) + (1+1) + (1+1) + (1+1+1) + (2+1+1) + (1+1) + (1+1) + (2+1) + (1+1) = 46.
Как и при оценке сложности схемы управления регистром, в данном случае необходимо учитывать, что поскольку для получения сигналов ⎯Q1, ⎯Q2, ⎯Q3 не требуется дополнительных затрат, то эти входы при вычислении SD и SJK оценены по 1. Сравнение оценок сложности схем показывает, что SD < SJK, следовательно, для реализации пересчётной схемы целесообразно выбрать триггер JK - типа.
23 Фрагмент
схемы
счётчика,
построенный
по
полученным
выражениям для JK-триггера приведен на рис. 10.
4.3. Проектирование триггерных устройств При построении регистров и пересчётных схем используются, как правило,
двухтактовые
триггеры,
обладающие
свойством
внутренней задержки. Такие триггеры строятся, в основном, по схеме M-S (M-Master основная ступень и S-Slave - вспомогательная ступень). Целью проектирования триггерного устройства является поиск уравнений, определяющих состояние триггера и позволяющих построить его схему. Тип проектируемого триггера определяется на предыдущем этапе курсового проектирования по результатам вычисления сложности схем управления регистром или счётчиком.
24 Для проектирования выбирается тип триггера, минимизирующий сложность схемы. Содержание основных этапов синтеза триггерных устройств рассмотрим на примере синтеза JK - триггера. Исходными данными для проектирования являются функция внешних переходов триггера и условия переключения его выходного сигнала по отношению к синхросигналу С. Функцию внешних переходов JK-триггера определяет табл. 7, а условия переключения определим сами, предположив, что изменение выходного сигнала триггера Q будет происходить при переходе С из 1 в 0, т.е. задним фронтом сигнала С (можно условиться и о противоположном: при переходе С из 0 в 1), рис 11. Таблица 7 Таблица внешних переходов JK-триггера K 0 0 0 0 1 1 1 1
J 0 0 1 1 0 0 1 1
Qt 0→ 1→ 0→ 1→ 0→ 1→ 0→ 1→
Qt+1 0 1 1 1 0 0 1 0
ϕQi 0 1 α 1 0 β α β
Описание работы триггера можно представить в виде таблицы внутренних состояний и переходов триггерного устройства
25 Таблица 8
№ 000 сост. 1 (1) 2 3 4 5 6 7 8 9 (9) 10 11 12 13 14 15 16
001
Состояние сигналов CJK 011 010 110 111
101
100
(2) (3) (4) (5) (6) (7) (8) (10) (11) (12) (13) (14) (15) (16)
Q выхода 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Каждой комбинации входных (C, J и K), а также выходного (Qi) сигнала поставим в соответствие одно состояние триггера. Это состояние
определим
числом
в
скобках
и
расположим
на
пересечении строки, которая определяет номер состояния и значение сигнала Qi, характеризующего это состояние, и столбца, который определяет комбинацию входных сигналов. Так, комбинации сигналов С=0, J=0, K=0, Q=0 поставим в соответствие состояние № =1, для этого на пересечении первой строки и первого столбца табл. 6 поставим (1); комбинации сигналов С=0, J=0, K=1, Q=0 поставим в соответствие состояние №=2, на пересечении строки 2 и столбца 2
26 поставим (2) и т. д. Всего возможно 16 устойчивых состояний триггера табл.8. Прежде чем приступить к заполнению остальных позиций табл.8, необходимо
определить
ограничения
на
изменения
входных
сигналов. Эти ограничения определяются исходя из условий переключения выходного сигнала. Так, при С=1 необходимо запретить изменение сигналов J
и K.
Действительно, при
изменении сигнала С из 1 в 0 происходит изменение выходного сигнала триггера, т.е. перезапись информации из ступени М в ступень S
(рис. 11). Но прежде, чем произойдет перезапись
информации из М в S , необходимо записать эту информацию в ступень М. Моменту изменения сигнала С из 1 в 0 предшествует время, когда С=1, именно в это время, и происходит запись входной информации в ступень М. Если не запретить в это время изменения входной информации, то эти изменения могут произойти так близко к моменту перезаписи, что будет неизвестно, успели эти изменения записаться в ступень М или нет. Для исключения возможных неопределенных ситуаций следует запретить изменения сигналов J и K
при
С=1.
По
этой
же
причине
необходимо
запретить
одновременное изменение сигналов С, J и K. В то же время, при С=0 на изменения сигналов J и K накладывается.
никаких ограничений не
27 M-ступень
J
S-ступень
T
T
K
Q Q
Запись в М C
_Перезапись из М в S
P 1
1
0
0
} t
Рис. 11
Заполнять свободные позиции в табл. 8 необходимо по следующим правилам. Правило 1. Таблица заполняется по строкам. Движение по позициям строки соответствует изменению входных сигналов С и JK. Изменение входных сигналов, требующее перемещения в заполняемую позицию строки, оценивается относительно позиции, где стоит число в скобках. Правило 2. Если оценка изменения входных сигналов в заполняемой позиции, проведенная по правилу 1, показывает, что такое изменение невозможно (требуется одновременно изменить и С и J и K , или при С=1 необходимо изменить J и K), то в данной позиции ставится прочерк.
28 Правило 3. Если оценка изменения входных сигналов в заполняемой позиции, проведенная по правилу 1, показывает возможность изменения, то в данной позиции ставится число без скобок, соответствующее номеру нового состояния, в которое перейдет триггер. При этом следует учитывать возможность изменения сигнала при изменении С из 1 в 0 в соответствии с табл. 7. Пользуясь приведенными правилами заполним шестую строку табл. 8. Состояние (6) соответствует комбинации сигналов С=1, J=1, K=1 и Q=0. При изменении входных сигналов в состояние С=0, J=1, K=1, что не противоречит принятым ограничениям, поэтому необходимо определить новое состояние триггера. Поскольку С изменяется из 1 в 0, то возможно изменение сигнала Q , причем новое значение определяется по табл. 7 с учетом того, что J=1, K=1. Так как новое значение Q=1, то следовательно, при рассмотренном изменении входных сигналов, триггер должен перейти в состояние (11). Чтобы отметить этот переход на пересечении шестой строки и столбца С=0, J=1, K=1 необходимо поставить число 11 без скобок, т.к. переход из устойчивого состояния (6) в
состояние (11)
происходит через устойчивое состояние 11. Кроме того, находясь в состоянии (6), нельзя изменить входные сигналы таким образом, чтобы С=0, J=0 и K=0, так как это требует одновременного изменения сигналов С, J и K , которое запрещено. Следовательно, на пересечении шестой строки и столбца С=0, J=0, K=0 (табл. 8) следует поставить прочерк. Невозможно также
29 изменение сигналов в комбинации С=1, J=0,
K=0 (последний
столбец на пересечении шестой строки и столбца С=1, J=0, K=0) поэтому также необходимо поставить прочерк. Аналогичным образом заполняются остальные строки табл. 8. Результаты заполнения этой таблицы представлены в табл. 9. Количество внутренних состояний триггера можно сократить, объединяя строки табл. 9 по следующим правилам. Правило 4. Две или более строк таблицы внутренних состояний и переходов триггера можно объединить, если: - числа в соответствующих позициях строки совпадают; - в одной строке в данной позиции стоит прочерк, а в другой строке в этой же позиции стоит число. Правило 5. Если объединяются две строки, где в данной позиции стоит число в скобках и число без скобок, то в результирующей строке в данной позиции ставится число в скобках. Если объединяются строки, где в данной позиции стоит число, а в другой строке в этой же позиции стоит прочерк, то в результирующей строке в данной позиции ставится число.
30 Таблица 9 № сост. 000 1 (1) 2 1 3 1 4 1 5 6 7 8 1 9 (9) 10 9 11 9 12 9 13 14 15 16 9
001 2 (2) 2 2 2 10 (10) 10 10 2 -
Состояние сигналов CJK 011 010 110 111 3 4 3 4 (3) 4 6 3 (4) 5 12 (5) 11 (6) 11 12 11 12 (11) 12 14 11 (12) 13 12 (13) 3 (14) -
101 7 (7) 15 (15) -
100 8 (8) 16 (16)
Q выхода 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
Количество внутренних состояний триггера можно сократить, объединяя строки таблицы. Для рассматриваемого примера синтеза JK-триггера возможно несколько вариантов объединения строк табл. 9.Наиболее целесообразным является объединение строк (1, 2, 3, 4, 7, 8), (5, 6), (9, 10, 11, 12, 13, 16), (14, 15) (табл. 10). Минимизированная таблица внутренних состояний и переходов JK триггера имеет следующий вид:
31 Таблица 10 № состояния 1,2,3,4,7,8 5,6 9,10,11,12,13,16 14,15
000 (1) (9) -
CJK 001 011 010 110 111 (2) (3) (4) 5 6 11 12 (5) (6) (10) (11) (12) (13) 14 2 3 (14)
Q 101 (7) (15) (15)
100 (8) (16) -
0 0 1 1
Преобразуем табл. 10 в соответствии с количеством новых состояний триггера в табл.11. Так как число внутренних состояний уменьшилось до S =4, то для кодирования этих состояний достаточно k=logS=2 внутренних переменных. Обозначим их как у1 и у2. Каждому внутреннему состоянию триггера поставим в соответствие набор значений переменных у1 и у2. Эту операцию необходимо выполнить таким образом, чтобы в триггере не возникали критические состязания между сигналами обратных связей (состязания, приводящие к несанкционированным переходам триггера из состояния в состояние). Эти состязания будут устранены, если коды соседних состояний будут отличаться значениями не более чем в одном из разрядов, т.е. переходы между соседними
внутренними
состояниями
будут
реализованы
изменением только одной внутренней переменной. Составим граф переходов, отвечающий этому требованию (рис. 12), где 00, 01, 11, 10 - коды внутренних состояний 1, 2,3,4,соответственно. Эти коды определяются значениями переменных у1 и у2, например, код 01 соответствует значениями у1=0 и у2=1. Граф переходов для 2-х переменных имеет следующий вид:
32 1
y1=0; y2=0 y1=1; y2=0
2 00
01
10
11
4
y1=0; y2=1 y1=1; y2=1 3
Рис.12
Минимизированная табл. 11 имеет следующий вид: Таблица 11 № состояния 1,2,3,4,7,8 5,6 9,10,11,12,13,16 14,15
000 (1) (3) -
001 (1) (3) 1
011 (1) 3 (3) 1
010 (1) 3 (3) -
CJK 110 2 (2) (3) -
Q 111 2 (2) 4 (4)
101 (1) 4 (4)
100 (1) (3) -
0 0 1 1
Так как число внутренних состояний уменьшилось до 4-х, то для кодирования
этих
состояний
достаточно
двух
(k=log
4=2)
внутренних переменных. Обозначим их как y1 и y2. Каждому внутреннему состоянию триггера поставим в соответствие набор значений переменных y1,y2. В соответствии с выбранным вариантом кодирования состояний триггера,
минимизированная
таблица
JK-
триггера
будет
представлять собой совокупность 2-х таблиц, каждая из которых определяет одну из функций y1 или y2.
33 Таблица 12 Код внутр. состояния y1y2 00 01 11 10
00 11 -
00 11 00
00 11 11 00
CJK 00 01 11 01 11 11 -
01 00 01 10 10 10 10
00 11 -
Q 0 0 1 1
Возможны другие варианты кодирования состояний, однако они, как правило, приводят к уравнениям одинаковой сложности. В соответствии с выбранным вариантом кодирования состояний триггера составляется кодированная таблица переходов JK-триггера путем перенесения в каждую клетку табл. 11 двоичного набора значений внутренних переменных у1 и у2. Kодированная таблица переходов (табл.12) представляет собой совокупность двух таблиц, каждая из которых определяет одну из функций у1 и у2. Данные этой таблицы позволяют описать поведение переменных у1 и у2 в виде карт Карно (рис.13). В
каждой
клеточке
карты
Карно
проставляется
значение
переменной (у1 или у2), взятой из табл.12. Так в карте Карно, описывающей поведение у1, в третьей клеточке сверху, в крайнем левом столбце записана 1, которая является первой цифрой комбинации - 11 в соответствующей позиции табл.12. Эта единица подчеркнута в табл.12. Данные этой таблицы позволяют описать поведение y1 и y2 в виде карт Карно
34
Рис.13
Для устранения явления статического состязания сигналов в карты Карно кроме минимальных покрытий следует вводить избыточное покрытие, таким образом, чтобы каждая пара смежных покрытий входила бы, по меньшей мере, в одно общее покрытие. Проведя склеивание в картах Карно (рис. 13), определим выражения для y1 и y2. С учетом изложенного выше, получим следующие уравнения: y1 = y1*y2 + y2*⎯C + y1*C;
y2 = ⎯y1*C*J + y2*⎯C + y2*⎯J*K +y2*⎯J*⎯K
y2=⎯y1*C*J + y2*⎯C +y2*⎯K(J+⎯J) = y1*C*J +y2(⎯C+⎯K)
Полученные
уравнения
позволяют
построить
схему
проектируемого триггера. Перед построением схемы необходимо
35 преобразовать уравнения в требуемый базис, предварительно вынеся за скобки y1
и y2. В базисе И-НЕ эти выражения будут иметь
следующий вид:
y1 = y1(C+y2) + y2*⎯C = y1(⎯C*⎯y2) * y2*⎯C y2 = y2(⎯C+⎯K) + ⎯y1*C*J = y2(C*K) * ⎯y1*C*J
Схема проектируемого JK триггера, построенного по полученным выражениям с использованием логических элементов 2И-НЕ имеет следующий вид:
Рис.14
36 5. Требования к изложению и оформлению материалов курсового проекта
Прежде чем приступить к выполнению курсового проекта, необходимо детально ознакомиться с заданием на курсовое проектирование и методическими указаниями к выполнению каждого пункта задания. Пояснительная записка к курсовому проекту должна быть написана на обеих сторонах стандартных листов (210х279) с полями для пометок преподавателя и аккуратно сшита. Страницы, рисунки и таблицы в пояснительной записке должны быть пронумерованы. В пояснительную записку к курсовому проекту должны входить: 1.Титульный лист, на котором указывается название работы, фамилия студента, его шифр, номер группы и т.д. 2. Задание на курсовое проектирование. Вариант задания определяется по двум последним цифрам шифра студента в соответствующем столбце и строке таблиц, приведенных в начале методических указаний. Графическая часть курсового проекта должна содержать: • схему
электрическую
функциональную
проектируемого
устройства; • схему электрическую функциональную триггерного устройства;
37
ЛИТЕРАТУРА 1.
Пухальский Г.И., Новосельцева Т.Я. Цифровые устройства:
Учеб. пособие для Втузов.- СПб.: Политехника, 1996.- 885с.: ил. 2.
Новиков Ю.В. Основы цифровой схемотехники: Базовые
элементы и схемы. Методы проектирования. -М.: Мир, 2001.- 379 с.,ил. 3. Угрюмов Е.П. Цифровая схемотехника. - СПб.: БХВ –
Санкт-
Петербург, 2000. – 528 с.: ил. Содержание Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3 1. Цель курсового проектирования . . . . . . . . . . . . . . . . . . . . .3 2. Задачи курсового проектирования . . . . . . . . . . . . . . . . . . .. 3 3.Тематика курсового проектирования . . .. . ….. . . . . . . . .. .3 4. Расчетная часть курсового проектирования . . . . . . . . . . . .6 4.1. Проектирование синхронных сдвигающих регистров . . . . . .. .. . .. . . . . . . . . . . . . . .. . . . . . . . . . . . . . 6 4.2. Проектирование синхронных пересчетных схем.. . .. . 15 4.3. Проектирование триггерных устройств . . . . . . . . . . . . .24 5. Требования к изложению и оформлению материалов курсового проекта . . . . . . . . . . . . . . . . . .. . . . . . . . . .36 Литература . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37