본문 바로가기
반도체/이론

[8] 반도체소자 DRAM & NANDFLASH

by mn_su 2020. 9. 7.
728x90

DRAM(Dynamic Random Access memory)

DRAM은 원하는 위치에 접근할 때 다른 방해를 받지 않고 접근할 수 있는 것, 비순차적 접근이 가능한 소자이다. 비순차적 접근을 쉽게 이해하자면 구불구불 돌아갈 필요없이 바로 지정된 값으로 접근이 가능하다는 것이다. Dynamic이라는 용어가 붙은 이유는 메모리에 저장된 내용이 시간이 지나면 사라지기 때문이다.

DRAM의 구성은 Memory cell array(50-60%)와 controller(40-50%)로 구성되어 있다.

Memory cell은 실제로 데이터가 저장되는 곳으로 여러 cell들이 array 형태로 배열되어 있고 주기적으로 메모리에 저장된 내용이 손실되는 휘발성 소자임을 기억하자.

- Memory cell의 구성

Memory cell의 구성은 하나의 트랜지스터와 하나의 캐패시터로 구성되어있다. 이때 트랜지스터로 상대적으로 좀 더 빠른 NMOSFET을 이용한다. 따라서 우리는 NMOSFET과 캐패시터 각자의 역할을 알아볼 필요가 있다.

1차적으로 NMOSFET은 Gate에 달려있는 word line에서 다음단계로 넘어갈지 말지를 결정하게 된다. 즉 전하의 이동 통로 역할과 스위치 역할을 하는 것이다. 만약 여기서 다음단계로 넘어갈 수 있도록 신호가 떨어지면 bit line 으로 권한을 넘겨준다.

권한을 넘겨받은 bit line에서 이제 또 2가지 역할을 하게 된다. read를 하게될 것인지 혹은 write를 하게될 것인지 정한다. read를 한다는 것은 bit line이 floating된 상태에서 캐패시터에서 방출되는 전하량을 읽어 단순히 0이냐 1이냐를 판단하는 것이다. write를 한다는 것은 bit line에 1이 입력되어 전하가 트랜지스터를 거쳐 캐패시터에 축적하거나 bit line에 0이 입력되어 캐패시터에 축전된 전하가 bitline을 통해 방전되는 과정을 의미한다.

controller는 DRAM cell 동작을 위한 신호를 처리하는 회로들의 집합을 의미하고 주기적으로 메모리에 저장된 내용을 재입력해야한다. 따라서 회로가 복잡하게 구성되게 된다. 국제적은 규격으로 64ms마다 한번 0과 1로 재입력을 하는 것이다. 이것을 refresh라고 한다. 고생을 많이하는 소자라고 생각하면 이해하기 쉽고 구성과 동작원리를 자세히보면 어렵기 때문에 이정도만 알아두고 넘어가자.

다시한번 Memory cell과 controller로 이루어진 DRAM은 휘발성을 띄고 있다는 것을 명심하자.

DRAM 개발 추이 

DRAM의 개발 추이는 양산성을 확보하기 위해 꾸준히 미세화하고 있다는 사실은 아마 다들 알고있을 것이다. 미세화를 하기 위해서 우리는 위에서 배운 트랜지스터와 캐패시터 중에 무엇을 줄여야할까? 답은 캐패시터이다.

사진에서 보는 것과 같이 캐패시터의 크기가 무지막지하게 더 크다. 따라서 공정에 대해서는 이후에 다루겠지만 전공정에 대해서 캐패시터를 줄이는 방법에 대해 끊임없이 연구중인 것이다.

Flash memory

다음으로 볼 것은 Flash memory 소자이다. 이 소자는 최근에 수요가 부쩍늘어난 메모리 소자이다. 초기에는 하드디스크부터 시디롬, 유에스비, 지금에 와서는 ssd카드가 Flash memory에 해당된다고 보면 된다. Flash memory의 구조는 Floating Gate Flash와 Charge Trap Flash가 있는데 우선 Floating Gate Flash부터 보자.

Flash Gate Flash의 구조는 MOSFET의 Gate와 channel상에 Tunnling oxide와 Floating gate를 형성하고 있다. 전하는channel에서부터 oxide를 매우 얇게 만들었기 때문에 tunneling을 통해 Floating gate로 올라간다.

Charge Trap Flash도 개념적으로 새로운 구조는 아니다. 다만 Floating Gate부분의 도체를 부도체인 Charge Trap Layer로 대체했을뿐이다.

이제 Flash memory의 동작원리를 살펴보자. 살펴보기 전에 헷갈림을 방지하기 위해 우선적으로 요약을 해놓았다. 

0과 1이라는 숫자에 연연하지 말고 저장소에 저장이 되었으면 Program, 저장소에 저장이 안되었으면 erase 상태라고 일단 기억해 두자.

먼저 program을 보면 gate에 고전압을 인가하게 되면 channel에 있던 전자들이 floating gate쪽으로 끌려가게 된다. 이를 program이라고 한다. 즉, 저장소에 전자들이 저장이 되어있는 상태이다.

다음으로 erase를 보면 gate에 마이너스 고전압을 인가하면 전자들이 쫓겨나갈 것 같지만 매우 비효율적이다. 왜냐하면 인가전압을 20V라고 했을 때 제품사양을 -20V ~ 20V 총 40V의 범위를 두고 생산해야되기 때문이다. 따라서 Body 부분(파란색 부분)에 20V를 인가하여 전자들이 자연스레 나올 수 있게 한다. 이것이 erase의 과정이다.

자, 그럼 floating gate에 전자가 차있으면 program상태이고 차있지 않으면 erase상태인 것은 알았다. 그러면 왜 DRAM과 다르게 NANDFLASH에서는 read동작을 할때 program상태가 0이고 erase상태가 1일까?

왜냐하면 NANDFLASH는 기본적으로 직렬구조로 연결되어 있기때문에 read할 소자를 읽기 위해선 일단 모든 소자에 전류를 흘려주어야 한다(빨간색 부분). NAND소자 특성상 하나라도 ON이 안되면 동작을 안하기 때문이다. 그래서 모든 소자에 ON을 시켜준 상태에서, 특정 하나의 소자를 읽고 싶을때 특정 하나의 소자가 동작을 하면 전류는 전체적으로 흐르지 않게 된다. 하나가 읽혔기 때문에 NAND소자 특성상 전체전류가 0이 되기 때문이다. 반면에 소자가 읽혀지지 않으면 이미 모든 소자에 전류가 흐르고 있기 때문에 1이 되는 것이다.

이런 구조가 가능한 이유는 threshold voltage가 erase state와 program state이 서로 다르기 때문이다. 따라서 아래 그래프에서 파란색부분을 7V라 가정했을 때 초록색부분의 읽혀지는 소자의 전압을 1V를 주면 erase state만 읽혀 1이 되는 것이다.

이러한 동작특성을 보이는 NANDFLASH 는 원래 2D 형태였다. 하지만 2020년 9월을 기준으로는 3D형태를 넘어 72단, 96단의 3D NANDFLASH개발에 성공했다. 기술적으로는 200단이 가능하다고 한다.

마지막으로 DRAM과 NANFLASH에 대해 정리하자면 다음과 같다. 각각의 구조는 학습을 위해 간단히만 정리한 것이므로 조금이라도 도움이 되었으면 한다.

'반도체 > 이론' 카테고리의 다른 글

[7] 반도체 소자 MOSFET  (2) 2020.09.06
[6] 반도체 소자 BJT  (0) 2020.09.06
[5] 반도체 소자 diode 종류  (0) 2020.09.06
[3] 반도체 소자 기초 이론3  (0) 2020.09.05
[2] 반도체 소자 기초 이론2  (2) 2020.09.05