11 전원 격자 및 클록 설계


칩상에서 전원은 전원 패드에서부터 게이트, 메모리 회로, 칩상의 모든 다른 기능 회로에 배선되어야 한다. 


뿐만 아니라 이러한 전원 값은 칩상의 스위칭 활성 정도에 따라 시간적으로 변동한다.


이러한 전압의 변이는 칩상의 모든 필요한 지점에서 잘 정의된 클록 주기를 사용할 수 있다고 가정해 왔다.


클록 역시 그 주기 및 칩을 거쳐 오는 도착 시간에 약간의 변이가 있으므로 로직 게이트가 이러한 변이를 잘 견뎌낼 수 있어야 한다.


전력 분산 및 클록 설계는 이제 초미세 공정에서 매우 주의 깊게 다루어야 하는 복잡한 과제가 되었다.


전력 분배를 전체적으로 보면 오프 칩 dc-dc 변환기 부터 시작해 기판(PCB), 전원 평판(power plane), 패키지, 


소켓, 전원 핀 혹은 납땜 범프, 최종적으로는 게이트의 연결에 이르기까지의 온 칩 및 오프 칩 이슈를 포함하고 있다.


전원 격자를 제대로 설계하려면 시스템 설계자, 내열 설계자, 시스템 아키텍트 ,보드 설계자 및 칩 설계자와의 상호협력이 필요하다.


칩상에 존재하는 많은 트랜지스터, 인터커넥트의 RLC본질, 동작 주파수 그리고 고속회로에 대한 요구는 복잡하게 만든다.


전원 잡음은 주로 IR 강화, Ldi/dt에 의한 것이다.


전압 강하는 클록 스큐, 게이트 성능, 클록 및 PLL 타이밍 지터에 영향을 미친다. 또한 일렉트로 마이그레이션 이슈도 있다.


과거에는 '과도한 설계'를 했다. 예를 들어 디커플링 커패시턴스를 사용하는 것이다. 면적을 더 할애한다.


전원 격자상의 전압 강하는 주로 타이밍에 영향을 미친다.


IR 강하는 게이트의 구동 능력을 감소시키고 전체 지연을 증가시킨다.


공급전압은 트랜지스터의 펀치쓰루, 열전자 효과, 소자 브레이크다운 조건을 피하기 위해 감소되어 왔다.


5V->3.3V->2.5V->1.8V->1.2V로 감소해오고있다.


이로써 잡음여유는 감소해왔다. 



EM을 방지하기 위해서 알루미늄에서 구리로 대체했다.


장기 신뢰성 문제에 의한 칩의 수명은 오류평균시간(MTTF)으로 규정한다.



전원 격자 무결성에 대한 완전한 모습은 IR 강하, 접지 바운스, Ldi/dt, EM과 같은 영향들을 함께 고려할 대 얻을 수 있다.


전원 분배시스템은 IR 및 EM을 고려한 전류가 게이트에 배선되도록 설계 되어야 한다.


전원 버스의 크기 관리를 통해 IR 강하를 관리할 수 있다.



아래 있는 그림 T자형은 구부러진곳 주변에서 큰 전류 밀도가 발생한다.



고주파 스위칭 응용에서의 피크 전력 요구 구간에서 잡음 계획 내에서 공급전원을 유지하도록 종종 온 칩 디캡이 사용된다.


IR 강하의 영향을 줄이는 방법


도선의 폭을 넓히기, 금속 스트랩을 추가/제거하기, 디캡 추가하기


전원과 접지 사이에 디커플링 커패시터를 사용하여 전력 분배 시스템에서 요구하는 추가의 전류를 공급하는것


디커플링 커패시터에 저장된 전하는 초기에 전류를 게이트에 공급함으로써 IR 강하 및 Ldi/dt 효과를 감소시킨다.


IR 강하를 감소시키기 위해 Vdd 및 Gnd에 할당된 핀의 수를 증가시킬 수도 있다.


버퍼로 클록 시간을 조정할 수 있지만 큰 버퍼는 전력을 많이 소모한다.



스큐와 지터의 정의



용량성 혹은 유도성 잡음이 클록 노드에 미치는 영향


FF주변의 잡음을 제거하는 방법은 간격 띄우기, 차폐 두가지 방법이 있다.


간격 띄우기는 더 작은 커패시턴스를 유발하므로 전력을 어느 정도 감소시킨다.


차폐는 용량성, 유도성 커플링 모두에 이득이 있고 대신에 커패시턴스와 전력 소모가 증가한다.



전력 소모 방지하는 클록 게이팅 기법



클록 신호를 온 칩 발생을 위한 간단한 기법은 링 발진기를 사용하는것


그러나 공정 의존적이며 불안정해서 고성능 VSLI 회로를 위해서는 크리스털 발진기를 사용했다.



일단 클록이 발생하면 칩 전체로 분배해야 한다. 여기서 스큐, 잡음, 전력 이슈가 있다.


H-트리는 신호의 지연은 같을 것으로 기대하고 배선 제약 및 일정하지 않은 팬 아웃 요구사항들로 구현이 어렵다.


X-트리는 유도성 불연속성이 심회되어 결과적으로 반사가 커진다. 또한 두 클록 라인의 위치가 가까워서 혼선이 커진다.


H-트리는 브랜치 분리 지점에서 팬아웃이 2인데 X-트리는 4여서 팬아웃이 커서 임피던스 정합을 해치고 반사를 증가시킨다. 


임피던스 정합을 구현하려면 배선지향적 기법을 적용해야한다.



온 칩 클록의 진연 값은 타이밍 위험 혹은 데이터 오류가 발생할 수 있다.



이러한 문제는 PLL, DLL 회로로 정류할 수 있다.


PLL, DLL은 양쪽 모두 출력 클록을 입력 클록에 락 시키기 위해 피드백 제어를 사용한다.


PLL은 기준 클록의 주파수 및 위상에 락되어야 하는 반면 DLL은 단순히 기준 클록의 일정한 위상에 락 된다.


따라서 PLL이 로킹과정에서 DLL보다 시간이 더 많이 걸린다.


단지 동기화만 필요하면 DLL을 사용하고 외부 클록 주파수의 체배된 주파수에서 동작하는 내부 클록이 필요하면 PLL을 사용


요약하면 적절한 클록 설계의 핵심은 H-트리와 같은 구조로 클록 스큐를 최소화하고 게이팅 클록을 사용하며 


인터커넥트 최대 및 최소 길이를 제한해야한다.


클록 엣지는 가능한 한 날카롭게 유지해야하고 차폐도 적용하고 공급전원도 통제하고 PLL, DLL도 사용한다.


10 인터커넥트 설계


초미세 인터커넥트의 개념은 매우 중요하다.


갑자기 인터커넥트 이슈가 타이밍, 전력소모, 잡음, 설계 기능 및 신뢰성을 좌우하게 되었다.


비록 작은 소자들이 실제의 로직 기능을 정의하지만 칩상에서 발생하는 모든 중요한 전기적 특성은 인터커넥트가 좌우했다.



여기서 수직 치수 H,T는 제조 과정에서 결정된다. 설계자는 W, S, L 등을 결정한다.


W가 감소하면 저항은 증가한다. 이러한 저항 증가는 RC 지연 현상을 유발한다.


S는 도선간의 커플링이 심각해지는 정도까지 감소하고 있다.


이로 인해 발생하는 용량성 커플링은 추가 지연 및 잡음 효과를 가져와서 설계 오류를 유발할 수 있다.


이 문제를 수정하기 위해 실리콘 회전을 필요로 할 수 있다. 이러한 문제를 아우르는 용어는 신호 무결성이다. 


인터커넥트의 스케일링에 의해 전원 선의 저항 증가는 IR 강하 라고 불리는 전압의 강하를 유발한다.


이러한 IR 강하는 전원선에 연결된 게이트의 타이밍과 기능에 영향을 미친다.


또한 안테나 효과라고 하는 금속 선위의 전하 저장과 같은 다른 효과들로 인해 


게이트 산화막 브레이크다운이 발생하거나 문턱전압이 이동한다.  


또한 도선에 큰 전류의 흐름이 있을 때 전기적 이동(Electromigration)이슈가 있다.


엘모어 지연



이는 네트워크상의 지배적인 시정수이다.


또한 용량성 커플링에 의해서는 잡음이 주입이 된다. 피드쓰루같은..


커플링 커패시턴스의 영향을 더움 감소시키기 위해ㅐ 로우-k 유전체 물질을 계속해서 개발해야 한다.


인터커넥트 인덕턴스 문제도 있다.  


저항은 이해하기 쉽고 전류 흐름을 겪고 있는 금속 전도체에만 국한된다. 


커플링 커패시턴스는 관심 도선 주변에 있는 한정된 영역 내의 도선 사이에서 생기는 정전기적인 현상이다.


반면 인덕턴스는 전자기적인 현상으로서 그 영향은 한정된 영역에만 머물지 않는다.


첫 번째 단계에는 전자기적인 관점에서 인덕턴스를 리뷰하는 것이다. 


인덕턴스는 고속 설계에서 중요하다. 패키지 핀 및 전력 분산 시스템에서 특히 중요하다.


상호 인덕턴스도 크게 문제가 된다. 이는 깨끗한 이웃 도선에 대해 예상치 않은 방법으로 잡음과 지연 효과를 발생시킨다.


안테나 효과는 트랜지스터의 산화막을 파괴하거나 소자의 문턱전압을 변경할 수도 있는 신뢰성 이슈다.


제조 과정에서 플라즈마 에칭, 스퍼터링 혹은 화학 기계적 연마 공정 동안에 각 금속층에 전하가 쌓이는데 이걸 안테나 효과라고 한다.


전하가 안테나처럼 금속층에 끌리기 때문이다. 


이 전하는 전위차를 유발하고 파울러-노드하임 터널링에 의해 산화막 속으로 이동하여 Vt가 변한다.


안테나 비율 = 


안테나 효과를 피하기 위해 먼저 금속 라인 방전을 위해 도선을 다라 다이오드를 삽입하는 방안을 사용할 수 있다.


이 다이오드는 금속이 증착될 때 트랜지스터가 급격한 전압강하를 겪지 않도록 금속의 각 층을 방전하는 것이다. 


이 다이오드는 역방향 바이어스되어 있으며 전하가 누적될 때 다른 피해 없이 전하를 제거한다. 


but 다이오드의 면적 이슈가 있다.





9 메모리 설계의 추가 토픽


메모리 비트당 비용을 줄이는 문제가 중요하므로 조밀하게 집적할 수 있도록 더 간단하고 작은 면적을 차지하는 셀을 개발했다.


스태틱 메모리 셀들은 모두 셀당 4~6개의 트랜지스터 및 각 셀을 연결하는 선이 4~5개 필요하다.


1960년대 다이내믹 MOS의 개념을 사용한다면 복잡도와 전력 소모가 훨씬 낮아지고 면적이 작은 셀을 설계할 수 있다는 사실을 깨달았다.


스태틱 메모리 셀은 플립플롭이 안정된 상태로 데이터를 저장하며 dc전력이 공급되는 한 그 데이터가 유지된다.


반면 다이내믹 셀은 이진 데이터를 커패시턴스상의 전하로 저장한다.


64K 바이트 이상의 메모리에서는 리프래시 사이클 수단을 포함하는 전체 다이내믹 메모리 시스템의 비용이 


스태틱 메모리 소자에 기반을 두는 시스템의 비용보다 더 낮다.


그러나 주변회로의 복잡도와 리프레시 회로, 타이밍으로 인해 스태틱 경쟁자보다 더 느린 회로가 된다.



3T DRAM셀은 처음으로 널리 사용된 다이내믹 메모리셀, 


1T DRAM에서 C2는 일반적으로 C1보다 10배가 크다.


만약 비트라인 커패시턴스가 너무 크면 전하공유의 결과는 셀에 저장된 값을 감지할만큼 뚜렷하지 못하다. 


C1을 크게 하면 이러한 문제를 피해갈 수 있다. 하지만 C1이 크면 안전하지만 면적이 커진다. 



이를 해결하는게 트렌치 커패시터와 스택 커패시터이다. 스택 커패시터가 더 많이 사용된다.


작은 칼럼 신호를 안정적으로 감지하기 위한 읽기 증폭기를 설계하는 일은 1T DRAM 설계에서 가장 어려운 측면 중 하나다.


널리 사용되는 다이내믹 RAM의 내부 회로 설계 및 타이밍은 사실 훨씬 복잡하다. 


비교적 간단하게 나타낸 64K비트 다이내믹 RAM의 블록 다이어그램이다. 



ROM은 디지털 시스템에서의 상수, 제어 정보, 프로그램 명령을 저장하는데 사용된다. 



단일 트랜지스터는 ROM의 핵심 개념이다. 



NOR 배열은 대게 더 빠른 액세스 시간을 보이며 저장된 비트 패턴은 트랜지스터와의 콘택트를 정의하는 


마스크 혹은 금속층 마스크에 의해 결정된다는 장점이 있다.


NAND 기반의 ROM은 액세스 시간이 더 길고 제조 공정의 초기 무렵에 주문 제작되어야 한다.


단위 면적당 비트 밀도는 같은 공정과 설계 규칙을 사용하는 NOR 기반의 ROM에 비해 상당히 높다. 이는 핵심 장점이다.


ROM의 액세스 시간은 행과 칼럼 라인의 저항 및 커패시턴스 그리고 이 라인을 구동하기 위해 사용할 수 있는 전류에 의해 제한된다.


비트당 비용이 적은 대규모 ROM을 위해서는 회로 레이아웃의 밀도를 높이는 것이 중요하다. 


이는 셀과 디코더의 W와 L이 작아야 하므로 상대적으로 작은 구동 전류로 귀결된다.


디코더의 구동 전류는 소자 면적 고려사항 뿐만 아니라 전력 소모 고려사항에 의해 제한된다.


0을 감지하기 위해서는 비트라인의 큰 커패시턴스 때문에 감지 회로를 사용해야 한다.


EPROM의 형태는 특별 MOS소자 구조를 따른다. 폴리실리콘의 두 층은 이중 게이트를 형성한다.


게이트 1은 전기적은 콘택트가 없는 부동 게이트, 게이트 2는 전압을 인가하는데 사용되는 제어 게이트이다.



EEPROM는 전기적으로 지울수 있는 구조다. 2T 구조여서 비트 밀도는 ROM 혹은 EPROM보다 더 낮다.


EEPROM은 내장형 응용을 위한 플래시 메모리와 경쟁 중이다.


NOR 플래시 메모리의 아키텍처다. 이는 더 높은 집적도를 제공하지만 비트 단위로 배열을 변경하지 못하게 한다.


쓰기/삭제 메커니즘은 각각 핫-캐리어 주입과 파울러-노드하임 터널링이다.


열전자는 채널 영역에 높은 전기장을 가하여 생성한다. 이 전자들이 산화막으로 들어가서 소자의 문턱전압을 높인다. 


높은 문턱전압을 가지는 소자 1을 낮은 문턱전압을 가진 소자는 0을 저장하고 있음을 나타낸다.


파울러 노드하임 터널링은 게이트 산화막과 같이 얇은 절연체 물질을 통과함으로써 발생한다. 


에너지 장벽을 관통하는 터널링에 의해 산화막을 통해 전류가 흐른다.



FRAM이라고 하는 강유전 물질에 바탕을 둔 또 다른 특징의 비휘발성 메모리가 있다.



DRAM 셀과 유사하게 단일 트랜지스터 및 단일 커패시터를 갖고 있다. 


이 커패시터는 원하는 값을 저장하기 위해 한 방향 혹은 다른 방향으로 분극되는 페로브스카이트 결정 물질로 구성된다.


FRAM 역시 파괴적인 읽어내기 특징을 갖고잇다. 그러므로 셀값을 읽어내고는 DRAM 셀과 비슷하게 셀에 다시 써야한다.


FRAM은 훨씬 작은 전력을 요구하고 고밀도를 구현한다. 수천억 번의 읽기/쓰기 사이클을 견뎌낼 수 있다.


하지만 비용, 동작속도, 물리적인 크기 문제가 있다.



9. 메모리 설계의 추가 토픽


내장형 메모리 = 메모리가 로직과 같은 칩상에 집적된 것


메모리 설계는 셀 구조, 스태틱 혹은 다이내믹 저장 기법의 사용 여부, 액세스 메커니즘 


그리고 전력이 나갔을 때도 데이터가 그대로 저장되어 있는지 여부에 따라 다양해진다.


제일 중요한 잣대는 비트당 비용이다.


6T셀은 SRAM/ EEPROM은 2T셀/ DRAM, ROM, EPROM,, 플래시 메모리, FRAM은 1셀


스태틱 기법은 신뢰성이 높고 리프레시 회로가 필요하지 않고 다이내믹 메모리는 4배의 집적도를 제공한다.


반면에 스태틱 메모리는 다이내믹 메모리에 비해 추가적인 전력 소모가 있지만 속도는 훨씬 빠르다.


온-칩 메모리를 고려할 때는 다이내믹 메모리의 추가 공정비용과 복잡도 때문에 스태틱 기법을 대부분 활용한다.


그러나 어떤 경우에는 DRAM의 집적도 및 비트당 비용에 대한 장점이 단점의 상당 부분을 덮어줄 수도 있다.


SRAM과 DRAM은 읽기/쓰기 메모리


연상 메모리는 주소 디코딩 대신 룩업 프로세스라는 키워드를 사용하는 읽기/쓰기 메모리의 특별한 형태다.


이들은 내용 주소화 메모리(CAM)라고도 한다.


FIFO(First in first out)와 같은 직렬 메모리 및 시프트 레지스터 등도 읽기/쓰기 범주에 들어간다.


비휘발성 메모리는 전력공급이 제거되어도 저장 데이터를 유지한다. 주역할은 읽기 전용 메모리이다.


이들 메모리의 쓰기 시간은 매우 길지만 읽기 시간은 다른 반도체 메모리와 같을 정도로 짧다.


비휘발성의 예는 마스크 프로그래머블 ROM, EPROM, EEPROM, 플래시이다.


SRAM은 이미 알고 있는 주소에 바탕을 두는 액세스 메커니즘으로 데이터의 저장과 검색에 사용된다.


그러나 우리가 찾는 데이터가 이진 주소보다는 이진 키워드와 연관이 되는 응용이 존재한다.


알고 있는 키워드를 태그라고 하는 이전에 저장된 키워드들과 비교한다.


이 키워드들은 우리가 찾는 실제 데이터를 참조한다. 태그들은 어떤 특정한 순서로 저장되어 있지 않으므로 


원하는 데이터에 접근하려면 주소 키워드를 이미 저장되어 있는 태그들과 정합시켜야 한다. 


이러한 기능을 수행하는 메모리를 내용 주소화 메모리라고 한다.


이 메모리는 키워드를 저장된 태그와 비교함으로써 태그와 연관되어 있는 데이터를 참조하기 때문에 연상 메모리라고도 한다.


CAM은 SRAM의 기본 아키텍처를 사용하지만 주소 디코딩 기법보다는 정합 기법을 통해 데이터에 접근한다.


이들은 종종 고도의 연상 캐시 메모리를 구성할 때 쓰인다. 또한 인터넷 배선 표를 저장할 때 쓰인다.



위 CAM 배열은 비트 키워드와 비교될 n비트의 저장된 태그를 포함한다.


각 행은 다른 태그를 저장하고 있다. 태그의 각 비트는 독립적인 6T SRAM 셀에 저장된다.


SRAM은 TRUE값과 COMPLEMENT의 값 두가지를 유지하고 있다.


정의 값을 저장하고 있는 셀의 기준 면을 XOR 게이트에 가한다.


각각의 N행에는 자신들의 매치라인이 있어서 입력되는 키워드가 태그와 일치하는지를 알려준다.


대규모 CAM의 한계점은 전력이 상당히 많이 소모된다는 점이다. 


실제 CAM 설계에서는 단일 정합, 다중 정합, 완전 부정합의 경우를 적절하게 다루어야 한다.



이렇게 다양하게 CAM을 설계할 수 있다.


SRAM과 나란히 배치된 CAM 배열의 블록 다이어그램이다.


CAM배열은 입력 키워드와 저장된 태그의 병렬 비교를 수행한다. 


정합이 일어나면 연관된 SRAM 배열의 워드라인을 구동하는 매치라인 출력이 발생한다.


어떤 면에서 CAM은 전통적인 SRAM에서 디코더의 역할을 한다.



칩의 중요한 범주 중 하나로 필드 프로그래머블 게이트 어레이 FPGA 가 있다.


FPGA는 복잡한 로직 시스템을 빨리 구현할 수 있는 자립형 프로그래머블 로직 소자다.


이들은 크게 SRAM 프로그램과 안티퓨즈 프로그램이라는 두 범주로 나눌 수 있다.


여기선 SRAM 프로그램을 다룬다. FPGA는 빠르게 성장하고 있고 ASIC과 SOC 설계스타일과 경쟁하고 있다.


로직은 Verilog 혹은 VHDL로 표현되는 시스템의 RTL 기술로 부터 시작해 


해당하는 로직 레벨의 표현을 생성하기 위해 합성 및 최적화 단계를 거친다.


이후 이 로직은 목표 FPGA 칩에서 FPGA  CAD 툴에 의해 배치 및 배선된다.



PLB(프로그래머블 로직 블록) 의 간단한 스케매틱이다. SRAM 셀들, 패스 트랜지스터들, D 플롭 1개 및 멀티플렉서 1개로 구성되어 있다.


실제 블록은 훨씬더 복잡하지만 기본 개념으론 충분하다.


왼쪽 SRAM셀들은 3입력 룩업 테이블을 구성한다.


그림의 오른쪽 부분은 PLB가 순차논리가 될지 혹은 조합논리가 될지를 결정하는 요소다. 


멀티플렉서를 위한 SRAM 비트 설정은 출력을 패스 트랜지스터로부터 직접 끌어올 것인지 


혹은 D 플롭의 Q 출력으로부터 끌어올 것인지를 결정한다.


FPGA는 유망하고 유연한 소자이지만 몇가지 한계점이 있다.


먼저 성능이 Custom IC나 ASIC 설계에 비해 떨어지는 경향이 있다. 전력 소모 또한 훨씬 크다. 


이는 정상 동작중이거나 프로그래밍 중일 때 모두에 해당된다.


프로그램 비트가 SRAM 셀이므로 스케일링에 의해 내부 커패시턴스의 값이 계속 감소함에 따라 


알파-입자 효과가 유도하는 단일-사건 혼란에 대한 우려가 존재한다.


또 다른 한계는 FPGA 하나에 구현될 수 있는 시스템의 크기와 관련이 있다. 


일반적으로 어떤 RTL 기술은 자동으로 게이트-레벨 기술로 변환되며 CAD 툴을 사용해 목표 FPGA에 맞게 배치 및 배선된다.


한개의 LUT가 아닌 복수의 LUT가 들어가게 되면 사용할 수 있는 트랙이 제한적이기 때문에 신호 배선 및 혼잡 문제가 발생한다. 

8. 반도체 메모리 설계


메모리는 디지털 정보를 대량으로 저장하는 회로 혹은 시스템이다.


회로 설계자는 대개 메모리의 용량을 비트 단위로 말하는데 


이는 하나의 플립플롭 혹은 다른 유사 회로가 1비트를 저장하는데 사용되기 때문.


반면에 시스템 설계자는 메모리 용량을 바이트(8비트) 단위로 말하는데 이는 1바이트가 영숫자 하나를 나타내기 때문


대규모의 과학 계산 시스템은 메모리의 용량을 워드 단위로 말한다. 


각 바이트 혹은 워드는 특정한 숫자 주소로 식별되는 특정 위치에 저장된다.


메모리의 주소는 이진 코드에 기반을 두므로 메모리의 용량은 2의 지수승을 가장 흔하게 쓴다.


(전통적으로 1K바이트, 64K바이트)


대부분의 메모리 시스템에서는 메모리 동작의 매 사이클 마다 주소 하나에 1바이트 혹은 워드가 저장되거나 검색된다.


한 사이클에 두 워드를 읽고/쓸 능력이 있는 듀얼 포트 메모리도 활용할 수 있다.



이 구성은 대부분의 대규모 메모리에 적합한 랜덤 액세스 구성이다.


읽기 혹은 쓰기를 위해서는 하나의 행과 열을 선택함으로써 셀에 접근할 수 있다. 


행 선택을 위한 n비트 디코더는 2^n개의 출력 선을 갖고 있다.


칼럼 디코더는 m 비트의 입력을 취하여 2^m개의 비트라인 접근신호를 생성한다.



64Kb 랜덤 액세스 메모리의 전체적인 아키텍처이다. 총 65536개의 셀을 보유하고 있다.


이 메모리는 1비트의 출력을 위해 16비트 주소를 사용한다.


데이터의 저장 기능은 꼭 유지해야 하며 진폭 양자화, 로직 레벨의 재생, 입력-출력의 분리, 팬 아웃 구동 능력과 같은 


다른 특성은 셀의 간략화를 위해 희생될 수 있다.


이러한 방법으로 한 셀에서의 소자 수는 1~6개까지의 트랜지스터로 줄일 수 있다.


이러한 메모리 칩 레벨에서는 적절하게 설계된 주변 회로를 사용함으로써 원하는 로직 특성을 복구한다.


이러한 범주의 회로는 디코더, 감지 증폭기, 칼럼 사전충전, 데이터 버퍼 등이다. 


RAM에는 일반적으로 스태틱 RAM, 다이내믹 RAM 두가지 유형이 있다.


스태틱 RAM은 전력이 공급되는 동안에는 플리플롭 회로에 저장된 값을 유지한다.


SRAM은 5~50ns 범주의 클록 사이클을 사용하는 고속 메모리의 경향을 띤다.


다이내믹 RAM은 잡음 및 누설 문제에 취약하며 SRAM보다 느려서 50~200ns의 클록에 동작한다. 


그러나 DRAM은 집적도가 높다. 약 4배 정도?


ROM은 PROM, EPROM, EEPROM 등이 있다.


FRAM혹은 FeRAM은 강유전 물질에 바탕을 두는 메모리이다. 전력이 차단되도 저장된 정보를 유지할 수 있다.


페로브스카이트 결정 물질은 한방향, 다른방향으로 분극될 수 있어서 원하는 값을 저장한다


심지어 전력공급이 차단되어도 유지되므로 비휘발성 메모리를 가능하게 한다.


하지만 비용, 동작속도 및 물리적 크기의 이점 때문에 강유전 메모리보다는 반도체 메모리를 선호한다.


페로브스카이트 물질은 현재 태양전지분야에도 적극 연구 중이다.


반도체 읽기-쓰기 메모리에서 읽기 액세스 타임은 대개 사이클 시간의 50%~50%다.


메모리의 액세스 타임 및 전력 소모는 디코더 설게에 의해 크게 좌우될 수 있다.


저장된 데이터를 무한히 유지하기 위해 주기적인 클록 신호가 필요하지 않다면 그 메모리는 스태틱하다고 말한다.


이러한 회로의 메모리 셀은 Vdd 혹은 Gnd 혹은 양쪽 모두로의 직접 경로를 갖고 있다.

SRAM은 아직까지도 전통적인 6T 구조를 많이 사용한다.




감지증폭기는 입력 b, Notb 사이의 작은 전압 차이를 받아들여 유효한 하이, 로우 출력을 제공하는 데 사용된다.



이러한 감지 증폭기를 사용하는 주 이유는 잡음 면역성 및 읽기 회로의 속도를 개선하기 위해서이다.


비트라인에서의 잡음은 읽기 과정에서 오류를 유발할 수 있다.


감지 증폭기는 공통모드 잡음을 감쇄시키고 차동모드 신호를 증폭시킨다.


이 회로는 전류 미러, 소스 공통 증폭기, 바이어싱 전류 소스 세가지 성분으로 나뉜다.


M3,M4는 두 브랜치에 같은 전류를 제공하는 역할을 한다. 


이러한 유형의 차동 증폭기는 고속 응용에서 사용된다. 적절한 동작을 위해 필요한 차동 전압은 100mV~200mV이다.



이러한 래치 기반의 감지증폭기도 있다. 


이는 비트라인 상에 필요한 전압 차이가 형성될 떄까지 활성화되지 않기 때문에 저전력 옵션이다.


그러나 큰 입력 전압 차이를 요구하므로 더 느리고, 잡음이 존재할 때는 위의 감지 증폭기 보다 신뢰성이 떨어진다.



메모리 아키텍처


주소 버퍼 및 디코더에서의 지연은 입력 및 출력의 수가 증가함에 따라 자연스럽게 증가한다.


행 라인은 일반적으로 폴리실리콘으로 형성되어 분산 RC파라미터에 의한 근본적인 지연이 있다. 


이러한 지연을 감소시키기 위해 금속선을 병렬로 배치하여 폴리 라인에 연결할 수 있다.


7.전달 게이트 및 다이내믹 로직 설계


CMOS 전달 게이트



CMOS 전달 게이트는 NMOS, PMOS 둘 다 사용하기 때문에 


한소자의 약점이 다른 소자의 강점에 의해 극복된다는 점이 확실한 장점이다.


CMOS 전송 게이트는 가장 대표적으로 멀티플렉서 역할로 사용된다.





멀티플렉서 구조



이러한 유형의 MUX 기능이 적절하게 동작하려면


첫째, 멀티플렉서의 데이터 입력은 모두 유효해야하고


둘째, 제어 신호는 한 번에 한 경로만 턴 온시켜야한다.



CMOS 전송 게이트는 어떤 함수를 효과적으로 구현하기 위해 조합논리 블록과 함께 사용될 수도 있다.



CMOS 전송 게이트 지연 



다이내믹 D 래치 및 D 플립플롭


a의 문제점


첫째, 출력 전압은 Vdd-Vt까지만 상승한다.


둘째, 클록이 로우로 떨어지면 Q에 클록 피드쓰루가 존재한다.


셋째, 사용 가능한 출력이 존재하지 않는다.


넷째, 클록이 로우로 떨어진 후 출력이 하이-Z 상태에 있게 되어 모든 전하 손실의 메카니즘에 취약하다.


b는 Vt 강화 및 클록 피드쓰루 이슈를 해결할 수 있는 회로


하지만 노드 Q에서의 다이내믹 저장 때문에 회로의 신뢰도는 여전히 의문스럽다.



래치가 오프일 때의 값을 정적으로 유지하기 위한 피드백 루프가 필요하다.


투명 모드에서는 TG1이 온이고 유지 모드에서는 TG2가 온이다.


래치가 유지 모드에 있을 때 TG2는 첫번째 Qout을 인버터의 입력으로 되먹임함으로써


재생성의 이점을 활용하는 역할을 수행한다.


하지만 여기도 CLK가 하이로 갈때 NotCLK가 로우로 가기 전까지 약간의 지연이 존재한다는 점이다.


이는 충돌을 발생시킨다. 이는 게이트의 적절한 크기 결정을 통해 해결할 수 있다.


전진 경로를 피드백 경로보다 더 강하게 확실히 하는 것이다. TG1이 충분히 커야한다.



좀 더 일반적인 버전



다이내믹 로직은 전하공유, 피드쓰루, 전하누설, 단일 사건 혼란 등의 문제 때문에 사용이 제한되어 있다.


하지만 다이내믹 접근법은 슈도 NMOS보다 적은 전력으로 더 빠른 회로를 설계할 수 있도록 해주므로 연구 가치가 있다.


다이내믹 게이트의 출력에 인버터를 추가하는게 단, 이들의 결합이 도미노 단, 도미노 로직이다.

  

다이내믹 게이트에서는 풀 다운이 강하고 스태틱 인버터에서는 풀 업이 강하도록 도미노 단을 설계해야 한다.


도미노 단은 실제로 일반 게이트보다 더 빨리 스위칭한다. 또 전력도 절약할 수 있다.


크로우바 전류에 의한 소모가 없고 글리치도 없기 때문이다.


단점은 비반전 함수를 만들어 내는데만 사용할 수 있다. 인버터를 구현할 수 없다는 뜻이다.


또한 전하 손실로 인한 로직 혼란이 발생할 가능성이 있다.


전하공유, 용량성 커플링, 잡음 주입, 전하누설 혹은 알파 입자 때문이다.


도미노 로직에선 듀얼 레일, 차동 도미노 로직이 많이 사용된다.





7. 전달 게이트 및 다이내믹 로직 설계


표준 CMOS 게이트는 슈도 NMOS 게이트에 비해 훨씬 적은 전력을 소모하지만 


상보 PMOS 트랜지스터의 필요한 개수 및 같은 상승/하강 지연을 위해 칩 면적이 더 필요하다.


고전적인 CMOS 인버터에서는 PMOS 소자의 면적이 NMOS소자의 2배,


슈도 NMOS 인버터에서의 NMOS 소자의 면적은 PMOS의 4배이다.


이는 불행히도 비대칭적인 상승 및 하강 시간을 발생시킨다.


다이내믹 로직은 잡음에 약함


다이내믹 로직의 한 형태는 회로를 통해 정보를 전달하는 스위치로서 전달 게이트를 사용한다.


이 스위치들이 오프되면 출력은 하이-임피던스 상태로 유지된다. 이는 출력을 구동하지 않는다는 것을 의미한다.


두 번째 형태는 적절한 동작을 위해 추가적인 클록 신호를 필요로 한다.


클록 사이클의 한 부분에서 모든 로직 게이트 출력은 초기 값으로 충전된다. 


사이클의 또 다른 부분에서 게이트들은 정확한 출력 값을 평가한다.


패스 트랜지스터 혹은 전달 게이트 혹은 전송 게이트라고도 한다. 



패스 트랜지스터의 역할은 게이트가 온될 때 입력신호를 출력 노드에 그대로 전달하는 것이다.


게이트가 오프 되면 출력은 이전 값을 유지한다.


패스 트랜지스터의 제어 노드의 역할은 소자를 온 혹은 오프 상태로 위치시키는 것이다.


패스 트랜지스터의 입력으로 클록이 들어온다. 이 클록은 온, 오프만 제어하고 출력에 영향을 줘서는 안 된다.


하지만 게이트와 출력 노드 사이에 커패시턴스가존재하여 클록 신호가 출력으로 파급(피드쓰루)된다.


클록 피드쓰루는 즉 클록의 작은 복제가 출력에 나타나는 효과



커패시터와 연관된 전하는 다음과 같아야 한다.



이를 통해



를 얻어내고 피드쓰루 효과를 감소시키려면 


라는 결론이 된다.


다이내믹 회로에서의 또 다른 중요한 이슈는 전압 레벨을 더욱 낮추는 경향이 있는 전하공유다.


그림과 같이 패스 트랜지스터가 턴 온되어 전압 레벨이 다른 2개의 격리된 노드가 갑자기 서로 연결될 때 이 현상이 일어남


핵심 전제조건은 두 노드가 모두 하이-임피던스 상태고 서로 다른 전압을 저장하고 있어야 한다는 점


연결되게 되면 전압 레벨이 같아질 때까지 전하가 재분배된다.


하지만 출력 노드에서 전압이 감소하는걸 우리는 원하지 않는다.




=>




V2가 스위칭 문턱 아래로 떨어지지 않게 하기 위해 C2>>C1이어야 한다.


하이 값이 저장된 경우 전하누설이 발생하는 원인은 두 가지다.


첫 번째 원인은 드레인 접합으로부터의 역방향 바이어스 누설 전류다.


두 번째 원인은 이웃한 도선들에게 생기는 잡음 주입이다.(예를 들어 용량성 커플링에 의해 스위칭하는 동안 잡음 주입 발생)


또 다른 문제는 메모리 회로에서 데이터 손실에 책임이 있는 -입자와 관련이 있다. 


이들은 고에너지 입자로 납땜 범프와 같은 소자 패키지 물질에 존재하거나 우주에서 들어오는 우주선(cosmic ray)에 의해 존재함


이 입자는 실리콘 기판으로 들어가서 출력을 방전시키는 정공-전자쌍을 발생 이 때문에 예상치 못한 동작 오류 일으킴


-입자는 다이내믹 및 스태틱 회로 모두에서 소프트에러를 발생


바디효과란?


MOSFET에서 소스와 기판사이에 역바이어스 전압 때문에 공핍층이 확산되어서 문턱전압이 상승하는 현상



6. 고속 CMOS 로직 설계


로직게이트를 적절히 선택해 올바른 기능을 어고, 게이트의 조합 및 게이트 크기를 결정한다.


임계 경로 = 입력과 출력까지의 가장 긴 지연시간을 갖는 로직 경로


은 드레인 전류로 충전 및 방전을 한다.


전송지연의 정의


Vs로 지연을 정의하거나 입력 출력 50%로 정의를 할 수 있다.


소자의 크기는 제곱모델, 속도포화 효과를 포함해야한다.


I가 커지면 당연히 충방전 속도가 짧아짐


W가 두배면 I는 20~25%커진다, -> 속도 맞추기 위해 크기 20~25%작게해줌


바디효과는 적층에서 제일 위에 잇는 소자의 전류를 감소시키는 경향이 있으므로 적층되는 


트랜지스터 수가 증가함에 따라 소자의 크기는 약간 더 커야한다.


또한 NAND 및 NOR 게이트에는 충방전 되어야하는 추가적인 셀프 커패시턴스가 존재한다.


소자 크기는 잡음여유, 상승 및 하강시간을 결정한다.


커패시턴스


부하 커패시턴스는 자체-부하 커패시턴스, 인터커넥트or도선 커패시턴스, 팬아웃 커패시턴스가 있다.



팬아웃 커패시턴스는 Cg들의 합


LE는 로직 피로도







5.스태틱 MOS 게이트 회로


쌍안정 회로의 가장 간단한 형태는 셋-리셋 래치다. 


SR래치



주로 NAND를 쓸때는 S,R 에 NOT을 해줌 


JK플립플롭


 

피드백 선을 2개 추가하면 S 및 R 입력이 모두 동시에 능동화되었을때 발생하는 SR래치의 모호성을 극복 가능 


J=K=1일 때 클록이 들어올 때마다 토글링


여기서 Clk가 계속 1일 때 발진하는 문제 발생


JK 마스터 슬레이브 플립플롭


마스터는 Clk에 활성화 되지만 슬레이브는 Not Clk에 의해 활성화 됨


마스터 슬레이브 구조는 Clk가 1->0으로 변화할 때 값이 변하게함


하지만 마스터 슬레이브도 '1 캐칭' 이라는 현상이 일어나서 단점이 있다.


1 캐칭은 의되 않게 첫 번재 래치를 셋시킨다.


JK 에지 트리거 플립플롭



D플립플롭 및 래치


데이터를 저장하기 위해 가장 널리 사용되는 또 다른 플립플롭



래치는 1일 때 다 변하고 플롭은 엣지에만 반응!


플립플롭 타이밍 파라미터 


다 최소로 하는게 좋다


전력 소모는 전원 격자의 설계, 칩온도, 패키지의 결정 및 장기적 신뢰성에 영향을 끼쳐서 중요한 설계 사양


역시 전력소모의 원인은 다이내믹 전력, 스태틱 전력으로 나뉜다.


다이내믹 전력은 3가지 원인으로 발생


1. 커패시턴스 스위칭에 의한 전력


2. 스위칭 과정에서 Vdd로부터 접지로 흐르는 '크로우바' 전류에 의한 단락회로 전력


3. 출력 파형의 글리치에 의한 전력


스태틱 전력은


1. 누설전류(문턱이하 전류 및 소스/드레인 접합 역 바이어스 전류) 


2. dc대기전류(예를 들어 로우 출력시의 슈도 NMOS회로) 


여기서 중요한 전력 소모 원인은 커패시턴스 스위칭 및 문턱이하 누설전류다.


다이내믹(스위칭 전력) 



=활성화지수(스위칭지수)



크로우바 전류에 의한 전력



단락회로 전력을 감소시키려면 상승 및 하강시간 혹은 에지 비율을 가능한 한 짧게 설정해야한다.


하지만 이는 국부적인 최적화가 된다.


만약 상승/하강 시간을 줄이기 위해 입력에 큰 드라이버를 사용한다면 커패시턴스를 증가시켜 전체 다이내믹 전력을 증가시키기 때문.


효과있는 방법 중 하나는 입력과 출력의 에지 비율을 최대한 같게 만드는 것이다.


또한 글리치 감소도 중요 이를 위해선 모든 게이트 입력에서 대략 같은 시간에 신호가 같은 시간에 도착해야 한다.


글리치란?




 디지털 회로 설계 에서는 Latch 등의 값을 저장하는 장치가 특정 신호패턴 아래에서 짧은 시간동안 본래 의도된 값이 아닌 다른 값들 사이에서 움직이는 현상을 말한다. 각 회로 단계에서의 신호처리에 시간이 걸리는 것이 기본적인 원인. 심플하게 말하면 하드웨어 오류다. 신호 전송상의 문제이기 때문에 하드웨어 설계상의 결함과는 구별된다.


이상 나무위키


스태틱(대기) 전력


가장 중요한 이슈는 문턱이하 누설이다. 최근에 소스 및 드레인이 가까워짐에 따라 더욱 중요해졌다.


누설전류 파라미터 


(=0일 때), 문턱전압을 동적으로 변화시키는 것, , 온도 등


입력 도착 시간을 맞추면 글리치를 감소시키고, 에지 비율을 같게 맞추면 단락 회로 전류를 최소화 시킬수 있다.


하지만 이렇게 해서 소모 전력을 낮추면 속도가 늦어질 수 있다.


이래서 전력 - 지연 곱이 중요한 파라미터가 되었다. 


5. 스태틱 MOS 게이트 회로


순차논리 소자는 정보를 저장할 수 있는 능력이 있다.


칩의 능동성을 감소시키는 것이 CMOS회로의 다이내믹 전력을 감소시키는 가장 좋은 방법이다.


불필요하게 전력 소모를 유발하는 글리치(glitch)를 최소화하기위해 게이트 입력에 신호가 도착하는 시간을 같게 만들어야 한다.


스위칭 동안의 단락회로 전류로 인한 전력 소모를 제한하기 위해 가능한 한 모든 신호의 상승 및 하강 시간은 같아야 한다.


전력 소모에 지연시간을 곱하여 전력-지연 곱이라는 유용한 평가 잣대를 고안 가능


이는 로직 동작을 한 번 수행하는 데 필요한 에너지를 측정하는 것


만약 두 설계를 비교한다면 에너지-지연 곱으로 비교한다. 즉 전력-지연 곱에 지연시간을 곱하여 얻는다.


직렬 연결된 두 NMOS트랜지스터는 AND 논리기능, 병렬 연결된 두 NMOS트랜지스터는 OR논리기능


병렬 연결된 두 PMOS트랜지스터는 AND 논리기능, 직렬 연결된 두 PMOS트랜지스터는 OR논리기능


트랜지스터의 크기 결정은 로직 게이트에서 트랜지스터의 폭을 설정하는 과정


소자의 크기는 스태틱 CMOS에서의 상승 및 하강 전송 지연을 명백히 제어했다.


비슷한 크기의 상승/하강 지연을 얻기 위해 PMOS소자는 NMOS소자의 2배 크기여야 한다.


이는 PMOS의 온 저항이 대략 NMOS 소자의 2배이기 때문이다.


다중 입력에서 슈도 NMOS 인버터가 나온다.


슈도 NMOS는 위의 부하에 PMOS를 배치하고 항상 ON이 되도록 접지에 연결한다.


NMOS가 OFF일 때 별도의 전원을 공급을 추가로 공급하지 않아도 출력을 VDD까지 올릴  수 있다.


3입력 슈도 NMOS NAND 게이트에서 3Wn의 크기의 소자를 사용한다. 


즉 인버터에서의 NMOS 소자의 3배 크기를 사용한다.


그 이유는 3개의 직렬저항이 존재하며 풀 다운 경로의 유효 저항 값을 인버터에서의 값으로 줄이려면 


트랜지스터의 크기를 3배로 해야하기 때문이다. 


슈도 NMOS 게이트의 크기를 결정하는 것은  및 타이밍의 관접에서 개별 소자에 대한 W/L 비를 정하는 것이다. 


표준 CMOS 로직 게이트를 설계 할때 입력 개수가 많은 게이트(팬인이 큰 게이트)에는 직렬 적층의 저항 때문에 심각한 단점이 존재한다.


이 말은 3,4 입력을 넘어가면 저항이 너무 커지거나 면적이 너무 커진다. 


드모르강 법칙 적용



좀더 많은 전력을 소모하고 더 큰 를 보이지만 풀 업 소자가 1개만 있으므로 


소모 면적은 8입력 CMOS NAND에 비해 현격하게 감소하고 은 현저하게 작아진다.


로직 게이트의 팬 아웃은 그 게이트가 구동하는 똑같은 로직 게이트의 수를 말한다.


팬 아웃 비는 게이트에 의해 구동되는 전체 커패시턴스를 그 게이트 입력 커패시턴스로 나눔으로써 구할 수 있다.


멀티플렉서 


로직에 맞는 CMOS 회로를 그릴 때는 밑에 그라운드 부분에는 를 그린다. 그래야 반대일 때 그라운드 적용


이때까지는 조합논리 회로를 살펴보았다.


반면 순차논리 회로는 출력 직전의 값에도 의존한다. 예를 들면 카운터 및 데이터 레지스터


순차회로의 기본은 쌍안정 회로, 예를 들면 래치, 플립플롭


래치와 플립플롭은 혼돈하여 많이 사용되는데


래치는 Enable되면 입력에서의 값을 출력으로 계속해서 전송하는 데 반해, 


플립플롭은 불연속적인 시점에서(클록의 상승 혹은 하강 에지) 그 값을 전송한다. 에지 트리거라고 한다.



A와 B는 안정된 동작점, C는 불안정한 동작점


안정되기 위해서는 루프 주위의 전압이득이 1보다 작아야 한다. 


그렇지 않으면 큰 이득으로 인해 변화가 증폭되어 재생효과에 의해 결국 출력이 반대 상태로 전환된다.


이런 쌍안정 회로는 플립플롭이라고 한다. 하지만 주로 더 복잡한 회로를 플립플롭에 많이 쓴다.


다음 글에서 래치에 관해서 알아보자!


+ Recent posts