Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Раздел 2, Тема2.1 Шины и циклы обмена.docx
Скачиваний:
2
Добавлен:
19.09.2019
Размер:
33.53 Кб
Скачать

Раздел 2. Организация обмена информацией

Тема 2.1 Шины мпс и циклы обмена информацией

  1. Шины микропроцессорной системы.

  2. Циклы обмена информацией.

  3. Host-шина. Двойная независимая шина dib. Ускоренный графический порт agp.

1.В вычислительной системе, состоящей из множества подсистем, необходим механизм для их взаимодействия. Эти подсистемы должны быстро и эффективно обмениваться данными. Например, процессор, с одной стороны, должен быть связан с памятью, с другой стороны, необходима связь процессора с устройствами ввода/вывода. Одним из простейших механизмов, позволяющих организовать взаимодействие различных подсистем, является единственная центральная шина, к которой подсоединяются все подсистемы. Доступ к такой шине разделяется между всеми подсистемами. Подобная организация имеет два основных преимущества: низкая стоимость и универсальность. Поскольку такая шина является единственным местом подсоединения для разных устройств, новые устройства могут быть легко добавлены, и одни и те же периферийные устройства можно даже применять в разных вычислительных системах, использующих однотипную шину. Стоимость такой организации получается достаточно низкой, поскольку для реализации множества путей передачи информации используется единственный набор линий шины, разделяемый множеством устройств.

Главным недостатком организации с единственной шиной является то, что шина создает узкое горло, ограничивая, возможно, максимальную пропускную способность ввода/вывода. Если весь поток ввода/вывода должен проходить через центральную шину, такое ограничение пропускной способности весьма реально. В коммерческих системах, где ввод/вывод осуществляется очень часто, а также в суперкомпьютерах, где необходимые скорости ввода/вывода очень высоки из-за высокой производительности процессора, одним из главных вопросов разработки является создание системы нескольких шин, способной удовлетворить все запросы.

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

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

Как уже было отмечено, с целью снижения стоимости некоторые компьютеры имеют единственную шину для памяти и устройств ввода/вывода. Такая шина часто называется системной. Персональные компьютеры, как правило, строятся на основе одной системной шины в стандартах ISA, EISA или MCA. Необходимость сохранения баланса производительности по мере роста быстродействия микропроцессоров привела к двухуровневой организации шин в персональных компьютерах на основе локальной шины. Локальной шиной называется шина, электрически выходящая непосредственно на контакты микропроцессора. Она обычно объединяет процессор, память, схемы буферизации для системной шины и ее контроллер, а также некоторые вспомогательные схемы. Типичными примерами локальных шин являются VL-Bus и PCI.

Первый компьютер семейства, получивший широкое распространение, IBM PC XT, был выполнен на базе оригинальной системной магистрали PC XT-Bus. В дальнейшем (начиная с IBM PC AT) она была доработана до магистрали, ставшей стандартной и получившей название ISA (Industry Standard Architecture). До недавнего времени ISA оставалась основой компьютера. Однако, начиная с появления процессоров i486 (в 1989 году), она перестала удовлетворять требованиям производительности, и ее стали дублировать более быстрыми шинами: VLB (VESA Local Bus) и PCI (Peripheral Component Interconnect bus) или заменять совместимой с ISA магистралью EISA (Enhanced ISA). Постепенно шина PCI вытеснила конкурентов и стала фактическим стандартом, а начиная с 1999 года в новых компьютерах рекомендуется полностью отказываться от магистрали ISA, оставляя только PCI. Правда, при этом приходится отказываться от применения плат расширения, разработанных за долгие годы для подключения к магистрали ISA.

Системная шина ISA (Industry Standard Architecture) впервые стала применяться в персональных компьютерах IBM PC/AT на базе процессора i286. Эта системная шина отличалась наличием второго, 36-контактного дополнительного разъема для соответствующих плат расширения. За счет этого количество адресных линий было увеличено на 4, а данных - на 8, что позволило передавать параллельно 16 бит данных и обращаться к 16 Мбайт системной памяти. Количество линий аппаратных прерываний в этой шине было увеличено до 15, а каналов прямого доступа - до 7. Системная шина ISA полностью включала в себя возможности старой 8-разрядной шины. Шина ISA позволяет синхронизировать работу процессора и шины с разными тактовыми частотами. Она работает на частоте 8 МГц, что соответствует максимальной скорости передачи 16 Мбайт/с.

С появлением процессоров i386, i486 и Pentium шина ISA стала узким местом персональных компьютеров на их основе. Новая системная шина EISA (Extended Industry Standard Architecture), появившаяся в конце 1988 года, обеспечивает адресное пространство в 4 Гбайта, 32-битовую передачу данных (в том числе и в режиме DMA), улучшенную систему прерываний и арбитраж DMA, автоматическую конфигурацию системы и плат расширения. Устройства шины ISA могут работать на шине EISA.

Шина EISA предусматривает централизованное управление доступом к шине за счет наличия специального устройства - арбитра шины. Поэтому к ней может подключаться несколько главных устройств шины. Улучшенная система прерываний позволяет подключать к каждой физической линии запроса на прерывание несколько устройств, что снимает проблему количества линий прерывания. Шина EISA тактируется частотой около 8 МГц и имеет максимальную теоретическую скорость передачи данных 33 Мбайт/с.

Шина MCA также обеспечивает 32-разрядную передачу данных, тактируется частотой 10 МГц, имеет средства автоматического конфигурирования и арбитража запросов. В отличие от EISA она не совместима с шиной ISA и используется только в компьютерах компании IBM.

Шина VL-bus, предложенная ассоциацией VESA (Video Electronics Standard Association), предназначалась для увеличения быстродействия видеоадаптеров и контроллеров дисковых накопителей для того, чтобы они могли работать с тактовой частотой до 40 МГц. Шина VL-bus имеет 32 линии данных и позволяет подключать до трех периферийных устройств, в качестве которых наряду с видеоадаптерами и дисковыми контроллерами могут выступать и сетевые адаптеры. Максимальная скорость передачи данных по шине VL-bus может составлять около 130 Мбайт/с. После появления процессора Pentium ассоциация VESA приступила к работе над новым стандартом VL-bus версии 2, который предусматривает использование 64-битовой шины данных и увеличение количества разъемов расширения. Ожидаемая скорость передачи данных - до 400 Мбайт/с.

Шина PCI (Peripheral Component Interconnect) также, как и шина VL-bus, поддерживает 32-битовый канал передачи данных между процессором и периферийными устройствами, работает на тактовой частоте 33 МГц и имеет максимальную пропускную способность 120 Мбайт/с. При работе с процессорами i486 шина PCI дает примерно те же показатели производительности, что и шина VL-bus. Однако, в отличие от последней, шина PCI является процессорно независимой (шина VL-bus подключается непосредственно к процессору i486 и только к нему). Ee легко подключить к различным центральным процессорам. В их числе Pentium, Alpha, R4400 и PowerPC.

Шина VME приобрела большую популярность как шина ввода/вывода в рабочих станциях и серверах на базе RISC-процессоров. Эта шина высоко стандартизована, имеется несколько версий этого стандарта. В частности, VME32 - 32-битовая шина с производительностью 30 Мбайт/с, а VME64 - 64-битовая шина с производительностью 160 Мбайт/с.

Право на использование шины разыгрывается путем арбитража. Арбитраж – способ совместного использования шины несколькими устройствами. Традиционный арбитраж основан на значениях идентификаторов устройств, определяющих их приоритет. Если в фазе Arbitration шину запрашивают несколько устройств одновременно, то право на управление получает устройство с наибольшим приоритетом. Приоритет связан с идентификатором следующим образом: для «узкой» шины наибольший приоритет имеет устройство с адресом 0, для устройств с адресами 1...7 приоритет убывает; для «широкой» шины наибольший приоритет имеет устройство с адресом 8, приоритет последовательно убывает для устройств с адресами 9... 15, 0...7. В SPI введена возможность справедливого арбитража (fairness arbitration), обеспечивающая равноприоритетный доступ к шине. Для реализации справедливого арбитража устройство должно иметь специальный регистр справедливости (fairness register), в котором содержится информация о неудачных попытках арбитража устройств с более низким приоритетом. Устройство не должно пытаться захватывать шину, если его регистр справедливости имеет ненулевое значение. По протоколу арбитража различают нормальный арбитраж, начинающийся с фазы покоя шины, и ускоренный арбитраж, начинающийся с сообщения QAS Request (Quick Arbitration and Selection Request — запрос ускоренного арбитража и выбора). Для ускоренного арбитража применяется особый способ освобождения шины целевым устройством. Нормальный арбитраж обязателен для всех устройств, QAS-арбитраж не является обязательным, он разрешается при согласовании протокола. Справедливый арбитраж обязателен для QAS-арбитража, для нормального арбитража справедливость (если поддерживается) разрешается при согласовании протокола.

2. Обмен информацией в микропроцессорных системах происходит в циклах обмена информацией. Под циклом обмена информацией понимается временной интервал, в течение которого происходит выполнение одной элементарной операции обмена по шине. Например, пересылка кода данных из процессора в память или же пересылка кода данных из устройства ввода/вывода в процессор. В пределах одного цикла также может передаваться и несколько кодов данных, даже целый массив данных, но это встречается реже.

            Циклы обмена информацией делятся на два основных типа:

            • Цикл записи (вывода), в котором процессор записывает (выводит) информацию;

            • Цикл чтения (ввода), в котором процессор читает (вводит) информацию.

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

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

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

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

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

 

3.HBA (англ. Host Bus Adapter или англ. host channel adapters, HCA или просто англ. Host Adapter — дословно адаптер (ведущего контроллера) шины) — в компьютерном аппаратном обеспечении плата адаптера, подключаемая к компьютеру и служащая для его расширения путём присоединения накопителей (устройств хранения информации) или сети, имеющих в качестве интерфейса шинную организацию, отличную от имеющихся в компьютере, изначально.

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

Повышение производительности компьютера возможно через увеличение частоты шины, внешней и внутренней частоты процессора.

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

Следует отметить, что внутренняя частота процессора — это частота, на которой он выполняет операции внутри самого полупроводникового кристалла. А внешняя частота — это частота host-шины (FSB, SB, CPU Bus), т. е. частота, на которой работают чипсет, кэш-память, оперативная память. Другие составляющие компьютера, например контроллеры устройств, работают на частотах шин, через которые они подключены к системе, например, через шины PCI и AGP. Причем для шины PCI рабочая частота, как правило, составляет половину частоты host-шины. Для некоторых материнских плат — половину или треть, в зависимости от величины частоты. Возможны и другие коэффициенты деления частоты host-шины. Современные видеоадаптеры в компьютерах с процессорами Pentium II, Pentium III и аналогичных, как правило, подключены к остальным частям компьютера через шину AGP, частота которой также зависит от частоты host-шины. Все это означает, что изменение частоты host-шины ведет к изменению пропускной способности шин PCI и AGP и, в конечном счете, к изменению производительности всей системы компьютера.

Взаимосвязь частот можно проследить на примере процессора Intel Pentium-166. Внутренняя частота данного процессора, на которую он рассчитан и на которой рекомендуется выполнять внутреннюю обработку данных, составляет, как это следует из названия, 166 МГц. Эта частота задается внешней частотой — частотой host-шины и множителем. При частоте шины 66 МГц множитель должен составлять 2,5 (2,5 х 66 МГц составляет 166 МГц). То есть, если процессор работает на тактовой частоте в N раз больше, чем частота host-шины, то внутренняя частота задается соотношением:

Частота host-шины х Х= Внутренняя частота процессора, где X— множитель. В приведенном примере частота PCI-шины — 33 МГц.

Эта архитектура (Dual Independent Bus - DIB) впервые была реализована в процессоре шестого поколения и предназначалась для увеличения пропускной способности шины процессора и повышения производительности. При наличии двух независимых шин данных для ввода-вывода процессор получает доступ к данным с любой из них одновременно и параллельно, а не последовательно, как в системе с одной шиной. Вторая, или фоновая (backside) входная шина процессора с DIB применяется кэш-памятью второго уровня, поэтому она может работать значительно быстрее чем в том случае, если бы ей пришлось использовать (совместно с процессором) основную шину процессора.

В архитектуре DIB предусмотрено две шины: шина кэш-памяти второго уровня и шина, соединяющая процессор и основную память, или системная шина. Процессоры Р6 Pentium Pro, Celeron и Pentium П/Ш могут использовать обе шины одновременно, благодаря чему снижается критичность такого параметра, как пропускная способность шины.

AGP (от англ. Accelerated Graphics Port, ускоренный графический порт) — разработанная в 1997 году компанией Intel, специализированная 32-битная системная шина для видеокарты. Появилась одновременно с чипсетами для процессора Intel Pentium MMX. Её отличия от предшественницы, шины PCI:

  • работа на тактовой частоте 66 МГц;

  • увеличенная пропускная способность;

  • режим работы с памятью DMA и DME;

  • разделение запросов на операцию и передачу данных;

  • возможность использования видеокарт с большим энергопотреблением, нежели PCI.

На данный момент материнские платы со слотами AGP практически не выпускаются; стандарт AGP был повсеместно вытеснен на рынке более быстрым и универсальным PCI Express. Последние массовые материнские платы с AGP производились примерно в 2004-2005 годы для процессора Pentium 4 Prescott и чипсетов поколения Intel 865.

Видеокарты стандарта AGP выпускаются в малом количестве и стоят дороже аналогичных PCI-E карт (из-за использования «микросхемы-переходника» PCI-E → AGP).

Чипсет (англ. chipset) — набор микросхем, спроектированных для совместной работы с целью выполнения набора каких-либо функций. Так, в компьютерах чипсет, размещаемый на материнской плате, выполняет роль связующего компонента, обеспечивающего совместное функционирование подсистем памятицентрального процессора (ЦП)ввода-вывода и других. Чипсеты встречаются и в других устройствах, например, в сотовых телефонах.