Лекции.ИНФО


Шины расширения ввода/вывода РС-совместимых ПЭВМ.



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

К шинам расширения ввода/вывода, реализованным в виде слотов (разъемов) на системных платах PC-совместимых персональных компьютеров, относятся следующие:

· ISA-8 и ISA-16 — традиционные универсальные шины подключения периферийных адаптеров, не требующих высоких скоростей обмена (раньше была единственной шиной расширения).

· EISA — дорогая (по стоимости и системной платы, и плат расширения) 32-битная шина средней производительности, применяемая в основном для подключения контроллеров дисков и адаптеров локальных сетей в серверах. В настоящее время вытесняется шиной PCI, хотя и применяется в серверных платформах, где необходимо установить множество дополни­тельных плат расширения (системную плату, у которой слотов PCI больше, чем 4, найти довольно трудно, а для шины EISA 6-8 слотов — явление обычное).

· МСА — шина компьютеров PS/2, до сих пор применяемая и в некоторых серверных платформах. Производительность средняя. Адаптеры для шины МСА распространены не широко.

· VLB — быстродействующее 32- (64-) битное расширение (локальная ши­на процессора), используемое в паре со слотом ISA/EISA, применявшееся в среднем поколении системных плат компьютеров на процессоре 486. Используется для подключения контроллеров дисков, графических адап­теров и контроллеров локальных сетей. С процессорами пятого поколения и старше не применяется.

· PCI — самая распространенная высокопроизводительная 32/64-битная ши­на, применяемая в компьютерах на процессорах 486 и старше. Используется для подключения адаптеров дисков, контроллеров SCSI, графических, видео-, коммуникационных и других адаптеров. На системной плате чаще всего устанавливают 3 или 4 слота PCI. Слот PCI иногда имеет дополнительный маленький слот расширения Media BUS, на который выведены сигналы шины ISA (это позволяет на платы PCI устанавливать и дешевые ISA-устройства, например звуковой канал).

· PC Card, он же PCMCIA — слот расширения блокнотных компьютеров, который, в принципе, может присутствовать и в компьютерах настольного исполнения. Предназначен для обеспечения еще одного уровня совместимости блокнотных и настольных PC.

Карты расширения (интерфейсные карты) устанавливаются в соответствующие слоты системной платы. Их количество и состав на различных платах варьируется. Типы слотов легко определить визуально пользуясь рис. 2.22. На этом рисунке присутствие всех типов шин показано условно — реально на системных платах присутствует не более двух-трех типов слотов. Распространены сочетания: ISA+PCI, ISA+VLB, EISA+PCI, EISA+VLB. Шина МСА обычно держится особняком. Слот «Media BUS», дополняющий слот PCI сигналами шины ISA, применяется, пожалуй, только фирмой ASUSTek.

 

Рис. 2.22.Вид и положение слотов шин расширения.

У адаптеров для шины PCI, в отличие от ISA/EISA и VLB, компоненты расположены на левой стороне печатной платы. Для экономии площади печатной платы часто используют так называемый разделяемый слот (Shared Slot). На самом деле это разделяемое окно на задней стенке корпуса, которое может использоваться либо картой ISA, либо картой PCI. Таким образом, максимальное суммарное количество установленных адаптеров ISA и PCI оказывается на единицу меньшим, чем видимое количество слотов на системной плате.

Для низкопрофильных корпусов системные платы имеют всего один слот расширения, в который устанавливается специальная плата-переходник Riser Card. Этот переходник по присоединению обычно специфичен для каждой модели системной платы (а иногда и корпуса), поскольку на его краевой разъем заводятся линии нескольких системных шин (например, ISA+PCI, ISA+VLB). Если Riser Card имеет слоты только шины ISA, он обычно вставляется в стандартный слот ISA-16, что позволяет установить во многие модели корпусов Slim большинство стандартных плат формата Baby-AT. С точки зрения наводок и паразитных емкостей лучше все-таки использовать специальные платы с одним разъемом, чтобы не перегружать шину лишними неиспользуемыми проводниками и разъемами.

Конфигурирование шин расширения предполагает, в основном, настройку их временных параметров.

· Для шины VLB применяется перемычка, управляющая делителем частоты сигнала синхронизации в зависимости от того, превышает ли системная частота значение 33,3 МГц.

· Для шины PCI частота синхронизации определяется частотой системной шины процессора. Кроме того, в BIOS Setup для этой шины могут определяться некоторые ее возможные режимы.

· Для шины ISA кроме частоты (которая должна быть порядка 8 МГц) задают время восстановления для 8- и 16-битных обращений к памяти и вводу выводу. Неустойчивая работа адаптеров может потребовать замедления шины ISA, но в настоящее время понижение ее производительности не сильно отражается на производительности компьютера в целом.

· Для шин ISA и PCI иногда опциями BIOS Setup приходится распределять системные ресурсы (главным образом, линии запросов прерываний).

Основные характеристики рассматриваемых шин приведены в табл. 2.1.

 

Таблица 2.1. Характеристики шин расширения

Шина Пропускная способность, Мбайт/с* Каналы DMA Bus- Разрядность Master ACFG** данных Разрядность адреса Частота, МГц
ISA-8 - - 8 20 (1 Мбайт)
ISA-16 8/(16) + - 16 24 (16 Мбайт) 8/(16)
EISA 33,3 + + 32 32 (4 Гбайт) 8,33
МСА-16 - + + 16 24 (16 Мбайт)
МСА-32 - + + 32 32 (4 Гбайт)
VLB - (+) - 32/64 32 (4 Гбайт) 33-50(66)
PCI 132/264 - - + 32/64 32 (4 Гбайт) 33(66)
PCMCIA - - - + 16 26 (64 Мбайт)

 

* Указана теоретическая максимальная пропускная способность. Реальная пропускная способность шины примерно в 2 раза ниже за счет прерываний, регенерации и протокольных процедур.

** Поддержка автоматического конфигурирования спецификацией шины. Для ISA PnP является позднейшей надстройкой, реализуемой средствами адаптеров и программного обеспечения.

 

Шины ISA, EISA и PC-104

ISA Bus (Industry Standard Architecture) — шина расширения, применявшаяся с первых моделей PC и ставшая промышленным стандартом. В компьютере XT применялась шина с разрядностью данных 8 бит и адреса — 20 бит. В компьютерах AT шину расширили до 16 бит данных и 24 бит адреса. В таком виде она существует и поныне как самая распространенная шина для периферийных адаптеров. Конструктивно шина выполнена в виде двух щелевых разъемов (слотов) с шагом выводов 2,54 мм (0,1 дюйма), вид которых изображен на рис. 2.23. Подмножество ISA-8 использует только 62-контактный слот (ряды А, В), в ISA-16 применяется дополнительный 36-контактный слот (ряды С, D).

Шина обеспечивает своим абонентам возможность отображения 8- или 16-битных регистров на пространство ввода/вывода и памяти. Диапазон адресов памяти ограничен областью 1 Мбайт , но для шины ISA-16 специальными опциями BIOS Setup может быть разрешено и пространство в области между 15-м и 16-м мегабайтом памяти (правда, при этом компьютер не сможет использовать более 15 Мбайт ОЗУ). Диапазон адресов ввода/вывода сверху ограничен количеством используемых для дешифрации бит адреса, нижняя граница ограничена областью адресов 0—FFh, зарезервированных под устройства системной платы. В PC была принята 10-битная адресация ввода/вывода, при которой линии адреса А[15:10] устройствами игнорировались. Таким образом, диапазон адресов устройств шины ISA ограничивается областью 100h—3FFh, то есть всего 758 адресов 8-битных регистров. На некоторые области этих адре­сов претендуют и системные устройства. Впоследствии стали применять и 12-битную адресацию (диапазон l00h—FFFh), но при ее использовании всегда необходимо учитывать возможность присутствия на шине и старых 10-битных адаптеров, которые «отзовутся» на адрес с подходящими ему битами А[9:0] во всей допустимой области 12-битного адреса четыре раза.

 

Рис. 2.23.Слот ISA

 

В распоряжении абонентов шины ISA-8 может быть до 6 линий запросов прерываний IRQх, для ISA-16 их число достигает 11. Заметим, что при конфи­гурировании BIOS Setup часть из этих запросов могут отобрать устройства сис­темной платы или шина PCI.

Абоненты шины могут использовать до трех 8-битных каналов DMA, а на 16-битной шине могут быть доступными еще три 16-битных канала и один 8-битный, используемый в РС/ХТ для регенерации динамической памяти. Сигналы 16-битных каналов могут использоваться и для получения прямого управления шиной устройством Bus-Master. При этом канал DMA используется для обеспечения арбитража управления шиной, а адаптер Bus-Master формирует все адресные и управляющие сигналы шины, не забывая передать управление шиной процессору не более, чем через 15 микросекунд (чтобы не нарушить регенерацию памяти).

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

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

· Назначенную линию запроса прерывания IRQx или прямого доступа DRQx абонент должен держать на низком уровне в пассивном состоянии и переводить в высокий уровень для активации запроса. Неиспользуемыми линиями запросов абонент управлять не имеет права, они должны быть электрически отключены или подключаться к буферу, находящемуся в третьем состоянии. Одной линией запроса может пользоваться только одно устройство. Такая нелепость (с точки зрения схемотехники ТТЛ) была допущена в первых PC и в дань (жертву) совместимости старательно тиражируется уже много лет.

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

С появлением 32-битных процессоров делались попытки расширения раз­рядности шины, но все 32-битные шины ISA не являются стандартизованными, кроме шины EISA.

EISA Bus (Extended ISA) — жестко стандартизованное расширение ISA до 32 бит. Конструктивное исполнение обеспечивает совместимость с ней и обычных ISA-адаптеров (рис. 2.24). Узкие дополнительные контакты расширения (ряды Е, F, G, Н) расположены между ламелями разъема ISA и ниже ламелей А, В, С, D таким образом, что адаптер ISA, не имеющий дополнительных ключевых прорезей в краевом разъеме, не достает до них. Установка карт EISA в слоты ISA недопустима, поскольку ее специфические цепи попадут на контакты цепей ISA, в результате чего системная плата окажется неработоспособной (к счастью, «без дыма»).

 

Рис. 2.24. Разъем шины EISA

 

Расширение шины касается не только увеличения разрядности данных и адреса: для режимов EISA используются дополнительные управляющие сигналы, обеспечивающие возможность применения более эффективных режимов пе­редачи. В обычном (не пакетном) режиме передачи за каждую пару тактов может быть передано до 32 бит данных (один такт на фазу адреса, один — на фазу данных). Максимальную производительность шины реализует пакетный режим (Burst Mode) — скоростной режим пересылки пакетов данных без указания текущего адреса внутри пакета. В пакете очередные данные могут передаваться в каждом такте шины, длина пакета может достигать 1024 байт. Шина предусматривает и более производительные режимы DMA, при которых скорость обмена может достигать 33 Мбайт/с. Линии запросов прерываний допускают разделяемое использование, причем сохраняется и совместимость с ISA-картами: каждая линия запроса может программироваться на чувствительность как по перепаду (как в ISA), так и по низкому уровню. Шина допускает потребление каждой картой расширения мощности до 45 Вт, но это не означает, что мощность блока питания для системной платы на 8 слотов должна быть более 360 Вт — полную мощность, пожалуй, не потребляет ни один из адаптеров.

Многие решения EISA уходят корнями в МСА-шину PS/2. Каждый слот (максимум — 8) и системная плата имеют селективное разрешение адресации ввода/вывода и отдельные линии запроса и подтверждения управления шиной. Арбитраж запросов выполняет устройство ISP (Integrated System Peripheral). Приоритеты (в порядке убывания): регенерация, DMA, CPU, Bus-Master. Обязательной принадлежностью системной платы с шиной EISA является энергонезависимая память конфигурации NVRAM, в которой хранится информация об устройствах EISA для каждого слота. Формат записей стандартизован, для модификации конфигурационной информации применяется специальная утилита ECU (EISA Configuration Utility). Архитектура позволяет при использовании программно-конфигурируемых адаптеров автоматически разрешать конфликты использования системных ресурсов программным путем, но в отличие от спецификации PnP EISA не допускает динамического реконфигурирования. Все изменения конфигурации возможны только в режиме конфигурирования, после выхода из которого необходима перезагрузка компьютера. Изолированный доступ к портам ввода/вывода каждой карты во время конфигурирования обеспечивается просто: сигнал AEN, разрешающий декодирование адреса в цикле ввода/вывода, на каждый слот приходит по отдельной линии AENx, в это время программно-управляемой. Таким образом, можно по отдельности обращаться и к обычным картам ISA, но из этого нельзя извлечь особой выгоды, поскольку карты ISA не поддерживают обмена конфигурационной информацией, предусмотренного шиной EISA. На некоторых идеях конфигурирования EISA выросла спецификация PnP для шины ISA (формат конфигурационных записей ESCD во многом напоминает NVRAM EISA).

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

Назначение контактов слотов шин ISA и EISA приведено в табл. 2.2 и 2.3.

 

Таблица 2.2. Разъемы шин ISA 8/16 бит, EISA

Ряд F Ряд В Ряд А ряд е
GND GND IOCHK CMD#
+5 В Reset Data 7 START#
+5 В +5 В Data 6 EXRDY
Unused IRQ 2/91 Data 5 EX32#
Unused -5В Data 4 GND
Key DRQ 2 Data 3 Key  
Unused -12 В Data 2 EX16#  
Unused OWS#2 Data 1 SLBURST#  
+12 В +12 В Data 0 MSBURST#  
M/-IO GND IOCHDRY W/R#  
-LOCK SmemWR# AENx GND  
Reserved SmemRD# Addr 19 EMB66#3  
GND IOWR# Addr 18 EMB133#3  
Reserved IORD# Addr 17 Reserved  
BE 3# DACK 3# Addr 16 GND  
Key DRQ 3 Addr 15 Key  
BE 2# DACK 1# Addr 14 BE 1#  
BE 0# DRQ 1 Addr 13 LA 31#  
GND Refr# Addr 12 GND  
+5 В Bclock Addr 11 LA 30#  
LA 29# IRQ 7 Addr 10 LA 28#  
GND IRQ 6 Addr 9 LA 27#  
LA 26# IRQ 5 Addr 8 LA 25#  
LA 24# IRQ 4 Addr 7 GND  
Key IRQ 3 Addr 6 Key  
LA 16 DACK 2# Addr 5 LA 15  
LA 14 TC Addr 4 LA 13  
+5 В BALE Addr 3 LA 12  
+5 В +5 В Addr 2 LA 11  
GND Osc. Addr l GND  
LA 10 GND Addr 0 LA 9  

1 B4: XT=IRQ2, AT=IRQ9.

2 B8: XT-Card Selected.

3 E12, E13 - только для Fast EISA.

Символ # после наименования сигнала означает, что активным является низкий уровень.

 

Таблица 2.3. Дополнительные разъемы шин ISA 16 бит, EISA

Ряд Н Ряд D N# Ряд С Ряд G
LA 8 MCS16# SBHE# LA 7
LA 6 IOCS16# LA 23 GND
LA 5 IRQ 10 LA 22 LA 4
+5 В IRQ 11 LA 21 LA 3
LA 2 IRQ 12 LA 20 GND
Key IRQ 15 LA 19 Key
Data 16 IRQ 14 LA 18 Data 17
Data 18 DACK0# LA 17 Data 19
GND DRQ0 MemRD# Data 20
Data 21 DACK5# MemWR# Data 22
Data 23 DRQ 5 Data 8 GND
Data 24 DACK6# Data 9 Data 25
GND DRQ6 Data 10 Data 26
Data 27 DACK7# Data 11 Data 28
Key DRQ 7 Data 12 Key
Data 29 +5 В Data 13 GND
+5 В Master# Data 14 Data 30
+5 В GND Data 15 Data 31
МАКх# - - MREQx
           

 

Сигналы шины ISA имеют корни в шинах Microbus и Multibus, они естественны для периферийных микросхем фирмы Intel семейств 8080 и 80х86/88.

Набор сигналов 8-битной шины ISA предельно прост. Непосредственно к про­граммному обращению к ячейкам памяти и пространства ввода/вывода относят­ся следующие сигналы:

· Data [7:0] — шина данных.

· Addr [19:0] — шина адреса.

· AEN — разрешение адресации портов (запрещает ложную дешифрацию адреса в цикле DMA).

· IOWR# — запись в порт.

· IORD# — чтение порта.

· SmemWR# — запись в память (в диапазоне адресов 0-FFFFFh).

· SmemRD# — чтение памяти (в диапазоне адресов 0-FFFFFh).

К сигналам запросов прерывания и каналам прямого доступа к памяти относятся следующие:

· IRQ 2/9, IRQ [3:7] — запросы прерываний. Положительный перепад сигнала вызывает запрос аппаратного прерывания. Для идентификации источника высокий уровень должен сохраняться до подтверждения прерывания про­цессором, что затрудняет разделяемое использование линий запроса. Линия IRQ2/9 в шинах XT вызывает аппаратное прерывание с номером 2, а в AT — с номером 9.

· DRQ [1:3] — запросы 8-битных каналов DMA (положительным перепадом).

· DACK [1:3]# — подтверждение запросов 8-битных каналов DMA.

· ТС — признак завершения счетчика циклов DMA.

Шина имеет и несколько служебных сигналов синхронизации, сброса, регенерации памяти, установленной на адаптерах:

· IOCHRDY — готовность устройства, низкий уровень удлиняет текущий цикл (не более 15 мкс).

· BALE — разрешение защелки адреса. После его спада в каждом цикле процессора линии Addr 0-19 гарантированно содержат действительный адрес.

· Refr# — цикл регенерации памяти (в XT он называется DACK 0#). Сигнал появляется каждые 15 мкс, при этом шина адреса указывает на очередную регенерируемую строку памяти.

· IOCHK — контроль канала, низкий уровень вызывает NMI CPU (разрешение и индикация в системных портах 061h, 062h).

· Reset — сигнал аппаратного сброса (активный уровень — высокий).

· Bclock — синхронизация шины с частотой около 8 МГц. Периферийные устройства могут и не использовать этот сигнал, работая только по управляющим сигналам записи и чтения.

· Osc — несинхронизированная с шиной частота 14,431818 МГц (использовалась старыми дисплейными адаптерами).

Кроме логических сигналов шина имеет контакты для разводки питания +5, -5, +12 и -12 В.

 

Дополнительный разъем, расширяющий шину до 16-битной, содержит дополнительные линии данных, адреса, запросов прерываний и каналов прямого доступа:

· Data [15:8] — шина данных.

· SBHE — признак наличия данных на линиях Data [15:8].

· LA [23:17] — нефиксированные сигналы адреса, требующие защелкивания по спаду сигнала BALE. Такой способ подачи адреса позволяет сократить задержку и схемам дешифратора адреса памяти плат расширения начинать декодирование несколько раньше спада BALE.

· IRQ [10:12], IRQ[14:15] — дополнительные запросы прерываний.

· DRQ [5:7] — запросы 16-битных каналов DMA (положительным перепадом).

· DACK [5:7]# — подтверждение запросов 16-битных каналов DMA.

С переключением разрядности данных связаны сигналы:

· MCS16# — адресуемое устройство поддерживает 16-битные обращения к памяти.

· IOCSl6# — адресуемое устройство поддерживает 16-битные обращения к портам.

К новым управляющим сигналам относятся следующие:

· MemWR# — запись в память в любой области до 16 Мбайт.

· MemRD# — чтение памяти в любой области до 16 Мбайт.

· OWS# — сигнал от устройства, разрешающий системной плате укоротить текущий цикл (устранить такты ожидания).

· Master# — запрос от устройства, использующего 16-битный канал DMA на управление шиной. При получении подтверждения DACK [5:7] Bus-Master может захватить шину (не более чем на 15 мкс).

 

Временные диаграммы циклов шины ISA.

Программный обмен. В обычном программном обмене (PIO) для пересылки блока байт данных, например из порта в память (инструкция REP INSB), происходят следующие события:

· Процессор генерирует шинный цикл чтения порта, выставляя адрес его порта и формируя сигнал IORD#. Данные из порта считываются процессо­ром во внутренний шинный буфер.

· Процессор генерирует шинный цикл записи в память, выставляя адрес ячейки и формируя сигнал MEMWR#. Данные из внутреннего шинного буфера записываются в память.

· Эти шаги автоматически повторяются с изменением адреса памяти. Количество повторов определяется содержимым регистра СХ, направление изменения адреса (инкремент-декремент) — флагом DF. Во время передачи всего блока процессор занят.

Обобщенные временные диаграммы циклов чтения или записи памяти или ввода/вывода приведены на рис. 2.25. Здесь условный сигнал CMD* изображает один из сигналов:

· SMEMRD#, MEMRD# - в цикле чтения памяти;

· SMEMWR#, MEMWR# - в цикле записи памяти;

· IORD# - в цикле чтения порта ввода/вывода;

· IOWR# - в цикле записи порта ввода/вывода.

Сигнал BCLC соответствует сигналу Bclock, сигналы SA(19: 0) – сигналам Addr (19: 0) а сигналы SD(15 : 0) – сигналам Data(15 : 0).

В каждом из рассматриваемых циклов активными (с низким уровнем) могут быть только сигналы (сигнал) лишь из одной строки данного списка. (В циклах прямого доступа к памяти это правило не соблюдается.) По адресованному ему спаду сигнала чтения устройство должно выдать на шину данных содержимое адресуемой ячейки и удерживать его, пока не произойдет подъем данного сигнала. Во время циклов записи процессор выставляет действительные данные несколько позже начала (спада) сигнала записи, и устройство должно для себя фиксировать эти данные в конце цикла по подъему сигнала записи. Обращение к портам ввода/вывода отличается тем, что сигналы LA[32:17] не используются.

 

Рис. 2.25. Временные диаграммы циклов чтения или записи на шине ISA

 

Минимальная длительность цикла определяется чипсетом и может программироваться опциями BIOS Setup через количества тактов ожидания. При этом циклы обращения к памяти обычно короче циклов обращения к портам ввода/вывода. В шине AT для управления минимальной длительностью цикла используются и сигналы управления разрядностью передач: если устройство поддерживает 16-битные передачи, то подразумевается, что оно проектировалось уже не для тихоходной XT и может работать с меньшим количеством тактов ожидания. Этим объясняется, что в Setup длительности циклов ISA задаются раздельно как для памяти и ввода/вывода, так и для 8- и 16-битных операций этих типов.

Если устройство не вписывается в заданные циклы, оно может вводить дополнительные такты ожидания, используя сигнал IOCHRDY, но при этом недопустимо удлинять цикл более, чем на 15 микросекунд.

Прямой доступ к памяти. В режиме прямого доступа к памяти процессор инициализирует контроллер прямого доступа к памяти — задает начальный адрес, число циклов и режим обмена, после чего освобождается. Сам обмен производит контроллер и выполняет его несколько иначе, чем прцессор. Контроллер имеет несколько каналов. Для интерфейса периферийного устройства каждый канал представляется парой сигналов: запрос обмена — DRQx и подтверждение обмена — DACKx#. При операциях по каналу DMA адрес порта не фигурирует, а используется только пара сигналов, соответствующая номеру канала. Цикл передачи блока байт в память будет выглядеть сле­дующим образом (рис. 2.26):

· По сигналу DRQx контроллер запрашивает управление шиной и дожидает­ся его предоставления процессором (и другими контроллерами шины).

· Контроллер выставляет адрес ячейки памяти и формирует в одном цикле шины сигналы IORD#, DACKx# и MEMWR#. Сигнал DACKx# указывает на то, что операция выполняется для канала «х», a IORD# указывает на направление в канале (для пересылки из памяти в канал использовался бы сигнал IOWR#). Чтобы по сигналу IORD# не было ложного чтения (а по IOWR# — ложной записи) порта ввода/вывода, адрес которого совпадает с адресом памяти, присутствующим в цикле DMA, контроллер высоким уровнем сигнала AEN запрещает портам дешифрацию адреса. Байт, считанный из канала, в том же цикле шины записывается в ячейку памяти.

· Контроллер модифицирует счетчик адреса и повторяет эти шаги для каждого следующего сигнала DRQx, пока не будет исчерпан счетчик циклов.

· В последнем цикле обмена контроллер формирует общий сигнал окончания ТС (Terminate Count), который может быть использован устройством для формирования сигнала аппаратного прерывания.

Обратная пересылка отличается только тем, что используются сигналы IOWR# и MEMRD#.

Здесь так же, как и в программном цикле обмена возможен асинхронный обмен (удлиненный цикл) с использованием сигнала I/OCHRDY.

Как видно из описания, здесь процессор при обмене занят только инициализацией контроллера, которая сводится к записи в его регистры нескольких байт. После этого обменом заняты только системная шина и контроллер. Если выбранный режим обмена не занимает всей пропускной способности шины, то во время операций DMA процессор может продолжать работу.

 

Рис..2.26 Цикл обмена в режиме DMA

 

Одной из особенностей магистрали ISA является необходимость проведения регенерации динамической памяти компьютера с помощью специальных циклов регенерации на магистрали. Временная диаграмма цикла регенерации показана на рис. 2.27. Эти циклы выполняет входящий в состав материнской платы компьютера контроллер регенерации, который должен для этого получать управление магистралью каждые 15 микросекунд. В PC/XT для этой цели выделялся нулевой канал DMA и в качестве сигнала регеннерации использовался сигнал DACK0#. В PC/AT (шина ISA-16) этот сигнал был заменен на сигнал -Refresh (Refr#) а сигналы нулевого канала DMA выведены на дополнительный разъем (контакты D8 и D9). Во время цикла регенерации производится чтение одной из 256 ячеек памяти (для адресации используются только восемь младших разрядов адреса SA0...SA7). При этом читаемая информация нигде не используется, то есть это цикл псевдочтения. Проведение 256 циклов регенерации, то есть псевдочтения из 256 последовательных адресов ОЗУ, обеспечивает полное освежение информации в ОЗУ и ее непрерывное сохранение. Если по каким-то причинам цикл регенерации не производится вовремя, то возможна утеря информации в ОЗУ.

 

Рис. 2.27. Временные диаграммы циклов регенерации (Т — период сигнала SYSCLK (Bclock); все временные интервалы в наносекундах для частоты 8 мГц); знак “-“ перед сигналом означает, что активным является низкий уровень сигнала.

Цикл регенерации включает в себя выставление сигналов -REFRESH, адреса SA0...SA7 и --MEMR. В случае необходимости может использоваться сигнал I/OCHRDY.

Для шин ISA ряд фирм выпускает карты-прототипы (Prototype Card), представляющие собой печатные платы полного или уменьшенного формата с крепежной скобой. На платах установлены обязательные интерфейсные цепи — буфер данных, дешифратор адреса и некоторые другие. Остальная часть платы свободна, и здесь разработчик может разместить макетный вариант своего устройства. Эти платы удобны для макетной проверки нового изделия, а также для монтажа единичных экземпляров устройства, когда разработка и изготовление печатной платы нерентабельно.

Шина EISA позволяет своим абонентам работать как в режиме ISA, так и в новых режимах EISA. Из сигналов ISA используются линии шин адреса и данных с расширением их до 32 бит, сигналы прерываний и прямого доступа к памяти и синхронизации. Для своих циклов обмена EISA использует собственный набор управляющих сигналов с обязательной синхронизацией по сигналу BCLK. Сигналы IORD# и IOWR# при обращении к EISA-портам не используются. Вместо них используются альтернативные сигналы обращения М/IO# и W/R#. В EISA-циклах не используется и сигнал SBHE, а используются сигналы разре­шения байт ВЕ[3:0]. Вместо общего сигнала AEN каждый слот имеет собственный сигнал AENx. К сигналам расширения шины до EISA относятся следующие:

· LA [23:16] — опережающие сигналы адреса, требующие защелкивания по спаду сигнала BALE.

· LA [31:24]# — аналогично LA [2:23], но с инверсией.

· ВЕ[3:0]# — индикаторы действительности данных в байтах 0-3 при EISA-цикле.

· M/IO# — обращение к памяти (1) или портам (0) EISA.

· W/R# - запись (1) или чтение (0) EISA.

· ЕХ1б#, ЕХ32# — индикаторы разрядности ресурсов.

· SLBURST# — адресуемое устройство поддерживает пакетный режим обмена.

· MSBURST# — уведомление устройства, подавшего сигнал SLBURST, о намере­нии инициировать пакетный обмен.

· LOCK# — обеспечение исключительного права доступа активного EISA Bus-Master к памяти или портам.

· EXRDY — готовность EISA-устройства, аналогично сигналу IOCHRDCY.

· STARTS — отмечает начало цикла EISA-доступа. Во время действия этого сигнала фиксируется адрес и определяется тип обращения.

· CMD# — задает временные параметры цикла, действует после сигнала STARTS.

· MREQx# — EISA Bus-Master слота «x» запрашивает управление шиной.

· МАКх# — EISA Bus-Master слота «х» получает управление шиной от арбитра.

Временные диаграммы одиночных и пакетных циклов обмена по шине EISA приведены на рис. 2.28 и 2.29. Обратим внимание на то, что действительные значения сигналов должны фиксироваться по положительному перепаду BCLK, a готовность проверяется по его отрицательному перепаду.

 

Рис. 2.28. Временные диаграммы одиночных циклов на шине EISA

 

Обычно в персональных компьютерах разъемы шины расширения устанавливают на системную плату, на которой расположены основные узлы компьютера. Для компьютеров инструментального и промышленного назначения такое решение не подходит, по ряду причин здесь удобнее использовать модули, соединяемые пассивной объединяющей платой. Самое простое решение для создания такого конструктива заключалось в использовании стандартной шины и карты ISA (половинной или полноразмерной). Все компоненты с традиционной системной платы перенесли на карту ISA, получив одноплатный компьютер, называемый микро-РС (mPC — microPC). На такой карте содержится процессор, память, графический адаптер, контроллеры портов и дисковые интерфейсы, иногда на нее же ухитряются поместить и дополнительные контроллеры цифрового и аналогового ввода/вывода. Для подключения к модулям (картам) расширения используют пассивную кросс-плату с обычными разъемами ISA. Если требуется более высокопроизводительный канал, используют и шину PCI. При этом на плате системного контроллера (microPC) присутствуют два краевых разъема — ISA на обычном месте и PCI примерно на том месте, где располагался разъем VLB. Кросс-плата для таких систем становится неоднородной — у нее часть слотов имеет разъемы PCI, другая часть — ISA, расположенные на обычных местах, а место для системного контроллера оборудовано обоими разъ­емами.

 

Рис. 2.29. Временные диаграммы пакетных циклов на шине EISA

 

Логически эквивалентной шине ISA является шина PC-104, предназначенная для построения небольших встраиваемых контроллеров. В ее названии присутствует число контактов коннектора, на который выводятся сигналы шины ISA. От обычной шины ISA PC-104 отличается только типом коннектора и нагрузочными характеристиками линий. Основой контроллера является mРС с разъемом (розеткой) PC-104. Если требуется подключение платы расширения, она своим разъемом PC-104 (вилкой) вставляется в плату контроллера. Кроме вилки на плате расширения имеется и розетка PC-104 (коннектор двусторонний), так что можно собирать «бутерброд» из нескольких плат. Если плат более трех, то сверху «бутерброда» устанавливают терминатор. Для фиксации плат стандартизовано расположение крепежных отверстий, и платы скрепляются несущими стоечками (длинными винтами со втулками). Конечно, такой конструктив удобен только для небольших систем с двумя-тремя платами, для которых он и предназначается.









Читайте также:

  1. XXXV. ПОДЪЕМНЫЕ МАШИНЫ И ПРОХОДЧЕСКИЕ ЛЕБЕДКИ
  2. АБСОРБЦИОННО-ДИФФУЗИОННЫЕ ХОЛОДИЛЬНЫЕ МАШИНЫ
  3. АБСОРБЦИОННЫЕ МАШИНЫ НЕПРЕРЫВНОГО ДЕЙСТВИЯ
  4. Асинхронные задачи интерфейса с устройствами ввода/вывода.
  5. Асинхронный режим невозбужденной синхронной машины
  6. Время снятия всасывающего рукава диаметром 125 мм с пожарной машины
  7. Выбор контроллера и модулей ввода/вывода
  8. Гвен замешкалась перед водительской дверью Кадиллака, спотыкаясь о затвердевший от снега подол юбки. Изобель услышала звон ключей от машины. Она побежала быстрее.
  9. Грунтоуплотняющие машины и оборудование динамического действия
  10. Для подлинного духовного роста надо делать все, что можно, для обеспечения комфортного расширения энергетической трубки.
  11. Задача 10. Расчет мощности привода дисковой рубительной машины
  12. Задача 4. Расчет производительности самоходной сучкорезной машины


Последнее изменение этой страницы: 2016-03-22; Просмотров: 158;


lektsia.info 2017 год. Все права принадлежат их авторам! Главная