Автор работы: Пользователь скрыл имя, 22 Декабря 2013 в 01:34, курсовая работа
Проектирование новой микроЭВМ обычно начинается с описания её архитектуры, представляющей собой модель микроЭВМ с точки зрения программиста. Модель в процессе проектирования преобразуется в структуру микроЭВМ, определяющую состав, назначения и взаимные связи необходимых аппаратурных компонентов, реализующих желаемую архитектуру.
Многие аппаратурные компоненты выбираются из выпускаемых промышленностью СБИС и применяются в качестве крупных строительных блоков микроЭВМ
Введение 4
1 Функциональное проектирование 5
1.1 Анализ исходных данных 5
1.2 Выбор и обоснование элементной базы 6
1.3 Выбор и обоснование структурной схемы 22
2 Структурное проектирование 26
2.1 Разработка структуры блока ЦП 26
2.2 Разработка структуры блока памяти 29
2.3 Разработка структур интерфейсных устройств 32
2.4 Разработка системного интерфейса 49
3 Схемотехническое проектирование 53
3.1 Расчёт электрических параметров элементов 56
3.2 Обеспечение электрической совместимости элементов 60
4 Конструкторско-технологический расчёт печатной платы 62
Заключение 70
Список используемых источников 71
Функциональная схема последовательного асинхронного интерфейса, настроенного на вывод, приведена на рисунке 2.10.
Разработка клавишного устройства и устройства отображения.
Логика клавиатуры и индикации в разрабатываемой микроЭВМ будет сосредоточена вокруг БИС программируемого контроллера клавиатуры и индикации КР580ВВ79. Этот микроконтроллер будет отвечать за сканирование клавиш, кодирование матрицы клавиатуры и обновление элементов индикации (7-сегментных светодиодных индикаторов).
Контроллер КР580ВВ79 занимает 2 порта в адресном пространстве ввода/вывода МП, и, поскольку он также сопрягается с младшим байтом шины данных (D0-D7), оба порта будут иметь чётные адреса FFF2h и FFF0h. Функционирование микросхемы будет определяться адресным битом A1, сигналами , , согласно таблице 2.10. Тактирование микросхемы КР580ВВ79 будет осуществляться от PXCLK = CLK/16= 0,768 МГц.
Таблица 2.10 – Управление портами БИС КР580ВВ79
Сигналы на входах |
Направление передачи информации | |||
A1 |
||||
1 |
X |
X |
X |
Канал данных à третье состояние |
0 |
0 |
0 |
1 |
Чтение ОЗУ дисплея или клавиатуры |
0 |
0 |
1 |
0 |
Запись в ОЗУ дисплея |
0 |
X |
1 |
1 |
Запрещение любой операции |
0 |
1 |
0 |
1 |
Чтение состояния |
0 |
1 |
1 |
0 |
Запись команды |
Программирование режимов работы БИС, запись чтение информации ОЗУ дисплея, чтение внутреннего состояния осуществляется по внутренней шине данных при подаче соответствующих управляющих сигналов. Коды команд поступают в БИС по шине данных от МП. Команда записывается по положительному фронту сигнала , затем она декодируется и выполняется. Синхронизация осуществляется счётчиком синхронизации, который состоит из предварительного делителя частоты и 10-разрядного двоичного счётчика. Делитель частоты предназначен для выработки базовой частоты синхронизации. Его коэффициент деления программируется в пределах от 2 до 31. Этот коэффициент должен быть выбран таким образом, чтобы обеспечить базовую частоту синхронизации не более 100 кГц. Базовая частота делится 10-разрядным счётчиком для получения соответствующих периодов сканирования матриц дисплея. Счётчик сканирования вырабатывает сигналы сканирования индикаторов дисплея (S0-S3) и может работать в двух режимах.
Режим кодированного сканирования. В этом режиме обеспечивается выдача на выходы S0-S3 двоичного кода 4 младших разрядов счётчика синхронизации, который необходимо дешифрировать внешним дешифратором для получения сигналов сканирования матриц дисплея и клавиатуры.
Режим дешифрированного сканирования. В этом режиме дешифрируется внутри контроллера 2 младших разряда счётчика синхронизации и обеспечивается выдача на выходы S0-S3 дешифрированных сигналов.
Клавиатурная часть
Основные команды управления контроллером описаны в таблице 2.11.
Таблица 2.11 – Команды режимов КР580ВВ79
Управляющее слово |
Режимы | ||||||||||||
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 | ||||||
Установка режимов работы клавиатуры и дисплея | |||||||||||||
0 |
0 |
0 |
0 |
0 |
X |
X |
X |
8-символьный, 8-битный дисплей, левый вывод | |||||
0 |
0 |
0 |
0 |
1 |
X |
X |
X |
16-символьный, 8-битный дисплей, левый вывод | |||||
0 |
0 |
0 |
1 |
0 |
X |
X |
X |
8-символьный, 8-битный дисплей, правый вывод | |||||
0 |
0 |
0 |
1 |
1 |
X |
X |
X |
16-символьный, 8-битный дисплей, правый вывод | |||||
0 |
0 |
0 |
X |
X |
0 |
0 |
0 |
Кодированное сканирование клавиатуры с обнаружением 2-клавишных сцеплений | |||||
0 |
0 |
0 |
X |
X |
0 |
0 |
1 |
Декодированное сканирование клавиатуры с обнаружением 2-клавишных сцеплений | |||||
0 |
0 |
0 |
X |
X |
0 |
1 |
0 |
Кодированное сканирование клавиатуры с обнаружением N-клавишных сцеплений | |||||
0 |
0 |
0 |
X |
X |
0 |
1 |
1 |
Декодированное сканирование клавиатуры с обнаружением N-клавишных сцеплений | |||||
0 |
0 |
0 |
X |
X |
1 |
0 |
0 |
Кодированное сканирование матрицы датчиков | |||||
0 |
0 |
0 |
X |
X |
1 |
0 |
1 |
Декодированное сканирование матрицы датчиков | |||||
0 |
0 |
0 |
X |
X |
1 |
1 |
0 |
Стробированный ввод, кодированное сканирование | |||||
0 |
0 |
0 |
X |
X |
1 |
1 |
1 |
Стробированный ввод, декодированное сканирование | |||||
Программирование синхронизации | |||||||||||||
0 |
0 |
1 |
P |
P |
P |
P |
P |
PPPPP – коэффициент деления от 1 до 31 | |||||
Чтение ОМ ОЗУ датчиков | |||||||||||||
0 |
1 |
0 |
A1 |
X |
A |
A |
A |
A1 – флаг автоинкремента; AAA – адрес ячейки ОЗУ датчиков | |||||
Чтение ОЗУ дисплея | |||||||||||||
0 |
1 |
1 |
A1 |
A |
A |
A |
A |
A1 – флаг автоинкремента; AAAA – адрес ячейки ОЗУ дисплея | |||||
Запись в ОЗУ дисплея | |||||||||||||
1 |
0 |
0 |
A1 |
A |
A |
A |
A |
A1 – флаг автоинкремента; AAAA – адрес ячейки ОЗУ дисплея |
Информация на дисплей может выводиться двумя способами: слева направо без сдвига или справа налево со сдвигом.
Программируемый интерфейс клавиатуры/дисплея микросхемы допускает одновременное выполнение в микрокомпьютерных системах операций с клавиатурой и дисплеем. Переход микросхемы из одного режима в другой осуществляется соответствующим кодом команды и не требует предварительного аппаратного или программного сброса.
Продолжение таблицы 2.11 – Команды режимов КР580ВВ79
Управляющее слово |
Режимы | ||||||||||||
D7 |
D6 |
D5 |
D4 |
D3 |
D2 |
D1 |
D0 | ||||||
Команда сброс | |||||||||||||
1 |
1 |
0 |
1 |
0 |
X |
X |
1 |
Начальный код в ОЗУ дисплея 00h | |||||
1 |
1 |
0 |
1 |
1 |
0 |
X |
1 |
Начальный код в ОЗУ дисплея 20h | |||||
1 |
1 |
0 |
1 |
1 |
1 |
X |
1 |
Начальный код в ОЗУ дисплея FFh | |||||
1 |
1 |
0 |
X |
X |
X |
1 |
0 |
Опустошение ОМ ОЗУ датчиков | |||||
Сброс прерывания | |||||||||||||
1 |
1 |
1 |
1 |
X |
X |
X |
X |
Сброс сигнала IRQ в режиме сканирования матрицы датчиков и установление специального режима обнаружения ошибок в клавишном режиме |
На рисунке 2.11 показана функциональная схема клавиатурная и дисплейная часть разрабатываемой микроЭВМ с использованием микросхемы КР580ВВ79.
Для разработанной системы клавиатуры и индикации необходимо запрограммировать контроллер на 8-символьный, 8-битный дисплей, левый вывод, кодированное сканирование клавиатуры с обнаружением 2-клавишных сцеплений. Для этого команда установки режимов работы будет 00000000h = 00h. Рассчитаем по формуле (2.11) коэффициент деления K для обеспечения времени сканирования клавиатуры и индикаторов Tскан.= 0,6 мс.
Поэтому команда установки коэффициента синхронизации будет 00111101b = 3Dh.
Так как устанавливается режим кодированного сканирования клавиатуры, то выходы S1-S3 представляют собой двоичный код. Дешифратор DD12 преобразует этот код для обеспечения 8 сигналов возбуждения одного из восьми выходных линий, которые используются для разрешения отдельных 7-сегментных индикаторов: DA1-DA8. Восьмибитовый код, определяющий, какие сегменты индикатора должны гореть, поступает с выходов DSPB0-DSPB3, DSPA0-DSPA3 контроллера (“0” зажигает соответствующий сегмент индикатора).
Выводы 1 и 2 дешифратора DD11 также используется для обеспечения сигнала сканирования 2 рядов матрицы клавиатуры. Выходы с матрицы клавиатуры поступают на входы RET0-RET7 в унарном инвертированном коде, представляя восемь колонок клавиш. Поэтому клавишное устройство представляет собой матрицу 2 8 ключей-клавиш. При нажатии клавиши во время сканирования ряда разрешается соответствующая колонка за счёт дешифратора DD11. БИС КР580ВВ79 использует значение бита разрешённой колонки и значение сканируемого ряда для генерации восьмибитового кода. Этот код сохраняется в очереди ОЗУ клавиатуры.
Диоды VD1 и VD2 необходимы для задания направления тока при замыкании каждого ключ клавиатурной матрицы.
Также для правильной работы матрицы клавиатуры предусмотрены подтягивающие резисторы, подключённые к источнику питания +5В.
Рисунок 2.11 – Функциональная схема клавиатурной и дисплейной части микроЭВМ
2.4 Разработка системного интерфейса
Системный интерфейс будет содержать линии, приведённые в таблице 2.12. В этой же таблице описано и назначение данных линий.
Таблица 2.12 – Описание линий системного интерфейса
Название линии |
Описание назначения |
А19…А0 |
Шина адреса. Адресация ОЗУ, ПЗУ и устройств ввода/вывода |
D7…D0 |
Шина данных |
Сигнал обращения к памяти/порту ввода/вывода | |
Сигнал чтения из памяти | |
Сигнал записи в память | |
Сигнал чтения из устройств ввода/вывода | |
Сигнал записи в устройства ввода/вывода | |
Разрешение анализа готовности | |
READY |
Сигнал готовности |
PXCLK |
Сигнал тактирования периферийных БИС |
RES |
Сигнал очистки устройств микроЭВМ |
- |
Сигналы выборки периферийных устройств |
CSram |
Сигнал выборки ОЗУ |
CSrom |
Сигнал выборки ПЗУ |
ALE |
Строб записи в Регистр |
Временные диаграммы работы МП представлены на рисунке 2.12.
Цикл начинается с формирования в такте T1 сигнала определяющего тип устройства (ЗУ или ВУ), к которому производится обращение для пересылки данных. Длительность сигнала IO/M равна длительности цикла шины, и он используется для селекции адреса устройства. В такте и в начале такта МП выставляет адрес ЗУ на линии и либо адрес ВУ на линии . Одновременно с этим МП выдаёт строб адреса , по спаду которого адрес фиксируется во внешних регистрах-защёлках. На выходах этих регистров адрес сохраняется в течении всего цикла шины (до записи нового значения).
В такте происходит переключение шин: на линии поступают сигналы состояния , которые сохраняются до конца такта . В дальнейшем значения этих сигналов зависят от вида выполняемого действия (чтение или запись).
В цикле чтения в такте линии переводятся в третье состояние до появления данных от адресного устройства. В тактах вырабатывается сигнал чтения , который указывает этому устройству на необходимость выдачи данных. Для управления буферами данных, которые обычно подключаются к линиям, в тактах формируется сигнал DE, разрешающий передачу данных. Направление передачи данных при чтении определяет сигнал , действующий в течение всего цикла.
После выполнения чтения и установления сигнала МП заканчивает такт следующим образом: линии находятся в высокоомном состоянии, сигналы , , , неактивны, буферы данных отключены от канала.
В цикле записи в такте адрес на линиях заменяется данными, предназначенными для записи в адресуемое устройство. Данные остаются действительными до середины такта Т4 и сопровождаются сигналом , который используется в качестве строба для записи данных в устройство. Сигнал появляется уже в такте и используется для подготовки буферов к передачи данных. Сигнал , переключающий буферы на передачу данных в направлении к МП, удерживается на протяжении всего цикла записи. После установления такт заканчивается так же, как и при выполнении цикла чтения.
Временная диаграмма работы параллельных портов в режиме 1, вывода приведена на рисунке 2.13.
Временная диаграмма работы в режиме асинхронной последовательной передачи показана на рисунке 2.14.
Рисунок 2.14 – Временная диаграмма работы последовательного асинхронного интерфейса в режиме передачи
Временные диаграммы работы контроллера индикатора и клавиатуры в режиме записи команд и данных показаны на рисунке 2.15, а при чтении данных и слова состояния – на рисунке 2.16.