arm vs intel microarchitecture

Post on 14-Jun-2015

615 Views

Category:

Education

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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• Энергопотребление• Распространение на

рынке• Стоимость

?

СПАСИБО ЗА ВНИМАНИЕ!

top related