КОМПЬЮТЕРНОЕ ЖЕЛЕЗО
HARDWARE FOR PC

Архитектурные компоненты IBM PC-совместимого компьютера


CMOS RTC является источником аппаратных прерываний (IRQ8). Прерывания могут возникать от будильника, генератора меандра и после смены времени в ча¬сах. Отдельные источники прерывания идентифицируются чтением ячейки ОСЬ и разрешаются записью в ячейку OBh.
Доступ к ячейкам CMOS RTC осуществляется через порты ввода-вывода 070h (индекс ячейки) и 071h (данные). Заметим, что бит 7 порта 70h используется и для блокировки NMI (см. п. 12.4), так что диапазон адресов памяти CMOS ограничен пределами 0-7Fh. Поскольку эта память имеет быстродействие порядка единиц микросекунд, между командами записи адреса и чтения-записи данных необхо¬дима программная задержка. Во время изменения состояния часов данные, счи¬тываемые из ячеек 0-9, могут оказаться некорректными. Признаком этой ситуа¬ции является единичное значение бита 7 ячейки OAh. Для определения момента окончания смены состояния часов можно пользоваться и разрешением соответ¬ствующего источника прерывания. Назначение ячеек CMOS RTC, относящихся к таймерной части, приведено в табл. 12.6 (полное определение ячеек см. в [1]).
Таблица 12.6. Назначение ячеек таймерной части CMOS RTC Индекс Назначение
00h-09h, 32h Ячейки РТС в BCD-формате: 00 — секунды; 01 — секунды будильника;
(37 в PS/2) 02 — минуты; 03 — минуты будильника; 04 — часы; 05 — часы будильника; 06 — день недели; 07 — день месяца; 08 — месяц; 09 — год (2 младшие цифры); 32h — век-1 (2 старшие цифры года); 37h — век-1 (2 старшие цифры года) в PS/2
продолжение А

478
Глава 12. Архитектурные компоненты IBM PC-совместимого компьютера
Таблица 12.6 (продолжение) Индекс Назначение
OAh
RTC Status Register А (регистр статуса А): бит 7 — обновление времени
(О — готов к чтению); биты [6:4] — делитель частоты (для кварца на 32,768 кГц — 010); биты [3:0] — 0110 — выходная частота меандра 1024 Гц
OBh
PTC Status Register В (регистр статуса В): бит 7 — остановка часов
(О — нормальный ход); бит 6 — разрешение периодических прерываний (О — запрещено); бит 5 — разрешение прерывания от будильника (О — запрещено); бит 4 — разрешение прерывания по окончании смены времени (0 — запрещено); бит 3 (см.

Hosted by uCoz