CISC와 비교했을 때 RISC 방식의 마이크로프로세서의 특징은?
- CISC(complex instruction set computer)
한 명령어로 많은 일을 하도록 설계한 방식으로, 마이크로프로그래밍을 통해 사용자가 작성하는 고급언어에 각각 하나씩 기계어를 대응시킨 회로로 구성된, 중앙처리장치의 한 종류이다. CPU는 컴퓨터 시스템의 핵심 부분으로서 각종 연산을 수행하며 기억장치에 저장된 명령을 읽어서 수행하는 역할을 한다.
초기의 컴퓨터는 하드웨어를 최소화하기 위해 작고 간단한 명령어 집합을 사용하였다. 이후 고급 언어를 사용하면서 기계어로의 번역 과정을 단순화하면서 전반적인 성능을 향상시키는 과정에서 명령어 집합이 복잡해졌다. CISC는 마이크로프로그래밍을 통해 고급 언어에 각기 하나씩의 기계어를 대응시킴으로써 명령어 집합이 커지고, 가변 길이의 다양한 명령어를 가진다. 그러나 주로 쓰이는 명령어는 일부에 불과하고, 구조가 복잡하므로 가격이 비싸고 전력소모도 크다는 단점이 있다.
따라서 자주 쓰이지 않는 명령어들은 소프트웨어로 구현하고 자주 쓰이는 명령어만 간략화하여 CPU의 성능을 높인 RISC(reduced instruction set computer)가 고안되었다. 인텔의 x86 계열(Core, Xeon 등) 프로세서는 대표적인 CISC 아키텍처이며, 현재까지 PC·서버 시장에서 주력으로 사용되고 있다.
- RISC(reduced instruction set computer)
단순한 명령어를 빠르게 여러 번 실행하도록 설계한 방식으로, 컴퓨터의 실행속도를 높이기 위해 복잡한 처리는 소프트웨어에게 맡기는 방법을 채택하여, 명령세트를 축소 설계한 컴퓨터를 말한다. CISC란 소프트웨어 특히, 컴파일러 작성을 쉽게 하기 위해 하드웨어화할 수 있는 것은 가능한 모두 하드웨어에게 맡긴다는 원칙 아래 설계된 컴퓨터이다. 반면 RISC는 실행 속도를 높이기 위해 가능한 한 복잡한 처리는 소프트웨어에게 맡기는 방법을 택한 컴퓨터이다.
RISC의 대표적인 아키텍처로는 ARM이 있으며, 스마트폰·태블릿의 AP(Application Processor)에 폭넓게 적용되고 있다. 특히 Apple은 2020년부터 M1·M2·M3 시리즈(Apple Silicon)에 자체 설계한 ARM 기반 RISC 프로세서를 탑재하여 PC 시장에서도 RISC 아키텍처의 영역을 크게 넓혔다. 또한 오픈소스 명령어 집합인 RISC-V가 IoT·임베디드·AI 가속기 분야에서 새로운 대안으로 빠르게 성장하고 있다.
- CISC와 비교했을 때 RISC의 특징
RISC의 특징을 CISC와 비교하여 알아보면 다음과 같다.
첫째, 명령의 대부분은 1머신 사이클에 실행되고, 명령길이는 고정이며, 명령세트는 단순한 것으로 구성되어 있는데, 가령 메모리에 대한 액세스는 Load/Store 명령으로 한정되어 있다.
둘째, 어드레싱 모드가 적으며, 마이크로 프로그램에 의한 제어를 줄이고, 와이어드 로직을 많이 이용하고 있다. 반면에 레지스터 수가 많으며 마이크로 프로그램을 저장하는 칩의 공간에 레지스터를 배치한다.
셋째, 어셈블러 코드를 읽기 어려울 뿐 아니라 파이프라인을 효과적으로 사용하기 위해서 일부 어셈블러 코드를 시계열로 나열하지 않은 부분이 존재하여 컴파일러의 최적화가 필요하다. 최적화를 하지 않으면 파이프라인을 유효하게 이용할 수 없고, RISC를 사용하는 의미가 없어진다.
커뮤니티 Q&A
위 이론과 관련된 게시글이에요.
이해가 안 되거나 궁금한 점이 있다면 커뮤니티에 질문해 보세요!
게시글 작성하기