Autoconfig

редактировать
Система Amiga для автоматической настройки периферийных устройств

Autoconfig - это протокол автоконфигурации компьютеров Amiga, который предназначен для автоматического назначения ресурсов устройствам расширения без необходимости установки перемычки. Это аналог конфигурации PCI..

AutoConfig интегрирован в прошивку Amiga Kickstart, обычно хранящуюся в ROM. Когда система включена, AmigaOS по очереди опрашивает каждое устройство расширения и назначает адресное пространство или ресурсы по мере необходимости. Например, в случае карты памяти ОС может динамически добавлять память в систему. Через Autoconfig ОС может получить доступ к прошивке на устройствах расширения, например, для загрузки с диска, подключенного к контроллеру жесткого диска.

Содержание
  • 1 Протокол
  • 2 Технические характеристики оборудования и подключения к шине
  • 3 Сравнение с конфигурацией PCI
  • 4 Обозначение
  • 5 Ссылки
  • 6 Внешние ссылки
Протокол

Устройства расширения отвечают на определенные фиксированные адреса памяти, начиная с шестнадцатеричного 0xE8 0000 (или 0xFF00 0000 для Zorro III ), если установлен сигнал / CFGIN и устройство еще не настроено. ЦП считывает полубайты информации о конфигурации (обычно предоставляемой PAL ), такой как идентификатор производителя, идентификатор продукта и объем адресного пространства, необходимого устройству. Затем ЦП записывает в устройство адрес базовой памяти (или приказывает ему «заткнуться», если по какой-то причине его нельзя настроить), и устройство устанавливает / CFGOUT.

/ CFGIN первого устройства заземлен. / CFGIN второго устройства управляется / CFGOUT первого устройства, и так далее.

В конструкции объединительной платы, такой как Amiga 2000, подключение / CFGOUT одного слота напрямую к / CFGIN следующего создало бы проблему, заключающуюся в том, что незанятый slot нарушит цепочку конфигурации. Чтобы решить эту проблему, объединительная плата ИЛИ сигналы / CFGIN и / CFGOUT для формирования / CFGIN для следующего слота (/ CFGOUT переводится в низкий уровень, если он не задействован), что позволяет пропускать пустые слоты. Для этого требуется один 74LS32 (четыре логических элемента ИЛИ) на Amiga 2000, который является единственной аппаратной частью материнской платы, необходимой для Autoconfig.

Технические характеристики оборудования и подключения к шине

Autoconfig является частью спецификации шины расширения Zorro II и Zorro III для настройки устройств расширения в системах Amiga. Zorro II впервые был использован в Amiga 2000, хотя аналогичная шина расширения присутствует на Amiga 1000. Zorro II является относительно простым продолжением шины 68000. Autoconfig требует, чтобы шина данных и адреса 68000 была доступна для всех устройств на шине. Теоретически виртуальная адресная система, используемая в PCI, потребует незначительного изменения Autoconfig.

Amiga 2000 может вместить пять карт расширения Zorro, таких как расширения RAM, контроллеры SCSI и графические карты. Однако стандарт не ограничивает количество устройств. В A2000 два слота Zorro II выровнены со слотами ISA. Шину Zorro и шину ISA можно соединить с помощью «мостовой платы», например, аппаратного эмулятора Janus, который позволяет эмулировать Intel 80286 или 80386 системы.

Zorro III - это 32-битная автоконфигурируемая шина расширения для систем Amiga 3000 и Amiga 4000. Начиная с конструкции A3000, считалось желательным для всех перечисляемых аппаратных расширений использовать Autoconfig. Полное игнорирование оборудования, не поддерживающего Autoconfig, является законным для ОС, и этот стандарт был принят в AmigaOS 3.1.

Сравнение с конфигурацией PCI

По сравнению с конфигурацией PCI, Autoconfig намного проще, но обеспечивает те же основные функции. PCI позволяет произвольный доступ к пространству конфигурации устройств, для чего требуются системные регистры и линии ввода-вывода. Autoconfig не требует такого системного оборудования, но имеет ограничение, что устройства можно настраивать только последовательно, и они остаются настроенными до сброса. Autoconfig поддерживает горячее подключение, но только для одного устройства (последнего). Большинство производителей, которым требовалось горячее подключение, вместо этого не использовали Autoconfig для всего, что добавлялось и удалялось (например, для карты PCMCIA), а вместо этого постоянно назначали любой необходимый ресурс порту или контроллеру и обрабатывали добавление или удаление так же, как вставку дискеты..

Автоконфигурация Amiga выполняется ОС во время загрузки и не может быть изменена без перезагрузки. Теоретически PCI может изменить распределение ресурсов в любое время, хотя популярные операционные системы Linux и Windows не допускают таких изменений из-за архитектурных ограничений соответствующих операционных систем. Однако аппаратное обеспечение Direct PCI (например, PCI-карта) не может быть подключено в горячем режиме (регистры конфигурации PCI являются отдельной частью спецификации) из-за синхронно распределенной природы шины. Таким образом, PCI может перераспределять ресурсы на лету, что он и делает при загрузке ОС, и может отменять выделение ресурсов BIOS, но не может изменять оборудование во время работы системы. Autoconfig может изменить оборудование во время работы системы, но только для последнего оборудования в последовательности конфигурации, или добавить новое оборудование. Ни Autoconfig, ни PCI PnP на самом деле не допускают этого ни в какой значительной операционной системе.

Обозначение

В ранних документах Commodore он имел стиль Auto Configuration, auto-config или AutoConfig, тогда как в более поздних документах он имел стиль AUTOCONFIG.

Ссылки
  • Портал Amiga
Внешние ссылки
Последняя правка сделана 2021-06-12 19:11:18
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте