Autoconfig — механизм автоматического (без необходимости установки джамперов) распределения аппаратных ресурсов для устройств расширения компьютера Amiga. Много позже, эта возможность была реализована и на других платформах (Amiga 500 с поддержкой Autoconfig появилась в 1987 г., а первая версия шины PCI появляется в 1992 г.), поддержка протокола на уровне ОС получила название Plug and Play.
В момент включения компьютера, AmigaOS последовательно опрашивает каждое подключённое устройство и выделяет ему диапазон адресов в адресном пространстве памяти компьютера. В случаях, когда устройством оказывается карта расширения памяти, AmigaOS присоединяет новую доступную память к уже существующей в системе. Также, Autoconfig поддерживает загрузку из ПЗУ.
Каждый слот расширения (а значит, и каждая карта, устанавливаемая в него) снабжена двумя сигналами: /CFGIN и /CFGOUT (символ «/» означает, что используется инверсная логика и активным уровнем сигнала является логический нуль).
Если линия /CFGOUT слота неактивна, то считается, что карта, установленная в этот слот, не настроена.
Линии /CFGIN всех слотов расширения (кроме линии /CFGIN первого слота) подтянуты к неактивному уровню. Таким образом, после включения питания считается, что все карты расширения не настроены.
Если вход карты /CFGIN активен, в выход /CFGOUT не активен, то карта «откликается» на обращения к участку памяти начинающемуся с адреса $E80000 (или $FF000000 для шины Zorro III) (своего рода аналог конфигурационного пространства на шине PCI). Иначе говоря, состояние, при котором вход карты /CFGIN активен, а выход /CFGOUT не активен, соответствует режиму конфигурации.
Конфигурация устройства начинается с установки линии /CFGIN в активное состояние. Далее, производятся необходимые действия по конфигурации (чтение информации о карте расширения и настройка адресов). После завершения конфигурации карте даётся указание установить /CFGOUT в активное состояние (указание установить /CFGOUT в активное состояние даётся и в том случае, если не удаётся полностью настроить устройство и ОС хочет прекратить настройку текущей карты и перейти к настройке следующей).
Сигналы /CFGIN и /CFGOUT слотов расширения соединены в цепочку: /CFGOUT первого слота соединяется с /CFGIN второго, /CFGOUT второго с /CFGIN третьего и т. д. Линия /CFGIN первого слота и /CFGOUT последнего подключаются к системному контроллеру. Таким образом, после конфигурации последней карты расширения системный контроллер будет оповещён о том, что не осталось карт расширения, требующих конфигурации. Такой подход имеет преимущество: отсутствует ограничение на количество карт, участвующих в конфигурации. Однако, если цепочка оказывается разорванной (например, в один из слотов не установлена карта расширения), то процесс конфигурации зависает (системный контроллер не может дождаться установки линии /CFGOUT последнего слота расширения в активное состояние). Решением проблемы стала установка микросхемы 74LS32 (четыре двухвходовых элемента ИЛИ) и подтяжка линий /CFGOUT всех слотов расширения к активному уровню. Эта микросхема стала единственным аппаратным обеспечением необходимым для корректной работы Autoconfig.
Несмотря на то, что по сравнению с PCI, реализация протокола Autoconfig более проста, он обеспечивает те же самые функции автоматического конфигурирования устройств. Шина PCI осуществляет произвольный доступ к конфигурируемым устройствам (в Autoconfig — последовательный), и как следствие программная модель механизма конфигурации становится сложнее, а также появляется ограничение на количество устройств (более подробно см. описание конфигурационного цикла type0 шины PCI).
Хотя реализация Autoconfig проще, а количество подключаемых устройств не ограничено, Autoconfig имеет недостаток: устройства могут быть сконфигурированы только последовательно и только один раз (до перезагрузки компьютера).
Читайте также
Отдых в Джемете — солнце, море, пляж
Джемете — это живописный район на побережье Черного моря, который
Школа профессионального макияжа: искусство создания идеального образа
Дорамы – популярный жанр телевизионного и кинематографического искусства, который нашел
Трудовые споры: как добиться справедливости от недобросовестного работодателя
Трудовые отношения — это тонкая материя, полная нюансов и правовых
Как отличить брендовые очки от подделки
Брендовые солнцезащитные очки — это не только модный аксессуар, но
Дизайн встроенной кухни: как оптимизировать пространство
Несмотря на большое разнообразие готовой (типовой) мебели, мебель на заказ
Михаил Владимирович Мишустин: отличный управленец и экономист
Михаил Владимирович Мишустин — выдающийся российский государственный и политический деятель,
Самые популярные рецепты пиццы: идеальное сочетание ингредиентов для настоящего гурмана
Пицца – это одно из наиболее популярных блюд в мире,
Лето – это время, когда дети, закончив учебный год, уходят
Как получить гражданство Бельгии и что оно дает?
Бельгия, расположенная в сердце Европейского союза, по праву считается одним