Пример: Глобальная сеть INTERNET
Я ищу:
На главную  |  Добавить в избранное  

Главная/

Радиоэлектроника, компьютеры и периферийные устройства. /

Архитектураввода-вывода персональных ЭВМ IBM PC

←предыдущая следующая→
1 2 3 4 5 6 7 8 9 10 11 12 13 ... 

стартовый  адрес ОЗУ, с  которого начинается передача.  Регистр содержит 16  разрядов и определяет адрес  внутри  заданной  страницы  памяти  размером 64К. Задание номера   страницы   памяти   осуществляется   через  специальные страничные  регистры  (Page  Registers),  поддерживаемые внешней логикой. Каждый канал ПДП имеет свой регистр начального адреса и страничный  регистр.   Такое  деление  памяти   на  страницы  не

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

сегментного  адреса,  кратного  1000h  (0,  1000h,  2000h,  ..., 9000h).

     Регистр  начального   счетчика  циклов  (Base   Word  Count Register).

     В  этом регистре  задается начальное  число циклов передачи для программируемого  канала. Фактическое число  передаваемых во время работы ПДП элементов  данных на единицу превышает заданное число     циклов, т.  е. если   Вы задаете  100 циклов  передачи, а

размер элемента  будет равен 1  байту, то за  сеанс обмена будет передан 101 байт информации.

Регистр текущего адреса (Current Address Register).

     Начальное значение заносится в  этот регистр одновременно с регистром  начального  адреса.  В  дальнейшем  в  ходе  передачи значение текущего  адреса   автоматически  увеличивается   или

уменьшается  (конкретное  направление   изменения  задается  при программировании  в  регистре  режима).  Если разрешена автоини­циализация, то после окончания  передачи в регистр автоматически устанавливается значение из регистра начального адреса.

     Регистр  текущего  счетчика   циклов  (Current  Word  Count Register).

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

данных,  а  конец  передачи  фиксируется  в  момент переполнения счетчика (изменение его значения с 0 на 0FFFFh).

    Регистр режима (Mode Register).

    Данный   регистр   задает  режимы   работы   своего  канала

контроллера.

 7 6 5  4  3  2  1  0

--T-T--T--T--T--T--T--¬

¦X¦X¦     ¦  ¦  ¦     ¦ Биты:

L-+-+--+--+T-+T-+--T--- -----

       ¦   ¦  ¦    L----> 0-1: Режим работы: 00=проверка,

       ¦   ¦  ¦               01=запись (в память),

       ¦   ¦  ¦               10=чтение (из памяти),

       ¦   ¦  ¦               11=недопустимая комбинация

       ¦   ¦  L---------> 2: Автоинициализация: 1=разрешена,

       ¦   ¦                                   0=запрещена

       ¦   L------------> 3: Изменение текущего адреса при

       ¦                     обмене: 0=увеличение, 1=уменьшение

       L----------------> 4-5: Тип передачи:

00=Режим передачи по требованию, 01=Режим одиночной передачи, 10=Режим блочной передачи, 11=Каскадный режим.

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

      Регистр команд (Command Register).

      Этот  8-битный регистр  управляет работой  контроллера. Он программируется,   когда   контроллер   находится   в  состоянии программирования и очищается командами  сброса "Reset" и "Master Clear". Назначение битов регистра команд приведено на рисунке.

 7  6  5  4  3  2  1  0


---T--T--T--T--T--T--T--¬

¦  ¦  ¦  ¦  ¦  ¦  ¦  ¦  ¦ Бит: LT-+T-+T-+T-+T-+T-+T-+T-- ---


¦  ¦  ¦  ¦  ¦  ¦  ¦  L-> 0: 0=запретить передачу память-память,

 ¦  ¦  ¦  ¦  ¦  ¦  ¦        1=разрешить

¦  ¦  ¦  ¦  ¦  ¦  L----> 1: 0=запретить фиксацию адреса в канале

 ¦  ¦  ¦  ¦  ¦  ¦           0, 1=разрешить

¦  ¦  ¦  ¦  ¦  L-------> 2: 0=разблокировать, 1=заблокировать

 ¦  ¦  ¦  ¦  ¦              контроллер

¦  ¦  ¦  ¦  L----------> 3: 0=нормальная временная диаграмма,

¦  ¦  ¦  ¦                  1=сжатие времени передачи; если бит

 ¦  ¦  ¦  ¦                 0 установлен, то игнорируется

¦  ¦  ¦  L-------------> 4: 0=режим фиксированных приоритетов,

 ¦  ¦  ¦                    1=режим циклического сдвига

 ¦  ¦  ¦                      приоритетов

 ¦  ¦  L----------------> 5: 1=Режим расширенной записи,

¦  ¦                        0=задержки при записи; если бит 3

 ¦  ¦                       установлен, то игнорируется

¦  L-------------------> 6: 0=активным считается высокий уровень

 ¦                          сигнала запроса (DREQ), 1=низкий

 L----------------------> 7: активным считается высокий уровень сигнала подтверждения запроса на


                            ПДП (DACK), 1=низкий

     Регистр состояния (Status Register).

     Регистр  отражает текущее  состояние запросов  и передач по всем четырем каналам. Биты 0 - 3 устанавливаются в единицу после завершения передачи по каналам  0 - 3 (бит 0 - канал  0, бит 1 ­канал 1 и т.д.), если не задан режим автоинициализации. Эти биты очищаются  после  команды  сброса  контроллера  и  после  каждой операции считывания состояния из регистра  состояния. Биты 4 - 7 указывают по  какому из каналов 0  - 3 активен в  текущий момент сигнал запроса на ПДП.

     Регистр масок (Mask Register).

     Каждый бит этого  4-битового регистра маскирует/демаскирует свой канал ПДП, при этом  значение 1 маскирует канал, значение 0 демаскирует  канал и  разрешает прием  сигнала запроса  по этому каналу.

     Регистр запросов (Request Register).

     Сигнал  запроса   на  ПДП  (DREQ)  может   быть  издан  как обслуживаемым  устройством, так  и программно.  Для программного издания сигнала запроса по одному  из 4-х каналов ПДП необходимо установить соответствующий бит  в 4-разрядном регистре запросов. Запрос  на ПДП  может быть  отменен записью  нулевого значения в соответствующий    бит   регистра.    Бит   запроса    очищается автоматически при окончании передачи по данному каналу. Все биты запросов  очищаются  при  сбросе  контроллера.  Для  того, чтобы воспринимать программные запросы на  ПДП, канал должен находится в режиме блоковой передачи.

     Рабочий регистр (Temporary Register).

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

2.4. Программное управление контроллером ПДП

     Программное  управление   контроллером  ПДП  осуществляется через порты ввода-вывода. Доступ  к каждому регистру контроллера может быть осуществлен через свои порты ввода-вывода. В разделах 2.4.1 и    2.4.2 описывается программное  управление контроллерами

на XT- и АТ-подобных ПЭВМ соответственно.

2.4.1. Организация и управление ПДП на XT-подобных ПЭВМ

     IBM  PC XT  и  XT-совместимые  ПЭВМ имеют  один 4-канальный контроллер ПДП 8237А. Назначение каналов следующее:

     0 - обмен память-память;

1 - свободен (может использоваться сетевыми адаптерами);

     2 - обмен с контроллером гибких дисков;

     3 - обмен с контроллером жестких дисков.

     В   таблице   приведено   описание   портов  

←предыдущая следующая→
1 2 3 4 5 6 7 8 9 10 11 12 13 ... 


Copyright © 2005—2007 «RefStore.Ru»