티스토리 뷰

CISC(Complex Instruction Set Computer) 방식 CPU

초기에 CPU가 원칩 형태로 등장하기 이전부터 발전해 왔던 명령어 셋을 사용한 CPU이다. x86 계열이나 M6800/M68k 등이 대표적이다. 최근에는 RISC가 대세가 됨에 따라 잘 만들어지지 않고 있다.

  • x86
    x86은 인텔에서 개발한 8086에 적용된 명령어 세트이자 그 호환 프로세서 또는 후속작을 부르는 말이다. 8086은 1978년 출시되어 40년이나 된 오래된 명령어 세트이지만 이후에 출시되는 프로세서들은 8086의 명령어 세트를 기반으로 하여 확장된 것이다. 'x64'와 대비하여 '32비트 아키텍처'의 관습적 명칭으로도 쓰인다. IBM PC 호환기종에 더 자세한 설명이 있다.

RISC(Reduced Instruction Set Computer) 방식 CPU

80년대부터 문제로  지적된 명령어셋의 복잡화와 그로 인한 CPU 설계의 복잡화를 해결하기 위해 등장한다. 간략화된 명령어 셋을 도입한 CPU이다. x86아너 8051 계열을 제외한 대부분의 현용 CPU 아키텍처가 RISC 방식 명령어를 채택하고 있다.

  • ARM
    영국 ARM Holdings 사에서 설계하는 명령어 세트와 ISA(Instruction Set Architecture)의 총칭이다. ARM이 일반 대중에게 널리 알려진 계기는 대략 2010년 이후 스마트폰 시장이 급격히 확대된 것으로, 스마트폰에서 CPU 역할을 하는 AP(Application Processor)가 널리 보급되며 인지도가 올라갔다.
  • RISC-V
    2010년부터 미국의 UC 버클리에서 개발중인 새로운 컴퓨터 CPU구조이다. 리스크 브이가 아니라 "리스크 파이브(risc-five)"라고 발음하며, V는 영문 알파벳 V가 아닌 로마 숫자의 5를 가리킨다. 단지 학술용이나 연구용이 아니라 실제 산업계에서 상용화할 것을 목표로 상업적으로 중요한 장점을 많이 포함하고 있다. 한마디로 현재 스마트폰이나 임베디드 장치의 CPU로 널리 쓰이는 ARM과 직접 경쟁하여 이를 대체할 수 있는 고성능의 자유 CPU 구조를 개발하려는 것이다. 설계된 명령어 집합 구조(ISA: Instruction Set Architecture)는 버클리 오픈 소스 라이선스로 무료로 쓸 수 있게 개방되었다. 즉 원작의 정당한 크레딧을 밝히는 조건으로 라이선스비를 지불하지 않고 누구나 자유롭게 호환성 있거나 파생된 CPU를 설계할 수 있고 이를 사용으로 쓰거나 팔 수도 있고 파생된 설계를 공개할 의무도 없다. 말하자면 BSD Unix의 BSD 라이선스의 CPU 하드웨어 판이다.
  • MIPS(Microprocessor without Interlocked Pipeline Stages)란 MIPS Technologies에서 개발한 RISC 기반의 명령어 집합 체계이다. MIPS 명령어 체계는 굉장히 깔끔하게 설계되어 있기 때문에 많은 대학교의 컴퓨터 아키텍처 과목에서 가르치고 있다.
  • POWER(Power PC)
    IBM에서 만든 마이크로프로세서 아키텍처이다. 1980년 IBM에서 발표한 RISC 아키텍처의 개념에서 나온 마이크로프로세서 아키텍처이다. 'Performance Optimization With Enhanced RISC'의 약자이다. 마이크로프로세서가 등장했음에도 불구하고, 신뢰성 등의 이유로 여전히 트랜지스터 기반 CPU를 채택하고 있던 IBM 메인프레임을 개선하기 위해 RISC 아키텍처의 개념이 등장하였고 이를 실현한 것이 POWER 마이크로아키텍처이다. POWER는 IBM의 다양한 메인프레임 아키텍처를 효과적으로 통합하려는 취지에서 개발되었으나 무려 10여년이 지난 POWER 4에 와서야 그 목적을 달성할 수 있었다. 32/64비트 POWER 마이크로아키텍처(64비트 자체는 POWER3부터 도입되었다.) 그리고 항공사 등 정수 연산에 특화된 요구에 부응하는 아마존(RS64) 마이크로아키텍처이다. 32/64비트 PowerPC 마이크로아키텍처가 모두 통합됨과 동시에 지금 같은 형태의 멀티코어 프로세서가 구현된 최초의 상용 마이크로프로세서가 POWER 4이다. 1990년 최초로 등장한 POWER1은 마이크로프로세서가 아니었지만, POWER2의 일부 계열에서 마이크로프로세서화 되었고, POWER3에 이르러서 완전한 마이크로프로세서의 형태를 갖추게 되었다. 여러 개의 칩으로 구성된 CPU인 POWER1을 마이크로프로세서화 하는 과정에서, 메인프레임 외의 분야에서도 이걸 잘 굴려서 만들어서 개발하게 된 것이 PowerPC이다.

VLIW(Very Long Instruction Word) 방식 CPU

명령어 레벨의 병렬 실행이 가능한 명령어셋을 가지고 있는 CPU이다. 대표적으로 크루소와 TI의 TMS6400 시리즈이다. 옐브루스 프로세서 그리고 아이태니엄이 있다. 현재 주요 VLIW 계열 CPU는 인텔에서 VLIW의 단점을 보완한 EPIC(Explicitly Parallel Instruction Computing)을 사용한다. 조건만 만족한다면 엄청난 효율성과 성능을 보여주어 CISC나 RISC를 대체할 새로운 구조로 등장했지만 컴파일러 설계가 난해한 점이나, 이론적으로는 빠른 구조지만 실제로는 기존 설계보다 그리 빠르지 않았다는 점들을 극복하지 못해서 자연스럽게 주류에서 밀려나게 되었다. IA-64 때문에 90년대에 처음 나온 것으로 아는 사람이 많지만 80년대 초에 예일대학교에서 나온 구조이다. 80년대에도 이미 Cydrome이라는 회사에서 VLIW 칩을 생산했지만, 4년 만에 망했다. 그래도 Cydrome의 연구내용을 이어받아 90년대에 인텔이 IA-64, 아이태니엄으로 이 구조를 밀었지만 그 또한 처참하게 실패하고 AMD64로 갈아탔다. 그러나 구조적인 우수성 덕분에 수많은 실패에도 불구하고 지속적으로 명맥을 이어가는데 현재는 군사 & 우주용 CPU로 사용되는 옐브루스 프로세서 시리즈에서 사용 중이다.

  • IA-64
    2001년에 인텔이 휴렛팩커드와 공동으로 발표한 CPU이며, 64-bit 고성능 서버를 위한 ISA인 IA-64를 적용하였다. 발매 당시부터 처절한 실패로 인해 타이타닉을 빗댄 아이타닉이라는 별명으로도 잘 알려져 있으며 넷버스트 아키텍처와 함께 2000년대 초반 인텔 제품 전략의 근간을 뒤틀어버린 양대 악의 축이기도 한다.

SIMD(Single Instruction, Multiple Data)

명령어 레벨의 병렬성이 아닌 데이터 병렬성을 구현한 CPU이다. 현재는 별도의 제품이 아닌 기존 CPU에 확장 명령어셋과 실행 유닛을 추가한 형태로 구현되어 있다. MMX, 3D-Now!, SSE가 대표적이다. 사실 SIMD를 제대로 구현하고 있는 아키텍쳐는 다름 아닌 GPU이다.

댓글