MICOM:ARM

구차니의 잡동사니 위키
이동: 둘러보기, 찾기

ARM

  • Acorn RISC Machine
  • Advanced RISC Machines

목차

ARM Architecture & Core

  • ARMv5 - ARM9
  • ARMv6 - ARM11
  • ARMv7 - Cortex

확장기능

3rd party 어플리케이션을 컴파일 하기 위해서는 칩에서 지원하는 확장가능을 사용하는 것이 좋다. 해당 기능을 사용시 2~3배 이상의 실행성능 향상을 볼 수 있으며 CPU를 적게 씀으로서 전원관리에서 유리해진다.

DSP Enhancement

DSP의 기능을 확장하기 위한 명령어로 여러개 바이트에 대해 동시에 연산이 가능한 명령어이다.

칩셋에서 E가 들어 있으면 사용가능한 기능이다.

Jazelle

Jazelle DBX (Direct Bytecode eXecution). Java 바이트 코드를 직접 실행하는 기능으로

칩셋에서 J가 들어 있으면 사용가능한 기능이다.

다만, 안드로이드 제품들이 DALVIK이나 ART(Android RunTime) 등을 사용하고 해당 core에 Jazelle이 없는 것을 봐서는 현 시점에서는 무용지물로 생각되는 기술

NEON

ARMv7 이후 부터 포함된 기능으로 64bit / 128bit SIMD 멀티미디어 확장기능을 수행한다. NEON에서 부동소수점을 지원하기는 하지만 IEEE 754 표준과 100% 호환되진 않는다.

GCC 에서 automatic vectorization을 통해 자동으로 NEON/SIMD 명령으로 변환이 가능하다.

VFP

부동소수점 연산을 도와주는 기능으로 IEEE 754 표준과 호환된다. 하드웨어 가속으로 부동소수점 연산을 하므로 부동소수점 연산을 실수로 에뮬레이트 할 때 보다 연산속도가 빨라지게 된다.

Thumb

32bit 명령어로 실행파일을 만들면 명령어 크기로 인해(연산항 길이) 필요 이상으로 커지는 문제가 있어 16bit나 8bit 명령어로 저장된 것을 실행하는 기능으로 저장용량을 줄이는데 특화된 기능이나 약간의 성능저하가 있을 수 있다. (내부적으로 명령어를 32bit로 확장하면서 시간 손실이 발생)

칩셋에서 T가 들어 있으면 사용가능한 기능이다.


홈페이지

개인 도구
이름공간

변수
행위
둘러보기
도구모음