표준셀

세 개의 금속층(유전체가 제거됨)이 있는 작은 표준 셀의 렌더링. 모래색 구조는 금속 상호 연결이며, 수직 기둥은 일반적으로 텅스텐 플러그인 접점이다. 붉은색 구조는 폴리실리콘 게이트이며, 하단의 고체는 결정 실리콘 벌크이다. 반도체 설계에서 **표준 셀 방법론**(standard-cell methodology)은 대부분 디지털 논리 기능을 가진 ASIC를 설계하는 방법이다. 표준 셀 방법론은 VLSI 레이아웃이 추상적인 논리 표현(예: NAND 게이트)으로 캡슐화되는 설계 추상화의 한 예이다. 표준 셀이 속하는 일반적인 클래스인 셀 기반 방법론은 한 설계자가 디지털 설계의 상위 수준(논리적 기능) 측면에 집중할 수 있도록 하는 반면, 다른 설계자는 구현(물리적) 측면에 집중할 수 있도록 한다. 반도체 제조 발전과 함께 표준 셀 방법론은 설계자들이 ASIC을 비교적 단순한 단일 기능 IC(수천 개의 게이트)에서 복잡한 수백만 개의 게이트 SoC 장치로 확장하는 데 도움을 주었다.
# 표준 셀의 구성
표준 셀은 불 논리 기능(예: AND, OR, XOR, XNOR, 인버터) 또는 저장 기능(플립플롭 또는 래치)을 제공하는 트랜지스터 및 상호 연결 구조의 그룹이다.A. Kahng et al.: "VLSI Physical Design: From Graph Partitioning to Timing Closure", Springer (2022), 10.1007/978-3-030-96415-3, , pp. 11-13. 가장 간단한 셀은 기본 NAND, NOR, XOR 불 논리 함수를 직접적으로 표현한 것이지만, 훨씬 더 복잡한 셀(예: 2비트 가산기, 또는 멀티플렉싱된 D 입력 플립플롭)도 일반적으로 사용된다. 셀의 불 논리 함수를 논리적 뷰(logical view)라고 한다: 함수적 동작은 진리표 또는 불 논리 방정식(조합 논리용), 또는 상태 전이표(순차 논리용)의 형태로 캡처된다. 일반적으로 표준 셀의 초기 설계는 트랜지스터 수준에서 트랜지스터 넷리스트 또는 회로도 뷰의 형태로 개발된다. 넷리스트는 트랜지스터, 트랜지스터 간 연결, 외부 환경에 대한 터미널(포트)의 노드 설명이다. 회로도 뷰는 이 넷리스트 생성 프로세스를 위한 GUI를 제공하는 여러 CAD 또는 EDA 프로그램을 사용하여 생성될 수 있다. 설계자는 SPICE와 같은 추가 CAD 프로그램을 사용하여 입력 자극(전압 또는 전류 파형)을 선언한 후 회로의 시간 영역(아날로그) 응답을 계산하여 넷리스트의 전자적 동작을 시뮬레이션한다. 시뮬레이션은 넷리스트가 원하는 함수를 구현하는지 확인하고 전력 소비 또는 신호 전파 지연과 같은 다른 관련 매개변수를 예측한다. 논리적 뷰와 넷리스트 뷰는 추상적(대수적) 시뮬레이션에만 유용하고 장치 제조에는 유용하지 않으므로, 표준 셀의 물리적 표현도 설계해야 한다. 레이아웃 뷰(layout view)라고도 하는 이것은 일반적인 설계 실무에서 가장 낮은 수준의 설계 추상화이다. 제조 관점에서 표준 셀의 VLSI 레이아웃은 표준 셀의 실제 "제조 청사진"과 가장 가깝기 때문에 가장 중요한 뷰이다. 레이아웃은 트랜지스터 장치의 다양한 구조에 해당하는 기본 레이어와 트랜지스터 형태의 터미널을 연결하는 상호 연결 배선 레이어 및 비아 레이어로 구성된다. 상호 연결 배선 레이어는 일반적으로 번호가 지정되며, 각 순차 레이어 간의 특정 연결을 나타내는 특정 비아 레이어가 있다. 제조와 관련 없는 레이어는 설계 자동화 목적으로 레이아웃에 존재할 수 있지만, PNR CAD 프로그램에 명시적으로 사용되는 많은 레이어는 종종 별도의 유사한 추상 뷰에 포함된다. 추상 뷰는 종종 레이아웃보다 훨씬 적은 정보를 포함하며 Layout Extraction Format (LEF) 파일 또는 이와 동등한 것으로 인식될 수 있다. 레이아웃이 생성된 후에는 여러 일반적인 검증을 수행하기 위해 추가 CAD 도구가 자주 사용된다. 디자인 규칙 검사(DRC)는 설계가 파운드리 및 기타 레이아웃 요구 사항을 충족하는지 확인하기 위해 수행된다. 그런 다음 기생 추출 (PEX)이 수행되어 레이아웃에서 기생 속성을 가진 PEX-넷리스트를 생성한다. 그런 다음 넷리스트의 노드 연결은 레이아웃 대 회로도(LVS) 절차를 사용하여 회로도 넷리스트의 노드 연결과 비교되어 연결 모델이 동등한지 확인한다.A. Kahng et al.: "VLSI Physical Design: From Graph Partitioning to Timing Closure", Springer (2022), 10.1007/978-3-030-96415-3, , p. 9. 그런 다음 PEX-넷리스트는 더 정확한 타이밍, 전력 및 잡음 모델을 얻기 위해 (기생 속성을 포함하므로) 다시 시뮬레이션될 수 있다. 이러한 모델은 종종 시높시스 라이버티 형식으로 특성화되지만, 다른 베릴로그 형식도 사용될 수 있다. 마지막으로 강력한 PNR 도구를 사용하여 모든 것을 통합하고 상위 수준 설계 넷리스트 및 플로어 플랜에서 VLSI 레이아웃을 자동화된 방식으로 합성(생성)할 수 있다. 또한, 여러 다른 CAD 도구를 사용하여 셀 뷰 및 모델의 다른 측면을 검증할 수 있다. 그리고 다른 파일을 생성하여 표준 셀을 다른 많은 이유로 사용하는 다양한 도구를 지원할 수 있다. 이러한 모든 표준 셀 변형의 사용을 지원하기 위해 생성되는 모든 파일은 집합적으로 표준 셀 라이브러리라고 한다. 일반적인 불 논리 함수의 경우, 기능적으로 동일한 많은 다른 트랜지스터 넷리스트가 있다. 마찬가지로, 일반적인 넷리스트의 경우 넷리스트의 성능 매개변수를 충족하는 많은 다른 레이아웃이 있다. 설계자의 과제는 셀의 속도 및 전력 성능 요구 사항을 충족하면서 표준 셀 레이아웃의 제조 비용을 최소화하는 것이다(일반적으로 회로의 다이 면적을 최소화). 결과적으로 집적 회로 배치는 이 과정을 돕는 설계 도구가 있음에도 불구하고 노동 집약적인 작업이다.
# 라이브러리
표준 셀 라이브러리는 AND, OR, INVERT, 플립플롭, 래치, 버퍼와 같은 저수준 전자 논리 함수의 모음이다. 이러한 셀은 고정 높이, 가변 폭의 풀 커스텀 셀로 구현된다. 이러한 라이브러리의 핵심 특징은 고정 높이로 되어 있어 행으로 정렬할 수 있어 자동화된 디지털 레이아웃 프로세스가 용이하다는 것이다. 셀은 일반적으로 지연 및 면적을 최소화하는 최적화된 풀 커스텀 레이아웃이다. 일반적인 표준 셀 라이브러리는 두 가지 주요 구성 요소로 구성된다. # 라이브러리 데이터베이스 - 레이아웃, 회로도, 기호, 추상 및 기타 논리적 또는 시뮬레이션 뷰를 포함한 여러 뷰로 구성된다. 여기에서 Cadence LEF 형식 및 Synopsys Milkyway 형식과 같은 다양한 형식으로 정보를 캡처할 수 있으며, 자동화된 "배치 및 배선" 도구에 충분한 셀 레이아웃에 대한 축소된 정보를 포함한다. # 타이밍 요약 - 일반적으로 Liberty 형식으로, 각 셀에 대한 기능 정의, 타이밍, 전력 및 잡음 정보를 제공한다. 표준 셀 라이브러리에는 다음과 같은 추가 구성 요소도 포함될 수 있다.D. Jansen et al. "The Electronic Design Automation Handbook", Springer (2003), 10.1007/978-0-387-73543-6, , pp. 398-420. * 셀의 전체 레이아웃 * 셀의 SPICE 모델 * 베릴로그 모델 또는 VHDL-VITAL 모델 * 기생 추출 모델 * DRC 규칙 덱 예를 들어, OR, INVERT 및 AND 게이트로 구성될 수 있는 간단한 XOR 논리 게이트가 있다.
# 표준 셀의 응용
엄밀히 말하면, 2입력 NAND 또는 NOR 함수는 임의의 불 논리 함수 집합을 구성하는 데 충분하다. 그러나 현대 ASIC 설계에서는 상당한 라이브러리(또는 라이브러리)의 셀로 표준 셀 방법론이 실행된다. 라이브러리는 일반적으로 동일한 논리 함수의 여러 구현을 포함하며, 면적과 속도가 다르다. 이러한 다양성은 자동화된 합성, 배치 및 배선(SPR) 도구의 효율성을 향상시킨다. 간접적으로 설계자에게 구현 트레이드오프(면적 대 속도 대 전력 소비)를 수행할 수 있는 더 큰 자유를 제공한다. 표준 셀 설명의 완전한 그룹을 일반적으로 기술 라이브러리라고 한다. 상용 EDA 도구는 기술 라이브러리를 사용하여 디지털 ASIC의 합성, 배치 및 배선을 자동화한다. 기술 라이브러리는 파운드리 운영자가 개발 및 배포한다. 라이브러리는 (설계 넷리스트 형식과 함께) SPR 프로세스의 다른 단계 간에 설계 정보를 교환하기 위한 기반이 된다.
## 합성
기술 라이브러리의 셀 논리적 뷰를 사용하여 논리 합성 도구는 ASIC의 RTL 설명을 기술 종속적인 넷리스트로 수학적으로 변환하는 프로세스를 수행한다. 이 프로세스는 소프트웨어 컴파일러가 상위 수준 C 프로그램 목록을 프로세서 종속적인 어셈블리 언어 목록으로 변환하는 것과 유사하다. 넷리스트는 논리적 뷰 수준에서 ASIC 설계의 표준 셀 표현이다. 표준 셀 라이브러리 게이트의 인스턴스와 게이트 간 포트 연결로 구성된다. 적절한 합성 기법은 합성된 넷리스트와 원래 RTL 설명 간의 수학적 등가성을 보장한다. 넷리스트는 매핑되지 않은 RTL 문과 선언을 포함하지 않는다. 고수준 합성 도구는 C-수준 모델(SystemC, ANSI C/C++) 설명을 기술 종속적인 넷리스트로 변환하는 프로세스를 수행한다.
## 배치
배치 도구는 ASIC의 물리적 구현을 시작한다. ASIC 설계자가 제공한 2차원 플로어 플랜을 사용하여 배치 도구는 넷리스트의 각 게이트 위치를 할당한다. 결과로 생성된 배치 게이트 넷리스트에는 넷리스트의 각 표준 셀의 물리적 위치가 포함되어 있지만 게이트의 터미널이 서로 어떻게 연결되는지에 대한 추상적인 설명이 유지된다. 일반적으로 표준 셀은 최소한 한 차원에서 일정한 크기를 가지므로 집적 회로에 행으로 정렬할 수 있다. 칩은 엄청난 수의 행(각 행 옆에 전원 및 접지가 흐름)으로 구성되며 각 행은 실제 설계를 구성하는 다양한 셀로 채워진다. 배치 도구는 특정 규칙을 준수한다: 각 게이트는 다이 맵에서 고유한(배타적) 위치를 할당받는다. 주어진 게이트는 한 번 배치되며 다른 게이트의 위치를 점유하거나 겹칠 수 없다.
# 배선
배치된 게이트 넷리스트와 라이브러리의 레이아웃 뷰를 사용하여 배선 도구는 신호 연결 라인과 전원 공급 라인을 모두 추가한다. 완전히 배선된 물리적 넷리스트에는 합성에서 게이트 목록, 배치에서 각 게이트의 배치, 배선에서 그려진 상호 연결이 포함된다.
## DRC/LVS
DRC 및 LVS는 검증 프로세스이다. 현대적인 딥 서브마이크론(0.13 μm 이하)에서의 신뢰할 수 있는 장치 제조는 트랜지스터 간격, 금속 층 두께 및 전력 밀도 규칙을 엄격하게 준수해야 한다. DRC는 물리적 넷리스트를 "파운드리 설계 규칙"(파운드리 운영자로부터) 세트와 철저히 비교한 다음 관찰된 위반 사항을 플래그한다. LVS 프로세스는 레이아웃이 관련 회로도와 동일한 구조를 가지고 있음을 확인한다. 이는 일반적으로 레이아웃 프로세스의 마지막 단계이다. LVS 도구는 회로도 다이어그램과 레이아웃에서 추출된 뷰를 입력으로 받는다. 그런 다음 각 뷰에서 넷리스트를 생성하고 비교한다. 노드, 포트 및 장치 크기가 모두 비교된다. 동일하면 LVS가 통과하고 설계자는 계속 진행할 수 있다. LVS는 트랜지스터 핑거를 추가로 넓은 트랜지스터와 동일하게 취급하는 경향이 있다. 따라서 4개의 트랜지스터(각각 1 μm 너비)를 병렬로, 4핑거 1 μm 트랜지스터 또는 4 μm 트랜지스터는 LVS 도구에서 동일하게 간주된다. .lib 파일의 기능은 SPICE 모델에서 가져와 .lib 파일의 속성으로 추가된다. 반도체 설계에서 표준 셀은 디자인 규칙 검사(DRC) 및 레이아웃 대 회로도(LVS) 준수를 보장한다. 이러한 준수는 설계 프로세스의 효율성을 크게 향상시켜 설계자의 턴어라운드 시간을 단축시킨다. 이러한 셀이 중요한 검증 기준을 충족하도록 보장함으로써 설계자는 이러한 구성 요소를 더 큰 칩 설계에 통합하는 과정을 간소화하여 더 원활하고 빠른 개발 주기를 촉진할 수 있다.
# 기타 셀 기반 방법론
"표준 셀"은 셀 기반 설계라고 하는 보다 일반적인 설계 자동화 흐름에 속한다. 구조적 ASIC, FPGA, CPLD는 셀 기반 설계의 변형이다. 설계자 관점에서 모두 동일한 입력 프런트 엔드를 공유한다: 설계의 RTL 설명. 그러나 세 가지 기법은 SPR 흐름(합성, 배치 및 배선) 및 물리적 구현의 세부 사항에서 크게 다르다.
# 복잡도 측정
CMOS와 같은 디지털 표준 셀 설계의 경우, 일반적인 기술 독립적 복잡도 측정 기준은 게이트 등가(GE)이다.