Что такое контроллеры ввода-вывода информации?

Контроллеры - устройства ввода-вывода информации. В соответствии с базовыми техническими понятиями они делятся на два основных вида: блочные и символьные. Первые хранят информацию в блоках с фиксированными размерами, каждый из которых имеет свой отдельный адрес. Контроллеры ввода и вывода информации Вторые принимают или распространяют потоки символов в отсутствии блочной структуры. При этом такие устройства не являются адресуемыми и не могут выполнять поиск. Рассмотрим подробнее.

Вопросы с категориями

Несмотря на стандартную классификацию между контроллерами ввода и вывода информации, часто общую схему считают несовершенной. Это связано с тем, что некоторые из устройств невозможно причислить к блочным или символьным типам. Ярким примером становятся часы, которые не относятся к блок-адресуемой технике. Контроллеры ввода и вывода информации имеют между собой набор отличий в рамках разделения по классам. Принцип разделения базируется на характеристиках:
  • скорость передачи информации может различаться на несколько порядков;
  • применение;
  • уровень сложности в управлении;
  • единицы для передачи данных;
  • способ представления данных;
  • природа и условия ошибок.

Конструктивные особенности

Устройство ввода вывода информации контроллер состоит в конструктивном плане из двух составляющих: механическая и электронная. Такая конструкция разработана с целью создания модульного вида. Именно электронная часть и является контроллером или, как часто ее еще называют, адаптером. Механическая часть расположена внутри самого устройства. Плата в большинстве случаев оснащена специальным разъемом, который предназначен для подключения кабеля. Последний элемент ведет к устройству. Сами контроллеры не просто так называются устройствами ввода и вывода информации, ведь они могут подключаться сразу к нескольким идентичным механизмам. Контроллеры ввода и вывода информации Преимуществом становится высокая степень совместимости между компонентами разных разработчиков благодаря стандартизации общего интерфейса. Это означает, что он организован по одному из официальных стандартов: ISO, ANSI, IEEE или каким-либо другим фактическим. Поэтому многие производители разрабатывают жесткие диски с определенными интерфейсами. Довольно часто сам интерфейс между основным контроллером у другим устройством соответствует низкому уровню. Принцип работы подразумевает конвертирование последовательного потока битов в специальный блок байтов, а параллельно происходит коррекция ошибок в случае такой необходимости.

Отображаемый ввод-вывод на адресное пространство

Любой контроллер ввода вывода информации включает ряд регистров, которые отвечают за передачу данных за счет CPU. Операционная система (в дальнейшем - ОС) передает команды при помощи записи информации в регистрах. Таким образом устройство может принимать требуемые данные, включаться, выключаться и производить другие простые операции. Еще одним важным компонентом любой такой системы является буфер данных. Он также предоставляет возможность чтения данных, поэтому им также может пользоваться в определенные промежутки времени ОС. Всего существует два способа реализации доступа как к регистрам управления, так и буферам данных, оба из которых являются, по сути, альтернативными друг по отношению к другу. Перечислим:
  1. в данном случае каждому регистру управления происходит назначение номера порта по вводу-выводу. Числовое значение соответствует 8-ому или 16-ому разряду. Выполнение действия происходит за счет специальной команды cPU. Поэтому последняя выполняет запись содержимого своего регистра в регистр устройства путем прохождения через порт. За счет этого организуются адресные пространства ОЗУ и устройства ввода-вывода, которые не способны по схеме пересечься;
  2. здесь происходит отображение регистров управления от периферийных устройств с передачей напрямую на адресное пространство памяти. Поэтому у каждого управляющего регистра присутствует свой уникальный адрес внутри памяти, который назначается системой. Для регистров устройств в большинстве случаев адреса назначаются на вершинах пространств с адресами. Но встречаются и схемы гибридного формата, где присутствуют в наличии буферы данных.

Принцип работы

Структура контроллера устройства ввода-вывода устроена в обоих вышеперечисленных случаях идентичным образом. Это означает, что при необходимости считывания слов данных CPU, процесс происходит из памяти или порта. Для этого выставляется требуемый адрес на адресной шине, а после выставляется сигнал на управляемую шину. Но стоит учитывать, что схемы обращения имеют преимущества и недостатки при сравнении, поэтому эффективны в разных ситуациях. Обращение к контроллерам устройств с целью обмена данными с ними организуется за счет отображения либо регистров, либо буферов на память. Для реализации этой задачи наиболее эффективным методом используется доступ к памяти, называемый DMA. Поэтому для использования ОС такой схемы необходимо наличие DMA-контроллера. Как правило, такое изделие интегрируется в другие контроллеры устройств. Нередко он располагается внутри дискового устройства и устанавливается на материнской плате. Таким образом, отвечает за обслуживание запросов сразу от нескольких устройств ввода-вывода, которые действуют на конкурентной основе. Вне зависимости от местонахождения DMA-контроллера получение доступа к системной шине происходит независимо от CPU. Это объясняется наличием нескольких регистров для записи и чтения:
  • регистр с адресом памяти;
  • счетчик байтов;
  • один или несколько регистров управления.
Рассмотрим, как происходит процесс чтения с диска в случае отсутствия DMA:
  • считывание с диска блока контроллером последовательным образом до тех пор, пока он полностью не будет находиться внутри буфера.
  • проверка контрольной суммы во избежание потенциальной ошибки.
  • инициирование прерывания.
  • начало работы ОС с чтением блока диска пословно или побайтно с последующим сохранением данных в RAM.
Если же используется DMA, то процесс идет другим образом. Для начала программируется контроллер устройства ввода-вывода с помощью CPU. Для этого устанавливаются регистры и указываются, какая информация и куда должна впоследствии переместиться. После этого дается команда дисковому контроллеру для чтения данных во внутреннем буфере и идентичная проверка контрольной суммы. После получения данных начинается работа DMA, который переносит последовательно требуемую информацию. Также следует обратить внимание, что операции ввода-вывода могут быть последовательными или параллельными. В данном случае наблюдается прямая зависимость от фактора, для чего служит устройство.

Принципы обеспечения ввода-вывода

Контроллер концентратор ввода-вывода обеспечивает работу с помощью специального программного обеспечения (ПО). Особенности процесса зависят от назначения и поставленных целей, которые должны быть выполнены. Программное обеспечение ввода-вывода реализуется с обязательным соблюдением принципа независимости от устройств. То есть такие виды программ способны получить доступ к любому устройству без указания его точного наименования, и для этого не будут требоваться данные о входном устройстве. Контроллеры ввода и вывода информации Поэтому для удобства концепция подразумевает и единообразное наименование. поэтому имена контроллеров устройств и файлов отображаются в виде текстовой строки или целого численного значения. Такая система может быть произвольно интегрированной внутри иерархии системы файлов. поэтому пользователь не нуждается в запоминании того или иного названия, обращение происходит автоматически. Не менее важным аспектом организации любого ПО для контроллеров устройств ввода-вывода является обработка ошибок. Они обрабатываются максимально близко по отношению к аппаратуре. по возможности контроллеры исправляют ошибки самостоятельно. Если же этого действия не происходит, выполняется повторное чтение данных драйвером, так как многие ошибки носят временный характер. В случае если проблема не оказывается решенной, идет информирование верхнего уровня. Способы переноса данных бывают двух видов:
  • синхронный;
  • асинхронный.
Первый также называют блокирующим, а второй управляется при помощи прерываний. При этой большая часть операций у контроллеров устройств ввода-вывода относятся ко второму виду. Для полного и точного сохранения и передачи данных требуется наличие буферизации. Это позволяет последовательно передать всю информацию от одной точки к другой посредством передаваемых сигналов между компонентами систем. Контроллеры ввода-вывода следует также подвести под классификацию. Одни из их являются выделенными, а другие относятся к устройствам коллективного использования. Это означает, что в иногда с процессорами может работать большое количество пользователей одновременно, а иногда - только один. Контроллеры ввода и вывода информации В последнем случае только после окончания работы первого пользователя действия могут быть переданы последующему звену. Поэтому появляется дополнительное понятие взаимной блокировки с целью избежания ошибок и других потенциальных проблем. Контроллеры ввода вывода сигналов электроавтоматики и другой аппаратуры сегодня представлены на рынке широким разнообразием видов и производителей. Ежегодно линейки обновляются и получают новую жизнь модификации предыдущих версий с улучшенными характеристиками. Среди всемирно известных брендов пользуются спросом продукты отечественных (например, марка “Овен”) и зарубежных разработчиков.
Оцените статью
bor-obyav.ru