- •1. Организация системы ввода-вывода
- •2. Классификация и особенности аппаратных интерфейсов эвм.
- •3. Архитектура учебного стенда sdk-1.1.
- •4. Вычислительное ядро и система ввода-вывода в стенде sdk-1.1
- •5. Назначение и организация расширителя портов ввода/вывода в sdk-1.1.
- •6. Организация и принцип работы программируемого процессора.
- •7. Контроллер ввода-вывода.
- •8. Процессор ввода-вывода.
- •10. Обмен в режиме прямого доступа между устройствами эвм.
- •11. Организация аппаратных прерываний в эвм.
- •12. Функции и принцип работы контроллера прерываний.
- •13. Внутрисистемные интерфейсы эвм
- •14. Системные интерфейсы эвм.
- •15. Малые периферийные интерфейсы эвм
- •16. Последовательные малые периферийные интерфейсы
- •17. Организация контроллера последовательного интерфейса rs-232 (usart).
- •18. Организация параллельных конфигурируемых портов ввода-вывода.
- •19. Особенности параллельных интерфейсов
- •20. Устройства сопряжения с объектами управляющих эвм
- •21. Синхронизация в аппаратных интерфейсах эвм.
- •22. Интерфейс i2с, общие сведения
- •23. Общая характеристика интерфейса spi
- •24. Ввод-вывод аналоговой информации.
- •25. Организация памяти, регистры общего и специального назначения микроконтроллера с архитектурой mcs51.
- •26. Организация и принцип работы программируемого таймера.
- •16 Битный режим с автоперезагрузкой (таймер 2)
- •16 Битный режим захвата
- •27. Программирование стенда sdk-1.1
- •Дискретный ввод-вывод и гальваническая развязка
7. Контроллер ввода-вывода.
Контроллер - устройство, управляющее функционированием отдельных блоков ВС и внешних устройств, например вводом-выводом информации, доступом к памяти, к накопителям на магнитных дисках, дисплеям.
Контроллеры в/в (контроллеры периферийных устройств, КВВ) делятся на:
1) Устройства сопряжения стандартного интерфейса ВС с интерфейсом ВУ (функция преобразования), которые называются адаптерами;
2) Локальные устройства управления конечным оборудованием ВУ (функция управления).
Адаптер является средством сопряжения какого-либо устройства с какой-либо шиной или интерфейсом вычислительной системы. Контроллер служит тем же целям сопряжения, но при этом подразумевается его некоторая активность – способность к самостоятельным действиям после получения команд от обслуживающей его программы.
Внешние (периферийные) устройства– устройства обработки информации, управляемые процессорами или контроллерами ввода-вывода. К ним относятся устройства подготовки данных, устройства ввода и вывода информации, внешние накопители информации (ВЗУ), аппаратура передачи данных, различные преобразователи информации и т.д.
Программируемый КВВ– это устройство, режим работы которого задается программно с помощью управляющих слов (например, устройство, обеспечивающее работы com-портов), т.е. они конфигурируются извне (задания режимов работы извне).
Однако мы все-таки будем различать термины контроллер и процессор. Сузим последнее понятие и, в рамках данного курса, процессорами будем называть только те устройства обработки информации, которые могут самостоятельно выбирать команды из памяти. Контроллерами же будем называть устройства (или обособленные сложные блоки устройств), не способные самостоятельно избирать команды и для осуществления своих функций требующие управления извне. Простым примером такого устройства может быть контроллер последовательного канала. Для того чтобы он начал передавать посылку по линии связи, обычно требуется отдать ему определенную команду (в большинстве случаев это запись передаваемых данных в порт контроллера). Далее, несмотря на то, что контроллер самостоятельно принимает посылки, поступающие по линии связи, выделяет из них данные и сохраняет в своем внутреннем буфере, дальнейшие действия по приему посылок он не способен выполнять, пока из его буфера не будут забраны принятые ранее данные. Режимы работы этого контроллера (скорость, количество стоп-бит, контроль четности и т.п.), опять-таки, задаются извне: путем записи в порты контроллера соответствующих значений. Последовательный интерфейс
Последовательный порт в контроллерах МСв51 позволяет осуществлять последовательный дуплексный ввод-вывод в синхронном и асинхронном режимах с разными скоростями обмена. Помимо обычного ввода-вывода, в нем предусмотрена аппаратная поддержка взаимодействия нескольких микроконтроллеров. Схематически контроллер порта можно представить так:
Как видно из рисунка, регистр SBUF, доступный пользователю для чтения и записи, есть на самом деле два регистра, в один из которых можно только записывать, а из другого - читать. Контроллер позволяет дуплексный обмен данными, т.е. одновременно может передавать и принимать информацию по линиям ТхD (Р3.1) и RхD (Р3.0) соответственно.
Передача инициируется записью в SBUF байта данных. Этот байт переписывается в сдвиговый регистр, из которого пересылается бит за битом. Как только байт будет 1 переслан целиком , устанавливается флаг ТI, сигнализирующий о том, что контроллер готов к передаче очередного байта. Прием осуществляется в обратном порядке: после начала процесса приема принятые биты данных последовательно сдвигаются в сдвиговом регистре, пока не будет принято их установленное количество, затем содержимое сдвигового регистра переписывается в SBUF и устанавливается флаг RI. После этого возможен прием следующей последовательности бит. Необходимо отметить, что запись принятого байта из сдвигового регистра в SBUF происходит только при условии, что RI=0, поэтому при заборе пользовательской программой очередного байта из SBUF ей необходимо сбрасывать этот флаг, иначе принятый в сдвиговый регистр, но не записанный в SBUF, следующий байт будет безвозвратно утерян.
