Коммодорный автобус - Commodore bus

Commodore серийный IEEE-488
Commodore-64-Back-serial-IEEE488.jpg
ТипПериферийный автобус
ДизайнерCommodore International
Разработан1980; 40 лет назад (1980)[1]
ПроизводительРазные
Произведено1980 – настоящее время
ДлинаНе более 1,8 метра[2]
Горячее подключениеНет
Шлейфовая цепьДа, до 31 устройства[3]
Внешнийда
Булавки6
КоннекторРазъем DIN
СигналОткрытый коллектор 5 В
Максимум. Напряжение5 В
Максимум. Текущий3,2 мА[4]
Сигнал данныхда
Битрейт3.2–41.6 кбит / с[5][6]
ПротоколСерийный
Гнездо DIN для последовательной шины Commodore pinout.png
Гнездо спереди.
Контакт 1SRQЗапрос на обслуживание
Контакт 2GNDЗемля
Пин 3ATNВнимание
Штырь 4CLKЧасы
Штырь 5ДАННЫЕДанные
Пин 6ПЕРЕЗАГРУЗИТЬПерезагрузить

В Последовательная шина Commodore IEEE-488 (Автобус IEC), является Коммодор интерфейс в первую очередь хранение данных на магнитном диске и принтеры для Коммодора 8 бит домашние / персональные компьютеры, в частности VIC-20, C64, C128, Плюс / 4,[7] C16 и C65.

Описание и история

Параллельно IEEE-488 интерфейс, используемый на Commodore PET (1977) компьютерная линия была слишком дорогостоящей, поэтому была разработана версия с уменьшенной стоимостью, которая состояла из урезанной последовательной версии интерфейса IEEE-488 с оставшимися всего несколькими сигналами; однако общая схема протокола была сохранена. Commodore начал использовать этот автобус с VIC-20 (1980). Для подключения к компьютеру используется Разъем DIN-6.

Скорость передачи

НастраиватьСкоростьЭффективный битрейт
Коммодор 64 + 1541400 байт / с3200 бит / с
Коммодор 64 + 1541 с быстрый загрузчик2560 байт / с[5]20 480 бит / с
Коммодор 128 + 15715200 байт / с[6]41 600 бит / с
Теоретическая 20 мкс[3]6250 байт / с50 000 бит / с

Интерфейс

Commodore-64-Back-serial-IEEE488 pinout.jpg
Распиновка[8]
ШтырьИмяФункция
1/ SRQINВвод служебного запроса, позволяющий периферийным устройствам обслуживать запрос на хост (C64). Используется C128 для быстрой передачи.[9]
2GNDЗемля[8]
3/ ATNПоследовательный ATN вход / выход. Устанавливается хостом в низкий уровень (C64), чтобы указать начало последовательной передачи данных.[9]
4/ CLKПоследовательный вход / выход CLK. Используется для программного подтверждения связи.[9]
5/ДАННЫЕПоследовательный ввод / вывод данных. Передача битов данных.[9]
6/ПЕРЕЗАГРУЗИТЬСбрасывает периферийные устройства, а также сбрасывает старый C64.[9]

Описание протокола

Сигналы шины цифровые односторонний открытый коллектор 5 вольт TTL и активен при низком уровне. Устройства шины должны обеспечивать собственное питание.

Поскольку автобусные линии представляют собой электрически открытый коллектор, он работает как длинный ИЛИ ворота между всеми линейными драйверами устройств. Логическое значение для земли - истина, и наоборот. Любое устройство может установить строку «true». Линия становится «ложной» только в том случае, если все устройства сигнализируют «ложь».

Передача начинается с автобуса болтун удерживая строку Clock в истинном состоянии, и слушателя (-ов), удерживающего строку данных в истине. Для начала говорящий переводит строку Clock в состояние false. Когда весь автобус слушатели готовы к приему, они сбрасывают строку данных на false. Если говорящий ожидает более 200 мкс, пока линия Clock не станет истинной (состояние ожидания), слушатели должны выполнить End-or-Identify (EOI).[3]

Если ложная (освобожденная) линия данных не подтверждается говорящим в течение 200 мкс, слушатель знает, что говорящий находится в процессе EOI, что означает, что «этот символ будет последним». Когда слушатель обнаруживает тайм-аут 200 мкс, он должен подтвердить это, потянув линию данных за истину не менее 60 мкс, а затем отпустив ее. Говорящий может снова вернуться к передаче в течение 60 мкс, подтянув линию синхронизации к истине.[3]

Данные представляют собой восемь битов, начиная с младшего разряда. Линия данных устанавливается в соответствии с передаваемым битом (1 = истина = земля). Как только линия данных установлена, линия часов сбрасывается на false. Линии Clock и Data будут оставаться устойчивыми в течение минимум 20 мкс (за исключением Commodore 64, которому требуется 60 мкс). После того, как 8 бит были отправлены, говорящий переводит линию данных в состояние "ложь", а затем слушатель подтверждает говорящего, подтягивая линию данных к истине в течение 1000 мкс. После этого говорящий устанавливает истину линии синхронизации, а слушатель устанавливает линию данных истиной, таким образом, возвращаясь туда, где началась передача. Если EOI сигнализируется удержанием линии синхронизации в ложном состоянии, передача завершается, и слушатель подтверждает это, подтягивая линию данных за истину на 200 мкс.[3]

Строка ATN имеет значение true, и байты отправляются, как указано выше, на все устройства, но байт интерпретируется как одна из команд «Говорить», «Слушать», «Не разговаривать» и «Не слушать». Это говорит конкретному устройству стать говорящим или слушателем. Только устройства с соответствующими номерами переключаются в режим разговора и прослушивания. Также может следовать вторичный адрес.[3]

На более высоком логическом уровне хост установит для линии ATN значение «истина» и передаст байты «Устройство номер 8, прослушивание», «Вторичный адрес 2, открытие». Затем он устанавливает для линии ATN значение false, и тогда хост становится говорящим, сохраняя значение линии Clock true. Устройство будет слушателем, удерживая строку данных истинной. Хост передаст конкретную команду открытия и завершит ее сигнальной последовательностью EOI. После этого хост установит строку ATN true, «Устройство номер 8, не прослушивается». Далее следует строка ATN true и «Номер устройства 8, прослушивание», «Вторичный адрес 2, данные». Затем хост устанавливает для линии ATN значение false и отправляет данные. Когда хост закончил отправку данных, для линии ATN устанавливается значение «истина» и отправляется сообщение «Номер устройства 8, не прослушивается».[3]

Когда необходимо поменять роли и сделать хост слушателем, а устройство говорящим, это происходит после того, как на устройство была отправлена ​​команда разговора. Хост устанавливает для линии данных значение "истина" и освобождает линию "Часы" на "ложь". Устройство ожидает, пока линия Clock перейдет в состояние false, затем переводит ее в состояние true и сбрасывает значение линии Data в значение false. После этой последовательности может следовать стандартное взаимодействие говорящего со слушателем.[3]

Команды шины[3]
КодСмысл
устройство | 0x20Слушай, устройство (0–30)
0x3FОтменить прослушивание, все устройства
устройство | 0x40Обсуждение, устройство
0x5FUntalk, все устройства
канал | 0x60Открыть снова, канал (0–15)
канал | 0xE0Закрыть, канал
канал | 0xF0Открытый, канал

Чтобы прочитать обычный файл с дискеты номер 8, выполните команду ЗАГРУЗИТЬ "имя файла", 8,1 издается на Коммодор 64. Это приводит к следующему общению на высоком уровне:

Протокол высокого уровня[10]
КомандаПункт назначенияСмысл
/28УстройствоСлушай, устройство номер 8
/ F0УстройствоОткрытый канал 0
УстройствоОтправить байты имени файла
/ 3FУстройстваОтменить прослушивание всех устройств
/48УстройствоОбсуждение, Устройство № 8
/60УстройствоСнова открыть канал 0
Устройство № 8 становится мастером шины
ХозяинПолучать байтовые данные
Хост становится мастером шины (нормальная работа)
/ 5FУстройстваОтключить все устройства
/28УстройствоСлушай, устройство номер 8
/ E0УстройствоЗакрыть канал 0
/ 3FУстройстваОтменить прослушивание всех устройств

В дисководе Commodore 1541 используется более медленный режим, совместимый с Commodore 64, который можно отключить для увеличения скорости с помощью команды ОТКРЫТЬ 15,8,15, «UI -»: ЗАКРЫТЬ 15.[11]

Нумерация устройств

Нумерация устройств на Коммодор 64 КЕРНАЛ ПЗУ[10]
УстройствоТип
0Клавиатура
1Кассетный порт
2RS-232 на пользовательском порте или второй кассете на ПЭТ
3Экран
4–5Принтер
6Обычно плоттерное устройство
7Второй заговорщик?
8–15Диск (10 - используется некоторыми последовательно-параллельными интерфейсами принтера)
16–30Неизвестный
31Зарезервировано как команда для всех устройств

Номер устройства 0–3 не связан с шиной Commodore.[10]

Реализация хоста

В Коммодор ВИК-20 компьютер и Коммодор 1540 и 1541 дисководы гибких дисков используют Технология MOS 6522 VIA для обработки передачи данных по шине IEC. Коммодор 64 и 128 компьютеры и Коммодор 1571 диск использовать Сложный интерфейсный адаптер.

Общие устройства

УстройствоИнформация
Коммодор 15415¼-дюймовая дискета 170 КБ
Коммодор 15705¼-дюймовая дискета 170 КБ
Коммодор 15715¼-дюймовая дискета 350–410 КБ
Коммодор 15813½-дюймовая дискета 800 КБ
МСД SD-1 / SD-25¼-дюймовая одинарная / двойная дискета 170 КБ
Коммодор MPS 801Точечная матрица принтер
Коммодор 1515[12]Точечная матрица принтер
Коммодор 1520Шариковая ручка принтер
Коммодор VIC-1525[13]Матричный принтер
Коммодор VIC-1526MPS 802, матричный принтер с обновленным брендом
Окимат 10Матричный принтер
Коммодор ДПС-1101[14]Принтер Daisy Wheel
INTERPODАвтономный IEEE-488 + RS-232[15]
Коммодор ВИК-20Компьютер 1 МГц 5 КБ
Коммодор 64Компьютер 1 МГц 64 КБ
Коммодор SX-64Компьютер 1 МГц 64 КБ
Коммодор 1282 МГц 128 КБ компьютер
Коммодор 161-2 МГц 16 КБ компьютер
Коммодор Плюс / 41,76 МГц 64 КБ компьютер
Коммодор 653,54 МГц 128 КБ компьютер


Устройства

Смотрите также

Рекомендации

  1. ^ "История коммодора ВИК-20". Архивировано из оригинал на 2015-02-14. Получено 2016-04-02.
  2. ^ «Создание последовательного кабеля XE1541». Получено 2016-04-02. (1) 6 футов или 1,8 метра (макс.) 4-жильный экранированный кабель (для последовательного подключения)
  3. ^ а б c d е ж грамм час я «Как работает последовательная шина VIC / 64». 2015-04-17. Получено 2016-04-28.
  4. ^ «6526 комплексный интерфейсный адаптер (CIA)» (PDF). 2016-03-04. Архивировано из оригинал (PDF) на 2016-04-10. Получено 2016-04-02. Низкий выходной ток (проседание); VOL <0,4 В (PA0-PA7, PC, PB0-PB7, DB0-DB7) ИОЛ 3,2 мА
  5. ^ а б «История разработки: Commodore 64» (PDF) (опубликовано 16 апреля 2012 г.). 1985 г.. Получено 2016-04-02. Уловки программирования, используемые Эпикс обеспечили скорость передачи до 2,5 килобайт в секунду.
  6. ^ а б «Технические характеристики дисковода Commodore 1571». Commodore Business Machines, Inc. Октябрь 1986 г.. Получено 2016-04-27.
  7. ^ «Использование дисковода Commodore 1541 на Commodore + 4». 2005-10-03. Получено 2016-05-15. 1541 отлично работает с Plus / 4.
  8. ^ а б "Распиновка последовательного ввода-вывода C64 и подключение @ old.pinouts.ru". 2013-12-16. Получено 2016-04-02.
  9. ^ а б c d е "Мастерская C-64 / Штыревые соединения". 2005-12-10. Получено 2016-04-02.
  10. ^ а б c «Документация по шине IEC, используемая для 1541-III IEC с разъединением» (PDF). 2008-02-24. Архивировано из оригинал (PDF) на 2017-01-16. Получено 2016-04-28.
  11. ^ «ВИК-1541». C64-wiki.com. 2016-03-11. Получено 2016-04-28.
  12. ^ "Руководство пользователя VIC-1515 Графический принтер Commodore" (PDF) (опубликовано 05.11.2011). Апрель 1981 г.. Получено 2016-04-28.
  13. ^ «Руководство пользователя графического принтера VIC-1525» (PDF). Commodore Computer. Получено 22 февраля 2015.
  14. ^ "Commodore DPS-1101 Daisy Wheel Printer".
  15. ^ "Интерфейс Interpod IEEE-488". Апрель 2008 г.. Получено 2016-04-28.

внешняя ссылка