CMOS circuits like inverters, NAND, and NOR gates are realized through detailed layouts connecting PMOS and NMOS transistors via metal, contact, and polysilicon layers, with their correctness ensured by automated tools for design rule checking (DRC), electrical rule checking (ERC), and layout versus schematic (LVS) comparison; parasitic elements like unintended resistors and capacitors are extracted and added to simulations to ensure timing margins are met, while standard cell design uses predefined gate libraries for rapid and structured layout with consistent cell height and automated placement and routing (P&R), whereas full custom design offers maximum area efficiency by manually optimizing layout and sharing wells, power lines, and unused space, albeit at the cost of long development time, making it mostly suitable for analog or memory circuits today, illustrating that modern semiconductor design is a meticulous blend of logic, layout, rule compliance, and performance optimization.
인버터의 속살
그림 10.2 (a)는 인버터의 스키메틱을, (b)는 이에 상응하는 레이아웃 이다. (b)에서 노란색 부분은 n-well이다. n-well 상에 있는 것이 PMOS이므로 아래쪽이 NMOS가 된다. 인버터의 입력 A가 (b)에서 보면 메탈 1, 컨텍을 통해 폴리에 연결되어 PMOS, NMOS에 동시에 연결되었다. PMOS의 소스는 (b)에서 좌측이며 이는 컨텍과 메탈 1 을 통해 VDD에 연결되었다. 다른 쪽 드레인은 역시 컨텍과 메탈 1 을 통해 2에 연결되었다. 하단의 NMOS에서 좌측이 소스가 되는데 이것은 컨텍과 메탈 1을 통해 VSS에 연결되고 반대편 드레인은 컨 텍과 메탈 1을 통해 출력 Z에 연결되었다.
낸드 게이트의 속살
그림 10.3 (b)에서 보면 하단에 NMOS 두 개가 있다. 입력 A에 연결 된 NMOS의 소스가 VSS에 연결되고 B에 연결된 NMOS의 드레인이 메탈 1을 통해 Z에 연결되어 있다. 상단의 PMOS 두 개는 공히 그 소스는 VDD에 연결되고 드레인은 Z에 연결되어 (a)의 스키메틱과 연결 상태가 동일하다.
노어 게이트의 속살
그림 10.4에 3 인풋 노어 게이트를 나타내었다. 상단의 PMOS에서 A 가 연결된 PMOS의 소스가 VDD에 연결되어 있고 C를 입력으로 받 는 PMOS의 드레인이 출력 Z에 연결되어 있다. 하단의 NMOS들은 모두 소스는 VSS에 드레인은 Z에 연결되어 있다.
디자인 룰 검증
10.1에서 디자인 룰이 수백 개가 된다고 하였다. 레이아웃 엔지니어 가 그것을 모두 숙지하여 레이아웃을 했다 하더라도 정말 그 불을 지켰는지 검증하는 것을 DRC(Design Rule Check)라 한다. 그것을 사 람이 수백만 개의 MOS에 대해 일일이 눈으로 확인할 수는 없고 소 프트웨어를 사용한다. 아래에 수백 개의 룰 중에서 세 개를 예로 들 었다. 구체적인 수치는 밝힐 수 없어서 ?'로 표시했다. 첫 번째는 컨 텍의 최소 크기를 지켰는지 검증하는 것이고, 두 번째는 폴리가 컨 택을 최소한으로 감싸야 하는 룰을 지켰는지, 세 번째는 액티브가 컨텍을 감싸야 하는 최소 수치가 지켜졌는지 검증하는 것이다. 이런 식으로 수백 개의 디자인 툴을 소프트웨어가 사용하는 언어를 써서 모두 기술한 후 소프트웨어를 실행시킨다.
전기적 룰 검증
쇼트가 났거나 오픈(아무것에도 디자인 룰을 지켰다 해도 전기적으로 쇼트가 연결되지 않은 상태)이 났다면 소용이 없다. ERC(Electrical Rule Check) 는 이런 사항을 체크한다. ERC에는 열 가지 이상의 체크 항목이 있 는데 아래에 그 중 세 개를 소개했다. 처음 것은 n-well이 VDD에 연 결되어야 하는데 그렇지 않은 n-well들이 있는지, 두 번째는 쇼트난 메탈들이 있는지, 세 번째는 연결되지 않고 끊어진 메탈들이 있는지 확인하는 것이다.
레이아웃 대 스키메틱
디자인 룰도 맞고 전기적으로도 잘못된 것이 없음을 검증한 후엔 스 키메틱대로 레이아웃이 되었는지, 스키메틱의 MOS 사이즈와 레이 아웃의 사이즈가 같은지 확인해야 한다. 이것이 LVS(Layout vs Schematic)이다. LVS는 툴이 스키메틱과 레이아웃에서 네트리스트를 추출한 후 그 두 개의 네트리스트를 비교하는 것이다.
아래에 LVS 룰 파일의 일부를 나타냈다.
lvschk[scer] wpercent= 5 lpercent= 3 resval= 5
이것은 스키메틱에 있는 값들에 비해 MOS의 폭은 5퍼센트, 길이 는 3퍼센트, 저항 값은 5퍼센트를 벗어나는 소자들을 찾아 내라는 의미다.
기생충 검출
레이아웃을 DRC, ERC, LVS까지 실행하여 오류 없이 제대로 되었음 을 확인했으면 그 제대로 된 레이아웃에서 의도한 소자들 외에도 기 생 소자(parastic device)들을 추출한다. 스키메틱에는 의도한 소자들 만 있을 뿐, 레이아웃을 하면서 부수적으로 생긴 저항이나 캐패시터 들은 나타나 있지 않다. 이런 기생 소자들은 딜레이를 유발시키는데 설계시 예측한 값보다 클 경우 반도체 칩이 오작동하게 된다. 이 기생 소자들의 값은 얼마나 될까? 기생 캐패시터의 경우 길이 에 따라 다르게 되는데, 근접한 소자들을 연결하는 메탈에서 보통 수십 ff(femto Farad, 1fF는 10"F)이다. 즉 수억분의 1마이크로 패럿에 불과하지만, 9장에서 게이트 하나의 딜레이 타임이 0.1나노초, 즉 10 억분의 1초라는 것을 상기하면 그 값들을 무시할 수 없다. LPE에서 추출한 기생 소자의 값들을 원래 스키메틱 네트리스트에 추가하여 설계 시뮬레이션을 다시 해 보고 설계 마진(design margin)이 충분한 지 확인해 본다. 시뮬레이션을 통과하지 못하면 스키메틱을 고치거 나 레이아웃을 수정해야 한다. 아래에 LPE의 일부를 나타냈다.
; metal1 under metal2 & over poly
; parasitic cap[a0] wlu2opmt1 mt2
일치시키는 것을 말하고 배치된 셀들을 스키메틱 네트리스트에 따라 연결시키는 것을 라우팅(routing)이라 한다. 위의 네 가지 설계 방식 들 중에 풀 커스텀 방식을 제외한 세 가지 방식에서는 모두 소프트 웨어(software, tool)를 사용하는 오토메틱 P&R(automatic P&R)을 하 기에 APR(automatic P&R)이라는 말도 있다. 통상 플레이스먼트와 라 우팅을 같은 툴에서 순차적으로 수행한다. 그리고 이 툴은 셀의 내 부는 보지 않고 단지 셀의 입출력들만 보고 P&R을 수행한다.
반도체에 웬 표준 세포?
9장에서 설명한 게이트들을 미리 만들어 놓고 그 범위 내에서 설계 하는 방법을 스텐다드 셀 방식(standard cell method)이라고 한다. 실 제로 게이트들은 그 기능에 따라 수십 가지이고 기능이 같더라도 그 내부의 MOS 크기들이 조금씩 달라서 약 백여 개의 게이트들이 사용 된다. 이런 게이트들의 집합을 라이브러리라 하고 이 라이브러리에 등록된 게이트들을 스텐다드 셀이라 한다. 이 라이브러리에는 레이 아웃 DB와 게이트들의 딜레이 타임 그리고 게이트들의 입출력 캐패 시턴스(캐패시터의 값) 등을 데이터 베이스로 가지고 있다. 디지털 설 계에서는 특별한 경우를 제외하고는 MOS의 길이는 모두 최소 디자 인 불대로 사용한다. 즉 0.18마이크로미터 디자인 툴에서는 PMOS 든 NMOS든 길이는 모두 0.18마이크로미터이다. 만약에 표 11.1과 같은 라이브러리가 있다고 하자. 만일 PMOS, NMOS 폭이 각각 5마이크로미터, 3마이크로미터짜리 2 인풋 낸드 게이트를 사용하고 싶다면 뒤에서 소개할 풀 커스텀(full custom)방 식에서는 그런 게이트를 만들면 되지만, 스텐다드 셀 방식에선 Nd22를 사용하거나 아쉬운 대로 Nd21을 사용해야 한다. 대신에 라 이브러리에 등록된 셀들은 이미 레이아웃까지 다 준비되어 있어서 그것들을 새로이 설계할 필요가 없다. 그림 11.1은 가상의 스텐다드 셀 라이브러리의 셀 레이아웃 세 개를 보여 준다. 그림 11.1에서 보듯이 스텐다드 셀에선 레이아웃상에서 셀들의 높이가 모두 같다. 대신 그 너비는 회로의 복잡도에 따라 달라지게 된다. 그리고 플레이스먼트를 툴이 하므로 셀 하나가 멀리 떨어져 있을 수도 있고, 바로 옆에 어떤 셀이 위치(placement)할지 모르기에 셀 단독으로 모든 디자인 물을 만족시켜야 하고, 픽 업들도 각자가 가지고 있어야 한다. 특히 액티브는 옆에 어떤 셀이 위치할지 모르 므로 디자인 툴 상의 액티브와 액티브 간의 거리의 절반에 해당하는 수치만큼 셀의 경계선에서 떨어져 있어야 한다. 셀들을 위치시킬 때 는 셀들을 떨어지게 위치시킬 수는 있어도 셀 내부를 들여다보지 않 기에, 인접한 셀 내부에 여유가 있다고 서로 겹치게 위치시킬 수는 없다. 스탠다드 셀 방식에서 그림 11.2와 같은 스키메틱을 P&R(셀을 배치하고 연결시키는 작업) 한다면 그림 11.3과 같이 된다.
고객이 바글바글?
풀 커스텀 방식에는 라이브러리가 존재하지 않으며 필요한 셀들을 직접 설계해 가며 회로 설계도 수행한다. 레이아웃도 스텐다드 셀처럼 높이의 제약이 있지 않고 아무런 제약도 없다. 셀 여러 개를 뭉쳐 서 하나로 레이아웃 해도 무방하며 MOS의 크기가 같은 게이트라도 배치되는 곳에 따라 여러 가지로 레이아웃될 수 있다. 스텐다드 셀 방식이 시조와 같은 정형시라면 풀 커스텀 방식은 자유시에 해당한 다. 대신 셀 레벨부터 설계를 해야 하고, 같은 셀이라도 배치되는 위 치에 따라 여러 개의 레이아웃이 있을 수 있기에 설계 시간이 네 가 지 설계 방식 중 가장 오래 걸린다. 그러나 레이아웃을 효율적으로 할 수 있으므로 같은 규모의 칩이라면 면적을 가장 작게 구현할 수 있는 장점이 있다. 그림 11.2와 같은 회로를 풀 커스텀 방식으로 레이아웃 한다면 그림 11.4와 같이 할 수 있다. 그림 11.3과 비교해 보았을 때 대략 30 퍼센트 정도 면적이 줄어든다. 면적이 줄어든 원인을 살펴보면 인버터와 노어 게이트에서 PMOS들이 VDD를 공유(F1)했고, NMOS들이 VSS 를 공유(F2)했다. 그리고 각각의 셀들이 홀로 독자적으로 플레이스먼트 될 것을 고려 하여 각 셀들이 보유하고 있던 웰 픽업을 세 개의 셀이 공유(F3)했 다. 그리고 인접한 셀이 무엇인지 알고 있고, 셀 내부를 들여다볼 수 있기에 빈 공간을 활용(F4)하였다. 이것은 레이아웃상에서 줄일 수 있는 일례이고 회로상으로도 그림 9.29의 D 래치를 풀 커스텀 방식 에서 그림 11.5와 같이 구현할 수 있다. 즉 다른 설계 방식에서 열네 개의 MOS로 구현하는 D 래치를 풀 커스텀 방식에서는 여덟 개의 MOS로 구현이 가능하다. 이것이 가능한 이유는 풀 커스텀 방식에 서는 사람이 P&R을 하므로 인접해야 할 셀들을 원하는 대로 인접시 켜서 배치할 수 있기 때문이다. 그림 9.29에는 존재하나 그림 11.4에 서는 존재하지 않는 세 개의 인버터들은 D 래치가 어디에 배치될지 몰라서 충분한 설계 여유(design margin)를 두기 위해 추가된 것들이다. 이렇듯 풀 커스텀 방식은 실리콘의 면적을 줄이는 데 가장 적합 한 설계 방식이지만 설계 기간이 길어서 요즘은 아날로그나 메모리 설계에서나 채택하는 방식이 되어 버렸다. 또한 메모리나 아날로그 제품에 비해 라이프 타임(life time, 제품의 존속 기간)이 매우 짧은 시 스템 IC(system IC) 제품의 설계에서도 긴 설계 기간 때문에 요즘은 기피하는 방식이 되어 버렸다.
The gate array method, which prepares a base array of uniformly sized 2-input NAND gate cells with MOS structures formed in advance, enables fast semiconductor development by only requiring backend processing (metal and contact layers), significantly reducing manufacturing time and cost, but at the expense of poor area efficiency due to unused gates and rigid I/O placement, while standard cells and SoC designs offer greater flexibility and efficiency by utilizing pre-verified Intellectual Property (IP) blocks—formerly known as macro blocks or cores—for complex functions like CPUs or DSPs, drastically shortening development time despite their high licensing cost, making the choice of design methodology a strategic balance between speed, cost, area, and circuit complexity depending on the project’s scale and purpose.
대문의 배열
게이트 어레이 방식(gate array method)에서 셀은 높이만이 아니라 그 폭도 2인풋 낸드 게이트를 기준으로 일정하게 정해져 있다. 그림 11.6과 같이 MOS까지 형성된 셀이 일정하게 쭉 배치되어 있는 것을 베이스 어레이(base array)라 한다. 웨이퍼에도 이렇게 MOS까지 공 정을 진행시켜 놓고 보관하고 있다. 반도체 공장에서 MOS까지 형성 시키는 단계를 프론트엔드 공정(frontend process)이라 하고, 컨택과 메탈 등을 진행하는 단계를 순서상 뒤에 있어서 백엔드 공정 (backend process)이라 하는데, 프론트엔드 공정에서 대부분의 시간 이 소요된다. 게이트 어레이 방식은 이렇게 프론트엔드 공정을 진행시켜 놓은 웨이퍼를 보관하고 있다가 설계가 완료되면 설계에 따라 백엔드 공 정만 진행시키기에 개발 시간이 다른 방식은 마스크 입고 후 약 두 달 정도 소요되는데 반해, 게이트 어레이 방식은 마스크 입고 후 약 2주일 정도 소요된다. 개발 시간이 짧은 것이 게이트 어레이의 가장 큰 장점이다. 게이트 어레이 방식에서는 그림 11.7 (a)와 같이 이미 베이스 어 레이까지 공정이 끝난 웨이퍼를 창고에서 꺼내, 설계에서 나온 (b)와 같은 컨텍과 메탈 마스크를 제작하여 백엔드 공정을 진행하면 (c)와 같이 된다. 그림 11.7은 2 인풋 낸드 게이트를 예로 든 것이다. 그림 11.2의 스키메틱을 게이트 어레이로 P&R을 하면 그림 11.8 과 같이 된다. 3 인풋 노어 게이트와 인버터만 보여 주고 2인풋 낸 드 게이트는 보이지 않을 만큼 이미 레이아웃이 커져 버렸다. 레이 아웃이 커져 버린 이유는 사용하지 않는 MOS들이 공간을 차지하고 있고(G1), MOS 사이에 컨텍이 올 수도 있어서 모든 MOS의 사이에 컨텍이 올 수 있는 공간(G2)을 확보하고 있어야 하기 때문이다. 이는 게이트 어레이가 기본적으로 2인풋 낸드 게이트를 베이스 어레이로 사용하기 때문에 초래되는 일들이다. 그래서 게이트 어레이 방식에는 최대 게이트 카운트(maximum gate count)와 유효 게이트 카운트(usable gate count)가 있다. 베이스 어레이에 형성되어 있는 모든 2 인풋 낸드 게이트의 개수를 최대 게 이트 카운트라 하고, 그림 11.8의 G1처럼 사용되지 않고 버려지는 게이트들 때문에 통계적으로 그런 것들을 제외한 게이트 카운트가 유효 게이트 카운트이다. 4장에서 처음 언급된 게이트 카운트(gate count)를 살펴보면 스텐 다드 셀은 높이는 모두 같지만, 폭은 셀마다 다르다. 그런데 게이트 어레이의 베이스 어레이에서는 셀의 높이뿐만 아니라 폭도 똑같다. 왜냐 하면 2인풋 낸드 게이트를 기준으로 하기 때문이다. 그림 11.8 에서 인버터는 비록 셀의 절반을 쓰지 않지만 게이트 카운트로 1게 이트이다. 3 인풋 노어 게이트도 버리는 부분이 있기는 하지만 게이트 카운트로 2게이트가 된다. 따라서 게이트 어레이에서는 게이트 카운트를 알면 바로 사용되 는 면적이 나온다. 즉 게이트 카운트와 사용되는 면적은 일치한다. 그리고 프로젝트 시작 전에 게이트 카운트를 예측해야 타겟 베이스 어레이를 선정할 수 있다. 즉 5만 게이트 베이스 어레이를 사용할지 10만 게이트 베이스 어레이를 사용할지 선정해야 베이스 어레이의 재고도 확인하고 프로젝트도 시작할 수 있다. 게다가 회로의 복잡도도 알 수 있다. 반면 스텐다드 셀이나 앞으로 설명할 SoC 디자인에서는 어떻게 할까? 게이트 어레이에서 기원한 게이트 카운트의 정의에 맞추어/모 든 셀들의 면적을 2. 인풋 낸드 게이트의 면적으로 나눈다. 그래서 인 버터의 경우, 게이트 카운트로 0.5 게이트, D F/F 같은 경우 3.5 게 이트와 같은 방식으로 환산한다. 원가 계산을 위해서는 실리콘의 정확한 면적이 필요하고 설계의 복잡도를 알기 위해서는 사용된 셀들의 개수가 필요하다. D F/F 셀 하나를 불러다 썼는데 3.5로 카운트 되면 그건 복잡도를 왜곡시킨다. 그리고 2인풋 낸드 게이트의 면적을 공개하지 않으면 면적을 알 수 가 없다. 즉 스텐다드 셀이나 SoC 방식의 설계에서는 게이트 카운트 는 정확한 면적도, 설계의 복잡도도 나타내지 못한다. 아무짝에도 쓸 모가 없다고 생각하기에 필자는 개인적으로 그 단위를 매우 혐오한 다. 그러나 바로 그 이유 때문에 모두들 애용하는 것이다. 정확한 면 적도, 정확한 복잡도도 나타내지 않고 그러면서도 뭔가 정보를 준 것 같기에 비밀유지에 아주 좋은 단위인 것이다. 대외적으로 비밀 유지를 위하여 그 단위를 사용하는 것은 이해한다. 그러나 내부적으 로는 왜 아무짝에도 쓸모 없는 단위를 사용하는지 모르겠다. 그림 11.8에서 보면 인버터와 노어 게이트가 연결되는 w1이 스 텐다드 셀이나 풀 커스텀 방식과는 달리 외부에서 연결되는 것이 보 일 것이다. 게이트 어레이에서는 모든 입출력 단자들이 셀의 경계에 위치하고 스텐다드 셀에서는 안쪽에 있다. 스텐다드 셀에서 사용하 는 APR (Automatic Placement and Routing tool, 자동으로 셀들을 배치 해 연결시켜 주는 툴)은 셀 내부를 들여다 보지 않는다고 했는데 그것 은 셀 내부 구조를 보지 않는다는 의미이고 입출력 단자는 내부에 있어도 본다. 그러나 게이트 어레이에서 사용되는 APR 툴은 아예 셀 영역 내에는 볼 생각도 하지 않는다. 그래서 단자들을 셀의 경계면에 위치시키고 위쪽으로 연결되는 것이 수월할지 아래쪽으로 연결되는 것이 수월할지는 배치가 끝나 야 알 수 있으므로 아래위로 모두 연결할 수 있게 라이브러리를 만 들어 놓는다. 그리고 셀과 셀들은 그림 11.9에서와 같이 채널 영역을 통해서만 연결한다. 못난 송아지 엉덩이에 뿔난다고, 그렇잖아도 레 이아웃 면적을 많이 잡아 먹는 놈이 이 대목에서 또 거대한 면적을 잡아 먹는다. 채널은 베이스 어레이에 이미 확보된 공간이므로 설혹 사용하지 않더라도 남겨 두어야 하는 공간이다. 이 채널을 없앤 게 이트 어레이 방식이 SOG(Sea Of Gate)인데, 채널 영역이 없이 모두 셀 어레이로 채우고 라우팅이 필요하면 그 행(row)의 셀 어레이를 포기하고 채널로 쓰는 방법이다. 이래저래 좋을 것이 없을 것 같은 이 게이트 어레이가 방법론에 까지 나오는 이유는 무엇일까? 이유는 짧은 제조 기간과 개발 비용 때문이다. 게이트 어레이 방식은 주로 주문형 반도체 제작에 사용되 어 왔다. 주문자는 시스템 개발 업체나 보드 개발 업체들이다. 이런 업체는 자신들의 제품에 경쟁력을 높이기 위하여 보드상에 여러 개 의 칩으로 구성된 부분을 하나나 두 개의 칩으로 줄여 불량률을 낮 추고, 자신들의 보드나 시스템을 남들이 모방하지 못하게 하는 데 목적이 있다(범용 칩을 사용한 보드는 누구나 그 범용 칩의 기능을 알고 있어 모방이 가능하다). 즉 자기 자신들만 사용하기를 원한다. 반도체 제조 회사에서는 가급적 많은 사람들이 자신의 칩을 사용하기를 원하고 또 그렇게 하 기 위하여 많은 마케팅 비용을 지불하는 것과는 대조적이다. 이런 시스템 업체나 보드 업체에서는 자기만 사용할 것이니 수량이 불특 정 다수를 향한 반도체 업체의 타겟 수량에는 턱 없이 적고, 또 마스크 세트(제조 비용 제외)만 수억 원에 달하는 개발비를 부담할 엄두가 나지 않는다. 그래서 프론트엔드까지 완료된 웨이퍼 위에 컨택과 메 탈만 마스크를 제작하여 개발비를 줄이고, 제조 기간도 줄이는 데 아주 적합한 설계방식이다.
SoC와 IP
SoC(System on Chip)는 일반인들이 알고 있는 SOC(Social Overhead Captial, 사회 간접 자본)와 아무런 상관도 없는, 반도체 업자들만의 용 어이며 선망의 대상이다. SoC 디자인은 기본적으로 스탠다드 셀과 IP들을 조합하여 설계한다. 이 IP 역시 일반인들이 알고 있는 인터넷 프로토콜(internet protocol)이 아니라 인텔렉추얼 프로퍼티 (intellectual property, 지적 재산)의 약자로 어떤 기능을 하는 회로 집단을 의미한다. IP란 어떤 기능을 하는 커다란 규모의 회로를 여러 프로젝트에 그 내부를 몰라도 단지 불러다 사용할 수 있게 설계해 놓은 회로 블 록(block)이다. 이것은 요즘 생겨난 것은 아니고 IP란 용어가 있기 전 에는 코어(core)라는 용어를 사용했고 그보다 더 이전에는 마크로 블 록(macro block)이란 이름이 있었다. 게이트 어레이에서는 이 마크로 블록을 메가 셀(mega cell)이라는 용어로 사용했다. 마크로 블록 시절에 마크로 블록의 실체는 아날로그 회로나 메모 리였다. 이런 메모리를 라이브러리에 등록시키면서 보통 셀보다는 수천 배 규모가 크니 그냥 셀이라는 말을 사용하기 미안하여 커다란 셈이라는 의미의 마크로 셀(macro cell)이라고 불렀다. 그러다 90년 대 들어서서 CPU(Central Processing Unit), DSP(Digital Signal Processor)도 마크로 블록 형태로 설계되고 제공되었다. 그런데 CPU 나 DSP는 메모리에 비해 그 규모나 복잡도가 엄청나게 차이가 나는 회로들이다. 그래서 그런 CPU나 DSP를 제공하는 업체에서 기존의 마크로 블록들과 같은 취급을 당하기가 억울하여 코어라는 용어를 사용했다. 그러다 보니 기존의 메모리 같은 단순한 마크로 블록을 이용하여 스텐다드 셀로 설계를 하는 사람들도 뭔가 기존의 마크로 블록을 불러다 쓰는 것과는 그 난이도가 현격하게 달라지니 자신들 의 업무를 SoC 디자인이라고 칭하게 되었다. 사실 이 대목은 개인적인 상상이다. 여하튼 과거에 마크로 블록 이후 코어라고 부르던 것이 요즘은 의미가 좀 더 확대되어 저작권, 특허권까지 포함하는 지적재산권을 의미하지만 반도체 설계 입장에 서는 과거의 코어나 다름없다. 이 IP들은 새로 개발하여 검증까지 하려면 2~3년은 걸리는 규모의 회로들이기에 그 개발 기간만큼 개발 기간이 단축되고, 그 시간에 다른 회로들을 개발함으로써 매우 큰 규모의 반도체를 개발할 수 있다. 단지 IP의 가격이 문제될 뿐이다. IP들은 저렴한 것은 수천 불에서 비싼 것은 수백만 불에 달한다. 그 러나 그 개발 기간을 요즘의 반도체 칩의 라이프 타임에 비교하여 고려해야 한다.
반도체 제대로 이해하기 강구창 지음