Реферат Курсовая Конспект
Дисциплина: Цифровые устройства и микропроцессоры - Курсовая Работа, раздел Компьютеры, Дисциплина: Цыфровые Устройства И Микропроцессоры...
|
Дисциплина: Цыфровые устройства и микропроцессоры
(ЦУ и МП)
Лекции: 28час; лаб.зан: 12час. Зачет. Для Р-05 курсовая работа.
Лекция 1
СОДЕРЖАНИЕ
1-й учебный вопрос
Й учебный вопрос
Структура (архитектура) однокристального восьмиразрядного микропроцессора МП580ВМ80
Определение МП – программно-управляемое устройство, реализуемое на одном или нескольких чипах, которое осуществляет процесс цифровой обработки информации и управление им.
Система команд восьмиразрядного микропроцессора КР580ВМ80
(Int 8085 или Z80)
Учебные вопросы:
1. Структура команд и режимы адресации.
2. Система команд.
Команды по занимаемой памяти делятся на:
Однобайтные;
Команда чтения из памяти (ЗУ). В аккумулятор записывается информация, которая храниться в ячейке памяти, адрес которой указан во втором и третьем байтах.
Помни!!!!: Только в первом байте любой команды (одно, двух, трех байтной)
записан КОП (код операции).
Исходная программа на языке ассемблер состоит из последовательности команд, которые называют также ассемблерными строками. Запись строки осуществляется в соответствии с некоторыми формальными правилами (как синтаксис и орфография в русском и др. языках).
Строка (предложение) делятся на несколько полей, разделенных одним и более пробелами:
Ø поле метки;
Ø поле мнемоники кода операции;
Ø поле операнда;
Ø поле комментария.
Таким образом, строка (команда) имеет следующий формат:
[метка] <мнемоника КОП> [операнд] ; [комментарий]
Где […] – необязательный элемент конструкции (команды).
<…..> - обязательный элемент конструкции (команды).
Поле метки начинается с первой позиции строки и представляет мнемоническую запись адреса команды.
Поле мнемоники КОП начинается после первого пробела строки и заканчивается одним или более пробелами. Является обязательным в команде (конструкции строки).
Поле операнда определяет информацию, над которой производятся действия.
Поле комментария начинается после символа ; Присутствие поля комментария в команде необязательно. Комментарии не влияют на результат трансляции.
Режимы адресации в МП
В МП используются четыре режима адресации:
1) Прямая адресация – код адреса в команде является исполнительным адресом обращения к памяти или устройству ввода вывода. Примеры:
STA |
8F |
(A)←([8F79]) .
В аккумулятор заносятся данные из ЯП, адрес которой во 2-м и 3-м байтах команды.
Б1 Б2 | IN |
8B |
(A)←([8B])
В аккумулятор заносятся данные из устройства ввода, адрес которого во 2-м байте команды.
2) Регистровая адресация – это адресация, при которой операнд содержится в одном из регистров МП.
MOV A,B (A)←(B)
Содержимое 8-ми разрядного регистра В пересылается по внутренней шине данных МП в аккумулятор (А).
3) Непосредственная адресация – это адресация, при которой операнд находится в самой команде.
Б1 Б2 | ADI |
7Eh |
(A)←(A)+7Eh
Константа во 2-м байте команды (7Eh) складывается с содержимым аккумулятора и результат сложения записывается в аккумулятор.
4) Регистровая косвенная адресация – это адресация, при которой адрес ячейки памяти с операндом хранится в регистровой паре H-L.
5)
MOV A,M; (A)←([H-L])
В аккумулятор пересылается содержимое ячейки памяти, адрес которой храниться в регистровой паре H-L.
Помни: Скобки (….) обозначают содержимое ячейки памяти или регистра РОН и аккумулятора. Скобки […] адрес ячейки памяти или устройства ввода/вывода.
Й учебный вопрос
Система команд
Рассмотрим систему команд на языке ассемблера.
Ассемблер - это программа, которая переводит последовательность команд с языка пользователя (ассемблера) в машинный код (код микропроцессора).
Система команд включает в себя следующие группы команд:
Команды пересылки данных.
Команды арифметических операций.
Команды логических операций.
Команды управления (безусловные и условные переходы).
Команды ввода и вывода данных.
R – все регистры (B, C, D, E, H, L) и аккумулятор (A)
Пример команды на языке ассемблер:
MVI B, 8Dh ; (B)←8Dh
В регистр В пересылается константа 8Dh.
1.3 загрузка константы в пару регистров
Б1 Б2 Б3 | LXI rr |
младший разряд, const | |
старший разряд, const |
(rr)←< Б3>< Б2>
Арифметические и логические операции. Инкрементные и декрементные команды
2.1. Сложение содержимого аккумулятора с регистром r , где r регистры A, B, C, D, E, H, L.
Б1 | ADD r |
(A)←(A)+ (r), Z, S, P, AС, СY регистра признаков.
Помни!!!: В командах арифметических и логических операций, а также инкрементных и декрементных командах формируются значения регистра признаков.
S, Z и др.
Б1 | DCR M |
([H-L])←([H-L])- , S, Z и др.
Б1 | DCX rr |
(rr)←(rr)-1 , S, Z и др.
Команды ввода и вывода данных.
Ввод и вывод данных организуется двумя способами:
1) Ввод и вывод данных только через аккумулятор. Данный способ обычно используется в восьмиразрядных системах. Он прост в технической реализации МП. В изучаемом нами МП применяется данный способ обмена.
Прямой доступ к памяти (ПДП). Тогда обмен информации между устройствами ввода, вывода и запоминающего устройства может осуществляться напрямую, минуя аккумулятор. Все персональные компьютеры и многие микроконтроллеры используют этот принцип. Он сложен в технической реализации, но обеспечивает большую пропускную способность.
5.1. Команда ввода данных
Б1 Б2 | IN |
Адрес устройства ввода |
(А)←([< Б2>])
Пример команды:
IN INPORT1; (A)←([INPORT1]), где INPORT1символический адрес порта ввода.
5.2. Команда вывода данных
Б1 Б2 | OUT |
Адрес устройства вывода |
([<Б2>])←(A)
OUT OUTPORT2 ; ([OUTPORT2])←(A)
Другие команды
6.1 Команды работы со стеком (стековой памятью).
Стековая память – область ОЗУ, предназначенная для временного хранения данных, в том числе и адресов возврата в основную программу при обращении к подпрограмме.
Обмен со стековой памятью осуществляется только парами регистров (В-С, D-E, H-L, PSW).
Сложные программы, как правило, включают в себя подпрограммы, т.е. создается алгоритм основной программы и в основной программе используются команды обращения к подпрограмме.
МП прекращает выполнение программы и ждет указаний.
Пустая команда
Б1 | NOP |
Эта команда используется для резервирования ячеек при написании программы. МП никаких действий не выполняет, но осуществляет первый этап (чтение и дешифрование). Кроме того, команда может применяться при написании программы временной задержки (для изучаемого симулятора AVSIM85 время выполнения 1-ого этапа команды четыре секунды).
Работа с имитатором (симулятором) процессора Intel I8085.
Программа начинается с комментария, в котором записывается автор программы, название программы, какие микропроцессоры, микроконтроллеры и тактовая частота используются. Далее следуют директивы к транслятору.
В директивах записываются символические имена портов ввода и вывода, констант, команд присоединения и других команд.
Include – директива и после нее записываются имена файлов с расширением .asm.
Тело программы включает строки предложений, рассмотренные ранее.
Трансляция программы.
Для трансляции программы необходимо командной в строке, например, FAR или Total Commander, записать:
avmac85 <имя исходного файла.asm> si allpublic
Помни уголки < > не использовать при написании команды.
В результате формируются объектный файл и листинг:
<имя исходного файла>.obj
< имя исходного файла >.prn
Для проверки программы на наличие в ней ошибок необходимо раскрыть файл с расширением .prn , и в нем будет показано, в какой строке находится ошибка. Исправлять ошибки только в файле с расширением .asm.
Компоновка программы.
Для компоновки программы пользователю необходимо создать командный файл компоновки. После создания командного файла компоновки в командной строке набрать команду:
avlink @<имя файла>.lnk
В результате компоновки формируется файл с расширением .hex.
Подготовка файлов выходных данных.
Для ввода данных (имитация ввода данных) формируется файл исходный данных. Для организации файла создать файл с именем indat.ad. Для создания файла используют следующее сочетание клавиш – Shift+F4. Значения входных данных записываются в десятичной системе. Цифры разделяются либо пробелом, либо переводом строки. Для перевода десятичной системы счисления в шестнадцатеричную в командной строке записывают команду:
Iotran db indat.dat indat.ad
Лекция 6
Особенности построения программ двоичных счетчиков
Учебные вопросы:
1. Двоичные счетчики с заданными начальным и конечным значениями счета.
Построение счетчиков на двух регистрах.
Построение программы с управляющими сигналами.
Разработка программы счетчика табличным методом.
1. Двоичные счетчики с заданными начальным и конечным значениями счета.
Постановка задачи: разработать вычитающий четырехразрядный двоичный счетчик с параметрами:
Qнач.=5, Qкон.=8
M – разрядность счетчика
Сmax=
Примечание: в аккумуляторе восемь разрядов. В четырехразрядном счетчике используются только четыре младших разряда, следовательно, необходимо отсечь старшие разряды. Для этого используется команда ANI 0Fh.
Алгоритм программы
Фрагмент программы:
Begin:
MVI C,Qn ; C=Qn Бл.1
M2: MOV A,C ; A=C Бл.2
OUT outport2 ; вывод Qi
DCX C ; C=C-1 Бл.3
MOV A,C
ANI 0Fh Бл.4
MOV C,A
CPI Qk ; (A-Qk) в этой команде только меняются признаки S, Z, P
JZ Begin
JMP M2
END
В рассмотренной программе Cmax=,
где m=8, следовательно, Сmax не более 255 .
На практике применяются счетчики с Сmax> 255. Тогда могут применяться счетчики на двух регистрах.
Построение счетчиков на двух регистрах.
МП обладает программной возможностью формирования признака нулевого результата только для одного регистра, а не для регистровой пары. Поэтому пользователю (разработчику программ) необходимо формировать признак нулевого результата на программном уровне.
Алгоритм программы
Нарисовать
Фрагмент из программы.
Delay:
LXI B,DEL ; константа пересылается в регистровую пару В-С
M3: NOP ; пустая команда для увеличения времени цикла
NOP
DCX B ; (B-C)=(B-C)-1
MOV A,C
ORA B ; (A)←(A)V(B)
JNZ M3
JMP Mi ; метка основной программы
END
Разработка программы счетчика табличным методом.
Сущность метода построения счетчика: в памяти МПС на программном уровне формируется таблица (одномерная), в которой по адресу, соответствующему текущему состоянию, записано число (в памяти), которое соответствует следующему состоянию счетчика.
Пример: разработать счетчик табличным методом с произвольным порядком смены состояний.
Пусть счетчик имеет начальное состояние Q0 = 4
4 →0 →14→12 →8
NAT какой-нибудь адрес.
NAT +
Фрагмент программы:
MOV A,C ;(А)← (C)
OUT OUTPORT ;вывод значений счетчика
LXI H,NAT ;загружаем данные таблицы
MVI B,0 ;обнуляем регистр В
DAD B ;(H-L) ← (H-L)+(B-C)
MOV A,M ;(A) ←([H-L])
MOV C,A ;(C) ←(A)
JMP M1
NAT: db 0Еh,0h,0h,0h,0h,0h,0h,0h,4h,0h,0h,0h,8h
Include stack.asm
End
Лекция 7
Алгоритм программы (основной)
Алгоритма временной задержки (Блок 3)
|
|
|
|
|
NOP
NOP
NOP
JNZ M5
POP B
JMP M4
NAT:
db 99h,0CBh,0E4h,0E4h,0CBh,0FDh,0E4h,0CBh,80h
include stack.asm
End
Организация прерывания работы микропроцессоров
Классификация прерываний в микропроцессоре
При обмене данными с большим числом асинхронно работающих внешних частот используются прерывания работы МП
Физически организация прерываний в МП осуществляется путем передачи сигналов на отдельные выводы.
Сигналы запроса от внешнего устройства поступают в микропроцессорную систему в произвольный момент времени (асинхронно).
Организация работы системы прерывания:
1) При поступлении сигнального запроса (если он разрешен) МП заканчивает выполнение текущей команды и приступает к выполнению запроса. При этом промежуточные данные работы МП до поступления запроса временно записываются в стековую память.
2) МП приступает к выполнению запроса на прерывание. Как правило, запрос на прерывание выполняется МП путем обращения к подпрограмме. При выполнении запроса на прерывание остальные запросы на прерывания, принимаемые в это время, заносятся в очередь.
3) после удовлетворения запроса и обработки прерывания (обращение к подпрограмме) зафиксированные ранее параметры стековой памяти возвращаются в регистры. МП проверяет, нет ли на очереди прерываний и если их нет, то продолжается выполнение основной программы.
Классификация запросов прерывания:
· немаскируемые запросы прерывания
· немаскируемые запросы прерывания.
Немаскируемые запросы реализуются аппаратно, т е не управляются на программном уровне пользователя, а заложены при изготовлении. Эти прерывания имеют высший приоритет и выполняются в первую очередь. К ним относятся перегрев МП, спящий режим.
Маскируемые запросы управляются командами программы и обеспечивают возможность гибкого управления внешними устройствами.
Для определения адреса подпрограммы обработки прерываний при поступлении запроса формируется так называемый вектор прерывания.
Вектор прерывания – область запоминающего устройства. Как правило, в начале в ячейки памяти запоминающего устройства заносятся команды, обращения к подпрограммам.
Лекция 9
Шинный формирователь и буферный регистр.
Служат для обеспечения соединения МП с системной магистралью (ШД) и системным микроконтроллером.
А) Двунаправленный формирователь. Шинный формирователь обладает тристабильным состоянием: * передача (прием «1») , * передача (прием «0»), * импеданстное – высокоомное состояние.
Структура шинного формирователя:
Б) Буферный регистр – однонаправленный регистр для передачи адресной информации
Структура буферного регистра:
Лекция 10
Перспектива развития микропроцессорной техники
Современные микроконтроллеры (МК).
Определение и классификация микроконтроллеров.
Микроконтроллер – самостоятельная микропроцессорная система, которая содержит центральный микропроцессор (ЦМП), вспомогательные схемы (буферные регистры, контроллер) и устройства ввода/вывода, размещенные в общем корпусе (одном чипе).
Это определение справедливо для восьмиразрядных микроконтроллеров, но недостаточно для шестнадцатиразрядного и тридцатидвухразрядного микроконтроллеров (МК), так как эти МК содержат больше одного чипа (программаторы, дисплеи и т.д.).
МК классифицируются:
а) Принстонская архитектура (или фон Неймоновская).
Например, МК КР 580ВМ80, Z80.
В данном МК программы, память данных и стековая память хранятся в общем запоминающем устройстве (общая адресация памяти), и данные поступают в МП через одну шину данных.
Преимущества архитектуры: простота технической реализации, гибкость выполнения некоторых программных процедур.
б) Гарвардская архитектура.В ней хранение программ, данных и стека осуществляется в отдельных блоках запоминающего устройства и данные поступают по отдельным шинам.
Эта архитектура сложна в технической реализации. Преимущества архитектуры: меньшее количество тактов на выполнение команды (процессор точно знает, в каком блоке какая информация). Пример такой архитектуры: микроконтроллеры фирмы “Atmel”.
а) встраиваемые восьмиразрядные микроконтроллеры.
б) шестнадцатиразрядные и тридцатидвухразрядные микроконтроллеры.
в) цифровые сигнальные микроконтроллеры (DSP). Их предназначение: для построения цифровых фильтров, вокодеров.
Лекция 11
Особенности разработки и отладки программ для микроконтроллеров AVR
Так как микроконтроллеры AVR появились на рынке недавно, для них пока нет большого количества средств разработки. Несмотря на это фирма Atmel уверена в том, что для AVR уже есть полный набор таких средств, и некоторые производители уже начали выпускать программные и аппаратные средства, доступные для пользователя.
Рассмотрим некоторые средства разработки программ для AVR-МК.
Лекция 12-13
Лекция
Программируемые логические интегральные схемы (ПЛИС)
– Конец работы –
Используемые теги: дисциплина, Цифровые, устройства, Микропроцессоры0.04
Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Дисциплина: Цифровые устройства и микропроцессоры
Если этот материал оказался полезным для Вас, Вы можете сохранить его на свою страничку в социальных сетях:
Твитнуть |
Новости и инфо для студентов