Форум МГОУ Прокопьевск

Объявление

Кому нужна квартира на сутки ночь час обрашяйтесь к TRojan

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Форум МГОУ Прокопьевск » Московский Государственный Открытый Университет » Архитектура вычислительных систем


Архитектура вычислительных систем

Сообщений 1 страница 4 из 4

1

9.6 (61)
Физическая организация памяти
Физически память делится на внутреннюю и внешнюю.
Внутренняя память выполняется, чаще всего, в виде микросхем высокой степени интеграции. Внутренняя или основная память может быть двух типов: оперативное запоминающее устройство (ОЗУ или RAM, Random Access Memory) или ЗУ с произвольной выборкой (ЗУПВ) и постоянное ЗУ (ПЗУ или ROM, Read Only Memory). В последнее время широкое распространение получила флэш (Flash)-память, имеющая особенности, как ОЗУ, так и ПЗУ. ОЗУ является энергозависимой памятью, поскольку вся содержащаяся в ней информация теряется при выключении питания и предназначена для временного хранения программ и данных. ПЗУ является энергонезависимой памятью, т.е. информация сохраняется и при выключении питания системы. ПЗУ предназначена для хранения управляющих работой ЭВМ стандартных программ (например, отвечающие за процедуру старта системы), констант, таблицы символов и т.д.
ПЗУ могут быть: масочными - запрограммированными на заводе изготовителе (ROM), однократно-программируемыми пользователем ППЗУ (PROM или OTP), многократно-программируемыми (репрограммируемыми) пользователем РПЗУ с ультрафиолетовым стиранием (EPROM) или с электрическим стиранием (EEPROM, Flash). Широкое распространение нашли также программируемые логические матрицы и устройства (PLM, PML, PLA, PAL, PLD, FPGA и т.д.) с большим выбором логических элементов и устройств на одном кристалле.
ОЗУ подразделяются на статическую память (SRAM), динамическую (DRAM, здесь для хранения информации необходима ее регенерация) и регистровую (RG).
В качестве оперативной памяти современные ЭВМ оснащаются модулями SIMM, DIMM, DDR и RIM, которые является динамической памятью. Указанные модули памяти представляют собой небольшие платы с установленными на ней совместимыми чипами SDRAM (Sychronous DRAM – это новая технология микросхем динамической памяти. Основное отличие данного типа памяти от остальных заключается в том, что все операции синхронизированы с тактовой частотой процессора, то есть память и CPU работают синхронно. Технология SDRAM позволяет сократить время, затрачиваемое на выполнение команд и передачу данных, за счет исключения циклов ожидания).
Модуль SIMM (Single In-line Memory Modyle) – 72-контактные модули, обычно оборудованные микросхемами памяти общей емкостью 8, 16 и 32 Мб.
Модуль DIMM (Dual In-line Memory Modyle) – 168-контактные модули памяти. DIMM обладают внутренней архитектурой, схожей  с 72-контактными модулями SIMM, но благодаря более широкой шине обеспечивают повышенную производительность подсистемы «ЦП – ОП».
Модуль DDR – имею аналогичную DIMM архитектуру, а двукратный выигрыш в быстродействии осуществляется за возможности передачи двух порций данных за один такт синхронизации – по фронту и спаду импульса.
Одной из наиболее быстродействующих является память RDRAM (Rambus RAM), разработанная американской компанией Rambus. Память RDRAM является 16-разрядной, тактируется частотой 400 МГц (результирующая частота за счет использования технологии DDR составляет 800 МГц) и достигает пиковой скорости передачи данных 1.6 Гбайт/с. Использование узкой шины данных и сверхвысокой частоты значительно повышают эффективность использования и загрузку канала, максимально освобождая протокол от временных задержек.
Внешней называют память на магнитных (жесткие и гибкие диски), оптических носителях (CD-ROM) и т.п.
Кроме того существует и накопители на магнитной ленте, которые в настоящее время практически не используются и поэтому в данной главе не рассматриваются.
Дисковые накопители в зависимости от среды носителя и по применяемому методу записи (чтения) данных на (с) поверхность (и) могут подразделяться на магнитные, оптические и магнитооптические.
Тип накопителя Емкость, Мб Время доступа, мс Скорость передачи, Кбайт/с Режим доступа
НГМД 1,2; 1,44 65 -100 150 Чтение/запись
НЖМД (Винчестер) 1000-18000 8-20 500-3000 Чтение/запись
CD-R 120-800 15-300 150-1500 Чтение/
однократная запись
CD-RW 120-800 15-150 150-1500 Чтение/Запись
НМОД 128-1300 15-150 300-2000 Чтение/запись
Дисковая память
Носителями информации являются поверхности гибких и жестких дисков, в качестве немагнитных основ которых используются соответственно майлар (как и в магнитных лентах) и алюминиевые (в ряде случаев стеклянные) круги (диски). Стеклянные диски являются менее критичными к температурным изменениям и позволяют увеличить плотность записи информации. В настоящее время наиболее широкое распространение получили диски с напыленным магнитным слоем, а точнее, с металлической пленкой (например, кобальт).
Перед осуществлением записи на магнитный диск он должен быть специальным образом инициализирован – отформатирован. В результате форматирования на поверхности образуются концентрические окружности (синхронизирующие метки диска), называемые  дорожками (track). Количество дорожек зависит от типа диска. Дорожки разбиваются на участки фиксированной длины, называемые секторами. Количество секторов на дорожке определяется типом и форматом диска, и они в основном одинаковы для всех дорожек. IBM PC-совместимые ПК могут работать с несколькими размерами секторов от 128 до 1024 байт. Стандартным сектором считается сектор из 512 байт. Данные любого размера (разрядности) размещаются в секторах с фиксированным размером, а дисковые операции записи и считывания производятся с целыми секторами.
Дорожки и сектора нумеруются с нуля, начиная с внешнего края диска, при этом сектор с нулевым номером на каждой дорожке резервируется для системных целей. Диски имеют две стороны. Так как накопители на жестких дисках могут состоять из нескольких дисков (стопка), то совокупность всех дорожек, по одной на каждой стороне с одинаковыми номерами, образует цилиндр с номером соответствующей дорожки.ъ

2.11 Расположение дорожек и секторов на магнитном диске

Память на гибких магнитных дисках
Все НГМД, применяемые в PC, независимо от типа и размера имеют одинаковый интерфейс и унифицированные разъемы. Используемый в PC кабель-шлейф имеет перевернутый фрагмент из 7 проводов с номерами 10-16. Этот поворот позволяет подключать к контроллеру одним шлейфом до двух НГМД, причем адрес накопителя определяется его положением на шлейфе: для при¬вода А: фрагмент перевернут, для В: – нет.
Контроллер накопителей на гибких дисках FDC (Floppy Drive Controller) является всегда внешним по отношению к накопителю и обычно располагается на одной плате с контроллером или адаптером жестких дисков.
Контроллер FDC XT поддерживает до четырех накопителей (FDD), хотя многие контроллеры имеют интерфейсные схемы только для одного шлейфа, то есть для двух накопителей. Эти контроллеры обеспечивают скорость передачи данных 250 и 300 Кбит/с.
Контроллер FDC AT  поддерживает только два накопителя, но обеспечивает более высокую скорость 500 Кбит/с.
Современные контроллеры обеспечиваю скорость 1000 Кбит/с. В карте ресурсов AT имеется место под два контроллера НГМД.
Контроллеры вырабатывают запрос аппаратного прерывания IRQ6 (BIOS INT OEh) по окончании выполнения внутренних операций. Для обмена данными может использоваться канал DMA2.
Память на жестких магнитных дисках
В отличие от накопителей на гибких дисках и их контроллеров, жестко стандартизованных и поэтому легко конфигурируемых, в PC применяется множество типов накопителей на жестких дисках, их интерфейсов и контроллеров, различающихся и способами конфигурирования.
Накопители на жестких магнитных дисках НЖМД (HDD), появились с машинами PC/XT. Первые накопители имели интерфейс, являющийся расширением интерфейса НГМД, и подключались к специальной плате контроллера с модулем дополнительной BIOS, хранящей всю информацию об установленных жестких дисках. В машинах класса AT поддержку стандартного контроллера включили в системную BIOS, параметры используемых жестких дисков стали хранить в памяти CMOS.
Традиционные версии BIOS поддерживают до двух накопителей на жестких дисках и хранят их параметры в ячейках памяти CMOS. Расширенные версии BIOS для современных двухканальных контроллеров АТА поддерживают 4 жестких диска и хранят их параметры.
Для дисков ATA используются следующие режимы адресации:
1 CHS (целиндр-головка-сектор, традиционная трехмерная адресация данных на диске);
2 ECHS (расширенная трехмерная адресация);
3 LBA (линейная адресация данных на диске через логический адрес блока).
Учитывая, что в соответствии с форматом вызова функций дискового сервиса, одно устройство может иметь 210=1024 цилиндра, 28=256 головок, 26-1=63 сектора. Таким образом, при трехмерной адресации (CHS) и размере сектора в 512 байт максимальный объем диска не может превышать 7.875 Гбайт.
HDDmax(CHS) = [210 * 28 * (26-1)] * 512 = 136 902 082 560 байт = 7.875Gb (~8,4ГБ)
Все современные винчестеры используют LBA-адресацию. В режиме LBA параметры стандартных вызовов транслируются в т.н. линейный адрес, который вычисляется однозначно в «естественном» порядке счета секторов, т.е. сектору с нулевым лог. адресом соответствует первый сектор нулевой головки нулевого цилиндра. В этом случае номер каждого сектора представляет собой 28-битное число и максимальным диском для LBA будет:
HDDmax(LBA) = 228  * 512 = 137.4Gb (128ГБ)
В тоже время большинство ПО использует CHS-адресацию. Поэтому с появлением HDD с LBA адресацией, чтоб не модернизировать имеющееся ПО, поступили следующим образом. BIOS в случае определения LBA-винчестера, переводит его параметры в CHS-версию и ОС работает с ним с CHS-винчестером. Т.е. 28-битное значение адреса LBA «раскладывается» следующим образом: 16 бит – цилиндр,  8 бит – сектор,  4 бита – головка. В результате, при получении запроса на работу с диском, BIOS переводит для контроллера это значение LBA-адрес :
В общем виде формулы вычисления такого адреса имеет вид:
LBA=(CYL*HDS*HD)*SPT+SEC-1
CYL – номер цилиндра
HD – номер головки
HDS – количество головок
SPT – количество секторов на треке
SEC – номер сектора
Для накопителей на жестких дисках используют интерфейсы ST-506/412, ESDI, АТА (неофициальное название IDE), SCSI. Накопители и контроллеры с интерфейсами ST-506/412 и ESDI практически не используются.
В настоящее время широко используются перечисленные ниже интерфейсы.
АТА-2 — расширенная спецификация ATA, включает 2 канала, 4 устройства, PIO Mode 3 (программированный ввод-вывод), DMA mode 1 , Block mode (пакетный обмен), объем диска до 8 Гбайт, поддержка LBA и CHS адресации.
Fast АТА-2 разрешает использовать DMA Mode 2 (13,3 Мбайт/с), PIO Mode 4.
ATA-3 — расширение, направленное на повышение надежности. Включает средства парольной защиты, улучшенного управления питанием, самотестиро¬вания с предупреждением приближения отказа — SMART (Self Monitoring Ana¬lysis and Report Technology).
Ultra DMA/33 — версия ATA/IDE со скоростью обмена по шине 33 Мбайт/с. Устройства ATA IDE, E-IDE, АТА-2, Fast АТА-2, ATA-3 и Ultra DMA/33 электрически совместимы.
Последние достижения в этой области – интерфейсы Ultra ATA/66, Ultra ATA/100 и Ultra ATA/133 позволяющие осуществлять передачу данных со скоростью 66Мбай/сек,  100 Мбай/сек и 133 Мбай/сек соответственно.
Возможно также подключение дисковых устройств и к параллельному порту, но через устройство, обеспечивающее один из вышеперечисленных интерфейсов. О дисках с интерфейсом USB говорить пока рано, а интерфейс FireWire является родственником SCSI-3.
Кэширование диска
Время доступа к различным блокам информации на HDD является переменной величиной, складывающейся из временами подвода магнитной головки (МГ) к искомой дорожке, времени успокоения вибрации МГ и времени подвода искомого сектора под МГ. Кэш или буфер HDD необходим, чтоб по возможности сократить время доступа к диску за счет, во первых, предварительной выборки данных, и во-вторых, за счет организации поблочного доступа. Для организации буфера используются два вида кэш-памяти аппаратная и программная.
Аппаратная кэш-память представляет собой значительный объем памяти и имеет архитектуру полного ассоциативного отображения. Она строится на плате кэш-контроллера HDD с использованием модулей высокопроизводительной памяти и имеет собственный процессор.
Программная кэш-память — это некоторая область системной памя¬ти, зарезервированная для дискового кэша и управляемая утилитой (например, Windows SmartDrive).Объем программной кэш-памяти рекомендуется ограничивать четвертью объема системной памяти).
В многозадачных системах выгодно иметь HDD с мультисегментной кэш-памятью (для каждой задачи отводится своя часть кэша – сегмент). В адаптивной системной кэш-памяти для повышения производительности размер и количество сегментов могут изменяться.
Для эффективной работы кэш (HDD) необходимо часто оптимизировать (дефрагментировать) диск, так как при этом относящиеся к одному и тому же файлу сектора будут расположены в физически близких секторах, что приведет к большей эффективности функционирования кэш.
Общие сведения о RAID-технологиях
В RAID (Redundant Array of Independent Disks) технологии данные и информация для устранения ошибок распределяются по нескольким дискам. При этом обеспечивается повышение производительности, а также защита критически важных приложений в среде клиент-сервер. Для обеспечения бесперебойного доступа выбирается конфигурация с дублированным источником питания и функцией «горячей перекачки», которая оперативно реконструирует данные при замене отказавшего диска на новый.
С целью уменьшения платы за надежность был предложен ряд архитектур. Разработаны RAID-системы нескольких уровней. Первый уровень RAID предполагает сплошное копирование защищаемых данных. Остальные уровни RAID основаны на работе с одной копией данных, распределенной по разным дискам, при использовании схем четности. По сравнению с зеркальным отображением контроль четности позволяет снизить накладные расходы на избыточность (см. рис. 2.12). На рисунке схематично представлена система RAID 3 и дается пример восстановления потерянного блока (ФБЗ1) с использованием контрольной информации (ФБ41). При появлении отказа необходимо заменить отказавший диск и подать команду на RAID-контроллер о восстановлении массива. Получив такую информацию, компьютер рассматривает все блоки, определяет, каких данных не достает, восстанавливает утраченные фрагменты на основе информации о четности и записывает полученные блоки на новый диск. Очень важно восстановить массив как можно быстрее. Отказ второго диска будет означать полную утрату всех данных. Использовании при построении ВС RAID 3 при четырехдисковой организации приводит к повышению стоимости системы приблизительно на 25 %.

0

2

9.5 (60)
ШИНЫ
Все компоненты на материнской плате каким-то образом должны быть соединены между собой. Это соединение осуществляется с помощью шин.
Совокупность линий (проводников на материнской плате), по которым обмениваются информацией компоненты устройств и устройства РС, назы-вается шиной (Bus). Шина предназначена для обмена между двумя и более устройствами. Описание шин приведено в [5].
Шина, связывающая только два устройства, называется портом.
Обычно шина имеет гнёзда для подключения внешних устройств, кото-рые в результате сами становятся частью шины и могут обмениваться ин-формацией со всеми другими подключаемыми к ней устройствами.
Шины в РС различаются по своему функциональному назначению.
1. Системная шина (или шина CPU) используется микросхемами и Chip-set для пересылки информации от устройств к CPU и от CPU к устройствам. Это шина GTL+ c тактовой частотой 66, 100 и 133 МГц и пропускной спо-собностью 528, 800 Кбайт/с и 1,06 Мбайт/с или шина EV6, у которой переда-ча по обоим фронтам с тактовой частотой 377 МГц. Может использоваться 128-разрядная шина памяти (так как передача происходит без участия CPU).
2. Шина кэш-памяти предназначена для обмена информацией между CPU и кэш-памятью.
3. Шина памяти используется для обмена информацией между опера-тивной памятью и CPU.
4. Шины ввода/вывода (бывают стандартные и локальные).

Назначение линий шины
Шина имеет собственную архитектуру, позволяющую реализовать важ-нейшие её свойства – возможность параллельного подключения практически неограниченного числа внешних устройств и обеспечения обмена информа-цией между ними. Архитектура любой шины включает следующие компо-ненты.
1. Линии данных (по ним происходит обмен данными между CPU, кар-тами расширения, установленными в слоты, и памятью). В режиме DMA (Di-rect Memory Access) управление обменом данными осуществляется соответ-ствующим контроллером, минуя CPU. Компьютеры семейства Pentium име-ют 64-разрядную шину данных.
2. Линии адреса (процесс обмена возможен лишь в том случае, когда из-вестен отправитель и получатель этих данных, а потому у каждого компо-нента РС, каждого регистра ввода/вывода и ячейки RAM, есть свой адрес – идентификационный код, который передаётся по этой шине). RAM временно хранит данные для ускорения обмена ими. Количество ячеек RAM не должно превышать  , где m – разрядность адресной шины. В семействе Pentium она 32-разрядная и можно адресовать 4 Гбайт памяти.
3. Линии управления данными (шины управления) необходимы для за-писи (считывания) в регистры устройств, подключенных к шине, ряда необ-ходимых при передаче данных сигналов: записи/считывания, готовности к приёму/передаче данных, подтверждения приёма данных, аппаратного пре-рывания, управления и инициализации контроллера.
4. Контроллер шины осуществляет управление процессом обмена дан-ными и служебными сигналами и обычно выполняется в виде отдельной микросхемы или интегрируется в микросхемы Chipset.
Шины ввода/вывода
Первой характеристикой шины является её разрядность, определяемая количеством данных, параллельно проходящих через неё.
Второй характеристикой шины является её пропускная способность, ко-торая определяется количеством бит информации, передаваемых по шине за секунду. Пропускная способность вычисляется как произведение тактовой частоты шины на её разрядность.
Рассмотрим шины ввода/вывода. Они описаны в [10].
1. Шина ISA-8, ISA-16 (Industrial Standard Architecture). От этих шин сейчас отказываются, как от шин с низкой производительностью – время пе-редачи превышает скорость обработки их CPU, т.е. процессор простаивает.
2. Шина EISA (Electronic ISA). Обладает следующими достоинствами:
а) слот EISA полностью совместим со слотом ISA из-за двухэтажной конструкции слота;
б) она 32-разрядная, т. е. все линии данных CPU выведены на слот, что позволяет использовать карты сетевые, графические и жёсткого диска. Её частота 8,33 МГц, но скорость передачи 33 Мбайт/с;
в) шина EISA – интеллектуальная, так как конфигурация карт расши-рения происходит в ней программно, а не джамперами. Если необходимо ис-пользовать ISA, то ставят заглушку, чтобы предотвратить контакт I и II этажа разъёма.
3. Шина VESA или VLB (Video Electronic Standard Assotiation или Vesa Local Bas). Эта локальная шина разработана в начале 80-х годов Ассоциацией стандартов видеоэлектроники. Используется для передачи видеоданных. Об-мен информацией с CPU осуществляется под управлением контроллеров, расположенных на картах, устанавливаемых в слот VLB, напрямую в обход стандартной шины ввода/вывода. Она 32-разрядная и работает на тактовой частоте процессора, но адреса и сигналы управления здесь передаются по шине ISA. Она использовалась в CPU 80486.
4. Шина PCI (Peripheral Component Interconnect) разработана фирмой In-tel для PC Pentium. Её тактовая частота равна половине тактовой частоты системой шины. Включается в слот системной платы. Её основа – мосты, ко-торые осуществляют связь между PCI и другими шинами. Важной особенно-стью PCI является способность внешнего устройства при пересылке данных управлять шиной без CPU.
Она широко распространена, так как:
а) у неё отличный от ISA способ передачи данных: когда передающее устройство готово к передаче, оно выставляет данные и сопровождает их со-ответствующим сигналом, а приёмное устройство записывает данные в свои регистры и подаёт сигнал, подтверждая запись и готовность к приёму сле-дующих;
б) у неё относительно независимые отдельные компоненты системы – передачей данных управляет включённый между ней и CPU мост, а процес-сор может выполнять другую работу;
в) есть PCI 1.0 – 32-разрядная и PCI 2.0 – 64-разрядная, отсюда полоса пропускания шины 33 * (32 бит/8) = 132 Мбайт/с или 33 МГц * (64 бит/8) = 264 Мбайт/с;
г) шина PCI универсальна, так как не зависит от типа CPU – соединение мостом в системной шине, минуя CPU;
д) PCI 5.0 64-разрядная, на дополнительные контакты подаётся напря-жение 3,3 В, а на нём работает большинство микросхем;
е) система PCI использует принцип временного мультиплексирования – для передачи данных и адресов используется одни и те же линии;
ж) обладает свойством интеллектуальности, так как она в состоянии рас-познать аппаратные средства и анализировать конфигурации системы в соот-ветствии с технологией Plug & Play. Для них созданы свои карты расшире-ния.
Для работы с видеоданными лицензированы PCI Express x1, х2, x4, х8, x16 и х32-канальные версии (266, 532, 1066, 2132, 4200 и 8400 Мбайт/с). Их главное преимущество состоит в том, что данные через шину передаются без помех в обоих направлениях, а в режиме дуплексной передачи цифры выше удваиваются. На видеоплату можно подать мощность до 75 Вт без дополни-тельных разъёмов. Новые видеоплаты на базе PCI Express х8 и x16 обладают высоким качеством изображения, которое не уступает платам с AGP 8x.
5. Шина AGP (Accelerated Graphics Port) является каналом передачи данных между видеоадаптерами и RAM. Эта высокоскоростная, локальная шина ввода/вывода предназначена для нужд видеосистем. Она связывает 3D-акселератор видеосистемы (ускоряет обращение) с системной памятью PC. Только один слот AGP, в него подключается одно устройство, а потому нет проблем с арбитражем, что повышает скорость обмена данными. Она 32-разрядная, отличается от PCI следующим:
а) использует более высокие тактовые частоты (режим 2, 4);
б) режим демультиплексирования (SBA) – по очереди адрес и данные;
в) пакетная передача данных;
г) режим прямого исполнения в системной памяти DIME. Здесь обра-ботка текстур ведётся предварительно в системной памяти, а в локальную память загружается уже результат. Её пропускная способность для режима 1х равна 66 * 32 = 2 112 бит/с = 264 Мбайт/с, в режиме 2х передача идёт по пе-реднему и заднему фронтам, а потому цифра удвоится – 528 Мбайт/с – ис-пользуется в Pentium с 64-разрядной внешней шиной. В режиме 4х (с пони-женным напряжением питания) за 1 такт удаётся передать 32-разрядную ко-манду. Скорость передачи около 1 Гбайт/с, но современные прогрессивные технологии 0,25 мкм и 0,18 мкм устойчиво работают и на частоте 133 МГц вместо 100 МГц, а тактовая частота AGP = 66% от 133 МГц, т.е. 100 МГц.
Слоты AGP бывают с напряжением питания:
а) 3,3 В (имеет ключ-перемычку на материнской плате и одну прорезь на плате, режим 2х);
б) 1,5 В (тоже с ключом-перемычкой, с 2 прорезями на плате, режим 4х);
в) универсальный слот (использует любое напряжение без перемычки, на плате 2 прорези, режим 4х).
Сейчас используется шина AGP 8х. Для технологии 0,09 мкм использу-ется уже частота 400 МГц и выше, скорость передачи 4 Гбайт/с.
Есть шины, подключающие периферийные устройства вне корпуса РС кабелем. Рассмотрим их.
1. Шина USB (Universal Serial Bus). Разрабатывалась фирмами Compaq, DEC, IBM, Intel, Microsoft, NEC и Northern Telecom. Обмен по интерфейсу – пакетный, скорость обмена 12 Мбит/с. На новых материнских платах есть разъём для подключения концентратора USB. USB позволяет подсоединить к компьютеру периферийные устройства (клавиатуру, мышь, джойстик, прин-тер), не выключая питания, т.к. поддерживает технологию Plug & Play. Его конфигурирование осуществляется автоматически. Все устройства должны быть с разъёмом USB и подключаться к РС через USB-хаб или концентратор, который позволяет подключать до 127 периферийных устройств.
Шины USB 1.1 и USB 2.0. Разъёмы выведены на заднюю стенку, их мо-жет быть до 4. На USB 2.0 пропускная способность уже до 480 Мбит/с. Реа-лизуется как синхронный (для телеконференций), так и асинхронный режи-мы передачи данных, поддерживается дополнительный подканал для под-ключения клавиатуры, мыши, модема со скоростью обмена  1,5 Мбит/с.
2. Шина SCSI-1 (Small Computer System Interfase). Шина разработана в 1986 году. Скорость передачи данных – 2 Мбайт/с, подключаются к одному разъёму до 8 устройств (винчестер, привод CD-ROM, сканер, фото- и видео-камеры). Она реализована в виде кабельного шлейфа. С шиной PC PCI со-единяется через хост-адаптер (Host Adapter). Каждое устройство, подклю-ченное к шине, имеет свой идентификационный номер (I.D.). У неё асин-хронный режим работы, есть Narrow-канал. В 1989 году появилась SCSI-2 со скоростью передачи 10 Мбайт/с. Здесь используется синхронный режим и Wide-канал.
В 1995 году появился стандарт Ultra SCSI с пропускной способностью 8-разрядной шины 20 Мбайт/с, а 16-разрядной шины Ultra SCSI – 40 Мбайт/с, но уменьшилась длина кабеля. После разработки нового метода передачи данных LVD (Low Voltage Differential) появились в 1997 году модели со ско-ростью передачи 80 Мбайт/с в Ultra2 SCSI и в 1999 году 160 Мбайт/с в Ul-tra3 SCSI.
В сентябре 1998 года появилась спецификация Ultra 160. Её пропускная способность 160 Мбайт/с. Основные особенности Ultra 160:
а) двойная синхронизация при передаче данных;
б) контроль целостности данных за счёт использования циклического кода с избыточностью (CRC);
в) контроль окружения. Заключается в проверке возможностей соедини-тельных кабелей, терминаторов, карт с целью обеспечения оптимальной про-изводительности шины.
У Ultra 320 пропускная способность 320 Мбайт/с для 16-разрядной ши-ны, поддерживает 16 устройств без определения длины кабеля. Устройства соединяются кабелями в цепочку, а на крайнем устанавливается терминатор для устойчивости работы шины. Есть пассивные терминаторы (резистор с сопротивлением 132 Ом) и активные (от 132 до 110 Ом), позволяющие ме-нять входное сопротивление в зависимости от стандарта SCSI. Разъёмы для подключения могут быть внутренними и внешними 50- и 68-контактными.
В 2001 году появилась шина SAS 1.0 (Serial Attached SCSI) со скоростью 1 500 Мбайт/с. По ней данные передаются последовательно, а не параллель-но, предварительно объединяясь в пакеты. Жёсткие диски подключаются по методу «точка-точка», потому пропускные способности у всех дисководов одинаковые, а не делятся. В 2004 году появилась SAS 1.1 со скоростью 3 000 Мбайт/с. В 2006 году должна появиться шина SAS 2.0 со скоростью 6 000 Мбайт/с.
3. Шина является частью нового стандарта Serial SCSI (SCSI-3) – это вы-сокоскоростная, локальная, последовательная шина, разработанная фирмами Apple и Texas Instruments в 1995 году. Изменяемая структура и одноранговая топология делают её удобной для подключения жёстких дисков и устройств обработки аудио- и видеоинформации, а также для работы мультимедийных приложений в реальном времени. Шина может передавать данные со скоро-стью 12,5; 25; 50; 100, 200 и 400 Мбит/с, ожидается до 1600. Она позволяет одновременно работать нескольким устройствам, передающим информацию с разными скоростями. Шина использует простой 6-проводный кабель, под-держивает технологию Plug & Play, но её структура проще, чем у SCSI, а стоимость ниже. Используется пакетный режим передачи информации – ско-рость в нём до 1 Гбайт/с.
Она построена по разветвляющейся топологии и позволяет использовать до 63 узлов в цепочке, а к каждому узлу можно подключить до 16 устройств. Длина кабеля между двумя узлами не более 4,5 м, иначе информация может исказиться. К данной шине можно подключать все устройства, которые под-ключают к шине SCSI. Это позволяет объединять компьютер с бытовой элек-троникой. Есть две модели IEEE 1394 a и IEEE 1394 b.
В Windows’98 есть драйверы для портов этой шины, а в BIOS есть под-держка работы устройств этой шины.

0

3

9.3 (58)
Архитектура системы команд. Классификация процессоров (CISC и RISC)Как уже было отмечено, архитектура набора команд служит границей между аппаратурой и программным обеспечением и представляет ту часть системы, которая видна программисту или разработчику компиляторов.
Двумя основными архитектурами набора команд, используемыми компьютерной промышленностью на современном этапе развития вычислительной техники являются архитектуры CISC и RISC. Основоположником CISC-архитектуры можно считать компанию IBM с ее базовой архитектурой /360, ядро которой используется с1964 года и дошло до наших дней, например, в таких современных мейнфреймах как IBM ES/9000.

Лидером в разработке микропроцессоров c полным набором команд (CISC - Complete Instruction Set Computer) считается компания Intel со своей серией x86 и Pentium. Эта архитектура является практическим стандартом для рынка микрокомпьютеров. Для CISC-процессоров характерно: сравнительно небольшое число регистров общего назначения; большое количество машинных команд, некоторые из которых нагружены семантически аналогично операторам высокоуровневых языков программирования и выполняются за много тактов; большое количество методов адресации; большое количество форматов команд различной разрядности; преобладание двухадресного формата команд; наличие команд обработки типа регистр-память.

Основой архитектуры современных рабочих станций и серверов является архитектура компьютера с сокращенным набором команд (RISC - Reduced Instruction Set Computer). Зачатки этой архитектуры уходят своими корнями к компьютерам CDC6600, разработчики которых (Торнтон, Крэй и др.) осознали важность упрощения набора команд для построения быстрых вычислительных машин. Эту традицию упрощения архитектуры С. Крэй с успехом применил при создании широко известной серии суперкомпьютеров компании Cray Research. Однако окончательно понятие RISC в современном его понимании сформировалось на базе трех исследовательских проектов компьютеров: процессора 801 компании IBM, процессора RISC университета Беркли и процессора MIPS Стенфордского университета.

Разработка экспериментального проекта компании IBM началась еще в конце 70-х годов, но его результаты никогда не публиковались и компьютер на его основе в промышленных масштабах не изготавливался. В 1980 году Д.Паттерсон со своими коллегами из Беркли начали свой проект и изготовили две машины, которые получили названия RISC-I и RISC-II. Главными идеями этих машин было отделение медленной памяти от высокоскоростных регистров и использование регистровых окон. В 1981году Дж.Хеннесси со своими коллегами опубликовал описание стенфордской машины MIPS, основным аспектом разработки которой была эффективная реализация конвейерной обработки посредством тщательного планирования компилятором его загрузки.

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

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

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

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

Следует отметить, что в последних разработках компании Intel (имеется в виду Pentium P54C и процессор следующего поколения P6), а также ее последователей-конкурентов (AMD R5, Cyrix M1, NexGen Nx586 и др.) широко используются идеи, реализованные в RISC-микропроцессорах, так что многие различия между CISC и RISC стираются. Однако сложность архитектуры и системы команд x86 остается и является главным фактором, ограничивающим производительность процессоров на ее основе.

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

На рисунке на примере команды сложения (Add) приведены наиболее употребительные названия методов адресации, хотя при описании архитектуры в документации разные производители используют разные названия для этих методов. На этом рисунке знак "(" используется для обозначения оператора присваивания, а буква М обозначает память (Memory). Таким образом, M[R1] обозначает содержимое ячейки памяти, адрес которой определяется содержимым регистра R1.

Использование сложных методов адресации позволяет существенно сократить количество команд в программе, но при этом значительно увеличивается сложность аппаратуры. Возникает вопрос, а как часто эти методы адресации используются в реальных программах? На рис. 4.2 представлены результаты измерений частоты использования различных методов адресации на примере трех популярных программ (компилятора с языка Си GCC, текстового редактора TeX и САПР Spice), выполненных на компьютере VAX. Метод адресации Пример
команды Смысл команды
метода Использование 
Регистровая  Add R4,R3  R4(R4+R5 Требуемое значение в регистре 
Непосредственная или литеральная Add R4,#3 R4(R4+3  Для задания констант 
Базовая со смещением  Add R4,100(R1)  R4(R4+M[100+R1] Для обращения к
локальным переменным 
Косвенная регистровая  Add R4,(R1)  R4(R4+M[R1] Для обращения по указателю или вычисленному адресу 
Индексная Add R3,(R1+R2) R3(R3+M[R1+R2] Иногда полезна при работе с массивами: R1 - база, R3 - индекс 
Прямая или
абсолютная Add R1,(1000)  R1(R1+M[1000] Иногда полезна для обращения к статическим данным 
Косвенная  Add R1,@(R3) R1(R1+M[M[R3]] Если R3-адрес указателя p, то выбирается значение по этому указателю 
Автоинкрементная Add R1,(R2)+ R1(R1+M[R2]
R2(R2+d Полезна для прохода в цикле по массиву с шагом: R2 - начало массива
В каждом цикле R2 получает приращение d 
Автодекрементная Add R1,(R2)- R2(R2-d
R1(R1+M[R2] Аналогична предыдущей
Обе могут использоваться для реализации стека 
Базовая индексная со смещением и масштабированием Add R1,100(R2)[R3] R1(
R1+M[100]+R2+R3*d Для индексации массивов 

Рис. 4.1. Методы адресации

Рис. 4.2. Частота использования различных методов адресации на программах TeX, Spice, GCC

 

Из этого рисунка видно, что непосредственная адресация и базовая со смещением доминируют.

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

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

Важным вопросом построения любой системы команд является оптимальное кодирование команд. Оно определяется количеством регистров и применяемых методов адресации, а также сложностью аппаратуры, необходимой для декодирования. Именно поэтому в современных RISC-архитектурах используются достаточно простые методы адресации, позволяющие резко упростить декодирование команд. Более сложные и редко встречающиеся в реальных программах методы адресации реализуются с помощью дополнительных команд, что вообще говоря приводит к увеличению размера программного кода. Однако такое увеличение длины программы с лихвой окупается возможностью простого увеличения тактовой частоты RISC-процессоров. Этот процесс мы можем наблюдать сегодня, когда максимальные тактовые частоты практически всех RISC-процессоров (Alpha, R4400, Hyper SPARC и Power2) превышают тактовую частоту, достигнутую процессором Pentium.

Типы команд
Команды традиционного машинного уровня можно разделить на несколько типов, которые показаны на рис. 4.3. Тип операции Примеры 
Арифметические и логические Целочисленные арифметические и логические операции: сложение, вычитание, логическое сложение, логическое умножение и т.д. 
Пересылки данных Операции загрузки/записи 
Управление потоком команд Безусловные и условные переходы, вызовы процедур и возвраты 
Системные операции Системные вызовы, команды управления виртуальной памятью и т.д. 
Операции с плавающей точкой Операции сложения, вычитания, умножения и деления над вещественными числами 
Десятичные операции Десятичное сложение, умножение, преобразование форматов и т.д. 
Операции над строками  Пересылки, сравнения и поиск строк 

Рис. 4.3. Основные типы команд

 

Команды управления потоком команд
В английском языке для указания команд безусловного перехода, как правило, используется термин jump, а для команд условного перехода - термин branch, хотя разные поставщики необязательно придерживаются этой терминологии. Например компания Intel использует термин jump и для условных, и для безусловных переходов. Можно выделить четыре основных типа команд для управления потоком команд: условные переходы, безусловные переходы, вызовы процедур и возвраты из процедур.
Частота использования этих команд по статистике примерно следующая. В программах доминируют команды условного перехода. Среди указанных команд управления на разных программах частота их использования колеблется от 66 до 78%. Следующие по частоте использования - команды безусловного перехода (от 12 до 18%). Частота переходов на выполнение процедур и возврата из них составляет от 10 до 16%.

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

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

Одним из ключевых вопросов реализации команд перехода состоит в том, насколько далеко целевой адрес перехода находится от самой команды перехода? И на этот вопрос статистика использования команд дает ответ: в подавляющем большинстве случаев переход идет в пределах 3 - 7 команд относительно команды перехода, причем в 75% случаев выполняются переходы в направлении увеличения адреса, т.е. вперед по программе.

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

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

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

Одним из наиболее заметных свойств большинства программ является преобладание в них сравнений на условие равно/неравно и сравнений с нулем. Поэтому в ряде архитектур такие команды выделяются в отдельный поднабор, особенно при использовании команд типа "сравнить и перейти".

Говорят, что переход выполняется, если истинным является условие, которое проверяет команда условного перехода. В этом случае выполняется переход на адрес, заданный командой перехода. Поэтому все команды безусловного перехода всегда выполняемые. По статистике оказывается, что переходы назад по программе в большинстве случаев используются для организации циклов, причем примерно 60% из них составляют выполняемые переходы. В общем случае поведение команд условного перехода зависит от конкретной прикладной программы, однако иногда сказывается и зависимость от компилятора. Такие зависимости от компилятора возникают вследствие изменений потока управления, выполняемого оптимизирующими компиляторами для ускорения выполнения циклов.

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

Типы и размеры операндов
Имеется два альтернативных метода определения типа операнда. В первом из них тип операнда может задаваться кодом операции в команде. Это наиболее употребительный способ задания типа операнда. Второй метод предполагает указание типа операнда с помощью тега, который хранится вместе с данными и интерпретируется аппаратурой во время выполнения операций над данными. Этот метод использовался, например, в машинах фирмы Burroughs, но в настоящее время он практически не применяется и все современные процессоры пользуются первым методом.
Обычно тип операнда (например, целый, вещественный с одинарной точностью или символ) определяет и его размер. Однако часто процессоры работают с целыми числами длиною 8, 16, 32 или 64 бит. Как правило целые числа представляются в дополнительном коде. Для задания символов (1 байт = 8 бит) в машинах компании IBM используется код EBCDIC, но в машинах других производителей почти повсеместно применяется кодировка ASCII. Еще до сравнительно недавнего времени каждый производитель процессоров пользовался своим собственным представлением вещественных чисел (чисел с плавающей точкой). Однако за последние несколько лет ситуация изменилась. Большинство поставщиков процессоров в настоящее время для представления вещественных чисел с одинарной и двойной точностью придерживаются стандарта IEEE 754.

В некоторых процессорах используются двоично кодированные десятичные числа, которые представляются в в упакованном и неупакованном форматах. Упакованный формат предполагает, что для кодирования цифр 0-9 используются 4 разряда и что две десятичные цифры упаковываются в каждый байт. В неупакованном формате байт содержит одну десятичную цифру, которая обычно изображается в символьном коде ASCII.

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

0

4

9.1 (56)
Типы структур вычислительных
машин и систем
Достоинства и недостатки архитектуры вычислительных машин и систем изна-
чально зависят от способа соединения компонентов. При самом общем подходе
можно говорить о двух основных типах структур вычислительных машин и двух
типах структур вычислительных систем.
Структуры вычислительных машин .
В настоящее время примерно одинаковое распространение получили два способа
построения вычислительных машин: с непосредственными связями и на основе
шины. .
Типичным представителем первого способа может служить классическая фон-
неймановская ВМ (см. рис. 1.3). В ней между взаимодействующими устройствами
(процессор, память, устройство ввода/вывода) имеются непосредственные связи.
Особенности связей (число линий в шинах, пропускная способность и т. п.) опре-
деляются видом информации, характером и интенсивностью обмена. Достоинством
архитектуры с непосредственными связями можно считать возможность развязки
«узких мест» путем улучшения структуры и характеристик только определенных
связей, что экономически может быть наиболее выгодным решением. У фон-ней-
мановских ВМ таким «узким местом» является канал пересылки данных между
ЦП и памятью, и «развязать» его достаточно непросто [56]. Кроме того, ВМ с не-
посредственными связями плохо поддаются реконфигурации.
Типы структур вычислительных машин и систем 41
В варианте с общей шиной все устройства вычислительной, машины подключе-
ны к магистральной шине, служащей единственным трактом для потоков команд,
данных и управления (рис. 1.4). Наличие общей шины существенно упрощает реа-
лизацию ВМ, позволяет легко менять состав и конфигурацию машины. Благодаря
этим свойствам шинная архитектура получила широкое распространение в мини-
и микроЭВМ. Вместе с тем, именно с шиной связан и основной недостаток архи-
тектуры: в каждый момент передавать информацию по шине может только одно
устройство. Основную нагрузку на шину создают обмены между процессором и
памятью, связанные с извлечением из памяти команд и данных и записью в па-
мять результатов вычислений. На операции ввода/вывода остается лишь часть
пропускной способности шины. Практика показывает, что даже при достаточно
быстрой шине для 90% приложений этих остаточных ресурсов обычно не хватает,
особенно в случае ввода или вывода больших массивов данных.
В целом следует признать, что при сохранении фон-неймановской концепции
последовательного выполнения команд программы шинная архитектура в чистом
ее виде оказывается недостаточно эффективной. Более распространена архитек-
тура с иерархией шин, где помимо магистральной шины имеется еще несколько
дополнительных шин. Они могут обеспечивать непосредственную связь между
устройствами с наиболее интенсивным обменом, например процессором и кэш-
памятью. Другой вариант использования дополнительных шин — объединение
однотипных устройств ввода/вывода с последующим выходом с дополнительной
шины на магистральную. Все эти меры позволяют снизить нагрузку на общую шину
и более эффективно расходовать ее пропускную способность.
Структуры вычислительных систем
Понятие «вычислительная система» предполагает наличие множества процессо-
ров или законченных вычислительных машин, при объединении которых исполь-
зуется один из двух подходов.
В вычислительных системах с обшей памятью (рис. 1.5) имеется общая основ-
ная память, совместно используемая всеми процессорами системы. Связь процес-
42 Глава 1. Становление и эволюция цифровой вычислительной техники
соров с памятью обеспечивается с помощью коммуникационной сети, чаще всего
вырождающейся в общую шину. Таким образом, структура ВС с общей памятью
аналогична рассмотренной выше архитектуре с общей шиной, в силу чего ей свой-
ственны те же недостатки. Применительно к вычислительным системам данная
схема имеет дополнительное достоинство: обмен информацией между процессо-
рами не связан с дополнительными операциями и обеспечивается за счет доступа
к общим областям памяти.
Рис 1.5. Структура вычислительной системы с общей памятью
Альтернативный вариант организации — распределенная система, где общая
память вообще отсутствует, а каждый процессор обладает собственной локальной
памятью (рис. 1.6). Часто такие системы объединяют отдельные ВМ. Обмен ин-
формацией между составляющими системы обеспечивается с помощью коммуни-
кационной сети посредством обмена сообщениями.
Рис 1.6. Структура распределенной вычислительной системы
Подобное построение ВС снимает ограничения, свойственные для общей шины,
но приводит к дополнительным издержкам на пересылку сообщений между про-
цессорами или машинами.

0


Вы здесь » Форум МГОУ Прокопьевск » Московский Государственный Открытый Университет » Архитектура вычислительных систем