나무모에 미러 (일반/밝은 화면)
최근 수정 시각 : 2026-02-24 00:54:22

VLIW


<bgcolor=#96834a> 명령어 집합
CISC AMD64x86 · M68K · 68xx · Z80 · 8080 · MOS 65xx · VAX
RISC Arm ARM · RISC-V · MIPS · DEC Alpha · POWER PowerPC · CELL-BE
LoongArch · OpenRISC · PA-RISC · SPARC · Blackfin · SuperH · AVR32 AVR
VLIW
EPIC
E2K · IA-64 · Crusoe

1. 개요2. 상세3. 장점4. 단점5. 적용 제품6. EPIC

1. 개요

Very Long Instruction Word

1980년 전후로 예일대에 재학 중이던 조셉 피셔(Joseph Fisher)가 박사학위 취득을 위해 발표한 CPU 명령어 처리 기법이다.

2. 상세

병렬화된 컴퓨팅 기술에 관한 개념은 무려 1946년 앨런 튜링 등의 학자들이 연구한 수평적 프로그래밍 개념으로부터 기원한다. 명령어를 일반적인 튜링 머신처럼 선형으로 처리하는 것보다 서로간에 종속성이 없는 명령어들을 한꺼번에 처리하면 더욱 효율적일 것이라는 아이디어를 시작으로 명령 처리의 병렬화에 관한 연구가 이루어졌고 그 결과 중 하나가 VLIW다.

즉 CISC 방식의 복잡한 명령어를 내부적으로 쪼개어 일정한 명령어 크기를 갖도록 가공해 명령어 처리의 효율성을 높이는 것이 RISC라면 VLIW는 그냥 처음부터 디코드 유닛에 한꺼번에 종속성이 없는 여러 명령어를 때려박고 그걸 한번에 처리하여 효율성을 높이는 방식이다. VLIW 방식의 디코딩을 하려면 처음부터 들어오는 명령어들이 어느 정도 일정한 크기와 적은 종속성을 가지고 있다고 가정하고 소프트웨어적으로 명령어를 가공해 주어야 한다.

만일 상기한 이상적인 상태가 주어진다면 VLIW 방식의 명령어 디코딩은 비교적 단순한 하드웨어로 동일 공정, 유사한 갯수의 트렌지스터를 가진 CISC나 RISC를 뛰어넘는 굉장한 명령어 처리 효율을 낼 수 있다. 그러나 하술할 단점들로 인해 1980년대~90년대를 거치며 많은 VLIW 방식으로 명령어를 처리하는 중앙처리장치들이 만들어졌음에도 대부분 혹평을 들었다. 이후 하드웨어적으로 명령어를 최적화하고 코드 재배치를 하여 병렬로 실행하는 슈퍼스칼라와 여러 데이터를 묶어 한번에 처리하는 SIMD 그리고 비순차적 실행 등이 도입되면서 CISC나 RISC도 VLIW 방식을 어느정도 흉내내게 되고 소프트웨어 생산성이 떨어진다는 단점이 현대 컴퓨터 시장에서 더 크게 다가오게 되고 ASIC, FPGA 만큼의 효율도 안나오면서 일반적인 목적의 CPU 시장에서 사장되고 군사 & 우주용 CPU나 전자계산기 등 특정 목적의 CPU 시장에서 근근히 살아남고 있다.

3. 장점

4. 단점

5. 적용 제품

6. EPIC

Explicitly Parallel Instruction Computing

EPIC은 Explicitly Parallel Instruction Computing의 약자로, 휴렛 팩커드와 인텔에서 개발한 VLIW의 개량형이다.
VLIW는 명령어의 병렬화와 같은 처리를 모두 컴파일러에게 전담시켰고 프로세서는 이 명령어를 받아다 그대로 실행하는 구조를 가진 스케줄된 파이프라인에 묶여져 있기 때문에 파이프라인의 깊이나 실행 유닛의 결합을 바꾸는 것이 불가능하거나, 바꾸기 위해서는 코드를 다시 컴파일 해야 한다는 단점이 있다.

EPIC은 이러한 문제를 해결하기 위해 컴파일러가 병렬화가 가능한 명령어를 번들링해 프로세서가 이 힌트를 가지고 명령어를 병렬 처리 (ILP) 하였으며 투기적 실행과 분기 예측을 위한 명령어와 레지스터 프리페칭 관련 기능 등이 추가되어 명령어를 받아다 그대로 실행하는 딱딱한 VLIW구조를 탈피해 약간의 추상화적인 특성이 도입된 유연한 구조를 가진다.

인텔 아이테니엄 시리즈가 최초로 EPIC을 채택했고 옐브루스 프로세서 등 현대의 VLIW들이 EPIC과 유사한 구조를 영향 받았다고 한다.