
Архитектура современных ЭВМ
На сегодняшний день основное условие повышения производительности процессоров - методы параллелизма. Как известно, микропроцессор обрабатывает последовательность инструкций(команд), составляющих ту или иную программу. Если организовать параллельное(то есть одновременное) выполнение инструкций, общая производительность существенно вырастет. Решается проблема параллелизма методами конвейеризации вычислений, применением суперскалярной архитектуры и предсказанием ветвлений.
Повышение производительности современных ПК содействовало повышенные требование пользователей
Теперь попробуем посмотреть по какому пути пойдет развитие архитектуры ЭВМ в ближайшем будущем.
Суперскалярная архитектура
Суперскалярные процессоры конца 90-х годов могли исполнять до 4-6 инструкций за один машинный цикл. На практике они выполняют в среднем 1,5 инструкции за такт. "Продвинутые" суперскалярные процессоры (Advanced superscalar) смогут выполнять от 16 до 32 инструкций за такт. Чем это обернется на практике, пока сказать трудно, но и для "суперскалярной" архитектуры существенным ограничением является поток обрабатываемых данных.
В общем виде "продвинутая" суперскалярная архитектура состоит из 24-48 высокооптимизированных конвейерных блоков(например, блоков, выполняющих операции с плавающей точкой или обрабатывающих целые числа). Как и в простых суперскалярных архитектурах, каждый блок получает свою собственную "резервацию" - временное место хранения, где накапливается очередь инструкций, выполняемых данным блоком.
Для сокращения доступа к памяти предполагается использовать наряду с обычным кешем так называемый "трассирующий" кеш, который объединяет логически смежные блоки в физически смежные хранилища.
Более совершенное предсказание ветвлений - еще одна задача ближайшего будущего, и она тесно связана с предсказанием адресации: процессор попытается предсказать адреса ячеек памяти, которые будут затребованы последующими инструкциями, и вызвать их содержимое заранее. Для того чтобы чнизить эффет задержки сигналов в соединениях, предполагается сгруппировать их в кластеры.
Суперспекулятивная архитектура
Эта архитектура подразумевает предсказание как ветвлений, так и данных. Это означает, что предсказываются адреса ячеек памяти и хранящиеся в них величины. Один из способов достичь этого - пошаговое предсказание: обнаружив постоянное приращение в величинах данных и адресах памяти(шаги), можно "догадаться" о будущих величинах, используемых вычислениях(такое может происходить в циклах или матрицах).
Основное преимущество таких архитектур в том, что они не требуют изменений в компиляторах, да и программный код должен выполняться быстрее. Они должны выполнять по 10 инструкций за один машинный такт. С другой стороны, дизайн процессора в этом случае более сложный, и то, что он не делится на блоки, может вызвать проблемы с задержкой сигналов.
Трассирующая архитектура
В обычных архитектурах иснтрукция представляет собой исполняемую единицу. В трассирующих процессорах исполняемая единица - "трасса" - последовательность инструкций. Каждый маршрут передается своему суперскалярному процессорному элементу, апоминающему суперскалярный микропроцессор и имеющему собственный набор локальных и глобальных регистров, что обеспечивает как внутримаршрутный, так и межмаршрутный параллелизм.
Применение трассирующих процессоров способствует решению проблемы задержек сигналов в межсоединениях, однако требует соответствующего кеша, что увеличивает его архитектурную сложность. Более того, это никак не решает проблему увеличения скорости обращения к памяти.
IRAM
Буква 'I' здесь означает 'intelligent'. Возможно, это один из наиболее радикальных шагов в области архитектуры, направленный на ускорение доступа к памяти и снижения энергопотребления. Согласно IRAM большая яасть RAM перемещается непосредственно на чип, исключая необходимость в кеше. Низкое энергопотребление означает, что данная архитектурабольше всего подходит для мобильных компьютеров. Однако тот факт, что максимальное количество памяти, которое можно перенести на чип, составляет всего 96 Мбайт, лишает эту архитектуру надежд на широкое использование.
Многопотоковый процессор
Данные процессоры по архитектуре напоминают трассирующие: весь чип делится на процессорные элементы, напоминающие суперскалярный микропроцессор. В отличие от трассирующего процессора, здесь каждый элемент обрабатывает инструкции различных потоков в течение одного такта, чем достигается параллелизм на уровне потоков. Разумеется, каждый поток иметт свой программный счетчик и набор регистров.
Многоядерная архитектура
Эта архитектура подразумевает интегрирование нескольких простых микропроцессорных ядер на одном чипе. Каждое ядро выполняет свой поток инструкций. Каждое микропроцессорное ядро значительно проще, чем ядро многопотокового процессора, что упрощает проектирование и тестирование чипа. Но между тем усугубляется проблема доступа к памяти, необходима замена компиляторов.
"Плиточная" архитектура
Сторонники считают, что ПО должно компилироваться прямо в "железе", так как это даст максимальный параллелизм. Такой подход требует достаточно сложных компиляторов, которые пока еще не созданы.
Процессор в данном случае состоит из множества "плиток"(tiles), каждая из которых имеет собственное ОЗУ и связана с другими "плитками" в своеобразную решетку, узлы которой можно включать и отключать. Очередность выполнения инструкций задается ПО.
Многоетажная архитектура
Здесь речь идет не о логической, а о физической структуре. Идея состоит в том, что чипы должны содержать вертикальные "штабеля" микроцепей, изготовленных по технологии тонкопленочных транзисторов, заимствованной из производства TFT-дисплеев. При этом относительно длинные горизонтальные межсоединения превращаются в короткие вертикальные, что снижает задержку сигнала и увеличивает производительность процессора. Идея "трехмерных" чипов уже реализована в виде работающих образцов восьмиэтажных микросхем памяти. Вполе возможно, что она приемлима и для микропроцессоров, и в недалеком будущем все микрочипы будут наращиваться не только горизонтально, но и вертикально.
Теперь рассмотрим архитектуры, которые основаны не на креимневых технологиях и которые могут прийти к нему на смену: