Петров Б.М., Уткина О.Н.
МОДЕЛЬ РАСЧЕТА ЖИВУЧЕСТИ ПЕРСПЕКТИВНЫХ НАНОМИКРОПРОЦЕССОРНЫХ СИСТЕМ С УЧЕТОМ АРХИТЕКТУРНОЙ ИЗБЫТОЧНОСТИ ЗА СЧЕТ ИСПОЛЬЗОВАНИЯ МНОГОЯДЕРНОЙ СТРУКТУРЫ И МНОГОКЭШОВОЙ ПАМЯТИ
Большие успехи, достигнутые за последние годы в микроэлектронике и наноэлектронике при разработке наномикропроцессорных систем (НМПС), привели к необходимости разработки методики расчета их надежности и живучести, состоящей из нескольких моделей, которые учитывают сложную архитектуру микропроцессоров (МП) и нанопроцессоров (НП). Основой предлагаемой модели является функциональная зависимость интенсивности отказов НМПС, учитывающая схемотехнические особенности современных и перспективных МП и НП и особенности их программного обеспечения (ПО) .
Предложена новая модель, в отличие от имеющихся отечественных и зарубежных (приведенных в справочнике MIL-HDBK-217F) моделей расчета безотказности НМПС, в которой учитывается влияние на интенсивность отказов МП количество ядер в центральном процессоре и различные архитектуры КЭШпамяти первого, второго и третьего уровней для каждого ядра, наиболее сильно влияющих на безотказность и быстродействие МП.
Микропроцессор является программно-управляемой сверхбольшой интегральной схемой (СБИС), предназначенной для обработки цифровой информации. Особенностями современных и перспективных МП являются:
- микропроцессор с CISC-архитектурой (Complicated Instruction Set Computer - CISC), компьютер со сложным набором команд, эта классическая архитектура применяется в персональных компьютерах и серверах фирмы Intel. Команды таких МП имеют много разных форматов и требуют для своего представления в ходе дешифрации при исполнении различных ячеек, что усложняет устройство управления, которое занимает более 60% площади МП, и препятствует повышению безотказности и быстродействия этих МП;
- микропроцессор с RISC-архитектурой (Reduced Instruction Set Computer - RISC), компьютер с
значительно сокращенным набором команд, который был выбран по результатам анализа машинного кода, с целью получение более компактных программ и ускорение их выполнения: используются наиболее употребляемые и универсальные инструкции, а сложные и редко используемые исключены. Главное, что все команды имеют размер в одно слово, поэтому все инструкции имеют одну длину и выбираются за один машинный цикл, что привело к значительному упрощению устройства управления;
- микропроцессор с универсальной «неймановской архитектурой» имеет процессор с объединенной
памятью программ и данных и содержит три основных функциональных блока: память, арифметико-
логическое устройство (АЛУ), блок ввода/вывода. Для выполнения каждой операции АЛУ обращается по одной и той же линии связи (одной шине) сначала к памяти программ, а после к памяти данных, а устройство ввода/вывода управляет потоком внешних данных. Каждое обращение к памяти проходит через соответствующий интерфейс, что приводит к повышенной нагрузке на шины адреса и данных и снижает общую производительность процессора. Эта архитектура очень простая, дешевая, требует меньшего количества выводов шины и является простой в использовании, так как программист может размещать команды и данные в любом месте свободной памяти;
- микропроцессор с «гарвардской архитектурой» имеет две физические шины связи процессора с
разделенной памятью программ и данных, что решает проблему большого количества обращений к памяти. Это позволяет пересылать команды независимо от данных и одновременно, что значительно увеличивает безотказность и быстродействие процессора, особенно в операциях обработки массивов данных, но при этом увеличивается сложность чипа и количество выводов МП;
- микропроцессор с «расширенной гарвардской архитектурой» (Super Harvard ARChitecture - SHARC) позволяет производить выборку не двух, а трех компонентов, за счет добавления кэш-памяти, в которой хранятся те инструкции, которые будут использоваться вновь, что невозможно в классической гарвардской архитектуре. Кэш-память позволяет освободить шину адреса и данных и это позволяет делать выборку двух операндов. Но чтобы не увеличивать количество выводов МП в два раза при разделении каналов передачи адреса и данных, внешние данные передаются по общей шине данных и шине адреса, а внутри кристалла эти данные расходятся на шину данных, шину команд и две шины адреса, такой подход не ухудшает безотказность и не снижает производительности МП;
- кэш-память, буферная память, в которой данные текущего фрагмента программного кода содержатся в совокупности с их адресом в основной памяти, что позволяет сократить количество обращений и время доступа к основному ОЗУ. Кэш-память имеет малый объем, малое время доступа и используется помимо основного ОЗУ, что сокращает простои процессора в ожидании данных, при этом эффективность повышается, когда процессор многократно использует одни и те же данные для получения результата;
- симметричная совместная работа (на базе идентичных ядер в процессоре) в двуядерных, четы-рехядерных, восьмиядерных, n - ядерных процессорах требует применение сложных протоколов управления совместной работой ядер и протоколов обмена данными и адресами.
Как показано в табл. 1 и 2 современные процессоры содержат два, четыре, восемь ядер в одном корпусе, а перспективные процессоры будут содержать 128 - 256 ядер в одном корпусе, выполненных по сетевой, кольцевой или многокорневой древоструктуре со сложными протоколами обмена данных, используя структурную и архитектурную избыточность.
Современные процессоры используют различные сложные архитектуры кэш-памяти первого и второго уровней для каждого ядра, еще более сложные архитектуры кэш-памяти второго и третьего уровней для совместного использования различными ядрами, что позволяет повысить безотказность и быстродействие процессора, а что будет дальше трудно предположить, так как в перспективных процессорах и вся оперативная память может переместиться в процессор, значительно повысит надежность, живучесть и производительность за счет использования структурной и архитектурной избыточности.
При анализе коэффициента Кя, учитывающего влияние количества ядер на безотказность процессора, необходимо отметить следующие особенности методов повышения безотказности и быстродействия НМПС с многоядерной структурой: симметричная многопроцессорная обработка (symmetric multiprocessing,
SMP), асимметричная многопроцессорная обработка (asymmetric multiprocessing, ASMP), многопроцессорная обработка с назначением приложению конкретного ядра (bound multiprocessing, BMP), технология виртуализации (virtualization technology, VT), равномерная последовательная или параллельная обработка потоков информации с разделением общих ресурсов по времени, чтобы своевременно освободить необходимые ресурсы и исключить зависание ядер.
Использование многоядерной архитектуры распределенной по большому набору файлов памяти с минимальным разделенным набором управляющих потоков команд доступа к ресурсам с синхронизацией параллельных процессов обработки потоков информации. При этом возникает основное требование, что каждое приложение выполняется полностью на своем ядре, т.е. жесткое разделение ресурсов ядрами, даже если соседнее свободно, чтобы обеспечить надежное и независимое выполнение каждого приложения и
сократить время динамического перераспределения ресурсов. При этом возникает проблема оптимизации распределения между ядрами кэш-памяти второго и третьего уровней для обеспечения максимальной безотказности и быстродействия.
В современных и перспективных МП 2009 - 2015 г.г.: Bloomfield, Havendale, Lynnfield архитектура кэш - памяти следующая: каждому ядру процессора отводится своя кэш - память L1 емкостью 2х32 Кбайт и каждому ядру процессора отводится своя кэш - память L2 емкостью 25 6 Кбайт, а кэш - память L3 емкостью 8 Мбайт будет общей разделяемой между всеми ядрами. Частота обмена между кэш -памятью уровней L1, L2 немного выше, чем в системной шине данных FSB, поэтому безотказность и производительность системы увеличивается, а с учётом разделения кэш-памяти уровня L1 на области команд и области данных, это еще повышает безотказность.
В современных и перспективных МП 2009-2015 г.г.: Bloomfield, Havendale, Lynnfield вместо системной шины передачи данных FSB будет использоваться новая системная шина передачи данных (интерфейс Quick Path Interconnect (QPI)) с повышенной скоростью в 4 - 8 раз по сравнению с шиной FSB, что позволит повысить безотказность и быстродействие системы в несколько раз, при этом на кристалле процессора будет располагаться и контроллер шины QPI. Шина используется для связи процессора с чипсетом и для связи ядер друг с другом в многоядерной конфигурации.
Шина QPI является последовательной двунаправленной высокоскоростной 84 контактной (по 42 пары линии) шиной с шириной передачи и приема в каждую сторону, по 20 бит с учетом двух линий для передачи кодов коррекции ошибок CRC и двух линий для передачи и приема синхронизирующих сигналов. Пропускная способность шины QPI составляет 25,6 Гбайт/с, в будущем для шины QPI вместо единицы измерения гигабайт в секунду (Гбайт/с) будет применяться термин «трансферы в секунду», т.е. количество передач запакетированных данных по шине в секунду, равный 6,4 Гтрансфера/с.
Шина QPI позволяет уже сейчас закладывать новую модульную архитектуру для будущих многоядерных процессоров, имеющих многоуровневую независимую структуру, в которой на верхнем уровне располагаются ядра с кэш - памятью уровней L1 и L2, на нижнем уровне располагаются кэш - память уровня L3, контроллер памяти и интерфейсы QPI, при этом верхний и нижний уровни будут работать на разных не синхронных частотах. Верхний уровень будет работать на частоте 3,2 ГГц, а нижний уровень будет работать на частоте 2,8 ГГц, при этом пользователю будет представлена возможность в BIOS проводить разгон частот синхронно всех компонентов нижнего уровня, что повышает конфигурацию при отказах для различных информационных потоков при решении различных задач повышения безотказности.
Кроме того, переход от 90 нм норм технологического процесса к 45 нм позволит перенести из северного моста чипсета и разместить на процессоре не только контроллер шины QPI, но и имеющийся графический контроллер, что позволит увеличить тактовую частоту графического ядра, а следовательно еще увеличить безотказность и быстродействие системы, а всего за счет использования новой шины передачи данных QPI с повышенной скоростью по сравнению с шиной FSB, которая используется сегодня, позволит повысить безотказность и быстродействие системы в несколько раз.
При анализе коэффициента Ккэш, учитывающего влияние объема кэш-памяти и ее архитектуру в современных и перспективных МП на безотказность и производительность системы, необходимо учитывать, что некорректное подключение кэш памяти первого, второго и третьего уровней может привести к резкой потери безотказности и производительности МПС.
В табл. 1 и 2 рассмотрены изменения значений количества ядер центрального процессора (ЦП) и кэш-памяти в процессе развития самых распространенных МП фирм Intel и AMD.
В модели расчета надежности МП учитываются влияние на интенсивность отказов МП количества ядер центрального процессора и сложную архитектуру кэш - памяти первого, второго и третьего уровней и интерфейс шины QPI.
^МП (t) _ ^0(t) Х КЯ Х ККЭ
х К01
где - базовая интенсивность отказов кристалла МП 1 - й технологии (с учетом времени от-
лаженности процесса производства и соответствия его современному уровню изготовления МП) относительно К-МОП технологии; Кя - коэффициент, учитывающий влияние количества ядер в центральном процессоре; ККЭШ - коэффициент, учитывающий влияние объема кэш-памяти и ее архитектуры; К0Р1 - коэффициент, учитывающий влияние интерфейса шины £)Р1.
з
Таблица 1 Современное состояние и перспективы развития универсальных микропроцессоров фирмы Intel
Год выпуска 1978 1982 1985 1989 1993 1997 1999 2000 2002 2005 2006 2006 2008 2008 2009 2010 2015
1 Центральный процессор 8086 ХТ 80286 АТ 80386 80486 80586 Pentium I 80686 Pentium II 80686 Pentium III 80786 Pentium IV 80786 Pentium 4A 80886 Pentium M Duo Core2 Duo Core2 Quad Bloom- field Haven- dale Lynn field -
2 Номер поколения 1 2 3 4 5 6 6 7 7 8 8 9 9 10 11 12 13
3 Нормы технолог. процесса Микроэлектроника 1 - 7 поколений (мкм) |Наноэлектроника 1 - 6 поколений (нм)
3,0 1,5 1,0 0,8 0,6 0,35 0,25 0.18 0.13 90 90 65 65 45 32 22 12
4 Кол-во ядер / сопроцессоров - / 1 - / 1 - / 1 - / 1 - / 1 - - 2 / - 2 / - 2 / - 2 / - 2 / - 4 / - 4 / - 2 / - 8 / - 128 -256
5 КЭШ-память L1 Кбайт - - - - 8 + 8 16 + 16 16 + 16 12 + 8 12 + 8 2х32 2х32 2х32 2х32 2х32 2х64 2х64 2х12 8
6 КЭШ-память L2 Мбайт - - - - - 0,512 0,512 0,512 2,0 2,0 2,0х общая 2,0х общая 2,0х общая 0,25 в ядре 0,25 в ядре 0,25 в ядре 16 х2 общая
7 КЭШ-память L3 Мбайт - - - - - - - - 2,0 - - - - 8,0 х общая 8,0 х общая 8,0 х общая 16,0
8 Быстродейс. Кэшпамяти - - - F шины F шины 1/2 F ядра 1/2 F ядра F ядра F ядра F ядра F ядра F ядра F ядра F ядра F ядра F ядра F ядра
Таблица 2 Современное состояние и перспективы развития универсальных микропроцессоров фирмы AMD
Год выпуска 1996 1997 1998 1999 1999 2000 2000 2001 2002 2003 2003 2004 2005 2005 2005 2006
1 Центральный процессор AMD K5 AMD K6 AMD K6-2 AMD K6-3 AMD Athlon AMD Duron AMD Athlon Thunder- bird AMD Athlon XP Palomino AMD Athlon XP Thoroug AMD Athlon XP Barton AMD Athlon 64 Winchester Athlon 64 FX Sledge Hamm Athlon 64 X2 Manchester Athlon 6 4 X2 Toledo Athlon 6 4 X2 Windsor Athlon 64 X2 Brisbane
2 Номер поколения 1 2 3 3 3 4 4 4 5 5 6 6 7 7 7 8
3 Технологический процесс Микроэлектроника 1 - 8 поколений (мкм) Наноэлектроника 1 - 2 поколений (нм)
0,35 0,35 0,25 0,25 0,25 0,18 0,18 0,18 0,13 0,13 90 90 90 90 90 65
4 Кол-во ядер - - - - - - - - - - 2 2 2 2 2 2
5 КЭШ-память L1 Кбайт 16 + 8 2х32 2х32 2х32 2х64 2х64 2х64 2х64 2х64 2х64 2х64 2х64 2х64 2х64 2х64 2х64
6 КЭШ-память L2 Мбайт - - - 0,256 0,512 0,064 0,256 0,256 0,256 0,512 1 1 0,256 0,512 0,512 0,512
7 КЭШ-память L3 Мбайт - - - - - - - - - - - - - - 1,0 1,0
8 Быстродейс. КЭШпамяти F шины F шины F шины F ядра 1/2 F ядра F ядра F ядра F ядра F ядра F ядра F ядра F ядра F ядра F ядра F ядра F ядра