Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шина ISA.doc
Скачиваний:
6
Добавлен:
22.11.2018
Размер:
856 Кб
Скачать
☆

Лабораторная работа Порядок обмена по системной магистрали isa

Цель работы : Изучить сигналы и исследовать циклы магистрали ISA

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

Общие сведения

Шина обеспечивает своим абонентам возможность отображения 8- или 16-битных регистров на пространство ввода/вывода и памяти. Диапазон адресов памяти ограничен областью UMA, но для шины ISA специальными опциями BIOS Setup может быть разрешено и пространство в области между 15-м и 16-м мегабайтом памяти.

Диапазон адресов ввода/вывода сверху ограничен количеством используемых для дешифрации битов адреса (10 бит), нижняя граница ограничена областью 0 – FFh, зарезервированными под устройства системной платы. Таким образом, диапазон адресов устройств шины ISA ограничивается областью 100h – 3FFh, т.е. всего 758 адресов 8 – битных регистров. На некоторые области этих адресов претендуют и системные устройства.

В распоряжении абонентов шины ISA–16 11 линий запросов прерываний IRQx. При конфигурировании BIOS Setup часть этих запросов отводится устройствам системной платы или шины PCI. Абоненты шины могут использовать до 6 -ти 16 – битных каналов DMA.

Все перечисленные ресурсы системной шины должны быть бесконфликтно распределены между абонентами. Бесконфликтность подразумевает следующее :

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

  • назначенную линию запроса прерывания IRQx или прямого доступа DRQx абонент должен держать на низком уровне в пассивном состоянии и переводить в высокий уровень для активизации запроса. Абонент не имеет права управлять неиспользуемыми линиями запроса, они должны быть электрически откоммутированы или подключаться к буферу, находящемуся в третьем состоянии. Одной линией запроса может пользоваться только одно устройство.

Магистраль ISA относится к демультиплексированным. Шина поддерживает регенерацию динамической памяти, радиальные прерывания и прямой доступ к памяти. Допускается также захват магистрали. В магистрали ISA используется положительная логика на шинах адреса и данных, т.е. единице соответствует высокий уровень напряжения, а нулю – низкий. На магистрали присутствуют четыре уровня напряжения питания : +5В, -5В, +12В, -12В, которые могут использоваться платами расширения.

Назначение контактов шины ISA

Конструктивно, с точки зрения доступа пользователя, шина выполнена в виде двух щелевых разъёмов (слотов) с шагом выводов 2.54 мм (0.1 дюйма). Количество слотов зависит от типа системной платы и колеблется от 2 до 8. В слоты расширения могут вставляться платы пользователя. На рис. 1 приведена нумерация контактов разъёма ISA как со стороны установки элементов, так и со стороны монтажа. Назначение контактов приведено в таблице 1.

Таблица 1 Назначение контактов разъёма ISA

Контакт

Цепь

I/O

Контакт

Цепь

I/O

A1

A2

A3

A4

A5

A6

A7

A8

A9

A10

A11

A12

A13

A14

A15

A16

A17

A18

A19

A20

A21

A22

A23

A24

A25

A26

A27

A28

A29

A30

A31

C1

C2

C3

C4

C5

C6

C7

C8

C9

C10

C11

C12

C13

C14

C15

C16

C17

C18

-I/O CHCK

SD7

SD6

SD5

SD4

SD3

SD2

SD1

SD0

I/O CHRDY

AEN

SA19

SA18

SA17

SA16

SA15

SA14

SA13

SA12

SA11

SA10

SA9

SA8

SA7

SA6

SA5

SA4

SA3

SA2

SA1

SA0

-SBHE

LA23

LA22

LA21

LA20

LA19

LA18

LA17

-MEMR

-MEM

SD8

SD9

SD10

SD11

SD12

SD13

SD14

SD15

I

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I

O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

I/O

B1

B2

B3

B4

B5

B6

B7

B8

B9

B10

B11

B12

B13

B14

B15

B16

B17

B18

B19

B20

B21

B22

B23

B24

B25

B26

B27

B28

B29

B30

B31

D1

D2

D3

D4

D5

D6

D7

D8

D9

D10

D11

D12

D13

D14

D15

D16

D17

D18

GND

RESET DRV

+5B

IRQ9(IRQ2)

-5B

DRQ2

-12B

0WS

+12B

GND

-SMEMW

-SMEMR

-IOW

-IOR

-DACK3

DRQ3

-DACK1

DRQ1

-REFRESH

SYSCLK

IRQ7

IRQ6

IRQ5

IRQ4

IRQ3

-DACK2

T/C

BALE

+5B

OSC

GND

-MEMCS16

-I/OCS16

IRQ10

IRQ11

IRQ12

IRQ15

IRQ14

-DACK0

DRQ0

-DACK5

DRQ5

-DACK6

DRQ6

-DACK7

DRQ7

+5B

-MASTER

GND

—

O

—

I

—

I

—

I

—

—

O

O

I/O

I/O

O

I

O

I

I/O

O

I

I

I

I

I

O

O

O

—

O

—

I

I

I

I

I

I

I

O

I

O

I

O

I

O

I

—

I

—

С18 … С1 А31 … А1 В1 …….. В31 D1 … D18

Рисунок 1 Нумерация контактов разъёма ISA

Сигналы магистрали ISA

Функционально сигналы магистрали ISA делят на три группы:

- сигналы шины адреса;

- сигналы шины данных;

- сигналы шины управления.

Перечень сигналов, их назначение и другие параметры представлены в таблице 2.

Таблица 2

Сигналы магистрали ISA

№

Обозначение

сигнала

Назначение

Тип выходного

каскада

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

Сигналы

SA0 …SA19

SA0 … SA15

SA0 …SA7

LA17 … LA23

BALE

SBHE

Сигналы

SD0 … SD15

SMEMR,

MEMR

SMEMW,

MEMW

IOR

IOW

MEMCS16

I/O CS16

Сигналы

I/O CHRDY

I/O CHCK

0WS

REFRESH

RESET DRV

SYSCLK

OSC

IRQ

DRQ

DACK

AEN

Т/C

MASTER

шины адреса

Фиксируемые адресные разряды

для адресации памяти

То же, для адресации устройств

ввода-вывода

То же, используются в режиме регенерации DRAM

Нефиксируемые адресные раз-

ряды, используются для адреса-

ции памяти и выработки сигнала

MEM CS16

Bus Address Latch Enable – раз-

решение защёлкивания адреса.

Сигнал стробирования адресных

разрядов

System Bus High Enable – разре-

шение старшего байта. опреде-

ляет цикл типа передачи (8- или

16-разрядный) совместно с сигна-

лом SAO (см. таблицы 3 и 4).

шины данных

Разряды данных. Младший байт

(L) по линиям D0 … D7, старший

(H) по линиям D8 … D15

Строб-сигналы цикла чтения из памяти при адресации

00000h – FFFFFh (1 Мбайт)

ко всему адресному пространст-

ву (до 16 Мбайт)

Cтроб-сигналы цикла записи па-

мяти, соответственно

-при адресации до 1Мбайта

-при адресации ко всему адрес-

ному пространству

I/O Read – строб чтения данных из устройства ввода-вывода

I/O Write – строб записи данных в устройство ввода-вывода

Memory Cycle Select – выбор цикла для памяти. Память сообщает задатчику, что она имеет 16-разрядную организацию

I/O Cycle Select – выбор цикла для устройства ввода-вывода. Устройство ввода-вывода сообщает задатчику о том, что имеет 16-разрядную организацию

шины управления

I/O Channel Ready – готовность канала ввода-вывода. При выработке этого сигнала цикл обмена продлевается на целое число периодов сигнала SYSCLR, реализуя асинхронный обмен

I/O Channel Check – проверка канала ввода-вывода. Вырабатывается исполнителем при появлении ошибки. Сигнал вызывает немаскируемое прерываание IVMI.

Null Wait States – ноль тактов ожидания. Исполнитель информирует задатчик, если длительность стандартного

цикла обмена велика для него

Выставляется контроллером регенерации для информирова-

ния всех устройств о выполне-

нии циклов регенерации

Сброс в начальное состояние всех устройств на магистрали. Длительность не менее 1 мс.

Сигнал системного тактового генератора f=1МГц

Несинхронизированный с SYSCLK сигнал кварцевого ге-

нератора. Может использо-

ваться платами расширения в

качестве тактового сигнала

Interrupt Request – запрос пре-

рывания (см. таблицу 5)

DMA Request – запрос ПДП.

DMA Acknowledge – подтвер-

ждение ПДП. Сигнал подтвер-

ждения предоставления прямо-

го доступа.

Address Enable – разрешение адреса. Используется в режиме ПДП для сообщения всем устройствам, что проводится цикл ПДП.

Terminal Count – окончание счёта. Сигнал устанавливается в режиме ПДП, когда по текуще-

му каналу ПДП закончен счёт циклов пересылок данных.

Вырабатывается платой расширения, которая желает стать задатчиком магистрали

Три состояния

— II —

— II —

— II —

ТТЛ

Три состояния

  • II —

  • II —

  • II —

  • II —

открытый коллектор

  • II —

  • II —

— II —

  • II —

  • II —

ТТЛ

  • II —

  • II —

  • II —

  • II —

  • II —

  • II —

  • II —

открытый коллектор

Типы выполняемых операций в зависимости от сигналов – SBME и SA0 при программном обмене приведены в таблице 3, где L – младший байт, Н – старший, УВВ – устройство ввода-вывода.

Таблица 3 Типы выполняемых операций при программном обмене

Задатчик (процессор)

Исполнитель

(УВВ)

Выполняемый цикл

Размер

данных

SBHE

SA0

Размер

данных

CS16

Размер

данных

Операция

чтение запись

8

8

8

8

16

16

1

0

1

0

0

0

0

1

0

1

0

0

8

8

16

16

8

16

1

1

0

0

1

0

8

8

8

8

8

16

L L

LH

LL

HH

LL

LL

HH

L L

HL

LL

HH

LL

LL

HH

L – мл. байт, Н – старший байт, УВВ – устройство ввода -вывода

Тип выполняемых операций в зависимости от сигналов SBME и SA0 при ПДП приведены в таблице 4.

Таблица 4

УВВ

Контроллер

ПДП

Память

Выполняемый

цикл

Размер

данных

SBHE

SA0

Размер

данных

CS16

Размер

данных

Операция

чтение запись

8

8

8

8

16

16

1

1

х

х

0

0

0

0

1

1

0

0

8

16

8

16

8

16

1

0

1

0

1

0

8

8

8

8

8

16

LL

LL

LL

HL

запреще

LL

HH

LL

LL

LL

LH

но

LL

HH

Циклы и временные диаграммы обмена магистрали ISA

В режиме программного обмена информацией по магистрали ISA выполняются четыре типа циклов:

  • цикл записи в память

  • цикл чтения из памяти

  • цикл записи в устройство ввода-вывода

  • цикл чтения из устройства ввода-вывода

На рис. 2 приведены временные диаграммы циклов программного обмена с устройствами ввода-вывода. Все временные интервалы – в наносекундах, для частоты шины ISA f = 8МГц.

T

SYSCLK

>50 >61

BALE

> 29

SA0..SA15

SBHE <90 >11

I/O CS16

для 16-разр.

>91 >176 >114

IOR

<110 >62 <32 чтение

SD0..SD15 >22

SD0..SD15

>T

IOW запись

<44 T …15600

I/O CHRDY

для удлиненного цикла

Рисунок 2. Временные диаграммы обмена с устройствами ввода-вывода

Циклы начинаются с выставления задатчиком адреса на линиях SA0 … SA15 и сигнала SBHE. В ответ на получение адреса исполнитель, распознавший свой адрес, должен сформировать сигнал –I/O CS16 в случае, если обмен должен быть 16-разрядным. Далее следует собственно команда чтения или записи. При цикле чтения задатчик выставляет сигнал –IOR, в ответ на который исполнитель (УС) должен выдать данные на шину данных. Эти данные должны быть сняты исполнителем после окончания сигнала –IOR.

В цикле записи задатчик выставляет записываемые данные и сопровождает их стробом –IOW.

В случае, когда УС не успевает выполнить требуемую от него команду в темпе магистрали, оно может приостановить на целое число периодов сигнала SYSCLK завершение цикла чтения или записи с помощью снятия (перевода в низкий уровень) сигнала I/O CHRDY (так называемый удлинённый цикл). Это происходит в ответ на получение сигнала –IOR или –IOW.

На рис.3 приведены временные диаграммы циклов обмена с памятью (указаны временные интервалы, отличающиеся от аналогичных на рис.2). Для асинхронного режима обмена (удлинённого цикла) здесь также используется сигнал I/O CHRDY. Отметим, что УС, работающее как память, должно отрабатывать все адресные разряды, включая LA17 … LA23.

T

SYSCLK

LA17..LA23

>50 >50 >15

BALE

<66

SA0..SA19

>0

MEMCS16

>28 >239

MEMR

>109 <187 чтение

SD0..SD15

>40

SD0..SD15

запись

MEMW

I/O CHRDY

для удлинённого цикла

Рисунок 3 Временные диаграммы циклов программного обмена с памятью

Помимо циклов программного обмена на магистрали ISA могут выполняться также циклы прямого доступа к памяти (ПДП). Временная диаграмма для этого случая представлена на рис.4.

Так как магистраль ISA имеет раздельные стробы для чтения и записи для устройств ввода-вывода и для памяти, пересылка данных в режиме ПДП производится за один машинный цикл. То есть если данные надо переслать из устройства ввода-вывода в память, то одновременно производится чтение данных из устройства ввода-вывода (по сигналу –IOR) и их запись в память (по сигналу –MEMW). Аналогично производится пересылка данных из памяти в устройство ввода-вывода (по сигналам –MEMR и IOW).

DRQ

DACK

t

AEN

>91 >39

SA0..SA19

LA0..LA23

SBHE

>134 >689(439)

IOR(MEMR)

>235(30) <241 >389(639) >39

MEMW(IOW)

>39

SD0..SD15

<90

I/O CHRDY

>T

Рисунок 4 Временные диаграммы циклов ПДП (t – время предоставления ПДП, Т – период сигнала SYSCLK)

Цикл ПДП начинается с запроса ПДП от исполнителя, желающего произвести обмен с помощью одного из сигналов DRQ. После освобождения магистрали текущим задатчиком, например процессором, контроллер ПДП формирует соответствующий сигнал –DACK, говорящий о предоставлении ПДП запросившему его устройству. Затем контроллер ПДП вырабатывает адрес ячейки памяти, с которой будет производиться обмен в текущем цикле, и сигнал AEN, который говорит устройству ввода-вывода о том, что к нему идёт обращение в режиме ПДП. После этого выставляется строб чтения (-IOR или –MEMR), в ответ на который источник передаваемых данных выставляет свою информацию на шину данных, и строб записи (MEMW или IOW), по которому данные записываются в приёмник данных. Здесь так же как и в обычном цикле возможен асинхронный обмен (удлинённый цикл) с использованием сигнала I/O CHRDY.

Одной из особенностей магистрали ISA является необходимость проведения регенерации динамической памяти компьютера с помощью специальных циклов регенерации на магистрали. Временная диаграмма цикла регенерации показана на рис. 5. Эти циклы выполняет входящий в состав материнской платы компьютера контроллер регенерации, который должен для этого получать управление магистралью каждые 15 микросекунд. Во время цикла регенерации производится чтение одной из 256 ячеек памяти (для адресации используются только 8 младших разрядов адреса SA0…SA7). При этом читаемая информация нигде не используется, т.е. это цикл псевдочтения. Проведение 256 циклов регенерации, т.е. псевдочтение из 256 последовательных адресов ОЗУ, обеспечивает полное освежение информации в ОЗУ и её непрерывное сохранение.

>239 125…211

REFRESH

>14 >21

SA0…SA7 A

>239

MEMR,

SMEMR

<59 125…261

I/O CHRDY

>T

Рисунок 5 Временные диаграммы циклов регенерации

Если по каким-то причинам цикл регенерации не производится вовремя, то возможна утеря информации в ОЗУ. Цикл регенерации включает в себя выставление сигналов –REFRESH, адреса SA0…SA7 и –MEMR. В случае необходимости может использоваться сигнал I/O CHRDY.