티스토리 뷰
ARM(Advanced RISC Machine; 진보된 RISC 기기)
ARM은 Advanced RISC Machine의 약자로 RISC라는 명령어 체계를 사용하는 CPU체계의 한 형식을 말한다. 저전력을 사용하도록 설계하여 ARM CPU는 모바일 시장에서 뚜렷한 강세를 보이며 주로 사물인터넷이나 모바일 안드로이드, 랩탑 등과 같은 임베디드 시스템에서 사용된다. ARM의 가장 큰 특징은 저전력과 단순화 된 CPU 명령체계(RISC 설계의 특징)이다.
ISA(Instruction Set Architecture)
개발자들은 보통 high-level language로 코드를 작성한다. 하지만 컴퓨터가 이해하기 위해서는 어셈블러(high-level language → assembly language)와 컴파일러(assembly language → machine language)를 거쳐 low-level language로 번역되어야 한다. 이렇게 low-level language로 번역된 후에는 하드웨어에게 명령을 내려줘야 하는데 이때 소프트웨어와 하드웨어 사이를 연결해 주는 것이 ISA이다. 즉, 소프트웨어와 하드웨어가 서로 통신할 수 있게 해주는 명령어들의 집합이다.
Micro Architecture는 Micro Processor 가 사용하는 명령어 처리 방식을 말한다. Micro Processor 은 CPU를 의미하는데 과거와 비교했을 때 상대적으로 사이즈가 작아져서 Micro가 붙었다고 한다. 즉, Micro Architecture은 CPU Architecture를 의미한다.
CPU Architecture의 종류로는 CISC와 RISC가 있다.
CISC (Complex Instruction Set Computer)
CISC는 Micro processor에게 명령을 내리는데 필요한 모든 명령어 세트를 갖추고 있는 Processor이다. 따라서 복잡하고 기능이 많은 명령어로 구성되어 있다.
복합적이고 기능이 많기 때문에 하위 호완성이 좋다는 장점이 있다. 따라서 호환성이 절대적으로 필요한 PC환경에서는 CISC를 주로 사용한다. 하지만 트랜지스터 집적에 있어서 효율성이 떨어지기 때문에 성능 향상을 방해하는 요인이 될 수 있으며 전력 소모가 크고, 속도가 느리고, 가격이 비싸다는 단점이 있다.
다양한 명령어들을 포함하고 있어 일반적으로 우리가 사용하는 범용 컴퓨터의 CPU로 많이 사용된다.
RISC(Reduced Instruction Set Computer)
CISC 내부에 갖추어진 모든 명령어들 중 불과 20%에 해당하는 명령어들 만이 전체 80% 이상의 일을 처리한다. 따라서 CISC와 같이 필요한 모든 명령어 세트를 갖고 있는 것은 비효율적일 수 있다. 이를 극복하기위해 등장한 것이 RISC이다.
RISC란 적은 수의 명령어를 수행하도록 설계된 마이크로 프로세서이다. 복잡한 명령어를 제거하여 사용빈도가 높은 명령어 위주로 처리속도를 향상한 프로세서이다. 컴퓨터의 실행 속도를 높이기 위해 복잡한 처리는 소프트웨어에게 맡기는 방법을 채택하였다. ARM 계열의 프로세서가 RISC 프로세서이다. 즉, RISC는 CPU(중앙처리장치)의 명령어를 최소화하여 단순하게 제작된 프로세서이다.
RISC는 적은 수의 명령어들(사용 빈도가 높은 20%의 명령어들)로 구성된 Processor이기 때문에 더 빠른 속도로 동작할 수 있으며 단순하고, 전력소모가 적고, 가격도 저렴하다는 장점이 있다. 하지만, 하드웨어가 간단한 대신 소프트웨어가 복잡해졌으며 하위 호환성이 부족하다는 단점이 있다.
RISC 구조는 파이프라인 중첩이 가능해서 같은 수의 명령어에 대해 적은 Clock으로 처리가 가능하며 발열과 전력 소모도 줄일 수 있따. 따라서 임베디드 프로세서에서는 RISC 구조를 많이 사용한다. (MIPS, ARM)
ARM Processor
일반적으로 프로세서(Processor)란 이론적으로 메모리에 저장된 명령어들을 실행하는 유한 상태 오토마톤(Finite-State Automaton)을 의미한다. 시스템의 상태는 프로세서에 있는 레지스터의 값들과 메모리에 저장된 값들에 의해 결정된다. 각각의 명령어는 이들의 상태변화를 정의하며 또한 다음번에 실행될 명령어를 결정한다.
1990년 영국에서 설립된 ARM사의 ARM 프로세서는 기존의 많은 프로세서의 특징들을 고려하여 설계되었다. ARM 프로세서는 전력 소모를 줄여, 배터리로 동작할 수 있게 하려고 작은 다이(die) 사이즈로 설계되었는데, 이러한 특징은 모바일 기기나 PDA와 같은 임베디드 시스템에 가장 중점이 되는 필수 요구사항이기도 한다.
ARM은 RISC(Reduced Instruction Set Computer) 아키텍처를 기반으로 하나, ARM 코어는 주요 애플리케이션이 임베디드 시스템에 국한되어 있으므로 순수한 RISC 아키텍처를 채택하고 있지는 않다. 오늘날 시스템의 핵심 요소는 프로세서 그 자체의 속도가 아니라, 전체적으로 효율적인 시스템 성능 및 전력 소모에 근원을 두고 있기 때문이다.
* Processor?
프로세서 또는 CPU는 제어장치, 연산 장치, 레지스터 그리고 데이터 버스로 구성된 디지털 시스템의 핵심 부분으로 프로그램을 기억 장치로 부터 읽어 연산 처리, 비교처리, 데이터 전송, 편집, 변환, 테스트와 분기 등의 데이터를 처리하고 각종 장치를 구동하는 역할을 한다.
* 정리
✔ 임베디드 기기에 주로 사용되는 32bit 프로세서이다.
✔ ARM 코어는 RISC 아키텍처를 사용한다.
✔ 전력 소모를 줄여, 배터리로 동작할 수 있도록 하기위해 작은 다이(Die) 사이즈로 설계하며 모바일 기기 또는 IoT 기기에 사용되기에 적합한 특징이 된다.
'Study > CS' 카테고리의 다른 글
[데이터베이스] 인덱스(Index) (0) | 2022.07.17 |
---|---|
[데이터베이스] SQL Injection (0) | 2022.07.09 |
[네트워크] TLS/SSL handshake (0) | 2022.07.03 |
[네트워크] HTTP & HTTPS (0) | 2022.07.02 |
[네트워크] 대칭키 공개키 (0) | 2022.06.26 |
- Total
- Today
- Yesterday
- 파이썬
- 완전탐색
- 자료구조와알고리즘 23강
- 코드업 기초
- 리스트 복사
- 데이터베이스
- SW
- 리스트2
- 리스트함축
- 정렬
- 프로세스 주소공간
- CS 스터디
- https
- 보험
- 스터디
- 운영체제
- 리스트
- It
- 네트워크
- Greedy sort
- CS
- 연결리스트활용
- 자바
- CS.
- 알고리즘
- 이진탐색
- 자료구조
- 이차 리스트
- 프로그래머스강의
- 프로그래머스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | |
7 | 8 | 9 | 10 | 11 | 12 | 13 |
14 | 15 | 16 | 17 | 18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 |
28 | 29 | 30 |