제6장 VLSI 설계 방법 정보통신공학과 교수 이종복 2001.10.29
6.1 VLSI의 설계 특성 Structured Design Top-down design : Bottom-up design : 뜻 : System -> Module->Sub Module 방식 : divide and conquer Bottom-up design : 뜻 : 공정->소자->논리게이트->서브시스템->칩 예 : DRAM
VLSI에서 강조되는 구조적 설계원칙 정규성(Regularity) : 유사한 블록을 반복하여 사용된 설계 모듈성(Modularity) : 각 블록을 연결가능하도록 설계 국지성(Locality) : 한 셀, 한 모듈의 동작이 전제 회로의 동작에 영향을 미치지 않도록 함.
VLSI 제작과정 Front-end design : 처음~논리회로가 만들어지는 점까지의 단계 Back-end design : 논리회로~마스크 설계가 이루어지는 점
6.2 Architecture Design 6.2.1 Algorithm Design 뜻 : 하드웨어로 구현하고자 하는 알고리즘의 행동(behavior)을 표현하고 동작을 확인함. HDL 알고리즘 표현에 유리 시뮬레이션 속도가 늦다. 동시 수행되는 디지털 시스템을 지원 C 순차적으로 수행되므로 동시 수행 불가. 시뮬레이션 속도가 빠르다.
6.2.2 레지스터 전송 표현 뜻 : 알고리즘에 있는 논리 및 연산동작을 각 클럭에 맞춰 어떻게 동작할 것인지를 기술
블록 다이아그람 : 레지스터 전송 표현으로 많이 사용 적절한 표현 방법이 아니며 직관적 이해가 어려움.
6.2.3 ASM (Algorithmic State Machine)차트 뜻 :하드웨어의 동작을 플로우차트와 유사하게 나타낸 것.
6.2.4 Hardware Description Language 사용 언어 C : 시뮬레이션 가능, 합성 불가 VHDL (VHSIC Hardware Description Language) Verilog
6.2.5 Data Path 및 Controller Data Path Controller 뜻 :데이터를 가공하는 부분 예 : 논리연산기, 레지스터 Controller 뜻 : Data path를 제어하는 신호를 만들어내는 부분 예 : FSM으로 설계됨.
Data Path와 Control Path의 분할
6.3 논리설계 제어기 구현 방법 1) 순차논리회로 방식 장점 : 작고 빠른 제어기 구현 가능 단점 : 회로 설계와 수정이 어려움.
2) 마이크로 프로그래밍 방식 뜻 : 입력신호와 마이크로 프로그램 카운터를 ROM의 어드레스로 입력하여 제어신호를 얻는 방법 장점 : 복잡한 제어신호가 필요한 마이크로 프로세서의 제어기로 많이 사용됨 단점 : 동작 속도가 느림
6.4 Layout Design 6.4.1 Full Custom Design(완전주문형) 뜻 : 트랜지스터와 설계 패턴을 하나씩 그려나가는 방식 장점 : 칩 면적이 작고 동작 속도가 빠름. 단점 : 설계 기간, 비용의 부담이 큼. 대상 : 메모리, 마이크로 프로세서와 같은 대량 생산용
6.4.2 Semi Custom (반주문형) 뜻 : 미리 레이아웃 설계와 기능 및 성능의 시험이 끝난 셀들을 사용하는 방법 장점 : 시간과 비용을 줄임 단점 : 칩 면적이 커지므로 소량 다품종 생산 종류 Standard Cell Gate Array
1. Standard Cell (표준셀) 뜻 : 모든 셀들의 높이를 같이하여 옆에 붙일 수 있게 설계하여 데이타베이스를 구축함. 이후로는 셀을 불러서 연결만 함.
용어 장점 channel(채널) : 셀과 셀 사이의 상호연결을 위한 공간 Feedthrough : 셀과 셀 간격을 벌인 연결 통로 장점 레이아웃 기간 단축 및 오류 감소 마스크 제작 및 공정시간은 동일 다양한 기능 블록 내장 가능
2. Gate Array (게이트 어레이) 뜻 : 기본셀과 입출력 셀을 배치한 구조에 금속 배선 및 상호 연결 공정만 하여 논리 기능을 바꿀 수 있게 한 것. 구조 전통적 방법 : 소자 배치 영역과 소자 연결에 필요한 채널이 따로 존재 Sea Of Gates, SOG : 소자만 배치하고 남는 부분에 상호 배선을 수행 장점 : RAM, ROM등 집적 용이
Embedded Array : Full custom design된 RAM, microprocessor를 내장한 Gate Array.
Gate Array의 기본 셀 구조
장점 : 단점 : 설계, 공정, 조립의 비용과 시간 단축 ASIC 설계에 가장 많이 사용 설계, 공정, 조립의 비용과 시간 단축 ASIC 설계에 가장 많이 사용 제품의 수명이 짧고 빠른 시간내 제품 출하 가능 단점 : 낭비되는 칩면적이 많음. 대량 생산에 불리 게이트별 성능의 최적화가 어려움
6.4.3 FPLD(Field Programmable Logic Device) 뜻 : 이미 완성된 칩을 사용자가 직접 프로그램하여 사용할 수 있는 소자 종류 PLD : PLA,PAL FPGA
1. PLA (Programmable Logic Array) 뜻 : Sum of products 꼴로 표현된 디지털 회로를 구현한 구조 방법 : AND와 OR 구조의 트랜지스터를 선택적으로 정해진 위치에 삽입 프로그래밍 : VLSI 제조 공정에서 마스크 패턴을 바꿔야 변경 가능함
PLD (Programmable Logic Device) 뜻 : PLA와 같으나 칩의 프로그램을 사용자가 직접할 수 있도록 한 제품. PAL (Programmable Logic Array) 뜻 : OR 구조는 결정되어있고 AND 구조의 연결을 변경한 것
장점 : 작은 논리회로를 짧은 시간에 직접 제작 단점 : 프로그램 방법 퓨즈를 이용하여 불필요한 연결을 끊는 방법(일회용) EPROM, EEPROM에서 사용되는 구조를 사용(자외선, 재프로그램 가능) 장점 : 작은 논리회로를 짧은 시간에 직접 제작 단점 : 설계 제약 많음 칩 면적 낭비많음
CPLD(Complex PLD) 뜻 : 칩 내에 여러 개의 PLD를 배치하고 PLD 간의 연결도 프로그램하도록 한 것
2. FPGA 뜻 : 사용자가 직접 프로그램하여 사용(PLD) + 소자의 배치와 배선(Gate Array) 프로그램 방법에 의한 분류 일회용 프로그램 : Antifuse 사용 재 프로그램 : EPROM, EEPROM : 메모리에 저장된 값이 nMOS pass transistor를 on MUX 입력을 선택 SRAM : 전원을 끄면 설계자료가 사라짐
6.5 VLSI의 경제적 구현 생산자와 사용자의 관계에 따른 반도체 제품의 분류 1) Standard Product : 뜻 : 다수의 생산자가 불특정 다수의 사용자를 대상으로 생산함. 예 : TTL, DRAM, SRAM 2) ASSP : 뜻 : 특정 영역에서 많은 사용자들이 공통적으로 사용하는 제품 예 : 가전제품용 IC
3) ASIC 뜻 : 단일 사용자가 자신이 설계하는 제품의 일부 기능을 IC로 설계하여 사용하는 경우 예: 전자제품, 자동차,통신기기