Общее представление архитектуры шинного интерфейса

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

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

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

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

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

Адресные линии призваны обеспечить два основных адресных пространства: адресное пространство памяти и адресное пространство портов периферийных устройств. Первое связано с адресацией ячеек оперативной и постоянной памяти вычислительной системы, второе – с организацией доступа к портам (регистрам) интерфейсных схем периферийного оборудования. Число задействованных адресных линий n определяет размер используемого адресного пространства 2n.

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

Линии управления служат для передачи управляющих сигналов, реализующих протокол шины.

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

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

Аналогичные функции могут выполнять так называемые буферные регистры, которые, в отличие от шинных формирователей, способны сохранять информацию, т.е.осуществлять ее временную буферизацию. Буферный регистр, выполняющий функции порта ввода-вывода, как правило, имеет разъем для подключения внешнего устройства.

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

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

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

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

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

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

Механизм централизованного арбитража, реализуемый специальной схемой-арбитром, интегрированной на кристалле центрального процессора или представленной отдельной микросхемой чипсета, может работать по принципу системы последовательного опроса. Такая система использует две линии управления. На одну из них, называемую линией запроса шины, выход устройств организован по схеме монтажного ИЛИ (выходы с открытым коллектором). По состоянию этой линии арбитр определяет наличие или отсутствие запросов шины. Другая линия, линия предоставления шины, последовательно связывает все устройства ввода-вывода. По ней арбитр посылает сигнал предоставления шины. Очередное устройство цепочки, получившее сигнал и обнаружившее наличие запроса шины с его стороны, не распространяет этот сигнал дальше по линии и начинает пользоваться шиной. Устройства, не выставлявшие сигнал запроса шины, передают сигнал предоставления шины дальше по цепочке. Такой механизм упорядочения пользования шиной дает максимальный приоритет устройству, расположенному ближе всех остальных к арбитру по линии предоставления шины.

Более гибкой является система последовательного опроса на разных уровнях приоритета. Такая система обслуживается несколькими парами линий запроса и предоставления шины (таких пар может быть 4, 8 или 16). Каждая пара имеет свой уровень приоритета. Каждое устройство связано с одной из пар линий, причем на линии более высокого уровня выведено большее количество устройств. Последовательный опрос арбитр начинает с самой высокой линии приоритета.

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

В целях экономии оборудования арбитр, не отличающийся особой «интеллектуальностью» в системе последовательного опроса, может быть исключен из нее. Его функции способен выполнить источник питания (например, напряжением 5В), используя три линии управления. Это линия запроса шины по монтажному ИЛИ, линия занятости (BUSY) и линия арбитража шины. Линия арбитража, выведенная через ключ на источник питания, последовательно соединяет все устройства. Каждое устройство по линии арбитража имеет вход IN и выход OUT, соединенный со входом IN следующего устройства в цепочке. Когда шина не затребована ни одним устройством, на линию подается напряжение, активизирующее входы и выходы всех устройств. Каждое устройство, стремящееся получить доступ к шине, при ее освобождении сбрасывает сигнал своего выхода OUT, тем самым сбрасывая вход IN следующего устройства в цепочке. Шину в свое распоряжение получает устройство, у которого вход IN остался активным при сброшенном сигнале OUT. Оно активизирует линию BUSY и сигнал своего выхода OUT и приступает к работе с шиной.

Все устройства компьютера так или иначе общаются с памятью. Чаще других к ней обращается центральный процессор. Поэтому во избежание постоянных конфликтов на общей шине, из-за которых процессор вынужден довольствоваться самым низким приоритетом, целесообразно обеспечить его отдельным трактом выхода на память. Другие устройства могут использовать при этом децентрализованный арбитраж шины. Суть его состоит в обеспечении каждого устройства своей приоритетной линией запроса шины и возможностью контроля всех линий запроса. В конце очередной транзакции, каждое устройство должно определить, обладает ли оно в текущий момент высшим приоритетом (предполагается сброс к этому времени сигнала запроса устройства, владеющего шиной). Устройство, получившее положительный результат, по окончании транзакции начинает пользоваться шиной. Такая система арбитража не требует присутствия в ней арбитра, но довольно громоздка из-за большого количества линий запроса.

 

Бесплатный конструктор сайтов - uCoz