본문 바로가기
Embedded System/Embedded Recipes

2.2 ARM Inside

by 리미와감자 2022. 8. 15.

2.2 ARM Inside

 

  Atmel사의 Atmega(AVR)와 같이 다른 종류의 Processor도 있겠지만, 여기서는 ARM Processor를 기준으로 배운다. AVR은 요새 하락세이고, 대부분의 회사에서도 ARM으로 개발한다고하니 ARM을 기준으로 공부하는 것이 좋겠다.

 

  • ARM의 특징

  ARM의 기본적인 특징은 32bit RISC, Big/ Little Endian 지원, Fast Interrupt Response 지원 등이 있다. 이밖에도, 더 많은 특장점이 있겠지만, 그것은 또 나중에 다뤄봐야겠다.

 


  • ARM 프로세서 구조

 

  앞에서 배운 CPU의 간단한 구조는 위와 같았다.

 

  실제 ARM7TDMI의 구조는 위와 같다. ARM의 기본적인 구조이고, 이것을 바탕으로 더 발전된 CPU를 개발하여 제공한다. 새로운 Unit이 여럿 보인다.

 

  첫 번째, Register Bank란 32bit 크기의 범용 Register 31개, Status Register 6개를 한 데 묶은 Register 묶음을 의미한다. 임시 저장 공간으로 사용되며 특정 용도로도 사용될 수 있다.

 

  두 번째, Barrel Shifter는 Left Shift, Right Shift, Rotation 등을 수행한다. 실행할 32bit Word와 Shift 수를 입력받아서 Shift 수만큼 Shift한 32bit 결과를 출력하는 회로이다. 일종의 Shift 가속기로 산술 연산할 때 유용하게 사용된다.

 

  Control Logic에 그려진 in/output은 Control Logic이 발생시키는 Control 신호와 동작을 하기위한 input이다.

 


 

※ ARM은 MCU의 CPU(Processor) 부분인 Core만을 의미한다. 즉, MCU는 ARM 외에도 더 많은 Unit과 Module로 구성된다는 것이다.

 

※ CISC와 RISC

  Micro Processor는 CISC(Complex Instruction Set Computer)와 RISC(Reduced Instruction Set Computer)로 나뉜다. ARM은 Advanced RISC Machine의 약자로 RISC에 해당한다.

 

  CISC는 많은 수의 명령어, 데이터 형태, Addressing 기법을 가지고 있어서 Chip의 크기가 크며, 명령어가 복잡하다. 하지만, RISC는 많이 사용되는 명령어, 데이터 형태, Addressing 기법만을 사용하여 단순한 Micro Processor를 만든 것이다. RISC는 명령어 길이가 고정되어있고, 종류가 많이 없고, 적은 수의 Addressing 기법만을 가지고 있다. 그래서, RSIC는 CISC에 비해 Chip의 복잡도도 단순해지고 크기도 작고 전력소비도 적다. 하지만, 명령어가 단순하다보니 CISC에서는 한 줄로 처리할 것을 RISC는 몇 줄의 명령어로 처리해야한다. 그래서 CISC보다 Performance가 떨어진다.

 

  CISC는 Micro Programming 방식으로, RISC는 Hard Wired 방식으로 디자인된다. Hard Wired 방식은 기계어 한 줄을 실행하기 위해서 해당되는 논리회로를 구현하는 것이다. 반면에 Micro Programming은 기계어 한 줄을 실행하기 위해서 그 아래의 Micro Instruction들이 실행되는 방식이다.

 


아래 주소에서 더 자세하게 확인할 수 있습니다.

http://recipes.egloos.com/4983707

 

ARM Inside

 

recipes.egloos.com

 

'Embedded System > Embedded Recipes' 카테고리의 다른 글

2.3 ARM 동작 Mode  (7) 2022.08.15
2.3 ARM mode와 Thumb mode  (1) 2022.08.15
2.1 Microprocessor  (1) 2022.08.15
1.18 일반적인 CPU의 동작 예(Core)와 Pipe Line  (1) 2022.08.15
1.17 확장 to the CPU - How CPU works  (2) 2022.08.12

댓글