CISC

kaiseong·2022년 3월 1일
0

호기심

목록 보기
2/4
post-thumbnail

CSIC(Complex Instruction Set Computer)

CISC는 복잡한 명령어 집합을 갖는 CPU 구조(아키텍처)를 말합니다.
명령어가 복잡하여 해석에 시간이 오래 걸리고 회로도 또한 복잡합니다.


특징

  1. 많은 수의 명령어가 있지만 적은 수의 명령어만 주로 사용됩니다.
  2. 각각의 명령어가 프로세싱 성능을 극대화하도록 설계되어 명령어 길이가 가변적입니다.
  3. 따라서 데이터나 주소값이 필요하면 명령어 길이를 늘려 해결합니다.(인덱스 어드레싱의 오프셋도 명령 데이터의 길이에 맞추어 바뀌는 것이 많다.)
  4. 하나의 명령어를 수행하는 처리가 복잡하여 마이크로 프로그램 방식을 채택합니다.
  5. 비파이프라이닝 방식입니다.

장점

  1. 적은 지시로 많은 작업 처리
    • 하나의 마이크로코드에 많은 명령어를 담아내므로 코드의 밀도가 높아 프로그램 용량을 줄일 수 있다. 과거엔 메모리가 크지 않아서 CISC가 유용했습니다.
  2. 생산성이 높다.(마이크로코드 작성이 쉽다)
    • RISC에 비해 작성자가 매우 편리하다
    예시로 CISC는 12=4*3와 같이 하나의 코드로 해결가능하지만 RISC는 2+2+2+2+2+2의 코드를 입력해야한다.
  3. 호환성이 좋다.(그렇기에 컴퓨터(PC)에서 많이 쓴다)
    • CPU 구조가 바뀌어도 후속 CPU 에서 명령어를 지원한다면 호환이 된다.

단점

  1. 하나의 명령어가 복잡하여 명령어 해석(디코딩)에 시간이 오래 걸리며, 해석에 필요한 회로가 복잡하여 설계가 힘들다.
  2. 명령어의 길이가 달라 여러 개의 명령(병렬) 처리는 어렵다.
  3. RISC에 비해 많은 전력이 소모되고, 속도가 느리며 비싸다.

용어

  • 마이크로 코드(microcode) or 마이크로 프로그램
    CPU 내부에 존재하는 기계어와 관련된 프로그램입니다.
    CPU의 기계어의 명령을 더 작고 낮은 레벨의 명령어의 조합으로 구현하는 것을 마이크로 코드 또는 마이크로프로그램이라 합니다.
    이용자가 변경하는 일이 거의 없어 HW 일부로 간주됩니다.

참조
위키백과
skagh님의 티스토리
관련 pdf

profile
애옹이 형

0개의 댓글