[완료]저전력과 관련한 ARM질문입니다.

arrest05의 이미지

우선 제가 요즘 저전력 운영체제에 대해서 공부를 하고 있습니다.

일반적으로 ARM이라고 하면 저전력 프로세서라고 알려져 있습니다.

여기서 한가지 궁금한 점이 있는데요 ARM은 CPU를 만드는 회사가 아니라 CORE에 대한 설계를 파는 회사라고 알고있는데..

그래서 먼저 제 생각은 이런데요..
ARM은 CORE의 설계만 파는 회사이니가 그 CORE에 대해 라이센스를 구입한 회사들이
ARM CORE에 여러가지 periphal들을 매달아 CPU를 만들어 팔기대문에 저전력 운영체제 구현에 대해서는 CPU의 frequency라든지 유입되는 전압을 낮춰야 하니까 실제 core를 이용해서 cpu를 만든 회사의 하드웨어 레퍼런스를 봐야하는게 아닌가 싶습니다..

제상각이 맞는건지 이것이 아니라면
ARM9기준으로 CORE가 어떻게 저전력기술이 들어가는지 관련된 문서를 찾고싶습니다.. ARM사이트를 뒤져바도 아키텍처 레퍼런스 매뉴얼만 존재하고....실제 그런 문서가 있는지 궁금합니다 ^^;

beta의 이미지

상위(application) 레벨에서 이야기하면 생각하신 내용이 맞습니다. 그러한 문서는 각 칩사에 있을 법 합니다.

ARM9 CORE가 저전력 하다는 의미는 ARM9 이 상대적으로 무엇(!!)보다 저전력 하다 라는 이야기 겠죠?

좀더 다른 레벨로 보면, RISC vs CISC 이야기를 해야 할듯 싶습니다.
그냥 ARM 원래 이름이 Advanced RISC Machines 입니다.
같은 단위일을 처리한다고 할때 RISC(ARM)는 CISC(x86 같은부류) 보다 적은 트랜지스터로 설계가 가능합니다.

트랜지스터가 적으면 "CISC 칩이 좀더 저전력 하다" 라고 이야기 할 수 있겠죠.

다른 이야기로 같은 CISC 라도 제조공정에 따라 소비전력에 지대한 영향을 줍니다.(트랜지스터들끼리 가까우면 적은힘으로 원하는 힘을 전달할수 있겠죠?)

그래서 보통 65nm 공정을 30nm 공정으로 줄이면서 소비전력을 얼마 줄였다. 정도로 광고를 하기도 합니다.

그럼으로 좀 더 범위를 줄여서 살펴보다 보면 원하는 문서를 찾을 수 있지 않을까 생각해 봅니다..

퇴근시간이네요. ^^ 바이.

발 담갔다. 이제 익숙해 지는길만이..

arrest05의 이미지

감사합니다 ^^

오승택

pajaebeo의 이미지

Arm Cortex A8 Vs Intel Atom:Architectural And Benchmark Comparisons
구글에서 검색하면 pdf 가 나옵니다.
도움이 됐으면 합니다...

pajaebeo의 이미지

참고로,
Intel Architecture는 CISC 계열이라 Decoder의 복잡도가 RISC에 비해 훨씬 높아 Decoder의 Transistor개수가 훨씬 많습니다. (즉, 파워를 더 소모합니다.)
또한 Intel Architecture는 하위 제품들과의 호환성 문제로 인해 Instruction Set 자체의 Redundancy 가 상당합니다. (즉, Decoder가 복잡하고, 파워를 더 소모합니다. )
대표적으로 이러한 이유때문에 ARM Architecture 가 Intel Architecture (INTEL 64 , IA-32 ) 보다는 Power면에서 상당히 유리하다고 생각되네요....

이외의 다른 Architecture들은 접해본 적이 없어 모르겠네요.....

pajaebeo의 이미지

제 답글이 질문자님의 의도와는 다르게 산으로 갔네요 :)

"실제 core를 이용해서 cpu를 만든 회사의 하드웨어 레퍼런스를 봐야하는게 아닌가 싶습니다.."

말씀하신 내용이 맞습니다.
예를 들면, 전력소모를 줄이기 위해 SoC내부의 PLL을 이용해서 Idle CPU Clock 을 단계적으로 낮추거나, 비활성화를 시키는데,
이는 ARM Core에서 되는 것이 아니라, ARM Core로 제공하는 Clock Frequency를 임의로 변경할 수 있는지 여부에 따라
결정되는 것입니다. (Core외부에 Clock 변경에 tolerant한 설계가 되어야 하고, Clock tree도 이를 고려하여 설계해야 합니다.)
또한 Core Voltage도 SoC의 동작 Frequency를 감안하여 아주 미세하게 조절합니다.
예를들어 1.2V 코어의 경우, SoC 설계 예상보다 더 적은 Frequency로 동작해도 문제가 없을 때는 1.15V~1.10V 까지 낮추어 사용하는 경우도
있습니다. 이도 마찬가지로 Core Voltage를 별도로 공급할 수 있는 SoC 설계가 되어야 하고,
충분히 Tolerant 한 SoC를 Fab에서 걸러서 받아야 합니다.

그 밖에 ARM에서 제공하는 Low-power 대안으로는, APB 와 같은 저전력 Bus를 제공하는 것 등이 있습니다.
또한, ARMv7 은 WFI/WFE instruction 을 제공하여 비활성화를 돕기도 하므로, 이는 Core에서 제공하는 것이라고 볼 수 있을 것 같습니다.

짧은 지식이지만, 도움이 되었으면 합니다. 밤이 늦었군요.. :)

arrest05의 이미지

감사합니다 ^^

오승택