Шина lpc что это

Шина lpc что это

Low Pin Count (LPC bus) — шина, используемая в IBM PC-совместимых персональных компьютерах для подключения устройств, не требующих большой пропускной способности к ЦПУ. К таким устройствам относятся загрузочное ПЗУ и контроллеры «устаревших» низкопроизводительных интерфейсов передачи данных, такие как последовательный и параллельные интерфейсы, интерфейс подключения манипулятора «мышь» и клавиатуры, НГМД, а с недавнего времени и устройств хранения криптографической информации. Обычно контроллер шины LPC расположен в южном мосте на материнской плате.

Шина LPC была введена фирмой Intel в 1998 году для замены шины ISA. Хотя LPC физически сильно отличается от ISA, программная модель периферийных контроллеров, подключаемых через LPC, осталась прежней. Это позволило без доработок использовать на компьютерах с LPC ПО, разработанное для управления периферийными контроллерами, которые подключались к шине ISA.

Спецификация на шину LPC определяет семь обязательных сигналов, необходимых для обеспечения двусторонней передачи данных. Четыре из этих сигналов используются для передачи как адресной информации, так и для передачи данных. Оставшиеся три используются для управления; это сигналы frame, сигнал сброса и тактовый сигнал.

Спецификация также определяет семь необязательных сигналов, которые могут быть использованы для поддержки прерываний, организации сеансов обмена DMA, возвращения системы из состояния с низким потреблением энергии («спящего режима», англ. sleeping ), а также для того, чтобы проинформировать периферийные устройства о скором отключении питания.

Пропускная способность шины LPC зависит от режима обмена; выделяют отдельные режимы обмена для работы с устройствами ввода-вывода, устройствами типа «память», сеансами DMA и др. Однако в любом случае пропускная способность шины LPC выше, чем шины ISA при работе в аналогичном режиме. При частоте тактового сигнала 33,3 МГц пропускная способность шины LPC составляет 16,67 МБ/с.

Основным преимуществом шины LPC является небольшое число требуемых для работы сигналов: для работы шины требуется только семь сигналов, что упрощает разводку и без того напичканых проводниками современных материнских плат. Использование шины LPC позволяет отказаться от разводки от 30 до 72 проводников, которые бы пришлось развести при использовании шины ISA. Используемая в LPC частота тактового сигнала в 33,3 МГц была выбрана для унификации с шиной PCI. Шина LPC предназначена для соединения СБИС в рамках одной печатной платы (материнской платы), таким образом в спецификации не предусмотрено разъёмов для передачи сигналов шины, и тем более не предусмотрено создание плат расширения.

Оригинальная игровая консоль Xbox имела в своём составе отладочный порт с шиной LPC, что позволяло энтузиастам запускать на этой системе свои программы.

Видео:Другие устройства в диспетчере устройств как убрать Windows 11.Неизвестное устройство.PCI-контроллерСкачать

Другие устройства в диспетчере устройств как убрать Windows 11.Неизвестное устройство.PCI-контроллер

Прочитайте онлайн Аппаратные интерфейсы ПК. Энциклопедия | 6.4. Интерфейс LPC

Шина lpc что это

Интерфейс LPC (Low Pin Count — малое число выводов) предназначен для локального подключения устройств, ранее использовавших шину X-Bus или ISA: контроллеров НГМД, последовательных и параллельных портов, клавиатуры, аудиокодека, BIOS и т.п. Введение нового интерфейса обусловлено изживанием шины ISA с ее большим числом сигналов и неудобной асинхронностью. Интерфейс обеспечивает те же циклы обращения, что и ISA: чтение-запись памяти и ввода-вывода, DMA и прямое управление шиной (bus mastering). Устройства могут вырабатывать запросы прерываний. В отличие от ISA/X-Bus с их 24-битной шиной адреса, обеспечивающей адресацию лишь в пределах первых 16 Мбайт памяти, интерфейс LPC имеет 32-битную адресацию памяти, что обеспечивает доступ к 4 Гбайт памяти. 16-битная адресация портов обеспечивает доступ ко всему пространству 64 К портов. Интерфейс синхронизирован с шиной PCI, но устройства могут вводить произвольное число тактов ожидания. Интерфейс программно прозрачен — как и для ISA/X-Bus, не требует каких-либо драйверов. Контроллер интерфейса LPC является устройством-мостом PCI. По пропускной способности интерфейс практически эквивалентен этим шинам. В спецификации LPC 1.0 приводится расчет пропускной способности интерфейса и устройств, его использующих. При наличии буферов FIFO интерфейс наиболее выгодно использовать в режиме DMA. В этом случае главным потребителем будет LPT-порт — при скорости передачи данных 2 Мбайт/с он займет 47% полосы интерфейса. Следующим будет инфракрасный порт — 4 Мбит/с (11,4%). Остальным устройствам (контроллер НГМД, СОМ-порт, аудиокодек) требуются еще меньшие доли, в результате они занимают до 75% полосы при одновременной работе. Таким образом, перевод этих устройств с ISA/X-Bus на LPC не должен вызывать проблем производительности более острых, чем были на старых шинах.

Интерфейс имеет всего 7 обязательных сигналов:

♦ LAD[3:0] — двунаправленная мультиплексированная шина данных;

♦ LFRAME# — индикатор начала и конца цикла, управляемый хостом;

♦ LRESET# — сигнал сброса, тот же, что и RST# на шине PCI;

♦ LCLK — синхронизация (33 Мгц), тот же сигнал, что и CLK на шине PCI;

Дополнительные сигналы интерфейса LPC:

♦ LDRQ# — кодированный запрос DMA/Bus Master от периферии;

♦ SERIRQ — линия запросов прерывания (в последовательном коде), используется, если нет стандартных линий запросов IRQ в стиле ISA;

♦ CLKRUN# — сигнал, используемый для указания на остановку шины (в мобильных системах), требуется только для устройств, нуждающихся в DMA/BusMaster в системах, способных останавливать шину PCI;

♦ РМЕ# — событие системы управления потреблением (Power Management Event), может вводиться периферией, как и в PCI;

♦ LPCPD# — Power Down, указание от хоста устройствам на подготовку к выключению питания;

♦ LSMI# — запрос прерывания SMI# для повтора инструкции ввода-вывода.

Сигналы LFRAME# и LAD[3:0] синхронизированы (являются действительными) по фронту LCLK . По шине LAD[3:0] в каждом такте цикла передаются поля элементов протокола. Обобщенная временная диаграмма цикла обмена по LPC приведена на рис. 6.15. Начало каждого цикла хост отмечает сигналом LFRAME# , помещая на шину LAD[3:0] поле START . По сигналу LFRAME# все ПУ должны прекратить управление шиной LAD[3:0] , а по коду поля START они должны декодировать последующие события как цикл шины. В следующем такте хост снимет сигнал LFRAME# и поместит на шину LAD[3:0] код типа цикла CYCTYPE . Сигнал LFRAME# может длиться и более одного такта, но признаком начала цикла (поля START ) является последний такт перед снятием сигнала. С помощью сигнала LFRAME# хост может принудительно прервать цикл (например, по ошибке тайм-аута), выставив соответствующий код.

Шина lpc что это

Рис. 6.15. Протокол LPC

В поле START возможны следующие коды:

♦ 0000 — начало цикла обращения хоста к устройству;

♦ 0010 — предоставление доступа ведущему устройству 0;

♦ 0011 — предоставление доступа ведущему устройству 1;

♦ 1111 — принудительное завершение цикла (abort).

Остальные коды зарезервированы.

Поле CYCTYPE задает тип и направление передачи. Бит 0 задает направление (0 — чтение, 1 — запись), биты [2:1] — тип обращения (00 — порт, 01 — память, 10 — DMA, 11 — резерв), бит 3 — резерв (0).

Поле TAR (Turn-Around) служит для смены «владельца» шины LAD[3:0] , оно занимает 2 такта. В первом такте прежний владелец помещает код 1111, во втором переводит буферы в третье состояние.

Поле ADDR служит для передачи адреса. В цикле памяти оно занимает 8 тактов (32 бита), в цикле ввода-вывода — 4 такта. Передача адреса начинается со старших битов (чтобы раньше срабатывал дешифратор адреса).

В поле DATA передаются данные. На каждый байт требуется 2 такта, передача начинается с младшей тетрады. Многобайтные передачи начинаются с младшего байта.

Поле SYNC служит для введения тактов ожидания устройством, к которому выполняется обращение. Оно может содержать следующие коды (остальные зарезервированы):

♦ 0000 — готовность (без ошибок), для DMA означает снятие запроса для данного канала;

♦ 0101 — короткое ожидание (несколько тактов);

♦ 1001 — готовность и присутствие запроса для канала DMA (для других типов обращения недопустимо);

♦ 1010 — ошибка: данные переданы, но возникли условия, при которых на шинах PCI или ISA выработался бы сигнал SERR# или IOCHK# (для DMA также означает снятие сигнала запроса).

Поле синхронизации обеспечивает контроль передачи, введение тактов ожидания и механизм тайм-аутов. Начав цикл, хост читает поле синхронизации. Если в течение трех тактов адресованное устройство не ответит, хост считает, что его нет на шине, и прекращает транзакцию. Если приходит код короткого ожидания, хост дожидается его смены на готовность или ошибку, но после 8 тактов ожидания он прервет транзакцию по тайм-ауту. Код длинного ожидания может приходить сколь угодно долго, ответственность за отсутствие зависания ложится на адресованное устройство. При прямом управлении поле SYNC выставляется хостом, и устройство должно терпеливо ожидать готовности, без каких-либо тайм-аутов. В самом быстром варианте (без тактов ожидания) поле SYNC занимает один такт.

На рис. 6.16 приведена последовательность полей при обращениях хоста к памяти или портам (серым цветом помечены поля, вводимые устройством). Во всех этих обращениях передается по одному байту. Для чтения памяти, предполагая 5 тактов поля SYNC (время доступа к EPROM 120 нс), требуется 21 такт (0,63 мкс), что обеспечивает скорость чтения памяти 1,59 Мбайт/с. Если память конвейеризирована, то последующие обращения будут быстрее. Для записи в память поле SYNC займет 1 такт, а весь цикл — 17 тактов (0,51 мкс), что дает скорость записи 1,96 Мбайт/с. Обращения к портам за счет более короткой адресации и без тактов ожидания (1 такт SYNC) занимают по 13 тактов (0,39 мкс), что дает скорость 2,56 Мбайт/с для чтения и записи.

Читайте также: Шины для автобусов в орле

Шина lpc что это

Рис. 6.16. Обращения к памяти и портам: а — чтение, б — запись

Для организации обмена по DMA и прямого управления хост должен иметь по одной входной линии LDRQ# для каждого подключенного устройства, использующего эти функции. По этой линии устройство передает состояние запросов каналов DMA в последовательном коде, как показано на рис. 6.17. Посылка начинается со старт-бита, за которой следуют код номера канала и бит запроса ACT: 1 (высокий уровень) — запрос активен, 0 — пассивен. Номер канала 4 (код 100) зарезервирован для прямого управления (он соответствует традиционно недоступному каналу DMA). Посылка передается при каждой смене состояния запросов. Нормально таким способом передается лишь запрос, а снятие его сигнализируется полем SYNC .

Шина lpc что это

Рис. 6.17. Посылка запроса DMA или прямого управления

Передача данных DMA (рис. 6.18) выполняется под управлением хоста, но несколько отличается от обычных обращений к портам и памяти. Здесь появляются новые поля:

♦ поле SIZE определяет размер передачи: 0000 — 1 байт, 0001 — 2 байта, 0011 — 4 байта, остальные значения зарезервированы;

♦ поле CHANNEL служит для передачи хостом номера канала DMA (биты [2;0]) и признака конца цикла (TC, бит 3).

Шина lpc что это

Рис. 6.18. Обращения DMA: а — чтение памяти, б — запись в память

Циклы чтения памяти, в зависимости от длины обращения (1, 2 или 4 байта), без тактов ожидания (они скрыты контроллером DMA) занимают 11, 18 и 32 тактов (0,33, 0,54 или 0,96 мкс), что обеспечивает производительность 3,03, 3,70 или 4,17 Мбайт/с соответственно. Циклы записи занимают 11,14 или 20 тактов (0,33, 0,42 или 0,60 мкс), что обеспечивает производительность 3,03, 4,76 или 6,67 Мбайт/с. На рисунке выделены рамкой последовательности полей, повторяющиеся при передаче 2 и 4 байтов.

Прямое управление шиной ведущее устройство запрашивает так же, как и прямой доступ, но указывая зарезервированный номер канала 4 (100). Предоставляя управление, хост в поле START задает номер мастера, который позже определит тип цикла (рис. 6.19). Прямое управление подразумевает обращение к ресурсам хоста (системной памяти, устройству PCI). Данные в 2- и 4-байтных передачах следуют друг за другом без зазора, но в циклах чтения памяти и портов всегда будут такты ожидания, поскольку потребуется время на арбитраж шины PCI или доступ к контроллеру памяти. Из расчета 6 тактов (меньше — вряд ли, возможно и больше) поля SYNC , циклы обращения к памяти (и чтения, и записи) потребуют 25, 27 или 31 такт (0,75, 0,81 или 0,93 мкс), что обеспечивает производительность 1,33, 2,47 или 4,30 Мбайт/с. За счет более короткой адресации обращение к портам быстрее — 21, 23 или 27 тактов (0,63, 0,69 или 0,81 мкс), что обеспечивает производительность 1,59, 2,90 или 4,94 Мбайт/с.

Шина lpc что это

Рис. 6.19. Обращения периферийного устройства (Bus Master): а — чтение памяти или порта, б — запись в память (порт)

Электрический интерфейс для сигналов LAD[3:0] , LFRAME# , LDRQ# и SERIRQ соответствует спецификации PCI 2.1 для питания 3,3 В. Остальные сигналы в зависимости от системной платы могут быть с уровнями как 5 В, так и 3,3 В.

Конфигурирование устройств LPC не предусматривает использования протоколов PCI или ISA PnP, поскольку все устройства LPC априорно известны системной BIOS. Для обращения к устройствам LPC хост должен декодировать их адреса и направлять обращения по ним на контроллер LPC.

Видео:Тестирования 6 пост карт для ноутбуков с не стандартным расположение контактов LPC шиныСкачать

Тестирования 6 пост карт для ноутбуков с не стандартным расположение контактов LPC шины

Низкое количество выводов — Low Pin Count

Низкое количество выводов

Шина lpc что это

Шина lpc что это

Count Low Pin ( LPC ) шины является компьютерная шина используется на IBM-совместимых персональных компьютерах для подключения устройств с низкой пропускной способностью к CPU , например, BIOS ROM (BIOS ROM был перемещен в последовательный периферийный интерфейс (SPI) шины в 2006 году ), «устаревшие» устройства ввода-вывода (интегрированные в Super I / O , встроенный контроллер или микросхему IPMI ) и доверенный платформенный модуль (TPM). «Наследие» устройства ввода / вывода обычно включают в себя последовательные и параллельные порты, PS / 2 клавиатуры , PS / 2 мышь , и гибкий контроллер диска .

Большинство материнских плат ПК с шиной LPC имеют либо концентратор контроллера платформы (PCH), либо микросхему южного моста , которая действует как хост и управляет шиной LPC. Все остальные устройства, подключенные к физическим проводам шины LPC, являются периферийными.

Видео:03. Основы устройства компьютера. Память и шина. [Универсальный программист]Скачать

03. Основы устройства компьютера. Память и шина. [Универсальный программист]

Обзор

Шина LPC была представлена Intel в 1998 году в качестве программно-совместимой замены шины Industry Standard Architecture (ISA). Это похоже на программное обеспечение ISA, хотя физически это совсем другое. Шина ISA имеет 16-битную шину данных и 24-битную адресную шину, которые могут использоваться как для 16-битных адресов портов ввода-вывода, так и для 24-битных адресов памяти; оба работают на частоте до 8,33 МГц . Шина LPC использует сильно мультиплексированную шину шириной в четыре бита, работающую с четырехкратной тактовой частотой (33,3 МГц) для передачи адресов и данных с аналогичной производительностью.

Основное преимущество LPC заключается в том, что для базовой шины требуется всего семь сигналов, что значительно снижает количество выводов, требуемых на периферийных микросхемах. Интегральной схеме, использующей LPC, потребуется на 30–72 выводов меньше, чем у ее эквивалента ISA. На современных материнских платах, которые часто переполнены, также проще проложить маршрут. Тактовая частота была выбрана в соответствии с тактовой частотой PCI , чтобы еще больше упростить интеграцию. Кроме того, LPC задуман как шина только для материнской платы. Разъем не определен, и периферийные дочерние платы LPC недоступны, за исключением Trusted Platform Modules (TPM) с дочерней платой TPM, распиновка которой является собственностью производителя материнской платы, и карты POST для отображения диагностических кодов BIOS. Обнаружение устройств не поддерживается; поскольку подключены только устройства материнской платы или определенные модели TPM, образ микропрограммы хоста (BIOS, UEFI ) будет включать статическое описание любых устройств и их адресов ввода-вывода, которые, как ожидается, будут присутствовать на конкретной материнской плате.

Сигналы

Спецификация LPC определяет семь обязательных сигналов, необходимых для двунаправленной передачи данных:

  • LCLK : частота 33,3 МГц, предоставляемая хостом. Может быть подключен к обычным часам PCI (PCICLK), поэтому не требуется выделенный вывод на хосте (южный мост).
  • LRESET # : сброс шины с активным низким уровнем. Может быть подключен к PCIRST #.
  • LFRAME # : этот активный низкий сигнал указывает на начало транзакции шины LPC. Управляется только хозяином.
  • LAD [3: 0] : эти четыре двунаправленных сигнала несут мультиплексированный адрес, данные и другую информацию. Как и в предыдущих двух управляющих сигналах, эти сигналы имеют слабые подтягивающие резисторы , поэтому они останутся в состоянии «все единицы», если не будут активно управляться устройством.

Определены шесть дополнительных сигналов, которые являются необязательными для устройств LPC, для которых не требуется их функциональность, но поддержка первых двух является обязательной для хоста:

  • LDRQ # : запрос мастера DMA / шины. Это выходной сигнал устройства, которое хочет выполнить прямой доступ к памяти либо через контроллер DMA, совместимый с Intel 8237 , либо через протокол ведущего устройства шины, специфичный для LPC. Хост должен предоставить один соответствующий входной контакт для каждого устройства, которое в нем нуждается (минимум два).
  • SERIRQ : серийный сигнал прерывания, совместимый с Intel 8259 . Одна линия используется всеми устройствами LPC и хостом.
  • CLKRUN # : сигнал открытого коллектора, используемый для перезапуска часов в системах, которые могут останавливать их для управления питанием. Не требуется, если хост не останавливает часы. Может быть подключен к эквивалентному сигналу PCI.
  • LPME # : событие управления питанием с открытым коллектором, чтобы вывести систему из спящего режима. Эквивалентно сигналу PME # шины PCI.
  • LPCPD # : дополнительный вывод хоста для предупреждения устройства LPC о том, что питание скоро будет отключено, и он не должен делать никаких прерываний или запросов DMA.
  • LSMI # : запрос прерывания управления системой . Это требуется только в том случае, если устройству LPC необходимо инициировать SMI # в ответ на доступ к шине (например, для выполнения программной эмуляции отсутствующего периферийного оборудования). В противном случае для запроса SMI можно использовать более медленный протокол SERIRQ.

Читайте также: Шины в тулуне в наличие

Сроки и производительность

Шина LPC выводит свои электрические условные обозначения из обычных PCI . В частности, он разделяет ограничение, согласно которому требуются два холостых цикла, чтобы «повернуть» любой сигнал шины, чтобы другое устройство «разговаривало». В первом автобус активно ездят высоко. Во втором случае шина отключена и удерживается подтягивающими резисторами. Новое устройство может начать отправку данных по шине в третьем цикле. Операции LPC тратят значительную часть своего времени на выполнение таких операций.

Как уже упоминалось, шина LPC спроектирована так, чтобы иметь производительность, аналогичную шине ISA. Точная скорость передачи данных зависит от типа выполняемого доступа к шине (ввод-вывод, память, DMA , прошивка ), а также от скорости хоста и устройства LPC. Все циклы шины, за исключением 128-байтового цикла чтения микропрограммного обеспечения, в котором 256 из 273 тактовых импульсов, потребляемых этим циклом, фактически используются для передачи данных для получения пропускной способности 15,63 МБ / с, тратят большую часть своего времени на накладные расходы, а не на Обмен данными. Следующий самый быстрый цикл шины, 32-битный цикл записи DMA в стиле ISA, который определен в этом стандарте, может передавать до 6,67 МБ / с, потому что только 8 из 20 тактов синхронизации, используемых в этом цикле шины, фактически передают данные с остальными циклов накладные.

Один из самых медленных циклов шины — это простое чтение или запись в память, когда только 2 из 17 тактов (плюс любые состояния ожидания, наложенные устройством) передают данные со скоростью 1,96 МБ / с.

Приложения

Intel разработала шину LPC таким образом, чтобы образ BIOS системы мог храниться в одной микросхеме флэш-памяти, напрямую подключенной к шине LPC. Intel также сделала возможным размещать образы операционных систем и программные приложения на одной микросхеме флэш-памяти, напрямую подключенной к шине LPC, в качестве альтернативы порту Parallel ATA .

CPLD или FPGA может реализовать хост LPC или периферийное устройство.

Исходная игровая консоль Xbox имеет порт отладки LPC, который можно использовать для принудительной загрузки Xbox нового кода.

Видео:Обзор пост плата 10 в 1 7-LPC , PCI-E, MiniPCI-E и PCIСкачать

Обзор пост плата 10 в 1 7-LPC , PCI-E, MiniPCI-E и PCI

ISA-совместимая операция

Все транзакции шины LPC инициируются хостом, который на короткое время устанавливает низкий уровень LFRAME #, по крайней мере, на один цикл. Во время последнего цикла с низким значением LFRAME # (называемого полем START) хост переводит LAD [3: 0] в нулевые значения, чтобы указать, что за ним последует ISA-совместимая транзакция. Во время первого цикла с LFRAME # снова высокий, хост запускает поле «тип / направление цикла» (CTDIR): три бита, указывающие тип (ввод-вывод, память или DMA) и направление (чтение с устройства или запись в устройство) следующей передачи. Обычно за ним следует поле адреса передачи. Размер адреса зависит от типа цикла:

  • Для доступа к вводу-выводу адрес составляет 16 бит, в течение 4 циклов первым передается старший значащий полубайт.
  • Для доступа к системной памяти адрес составляет 32 бита, в течение 8 циклов передается наиболее значимый полубайт первым.
  • Доступ к DMA в стиле ISA не имеет адреса как такового , но за два тактовых цикла передается полубайт, содержащий номер канала DMA, и второй полубайт, указывающий размер передачи. Адрес памяти программируется в контроллере DMA в стиле ISA в наборе микросхем или в ЦП вне шины LPC. См. Раздел о прямом доступе к памяти ниже.

ISA-совместимое чтение и запись

Доступ к памяти и вводу-выводу разрешен только как однобайтный.

При записи за описанным выше адресом следует поле данных, 8 битов передаются с младшим байт первым в течение двух циклов.

После этого хост переключает шину на устройство. Этот оборот занимает два цикла и работает так же, как обычные сигналы управления шиной PCI: в течение одного цикла хост устанавливает высокий уровень на линиях LAD (1111). Во время второго цикла хост перестает управлять линиями, хотя они остаются на высоком уровне из-за подтягивающих резисторов. Устройство может управлять линиями, начиная с третьего цикла.

После любого включения устройства следует как минимум один цикл SYNC. Число является переменным, устройство может добавить столько состояний ожидания, сколько необходимо. Битовые комбинации 0101 и 0110 указывают, что циклы синхронизации будут продолжаться. Ожидание заканчивается, когда устройство запускает шаблон 0000 (готово) или 1010 (ошибка) на шине LAD в течение одного цикла.

В случае чтения за ним следуют 8 бит данных, сначала передается наименее значимый полубайт в течение двух циклов, так же, как и при записи.

Затем устройство снова поворачивает шину к хосту (еще два цикла), и передача завершается; хост может отправить поле START другой передачи в следующем цикле.

Если хост пытается выполнить передачу на неиспользуемый адрес, ни одно устройство не будет запускать циклы SYNC, и хост увидит 1111 на шине LAD. После просмотра трех циклов 1111 (два цикла разрешены в дополнение к двум циклам поворота для медленного устройства, чтобы декодировать адрес и начать управление шаблонами SYNC), хост прерывает операцию.

ISA-совместимый DMA

Платформа Контроллер — концентратор (РСН) чип или южный мост чип выступает в качестве хозяина и управляет LPC автобус. Он также действует как центральный контроллер прямого доступа к памяти для устройств на этой шине, если контроллер памяти находится в наборе микросхем. В ЦП, которые содержат собственный контроллер (-ы) памяти, контроллер DMA расположен в ЦП. Для совместимости с программным обеспечением, изначально написанным для систем с шиной ISA, контроллер DMA содержит схемные эквиваленты «устаревших» бортовых периферийных устройств архитектуры IBM PC / AT , такие как два программируемых контроллера прерываний , программируемый интервальный таймер и два ISA. Контроллеры DMA , которые все участвуют в « DMA в стиле ISA ».

ISA-совместимый DMA использует на хосте контроллер DMA, совместимый с Intel 8237, который отслеживает расположение и длину буфера памяти, а также направление передачи. Устройство просто запрашивает обслуживание у заданного номера канала DMA, а хост выполняет доступ DMA на шине LPC.

Запросы DMA выполняются с использованием сигнала устройства LDRQ #. Обычно высокий уровень, устройство может указать переход на ISA-совместимой линии DRQ, отправив 6-битный запрос: начальный бит 0, 3-битный номер канала DMA (старший бит первым), один бит нового уровня запроса ( почти всегда 1, указывая, что требуется передача DMA), и последний стоповый бит 1. Затем хост выполняет цикл DMA. Циклы DMA называются на основе доступа к памяти, поэтому «чтение» — это передача из памяти в устройство, а «запись» — это передача из устройства в память.

«Адрес» состоит из двух циклов: 3-битного номера канала и 1-битной индикации счетчика клемм (вывод TC шины ISA или выход EOP # 8237), за которыми следует 2-битный размер передачи.

По умолчанию каналы DMA 0–3 выполняют 8-битные передачи, а каналы 5-7 — 16-битные передачи; но специфичное для LPC расширение позволяет передавать 1, 2 или 4 байта по любому каналу. Когда выполняется многобайтовая передача, каждый байт имеет собственное поле SYNC, как описано ниже. Передачи DMA допускают дополнительное значение поля SYNC: образец 1001 указывает, что устройство готово с текущим байтом, а также желает передать больше байтов. Стандартный шаблон «готов» 0000 указывает, что это последний байт.

Обычный шаблон SYNC «готово» 0000 (или шаблон ошибки 1010) требует, чтобы хост остановил DMA после следующего за ним байта, пока устройство не сделает другой запрос DMA через сигнал LDRQ #. Шаблон 1001 указывает, что хост должен считать, что запрос DMA устройства все еще активен; хост продолжит передачу оставшихся байтов или начнет другую передачу, в зависимости от ситуации, без отдельного запроса через LDRQ #.

Для записи DMA, когда данные передаются от устройства, за полем SYNC следуют 8 бит данных и другое поле SYNC, пока не будет достигнута длина, указанная хостом для этой передачи, или устройство не остановит передачу. Поле двухциклового оборота завершает транзакцию. При чтении DMA, когда данные передаются на устройство, за полем SYNC следует оборот, а последовательность данных — оборот — синхронизация — оборот повторяется для каждого переданного байта.

Сериализованные прерывания

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

  • Хост устанавливает низкий уровень на линии SERIRQ в течение восьми тактов, затем высокий уровень для другого, и позволяет шине плавать в течение последнего цикла обработки.
  • Если устройству необходимо запросить IRQ №6, оно ожидает 6 × 3 = 18 тактов, затем устанавливает низкий уровень SERIRQ для одного тактового сигнала и высокий уровень для другого.

Читайте также: Шины для прицепной оси

Устройства могут синхронизироваться на первом этапе, потому что линия может быть переведена на низкий уровень только в течение двух или более последовательных тактов хостом: никакое другое устройство не устанавливает низкий уровень более чем на один такт. Хост распознает источники прерываний, наблюдая за линией и подсчитывая количество тактов: если он видит, что линия SERIRQ переведена в низкий уровень на восемнадцатом тактовом сигнале, то устанавливается IRQ 18/3 = 6.

Вышеупомянутый непрерывный режим, когда хост инициирует протокол. В тихом режиме устройство запрашивает прерывание, устанавливая низкий уровень SERIRQ на время. Затем хост продолжает понижать уровень линии в течение остальных семи часов. С этого момента протокол тот же. В обоих режимах количество тактов начального импульса синхронизации может составлять от четырех до восьми.

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

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

Видео:Кто и когда обращается к SPI flash в процессе запуска материнской платы. + куча полезной инфы. КМС#4Скачать

Кто и когда обращается к SPI flash в процессе запуска материнской платы. + куча полезной инфы. КМС#4

Циклы LPC без ISA

Значения поля START, отличные от 0000, используются для обозначения различных несовместимых с ISA передач. Поддерживаемые переводы:

СТАРТ = 1101, 1110 Память прошивки для чтения и записи Это позволяет размещать микропрограммное обеспечение (BIOS) за пределами обычного адресного пространства периферийных устройств. Эти передачи аналогичны передачам, совместимым с ISA, за исключением того, что:

  • Нет поля CTDIR; направление кодируется в поле START (1101 для чтения, 1110 для записи).
  • Имеется поле выбора микросхемы из 4 бит, позволяющее выбрать один концентратор микропрограммного обеспечения из многих. Например, второй концентратор микропрограмм может использоваться для хранения резервной BIOS на случай, если основной BIOS поврежден вредоносным ПО или плохой флэш-памятью.
  • Адрес 28 бит. Первым передается старший полубайт.
  • После адреса следует поле размера. Поддерживаемые размеры чтения / записи — 1, 2 и 4 байта. Поддерживаемые размеры только для чтения — 16 или 128 байт.
  • Данные передаются одним непрерывным пакетом без состояний ожидания. Для всей передачи есть только одно поле SYNC.

СТАРТ = 0010, 0011 Мастер шины DMA До двух устройств на шине LPC могут запросить передачу мастера шины, используя сигнал LDRQ # для запроса использования зарезервированного канала DMA 4. В этом случае хост начнет передачу со специальным полем START 0010 для мастера шины. 0 или 0011 для мастера шины 1, за которым сразу же следуют два цикла обработки, чтобы передать шину устройству, запрашивающему цикл DMA мастера шины. После циклов обработки передача происходит очень похоже на инициированную хостом передачу, совместимую с ISA, с измененными ролями:

  • Устройство отправляет одноцикловое поле CTDIR (разрешены только типы ввода-вывода и передачи памяти).
  • Устройство отправляет адрес (16 или 32 бита, в зависимости от типа). Первым передается старший полубайт.
  • Устройство отправляет одноцикловое поле размера передачи, кодирующее 8, 16 или 32 бита.
  • В случае записи следуют данные. В отличие от ISA-совместимых циклов DMA, данные передаются одним пакетом, без каких-либо состояний ожидания.
  • Затем идут два цикла оборота, пока шина LAD возвращается хосту.
  • Под управлением хоста вставляется поле SYNC переменной длины.
  • В случае чтения следуют данные, предоставленные хостом.
  • Это отличается от мастеринга 16-битной шины ISA, потому что мастеринг шины LPC требует 32-битного адреса памяти при выполнении передачи в память, не использует канал DMA в стиле ISA и может поддерживать 8-, 16- или 32-битные передачи; в то время как для управления 16-битной шиной ISA требуется 24-битный адрес памяти при выполнении передачи в память, требуется использование канала DMA в стиле ISA и не может выполняться 32-битная передача.

СТАРТ = 1111 Прерывание транзакции В любое время, хотя обычно в ответ на ошибку устройства во время поля SYNC, хост может прервать текущую транзакцию, установив LFRAME # в низкий уровень, не дожидаясь завершения текущей транзакции. Он должен удерживать его на низком уровне не менее 4 циклов, а затем вернуть его на высокий уровень с помощью специального значения поля START 1111. Это выполняет мягкий сброс шины LPC и оставляет шину в состоянии ожидания до тех пор, пока не будет начата следующая передача, снова установив LFRAME # на низкий уровень. . СТАРТ = 0101 Доступ к местоположению TPM Последние спецификации Trusted Platform Module определяют специальные циклы TPM-Read и TPM-Write, которые основаны на циклах I / O Read и I / O Write. Эти циклы используют поле START с ранее зарезервированным значением 0101 и помещают 16-битное смещение адреса памяти в поле адреса. Эти циклы используются при использовании средства определения местоположения TPM.

Видео:Кан шина, что это? Поймет школьник! принцип работыСкачать

Кан шина, что это? Поймет школьник! принцип работы

Поддерживаемые периферийные устройства

Спецификация шины LPC ограничивает типы периферийных устройств, которые могут быть к ней подключены. Он позволяет использовать только устройства, принадлежащие к следующим классам устройств: суперустройства ввода-вывода, интегрированное аудио, включая устройства AC’97 или устройства, в которых реализован интерфейс Sound Blaster , память общих приложений, включая энергонезависимую память BIOS , концентраторы микропрограмм и встроенные устройства. контроллеры. Более того, каждый класс ограничен тем, какие циклы шины разрешены для каждого класса.

Устройствам супер-ввода-вывода и аудиоустройствам разрешено принимать циклы ввода-вывода, принимать сторонние циклы DMA в стиле ISA и генерировать мастер-циклы шины. Устройства памяти общего назначения, такие как энергонезависимая память BIOS и флэш-устройства LPC, могут принимать циклы памяти. Концентраторам микропрограмм разрешено принимать циклы памяти микропрограмм. Встроенные контроллеры могут принимать циклы ввода-вывода и генерировать мастер-циклы шины. Некоторые циклы ISA, которые считались бесполезными для этих классов, были удалены. Они включают инициируемые хостом двухбайтовые циклы памяти и двухбайтовые циклы ввода-вывода, инициируемые хостом. Эти удаленные типы передачи могут быть инициированы хостом на шинах ISA, но не на шинах LPC. Хост должен моделировать двухбайтовые циклы, разбивая их на два однобайтовых цикла. Шина ISA имеет аналогичную концепцию, поскольку исходная 8-битная шина ISA требовала для разделения 16-битных циклов. Следовательно, 16-битная шина ISA автоматически разделяет 16-битные циклы на 8-битные циклы в интересах 8-битных периферийных устройств ISA, если только устройство ISA, на которое нацелена 16-битная память или цикл ввода-вывода, не подтвердит сигнал, сообщающий шину, чтобы он мог принять запрошенную 16-битную передачу без помощи разделителя цикла ISA. Управление шиной в стиле ISA было заменено в шине LPC протоколом управления шиной, который вообще не полагается на контроллеры DMA в стиле ISA. Это было сделано для того, чтобы убрать ограничение ISA на то, какой тип циклов мастера шины разрешено устройству инициировать на каком канале DMA. Циклы шины в стиле ISA, унаследованные LPC от ISA, представляют собой однобайтовые циклы шины ввода-вывода, инициированные хостом, однобайтовые циклы памяти, инициированные хостом, и одно- или двухбайтовые циклы DMA в стиле ISA, инициированные хостом. .

Однако были добавлены некоторые циклы шины, отличные от ISA. Циклы, которые были добавлены для повышения производительности устройств помимо концентраторов микропрограмм, включают в себя циклы памяти мастера с одним, двумя и четырьмя байтами в стиле LPC; одно-, двух- и четырехбайтовые циклы ввода-вывода мастера шины; и 32-битный сторонний DMA, который соответствует всем ограничениям стороннего DMA в стиле ISA, за исключением того факта, что он может выполнять 32-битные передачи. Любое устройство, которому разрешено принимать традиционный DMA в стиле ISA, также может использовать этот 32-битный DMA в стиле ISA. Хост мог инициировать 32-битные циклы DMA в стиле ISA, а периферийные устройства могли инициировать циклы мастера шины. Концентраторы микропрограмм потребляли циклы микропрограмм, которые были разработаны только для концентраторов микропрограмм, так что адреса микропрограмм и обычные адреса ввода-вывода, отображаемые в памяти, могли перекрываться без конфликтов. При чтении из памяти микропрограммного обеспечения можно было прочитать 1, 2, 4, 16 или 128 байтов за один раз. Запись в память микропрограммного обеспечения может записывать один, два или четыре байта одновременно.

  • Свежие записи
    • Нужно ли менять пружины при замене амортизаторов
    • Скрипят амортизаторы на машине что делать
    • Из чего состоит стойка амортизатора передняя
    • Чем стянуть пружину амортизатора без стяжек
    • Для чего нужны амортизаторы в автомобиле

    📸 Видео

    Этой штукой можно узнать что сломалось в ноутбуке. Тестер-анализатор PCI PCI-E LPC. 3в1.C AliExpressСкачать

    Этой штукой можно узнать что сломалось в ноутбуке. Тестер-анализатор PCI PCI-E LPC. 3в1.C AliExpress

    Код 28 — для устройства не установлены драйверы в Windows 10 и Windows 7 (решение)Скачать

    Код 28 — для устройства не установлены драйверы в Windows 10 и Windows 7 (решение)

    Как подключить POST-карту к материнской плате Compal и не только.Скачать

    Как подключить POST-карту к материнской плате Compal и не только.

    Лекция 310. Шина USB - функциональная схемаСкачать

    Лекция 310.  Шина USB - функциональная схема

    ❓ Неизвестное устройство в Windows. Как решить проблему?Скачать

    ❓ Неизвестное устройство в Windows. Как решить проблему?

    Отладочная карта для ноутбуков MiniPCI-E / MiniPCI-E Debugging CardСкачать

    Отладочная карта для ноутбуков MiniPCI-E / MiniPCI-E Debugging Card

    Системная шина процессораСкачать

    Системная шина процессора

    Влияние шин PCI-e и внутренней шины видеокарты на производительностьСкачать

    Влияние шин PCI-e и внутренней шины видеокарты на производительность

    Диагностика компьютера и отладочные картыСкачать

    Диагностика компьютера и отладочные карты

    лекция 403 CAN шина- введениеСкачать

    лекция 403  CAN шина- введение

    Системная шина персонального компьютера PCIСкачать

    Системная шина персонального компьютера PCI

    Как работает LIN шина автомобиля. K-Line L-Line шины данных. Лин шина автомобиля. Lin-bus networkСкачать

    Как работает LIN шина автомобиля. K-Line L-Line шины данных. Лин шина автомобиля. Lin-bus network

    Лекция 281. Шина ISAСкачать

    Лекция 281. Шина ISA

    Системная шина персонального компьютера AGPСкачать

    Системная шина персонального компьютера  AGP
Поделиться или сохранить к себе:
Технарь знаток