Контроллер интерфейса что это

Контроллер интерфейса что это

Содержание

Итак что же такое интерфейс?
Вездесущая Википедия дает такой ответ: Физический (аппаратный) интерфейс — способ взаимодействия физических устройств. Чаще всего речь идёт о компьютерных портах.
Т.е. если мы попытаемся связать наш микроконтроллер с другими устройствами нам потребуется знать определенный набор правил, методов и характеристик оборудования, чтобы сделать это безболезненно. Давайте рассмотрим основные типы интерфейсов, которые мы можем встретить "на борту" микроконтроллера.

Последовательный интерфейс UART/USART

Универсальный асинхронный или универсальный синхронно/асинхронный приемопередатчик (Universal Synchronous/Asynchronous Receiver and Transmitter — UART или USART) — удобный и простой последовательный интерфейс для организации информационного канала обмена микроконтроллера с внешним миром. Способен работать в дуплексном режиме (одновременная передача и прием данных). Он поддерживает протокол стандарта RS-232, что обеспечивает возможность организации связи с персональным компьютером.
Изначально использовался в компьютерах для большинства периферийных устройств, таких как плоттер, удаленный принтер, мышь, внешний модем и т. д. До настоящего времени для последовательной связи IBM PC-совместимых компьютеров используются адаптеры с интерфейсом RS-232С (новое название EIA-232D). В современном IBM PC-совместимом компьютере может использоваться до четырех последовательных портов, имеющих логические имена соответственно COM1, COM2, COM3 и COM4. Основой последовательного адаптера является микросхема UART (Universal Asynchronous Receiver/Transmitter) — универсальный асинхронный приемопередатчик. Обычно используется микросхема UART 16550A. Она имеет 16-символьный буфер на прием и на передачу и, кроме того, может использовать несколько каналов прямого доступа в память DMA -habrahabr.ru/post/37455/ . При передаче микросхема UART преобразует параллельный код в последовательный и передает его побитно в линию, обрамляя исходную последовательность битами старта, останова и контроля. При приеме данных UART преобразует последовательный код в параллельный (разумеется, опуская служебные символы). Непременным условием правильной передачи (приема) является одинаковая скорость работы приемного и передающего UART, что обеспечивается стабильной частотой кварцевого резонатора. Основным преимуществом последовательной передачи является возможность пересылки данных на большие расстояния, как правило, не менее 30 метров. В IBM PC-совместимых персональных компьютерах из 25 сигналов, предусмотренных стандартом RS-232, используются в соответствии с EIA только 9; таким образом, в данном интерфейсе как правило применяются 9-контактные разъемы типа DB-Shell.
В современных компьютерах UART и СОМ порт уже не применяются напрямую, но они получили вторую жизнь для связи с различными нестандартными внешними устройствами в числе которых вошли и устройства на микроконтроллерах. Аппаратная часть при этом стала значительно проще для связи микроконтроллеров друг с другом подключение UART осуществляется по трём линиям: RXD – приём, TXD – передача и GND – общий (минус).

Читайте также:  Монтаж лотка бетонного расценка

Подключать UART надо, так сказать "наоборот" RXD к TXD, а TXD к RXD как на картинке ниже:

Последовательный периферийный интерфейс SPI

Последовательный периферийный трехпроводный интерфейс SPI (Serial Peripheral Interface) предназначен для организации обмена данными между двумя устройствами. С его помощью может осуществляться обмен данными между микроконтроллером и различными устройствами, такими, как цифровые потенциометры, ЦАП/АЦП, FLASH-ПЗУ и др. С помощью этого интерфейса удобно производить обмен данными между несколькими микроконтроллерами AVR.
Кроме того, через интерфейс SPI может осуществляться программирование микроконтроллера.
Изначально он был придуман компанией Motorola, а в настоящее время используется в продукции многих производителей. Его наименование является аббревиатурой от ‘Serial Peripheral Bus’, что отражает его предназначение — шина для подключения внешних устройств. Шина SPI организована по принципу ‘ведущий-подчиненный’. В качестве ведущего шины обычно выступает микроконтроллер, но им также может быть программируемая логика, DSP-контроллер или специализированная ИС. Подключенные к ведущему шины внешние устройства образуют подчиненных шины. В их роли выступают различного рода микросхемы, в т.ч. запоминающие устройства (EEPROM, Flash-память, SRAM), часы реального времени (RTC), АЦП/ЦАП, цифровые потенциометры, специализированные контроллеры и др.

Главным составным блоком интерфейса SPI является обычный сдвиговый регистр, сигналы синхронизации и ввода/вывода битового потока которого и образуют интерфейсные сигналы. Таким образом, протокол SPI правильнее назвать не протоколом передачи данных, а протоколом обмена данными между двумя сдвиговыми регистрами, каждый из которых одновременно выполняет и функцию приемника, и функцию передатчика. Непременным условием передачи данных по шине SPI является генерация сигнала синхронизации шины. Этот сигнал имеет право генерировать только ведущий шины и от этого сигнала полностью зависит работа подчиненного шины.

Электрическое подключение
Существует три типа подключения к шине SPI, в каждом из которых участвуют четыре сигнала.

CPOL — исходный уровень сигнала синхронизации (если CPOL=0, то линия синхронизации до начала цикла передачи и после его окончания имеет низкий уровень (т.е. первый фронт нарастающий, а последний — падающий), иначе, если CPOL=1, — высокий (т.е. первый фронт падающий, а последний — нарастающий));
CPHA — фаза синхронизации; от этого параметра зависит, в какой последовательности выполняется установка и выборка данных (если CPHA=0, то по переднему фронту в цикле синхронизации будет выполняться выборка данных, а затем, по заднему фронту, — установка данных; если же CPHA=1, то установка данных будет выполняться по переднему фронту в цикле синхронизации, а выборка — по заднему). Информация по режимам SPI обобщена в таблице.

За обмен информацией и командами между сканером и компьютером отвечает контроллер интерфейса. Данная микросхема может отсутствовать в том случае, если процессор располагает интегрированным модулем контроллера. В эпоху "двушек" и "трешек" сканеры выпускались с интерфейсами SCSI, IEEE1284 (LPT) и даже с RS-232. Сегодняшний ассортимент SOHO-сканеров огранивается интерфейсами USB, FireWire и SCSI. Совершенно очевидно, что в аппаратах с разными интерфейсами установлены такие же разные контроллеры. Между собой они не совместимы, потому как "говорят на разных языках".

На фото интерфейсная плата сочетает SCSI- и USB-порты, а также располагает двумя гнездами для подключения дополнительных модулей

Ö SCSI (Small Computer Systems Interface). Сканеры с интерфейсом SCSI были наиболее распространены несколько лет назад. Надо признать, что эра SCSI-сканеров подходит (или уже подошла) к концу. Основная причина – появление высокоскоростных интерфейсов USB и FireWire, не требующих ни особой деликатности при подключении, ни дополнительных адаптеров. Среди достоинств SCSI-интерфейса можно выделить его высокую пропускную способность, а также возможность подключения до семи различных устройств на одну шину. Из основных недостатков SCSI – высокую стоимость организации интерфейса и необходимости задействования дополнительного контроллера.

Ö USB (Universal Serial Bus). Интерфейс USB получил самое широкое распространение благодаря его интеграции во все современные системные платы в качестве основного разъема для периферийных устройств. Сегодня абсолютное большинство сканеров для дома выпускается именно с USB-интерфейсом. Кроме того, группа CIS-сканеров получает необходимое питание по USB-порту, чем привлекает владельцев портативных компьютеров.

Ö FireWire (IEEE1394). При выборе типа подключения, FireWire-интерфейс является более предпочтительным. FireWire представляет собой последовательный высокоскоростной интерфейс ввода/вывода, отличаясь от USB тем, что для обеспечения соединения он не требует управляющего контроллера. Организация его работы выполнена по схеме peer-to-peer. Собственно за счет этого и достигается более низкая (в сравнении с USB) загрузка центрального процессора. В скором времени свет увидят периферийные устройства с новой модификацией этого интерфейса – FireWire 800 (IEEE1394b). Именно тогда он станет самым скоростным среди периферийных стандартов, которые когда-либо были разработаны.

Не нашли то, что искали? Воспользуйтесь поиском:

Лучшие изречения: На стипендию можно купить что-нибудь, но не больше. 9021 — | 7253 — или читать все.

Контроллер сетевого интерфейса
Подключение к Материнские платы с помощью одного из:
  • встроенный в чипсет или SoC
  • дискретно на борту
  • PCI разъем
  • ISA разъем
  • PCI-E
  • FireWire
  • USB
  • удар молнии

Сеть по одному из:

  • Ethernet
  • Wi-Fi
  • Fiber Channel
  • Банкомат
  • FDDI
  • кольцевая сеть с маркерным доступом
  • ARCNET
Скорости 10 Мбит / с
100 Мбит / с
1 Гбит / с
10 Гбит / с
до 160 Гбит / с Общие производители Intel
Realtek
Broadcom (включает в себя бывший Avago , Emulex )
Marvell Technology Group
Cavium (ранее QLogic )
Mellanox
Chelsio

Контроллер сетевого интерфейса ( NIC , также известный как сетевая карту , сетевой адаптер , адаптер локальной сети или физический сетевой интерфейс , а также аналогичные термины) представляет собой компьютерное оборудование компонент , который подключает компьютер к компьютерной сети .

Контроллеры Early сетевого интерфейса были широко реализованы на картах расширения , что подключены к шине компьютера . Низкая стоимость и вездесущности Ethernet стандарта означает , что большинство новых компьютеров имеют сетевой интерфейс , встроенный в материнскую плату .

Современные контроллеры сетевого интерфейса предлагают дополнительные функции , такие как прерывания и DMA интерфейсы к хост — процессоров, поддержка нескольких приема и передачи очереди, разбиение на несколько логических интерфейсов, а также на контроллер обработки сетевого трафика , таких как TCP выгрузку двигателя .

содержание

Сетевой контроллер реализует электронную схему , необходимую для связи с использованием определенного уровня физического и канального уровня стандарта , таких как Ethernet или Wi-Fi . Это обеспечивает основу для полного сетевого стека протоколов , которая позволяет устанавливать связь между компьютерами в одной и той же локальной сети (LAN) и крупномасштабных сетевых коммуникаций через маршрутизируемых протоколов, таких как Интернет — протокол (IP).

NIC позволяет компьютерам общаться по компьютерной сети, либо с помощью кабелей или проводов. NIC является как устройство физического уровня и канального уровня, так как он обеспечивает физический доступ к сетевой среде и, по стандарту IEEE 802 и других подобных сетей, обеспечивает низкоуровневый систему адресации посредством использования MAC — адресов , которые однозначно назначенную сети интерфейсы.

Реализация

Сетевые контроллеры первоначально были реализованы в виде карт расширения , которые , подключенных к шине компьютера. Низкая стоимость и повсеместность стандарта Ethernet означает , что большинство новых компьютеров есть контроллер сетевого интерфейса , встроенного в материнскую плату. Новые серверные материнские платы могут иметь несколько сетевых интерфейсов встроенный. Возможности Ethernet либо интегрированы в материнской плате чипсет или реализованы с помощью недорогого чипа выделенного Ethernet. Отдельная сетевая карта не обычно больше не требуется , если не нужны дополнительные независимые сетевые соединения или какой — то тип , не Ethernet сети используется. Общая тенденция компьютерной техники находится к интеграции различных компонентов систем на кристалле , и это также применяется к сетевому интерфейсным платам.

Сетевой контроллер Ethernet , как правило , имеет 8P8C разъем , к которому подключен сетевой кабель. Старые сетевые платы также поставляются BNC или AUI соединения. Сети Ethernet контроллеры обычно поддерживают 10 Мбит / с Ethernet, 100 Мбит / с Ethernet , и 1000 Мбит / с Ethernet сорта. Такие контроллеры обозначаются как 10/100/1000 , а это означает , что они могут поддерживать скорость передачи данных 10, 100 или 1000 Мбит / с. 10 Gigabit Ethernet сетевые карты также доступны, и, по состоянию на ноябрь 2014 года, начинают быть доступны на компьютерных платах .

Модульные конструкции , как SFP и SFP + являются очень популярными, особенно для волоконно-оптической связи . Они определяют стандартную емкость для медиа-зависимых приемопередатчиков, так что пользователи могут легко адаптировать сетевой интерфейс к их потребностям.

Светодиоды смежных или интегрированные в сетевом разъем информируют пользователь о том, подключена к сети и когда происходит активность данных.

NIC может использовать один или несколько из следующих методов, чтобы указать наличие пакетов для передачи:

  • Опрос то , где центральный процессор анализирует состояние периферийного устройства под управлением программы.
  • Прерывание управляемого общества I / O, где периферийные сигналы процессор , что он готов к передаче данных.

Сетевые адаптеры могут использовать один или несколько из следующих методов для пакетной передачи данных:

  • Запрограммированный ввод / вывод , в котором центральный процессор перемещает данные в или из сетевого адаптера в память.
  • Прямой доступ к памяти (DMA), когда устройство, кроме CPU берет на себя управление системной шиной для перемещения данных в или из сетевого адаптера в память. Это снимает нагрузку с центрального процессора , но требует больше логики на карте. Кроме того, пакет буфер на NIC может не потребоваться , и задержка может быть уменьшена.

Производительность и расширенные функциональные возможности

Multiqueue сетевые адаптеры обеспечивают множество передающих и приемных очередей , что позволяет пакеты , полученные NIC быть отнесены к одному из его очереди приема. NIC может распределять входящий трафик между очереди приема с использованием хеш — функции . Каждый получит очередь назначаются отдельным прерывание ; путем маршрутизации каждого из этих прерываний на разных центральных процессоров или процессорных ядер , обработка запросов прерываний , вызванных сетевого трафика , полученного с помощью одного NIC может быть распределен повышение производительности.

Распределение аппаратных средств на основе из прерываниями, описанный выше, называется масштабированием получить на стороне (RSS). Чисто программные реализации также существуют, такие как получение пакетов рулевого управления (RPS) и рулевой механизм приема потока (RFS). Дальнейшее повышение производительности может быть достигнуто за счет маршрутизации прерываний запросы к ЦП или ядер , исполняющих приложения , которые являются конечными пунктами назначения для сетевых пакетов , которые генерируемых прерываний. Эта методика улучшает локальность ссылок и результаты в более высокой общей производительности, сокращение времени ожидания и лучшее использование оборудования из-за более высокое использованием кэшей процессора и меньшего количество требуемых переключений контекста . Примерами таких реализаций являются RFS и Intel директор Flow .

С сетевых адаптеров нескольких очередей, дополнительные улучшения производительности может быть достигнуто за счет распределения исходящего трафика между различными передающими очередей. Путем присвоения различных очередей передачи на различных центральных процессоров или процессорных ядер, внутренние операционной системы утверждения можно избежать. Такой подход обычно называют управления передачей пакетов (XPS).

Некоторые сетевые адаптеры поддерживают очереди приема и передачи без поддержки ядра позволяя NIC выполнять даже тогда, когда функциональные возможности операционной системы критической системы была серьезно нарушена. Эти сетевые карты поддерживают:

  1. Доступ к локальной и удаленной памяти без привлечения удаленного процессора.
  2. Доступ локальных и удаленных устройств ввода / вывода без привлечения локального / удаленного процессора. Эта возможность поддерживается устройством-устройство связи по шине ввода / вывода, присутствует в переключился на основе межсоединений ввода / вывода.
  3. Контроль доступа к локальным ресурсам, таким как регистры управления и память.

Некоторые продукты имеют NIC перегородки (Npar, также известные как порт перегородка ) , который использует SR-IOV разделить единый 10 Gigabit Ethernet NIC на нескольких дискретных виртуальные сетевые адаптеры с выделенной пропускной способностью, которые представлены на прошивки и операционной систему в качестве отдельной функции PCI устройств , TCP разгрузка двигатель является технологией , используемой в некоторых сетевых адаптерах , чтобы разгрузить обработку всей TCP / IP стек с сетевым контроллером. Он в основном используется с сетевыми интерфейсами высокоскоростных, таких как Gigabit Ethernet и 10 Gigabit Ethernet , для которых обработка накладные расходы сетевого стека становится значительным.

Некоторые сетевые адаптеры предлагают интегрированные полевые программируемые пользователем вентильных матриц (FPGA) для программируемой пользователем обработки сетевого трафика , прежде чем он достигнет хост — компьютера, что позволяет значительно сократить задержки в чувствительных ко времени рабочих нагрузок. Кроме того, некоторые сетевые адаптеры предлагают полный низкую латентность TCP / IP стеки , работающий на интегрированных ПВМ в сочетании с пользовательскими библиотеками, перехватывать сетевые операции обычно выполняемых ядром операционной системы ; С открытым исходным кодом Solarflare в OpenOnload сетевой стек , который работает на Linux является примером. Такая функциональность обычно называют сетями на уровне пользователя .

Оценить статью
Добавить комментарий