본문 바로가기

컴퓨터구조

컴퓨터 구조: CISC와 RISC

728x90
반응형

CISC : Complex Instruction Set Computer

RISC : Reduced Instruction Set Computer

CISC 프로세서는 초기 기계어를 제어 기억 장치에 저장된 마이크로 명령 루틴으로 실행하고 이를 해독기라고 정의했다.

RISC는 개발 당시 상용 프로세서와 크게 달라 기존 제품과 호환할 필요가 없었기 때문에 시스템 성능을 극대화할 수 있는 새로운 명령어 세트를 자유롭게 선택 할 수 있었다. 초기에는 빠르게 실행할 수 있는 단순 명령이 강조되었지만, 나중에 빠르게 실행할 수 있는 명령의 설계가 좋은 성능을 보장한다는 것을 알게되었다.

 

RISC 기술의 기능적인 이점에도 RISC 시스템이 CISC 시스템을 무너뜨리지 못했다.

그 이유로 3가지가 있다.

1) 이전 버전과 호환성 문제와 소프트웨어에 수십억 달러를 투자한 인텔 계열 회사들 때문이다.

2) 인텔이 CISC 아키텍처에도 RISC와 동일한 아이디어를 사용할 수 있었기 떄문이다.

3) 일반 명령어는 빠르지만 일반적이지 않은 명령어는 느리다.

 

CISC는 하나의 프로그램에 사용되는 명령어 개수를 최소화하고, 명령어 사이클 개수를 희생하는 접근법이다.

반대로 RISC는 명령어 사이클 개수를 줄이고 프로그램당 명령어 개수에 가치를 부여한다.

 

현대 컴퓨터 시스템의 주요 설계 원칙

 

1) 모든 명령어는 하드웨어가 직접 실행한다.

명령어는 마이크로 명령으로 해석하지 않는다. 해석 수준 없이 직접 하드웨어로 구현함으로써 대부분의 명령에 대해 높은 속도를 제공한다.

 

2) 어떤 명령어가 시작되었을 때 최대 효율을 발휘하는가?

최신 컴퓨터는 성능을 극대화하기 위해 많은 트릭을 사용한는데, 대부분은 가능한 1초당 많은 명령어를 시작하려고 한다.

명령이 항상 프로그램 순서에 표시되지만 일부 필요한 장치가 사용 중일 수 있기 때문에 프로그램 순서대로 항상 실행되는 것은 아니며, 프로그램 순서대로 완료될 필요도 없다.

이렇게 하려면 많은 부가 작업이 필요하지만 동시에 여러 명령을 실행하여 성능을 높일 수 있다.

 

3) 명령어는 쉽게 해석할 수 있어야 한다.

명령 실행률의 치명적인 한계는 해석된 개발 명령어에 어떤 자원이 필요할지를 결정하는 것이다.

명령어 형식의 종류가 적을 수록 좋다.

 

4) 읽기와 쓰기만 메모리를 참조해야 한다.

연산을 별도의 단계로 나누는 가장 간단한 방법 중 하나는 대부분의 명령어에 대한 오퍼랜드를 CPU 레지스터에서 가져오고 반환하도록 요구하는 것이다.

 

5) 많은 레지스터를 제공해야 한다.

메모리 액세스는 상대적으로 느리기 때문에 많은 레지스터를 제공해야 하므로 워드가 패치되면 더 이상 필요하지 않을 때까지 레지스터에 보관할 수 있다.

 

반응형