Автор работы: Пользователь скрыл имя, 23 Декабря 2012 в 20:21, курсовая работа
Микропроцессоры и микропроцессорные системы являются в настоящее время наиболее массовыми средствами вычислительной техники. Разработка микропроцессорных систем является сложной проблемой, стоящей на стыке общесистемных вопросов с вопросами проектирования средств вычислительной техники и разработки программного обеспечения.
Широкая автоматизация процессов в сферах производства, научных исследований, эксплуатации оборудования с использованием средств вычислительной техники является основным направлением интенсификации физического и интеллектуального труда человека, повышения производительности труда.
Министерство образования Российской Федерации
Тульский государственный
Курсовая работа
по дисциплине:
«Вычислительные машины, системы и сети»
«Разработка микропроцессорной системы»
Выполнили: ст. гр. xxxxxx Xxxxxxx X.X.
ст. гр. xxxxxx Xxxxxxx X.X.
Проверил: доц., к.т.н. Морозов О.О.
Микропроцессоры и микропроцессорные системы являются в настоящее время наиболее массовыми средствами вычислительной техники. Разработка микропроцессорных систем является сложной проблемой, стоящей на стыке общесистемных вопросов с вопросами проектирования средств вычислительной техники и разработки программного обеспечения.
Широкая автоматизация
процессов в сферах производства,
научных исследований, эксплуатации
оборудования с использованием средств
вычислительной техники является основным
направлением интенсификации физического
и интеллектуального труда
Основной технической базой автоматизации управления технологическими процессами являются специализированные микропроцессорные устройства (МПУ). При изучении специализированных МПУ рассматриваются приемы проектирования как аппаратных, так и программных средств МПУ. Проектирование аппаратных средств требует знания особенностей микропроцессорных комплектов микросхем различных серий. Проектирование программных средств требует знаний, необходимых для выбора метода и алгоритма решения задач, входящих в функцию МПУ, для составления программы (часто с использованием языков низкого уровня – языка кодовых комбинаций, языка Ассемблера), а также умение использовать средства отладки программ.
Анализируя задание, выбираем центральный процессор (ЦП) исходя из разрядности шины данных (ШД) – 8 бит, общего объема памяти 3 КБайт – шина адреса 16 разрядов. Наиболее подходящий и довольно простой процессор – Z80 фирмы Zilog.
Рисунок 1. Схема включения центрального процессора.
Требуется спроектировать блок запоминающего устройства со следующими параметрами:
-объем ОЗУ – 1 Кб;
-объем ПЗУ – 2 Кб;
Для хранения в ОЗУ 1 Кб необходимо 1 микросхема (банк) с организацией 128 б х 8. Для хранения в ПЗУ 2 Кб необходимо 1 микросхема (банк) с организацией 256 б х 8.
Разряды шины адреса А0 – А9 поступают одновременно на все микросхемы ОЗУ, т. к. для адресации (выбора) 1028 восьмиразрядных ячеек памяти необходимо 10 двоичных разрядов (210= 1024). Аналогично для адресации памяти ячеек ПЗУ используется 11 разрядов.
Выбор банка ОЗУ либо ПЗУ производится в зависимости от значения разряда А11. Составим таблицу адресов памяти (смотри таблицу 1). Начальный адрес страницы ПЗУ 00 00h, а конечный – 0B FFh. Начальный адрес страницы ОЗУ формируется как двоичная сумма конечного адреса страницы ОЗУ и логической единицы в младшем разряде., т.е. имеет место перенос единицы в разряд А11. Для определения конечного адреса этой страницы прибавляем к начальному адресу 211-1, т.е. код с логическими единицами в разрядах А0 – А9.
Таблица 1. Адресное пространство памяти.
А15 |
А14 |
А13 |
А12 |
А11 |
А10 |
А9 |
А8 |
А7 |
А6 |
А5 |
А4 |
А3 |
А2 |
А1 |
А0 |
Адрес |
ЗУ |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
Нач. 00 00h |
ПЗУ |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Кон. 07 FFh | |
0 |
0 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
Нач. 08 00h |
ОЗУ |
0 |
0 |
0 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
Кон. 0B FFh |
На основании произведенных рассуждений строится адресный дешифратор. На вход разрешения дешифратора подается сигнал «Запрос памяти» и сигналы «Чтение» и «Запись», объединенные по «И».
На микросхемы ОЗУ, кроме сигнала «Выбор микросхемы», необходимо подать сигнал «Чтение/Запись». Если на этом входе присутствует логическая единица, то осуществляется запись байта информации с шины данных в ячейку с адресом, установленным в разрядах А0 – А9, иначе осуществляется считывание данных из микросхемы в шину данных. Такой режим работы микросхем обеспечивается подачей сигнала «Запись памяти» на вход «Чтение/Запись».
Рисунок 2. Дешифратор памяти.
От фотодатчика сигнал подается на аналого-цифрофой преобразователь, с которого через шинный драйвер снимается значение и анализируется программой. В схеме есть еще один шинный драйвер на который подается задаваемый уровень освещенности.
Управляющее напряжение на осветитель через усилитель мощности подается с 16-разрядного цифроаналогового преобразователя. Задающее значение которого снимается с 2-х 8-ми разрядных регистра.
По заданию необходимо отображать уровень освещенности в некоторых единицах на 3-х 7-ми сегментных индикаторах. Для их управления используем дешифратор (каждый на свой индикатор). А также регистр для задачи состояния последних.
Выбор той или иной микросхемы осуществляется при помощи дешифратора ввода-вывода, который управляется 3-мя младшими адресными битами.
Рисунок 3. Схема работы портов.
В соответствии с заданием программа разрабатывается на Ассемблере с использованием системы команд выбранного процессора. Логически программа состоит из:
- обработчика маскированного прерывания, в котором происходит чтение входных данных и их обработка в соответствии с алгоритмом, изложенным в задании.
- основной программы,
где устанавливается режим
Таблица 2. Распределение памяти.
Диапазон адресов |
Содержание памяти |
Область памяти |
00 00h – 00 22h |
Основная программа |
ПЗУ |
00 23h – 00 64h |
Подпрограмма обслуживания INT | |
0B FFh |
Стек |
ОЗУ |
; A – множитель (в зависимости от осветителя)
; В – скорость
; Отображаем значение на
xor A, A ; Обнуляем А (1)
xor D, D ; Обнуляем D (1)
xor E, E ; Обнуляем E (1)
mov C, B ; (2)
Cmp B, 200 ; Сравниваем B с числом 200 (2)
Jl m200 ; Если А<200, то переходим к метке m200 (2)
Or A, 10000000b ; Записываем в регистр A биты (2)
Sub C, 200 ; Вычитаем из регистра С число 200 (2)
Jmp Decidki ; Переход к метке Desidki (3)
m200: Cmp B, 100 ; Сравниваем А с числом 100 (2)
Jl Desidki ; Если B<100, то переходим к метке Desidki (2)
Or A, 01000000b ; Записываем в регистр A биты (2)
Sub C, 100 ; Вычитаем из регистра С число 100 (2)
Desidki: Cmp C, 10 ; Сравниваем С с числом 10 (2)
Jl EndDes ; Если С<10, то переходим к метке EndDes (2)
Sub C, 10 ; Вычитаем из регистра С число 10 (2)
Inc D ; Увеличиваем регистр D на 1 (1)
Jmp Desidki ; Переход к метке Desidki (3)
EndDes: Mov E, D ; Записываем в регистр Е значение регистра D (2)
Shl E ; Сдвигаем знач. регистра Е на один бит влево (1)
Shl E ; Сдвигаем знач. регистра Е на один бит влево (1)
Shl E ; Сдвигаем знач. регистра Е на один бит влево (1)
Or A, E ; Записываем в регистр A биты (2)
Or A, C ; Записываем в регистр A биты (2)
Out Write, A ; Отображаем на индикаторы (2)
1 Пухгальский Г. И.,
Новосельцева Т. Я.
связь, 1990.
2 Хоровиц П., Хилл У. Искусство схемотехники том 2. – М.: МИР, 1986.
3 Микропроцессоры и
микропроцессорные комплекты
4 Калабеков Б.А.
5 Балашов Е.П., Пузанков
Д.В. Микропроцессоры и
6 Микропроцессоры и
микроЭВМ в системах