Apple Desktop Bus
Apple Desktop Bus (ADB) | ||||
---|---|---|---|---|
| ||||
Тип | Интерфейс ввода/вывода | |||
История | ||||
Разработчик | Стив Возняк/Apple Computer | |||
Разработано | 1986 | |||
Производитель | Apple Computer (сейчас Apple Inc.) | |||
Произведено | с 1986 по 1998 | |||
Вытеснил | RS-422/6522 клавиатуру и мышь | |||
Вытеснено | USB (1998-1999) | |||
Спецификации | ||||
Подключение на ходу | нестабильная поддержка | |||
Внешнее | да | |||
Сигнал данных | Дву-направленный последовательный поток | |||
Полоса пропускания | 125 kbit/s максимум (~10 kbit/s в действительности) | |||
Макс. устройств | 16 максимум (~5 в действительности, 3 поддерживаемо) | |||
Протокол | Последовательный | |||
Выводы | 4 | |||
Соединитель | Mini-DIN | |||
Распиновка | ||||
Файл:MiniDIN-4 Connector Pinout.svg Female socket from the front. | ||||
контакт 1 | ADB | Data | ||
контакт 2 | PSW | Power on | ||
контакт 3 | +5V | +5 volts power | ||
контакт 4 | GND | Ground | ||
Такой же разъём как и S-Video |
Apple Desktop Bus (или ADB) — это устаревшая последовательная шина ввода/вывода данных, созданная для подсоединения медленных устройств к компьютерам Apple Macintosh. Устанавливалась на всех настольных компьютерах Apple вплоть до 1999 года.
История
ADB была разработана Стивом Возняком, искавшим себе новый проект в середине 1980-х. Кто — то предложил, чтобы он создал новую систему связи для устройств типа мыши и клавиатуры, которая требовала бы только единственного цепочечного соединения кабеля, и была бы недорогой в конечном результате. Стив исчез из поля зрения СМИ на месяц, а вернулся уже с ADB.
Первая система, в которой использовалась ADB, была Apple IIgs. ADB впоследствии использовалась на всех Apple Macintosh машинах, начиная с Macintosh II и Macintosh SE, прежде чем была заменена USB начиная с iMac 1998 года. ADB также использовалась в ряде других 680x0-основных микрокомпьютерах, выпускаемых Sun, HP, NeXT и другими производителями.
Никакие машины, построенные сегодня не используют ADB для взаимосвязи устройств, но до февраля 2005 компьютеры PowerBook и iBook все ещё использовали ADB как внутренний интерфейс для встроенных клавиатуры и тачпада. Теперь они подсоединяются через USB.
Устройство
Физическое
В соответствии с общей философией промышленного дизайна Apple, ADB была предназначена чтобы быть настолько простой в использовании, насколько возможно, все ещё будучи недорогой для создания. Подходящий разъём был найден в форме 4 штырькового miniDIN разъёма, который также используется для S-видео. Разъёмы были маленькими, широко доступными, и могли быть вставлены только в правильное положение из-за выемок на кольцевой части разъёма.
Протокол ADB требовал только единственного провода для данных (помеченн как '«ADB»'). Два других провода использовались для питания (+5В и Масса). 5 вольтовый провод допускал токи до 500 мА, и требовал, чтобы устройства использовали только по 100 мА каждое. ADB также включал '«PSW»' провод, который был подключён непосредственно к блоку питания компьютера. Это было сделано для того, чтобы разрешить клавише на клавиатуре запускать компьютер, не нуждаясь в программном обеспечении ADB для интерпретации сигнала. В более современных проектах вспомогательный микроконтроллер всегда остаётся включённым, таким образом экономично посылать команду включения по стандартному каналу USB.
Большинство последовательных цифровых интерфейсов используют отдельный тактовый провод, чтобы сигнализировать прибытие индивидуальных битов данных. Поскольку ADB была разработана чтобы быть дешёвой, Возняк признал, что один единственный провод имел достаточную полосу пропускания чтобы нести оба сигнала. Кроме того было экономично декодировать тактовые сигналы и сигналы данных чтобы использовать более дешёвые кабели. Декодирующий приёмопередатчик был доступен только по запросу производителя оборудования поскольку Apple предпочитало работать более близко с продавцами. Возможно Apple продало эти аппаратные средства ниже их стоимости, чтобы поощрить развитие периферийных устройств.
Аппаратная часть
Система ADB базируется на устройствах, способных расшифровать единственное число («адрес») и в состоянии хранить несколько небольших чисел — данных (в их регистрах). Все управление на шине ведёт главный компьютер, который отсылает команды, чтобы прочитать или записать данные: устройствам не позволяют использовать шину, если компьютер не попросит это. Эти запросы принимают форму единственной последовательности байтов. Старшие четыре бита содержали адрес (зависящий от id) устройства на цепи, учитывая до 16 устройств на единственной шине. Следующие два бита определили одну из четырёх команд, и заключительные два бита указали одного из четырёх регистраторов. Команды были:
11 - talk
— послать содержимое регистра в компьтер10 - listen
— записать число в регистр00 - flush
— очистить регистрreset
— команда сброса для всех присоединённых к шине устройств.
Примечание: для команды Reset значащими битами являются 3,2,1,0, все они равны 0.
Например, если мышь была известна по адресу $D, то компьютер периодически отсылал бы сообщение на шину, которое выглядело бы так:
1101 11 00
Это означает, что устройство $D (1101) должно говорить (11) и возвращать содержание нулевого регистра (00). Для мыши это означает: «скажи мне последние изменения положения». Регистры могли содержать 2…8 байт. Регистры 1 и 2 были неопределены, и предназначались для храненния информации и конфигурации. В регистрире #3 всегда содержалась информация для идентификации устройства.
Примечание: для команды Reset значащими битами являются 3,2,1,0, все они равны 0.
Адреса и номера устройств выстанавливались в значения по умолчанию при сбросе. Например, все клавиатуры имели номер $2, а все мыши $3. При включении машины контроллер ADB спросит каждый из известных адресов содержимое регистра #3. Если от данного адреса ответ не прибыл, компьютер отметит его как пустой, и не будет опрашивать его в дальнейшем. Если устройство отвечало, то это выражалось назначением случайного адреса. Затем компьюьютер посылал другую команду на новый адрес, прося устройство переместиться на другой адрес. Как только это было закончено, устройство отмечалось как «живое», и система в дальнейшем обращалась к нему. Как только все устройства были перечислены этим способом, шина была готова к использованию.
Хотя это не было обычно для тех времён, но была возможность подключать к ADB несколько устройств одного вида (например две клавиатуры или два графических планшета). В этом случае когда компьютер спрашивал устройства на определённом адресе, установленном по умолчанию после сброса, могла бы произойти ошибка из-за того, что оба устройства ответят одновременно, но устройства подключённые к ADB всегда делали небольшую задержку, выбираемую случайным образом, которая позволяла им избегать проблемы.
При начальной настройке ADB, компьютер отсылает команду по определённому адресу, и 1 устройство отсылает ответ, 2 устройство с таким же адресом видит, что шина занята, и ждёт следующего обращения, во время которого 1 устройство уже не занимает шину.
Скорость передачи данных по шине теоретически составляла 125 кбит/сек, однако фактическая скорость была в лучшем случае половинной что из-за того что использовался один неэкранированный провод для связи между компьютером и устройствами. В фактическом использовании скорость была намного меньше чем половинная, поскольку скорость зависила от быстродействия всей системы. Mac OS тех времён была не очень быстра, и скорость передачи данных по шине часто падала до 10 кбит/сек.
Проблемы
Одной особенностью ADB было то, что несмотря на то что она была электрически опасна для горячей замены на всех машинах, имела все основные условия необходимые для горячей замены, осуществлённые и в программном обеспечении и в аппаратных средствах.
Важно подчеркнуть, что фактически на всех оригинальных системах ADB небезопасно включать или отключать устройство после включения системы. Это могло вызвать перегорание впаянного на материнской плате предохранителя, что потребовало бы отправки компьютера в центр обслуживания, что для большинства людей было недёшево. Простой альтернативой была покупка предохранителя по номинальной стоимости и соединение его параллельно сгоревшему (что делалось для отсутствия паек на плате, не отмеченных как сделанные в рем. мастерской).
Соединители типа miniDIN были рассчитаны всего на 400 вставлений-выниманий, а при невнимательном вставлении можно было погнуть штырьки. Так же контакты в розетке miniDIN могли со временем расшатываться, что приводило к ненадёжной фиксации или выпаданию вилки.
Незадолго для появления FireWire с устройств подключаемых к ADB (кроме клавиатур Apple) исчезли вторые розетки, а значит, пользователи лишались возможности составлять цепочки из устройств без использования разветвителей.
В то время как соединители типа miniDIN не могут быть включены неправильно, всё же попадались вилки без пластикового штыря, что позволяло включить вилку неверно. В связи с этим Apple ввело U-образные выемки по периметру вилки, что исключало ошибки включения, но сторонние производители игнорировали это нововведение.
Смотри также
Ссылки
Файл:Steps.svg | |
Предшествующие: | HP-IL |
Последующие: | ACCESS.bus |
Компьютерные шины |
|
---|---|
Основные понятия | Шина адреса • Шина данных • Шина управления • Пропускные способности |
Процессоры | BSB • FSB • DMI • HyperTransport • QPI |
Внутренние | AGP • ASUS Media Bus • EISA • InfiniBand • ISA • LPC • MBus • MCA • NuBus • PCI • PCIe • PCI-X • Q-Bus • SBus • SMBus • VLB • VMEbus |
Ноутбуки | ExpressCard • MXM • PC Card |
Накопители | ST-506 • ATA • eSATA • Fibre Channel • HIPPI • iSCSI • SAS • SATA • SCSI |
Периферия | 1-Wire • ADB • I²C • IEEE 1284 • IEEE 1394 (FireWire) • Multibus • PS/2 • RS-232 • RS-485 • SPI • USB • Игровой порт |
Универсальные | Futurebus • InfiniBand • QuickRing • SCI • RapidIO |
de:Apple Desktop Bus en:Apple Desktop Bus es:Apple Desktop Bus et:Apple Desktop Bus fi:ADB (tietotekniikka) fr:Apple Desktop Bus it:Apple Desktop Bus ja:Apple Desktop Bus pl:Apple Desktop Bus sv:Apple Desktop Bus
Если вам нравится SbUP.com Сайт, вы можете поддержать его - BTC: bc1qppjcl3c2cyjazy6lepmrv3fh6ke9mxs7zpfky0 , TRC20 и ещё....