Микросхема ПЗУ в управляющем автомате с МПУ выбрана неверно - Радиоэлектроника - Скачать бесплатно
Московский Авиационный институт
(технический университет)
КАФЕДРА 403
Расчетно-пояснительная записка
к курсовой работе по дисциплине
Вычислительные системы и микропроцессорная техника
выполнил: студент гр. 04-417
Левин О.А.
проверил: Герасимов А.Л.
МОСКВА 1997
Содержание
1. Анализ задания - 2
2. Комбинационный вариант - 2
3. Алгоритм работы устройства - 4
4. Микропрограмма - 5
5. Управляющий автомат с жесткой логикой - 5
6. Управляющий автомат с МПУ - 8
7. Выбор элементной базы - 10
8. Составление программы - 12
Задание
ВАРИАНТ №17
Задается входной код D{1:32}. Спроектировать вычислитель, который
определяет номер разряда самой первой и самой последней единиц, стоящих
между нулями. Предусмотреть реакцию проектируемого устройства в случае
отсутствия таких сигналов.
Анализ и уточнение задания
Так как входной код - тридцатидвухразрядный, то для получения интересующей
нас информации необходимо два выходных шестиразрядных кода. Реакцией
устройства в случае отсутствия интересующих нас кодовых комбинаций будет
значение первого и второго выходных кодов соответственно:
[pic]
[pic]
Очевидно, что в тридцатидвухразрядном коде единица, стоящая между
двумя нулями ни при каких обстоятельствах не может находится ни в первом ни
в тридцать втором разряде кода.
Тактовая синхронизация будет осуществляться внешним генератором тактовых
импульсов с частотой 20 МГц
По окончании обработки входного кода должен вырабатываться специальный
сигнал, позволяющий следующему устройству считать выходные данные с
проектируемого устройства.
Обобщенная функциональная схема проектируемого устройства может быть
представлена в следующем виде:
D{1:32}
B{1:6}
F C{1:6}
СТРОБ
УСЧИТ
Рисунок 1
Обобщенная функциональная схема устройства
Комбинационный вариант устройства
Функциональная схема комбинационного устройства, осуществляющего
параллельную обработку входного кода представлена на рисунке 2. Входной код
D{1:32} разбивается на пересекающиеся элементы по три разряда: D’{1:3},
D’{2:4},...D’{30:32}. Крайние разряды D’ проходят через инверторы DD1, DD3,
DD4, DD6, DD7, DD9,...DD88, DD90. Проинвертированные крайние разряды вместе
с центральным разрядом элемента поступают на логическую схему И, на выходе
которой в случае если D{i-1, i, i+1}=010 сформируется высокий логический
уровень напряжения, приводящий в действие соответствующий элемент индикации
на внешней панели устройства. При визуальном контроле внешней панели
устройства по расположению работающих элементов индикации можно определить
номер разряда первой и последней единиц, стоящих между нулями.
Для реализации данной схемы потребуется 20 микросхем 1533ЛН1 (6
логических элементов НЕ), 10 - КР1533 (3 элемента 3И), 4 - КР531ЛЕ7 (2
элемента 5 ИЛИ-НЕ), 1 - 1533ЛИ6 (2 элемента 4И), 1 - 1533ЛИ1 (4 элемента
2И).
Основным недостатком данной схемы является невозможность дальнейшей
обработки выходной информации.
НАЧАЛО
НЕТ
СТРОБ
РЕГ В {1:32}=D{1:32}
РЕГ А{1:32}=РЕГ В{1:32}
СЧЕТ Ц1=2
ДА
РЕГ А{1}=0 & РЕГ А{2}=1 & РЕГ А{3}=0
НЕТ
РЕГ А{1:32}=РЕГ А{2:32}.0
СЧЕТ Ц1=СЧЕТ Ц1 +1
НЕТ
СЧЕТ Ц1=32
ДА
РЕГ А{1:32}=РЕГ В{1:32}
СЧЕТ Ц2=31
ДА
РЕГ А{32}=0 & РЕГ А{31}=1 & РЕГ А{30}=0
НЕТ
РЕГ А{1:32}=РЕГ А{1:31}.0
СЧЕТ Ц=СЧЕТ Ц -1
НЕТ
СЧЕТ Ц=1
B {1:6}=СЧЕТ Ц1; С {1:6}=СЧЕТ Ц2
КОНЕЦ
Рисунок 3
Блок-схема алгоритма работы устройства
Микропрограмма
Переменные:
Входные:
. D{1:32} - входной код
. строб
Выходные:
. В {1:6}, С{1:6} - выходной код
Внутренние:
. РЕГ А{1:32}, РЕГ В{1:32} - регистры
. СЧЕТ Ц1{1:6}, СЧЕТ Ц2{1:6} - счетчики циклов
Признаки:
. Р1 - строб=1
. Р2 - РЕГ А{1}=0 & РЕГ A{2}= 1 & РЕГ А {3}=0
. Р3 - РЕГ А{32}=0 & РЕГ A{31}= 1 & РЕГ А {30}=0
. Р4 - СЧЕТ Ц1 {1:6} = 32
. Р5 - СЧЕТ Ц2 {1:6} = 1
Программа
М1 ЕСЛИ НЕ Р1 ТО М1
(СТРОБ) РЕГ В{1:32}=D {1:32}
(УЗАП1) РЕГ А{1:32}=РЕГ В {1:32}
(УН1) СЧЕТ Ц1 {1:6} =2
М2 ЕСЛИ Р2 ТО М3
(УСДВ1) РЕГ А{1:32}=РЕГ А{2:32}.0 }
(УСЧ1) СЧЕТ Ц1 {1:6}=СЧЕТ Ц1 {1:6}+1 } УЭ1
ЕСЛИ НЕ Р4 ТО М2
М3 (УЗАП1) РЕГ А{1:32}=РЕГ В {1:32}
(УН2) СЧЕТ Ц2 {1:6} =31
М4 ЕСЛИ Р3 ТО М5
(УСДВ2) РЕГ А{1:32}=0.РЕГ А{1:31} }
(УСЧ2) СЧЕТ Ц2 {1:6}=СЧЕТ Ц2 {1:6}-1 } УЭ2
ЕСЛИ НЕ Р5 ТО М4
М5 (УСЧИТ1) В{1:6}=СЧЕТ Ц1 {1:6} }
(УСЧИТ2) С{1:6}=СЧЕТ Ц2 {1:6} }
УЭ3
КОНЕЦ (ИДТИ К М1)
Как видно из текста микропрограммы, некоторые сигналы можно объединить
и заменить эквивалентными сигналами. Функциональная схема операционной
части устройства приведена на рисунке 4.
Разработка управляющего автомата с жесткой логикой
Управляющий автомат с жесткой логикой будет реализовываться в виде
классического конечного автомата Мили или Мура. На основании блок-схемы
алгоритма работы устройства определим количество состояний для каждого типа
автомата. Обозначим состояния автомата Мура буквой S, а состояния автомата
Мили - S’. Как видно из рисунка 5, у автомата Мура будет шесть состояний, в
то время как у автомата Мили - лишь четыре.
НАЧАЛО
S0
S’0
0 Р1
УН 1, УЗАП 1 S1
0
S’1 1
Р2
УЭ 1 S2
УЗАП 1, УН 2 S3
0
Р4 S’2
УЗАП 1 УН 2 S3
0
S’3 1
Р3
УЭ 2 S5
УЗАП 1 УЭ 3 S4
0
Р5 S’4
S6 УЗАП 1 УЭ 3
КОНЕЦ
S’0
Рисунок 5.
Состояния конечных автоматов Мили и Мура.
Таким образом, определим, что управляющее устройство необходимо
синтезировать в виде конечного автомата Мили
Р1/—
P1/УН 1, УЗАП 1 Р2/УЭ 1 Р4/УН
2, УЗАП 1 Р3/УЭ 2
S0 S1 S2
S3 S4
Р4/—
Р5/—
Р2/УН 2, УЗАП 1
Р3/УЭ 3
Р5/УЭ 3
Граф состояний автомата Мили.
| |S0|S1 |S2 |S3 |S4 |
|Q1|0 |0 |0 |1 |1 |
|Q2|0 |0 |1 |1 |0 |
|Q3|0 |1 |1 |1 |1 |
Таблица 1
Кодированная таблица состояний.
|ВХОД |S0 |S1 |S2 |S3 |S4 |
|P1 |S1/УН 1,УЗАП1| | | | |
|НЕ Р1 |S0/- | | | | |
|Р2 |
|