автореферат диссертации по информатике, вычислительной технике и управлению, 05.13.05, диссертация на тему:Разработка методов анализа основных параметров функциональных устройств микропроцессоров на начальной стадии проектирования

кандидата технических наук
Ключников, Андрей Михайлович
город
Москва
год
2013
специальность ВАК РФ
05.13.05
Диссертация по информатике, вычислительной технике и управлению на тему «Разработка методов анализа основных параметров функциональных устройств микропроцессоров на начальной стадии проектирования»

Автореферат диссертации по теме "Разработка методов анализа основных параметров функциональных устройств микропроцессоров на начальной стадии проектирования"

На правах рукописи 005057545

Ключников Андрей Михайлович —

РАЗРАБОТКА МЕТОДОВ АНАЛИЗА ОСНОВНЫХ ПАРАМЕТРОВ ФУНКЦИОНАЛЬНЫХ УСТРОЙСТВ МИКРОПРОЦЕССОРОВ НА НАЧАЛЬНОЙ СТАДИИ ПРОЕКТИРОВАНИЯ

Специальность 05.13.05 - Элементы и устройства вычислительной техники и систем управления

АВТОРЕФЕРАТ диссертации на соискание ученой степени кандидата технических наук

1 Я АПР 2013

Москва-2013

005057545

Работа выполнена в Федеральном государственном бюджетном образовательном учреждении высшего профессионального образования «Национальный исследовательский университет «МЭИ» (ФГБОУ ВПО «НИУ МЭИ») на кафедре Вычислительной техники.

Научный руководитель: кандидат технических наук, профессор

Логинов Вадим Александрович

Официальные оппоненты: Борисов Вадим Владимирович,

доктор технических наук, профессор, филиал ФГБОУ ВПО «НИУ МЭИ» в г. Смоленске, профессор кафедры Вычислительной техники

Мороховец Юрий Евгеньевич,

кандидат технических наук, доцент, ФГБОУ ВПО «НИУ МЭИ», доцент кафедры Вычислительных машин, систем и сетей

Ведущая организация: ФГБУН Институт проблем управления им.

В.А. Трапезникова РАН

Защита состоится 26 апреля 2013 года в 16 часов 00 минут на заседании диссертационного совета Д 212.157.16 при ФГБОУ ВПО «НИУ МЭИ» по адресу: 111250, г. Москва, ул. Красноказарменная, д. 17, ауд. Г-306.

С диссертацией можно ознакомиться в библиотеке ФГБОУ ВПО «НИУ МЭИ».

Отзывы на автореферат в двух экземплярах, заверенные печатью организации, просим направлять по адресу: 111250, Москва, ул. Красноказарменная, д. 14, Ученый совет МЭИ.

Автореферат разослан «¿Г» ¿лящта. 2013 года

Ученый секретарь

диссертационного совета Д 212.157.16,

к.т.н., доцент Чернов С.А.

ОБЩАЯ ХАРАКТЕРИСТИКА РАБОТЫ

Актуальность темы исследования

Конкуренция между производителями универсальных микропроцессоров приводит к созданию всё более дешевых и мощных устройств. Это становится возможным за счет ускорения процессов разработки, улучшения архитектуры микропроцессоров и усовершенствования технологии производства. На сегодняшний день можно выделить следующие основные направления развития современных микропроцессоров:

• Повышение тактовой частоты. Повышения тактовой частоты происходит за счет более совершенной технологии производства с меньшими размерами полупроводниковых структур; увеличение числа топологических слоев; более развитой схемотехники меньшей каскадности и с более совершенными транзисторами, а также более плотной компоновки функциональных устройств на кристалле.

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

• Увеличение числа параллельно работающих исполнительных устройств и их разрядности. В каждом новом поколении микропроцессоров увеличивается число функциональных исполнительных устройств и улучшаются их характеристики, как временные (сокращение числа ступеней конвейера и уменьшение длительности такта каждой ступени), так и функциональные (введение £Ж-расширений, А ИТ-расширений системы команд).

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

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

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

Для решения этой задачи требуется создание специальных методов анализа функциональных устройств микропроцессора по следующим основным параметрам:

• Площадь устройства на кристалле, зависимость площади устройства от технологического процесса и характеристик устройства.

• Быстродействие устройства с учетом задержек на основных критических путях, определяющее тактовую частоту разрабатываемого процессора.

• Вклад конкретного функционального устройства в производительность процессора в целом, зависимость производительности процессора от конкретных характеристик устройства.

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

Таким образом, актуальность разработки методов анализа, позволяющих осуществить экспресс-оценку основных параметров микропроцессора, чрезвычайно высока.

Объектом исследований в представленной диссертации являются современные универсальные высокопроизводительные микропроцессоры, а предметом исследований - модели и методы для оценки параметров функциональных устройств микропроцессоров, применимые на начальном (архитектурном) этапе их проектирования.

Основной целью диссертационного исследования является разработка методов анализа основных параметров функциональных устройств микропроцессора на начальной стадии проектирования и их использование для предварительного расчета параметров микропроцессора в целом.

Для достижения поставленной цели в диссертации решены следующие задачи:

• Проведено исследование существующих методов оценки площади устройства на кристалле процессора, задержек на критических путях и производительности.

• Исследованы современные универсальные микропроцессоры с целью выявления наиболее существенных параметров, влияющих на конечный результат, которые необходимо учитывать на ранней стадии проектирования микропроцессора на уровне кристалла.

• Создана база данных современных микропроцессоров, в которой хранится информация обо всех функциональных устройствах процессоров и соответствие меяоду параметрами ранее разработанных устройств.

• Разработана модель для расчета площади кристалла на основе созданной базы данных.

• Выполнена установка специализированных САПР в общую структуру САПР предприятия и настройка САПР на современный технологический процесс для разработки архитектурного плана кристалла.

• Разработан архитектурный план кристалла микропроцессора с трассировкой основных связей между устройствами.

• На базе архитектурного плана проведен расчет задержек на основных критических путях на кристалле микропроцессора для определения тактовой частоты микропроцессора.

• Представлено описание устройств микропроцессора на языке программирования высокого уровня для построения потактового симулятора разрабатываемого микропроцессора с целью предварительной оценки его производительности.

Методы исследования

■При решении задач диссертационного исследования применялись методы системного анализа, функционального анализа, математического анализа. Для исследования функциональных устройств процессора использовалось имитационное моделирование на ЭВМ, а также методы статистического анализа. Для подтверждения оценок заявленных параметров экспериментальные исследования проводились на потактовом симуляторе микропроцессора.

Научная новизна диссертационных исследований заключается в следующем:

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

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

3. Разработка алгоритмов взаимодействия устройств подсистемы памяти, позволяющих повысить производительность микропроцессора в целом на 16% и сократить площадь его отдельных устройств.

Основные положения, выносимые на защиту:

Метод оценки площади кристалла микропроцессора, отличие которого от традиционных методов заключается в наличии следующих особенностей:

• Использование информации о параметрах устройств ранее разработанных процессоров.

• Систематизация информации об устройствах в специальной базе данных, в которой функциональные устройства процессора представляются в виде набора элементарных устройств.

• Площадь проектируемого процессора определяется как сумма площадей элементарных устройств из базы данных, входящих в состав процессора.

• Площадь элементарного устройства определяется с учетом таких параметров, как технологический процесс, напряжение питания и тактовая частота.

• Оценка площади производится на этапе архитектурного проектирования, на котором отсутствует схемотехническое описание устройств нового процессора.

Метод анализа задержек на критических путях, обладающий следующими преимуществами перед ранее разработанными методами:

• Использование архитектурного плана кристалла, полученного на основе рассчитанных значений площади устройств нового микропроцессора.

• Применяется метод логического усилия для расчета задержек логических элементов.

• Используется архитектурный план кристалла микропроцессора для оценки длин линий связи между устройствами процессора и проверки плотности трассировки.

Новые устройства и алгоритмы работы проектируемого процессора:

• Разработан алгоритм перенаправления записи на чтение, позволяющий повысить производительность процессора с несколькими потоками вычислений.

• Разработан алгоритм, основанный на использовании «псевдо» портов для увеличения пропускной способности кэш-памяти в случае ограниченного числа физических портов.

• Исследованы алгоритмы выбора запросов обращения в подсистему памяти, позволяющие максимально использовать её пропускную способность.

• Разработаны методы и устройства, позволяющие сократить количество портов в буфере промахов и уменьшить площадь кристалла.

• Разработан алгоритм упорядочивания команд обращения в память, основанный на восстановлении программного порядка выбора из буфера команд обращения в память и позволяющий находить группу упорядоченных команд без попарного сравнения всего набора команд.

Достоверность полученных результатов, положений и выводов подтверждается совпадением данных, полученных в ходе имитационного моделирования, с теоретическими выкладками.

Практическая значимость

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

Предложенные методы также позволяют сократить время для перерасчета основных параметров при изменении набора и характеристик функциональных устройств процессора или технологических норм.

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

Внедрение результатов исследований. Разработанные методы для оценки основных параметров универсального микропроцессора введены в эксплуатацию в экспериментальный комплекс предварительного проектирования микропроцессоров на СБИС в ЗАО «Интел А/О».

^Теоретические исследования и методы, связанные с оценкой основных параметров функциональных узлов современных микропроцессоров, легли в основу разделов лекций и практических занятий по курсу «Проектирование процессоров на сверхбольших интегральных схемах», проводимых на кафедре Вычислительной техники ФГБОУ ВПО «НИУ МЭИ». Апробация и публикация результатов работы

По основньм результатам работы были сделаны доклады на международных научно-технических конференциях «Информационные средства и технологии», на международных научно-технических конференциях студентов и аспирантов «Радиоэлектроника, электротехника и энергетика» и международных научно-технических семинарах в 2010 - 2012 гг. Результаты диссертационных исследований опубликованы в 8 печатных работах, в том числе в журнале «Информационные технологии в проектировании и производстве», который входит в перечень ВАК.

Структура и объем диссертации

Диссертационная работа изложена на 143 страницах, содержит 50 рисунков, 12 таблиц и состоит из введения, пяти глав, заключения, списка литературы и приложения.

ОСНОВНОЕ СОДЕРЖАНИЕ РАБОТЫ

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

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

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

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

Помимо усложнения аппаратуры для повышения производительности, разработчики предпринимают попытки усовершенствовать систему команд. Усовершенствованная система команд должна избавить процессор от выполнения сложной функции — распараллеливание последовательного потока команд. Первые попытки были предприняты компаниями Intel и HP в IA-64 архитектуре.

Еще одним подходом, который позволяет повысить производительность процессора, эффективно управлять его энергопотреблением, упростить управляющую логику, является создание процессоров, основанных на технологиях VLIW (Very Long Instruction Word) и морфинге программного кода. Такой подход был опробован фирмой Transmeta.

Среди отечественных разработок необходимо выделить семейство микропроцессоров основанных на архитектуре «Эльбрус».

Новые возможности микропроцессора предусматривают существенное увеличение производительности вычислительных систем:

1. Широкое командное слово допускает параллельное выполнение группы независимых операций за такт.

2. Технология двоичной компиляции, поддерживаемая аппаратно, гарантирует полную, эффективную и надежную совместимость с архитектурой Intel х%6.

3. Аппаратная поддержка различных типов данных, реализованная в микропроцессоре, обеспечивает защиту программ, простоту их наладки и высокую надежность.

Исследования вышеперечисленных методов повышения

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

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

Для оценки перечисленных параметров процессора необходимо разработать набор методов и средств, которые позволят выбрать требуемый

технологический процесс, будут учитывать данные о физической реализации устройств процессора и обеспечат предварительный расчет производительности на наборе специальных тестов. Таким образом, главной задачей представленного диссертационного исследования является разработка методов анализа основных параметров функциональных устройств процессора на начальном этапе его проектирования.

Во второй главе рассмотрена взаимосвязь основных параметров процессора между собой и дан краткий обзор методов для оценки каждого параметра.

Оценка площади кристалла микропроцессора. Оценка производится на основе учёта параметров устройств ранее разработанных микропроцессоров. По результатам расчета площади устройств строится архитектурный план проектируемого микропроцессора.

Оценка задержки на критическом пути. Для оценки задержек используется архитектурный план кристалла и определяются длины основных линий связи между устройствами.

Оценка производительности. Для оценки производительности проектируемого микропроцессора разрабатывается потактовый симулятор, в котором на языке С++ описывается потактовый алгоритм работы устройств. На основе рассчитанных задержек производится настройка симулируемых устройств процессора.

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

Обобщённая структура системы оценки основных параметров функциональных устройств микропроцессора представлена на рис. 1.

Рис. 1. Структура системы оценки параметров микропроцессора

В третьей главе диссертации приведен метод оценки площади функциональных устройств процессора.

Существующие методы для оценки площади функциональных устройств процессора обладают следующими особенностями:

• Необходимо наличие ^7Х-описание устройства.

• Необходимо описание устройств процессора через булевы функции.

• Использование £ОР-представления (Sum of Products) функций устройств.

Однако на начальной стадии проектирования применение существующих методов оценки площади невозможно, поскольку пока отсутствует RTL-описание устройства, а описание каждого устройства через булевы функции и ЗОР-представление является весьма трудоемким процессом. Еще больше осложняет ситуацию необходимость быстрой оценки площади устройств с разными характеристиками, при разных значениях напряжения питания, тактовой частоты и разной технологии производства.

Автором предложен метод оценки площади функциональных устройств процессора, который учитывает особенности именно начальной стадии проектирования.

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

Полученная информация об ЭУ заносится в единую базу данных, где ЭУ объединяются в группы в соответствии с выполняемой ими функцией

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

I

н =

Ascalei (г - г. )

v i min /

х-

1

(г - г . )

V 1 тт /

где Н - значение искомого параметра ЭУ, Аяса1е1 - параметр изменения площади на г'-ой технологии проектирования. Параметр г,- вычисляется по формуле:

где Т - задержка логического элемента в наносекундах, а КСС - напряжение питания, при котором было получено значение задержки элемента.

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

Предложенный метод позволяет осуществить предварительную оценку площади устройств нового процессора, при этом анализируется набор ЭУ, входящих в его состав, их число и характеристики:

• Если ЭУ с требуемыми характеристиками описано в БД, то его площадь участвует в расчете.

• Если ЭУ с требуемыми характеристиками отсутствует в БД, то его площадь рассчитывается следующим образом:

о вычисление значения площади происходит на основе характеристик ЭУ базовых процессоров;

о расчет выполняется по формуле

П = ПЭУ * Ф(3н, Зи), где П - площадь устройства с новыми характеристиками, Пэу - площадь ЭУ из БД, Ф - функция зависимости площади от значении известных (Зи) и новых (Зн) характеристик;

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

Базовые процессоры

Рис. 2. Оценка площади функциональных устройств микропроцессора

Полученные значения площади устройств проектируемого процессора использованы автором для разработки архитектурного плана кристалла микропроцессора, который позволяет определить расположение всех устройств процессора, рассчитать длину связей между устройствами и провести проверку плотности трассировки. Пример архитектурного плана кристалла процессора AMD Bulldozer приведен на рис. 3.

Рис. 3. Пример архитектурного плана кристалла

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

Задержка на критическом пути устройства складывается из суммы задержек логических элементов и связей между ними.

Для расчёта задержек логических элементов автор предлагает использовать метод логического усилия (Logical Effort). Это относительно простой способ для расчета задержек в КМОП-схемах. Сравнивая задержку различных логических структур, можно выбрать схему с наибольшим быстродействием. Также данный метод позволяет подобрать оптимальное количество логических стадий на критическом пути и размер транзистора в логическом элементе. Благодаря своей простоте, метод логического усилия подходит для оценки различных вариантов реализации логической схемы на ранней стадии проектирования, что служит хорошей отправной точкой для дальнейшей оптимизации и более детального анализа разрабатываемой схемы.

Суть метода заключается в следующем. Задержка логического элемента зависит от коэффициента ветвления {fan-out), который определяется как отношение выходной к входной емкости элемента. На основе данной зависимости строится таблица, в которой для нужных логических элементов указывается задержка при заданном коэффициенте ветвления. С помощью полученной таблицы можно рассчитать задержку всех логических элементов, входящих в исследуемый критический путь.

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

На рис. 4 приведена процедура расчета задержек на критическом пути.

Рис. 4. Расчет задержек на критических путях

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

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

исполнительных ресурсов процессора.

Дня оценки производительности применялся потактовый симулятор проектируемого процессора, который позволяет оценить производительность процессора на раннем этапе проектирования, то есть еще до начала этапов логического и схемотехнического проектирования.

В процессе проектирования процессора автором разработаны специальные алгоритмы, которые были реализованы в потактовом симуляторе процессора.

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

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

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

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

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

данный алгоритм с одним из приведенных выше. К недостаткам третьего алгоритма необходимо отнести сложность его аппаратной реализации.

Алгоритм сокращения количества портов в буфере промахов. Буфер промахов служит для хранения информации о запросе, который «промахнулся» при обращении в кэш-память первого уровня. С увеличением пропускной способности кэш-памяти необходимо пропорционально увеличивать число портов в буфере промахов, что повлечет за собой увеличение площади данного устройства на' кристалле. Для сокращения числа портов используется предсказатель промаха, который на основе виртуального адреса запроса делает предположение о возможном промахе. Алгоритм выбора запросов в память учитывает эту информацию и ограничивает число посылаемых запросов в память, если их число превышает число портов буфера промахов.

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

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

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

Оценка эффективности предложенных алгоритмов проведена на тестах из набора SPEC CPU 2000.

В табл. 1 представлены конфигурации моделей симуляторов и полученные на данных моделях результаты для алгоритма «псевдо» портового доступа в кэш-память первого уровня.

Таблица 1

Конфигурации моделей симулятора

Модель - Модель 1 Модель 2-, _ ' Модель 31 _

Размер к.лп-иамя; и V 64 Кбайт

„Кол-во_ портов в Г накопителе 2 4 . 2

Кол-во запросов за „ - такт . 2 4 4

(Организация. портов • Физические порты 4 «псевдо»-

порта

М^^зводательнер^'' 1 1.04 1.03

1 2 1.74

На рис. 5 представлены результаты прогона симулятора с включенной и выключенной поддержкой механизма store-to-load forwarding. При использовании предложенного алгоритма скорость исполнения инструкций увеличилась в среднем на 16%.

ввя^в Инструкций за такт при выключенном алгоритме store-to-loadforwarding

Рис. 5. Скорость выполнения тестов

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

ОСНОВНЫЕ РЕЗУЛЬТАТЫ РАБОТЫ

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

2. Предложенный метод реализован в автоматизированной системе, включающей базу данных, где хранится детальная информация об устройствах ранее разработанных процессоров. База данных организована таким образом, что позволяет выявить зависимость площади устройства от его характеристик, от технологии проектирования, напряжения питания и тактовой частоты.

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

4. На основе полученных значений площади функциональных устройств разработан архитектурный план кристалла микропроцессора, используемый для оценки длины линий связи и расчета задержек на основных критических путях.

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

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

7. Эффективность предложенных методов подтверждена результатами экспериментов по оценке параметров уже существующих микропроцессоров. Разработка архитектурного плана кристалла ускоряется до 10 раз за счет автоматического заведения функциональных устройств и их параметров в САПР из базы данных. Использование архитектурного плана позволяет повысить точность предварительной оценки задержек линий связи. Погрешность расчета параметров (площадь кристалла, тактовая частота, производительность) сокращается примерно на 20%, что по мнению опытных разработчиков весьма существенно для начального этапа проектирования.

ПУБЛИКАЦИИ ПО ТЕМЕ ДИССЕРТАЦИИ

Публикации в периодических изданиях, рекомендованных ВАК

1. Ключников А.М., Логинов В. А. Обеспечение эффективной производительности подсистемы памяти в многокластерных микропроцессорах // Информационные технологии в проектировании и производстве. 2012. №1. С.77 - 85. Лично автором выполнено: предложен новый алгоритм перенаправления чтения на запись, реализация алгоритма в потактовом симуляторе микропроцессора, написание текста статьи.

Публикации в других изданиях

2. Ключников A.M. Метод расчета площади кристалла микропроцессора на начальной стадии проектирования. Радиоэлектроника, электротехника и энергетика // Шестнадцатая международная научно-техническая конференция студентов и аспирантов: Тезисы докладов. В 3-х томах. Т.1. - М.: Издательский дом МЭИ, 2010. С. 391 - 392.

3. Ключников А.М., Логинов В.А. Разработка подсистемы памяти с высокой пропускной способностью: проблемы и пути их решения // Современные технологии в задачах управления, автоматики и обработки информации: Труды XIX Международного научно-технического семинара. Сентябрь 2010 г., Алушта. - М.: Издательский дом МЭИ, 2010. С. 205 - 206.

4. Ключников A.M., Логинов В.А. Метод увеличения пропускной способности кэш-памяти первого уровня И Труды XVIII международной научно-технической конференции «Информационные средства и технологии». 18 - 20 октября 2010. В 3-х томах. Т.1. - М.: Издательский дом МЭИ, 2010. С. 31-35.

5. Ключников A.M. Алгоритмы выборки запросов обращения в общую подсистему памяти в многокластерных микропроцессорах. Радиоэлектроника, электротехника и энергетика // Семнадцатая международная научно-техническая конференция студентов и аспирантов: Тезисы докладов. В 3-х томах. Т.1. - М.: Издательский дом МЭИ, 2011. С. 392 - 393.

6. Ключников A.M., Логинов В.А. Использование псевдопортов для увеличения пропускной способности кэш-памяти // Современные технологии в задачах управления, автоматики и обработки информации: тезисы XX Международного научно-технического семинара (г. Алушта, 12 -24 сентября 2011 г.). - Пенза: Изд-во ПТУ, 2011. С. 247 - 248.

7. Ключников A.M. Аппаратный алгоритм упорядочивания команд обращения в память в многокластерных микропроцессорах. Радиоэлектроника, электротехника и энергетика // Восемнадцатая Международная научно-техническая конференция студентов и аспирантов: Тезизы докладов. В 4-х томах. Т.2. - М.: Издательский дом МЭИ, 2012. С. 71.

8. Ключников А.М., Логинов В.А. Методы анализа основных параметров функциональных устройств микропроцессора // Труды XX международной научно-технической конференции «Информационные средства и технологии». 20 - 21 ноября 2012. В 3-х томах. Т.1. - М.: Издательский дом МЭИ, 2012. С. 41-44.

Пописано в печать Зак. Тир. W О П.л.

Полиграфический центр НИУ МЭИ Москва, ул. Красноказарменная, д. 13

Текст работы Ключников, Андрей Михайлович, диссертация по теме Элементы и устройства вычислительной техники и систем управления

Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования «Национальный исследовательский университет «МЭИ»

04201355905

На правах рукописи

КЛЮЧНИКОВ АНДРЕЙ МИХАЙЛОВИЧ

РАЗРАБОТКА МЕТОДОВ АНАЛИЗА ОСНОВНЫХ ПАРАМЕТРОВ ФУНКЦИОНАЛЬНЫХ УСТРОЙСТВ МИКРОПРОЦЕССОРОВ НА НАЧАЛЬНОЙ СТАДИИ ПРОЕКТИРОВАНИЯ

05.13.05 - Элементы и устройства вычислительной техники

и систем управления

Диссертация на соискание ученой степени кандидата технических наук

Научный руководитель кандидат технических наук профессор В.А. Логинов

Москва-2013

Содержание

Содержание..........................................................................................................2

Введение...............................................................................................................4

1. Направления развития универсальных микропроцессоров................12

1.1. Методы повышения производительности микропроцессоров...........12

1.2. Проблемы разработки новых микропроцессоров................................14

1.3. Архитектура 7/4-64...................................................................................15

1.4. Архитектура УЬШи морфинг програмного кода................................19

1.5. Микропроцессорная архитектура «Эльбрус».......................................20

1.6. Выводы.....................................................................................................23

2. Методы оценки параметров микропроцессоров..................................24

2.1. Оценка площади кристалла микропроцессора.....................................26

2.2. Оценка задержки на критическом пути................................................27

2.3. Оценка производительности микропроцессора...................................29

2.4. Выводы.....................................................................................................31

3. Метод оценки площади кристалла микропроцессора.........................33

3.1. Обзор существующих методов оценки.................................................33

3.2. Метод оценки площади функциональных устройств микропроцессора...............................................................................................36

3.3. Система оценки основных параметров микропроцессоров................41

3.4. Структура системы оценки основных параметров микропроцессора41

3.5. Структура базы данных...........................................................................42

3.6. Расчет площади микропроцессора на разной технологии производства, напряжении питания и при любой допустимой тактовой частоте................................................................................................................46

3.7. Зависимость площади функциональных устройств от технологии производства......................................................................................................51

3.8. Сравнение площади функциональных устройств процессоров.........53

3.9. Расчет площади функциональных устройств нового микропроцессора...............................................................................................54

3.10. Точность метода оценки площади устройств микропроцессора........58

3.11. Разработка архитектурного плана микропроцессора..........................59

3.12. Выводы.....................................................................................................68

4. Метод оценки задержки на критическом пути.....................................70

4.1. Оценка качества функциональных схем...............................................70

4.2. Расчет задержек логических элементов................................................74

2

4.3. Расчет задержки линии связи.................................................................80

4.4. Упрощенная модель расчета задержки линии связи...........................82

4.5. Уменьшение задержки линии связи......................................................83

4.6. Предпосылки к разработке метода расчета задержек линии связи.... 86

4.7. Алгоритм расчета задержки распространения сигнала на начальной стадии проектирования.....................................................................................88

4.8. Точность метода оценки задержки на критических путях..................91

4.9. Выводы.....................................................................................................93

5. Метод расчета производительности......................................................94

5.1. Способы оценки производительности микропроцессоров.................94

5.2. Симуляторы для оценки производительности микроархитектур......95

5.3. Единицы измерения производительности модели процессора..........97

5.4. Набор тестов для измерения производительности...............................98

5.5. Моделирование устройств микропроцессора.....................................100

5.5.1.Функциональные устройства современного микропроцессора.......101

5.5.2.Подсистема памяти микропроцессора................................................102

5.5.3.Разработка подсистемы памяти с высокой пропускной способностью...................................................................................................103

5.5.4.Использование «псевдо» портов для увеличения пропускной способности.....................................................................................................106

5.5.5. Алгоритмы выборки запросов обращения в общую подсистему памяти...............................................................................................................110

5.5.6.Способ сокращения количества портов в буфере промахов.............112

5.5.7. Аппаратная реализация алгоритма упорядочивания команд обращения в память........................................................................................117

5.5.8. Алгоритм перенаправления чтения на запись....................................119

5.8. Выводы...................................................................................................135

Заключение......................................................................................................136

Литература.......................................................................................................138

Приложение 1. Текст программы на языке VBA.........................................145

Введение

Актуальность темы

Конкуренция между производителями универсальных микропроцессоров (МП) приводит к созданию всё более дешевых и высокопроизводительных приборов за счет улучшения их архитектуры и усовершенствования технологии производства. На сегодняшний день можно выделить следующие основные направления развития современных микропроцессоров:

• Повышение тактовой частоты. Повышение тактовой частоты происходит за счет более совершенной технологии производства с меньшими проектными нормами; увеличения числа топологических слоев; более развитой схемотехники меньшей каскадности и с более совершенными транзисторами, а также более плотной компоновки функциональных устройств на кристалле.

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

• Увеличение числа параллельно работающих исполнительных устройств. В каждом новом поколении микропроцессоров увеличивается число функциональных исполнительных устройств и улучшаются их характеристики, как временные (сокращение числа ступеней конвейера и уменьшение длительности каждой ступени), так и функциональные (введение ^Ж-расширений, А КХ-расширений системы команд).

С усовершенствованием технологии производства уменьшаются размеры транзисторов, сокращается задержка, что позволяет повысить тактовую частоту микропроцессора, уменьшить его площадь, и, как следствие, понизить себестоимость изготовления кристалла. Сегодня сложность про-

4

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

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

Целью работы является разработка методов анализа основных параметров функциональных устройств микропроцессора на начальной стадии

проектирования и их использование для предварительного расчета параметров микропроцессора в целом.

Для достижения поставленной цели в диссертации решаются следующие основные задачи:

• Проведено исследование существующих методов оценки площади устройств на кристалле процессора, задержек на критических путях и производительности.

• Исследованы современные универсальные микропроцессоры с целью выявления наиболее существенных параметров, влияющих на конечный результат, которые необходимо учитывать на ранней стадии проектирования микропроцессора на уровне кристалла.

• Создана база данных современных микропроцессоров, в которой хранится информация обо всех функциональных устройствах процессоров и соответствие между параметрами ранее разработанных устройств.

• Разработана модель для расчета площади кристалла на основе созданной базы данных.

• Выполнена установка специализированных САПР в общую структуру САПР предприятия и настройка САПР на современный технологический процесс для разработки архитектурного плана кристалла.

• Разработан архитектурный план кристалла микропроцессора с трассировкой основных связей между устройствами.

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

• Представлено описание устройств микропроцессора на языке программирования высокого уровня для построения потактового симулятора разрабатываемого микропроцессора с целью предварительной оценки его производительности.

Объектом исследования в представленной диссертации являются современные универсальные высокопроизводительные микропроцессоры.

6

Предметом исследования - модели и методы для оценки параметров функциональных устройств микропроцессоров, применимые на начальном (архитектурном) этапе их проектирования.

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

Разработан метод для оценки площади кристалла микропроцессора на начальной стадии проектирования, отличие которого от традиционных методов заключается в наличии следующих особенностей:

• Использование информации о параметрах устройств ранее разработанных процессоров.

• Систематизация информации об устройствах в специальной базе данных, в которой функциональные устройства процессора представляются в виде набора элементарных устройств.

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

• Площадь проектируемого процессора определяется как сумма площадей элементарных устройств из базы данных, входящих в состав процессора.

• Площадь элементарного устройства определяется с учетом таких параметров, как технологический процесс, напряжение питания и тактовая частота.

• Оценка площади производится на этапе архитектурного проектирования, на котором отсутствует схемотехническое описание устройств процессора.

Разработан метод для анализа задержек на критических путях, обладающий следующими преимуществами перед ранее разработанными методами:

• Применяется метод логического усилия для расчета задержек логических элементов.

• Используется архитектурный план кристалла микропроцессора для оценки длин линий связи между устройствами процессора и проверки плотности трассировки.

Разработаны новые устройства и алгоритмы работы проектируемого процессора:

• Разработан алгоритм перенаправления записи на чтение, позволяющий повысить производительность процессора с несколькими потоками вычислений.

• Разработан алгоритм, основанный на использовании «псевдо» портов для увеличения пропускной способности кэш-памяти в случае ограниченного числа физических портов.

• Исследованы алгоритмы выбора запросов обращения в подсистему памяти, позволяющие максимально использовать её пропускную способность.

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

• Разработан алгоритм упорядочивания команд обращения в память, основанный на восстановлении программного порядка выбора из буфера и позволяющий находить группу упорядоченных команд без попарного сравнения всего набора команд.

Практическая ценность работы состоит в следующем:

• Разработанный метод для оценки площади функциональных

устройств микропроцессора на начальной стадии проектирования позволя-

8

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

• Предложенный метод реализован в системе оценки параметров, включающей базу данных, где хранится детальная информация об устройствах ранее разработанных процессоров. База данных организована таким образом, что позволяет выявить зависимость площади устройства от его характеристик, от технологии проектирования, напряжения питания и тактовой частоты.

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

• На основе полученных значений площади функциональных устройств разработан архитектурный план кристалла микропроцессора, используемый для оценки длины линий связи и расчета задержек на основных критических путях.

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

• На основе анализа особенностей разрабатываемого процессора, полученных значений площади функциональных устройств и их задержек, автором были предложены новые алгоритмы работы устройств подсистемы памяти и варианты их аппаратной реализации. Предложенные алго-

9

ритмы позволяют повысить производительность процессора в целом и сократить площадь его отдельных устройств. Эффективность алгоритмов проверена в потактовом симуляторе проектируемого процессора. • Эффективность предложенных методов подтверждена результатами экспериментов по оценке параметров уже существующих микропроцессоров. Разработка архитектурного плана кристалла ускоряется до 10 раз за счет автоматического заведения функциональных устройств и их параметров в САПР из базы данных. Использование архитектурного плана позволяет повысить точность предварительной оценки задержек линий связи. Погрешность расчета параметров (площадь кристалла, тактовая частота, производительность) сокращается примерно на 20%, что по мнению опытных разработчиков весьма существенно для начального этапа проектирования.

Достоверность научных положений, выводов и практических рекомендаций, сформулированных в диссертации, подтверждается вычислительными экспериментами и данными, полученными по