Из Википедии, свободной энциклопедии
Перейти к навигацииПерейти к поиску
Конфигурация контактов 6522 VIA
Rockwell 6522 VIA

Адаптер 6522 Универсальный интерфейс ( VIA ) является интегральной схемой , которая была разработана и изготовлена МОП - технологии в качестве порта ввода / вывода контроллера для 6502 семейства микропроцессоров. Он предоставляет два двунаправленных 8-битных параллельных порта ввода-вывода, два 16-битных таймера (один из которых также может работать как счетчик событий) и 8-битный регистр сдвига для последовательной связи или преобразования данных между последовательной и параллельной формами. Направление каждого бита двух портов ввода / вывода можно запрограммировать индивидуально. Модель 6522 производилась не только компанией MOS Technology, но и производилась вторым поставщиком.другими компаниями, включая Rockwell и Synertek .

6522 широко использовался в компьютерах 1980-х годов, особенно в машинах Commodore , [1], а также был центральной частью проектов Apple III , Oric-1 и Oric Atmos , BBC Micro , Victor 9000 / Sirius 1 и Apple Macintosh . Платформы видеоигр, такие как Vectrex, также использовали 6522, как и цифровая приборная панель Corvette с 1984 по 1989 год. Высокоскоростная версия CMOS , W65C22 [1] , производится Western Design Center (WDC).

Порты ввода / вывода

VIA содержит 20 линий ввода / вывода, которые организованы в два 8-битных двунаправленных порта (или 16 линий ввода / вывода общего назначения) и четыре линии управления (для установления связи и генерации прерываний ). Направления для всех 16 общих линий (PA0-7, PB0-7) могут быть запрограммированы независимо. Линии управления могут быть запрограммированы так, чтобы генерировать прерывание при активации (все четыре), фиксировать соответствующий порт ввода-вывода (CA1 и CB1), автоматически генерировать сигналы квитирования для устройств на портах ввода-вывода или работать как обычное программное управление. выходы (CA2 и CB2). CB1 и CB2 также используются в качестве тактового входа и линии данных для сдвигового регистра, что исключает их использование для других функций, пока сдвиговый регистр включен.

Таймеры

VIA предоставляет два 16-битных таймера / счетчика. Каждый из них может использоваться в однократном ( моностабильном ) режиме «интервального таймера»; таймер 1 также можно использовать в режиме "автономного режима" (делитель / прямоугольная волна).), в котором таймер автоматически перезагружается с начальным счетом, когда он достигает нуля, а таймер 2 также можно использовать в режиме «подсчета импульсов», в котором таймер будет считать переходы из высокого в низкое состояние вывода PB6. (7-й бит порта параллельного ввода / вывода B). В однократном режиме каждый таймер продолжает работать автономно, так что время с момента достижения нуля может быть определено, но дальнейшее прерывание не выдается, пока таймер не будет перезапущен. Каждый таймер может генерировать прерывание, когда он достигает нуля, и таймер 1 также может выводить импульсы (в режиме интервального таймера) или прямоугольные волны (в автономном режиме) на выводе PB7 (8-й бит порта B). Таймер 2 может использоваться для обеспечения тактовой частоты для сдвигового регистра.Полезной особенностью автономного режима является то, что в 16-битную защелку счетчика можно загрузить новый счет без перезагрузки счетчика, так что он будет загружать новый счет только после того, как текущий счетчик достигнет нуля, плавно изменяя выходную частоту. . Эта функция таймера 1 в сочетании с его способностью выводить сигнал на вывод PB7 может использоваться, например, для генерации сигналов сложной формы.сигналы с широтно-импульсной модуляцией , частотные развертки или двухфазные или FM- кодированные последовательные потоки битов. [2]

Сдвиговый регистр

Регистр сдвига VIA является двунаправленным, шириной 8 бит и может работать либо от тактовых импульсов, генерируемых таймером (от таймера 2), либо от тактовых импульсов ЦП, либо от внешнего источника на линии CB1. Последовательный ввод / вывод находится на линии CB2 , и CB1 также может быть запрограммирован на вывод битовой синхронизации для внешних последовательных устройств с синхронизацией .

Из-за конструктивного дефекта, если фронт CB1 находится в пределах нескольких наносекунд от спада тактового сигнала ϕ2 (фаза – 2), фронт CB1 будет проигнорирован, что приведет к потере бита и ошибкам кадрирования в последующих данных. В качестве обходного пути подайте внешний тактовый сигнал на вход D триггера 74AC74, подключите выход Q флопа к выводу CB1 6522 и синхронизируйте триггер с ϕ0 или ϕ2. [3] Ошибка регистра сдвига последовательного порта была исправлена ​​в CMD G65SC22 от California Micro Devices , в Western Design Center W65C22 и в MOS 6526., последнее устройство, которое Commodore использовал вместо 6522, начиная с Commodore 64 .

Выход IRQ

NMOS 6522 имеет выход IRQ с открытым стоком, который может использоваться в цепях прерывания проводного ИЛИ . WDC W65C22S, напротив, имеет выход IRQ на тотемном полюсе, который должен быть изолирован от проводной схемы ИЛИ диодом Шоттки из-за того, что выход тотемного полюса активно устанавливает высокий уровень на выводе IRQ, когда W65C22S не прерывает его. Эта конкретная проблема решена в WDC W65C22N, который оснащен выходом IRQ с открытым стоком. [4]

Ошибки

Помимо вышеупомянутой ошибки регистра сдвига, существовала потенциальная проблема повреждения регистра, которая обычно возникала только в системах, использующих 6522 с микропроцессором с архитектурой шины , отличной от 6502 , например Motorola 68000 . Если адресные строки изменились, когда выбор микросхемы был низким (неактивным), но входной тактовый сигнал ϕ2 был высоким (активным), содержимое регистра могло быть изменено, несмотря на то, что микросхема не была выбрана. Это было исправлено в некоторых, но не во всех версиях CMOS.

Ссылки

  1. ^ Привод гибких дисков [Commodore] 1541 имеет две микросхемы типа MOS 6522 ... [ мертвая ссылка ]
  2. ^ 1982 Каталог данных технологии MOS, стр. 2-54 и 2-55
  3. ^ Уилсон, Гарт
  4. ^ W65C22 Универсальный интерфейсный адаптер (VIA)

Внешние ссылки

  • MOS 6522 VIA предварительный лист данных (1977)
  • MOS 6522 VIA штамповки
  • Описание WDC W65C22