Разделы презентаций


Организация ввода вывода

Содержание

Ввод/вывод по готовности PCPURAMRЧтение PiPi = 0GP I/OGP I/O – General Purpose I/O«Что-то»Ввод (R)12n3 Организация ввода-вывода 2015 v.0.1

Слайды и текст этой презентации

Слайд 13 Организация ввода-вывода 2015 v.0.1

I/O
3. Организация ввода-вывода
CPU (Central Processing Unit):

AMD80188-40MHz, ARM-11 – 300MHz
RAM (Random Access Memory): 64Kb – 10Mb
Flash:

64Kb – 10Mb
EEPROM (Electrical Erasable Programmable Read-Only Memory): 2 – 10Kb
Timers –
Interval Timer
Watchdog Timer
Real-Time Clock
GP I/O (General Purpose I/O)
IC (Interrupt Controller)
DMA (Direct Memory Access)


IC

CPU





RAM


Flash


EEPROM

GP IO

DMA


Timers



Устройства в/в

3 Организация ввода-вывода 	2015 v.0.1I/O3. Организация ввода-выводаCPU (Central Processing Unit): AMD80188-40MHz, ARM-11 – 300MHzRAM (Random Access Memory):

Слайд 2Ввод/вывод по готовности

P
CPU
RAM



R


Чтение Pi
Pi = 0
GP I/O
GP I/O –

General Purpose I/O
«Что-то»
Ввод (R)
1
2
n
3 Организация ввода-вывода 2015 v.0.1

Ввод/вывод по готовности PCPURAMRЧтение PiPi = 0GP I/OGP I/O – General Purpose I/O«Что-то»Ввод (R)12n3 Организация ввода-вывода		 2015

Слайд 3Ввод/вывод по прерыванию

IC
CPU



R




An
ISR
RAM
Ak
An
IR
Сигнал на входе IRk
Процессор оканчивает текущую команду

и запоминает контекст
Interrupt Controller (IC) передает адрес вектора прерывания Ak


Управление передается программе P, адрес точки входа которой (An) хранится в векторе
Программа Р читает (записывает) содержимое регистра R
Восстановление контекста

«Что-то»

ISR

«Что-то»

Прерывание

Возврат

ISR – Interrupt Service Routine

3 Организация ввода-вывода 2015 v.0.1

Ввод/вывод по прерыванию ICCPURAnISRRAMAkAnIRСигнал на входе IRkПроцессор оканчивает текущую команду и запоминает контекстInterrupt Controller (IC) передает адрес

Слайд 4


return


x:
Системный стек
Процедура обработки прерывания: примитив ОС
Программа

Восстановление контекста, возврат из прерывания
Контекст «фоновой

программы»
в точке x
x
Адрес p
Вектор прерывания i-го события
Запоминание контекста, передача

управления по адресу р

Регистр указателя стека (SP)

p:

return - инструкция возврата из процедуры обработки прерывания, автоматически восстанавливает контекст


Событие

Адрес возврата

Реализация процедуры прерывания

3 Организация ввода-вывода 2015 v.0.1

returnx:Системный стекПроцедура обработки прерывания: примитив ОСПрограммаВосстановление контекста, возврат из прерыванияКонтекст «фоновой программы» в точке xxАдрес pВектор прерывания

Слайд 5Прямой доступ в память
Идея DMA – временное разделение внутренней

магистрали процессора между потоком команд и вводом/выводом данных в память
Цикл

процессора –
действие, которое необходимо выполнить
для передачи одного слова

Пример: Команда MOV AL, TOTAL – два цикла:
Считывание КОП
Считывание TOTAL в младшую часть регистра A

Команда процессора требует от 1 до 10 циклов

3 Организация ввода-вывода 2015 v.0.1

Прямой доступ в памятьИдея DMA –  временное разделение внутренней магистрали процессора между потоком команд и вводом/выводом

Слайд 6Процедура прямого доступа
Предлагается – при использовании DMA каждый n-й

цикл отдавать под ввод/вывод по прямому доступу
Программа
работает без
DMA
Окончание
работы
DMA
Работа

с
DMA

Прерывание

Возврат

Запуск DMA

Без DMA

t


Циклы процессора

t



Циклы процессора

Цикл DMA


3 Организация ввода-вывода 2015 v.0.1

Процедура прямого доступаПредлагается –  при использовании DMA каждый n-й цикл отдавать под ввод/вывод по прямому доступуПрограммаработает

Слайд 7
I/O
CPU



DMA
Controller

D
RAM

IC

Данные
7
Организация канала прямого доступа
Инициирование DMA – установка начального адреса, количества

передаваемых слов
Запрос ввода/вывода (*)
Разрешение ввода/вывода (*)
Запрос цикла
Разрешение цикла
Адрес ввода/вывода
Ввод слова
Запрос

на прерывание по окончанию ввода/вывода

1

2

3

4

5

6

7

8

(*) Установлены постоянно, пока идет обмен; снимаются по (8)

3 Организация ввода-вывода 2015 v.0.1

I/OCPUDMAControllerDRAMICДанные7Организация канала прямого доступаИнициирование DMA – установка начального адреса, количества передаваемых словЗапрос ввода/вывода (*)Разрешение ввода/вывода (*)Запрос циклаРазрешение

Слайд 84. Таймеры 2015 v.0.1
4. Таймеры
Интервальный таймер
Запрос на
прерывание
Счетчик
Регистр-защелка
От генератора
Импульсов
(1.1931816

МГц)


Значение интервала,
режим работы

РП
Регистр управления

Запрос
текущего значения

4. Таймеры		 2015 v.0.14. ТаймерыИнтервальный таймерЗапрос на прерываниеСчетчик Регистр-защелкаОт генератораИмпульсов(1.1931816 МГц)Значение интервала,режим работыРПРегистр управленияЗапрос текущего значения

Слайд 9Интервальный таймер, пример: i8254

Периодические запросы на
прерывание

Однократные запросы на
Прерывание


Генератор сигналов
заданной длительности,
скважности

Измерение временных
интервалов между событиями

Счетчик событий,

запрос на
прерывание по заданному
количеству событий

4. Таймеры 2015 v.0.1

Интервальный таймер, пример: i8254Периодические запросы на прерывание Однократные запросы наПрерывание Генератор сигналовзаданной длительности,скважности Измерение временных интервалов между

Слайд 10http://www.netrino.com/Publications/Glossary/WatchdogTimer.html
Watchdog
# define interval 100

main ()
{

while(true)
{
restartWD(interval);

measure();
makeControlDecision();
output();
sleep(10); -- (Кстати, это нехорошо!)
}
}


Watchdog

CPU


RAM


Flash

clock

reset

restart

4. Таймеры 2015 v.0.1

http://www.netrino.com/Publications/Glossary/WatchdogTimer.htmlWatchdog # define interval  100main () {   while(true)   {

Слайд 11Real-Time Clock
Счетчик
времени
Счетчик
даты
Делитель
частоты
Внешний интерфейс



Источник
питания
Генератор
Управляется низкоуровневой процедурой (BIOS,

OS)
Библиотечные процедуры
String MMHHDDMMYYYY
void loadRTC(String s)

String getRTS()
15:34, 24 January, 2013 –
341524012003

4. Таймеры 2015 v.0.1

Real-Time Clock Счетчик времениСчетчик датыДелительчастотыВнешний интерфейсИсточник питанияГенераторУправляется низкоуровневой процедурой (BIOS, OS)Библиотечные процедуры		String MMHHDDMMYYYY		void loadRTC(String s)

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика