Счётчик обратного счёта по модулю 7 на базе j-k триггеров
Федеральное агентство по образованию РФ
Государственное образовательное учреждение высшего профессионального
Образования
Дальневосточный Государственный Технический Университет
(ДВПИ им. В. В. Куйбышева)
Институт радиоэлектроники, информатики и электротехники
Кафедра электронной и компьютерной техники
Пояснительная записка
к курсовой работе
по дисциплине
«Моделирование»
на тему «Счётчик обратного счёта по модулю 7 на базе jk-триггеров»
Выполнил: Аникин С. В.
Гальчевский В. Г
Панченко С.Л.
Группа: Р-6741
Проверил: Добржинский Ю.В.
Оценка:_______________
.
Владивосток
2009
Оглавление
1 Логика построения счётчика. 3
3 Схема счётчика обратного счёта по модулю 7 на J-K триггерах. 5
4 Описание элементов схемы.. 7
5 Описание контактов схемы.. 7
6 Результаты моделирования схемы.. 8
7 Моделирование неисправной схемы.. 9
Счетчики предназначены для подсчета числа входных импульсов. Основным элементом при построении счетчиков являются триггерные устройства.
Счетчики можно классифицировать:
а) По основанию системы – двоичные и десятичные.
б) По способу организации счета – асинхронные и синхронные.
в) По направлению переходов – суммирующие, вычитающие, реверсивные.
г) По способу построения цепей сигналов переноса – с последовательным, сквозным, групповым и частично – групповым переносом.
Счетчиком обратного отчета – Это такой счетчик в котором изначально задается какая либо максимальная начальная величина и отчет идет в сторону уменьшения значения (до 0)
Смоделированный в этой работе счетчик является асинхронным двоичным счетчиком. Асинхронный двоичный счетчик представляет собой совокупность последовательно соединенных триггеров (D - или JK ), каждый из которых ассоциируется с битом в двоичном представлении числа. Если в счетчике m триггеров, то число возможных состояний счетчика равно 2m, и, следовательно, модуль счета М также равен 2m. Счетная последовательность в двоичном суммирующем счетчике начинается с нуля и доходит до максимального числа 2m - 1, после чего снова проходит через нуль и повторяется. В вычитающем двоичном счетчике последовательные двоичные числа перебираются в обратном порядке, и при повторении последовательности максимальное число следует за нулем.
Основная цель этого проекта – разработка и исследование счетчика обратного счета по модулю 7 на JK триггерах.
Счётчик представляет собой несколько последовательно включенных счётных триггеров. Поскольку каждый триггер даёт один разряд, то используя три триггера можно получить 3-разрядный счётчик (максимальное число, получаемое на выходе счётчика – 8). Для получения счёта по модулю 7 требуется установить гасители, которые представляют собой логические вентили (рис. 4, 5). Для возможности переключения между режимами получение данных и уменьшения значения счётчика служит мультиплексор.
Рисунок 1 - Функциональная схема jk триггера
JK- триггер относится к так называемым тактируемым триггерам, то есть он срабатывает по фронту тактового сигнала. Триггер имеет пять входов и два выхода. Вход S - служит для установки триггера в единичное состояние (от Set - установить). Вход R - вход сброса (от Reset - сбросить). Так же у JK-триггера имеется два выхода: прямой и инверсный. Для простоты дальнейшего повествования дадим им названия в соответствии с тем, как их название произносится:
Все, описанные выше входы и выходы, работают точно так же, как и в самом RS-триггере. То есть для нормальной работы на них должен быть подан сигнал логической единицы. При поступлении сигнала логического нуля на вход S, триггер устанавливается в единичное состояние (это, когда на выходе Q - сигнал логической единицы, а на выходе Q - сигнал логического нуля). При поступлении на вход R сигнала логического нуля, триггер сбрасывается в нулевое состояние (на Q - ноль, а на Q - единица).
Логика работы входов J, K и C такова: Если на входе J логическая единица, а на входе K - логический ноль, то по спаду синхроимпульса на входе C триггер установится в единичное состояние. Если на входе J - логический ноль, а на входе K - логическая единица, то по спаду синхроимпульса на входе C, триггер установится в нулевое состояние. В случае, когда и на входе J и на входе K логический ноль, то независимо от состояния сигнала на входе C состояние триггера не меняется. И последний режим работы, когда на обоих входах (J и K) присутствует сигнал логической единицы. В этом случае триггер работает в режиме делителя. Это означает, что при приходе каждого тактового импульса, по его заднему фронту состояние триггера меняется на противоположное. Единичное меняется на нулевое и наоборот. Для управления работой схемы служат логический вентиль выполняющий операцию «Исключающее или».
Рисунок 2 - Схема обратного счетчика по модулю 7 на JK триггерах.
На рис.2 изображено смоделированное устройство состоящее из:
а) Мультиплексор - коммутатор цифровых сигналов. Мультиплексор представляет собой комбинационное устройство с m информационными, n управляющими входами и одним выходом. Функционально мультиплексор состоит из m элементов конъюнкции, выходы которых объединены дизъюнктивно с помощью элемента ИЛИ с m входами. На одни входы всех элементов конъюнкции подаются информационные сигналы, а другие входы этих элементов соединены с соответствующими выходами дешифратора с n входами.
Рисунок.3 - Функциональная схема мультиплексора
б) Логический вентиль — базовый элемент цифровой схемы, выполняющий элементарную логическую операцию, преобразуя таким образом множество входных логических сигналов в выходной логический сигнал. Представлены на рисунках 4, 5,6
Рисунок 4 - Функциональная схема and
Рисунок 5 - Функциональная схема or
Рисунок 6 - Функциональная схема xor
в) Триггер — простейшее последовательностное устройство, которое может длительно находиться в одном из нескольких возможных устойчивых состояний и переходить из одного в другое под воздействием входных сигналов. Триггер может быть описан конечным автоматом, который способен хранить 1 бит данных, а также выполнять с ним различные операции в зависимости от входных сигналов.
Рисунок 7 - Функциональная схема j-k триггер
При модулировании структурной схемы в программе MODUS получим следующий код:
**R9.R.1B1.2B2.3B3.4PE.5C.6R.7F1.8F2.9F3.
*FMX1.N1.1D.2Q1.3K.4B1.5B2.6B3.7PE./8J1.9J2.10J3.
*FK2.N2.1Q1.2Q2./3K.
*FD3.N3.1F1.2F2.3F3./4D.
*FXOR2.N4.1J1.2PE./3X1.
*FXOR2.N5.1J2.2PE./3X2.
*FXOR2.N6.1J3.2PE./3X3.
*FJK.N7.3J1.4X1.5C.6R./1F1.2Q1.
*FJK.N8.3J2.4X2.5C.6R./1F2.2Q2.
*FJK.N9.3J3.4X3.5C.6R./1F3.
В данном коде мы описываем входы и выходы схемы в целом, и каждого элемента в частности.
Элемент FD3 (дизъюнкция)
X=1-3.
Z=4.
*4=1+2+3.
Элемент FJK (JK триггер)
X=3-6.
Z=1,2.
Y=1,7.
*A1=N7&5".
*7=5".
*A2=N6&(NA1&1+A1&(N4&1+3&N4+3&N1)).
*1=A2.
*2=NA2.
Элемент FK2 (конюнкция)
X=1-2.
Z=3.
*3=1&2.
Элемент FMX1 (Мультиплексор)
X=1-7.
Z=8-10.
#A=1-3.
#B=4-6.
#F=8-10.
*[F]=N7&[A]+7&[B].
Элемент FXOR2
X=1-2.
Z=3.
*3=1&N2+N1&2.
FD3:
1A-2B-3C./4D
FJK:
6R-5C-3J-4K./1F-2Q
FK2:
1A-2B./3C
FMX1:
7U0.1A0-2A1-3A2.4B0-5B1-6B2./8F0-9F1-10F2.
FXOR2:
1A-2B./3C
Структурная схема:
1D1-2D2-3D3-4C-5PE-6R./7F1-8F2-9F3.
Работает схема C:\modus\abt\SPM7
(режим - *R; библ.- MOD).
При тестировании исправной схемы мы задаем тесты (наборы), первые три цифры задают сигнал, четвертая («С») переключает режим, пятая («PE») — синхроимпульс, а шестая («R») отвечает за очистку памяти. Остальные цифры — значения на выходе.
Счетчик производит отсчет при смене значения синхроимпульса с «0» на «1».
№ набора |
Входные/Выходные параметры |
Описание |
1 (5 ит.) |
000001/000 |
Для начала работы схемы устанавливаем сброс в «1», в итоге на выходе получаем все нули. |
2 (3 ит.) |
100100/000 |
Проверяем, работает ли сохранение значения в памяти. Для этого подаем на вход «100», а счетчик включаем в режим приема значения — на контакт «C» подаем «1» |
3 (3 ит.) |
100110/100 |
Чтобы значение входного сигнала сохранилось в памяти подаем «1» на вход «PE». На выходе получаем наше входное значение |
4 (3 ит.) |
011100/100 |
Проверяем, перезаписывается ли сохраненное в памяти значение. Для этого подаем на вход новое значение «011», на «С» - «1», а на «РЕ» - «0». |
5 (2 ит.) |
011110/011 |
Чтобы значение входного сигнала сохранилось в памяти подаем «1» на вход «PE». На выходе получаем наше входное значение. |
6 (5 ит.) |
000001/000 |
Перед проверкой механизма обратного счета сбросим значения в памяти. Для этого устанавливаем сброс в «1», в итоге на выходе получаем все нули. |
7 (1 ит.) |
000000/000 |
Проверяем, есть ли сигнал на выходе, если на вход ничего не подавать. Видим, что сигнала нет. |
8 (5 ит.) |
000010/011 |
Проверяем работоспособность обратного счета. Для этого на вход «С» будем подавать «0» - это значит, что счетчик работает в режиме обратного счета. На вход «РЕ» будем последовательно подавать сначала значение «0», а затем «1» для запуска механизма обратного счета. |
9 (2 ит.) |
000000/011 |
10 (4 ит.) |
000010/101 |
11 (2 ит.) |
000000/101 |
12 (5 ит.) |
000010/001 |
13 (2 ит.) |
000000/001 |
14 (5 ит.) |
000010/110 |
15 (2 ит.) |
111000/110 |
16 (4 ит.) |
111010/010 |
17 (2 ит.) |
111000/010 |
18 (4 ит.) |
111010/100 |
19 (2 ит.) |
111000/100 |
20 (5 ит.) |
111010/000 |
На выходе получаем «000». Значит счетчик работает правильно. |
21 (2 ит.) |
111000/000 |
Убедимся, что после нулевого значения счетчик продолжит отсчет сначала, от «011» до «000». |
22 (5 ит.) |
111010/011 |
Моделируем неисправности.
Задание:< C:\modus\abt\SPM7 * MOD >.
Исходная схема:
всего неисправностей - 62;
полнота теста - 100.00%;
условная полнота - 100.00%.
Подадим тестовый набор на входы счетчика
000 001.
100 100.
100 110.
110 100.
110 110.
011 100.
011 110.
000 001.
000 000. 000 010.
000 000. 000 010.
000 000. 000 010.
000 000. 000 010.
111 000. 111 010.
111 000. 111 010.
111 000. 111 010.
111 000. 111 010.
В заключении данной курсовой работы нужно отметить, что создание счетчика обратного отчета по модулю 7 на JK триггерах трудоемко из за сложности их управления, по сравнению с другими видами триггеров. Но сложность управления компенсируются их универсальностью.
1) Игнатьева А. В., Максимцов М. М. ИССЛЕДОВАНИЕ СИСТЕМ УПРАВЛЕНИЯ, Москва, 2000
2) Патерсон Дж. Теория сетей Петри и моделирование систем. -- М.: Мир, 1984.
3) Приикер А. Введение в имитационное моделирование и язык СЛАМП. -- М.: Мир, 1987.
4) Советов Б. Я.. Яковлев С. А. Моделирование систем. -- М.: Высшая школа, 1985.
5) Советов Б. Я., Яковлев С. А. Моделирование систем (2-е изд.). -- М.: Высшая школа, 1998.
6) Советов Б. Я.. Яковлев С. А. Моделирование систем: Курсовое проек-тирование. -- М.: Высшая школа, 1988.
7) Короткое Э.М. Исследование систем управления. -- М.: “ДеКА”, 2000.