Курсовая работа: Анализ состояния и перспективы развития в области создания компьютерных шин

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

Анализ состояния и перспективы развития в области создания компьютерных шин

Горбачева Н.Д., Белугин И.А.

Санкт-Петербургский национальный

исследовательский университет

информационных технологий,

механики и оптики

Оглавление

Введение

1. История развития компьютерных шин

2. Топологии шин

3. Описание компьютерных шин

4. Технические характеристики компьютерных шин и принцип действия

5. Внутренние шины

6. Внешние шины

7. Ценовая политика в области компьютерных шин

Заключение

Список литературы

Введение

«Всё течёт, всё меняется!». В сфере компьютерных технологий эта фраза никогда не потеряет актуальности, равно как и девиз «Быстрее! Выше! Сильнее!». И действительно, последние несколько лет можно назвать «временами перемен» компьютерной индустрии. В полной мере это коснулось и такой специфичной области, как компьютерные шины.

Целью нашей исследовательской работы является выявление современного состояния и перспектив развития компьютерных шин.

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

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

Существует ряд широко используемых в компьютерном мире шин. Приведем несколько примеров: Omnibus (PDP-8), Unibus (PDP-11), IBM PC (PC/XT), ISA (PC/AT), EISA (80386), MicroChannel (PC/2), PCI (различные персональные компьютеры), SCSI (различные персональные компьютеры и рабочие станции), Nubus (Macintosh), Universal Serial Bus (современные персональные компьютеры), FireWire (бытовая электроника), VME (оборудование в кабинетах физики) и Сагаас (физика высоких энергий). Может быть, все стало бы намного проще, если бы все шины, кроме одной, исчезли с поверхности Земли (или кроме двух). К сожалению, стандартизация в этой области кажется маловероятной, и уже вложено слишком много средств во все эти несовместимые системы.

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

1. История развития компьютерных шин

Первое поколение

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

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

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

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

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

Во многих микроконтроллерах и встраиваемых системах шины ввода-вывода до сих пор не существует. Процесс передачи контролируется ЦПУ, который в большинстве случаев читает и пишет информацию в устройства, так, как будто они являются блоками памяти. Все устройства используют общий источник тактового сигнала. Периферия может запросить обработку информации путём подачи сигналов на специальные контакты ЦПУ, используя какие-либо формы прерываний. Например, контроллер жёсткого диска уведомит процессор о готовности новой порции данных для чтения, после чего процессор должен считать их из области памяти, соответствующей контроллеру. Почти все ранние компьютеры были построены по таким принципам, начиная от Altair с шиной S-100, заканчивая IBM PC в 1980 х.

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

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

Второе поколение

Компьютерные шины «второго поколения», например, Nu Bus решали некоторые из вышеперечисленных проблем. Они обычно разделяли компьютер на две «части», процессор и память в одной и различные устройства в другой. Между частями устанавливался специальный контроллер шин (buscontroller). Такая архитектура позволила ускорять скорость процессора без влияния на шину, разгрузить процессор от задач управления шиной. При помощи контроллера устройства на шине могли взаимодействовать друг с другом без вмешательства центрального процессора. Новые шины имели лучшую производительность, но также требовали более сложных карт расширения. Проблемы скорости часто решались увеличением разрядности шины данных, с 8-ми битных шин первого поколения до 16 или 32-х битных шин во втором поколении. Также появилась программная настройка устройств для упрощения подключения новых устройств, ныне стандартизованная как Plug-n-play.

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

Увеличивающееся число внешних устройств стало применять собственные шины. Когда были изобретены приводы дисков, они присоединялись к машине при помощи карты, подключаемой к шине. Из-за этого компьютеры имели много слотов расширения. Но в 1980 х и 1990 х были изобретены новые шины IDE решившие эту проблему, и оставив большую часть разъёмов расширения в новых системах пустыми. В наше время типичная машина поддерживает около пяти различных шин.

Шины стали разделять: внутренние (localbus) и внешние (externalbus). Первые разработаны для подключения внутренних устройств, таких как видеоадаптеры и звуковые платы, а вторые предназначались для подключения внешних устройств, например, сканеров. IDE является внешней шиной по своему предназначению, но почти всегда используется внутри компьютера.

Третье поколение

Шины «третьего поколения» (например, PCI-Express) обычно позволяют использовать как большие скорости, необходимые для памяти, видеокарт и межпроцессорного взаимодействия, так и небольшие при работе с медленными устройствами, например, приводами дисков. Также они стремятся к большей гибкости в терминах физических подключений, позволяя использовать себя и как внутренние и как внешние шины, например, для объединения компьютеров. Это приводит к сложным проблемам при удовлетворении различных требований, так что большая часть работ по данным шинам связана с программным обеспечением, а не с самой аппаратурой. В общем, шины третьего поколения больше похожи на компьютерные сети, чем на изначальные идеи шин, с большими накладными расходами, чем у ранних систем. Также они позволяют использовать шину нескольким устройствам одновременно.

Современные интегральные схемы часто разрабатываются из заранее созданных частей. Разработаны шины (например Wishbone) для более простой интеграции различных частей интегральных схем.

2. Топологии шин

Примеры внутренних компьютерных шин.

Параллельные:

• Проприетарная ASUS Media Bus, использовалась на некоторых материнских платах ASUS с Socket 7 и представляла собой шину ISA в специфическом разьеме, размещенном в одну линию с разъемом шины PCI.

• CAMAC -для измерительных систем (instrumentation systems) ? EISA(Extended ISA)- шина для IBM-совместимых компьютеров.

• ISA(Industry Standard Architecture)- 8- или 16-разрядная шина вводавывода в IBM PC-совместимых компьютеров.

• LPC(Low Pin Count)- шина, используемая в IBM PC-совместимых персональных компьютерах для подключения устройств, не требующих большой пропускной способности к ЦПУ.

• MCA (MicroChannel)- системная шина, представленная в 1987 году[1] корпорацией IBM вместе с новым семейством персональных компьютеров IBM PS/2

• Multibus- для промышленных систем

• NuBus (IEEE 1196)

• OPTi local bus, использовалась для ранних материнских плат для Intel 80486

• PCI, также PCI-X(Peripheral Component Interconnect)- шина ввода-вывода для подключения периферийных устройств к материнской плате компьютера.

• S-100 bus или IEEE 696, использовалась в Altair и похожих микрокомпьютерах

• SBus или IEEE 1496- компьютерная шина, использовавшаяся в большинстве компьютеров на основе SPARC от Sun Microsystems в 1990-х

• VLB (VESA Local Bus) или VL-bus- использовалась в основном на материнских платах для 80486 процессоров и была подключена непосредственно к выводам микропроцессора. Однако встречалась и реализация этой шины в сочетании с ЦПУ IBM BL3 (аналог i386SX) и ранними Pentium

• VMEbus (VERSAmodule Eurocard bus)- стандарт на компьютерную шину, первоначально разработанный для семейства микропроцессоров Motorola 68000, и в дальнейшем нашедший применение для множества других приложений.

• STD Bus - для 8-ми и 16-ти битных микропроцессорных систем ? Unibus- первая компьютерная шина, используемая в компьютерах PDP11 и ранних VAX, производимых Digital Equipment Corporation (DEC).

• Q-Bus- одна из разновидностей шин, применяемых в компьютерах PDP-11 и MicroVAX фирмы Digital Equipment Corporation.

Последовательные

• 1-Wire- двунаправленная шина связи для устройств с низкоскоростной передачей данных, в которой данные передаются по цепи питания.

• HyperTransport- технология используется компаниями AMD и Transmeta в x86-процессорах; PMC-Sierra, Broadcom и Raza Microelectronics -- в процессорах AMD, MIPS; nVidia, VIA, SiS, ULi/ALi, Apple Computer и HP -- в наборах системной логики для ПК; HP, Sun Microsystems, IBM и iWill -- в серверах; Cray, Newisys и PathScale -- в суперкомпьютерах, а также компанией Cisco Systems -- в маршрутизаторах.

• IІC- Используется для соединения низкоскоростных периферийных компонентов с материнской платой, встраиваемыми системами и мобильными телефонами.