Тенденции развития микропроцессоров
По прогнозам аналитиков, к 2012 году число транзисторов в микропроцессоре достигнет 1 млрд., тактовая частота возрастет до 10 ГГц, а производительность достигнет 100 млрд.оп/с.
Рассмотрим основные направления развитие микропроцессоров.
1. Повышение тактовой частоты.
Для повышения тактовой частоты при выбранных материалах используются: более совершенный технологический процесс с меньшими проектными нормами; увеличение числа слоев металлизации; более совершенная схемотехника меньшей каскадности и с более совершенными транзисторами, а также более плотная компоновка функциональных блоков кристалла.
Так, все производители микропроцессоров перешли на технологию КМОП, хотя Intel, например, использовала БиКМОП для первых представителей семейства Pentium. Известно, что биполярные схемы и КМОП на высоких частотах имеют примерно одинаковые показатели тепловыделения, но КМОП-схемы более технологичны, что и определило их преобладание в микропроцессорах.
Уменьшение размеров транзисторов, сопровождаемое снижением напряжения питания с 5 В до 2,5-3 В и ниже, увеличивает быстродействие и уменьшает выделяемую тепловую энергию. Все производители микропроцессоров перешли с проектных норм 0,35-0,25 мкм на 0,18 мкм и 0,12 мкм и стремятся использовать уникальную 0,07 мкм технологию (табл.17.1).
Таблица 17.1. | ||||||
Год производства | ||||||
DRAM, нм | ||||||
МП, нм | ||||||
Uпит, В | 0,9 | 0,9 | 0,7 | 0,6 | 0,5 | 0,4 |
Р, Вт |
При минимальном размере деталей внутренней структуры интегральных схем 0,1-0,2 мкм достигается оптимум, ниже которого все характеристики транзистора быстро ухудшаются. Практически все свойства твердого тела, включая его электропроводность, резко изменяются и "сопротивляются" дальнейшей миниатюризации, возрастание сопротивления связей происходит экспоненциально. Потери даже на кратчайших линиях внутренних соединений такого размера "съедают" до 90% сигнала по уровню и мощности.
При этом начинают проявляться эффекты квантовой связи, в результате чего твердотельное устройство становится системой, действие которой основано на коллективных электронных процессах. Проектная норма 0,05-0,1 мкм (50-100 нм) - это нижний предел твердотельной микроэлектроники, основанной на классических принципах синтеза схем.
Уменьшение длины межсоединений актуально для повышения тактовой частоты работы, так как существенную долю длительности такта занимает время прохождения сигналов по проводникам внутри кристалла. Например, в Alpha 21264 предприняты специальные меры по кластеризации обработки, призванные локализовать взаимодействующие элементы микропроцессора.
Проблема уменьшения длины межсоединений на кристалле при использовании традиционных технологий решается путем увеличения числа слоев металлизации. Так, Cyrix при сохранении 0,6 мкм КМОП технологии за счет увеличения с 3 до 5 слоев металлизации сократила размер кристалла на 40% и уменьшила выделяемую мощность, исключив существовавший ранее перегрев кристаллов.
Одним из шагов в направлении уменьшения числа слоев металлизации и уменьшения длины межсоединений стала технология, использующая медные проводники для межсоединений внутри кристалла, разработанная фирмой IBM и используемая в настоящее время и другими фирмами-изготовителями СБИС.
Впервые рубеж тактовой частоты в 500 МГц перешагнули микропроцессоры фирмы DEC, которая уже в конце 1996 г. поставляла Alpha 21164 с тактовой частотой 500 МГц, в 1997 г. - Alpha 21264 с тактовой частотой 600 МГц, а в 1998 г. - Alpha 21264 с тактовой частотой 750 МГц и выше. В настоящее время ряд фирм выпускает процессоры для персональных компьютеров с тактовой частотой свыше 4 ГГц.
2. Увеличение объема и пропускной способности подсистемы памяти.
Возможные решения по увеличению пропускной способности подсистемы памяти включают создание кэш-памяти одного или нескольких уровней, а также увеличение пропускной способности интерфейсов между процессором и кэш-памятью и конфликтующей с этим увеличением пропускной способности между процессором и основной памятью. Совершенствование интерфейсов реализуется как увеличением пропускной способности шин (путем увеличения частоты работы шины и/или ее ширины), так и введением дополнительных шин, расшивающих конфликты между процессором, кэш-памятью и основной памятью. В последнем случае одна шина работает на частоте процессора с кэш-памятью, а вторая - на частоте работы основной памяти. При этом частоты работы второй шины, например, равны 66, 66, 166 МГц для микропроцессоров Pentium Pro-200, Power PC 604E-225, Alpha 21164-500, работающих на тактовых частотах 300, 225, 500 МГц, соответственно. При ширине шин 64, 64, 128 разрядов это обеспечивает пропускную способность интерфейса с основной памятью 512, 512, 2560 Мбайт/с, соответственно.
Общая тенденция увеличения размеров кэш-памяти реализуется по-разному:
- внешние кэш-памяти данных и команд с двухтактовым временем доступа объемом от 256 Кбайт до 2 Мбайт со временем доступа 2 такта в HP PA-8000;
- отдельный кристалл кэш-памяти второго уровня, размещенный в одном корпусе в Pentium Pro;
- размещение отдельных кэш-памяти команд и кэш-памяти данных первого уровня объемом по 8 Кбайт и общей для команд и данных кэш-памяти второго уровня объемом 96 Кбайт в Alpha 21164.
Наиболее используемое решение состоит в размещении на кристалле отдельных кэш-памятей первого уровня для данных и команд с возможным созданием внекристальной кэш-памяти второго уровня. Например, в Pentium II использованы внутрикристальные кэш-памяти первого уровня для команд и данных по 16 Кбайт каждая, работающие на тактовой частоте процессора, и внекристальный кэш второго уровня, работающий на половинной тактовой частоте.
3. Увеличение количества параллельно работающих исполнительных устройств.
Каждое семейство микропроцессоров демонстрирует в следующем поколении увеличение числа функциональных исполнительных устройств и улучшение их характеристик, как временных (сокращение числа ступеней конвейера и уменьшение длительности каждой ступени), так и функциональных (введение ММХ-расширений системы команд и т.д.).
В настоящее время процессоры могут выполнять до 6 операций за такт. Однако число операций с плавающей точкой в такте ограничено двумя для R10000 и Alpha 21164, а 4 операции за такт делает HP PA-8500.
Для того чтобы загрузить функциональные исполнительные устройства, используются переименование регистров и предсказание переходов, устраняющие зависимости между командами по данным и управлению, буферы динамической переадресации.
Широко используются архитектуры с длинным командным словом - VLIW. Так, архитектура IA-64, развиваемая Intel и HP, использует объединение нескольких инструкций в одной команде (EPIC). Это позволяет упростить процессор и ускорить выполнение команд. Процессоры с архитектурой IA-64 могут адресоваться к 4 Гбайтам памяти и работать с 64-разрядными данными. Архитектура IA-64 используется в микропроцессоре Merced, обеспечивая производительность до 6 Гфлоп при операциях с одинарной точностью и до 3 Гфлоп - с повышенной точностью на частоте 1ГГц.
4. Системы на одном кристалле и новые технологии.
В настоящее время получили широкое развитие системы, выполненные на одном кристалле - SOC (System On Chip). Сфера применения SOC - от игровых приставок до телекоммуникаций. Такие кристаллы требуют применения новейших технологий.
Основной технологический прорыв в области SOC удалось сделать корпорации IBM, которая в 1999 году смогла реализовать сравнительно недорогой процесс объединения на одном кристалле логической части микропроцессора и оперативной памяти. В новой технологии, в частности, используется так называемая конструкция памяти с врезанными ячейками (trench cell). В этом случае конденсатор, хранящий заряд, помещается в некое углубление в кремниевом кристалле. Это позволяет разместить на нем свыше 24 тыс. элементов, что почти в 8 раз больше, чем на обычном микропроцессоре, и в 2-4 раза больше, чем в микросхемах памяти для ПК. Следует отметить, что хотя кристаллы, объединяющие логические схемы и память на одном кристалле, выпускались и ранее, например, такими фирмами, как Toshiba, Siemens AG и Mitsubishi, подход, предложенный IBM, выгодно отличается по стоимости. Причем ее снижение никоим образом не сказывается на производительности.
Использование новой технологии открывает широкую перспективу для создания более мощных и миниатюрных микропроцессоров и помогает создавать компактные, быстродействующие и недорогие электронные устройства: маршрутизаторы, компьютеры, контроллеры жестких дисков, сотовые телефоны, игровые и Интернет-приставки.
Для создания SOC IBM использует самые современные технологические решения, одним из которых являются медные межсоединения (copper interconnect). Первым микропроцессором IBM с медными межсоединениями в 1998 г. стал PowerPC 750. По сравнению с технологией, где межсоединения выполнены на основе алюминия, медь позволяет сделать кристалл меньшим по размеру и более быстродействующим. Медная металлизация уменьшает общее сопротивление, что позволяет увеличить скорость работы кристалла на 15-20%. Обычно эта технология дополняется еще одной новинкой: технологией кремний на изоляторе - КНИ (SOI, Silicon On Insulator). Она уменьшает паразитные емкости, возникающие между элементами микросхемы и подложкой. Благодаря этому тактовую частоту работы транзисторов также можно увеличить. Возрастание скорости от использования КНИ приближается к 20-30%. Таким образом, общий рост производительности в идеальном случае может достигнуть 50%.
Нанотехнологии
Нанотехнологии - это технологии, оперирующие величинами порядка нанометра. Это технологии манипуляции отдельными атомами и молекулами, в результате которых создаются структуры сложных спецификаций. Слово "нано" (в древнегреческом языке "nano" - "карлик") означает миллиардную часть единицы измерения и является синонимом бесконечно малой величины, в сотни раз меньшей длины волны видимого света и сопоставимой с размерами атомов. Поэтому переход от "микро" к "нано" - это уже не количественный, а качественный переход: скачок от манипуляции веществом к манипуляции отдельными атомами. Мир таких бесконечно малых величин намного меньше, чем мир сегодняшних микрокристаллов и микротранзисторов.
Основа нанофизики и нанотехнологии создана именно в нашей стране. Теоретические и первые экспериментальные работы в этой области были сделаны выдающимся российским ученым и изобретателем профессором П.К. Ощепковым (1908-1992). В его работах - обоснование физики ультратонких или, как сейчас говорят, наноструктур.
Российский ученый впервые теоретически обосновал положение о том, что переход на уровень нано означает не только количественный, но и качественный переход в новое состояние материи. Кроме того, Ощепков впервые высказал основные положения современной нанотехнологии об использовании волновых свойств электронов и их способности к туннелированию на наноструктурах для создания принципиально новых энергетических устройств.
Сейчас работы в области нанотехнологий ведутся в четырех основных направлениях:
- молекулярная электроника;
- биохимические и органические решения;
- квазимеханические решения на основе нанотрубок;
- квантовые компьютеры.
На долю США ныне приходится примерно треть всех мировых инвестиций в нанотехнологии (Европейский Союз - примерно 15%, Япония - 20%). Исследования в этой сфере активно ведутся также в странах бывшего СССР, Австралии, Канаде, Китае, Южной Корее, Израиле, Сингапуре и Тайване. Если в 2000 году суммарные затраты стран мира на подобные исследования составили примерно 800 млн.долларов, то в 2001 году они увеличились вдвое. По мнению экспертов, чтобы нанотехнологии стали реальностью, ежегодно необходимо тратить не менее 1 трлн.долларов.
В последнее время резко увеличилось количество публикаций о новых достижениях в области нанотехнологий. Самые свежие новости можно найти, например, на сайте http://www.nanonewsnet.com/. Ниже мы рассмотрим некоторые из них.
Наиболее значимые практические результаты достигнуты в области молекулярной электроники. Она логически близка к традиционной полупроводниковой электронике. Методами молекулярной электроники из углеводородных соединений удается получить аналоги диодов и транзисторов, а следовательно, и основные булевы модули И, ИЛИ и НЕ, из которых затем можно строить схемы любой сложности. Подобный подход позволяет сохранить преемственность архитектурных решений.
В 1999 году сотрудники компании Hewlett-Packard и Калифорнийского университета в Лос-Анджелесе (UCLA) смогли получить действующий молекулярный вентиль. Его толщина составляет всего одну молекулу. Первоначально он умел либо только открываться, либо только закрываться.
Исследователи из Йельского университета смогли продвинуться дальше: их вентиль может принимать любое из двух положений, что позволяет произвольно записывать в него 0 или 1. Обе группы работают над объединением вентилей в регистры.
По мнению аналитиков, предел миниатюризации для традиционной кремниевой электроники наступит через 10-15 лет, а число транзисторов в более сложных устройствах вроде электрических схем неуклонно растет.
Ученые из лаборатории Lucent Technologies Bell Labs сообщили о создании транзистора, который в миллион раз меньше крупицы песка.
Это событие может стать ключевым моментом в создании миниатюрных компьютерных микросхем с малым потреблением энергии. Транзисторы являются "мозгом" компьютеров и любых других электронных устройств. Используя органическую молекулу и химические внутренние процессы, исследователи уменьшили размер транзистора до 1-2 нанометров (миллиардной части метра), чего еще никому не удавалось.
При создании транзисторов использовалась техника "самосборки", когда молекулы фактически сами присоединяются одна к другой с помощью электродов, сделанных из золота. Это позволило уменьшить размер канала до 1-2 нм, причем использованная методика относительно недорога и позволяет увеличить плотность транзисторов на единицу площади. Хотя пока получен только экспериментальный образец, исследователи настроены весьма оптимистично и считают, что вскоре станет возможным строить микропроцессоры и микросхемы памяти из транзисторов размером с молекулу.
Ученые компании Philips разработали нанотранзистор, использующий эффект сверхпроводимости. Новые транзисторы состоят из арсенида индия и алюминиевых сверхпроводящих контактов, а заряд переносится не электронами, а куперовскими парами. Последние представляют собой спаренные электроны с противоположно направленными спинами. Как и в случае с обычными полевыми транзисторами, в новых элементах ток в канале между стоком и истоком регулируется напряжением на затворе. Известно, что эффекта сверхпроводимости можно достичь при очень низких температурах. При какой температуре элементы новых транзисторов проявляют сверхпроводящие свойства, разработчики не сообщают.
Арсенид-индиевые полупроводники размерами от 10 до 100 нм ученые получили с помощью сложного процесса выпаривания. По заявлению Philips, новые транзисторы не только могут стать основой для сверхпроводящих электронных наноцепей нового поколения, но и позволят более основательно изучить явление квантового переноса. Подробно свои исследования ученые собираются представить в одном из выпусков журнала Science.
О крупном достижении, "открытии, представляющем новое мышление в наноэлектронике" сообщили исследователи из двух американских университетов - Калифорнии в
Сан-Диего (UCSD) и Клемсона (Clemson University). Им впервые удалось сделать транзистор полностью из углеродных нанотрубок, разветвленных в форме буквы "Y" (рис. 17.1). Размер нанотранзистора - несколько сотен микрон, что примерно в 100 раз меньше компонентов, используемых в сегодняшних микропроцессорах.
Рис. 17.1. Нанотранзистор на углеродных нанотрубках (Изображение из журнала New Scientist)
В компании Hewlett Packard утверждают, что разработали методику изготовления микросхем, которая позволит продлить действие закона Мура по крайней мере на 50 лет.
По словам ученых, технология теоретически позволит создавать сверхбыстродействующие микросхемы для компьютеров следующего поколения. Другим достоинством методики является относительно низкая себестоимость производства чипов, для изготовления которых предполагается применять систему, напоминающую струйную печать.
Патент на предложенную технологию был получен компанией Hewlett-Packard еще в 2003 году, однако доказать жизнеспособность методики исследователям удалось значительно позже. Планируется, что первые гибридные микросхемы, содержащие и транзисторы, и "нанозащелки", появятся на рынке в первой половине следующего десятилетия. Изготавливаться такие чипы будут, предположительно, по 32-нанометровой технологии. Коммерциализация новой методики намечена на 2020-е гг.
Суть новой технологии состоит в следующем. Вместо транзисторов исследователи НР предлагают использовать так называемые "защелки", состоящие из трех нанопроводников и двух молекулярных переключателей. Два из этих проводников расположены параллельно друг другу и размещены над третьим под прямым углом (рис. 17.2). Молекулярные переключатели служат для соединения нанопроводников друг с другом. Причем переключатели всегда находятся в различных состояниях: один из них открыт, а другой - закрыт, или наоборот. Эти комбинации и соответствуют логическим 0 и 1.
Рис. 17.2. Нанопереключатели для микросхем следующего поколения
Успехи нанотехнологий можно отметить в области хранения данных. Так, фирма IBM создала прототип устройства памяти "многоножка" (Millipede), первое наноустройство хранения данных. Компания ожидает, что эта переломная технология завоюет рынок к 2006 или 2007 году. Новинка состоит из записывающей матрицы манипуляторов, которая включает в себя 4096 кантилеверов, выполненных как устройства чтения-записи (подобные кантилеверы используются сейчас в электронных и атомно-силовых микроскопах). Правда, у прототипа пока вчетверо меньше кантилеверов, но это не мешает сделать вывод о благоприятных рыночных перспективах продукта.
Теоретически квадратный чип с длиной стороны 2,4 см может хранить до 125 Гб данных, что эквивалентно емкости 25 дисков формата DVD.
Разрабатывается магнитная flash-память на основе углеродных нанотрубок. Ее архитектура довольно проста: каждая ячейка памяти состоит из двух пересекающихся нанотрубок, содержащихся внутри примеси железа или помещенных в ферромагнитное окружение (рис. 17.3). В нанопамяти роль слоев будут играть пересекающиеся нанотрубки, магнитную ориентацию которых можно менять с помощью электрических импульсов различной полярности. А считывать логическое состояние "1" или "0" будут более слабые электрические сигналы определенной полярности. Таким образом, если магнитная ориентация нанотрубок установлена противоположно посылаемому импульсу считывания, то по низкой величине тока импульса будет определяться значение "0". И наоборот - если магнитная ориентация нанотрубок совпадает с направлением электронов в импульсе, то амплитуда тока импульса будет соответствовать логической "1". Полученная память будет энергонезависимой.
Рис. 17.3. Матрица ячеек памяти из нанотрубок
Фирма Motorola продемонстрировала действующий прототип нового цветного дисплея, в котором используется множество микроскопических нитей, называемых углеродными нанотрубками (рис. 17.4). Прототип дисплея имеет размер 4,7 дюйма по диагонали и дает оптическое разрешение в 128х96 пикселей. Он должен стать элементом 42-дюймо-вого телевизионного экрана высокой четкости изображения с разрешением 1280х720 пикселей. В качестве источника электронов используются углеродные нанотрубки.
Рис. 17.4. Принцип действия дисплея NCD
Фотоника
Фотоника - это технология излучения, передачи, регистрации света при помощи волоконной оптики и оптоэлектроники.
Довольно давно уже известна оптимальная среда для передачи огромных массивов данных - это свет, бегущий по волоконно-оптическим кабелям. А все компьютерные транзисторы работают с электрическим током, текущим по медным проводам. Исследователям лабораторий Intel удалось органически совместить кремний со светом - так родилась кремниевая фотоника.
16.февраля 2004 г. впервые было продемонстрировано устройство, передающее информацию по волоконно-оптическому кабелю со скоростью 1 Гбит в секунду!
Луч света, идущий по оптическому волокну, расщепляется на два луча, затем один из лучей проходит через специальное устройство, в котором световые колебания могут сдвигаться по фазе. После сложения лучей наблюдается интерференция. Наличие света считают "1", а его отсутствие - "0".
До сих пор существовали быстрые модуляторы (устройства, преобразующие свет в последовательность битов информации), но они были очень дорогими, сложными в производстве и делались с использованием экзотических материалов (таких как арсенид галлия или фосфид индия). Самые быстрые кремниевые модуляторы работали на скоростях около 20 МГц. Кремниевый модулятор Intel работает со скоростью более 1 ГГц, исследователи надеются повысить эту скорость еще раз в 10!
У кремниевой фотоники есть масса преимуществ. Прежде всего, это то, что по оптическому волокну можно передавать тысячи потоков сигналов на разных длинах световых волн, тогда как по медному проводу может идти лишь один ток. Теоретический предел для такой передачи близок к 100 триллионам бит в секунду - этого достаточно, чтобы передать по одному волокну (в 30 раз тоньше человеческого волоса) телефонные переговоры всех жителей Земли одновременно.
Микропроцессорная технология потенциально имеет много назначений: создание персональных электронных партнеров, интеллектуализация (в известном смысле "оживление") всей техносферы, усиление и защита функций организма с помощью персональных медико-кибернетических устройств, в том числе вживляемых в организм
В результате эволюции электронной технологии от "микро" к "нано" и ее слияния с "генной", вероятно, будет достигнуто состояние, при котором станет возможным синтез в массовых количествах любых технических устройств. Однако основная цель будущей нанотехнологии, по всей вероятности, - создание структур, способных к эволюции и саморазвитию.
Вопросы для самоконтроля
- Сформулируйте основные тенденции развития микропроцессоров.
- За счет каких факторов достигают повышения тактовой частоты МП?
- Какие архитектурные особенности приводят к улучшению характеристик МП?
- Что такое нанотехнологии? В каких направлениях они развиваются?
- Приведите примеры использования нанотехнологий.
- Что такое фотоника? Расскажите о ее достижениях.
ПЭВМ,рабочие станции и серверы:
В этой лекции речь идет об особенностях VLIW-архитектуры, IA-64 и EPIC, разъясняются архитектурные решения Е2К, реализованные в суперкомпьютере Эльбрус 3, приводятся сравнительные характеристики E2K и Alpha 21264.
Цель: познакомить учащихся с характерными чертами современных архитектур вычислительных систем: VLIW, IA-64 и EPIC; сформировать умения анализировать архитектуру вычислительной системы и выделять ее особенности.
VLIW архитектура
Предложенные в IA-64 архитектурные идеи близки к концепции VLIW (Very Large Instruction Word - сверхбольшое командное слово).
VLIW - это набор команд, реализующий горизонтальный микрокод. Несколько (4-8) простых команд упаковываются компилятором в длинное слово. Такое слово соответствует набору функциональных устройств. VLIW-архитектуру можно рассматривать как статическую суперскалярную архитектуру, поскольку распараллеливание кода производится на этапе компиляции, а не динамически во время исполнения. То есть в машинном коде VLIW присутствует явный параллелизм.
Хотя идеи VLIW сформулированы уже давно, до настоящего времени они были известны в основном специалистам в области компьютерных архитектур. Имеющиеся реализации, например, VLIW Multiflow, не получили широкого распространения. Пожалуй, единственными популярными процессорами, архитектура которых близка к VLIW, была линия AP-120B/FPS-164/FPS-264 компании Floating Point Systems. Эти процессоры в 1980-е годы активно применялись при проведении научно-технических расчетов.
Команда в этих системах содержала ряд полей, каждое из которых управляло работой отдельного блока процессора, так что все командное слово определяло поведение всех блоков процессора. Однако длина команды в FPS-х64 была равна всего 64 разрядам, что по современным меркам никак нельзя отнести к сверхбольшим.
Выделение в архитектуре VLIW компонентов командного слова, управляющих отдельными блоками МП, вводит явный параллелизм на уровне команд. Задача обеспечения эффективного распараллеливания работы отдельных блоков возлагается при этом на компилятор, который должен сгенерировать машинные команды, содержащие явные указания на одновременное исполнение операций в разных блоках. Таким образом, достижение параллелизма, обеспечиваемое в современных суперскалярных RISC-процессоров их аппаратурой, в VLIW возлагается на компилятор. Очевидно, что это вызывает сложные проблемы разработки соответствующих компиляторов. При этом распараллеливание работы между ФУ в EPIC происходит статически при компиляции, в то время как современные суперскалярные RISC-процессоры осуществляют это динамически.
Архитектура IA-64
В IA-64 два нововведения по сравнению с RISC-процессорами:
- Применение технологии явного параллелизма на уровне команд (EPIC - Explicitly Parallel Instruction Computing).
- Применение предикатных вычислений. Предикаты - способ обработки ветвлений (условных переходов).
В сочетании с новым уровнем спекулятивных вычислений это значительно уменьшает количество условных переходов и, соответственно, ошибочных предсказаний направления переходов. В свою очередь, применение EPIC однозначно диктует появление в архитектуре большого числа ФУ и сверхбольших файлов регистров.
Особенности EPIC:
- Большое количество регистров.
- Масштабируемость архитектуры до большого количества функциональных устройств. Это свойство представители фирмы Intel и HP называют "наследственно масштабируемый набор команд".
- Явный параллелизм в машинном коде. Поиск зависимостей между командами производит не процессор, а компилятор.
- Предикация. Команды из разных ветвей условного ветвления снабжаются предикатными полями (полями условий) и запускаются параллельно.
- Загрузка по предположению. Данные из медленной основной памяти загружаются заранее.
Описание IA-64
- Регистры IA-64:
- 128 64-разрядных регистров общего назначения;
- 128 80-разрядных регистров вещественной арифметики;
- 64 1-разрядных предикатных регистров.
- Формат команды IA-64:
- идентификатор команды;
- три 7-разрядных поля операндов - 1 приемник и 2 источника;
- особые поля для вещественной и целой арифметики;
- 6-разрядное предикатное поле (64=2^6).
- Предикация.
- Загрузка по предположению.
Архитектура Е2К
Подход, близкий к IA-64, уже был реализован в России - в произведенном в единственном экземпляре суперкомпьютере Эльбрус-3, выпущенном в 1991 году.
В E2K используются команды переменной длины. Общий формат команд E2K представлен в таблице 12.1.
Таблица 12.1. Общий формат команд E2K | |||
Заголовок | Слог 1 | ... | Слог N |
Команда E2K состоит из слогов длиной 32 разряда каждый. Число этих слогов может меняться от 2 до 16, причем данную архитектуру можно еще расширить - до 32 слогов.
Любая команда всегда включает 1 слог заголовка и еще от 1 до 15 слогов, указывающих на операции, которые могут выполняться параллельно. Слог заголовка содержит информацию о структуре команды и ее длине, что облегчает дешифрацию команды переменной длины. Применение заголовка позволяет не проводить предварительного декодирования команд перед их помещением в кэш команд.
В архитектуре E2K представлен сверхбольшой файл регистров. Все регистры E2K являются универсальными и могут содержать как целочисленные данные, так и числа с плавающей запятой. Всего имеется 256 регистров длиной по 64 разряда каждый.
В E2K есть два почти симметричных кластера, каждый из которых содержит по 256 регистров. Всего в этом процессоре имеется 30 регистровых портов: 20 портов чтения (по 10 портов на кластер) и 10 портов записи.
В Alpha 21264 применяется реализованное во многих суперскалярных процессорах динамическое переименование регистров. Этого механизма в E2K нет, так как в нем подобные задачи возлагаются на компилятор. Однако в циклах с постоянным шагом используется аналогичная схема циклической замены используемых регистров.
Еще одна особенность E2K - регистровое окно для процедуры. Это решение стало традиционным для машин серии "Эльбрус", однако особенно важным оно является для E2K, поскольку он содержит сверхбольшое количество регистров - 256.
Затраты на сохранение/восстановление регистров в данной ситуации становятся весьма значительными. Поэтому реализация в E2K аппаратного механизма переключения окон представляется актуальной. Окно регистров в E2K имеет переменную длину (до 192 регистров). Адресация регистров внутри контекста происходит относительно текущей базы, и при вызове другой процедуры достаточно сменить значение базы.
Кэш данных первого уровня в E2K имеет емкость всего 8 Кбайт и продублирован в каждом из кластеров. Этот кэш является прямоадресуемым, использует алгоритм сквозной записи данных.
Кэш данных второго уровня в E2K имеет емкость 256 Кбайт при времени доступа в 8 тактов. Он является двухканальным частично-ассоциативным и имеет 4 банка, то есть обеспечивает 4-кратное расслоение кэш-памяти. В кэше данных второго уровня применяется алгоритм обратной записи. Он также является неблокирующим.
Кроме этого, в E2K представлен специализированный кэш предварительной выборки, который разработчики назвали буфером предварительной подкачки. Он является частью устройства доступа к массивам и задействуется только при работе с массивами в циклах. Его емкость составляет всего 4 Кбайт, и он состоит из 2 банков с 2 портами в каждом из них. За один такт в буфер можно считать, следовательно, до 4 слов длиной 8 байт. Буфер организован как очередь FIFO и имеет до 64 зон предварительной выборки.
В Е2К предусматриваются два варианта подключения третьего уровня кэш: непосредственно к процессору Е2К, что позволяет разгрузить "системную шину" - коммутатор, или через набор коммутаторных микросхем.
Функциональные устройства (ФУ) E2K разнесены по двум кластерам. Эти кластеры содержат по 3 одинаковых целочисленных конвейера - АЛУ (правда, один из кластеров имеет также ФУ деления - целочисленного и с плавающей запятой).
В каждом кластере представлены также адресные сумматоры, которые имеются для 2 из 3 путей ("каналов") данных. В результате каждый кластер может одновременно выполнять до 2 операций загрузки регистров или 1 операцию записи в оперативную память. Возможен и смешанный случай: 2 загрузки плюс одна запись.
Кроме того, имеется 4 канала для данных с плавающей запятой, по 2 на кластер. В каждом канале может выполняться команда типа MADD - "умножить-и-сложить", что дает темп 8 результатов с плавающей запятой за такт.
Сам набор команд E2K "богаче", чем у традиционных RISC-процессоров: в нем представлены четырехадресные команды, например, типа d = a + b + c. Такого нет и в IA-64. Что касается команд с плавающей запятой, то кроме полной поддержки IEEE754 в E2K реализована работа с 80-разрядным представлением Intel x86. При этом операнды хранятся в парах 64-разрядных регистров E2K. Правда, сложение/умножение таких чисел не полностью конвейеризовано. Кроме того, для приближения системы команд E2K к x86 в E2K реализованы также команды расширения ММХ.
В E2K целочисленный конвейер имеет длину 8 тактов (собственно выполнение идет на седьмом такте, а обратная запись - на восьмом) против 7 тактов в Alpha 21264.
Е2К обеспечивает очень высокий уровень одновременно выполняемых операций: в команде их кодируется до 23 (сюда, кроме арифметико-логических операций, входят также доступ в оперативную память, приращение индекса массива и т.п.). Эффективные показатели параллельной работы ФУ у E2K выше, чем у всех суперскалярных процессоров.
В архитектуре E2K, как и в IA-64, делается все, чтобы по возможности исключить обычные операции перехода. Для этого в E2K имеется 32 одноразрядных регистра-предиката, причем команда способна сформировать до 7 предикатов: 4 в операциях сравнения в АЛУ и еще 3 - в операциях логики.
Хотя в IA-64 предикатных регистров формально в 2 раза больше, чем в E2K, реально их столько же, так как в IA-64 хранятся пары - предикат и его отрицание. В IA-64 поля предикатов всегда представлены в команде, а в E2K - могут отсутствовать. Предикаты могут использоваться в канале АЛУ или в канале доступа к массивам; для указания на это применяются условные слоги, содержащие маски предикатов и ФУ. Всего в этих слогах может кодироваться до 6 предикатов, указывающих на то, нужно ли выполнять соответствующие операции из "широкой" команды.
Компилятор E2K порождает коды для обеих ветвей программы, возникающих при условном переходе, и, пользуясь большим числом ФУ и регистров, заставляет процессоры выполнять обе ветви программы. Та же процедура применяется и в IA-64. До тех пор, пока условие перехода остается неизвестным, обе ветви выполняются спекулятивно. Когда, наконец, условие найдено, выбираются нужные результаты. Признак спекулятивного выполнения взводится при этом в специальном бите в коде операции в соответствующем слоге. При возникновении ситуации исключения (exception) результат снабжается тегом недействительного значения.
В файле предикатов E2K, как и в регистровом файле, используются окна.
Еще некоторые особенности архитектуры E2K:
- тегирование данных, поддерживаемое во всей линейке процессоров ЭВМ "Эльбрус";
- сегментно-страничная организация памяти;
- поддержка мультипрограммирования в стиле x86. В сочетании с разработанными средствами двоичной компиляции и специальными аппаратными средствами ее поддержки, это позволяет выполнять x86-коды на E2K.
Поддерживается также двоичная компиляция для SPARC-архитектуры.
Вопросы для самоконтроля
- Каковы основные особенности VLIW-архитектуры?
- Что нового появилось в архитектуре IA - 64 по сравнению с RISC процессорами?
- Каковы архитектурные особенности EPIC?
- Что представляют собой команды переменной длины? Где они используются?
- Перечислите особенности архитектуры E2K.
Системная магистраль