ARM vs Intel microarchitecture
-
Upload
ilya-kryukov -
Category
Education
-
view
615 -
download
1
Transcript of ARM vs Intel microarchitecture
ARM против Intel:мобильная эра
Крюков Илья
План
• Введение• Терминология• ARM• Intel• Противостояние
ВВЕДЕНИЕ
ARM
• Год основания: 1990• Расположение: Англия• Число сотрудников: 1500 (2008)• Продукция :• IP-блоки (лицензии)
Intel
• Год основания 1968• Расположение: США• Число сотрудников: 100000 (2012)• Продукция:• x86 процессоры, • Чипсеты, • SSD-накопители, • Сетевое оборудование,• ...
Мобильная эра
Интернет
Устройства• Микро-серверы• Телевизоры• Ноутбуки• Ультрабуки• Планшеты• Телефоны Тенденции• Снижение потребления
энергии• Уменьшение габаритов и
веса• Активное использование
сетей
ТЕРМИНОЛОГИЯ
Архитектура и микроархитектура
Вычислительный конвейер
• IF (Instruction Fetch) — получение инструкции,• ID (Instruction Decode) — раскодирование инструкции,• EX (Execute) — выполнение,• MEM (Memory access) — доступ к памяти,• WB (Register write back) — запись в регистр.
ARM
Архитектура ARM
• RISC• 32bit, 64bit*• Cortex семейство: – A – application– M – microcontroller– R – realtime
• ISA: ARMV5, ARMV7..• Расширения:• Thumb1-2, Jazelle, NEON, vFP• Условное исполнение
Условное исполнение
С код
while (i != j) { if (i > j) i -= j; else
j -= i; }
ARM assembler
loop CMP Ri, Rj; SUBGT Ri, Ri, Rj ; SUBLT Rj, Rj, Ri ; BNE loop ;
Операция выполняется или нет в зависимости от текущих флагов процессора
Thumb1,2
• Особенности– 36 инструкций– 16 битные– Используется лишь половина регистров– Меньший объем кода– В версии Thumb 2 добавлены 32 инструкции
Jazelle
• Jazelle – технология выполнения java байт кода без трансляции
• Jazelle DBX (Dynamic Bytecode eXecution — динамическое выполнение байт-кодов) поставляется как сопроцессор
• Jazelle RCT (Runtime Compiler Target — поддержка динамических компиляторов) переводит 1 байт-код в 1 машинную инструкцию
Cortex A15
• 32bit• ARMv7-A ISA• 28nm* техпроцесс• 1,2 - 2,5GHz• Улучшенный предсказатель переходов • Большее число OOO инструкций• NEON инструкции за 1 такт*• Поддержка виртуализации• Security Extensions
Cortex A15
ARM Cortex A15 vs A9
big.LITTLE
• LITTLE: A53• Энергоэффективный• Простой, in-order, 8 стадий
• Big: A57• Производительный• Сложный, OOO, много* стадий
big.LITTLE
INTEL
Архитектура х86
• 1978• CISC*• Обратная совместимость• Расширения:– MMX, SSE - SSE4.2, AVX, AVX2,…– AES– x64– Intel VT– NX
Tick-Tock
AtomОсобенности:• 32bit• x86 ISA• 32nm – 14nm* техпроцесс, 25mm2, ~50 млн транзисторов• 0,6 – 2,13 GHz• 32Kb L1 I-cache и D-cache• 1-2 ядра (2-4 потока - HyperThreading)• 0.65W - 13W Max TDP
Сферы применения и требования:• Мобильные устройства, Netbook
– Потребление энергии важнее, чем производительность– Производительность достаточная для серфинга Интернета
• Совместимость с x86– Огромное число программ и ОС– «x86 во всем»
Микроархитектура Atom
• Суперскалярная архитектура• In-order • Совместимость с x86
Инструкции произвольной длины (CISC)
2 декодера• Функциональные модули
Минимум модулей для снижение потребления энергии
2 целочисленных АЛУ (jmp, shift) Нет целочисленных умножений и
делений 2 модуля вещественной арифметики
Правило BigCore: 1% производительности ~ 2% потреблению энергииПравило Atom: 1% производительности ~ 1% потреблению энергии
ДекодерADD SIN
uOP
uOP uOPuOP
uOP
SSE
• SSE – Streaming SIMD Extensions
Intel vs ARM
Intel• х86 код является
стандартом• Техпроцесс• Производительность
ARM• Энергопотребление• Распространение на
рынке• Стоимость
?
СПАСИБО ЗА ВНИМАНИЕ!