Full Custom IC One Chip 1

2023. 7. 10. 09:48[Harman] 세미콘(semiconductor) 아카데미-반도체설계/Full Custom IC One Chip 설계

728x90
  • 아날로그 : 연속적인 값 (노이즈의 영향을 많이받는 영역)
  • 디지털 : 0과 1로 이루어진 값(타이밍 영역에서 노이즈에 영향을 받지않는 0과 1의값)

 

 

ASIC - 이미 설계되어있는 칩에 디자인을 하는 것

본 강좌는 이미 설계된 칩이 아닌 직접 칩을 설계하는 것

 

반도체 공정에서 몇 나노공정에서의 나노에 해당하는 것은 length이다.  souce - drain사이의 폭을 length라 한다

-> length 줄어들면 낮은 전압으로도 스위칭할 수 있게 된다. 좀더 도통시키는 전압이 줄어들게된다.

-> 2nm이하로는 의미가 없다(배터리가 커져있는상태로 반도체칩을 작게 개발해도 의미가 없기 때문이다.)

supply voltage가 

Yield소스드레인이 너무 가깝기때문에 쇼트날 수도 있다. ASML장비가 받쳐주지 않으면 만들 수 없다.

전류의 유지가 어렵다. 아날로그 설계하는 사람들은 높은공정을 주로 사용(안전성을 위헤 / 90nm정도의 공정 ) 그렇지만 디지털 설계하는 사람들은 낮은공정의 제품들을 사용한다.

 

CMOS공정은 2nm정도의 공정이 끝이라 보면 된다. 그래핀공정(흑연에서 나오는)이 최근에 뜨고 있다. 그래핀은 디스플레이에 들어가며 희어질 수 있다.

ASIC공정에선 AI가 만들어도 충분하다 -> 이미 하고있기도 하고 촘촘히배치를 해도 괜찮다(노이즈가 발생해도 디지털이라 괜찮기 때문)

 

LNA - 통신과 관련된 것.(노이즈를 최대한 줄여 신호를 증폭시켜주는 것 / 통신에 사용되는 칩)

PLL - 

 

Netlist - 회로 합성 후 나오는 결과 

웨이퍼 - 하나의 셀이 5m정도이다.

패드 - ESD 패드가 들어가있다. (사람이 만지면 발생하는 정전기(ESD)나 노이즈등을 막아주는 역할)

  1. Saw and break : 위의 웨이퍼를 잘라낸다
  2. Attach를 이용해 잘라낸다
  3. Bond : 금으로 부착

웨이퍼 내부 모습

웨이퍼를 하나 만드는데 10억~20억의 비용이 든다.

MPW - 한

ASIC공정은 standard logic공정 

 

nand nor 게이트들은 설계하는 곳에서 공정에서 만들어진 기본 sell을 이용한다.

 

반도체 설계툴에선 디지털시계 - 60진 카운터나 6진카운터. D플립플롭을 사용하여 동작을 하면 기본 디자인로직이 제공되어있다. 

 

베릴로그 코드를 작성하게 되면 위와 같은 설계가 이루어진다. 

 

카운터 - 동기 비동기

기본 반도체 설계에 대한 Flow

실습은 위의 파트를 기준으로 진행한다.

  1. 우리가 5g를 사용하고 있는데 만약 6g가 나오게 된다면 차세대 칩에대한 마케팅을 조사하게 된다. -> 설계팀에게 칩 스펙을 제시한다.

    트랜지스터 - Trans register
    -> 저항을 변화시켰을 때 저항이 작으면 전류가 증가한다 (도체가 된다). 저항이 크다면 부도체가 된다. -> 다이오드 2개가 합쳐졌을 때 증폭작용을 하게 된다. 스위칭을 하기 위한 소자. 

    BJT와 MOSFET의 차이


    옴의 법칙 : 저항을 이용해서 전류를 컨트롤할 수 있기 떄문에 옴의 법칙은 전자에서 중요하다. 옴의 법칙이 없었다면 전류를 컨트롤할 수 없기 때문에 현대의 전자제품은 과전류로 인해 에러사항이 많았을 것이다.
     
    반도체 : 도체와 부도체 사이의 물질로써 기본소자는 다이오드가 있다. 다이오드는 공정상.

  2. 트랜지스터 레벨에서 설계를 진행하게 된다.

    Netlist를 뽑아서 다음 설계

  3. spice툴을 이용하여 시뮬레이션을 한다.

    1 ~ 3까지의 과정을 front end라 한다.

    칩 스펙이 설계목표의 스펙이 될때 까지 1 ~ 3의 과정을 반복

    P-spice에선 칩을 시뮬레이션하지만 소자의 L/W비율을 조절할 수 없다 (기존의 만들어진 소자만 사용가능)
    full custom에선 L/W의 비율을 조절할 수 있다 -> 칩스페이 맞을떄 까지 진행

    밑의 과정들에선 실제 과정을 설계 (앞의 과정은 목표스펙이 나오기 위한 시뮬레이션 설계)
  4. 공정 회사에서 제공해준 디자인룰(LAYOUT 기준)을 바탕으로 설계를 진행한다. 
  5. P - MOS, N - MOS는 IDEAL한 상태 -> 그렇지만 실제 소자들은 내부 기생C등을 신경써야 한다. 그래서 내부 기생성분까지 모두 포함하여 테스트. 이 과정을 RCX라 한다. 내부 기생성분, 메탈간의 이격거리 등을 LPE Rule File로 제공받는다. 

    3번의 과정에서 시뮬레이션을 진행해도 Parasitic RC Extraction과정에서 다시 시뮬레이션을 진행한다.

 

Chip Sepcification ~ Circuit Simulation : front - end 과정
Layout ~ Post - Layout Simulation : back - end 과정

 

C MOS 공정 

C : "Complementary Metal-Oxide-Semiconductor"의 약자, 하나의 기판에 P MOS와 N MOS를 둘다 올려둔 것.

C-MOS는 저전력 소비, 높은 집적도, 안정성 등의 장점으로 유명.

N MOS는 P기판위에서 제작할 수 있고, P MOS는 N기판 위에서 제작할 수 있다. 위의 구조를 보고 제작을 한다.

공정의 순서와 LAYOUT의 순서는 반대일 수 있다.

MobaXterm을 이용하여 개발을 진행

아이디 입력 후 ok를 누르면 접속할 수 있다.

 

서버 컴퓨터에 접속한 화면

 

내부파일

반도체설계에선 한번설계시 3~4개월동안 설계 -> pc가 계속 켜져 있어야 한다.

또한, 서버에서 작업 시 내부망에서만 사용

 

환경파일은 숨김으로 표시된다.

리눅스 명령어

 

현재 우리가 사용하는 컴퓨터의 용량을 볼 수 있는 명령어 (df -옵션)

 

mv명령어는 2가지로 활용가능

  1. 디렉토리 이름 변경
  2. 파일 잘라내기

 

tar 명령어를 이용한 압축파일 만들기

서버에서 압축 시 압축손실이 발생할 수 있다. 그래서 공정회사에 보낼 시 압축한 파일과 압축하지않은 파일, 2가지를 보낸다.

 

알집보다 더욱 높은 압축 -> gzip -> gzip은 유닉스에서 만든 압축이다.

 

tar.gz파일
Upload to current folder를 통해 window에서 위의 디렉토리로 업로드 가능

 

 

 

SOC - System On Chip의 약자로 칩 안에 cpu, ram, rom 등의 장치들이 집약되어있는 것.

 

PDK(공정회사에서 제공하는 키트)
설계 화면

 

오른쪽 마우스 누르면 자주 사용하는 명령어 창이 뜬다.

위의 1~5번 순서대로 개발이 진행된다.

 

NOT GATE

N mos가 P mos보다 이동도가 높다. 

 

instance

 

p mos 현재 검은색 부분은 p 기판이다.

 

p-mos , n-mos

 

라우팅하기 위한 선

 

wide : 버스선, 아날로그에선 wide를 잘 하지 않는다. 노이즈 발생할 수 있기때문

 

라우팅(narrow선) 끝난 상태

 

해당 창으로 한번에 wire name을 입력할 수 있다.

 

 

 

 

 


소자 Properties 수정 가능

 

소자 특성 등을 기록 시 사용할 수 있다.

 

소자와 포트가 어디에 연결되어있는지 확인할 수 있다.

 

소자의 설정값을 볼 수 있다.

 

WIRE 선택 후 F3 클릭하면 Wire의 옵션 수정 가능

 

 

shift M을 누르면 소자만 이동 가능

 

c를 누른 후 소자 선택 시 copy 가능

 

C 누른 후 F3 누르면 copy 설정 / Rows : 5, Columns : 5 설정 후 모습

 

virtuoso에서 캡쳐하는 방법

버퍼  : 타임딜레이 / 타이밍을 맞춰주기 위한 용도

 


 

심볼 제작

 

삭제 - Delete

복원 - U

 

위의 과정으로 소자를 직접만들 수도 있다.

 

심볼의 내부 회로를 볼 수 있다. / 심볼 -> 회로도 : shift E / 회로도 -> 심볼 : Ctrl E

 


 

AND게이트 : NOT게이트 + NAND게이트 

OR게이트 : NOT 게이트 + NOR게이트

 

NAND 게이트 : 입력이 하나라도 0이되면 1이 출력 -> PMOS의 특성 또한 G에 0이 들어와야 1이 출력된다. 

PMOS 특징 : 0이 들어와야 도통

 

NMOS는 직렬 / PMOS는 병렬

 

AND는 직렬구조 / OR는 병렬구조를 가지고 있다. 

 

진리표에서 출력 0은 NMOS, 1은 PMOS와 관련있다.

진리표를 기준으로 00, 11은 직렬 / 01 10은 병렬

 

 

NAND게이트

Vcc : Collector 전원 / Vee : Emitter 전원  -> BJT

Vdd : Drain 전원 / Vss : Source 전원 -> MOSFET

GND는 기준점을 의미 (0V라 할 수 있다.)

 

-> P기판은 정공, N기판은 전자로 구성

-> N기판은 N-well을 깔아둬야 한다.

layout은 위에서 본 모습이다.

위의 n+, p+는 인플런트. 정공을 전해줄 수 있는지, 전자를 전해줄 수 있는지 나타내는 것. 위의 n+와 p+는 wire와 같은 역할이다. -> 공정상 N-well은 전자이기 때문에 n+는 전자를 공급하고 p+는 전자를 빼내어 P-sub을 만들어낸다. 

 


 

해당 버튼으로 글자를 움직일 수 있다.
해당 글자를 움직일 수 있다.

 

 

Library Path를 통해 백업할 수 있는 경로를 지정할 수 있다.

 

백업 경로 지정

 


 

NOR GATE

 

NAND GATE

 

INVERTOR

심볼 -> 회로도 단축키 : Shift E 

회로도 -> 심볼 단축키 : Ctrl E