Лабораторная работа №3. Программируемый интервальный таймер

1.3. Лабораторная работа №3. Программируемый интервальный таймер

Цель лабораторной работы. Лабораторная работа предназначена для изучения принципов и режимов работы таймера, получение навыков его инициализации и программирования.

Введение. Таймер предназначен для формирования временных интервалов и генерации импульсов, используемых различными устройствами компьютеров. В лабораторной работе рассматривается таймер типа Intel 8254. Таймер содержит три 16-разрядных счетчика, образующих три канала, работающих автономно. Счетчики работают на вычитание и настраиваются на определенный коэффициент пересчета, задаваемый с помощью специальной константы, имеющей величину в один (младший или старший) или два байта. Каждый канал содержит счетчик (СЕ), 16-разрядный выходной буферный регистр (OL), 16-разрядный регистр константы (CR), 8-разрядный регистр состояния (RS) и 8-разрядный регистр управляющего слова (RCW). Таймер взаимодействует с шиной расширения (ввода-вывода) компьютера посредством 8-разряднного буфера шины данных (D7-D0), сигналов чтения (RD#), записи (WR#), выбора кристалла (CS#), адреса (А0, А1).

Каждый канал (0,1 и 2) имеет вход для подачи импульсов синхронизации (CLK), идущих с периодом t, управляющий вход GATE, разрешающий (GATE=1) или запрещающий (GATE=0) работу счетчика и выход (OUT) принимающий значение 0 или 1 (в зависимости от режима работы) при переходе счетчика в нулевое состояние. Адрес канала 0 - 00, канала 1 - 01, канала 2 -10. Адрес при записи управляющего слова (RCW) в любой канал равен 11.

Таймер работает в 6 режимах. Режим 0 – программируемая задержка, Режим 1 – одновибратор, Режим 2 – импульсный генератор частоты , Режим 3 – генератор меандра, Режим 4 – программно-формируемый строб, Режим 5 – аппаратно-формируемый строб.

Перед началом работы таймер необходимо инициализировать, т.е. настроить его на заданный режим работы с соответствующими параметрами – константой пересчета и системой счисления (двоичная, десятичная). Инициализация проводится в строгой последовательности: сначала записывается управляющее слово (RCW) режима работы по адресу 11, затем один или два байта константы (CR), При двухбайтной константе запись производится за два цикла записи, сначала младший байт, затем старший, по адресу соответствующему данному каналу. Счетчики могут инициализироваться в любом порядке. После инициализации счетчик включается в работу, либо программно по фронту последнего сигнала записи (WR) при GATE=1, либо с помощью сигнала GATE, при переводе его из 0 в 1. При работе счетчика допускается запись в него новой константы без его остановки.

Величина временного интервала на выходе счетчика измеряется количеством периодов «t» импульсов CLK.

Управляющее слово режима работы RCW имеет 8 разрядов (D7-D0): D7,D6 – номер канала, D5,D4 – величина константы пересчета, D3,D2,D1 – режим работы, D0 – система счисления.

Считывание информации со счетчика производится тремя способами. Обычной командой чтения (RD#), но при этом GATE=0. Командой «чтения на лету» (CLC). Эта команда рассматривается как управляющее слово. В разрядах D7, D6 – записывается номер счетчика, а в D5, D4 код этой команды - 00. По этой команде значение счетчика без его останова защелкивается в буферном регистре (OL), а затем считывается обычной командой RD# в любой момент времени. После подачи команды CLC необходимо обязательно произвести команду чтения, в противном случае последующие команды СLC работать не будут. Командой чтения состояния RBC. По этой команде может производиться защелкивание состояния каналов в регистре состояния (RS) и (или) значений счетчиков в буферных регистрах (OL). Затем производится чтение обычной командой RD, причем сначала считывается состояние регистра состояния, а затем значение счетчика.

Команда RBС рассматривается как управляющее слово, имеет 8 разрядов: D7, D6 – код команды 11, D5 – признак чтения содержимого счетчика (D5=0), D4 – признак чтения регистра состояния (D4=0); D3, D2, D1- указывают унитарным кодом номер счетчика, D0=0.

При подаче команды RBС, требуется обязательная операция чтения, как и при команде CLC.


Методика выполнения работы

1.3.1. Методика выполнения работы

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

Студент выполняет два задания, а затем отвечает на контрольные вопросы. Первое задание и контрольные вопросы выдает и проверяет компьютер. Второе задание выдает и проверяет преподаватель. При выполнении второго задания на экране появляется специальное окно, где отображается временная диаграмма работы таймера при подаче на него импульсов CLK. Импульсы CLK подаются вручную при нажатии на соответствующую клавишу клавиатуры.

Первое задание посвящено процессу инициализации (программной настройке) таймера, второе – исследованию работы таймера в заданном режиме с выполнением операции чтения информации из таймера. Для перехода ко второму заданию студент должен выполнить как минимум три первых задания.


Индивидуальные задания

1.3.2. Индивидуальные задания

Все задания однотипны, но имеют разные параметры: номер канала, константа, режим работы, система счисления счетчика, способ чтения информации из канала..

Пример первого задания. Настроить канал 1 на работу в режиме 3, с константой пересчета 310, счетчик двоичный.

Пример второго задания. Настроить канал 0 на работу в режиме 1, с константой пересчета 8, счетчик десятичный. Выполнить 3 цикла работы счетчика. После чего считать его содержимое с помощью команды CLC.


Пример выполнения работы

1.3.3. Пример выполнения работы

На рис.1.3 приведен пример выполнения второго задания с отображением выходной временной диаграммы в специальном окне экрана.

Рис. 1.3.


Список контрольных вопросов

1.3.4. Список контрольных вопросов

При ответе на контрольные вопросы необходимо по приведенным вариантам временных диаграмм на выходе счетчика с указанием кодов управляющих слов (CRW) и констант пересчета (CR), определить правильную временную диаграмму режима работы, соответствующего заданным CRW и CR.


Практикум по курсу "Системы ввода-вывода и интерфейсы" (Раздел "Интерфейсы")

1. Практикум по курсу "Системы ввода-вывода и интерфейсы" (Раздел "Интерфейсы")

Практикум предназначен для изучения принципов построения, структуры и протоколов работы интерфейсов ввода-вывода и периферийных микросхем, а также получения навыков по реализации протоколов обмена данными в синхронных и асинхронных интерфейсах и программной настройке микропроцессорных БИС.

Практикум содержит четыре лабораторные работы, две из которых посвящены наиболее распространенным шинам расширения PCI и ISA, а две других изучению микросхем таймера и адаптера параллельного интерфейса.

Практикум реализован в виде компьютерных лабораторных работ, каждая из которых содержит соответствующую модель изучаемого объекта, теоретическую часть, задания и контрольные вопросы. Каждая лабораторная работа выполняется индивидуально за персональным компьютером в учебном классе. В каждой лабораторной работе предусмотрена процедура регистрации студента. Без которой невозможен переход к главному меню лабораторной работы.

Главное меню лабораторной работы содержит разделы «Изучение», «Справка» и кнопку «Выход» из лабораторной работы.

Меню раздела «Изучение» имеет теоретические подразделы: введение, сигналы шины, команды шины, и практические – изучение взаимодействий устройств на шине и контрольные вопросы.

Раздел «Справка» содержит справочный и теоретический материал, включающий информацию об архитектуре, назначении сигналов, операциях записи, чтения и арбитрации, времени доступа к шине и т.п.

Компьютер должен поддерживать конфигурацию, соответствующую установке операционной системы Windows 95 или выше.

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

Теоретическая часть лабораторных работ может быть использована для изучения соответствующих разделов курса лекций и подготовке к экзаменам.

Продолжительность практикума составляет 8 часов, что соответствует выполнению четырех лабораторных работ.

С лабораторными работами можно ознакомиться в электронном читальном зале библиотеки МИФИ или получить их у преподавателя в виде электронной копии той или иной работы.