Реферат по информатике Кафедра информатики сунц урГУ

Вид материалаРеферат
Вспомогательные микросхемы: программируемый таймер Intel 8254
Вспомогательные микросхемы: контроллер НГМД Intel 8272A
Подобный материал:
1   ...   19   20   21   22   23   24   25   26   27

Вспомогательные микросхемы: программируемый таймер Intel 8254


Довольно часто требуется устройство формирования временных интервалов для процессора и внешних устройств, подсчёта внешних событий и ввода показаний в процессор, а также генерации внешней синхронизации, которую может программировать процессор. Такое устройство называется программируемым интервальным таймером/счётчиком событий. Некоторыми областями применения такого устройства являются:

прерывание операционной системы с разделением времени через равномерные интервалы, чтобы она осуществляла переключение программ;

вывод точных временных сигналов с программируемыми периодами в устройство вывода, например, для генерации звука;

измерение временной задержки между внешними событиями;

подсчёт числа внешних событий и ввод показаний в компьютер;

прерывание процессора после появления запрограммированного числа внешних событий.

Таким интервальным таймером/счётчиком является микросхема Intel 8254. В нём имеются три одинаковые независимые схемы, называемые каналами. Каждая схема имеет 8-битный регистр управления и состояния и 16-битные регистры счётчика,1 счётного элемента2 и выходной защёлки.3 Процессору доступны регистры управления и состояния и выходная защёлка каждого канала таймера. Кроме того, процессор может устанавливать значение регистра счётчика каждого канала. 16-битные регистры могут считываться и устанавливаться только побайтно. Взаимодействие ЦП и таймера осуществляется через микросхему интерфейса с периферией.

Каждый счётчик работает следующим образом. При установке процессором регистра счётчика его значение немедленно загружается в счётный элемент и при каждом импульсе генератора синхронизации уменьшается на 1. При считывании процессором выходной защёлки в неё загружается текущее значение счётного элемента; однако, через регистр управления можно запросить и старое значение защёлки. Буферизация содержимого счётного элемента позволяет в любой момент ввести его в процессор, не нарушая работы счётчика. Счётчик может работать в двоичной (от 65535 до 0) или в двоично-десятичной (от 9999 до 0) системе. Работа в двоично-десятичной системе используется в безтерминальных системах для непосредственного вывода значения счётчика на индикатор.

Каждый канал имеет вход ворот и выход, обычно подключаемый к одному из входов запросов прерываний контроллера прерываний. Наличие или отсутствие сигнала на входе ворот определяет, будет ли декрементироваться значение счётного элемента при новом импульсе синхронизации. Каждый канал может работать в одном из пяти режимов; режим определяет поведение счётчика при достижении счётным элементом 0. Возможные действия включают:

выдачу сигнала на выход канала, причём отсчёт начинается немедленно;

выдачу сигнала на выход канала, причём отсчёт начинается с открытия ворот;

выдачу импульса на выход канала с перезагрузкой счётного элемента, открытие ворот перезагружает счётный элемент;

выдачу прямоугольного сигнала на выход канала с перезагрузкой счётного элемента, открытие ворот перезагружает счётный элемент;

выдачу импульса на выход канала, причём отсчёт начинается немедленно;

выдачу импульса на выход канала, открытие ворот перезагружает счётный элемент.

Во всех компьютерах IBM PC/XT/AT и совместимых с ними на вход синхронизации таймера подаётся частота 1,193 Мгц. Как несложно видеть, максимальный интервал времени, который может засечь таймер, составляет 65536 тактов синхронизации, т.е. примерно 55 мс. Для засечения больших интервалов времени в этих компьютерах применяется обработчик прерывания от 0-го канала таймера, обновляющий часы реального времени 18,2 раз в секунду (т.е. через каждые 55 мс). 1-й канал таймера применяется для регенерации памяти, а 2-ой – для генерации звука. Ворота 0-го и 1-го канала в этих компьютерах всегда открыты, а 2-го – открываются для генерации звука и закрываются для его прекращения.


Вспомогательные микросхемы: контроллер НГМД Intel 8272A


Микросхема 8272A, а также множество её аналогов, выпускаемые другими фирмами – микросхемы NEC 765/765Α, Robotron UA8272A, Zilog Z0765A – предназначена для управления записью и считыванием данных на (с) гибкие магнитные диски типа IBM 3740 (одинарная плотность) и IBM System 34 (двойная плотность), обеспечивая скорость передачи данных до 500 Кбит/с. Применение контроллера ПДП совместно с данной микросхемой позволяет существенно увеличить её производительность.

Микросхема 8272A выпускалась в 40-контактном корпусе с двумя рядами контактов. Для построения адаптера НГМД на основе этой микросхемы требовалось относительно большое количество внешних схем: дешифратор базового адреса, формирователь данных, узел сопряжения с системной шиной, формирователь сигналов записи, набор схем для синхронизации отдельных частей адаптера, формирователь запроса ПДП, дешифратор сигналов выбора НГМД и формирователь сигналов НГМД, а также некоторые другие схемы.

Регистры контроллера 8272A включают регистр входных/выходных данных1 для обмена информацией и командами с ЦП, основной регистр состояния,2 доступный только для чтения, и входной и выходной регистры,3 которые недоступны программно и используются для последовательного приёма/передачи данных. Биты основного регистра состояния указывают на выполнение контроллером команд поиска, чтения или записи, а также на готовность к операции обмена данными между контроллером и ЦП, на направление передачи данных в этой операции и на завершение этой операции. Все перечисленные регистры имеют длину 8 бит.

Кроме перечисленных регистров, контроллер 8272A имеет также блок атрибутов для хранения кода команды и служебной информации (атрибутов), необходимой для выполнения команд. В этом блоке можно выделить четыре 8-битных регистра:4 регистр управления прерываниями и аппаратными ошибками, регистр управления считываемыми данными, регистр управления поиском и регистр управления запросом поиска. Жёсткого деления регистров блока атрибутов на категории нет; в каждом из них содержатся биты, отвечающие за самые разнообразные функции контроллера.

Программный доступ к контроллеру 8272A осуществляется через три порта ввода-вывода, два из которых ассоциированы с регистрами входных/выходных данных и основного состояния, а третий является регистром управления и используется для задания команд контроллеру. Доступ к регистрам блока атрибутов также производится через команды, задаваемые контроллеру через регистр управления.

Более совершенная версия микросхемы, 82072, имеет более высокую степень интеграции, и потому для построения адаптера НГМД на основе новой микросхемы требуется меньшее количество внешних схем, что удешевляет систему и повышает её надёжность. Микросхема 82072 выпускалась в 40-контактном двухрядном и в 44-контактном четырёхрядном5 корпусах; различные её модели поддерживали скорость передачи данных 250, 500, 500 и 1000 Кбит/с. Микросхема 82072, кроме того, имеет режим снижения потребляемой мощности,6 что позволяет использовать её в компьютерах-блокнотах.

По сравнению с архитектурой микросхемы 8272A, в микросхему 82072 были добавлены 16-байтный буфер данных, позволяющий ей реже использовать ПДП, встроенный генератор синхроимпульсов с программным выбором скорости передачи данных, узел предкомпенсации, позволяющий программно управлять задержками при передаче данных, и сепаратор данных, разделяющий считанные/записываемые данные на блоки («окна»). При этом в микросхеме сохранена возможность подключения внешнего сепаратора данных. Специально для работы с микросхемой 82072 были разработаны микросхемы двунаправленного буфера данных 74LS245 и регистра управления 74LS273, а также дешифраторы адресов 16L8/20L8 и контроллеры датчика смены диска 74LS125/126.

Среди аналогов микросхемы 82072 наиболее распространена микросхема WD378C65 фирмы Western Digital.

Следующая усовершенствованная версия микросхемы 82072 – микросхема 82077 – применялась фирмой IBM в её компьютерах IBM PS/2-30. Эта микросхема выпускалась в 68-контактном четырёхрядном корпусе. Кроме возможности управления НГМД, в микросхему 82077 была также добавлена возможность управления кассетным магнитофоном. В новую микросхему также встроены дешифратор адреса и модернизированный вариант сепаратора данных.