Э. Таненбаум - Архитектура компьютера (1127755), страница 156
Текст из файла (страница 156)
Аудноданные сжимаются по психоакустической модели, которая не менее сложна в части декомпрессии. Наконец, аудио- и видеоданные должны быть приведены в форму, подходящую для вывода сигнала в телевизорах системы МТЕРС, РА?. или 8ЕСАМ вЂ” в зависимости от страны, в которой используется ?)Ч?)-плеер. Естественно, программно решить все эти задачи в реальном времени на дешевом универсальном процессоре невозможно. Таким образом, нужен гетерогенный мультипроцессор с несколькими специализированными ядрами.
Логическая схема П Ч?)-плеера представлена на рис. 8.9. Ядра, изображенные на рис. 8.9, различаются по функциональной специализации; каждое из них спроектировано с расчетом на достижение максимального результата при минимально возможной цене. К примеру, сжатый видеосигнал для ?)Ч?) хранится в формате МРЕС-2 (это аббревиатура разработавшей данный формат организации МоЦоп Р?стоге ЕхрегО Стар — группа экспертов в области движущихся изображений).
При сжатии каждый кадр разделяется на несколько блоков и в отношении каждого из них выполняются сложные преобразования. Кадр может полностью состоять из измененных блоков или из блоков, присутствующих в предыдущем кадре с указанием смещения (Ах, Ау) от текущего положения и измеренных пикселов.
Программно подобные вычисления выполняются очень медленно, однако при наличии процессора декодирования МРЕС-2 этот процесс значительно ускоряется. Аналогичным образом, декодирование н повторное кодирование композитного аудио-видеосигнала в соответ- 616 Глава 8.
Параллельные компьютерные архитектуры ствии с одним из стандартных телевизионных стандартов эффективнее проводить с помощью специализированного аппаратного процессора. В этом контексте совершенно естественно, что в 1)Ъ'П-плеерах и им подобных устройствах применяются гетерогенные мультнпроцессоры с несколькими ядрами. В то же время, поскольку управляющий процессор представляет собой универсальное программируемое устройство, такую мультипроцессорную микросхему можно установить в близком в функциональном плане устройстве, например, в устройстве записи ?)Ъ'О. Процессор кодирования декодер композитнога видеосигнала звуковых НТВС/РАГ/ЗЕСАМ Декоде вфо Управляющий про Гетерогенный мультипроцессор с шестью ядрами Рис. 8.9.
Логическая схема простого СНС-плевре с гетерогенным мультипроцессором и несколькими специализированными ядрами для выполнения различных функций Гетерогенные мультипроцессоры также устанавливаются в моделях сотовых телефонов (С1)МА или СЯМ), укомплектованных фото- и видеокамерами, игровыми приложениями, браузерами, клиентами электронной почты, приемниками цифрового спутникового сигнала и средствами беспроводного подключения к Интернету (1ЕЕЕ 802.11, или Ъ'1Р1).
Сейчас не все телефоны оснащены этими функциями, но в будущем они, вероятно, распространятся повсеместно. По мере того, как в современных условиях устройства постоянно усложняются, часы становятся СРЯ-навигаторами, а солнечные очки — радиоприемниками, потребность в гетерогенных мультипроцессорах только растет. Довольно скоро обычным явлением станут микросхемы из 500 миллионов транзисторов.
Проектировать столь громоздкие устройства в цельном варианте очень сложно — к моменту завершения работ они имеют все шансы устареть. Значительно разумнее разместить несколько ядер (которые, фактически, представляют собой библиотеки) с относительно большим числом транзисторов на одной микросхеме и объединить их. При этом разработчики должны принять решение о том, какой процессор будет управляющим, а какие — специализированными. Увеличение нагрузки на программную часть управляющего процессора замедляет работу системы, но удешевляет и уменьшает размер микросхемы. Наличие нескольких специализированных процессоров для обработки звуковых и видеоданных требует увеличения площади микросхемы и повышает ее стоимостгь но, с другой стороны, обеспечивает высокую производительность при йнутрипроцессорный параллелизм 617 относительно низкой тактовой частоте, в связи с чем снижаются энергопотребление и теплоотдача.
Иными словами, проектируя мультипроцессоры с несколькими ядрами, разработчики думают не о том, где разместить дополнительные транзисторы, а о том, каким образом и в каких вопросах можно идти на компромисс. Программы обработки звуковых и видеоданных работают с огромными объемами информации. Поскольку все эти данные требуется обрабатывать быстро, от 50 до 75 % площади микросхемы отводится под размещение того или иного типа памяти. В этой связи возникают многочисленные вопросы.
Сколько уровней кэш-памяти нужно в том или ином случае? Какими должны быть модули кэш-памяти, раздельными или объединенными? Каким должен быть объем каждого модуля? Насколько быстро он должны работать? Нужно ли размещать на микросхеме модули памяти других видов? Каких именно: ЖАМ или, может быть, ЯЖАМ? От ответов на зги вопросы во многом зависит производительность, энергопотребление и параметры тепловыделения микросхемы. Помимо процессоров и памяти, необходимо разработать схему взаимодействия ядер друг с другом. В небольших системах для этой цели вполне подойдет единственная шина, однако в более крупных системах такое решение может привести к тому, что схема взаимодействия ядер окажется узким местом всей системы.
Во многих случаях проблема решается установкой нескольких шин или организацией кольцевой топологии. В последнем случае арбитраж осуществляется путем отправки по кольцу небольшого пакета — так называемого маркера, или токена (гойеп). Перед передачей данных ядро должно удержать полученный токен. Завершив передачу, ядро пускает токен далее по кругу. Таким образом, исключаются конфликты при передаче данных. В качестве примера механизма взаимодействия ядер на микросхеме рассмотрим архитектуру СогеСоппес1 компании 1ВМ (рис.
8.10). Она предназначена для объединения ядер в однокристальных гетерогенных мультипроцессорах. Для однокристальных мультипроцессоров СогеСоппесэ выполняет примерно ту же роль, что и шина РС1 для Репгшщ. С другой стороны, в отличие от РС1, архитектура СогеСоппесг разрабатывалась без расчета на обратную совместимость с устаревшими аппаратными компонентами и протоколами и без оглядки на ограничения, связанные с передачей данных на уровне плат, в частности, с количеством выводов на торцевых соединителях. Архитектура СогеСоппесг состоит из трех шин.
Шина процессора представляет собой высокоскоростную синхронную конвейериаированную шину с 32, 64 или 128 информационными линиями, работающими на тактовой частоте 66, 133 или 183 МГц. Ее максимальная пропускная способность равна 23,4 Гбит/с (для сравнения, у шины РС1 этот показатель составляет 4,2 Гбит/с). Конвейеризация позволяет ядрам запрашивать шину в процессе передачи данных. Кроме того, как и в шине РС1, ядра могут одновременно передавать данные по разным линиям. Шина процессора оптимизирована для передачи коротких блоков данных и призвана обеспечивать взаимодействие между быстрыми ядрами — процессорами, декодерами МРЕО-2, высокоскоростными сетями и тому подобными устройствами.
818 Глава В. Параллельные компьютерные архитектуры Рис. 8.10. Архитектура СогеСоппеоГ компании!ВМ Поскольку одной шины процессора на всю микросхему недостаточно, для передачи данных между низкоскоростными устройствами ввода-вывода (1)АКТ, таймерами, 1)ЯВ-контроллерами, последовательными устройствами ввода-вывода и т. д.) предусмотрена вторая, периферийная, шина.
Она упрощает взаимодействие между 8-, 16- и 32-разрядными периферийными устройствами, используя для этой цели всего несколько сотен вентилей. Периферийная шина также является синхронной, а ее максимальная пропускная способность достигает 300 Мбитггс. Эти две шины соединяются с помощью моста, напоминающего мосты, которыми до недавнего времени соединялись шины РС1 и 1БА, пока некоторое время назад шина 1ЯА не была вытеснена окончательно. В архитектуре СогеСоппесг есть также шина регистров устройств. Это крайне медленная асинхронная шина квитирования, позволяющая процессорам обращаться к регистрам периферийных устройств с целью управления этими устройствами. Передачи по ней проводятся нерегулярно, по несколько байтов. Сочетание стандартной шины на микросхеме, интерфейса и подобающей инфраструктуры позволяет рассматривать СогеСоппесг как миниатюрную версию архитектуры РС1, для которой в перспективе можно наладить производство совместимых процессоров и контроллеров.
Разница лишь в том, что в мире РС1 производители разрабатывают и продают платы продавцам и конечным пользователям. В случае с СогеСоппесг разработчики ядер предоставляют лицензии на их производство изготовителям бытовой электроники и другим компаниям, которые затем разрабатывают гетерогенные мультипроцессоры на основе собственных и лицензированных ядер. Поскольку для производства больших и сложных микросхем требуются масштабные инвестиции в производственные мощности, в большинстве случаев изготовители бытовой электроники готовят проекты в расчете на заказ микросхем в специализированных компаниях.