RISC CISC 차이 CPU 아키텍쳐 설계 방식에 대한 상식 한스푼

CPU 구매 할 때 한번은 RISC CISC 용어에 대해 들어보셨을텐데요. 이 단어들은 CPU 설계하는 다양한 방법 중 대표적인 방식이며 CPU 제조사들은 하나의 방식을 택해 CPU를 설계하게 됩니다.

스마트폰 AP의 ARM 프로세서는 RISC 방식을 체택하고 있고 일반 PC의 x86 프로세서는 CISC 방식을 사용하고 있습니다.

CPU 명령어 집합

CPU 설계에서 가장 기본적으로 다뤄야 할 주제 중 하나는 명령어 집합이라는 개념입니다.

명령어 세트라고도 불리며, CPU가 기본적으로 수행하는 작업 세트입니다.

이는 물리적인 하드웨어 수준에서 CPU에 코딩된 작업으로 CPU 설계 방식에 따라 몇 개에서 수천 개의 명령어가 포함되어 있습니다.

CPU에서 다른 하드웨어(하드디스크, 메모리, GPU 등)에 내리는 명령을 말하는데, 이를 통해 PC가 작동하고 원하는 기능들이 사용 가능해집니다.

예를 들어 대부분의 CPU에는 ‘MOVE’라는 명령어를 가지고 있습니다. 이 명령어는 저장 공간에서 메모리로 데이터를 이동시키는 작업을 합니다.

이렇게 컴퓨터 사용에 필요한 모든 기능에 대한 명령어들이 모여 있는 것을 명령어 집합 또는 명령어 세트라고 하며, 하드뒈어 CPU는 명령어 집합에 정의되지 않은 작업은 할 수가 없습니다.

RISC-CISC-차이점
RISC(간단하고 효율적인 설계) – CISC(복잡하고 다양한 기능의 설계)

CPU 작동 방식

CPU는 무수히 많고 복잡한 전기 회로의 구성입니다. 이 전기 회로를 통해 CPU 명령어 세트가 실행되도록 설계되어 있는데요.

CPU가 특정 작업을 수행하려면 해당 작업에 사용되는 회로에 전기 신호를 보내고 이 회로와 연결된 또 다른 여러 회로들이 서로 엉켜 작업을 실행합니다.

프로그램 실행 등 우리가 흔히 하는 작업에는 초당 수백만 개의 전기 신호를 보내어 실행되게 되는데요.

여기서 RISC CISC 개념이 사용되게 됩니다.

RISC CISC – RISC란 무엇인가?

RISC 단어는 영어로 Reduced Instruction Set Computer로 직역하면 축소된 명령 집합 컴퓨터라는 의미를 가집니다.

그 말은 CPU가 명령어를 수행할 때 단순하게 처리합니다. 아무리 복잡한 명령도 단순하게 모듈화 시켜 CPU의 명령어 집합이 단순하고 RISC로 설계된 CPU는 하드웨어적으로 구현하는데 더 저렴한 비용이 듭니다.

  • RISC CPU는 각 명령어를 연속적인 명령이 아닌 단일 사이클로 처리
  • RISC CPU는 레지스터에 저장된 데이터에 대한 연산만 수행
  • RISC CPU 명령어는 간단하여 별도의 명령어 단순 처리 계층이 없습니다.
  • RISC CPU는 다중 처리 작업 일부를 동시에 처리하는 파이프라인을 지원 – 이로 인해 클럭 속도가 높고 처리 속도가 매우 빠릅니다.

RISC 특징을 요약해 보면 명령어가 간단하고 클럭 속도가 빠르며 파이프라인 구조가 효율적이라 한 사이클에서 명령어를 실행할 수 있습니다. RISC 방식 CPU 제조사로 대표적으로 퀄컴 스냅드래곤 AP를 들 수 있습니다.

RISC CISC – CISC란 무엇인가?

CISC 설계 방식 CPU는 대부분의 핵심 사양이 RISC와 반대의 성격을 가지고 있습니다. 일반 데스크탑 CPU의 경우에는 CISC 기반 CPU를 사용하고 있습니다.

  • CISC CPU는 명령어 실행 체계가 복잡하기 때문에 단순 명령 변환이 필요한 경우 별도의 단순화 계층이 필요합니다.
  • CISC CPU는 명령어 실행 시 여러번의 CPU 명령 사이클이 필요할 수 있습니다.
  • CISC CPU는 효율성을 강조하는 파이프라인의 기능이 반영되기 힘든 구조입니다.

CISC CPU의 특징을 요약해 보면 하나의 복잡한 명령어로 많은 연산을 수행할 수 있으나, 명령어 완료까지 여러 사이클을 반복해야 하며, CPU에 더 많고 복잡한 회로가 필요합니다.

RISC CISC 차이점

RISC는 간단한 명령어로 단 하나의 연산만 수행하고 CPU의 1 사이클 내에서 이를 실행합니다. 반면 CISC 방식은 명령어에 많은 연산을 압축하고 여러 사이클 자원을 사용합니다.

RISC와 달리 CISC 명령어는 RAM 자원을 활용해 실행할 수 있습니다. RISC에서는 이를 CPU 자체 레지스터를 이용해 처리합니다.

정리해 보면, CISC CPU는 많고 복잡한 명령을 내장하고 있어 소프트웨어 개발시 프로그램 코드 양이 RISC 방식보다 적어집니다.

반면 RISC 방식 CPU는 최소한의 명령만 실행하고 나머지 부가적인 명령은 소프트웨어에서 구현되도록 하기에 CISC 기반 CPU보다 소스 코드 줄이 많아지게 됩니다.

RISC CISC 어느 방식이 좋다는 할 수 없습니다.

요즘에는 두 방식에서 장점을 모아 설계한 CPU들이 출시되고 있는데요. 예를 들어 AMD는 X86의 CISC 방식 CPU를 사용하지만 복잡한 명령어를 간단히 만드는 마이크로코드를 내장하고 있어 하이브리드방식 설계를 보여주기도 합니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다