Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Процессоры со сверхдлинным командным словом




Суперскалярные процессоры со сверхдлинным командным словом-

VLIW (Very Long Instruction Word) в процессе работы выявляют параллелизм команд во время трансляции. Транслятор, анализируя программу, выделяет операции, которые можно выполнять параллельно, и строит из них «большие» команды. Как только «большая» команда поступает на выполнение, обычные команды из нее выполняются параллельно. Такая реализация ведет к ряду недостатков (нет совместимости на уровне бинарных файлов, необходим канал с большой разрядностью, увеличивается исполняемый код).

Архитектура VLIW – одна из реализаций внутреннего параллелизма в микропроцессорах. Быстродействие можно повышать за счет увеличения тактовой частоты или за счет количества операций, выполняемых за один такт. Первый способ можно реализовать при использовании «быстрых» технологий (использовать вместо кремния арсенид галлия) и глубокой конвейеризации (задействовать все логические элементы кристалла). Чтобы реализовать второй способ, необходимо разместить на одном чипе несколько функциональных модулей и обеспечить надежность при параллельном исполнении инструкций.

Говоря о надежности, имеется ввиду правильность результата. Если необходимо выполнить следующие действия А=В+С, В=Е+Н. Очевидно что результат первого выражения зависит от результата второго. При планировании порядка вычислений необходимо учитывать такие нюансы. Если не будет подобного контроля, то получить верный результат вычисления можно лишь с какой-то вероятностью.

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

Примечание. Фирма Intel решила эту проблему на аппаратном уровне. Но размеры планировщика вычислений растут по мере увеличения количества функциональных модулей. На данном этапе развития техники, число обрабатываемых за цикл операций для суперскалярных машин составляет 5-6.

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

Предложение среди разработчиков программного обеспечения настолько велико, что большинство производителей отказываются от «чистого VLIW».




Поделиться с друзьями:


Дата добавления: 2014-12-07; Просмотров: 998; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.