상기 기술적 과제를 달성하기 위한 본 발명의 상변화 메모리 장치의 일 태양은 다수의 상변화 메모리 셀을 포함하는 메모리 셀 어레이, 및 정상 동작 모드에서는 외부에서 제1 전압을 인가받아 다수의 상변화 메모리 셀에 기입 데이터를 기입하기 위한 기입 펄스를 제공하고, 테스트 모드에서는 외부에서 제1 전압보다 높은 레벨의 제2 전압을 인가받아 다수의 상변화 메모리 셀을 파이어링하기 위한 파이어링 펄스를 제공하는 기입 회로를 포함한다.
상기 기술적 과제를 달성하기 위한 본 발명의 상변화 메모리 장치의 다른 태양은 다수의 상변화 메모리 셀과, 정상 동작 모드에서는 다수의 상변화 메모리 셀에 기입 데이터를 기입하기 위한 기입 펄스를 제공하고 테스트 모드에서는 다수의 상변화 메모리 셀을 파이어링하기 위한 파이어링 펄스를 제공하는 기입 회로를 포 함하는 상변화 메모리 장치를 제공하고, 상변화 메모리 장치를 테스트 모드에 진입시키고, 외부로부터, 정상 동작 모드에서 인가되는 제1 전압보다 높은 제2 전압을 인가받아, 다수의 상변화 메모리 셀에 파이어링 펄스를 제공하는 것을 포함한다.
상기 기술적 과제를 달성하기 위한 본 발명의 상변화 메모리 장치의 또 다른 태양은 다수의 상변화 메모리 셀을 포함하는 상변화 메모리 장치를 제공하고, 다수의 상변화 메모리 셀에 저장된 데이터를 검증 독출(verify read)하고, 검증 독출된 데이터가 특정 상태(status)인지 여부를 검토하여, 검증 독출된 데이터가 특정 상태가 아닌 파이어링 페일 상변화 메모리 셀을 찾아내고, 다수의 파이어링 페일 상변화 메모리 셀을 특정 상태로 파이어링하는 것을 포함한다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
도 1은 본 발명의 실시예들에 따른 상변화 메모리 장치를 설명하기 위한 개념적인 블록도이다.
도 1을 참조하면, 본 발명의 실시예들에 따른 상변화 메모리 장치는 메모리 셀 어레이(110), 로우 디코더(124), 컬럼 디코더(126), 어드레스 버퍼(128) 및 기입 회로(130)를 포함한다.
메모리 셀 어레이(110)는 다수의 상변화 메모리 셀을 포함한다. 도면에는 도시하지 않았으나, 상변화 메모리 셀은 결정 상태 또는 비정질 상태에 따라 서로 다른 2개의 저항값을 갖는 상변화 물질을 구비하는 가변 저항 소자와, 가변 저항 소자에 흐르는 전류를 제어하는 억세스 소자를 포함한다. 여기서, 억세스 소자는 가변 저항 소자와 직렬로 연결된 다이오드 또는 트랜지스터일 수 있다. 또한, 상변화 물질은 2개의 원소를 화합한 GaSb, InSb, InSe. Sb2Te3, GeTe, 3개의 원소를 화합한 GeSbTe, GaSeTe, InSbTe, SnSb2Te4, InSbGe, 4개의 원소를 화합한 AgInSbTe, (GeSn)SbTe, GeSb(SeTe), Te81Ge15Sb2S2 등 다양한 종류의 물질을 사용할 수 있다. 본 발명의 실시예들에서는 예를 들어, 게르마늄(Ge), 안티모니(Sb), 텔루리움(Te)으로 이루어진 GeSbTe를 이용할 수 있다.
로우 디코더(124)는 어드레스 버퍼(128)로부터 로우 어드레스(XADDR)를 제공받아 디코딩하여 기입될 다수의 상변화 메모리 셀의 행(row)을 지정한다. 컬럼 디코더(126)는 어드레스 버퍼(128)로부터 컬럼 어드레스(YADDR)를 제공받아 디코딩하여 기입될 다수의 상변화 메모리 셀의 열(column)을 지정한다.
본 발명의 실시예들에 따른 상변화 메모리 장치의 기입 회로(130)는 정상 동작 모드에서는 기입 동작을 하고, 테스트 모드에서는 파이어링 동작을 수행한다. 구체적으로, 정상 동작 모드에서 외부에서 제1 전압(예를 들어, 전원 전압)을 인가 받아 다수의 상변화 메모리 셀에 기입 데이터를 기입하기 위한 기입 펄스를 제공하고, 테스트 모드에서는 외부에서 제1 전압보다 높은 레벨의 제2 전압(예를 들어, 외부 승압 전압(EXVPP))을 인가받아 다수의 상변화 메모리 셀을 파이어링하기 위한 파이어링 펄스(I_firing)를 제공한다. 즉, 본 발명에서는 파이어링을 하기 위한 별도의 회로 블록을 포함하지 않고, 기입 회로(130)를 이용하여 파이어링을 수행한다.
또한, 테스트 모드에서 기입 회로(130)는 기입 검증(write verify) 동작과 거의 유사한 파이어링 검증(firing verify) 동작을 수행하여 다수의 상변화 메모리 셀 중 적어도 하나의 파이어링 페일 상변화 메모리 셀을 찾아내어, 찾아낸 파이어링 페일 상변화 메모리 셀만을 특정 상태(즉, 리셋 상태 또는 셋 상태)로 파이어링하기 위한 파이어링 펄스를 제공할 수도 있다. 또는, 파이어링 검증 동작 없이 다수의 상변화 메모리 셀을 파이어링하기 위한 파이어링 펄스를 제공할 수도 있다.
여기서, 파이어링 펄스는 다수의 상변화 메모리 셀을 셋 상태로 파이어링하기 위한 파이어링 셋 펄스와, 리셋 상태로 파이어링하기 위한 파이어링 리셋 펄스를 포함할 수 있다.
본 발명의 실시예들에 따른 상변화 메모리 장치에서 파이어링 검증 동작을 수행하는 경우에는, 상변화 메모리 셀을 과도하게 파이어링하지 않고 셀별로 적절한 레벨의 파이어링 펄스를 제공할 수 있다. 따라서, 파이어링 단계에서 약한 상변화 메모리 셀들에게 물리적 페일이 발생되는 것을 방지할 수 있다. 또한, 기입 회로를 이용하여 파이어링을 수행하여 파이어링을 하기 위한 별도의 회로 블록이 불 필요하다.
한편, 상변화 메모리 장치에서는 통상적으로 정상 동작 모드에서 분할 기입(division write) 방식을 사용할 수 있다. 분할 기입 방식을 설명하면 다음과 같다. 다수의 입출력핀(예를 들어, 16개 핀)을 통해서 동시에 입력된 기입 데이터를 다수(예를 들어, 16개)의 상변화 메모리 셀에 동시에 기입할 수 없다. 예를 들어, 하나의 상변화 메모리 셀에 제공되는 리셋 펄스의 전류 레벨이 1mA라면, 16개의 상변화 메모리 셀에 기입 데이터를 동시에 기입하려면 16mA가 필요하게 되고, 이러한 리셋 펄스를 제공하는 기입 드라이버에서의 효율이 약 10%라면, 실제로는 160mA가 필요하게 되기 때문이다. 이와 같이 상변화 메모리 장치의 전류 구동 능력(current drive ability)에는 한계가 있기 때문에, 적어도 하나의 상변화 메모리 셀을 포함하는 셀 그룹 단위로 분할 기입(division write)을 하게 된다. 예를 들어, x2 분할 기입 모드라면, 16개의 상변화 메모리 셀은 2개씩 8개의 셀 그룹으로 구분되고, 8번의 분할 기입 세션(division write session) 동안 기입되게 된다.
그런데, 본 발명의 일 실시예에 따른 상변화 메모리 장치에서는 정상 동작 모드에서 x2 분할 기입 모드로 기입 데이터를 기입하더라도, 테스트 모드에서 파이어링할 때에는 x16 분할 기입 모드로 파이어링할 수 있다. 왜냐하면, 도 1을 참조하여 설명한 바와 같이, 외부에서 직접 제2 전압(예를 들어, 외부 승압 전압)을 제공받기 때문에, 상변화 메모리 장치의 전류 구동 능력이 문제되지 않기 때문이다. 정리하면, 기입 회로는 정상 동작 모드에서는 다수의 상변화 메모리 셀 중 a(단, a는 자연수)개의 상변화 메모리 셀에 동시에 기입 펄스를 제공하고, 테스트 모드에 서는 다수의 상변화 메모리 셀 중 b(단, b는 자연수) 개의 상변화 메모리 셀에 동시에 파이어링 펄스를 제공한다라고 가정하면, b는 a보다 같거나 크게 된다.
또한, 도 1에서 상변화 메모리 장치가 외부에서 테스트 명령(test_CMD)을 제공받아, 테스트 모드로 진입하는 것으로 도시하였으나, 이에 한정되는 것은 아니다. 예를 들어, 외부에서 제공되는 테스트 명령(test_CMD)에 의해 테스트 모드에 진입되지 않고, 퓨즈(fuse) 등을 이용하여 테스트 모드에 진입될 수도 있다.
이하에서는, 도 2를 참조하여 테스트 모드에 진입하는 것의 예를 구체적으로 설명하고, 도 3a 내지 도 9b를 참조하여 파이어링 검증 동작을 수행하여 파이어링 펄스를 제공하는 다양한 예들을 구체적으로 설명하고, 도 10 내지 도 13을 참조하여 상변화 메모리 장치의 구체적인 구성을 설명한다.
도 2는 본 발명의 실시예들에 따른 상변화 메모리 장치가 테스트 모드에 진입하는 것을 설명하기 위한 타이밍도이다. 여기에서, 설명되는 테스트 모드 진입 방법은 NOR 플래시 장치에서 많이 사용되는 모드 레지스터 세트(Mode Register Set) 신호를 이용한 방법을 예로 들고 있으나, 이에 한정되는 것은 아니다. 예를 들어, 상변화 메모리 장치의 인터페이스(interface)가 변경될 경우 테스트 모드 진입 방식은 변경될 수도 있다.
도 2를 참조하면, MRSx 신호는 모드 레지스터 세트(Mode Register Set) 신호를 나타내고, CEx 신호는 칩 인에이블(Chip Enable) 신호를 나타내고, WEx 신호는 기입 인에이블(Write Enable) 신호를 나타내고, ADDR은 어드레스를 나타내고, DATA는 데이터를 나타내고, TM_firing은 파이어링 인에이블(firing enable) 신호를 나 타낸다. 도 1에서 설명된 테스트 명령(test_CMD)은 모드 레지스터 세트 신호(MRSx), 어드레스(ADDR), 데이터(DATA) 등의 조합일 수 있다.
모드 레지스터 세트 신호(MRSx)가 하이 레벨이 된 후, 어드레스(ADDR)와 데이터(DATA)가 2 사이클(cycle)에 걸쳐서 입력된다. 이 때, 입력되는 데이터(DATA)가 무엇인지에 따라서, 어떤 테스트를 하기 위한 테스트 모드로 진입될지가 정해지는데, 도 2에서는 파이어링 테스트를 하기 위한 테스트 모드로 진입된다. 따라서, 파이어링 인에이블 신호(TM_firing)가 하이 레벨로 인에이블된다.
도 3a는 본 발명의 일 실시예에 따른 상변화 메모리 장치의 파이어링 방법을 설명하기 위한 개념적인 타이밍도이고, 도 3b는 도 3a의 타이밍도를 실시하기 위한 예시적인 순서도이다. 도 3a 및 도 3b는 다수의 상변화 메모리 셀을 셋 상태로 파이어링하는 것을 구체적으로 설명한 것이다. 도 4, 도 5a 내지 도 5b는 본 발명의 일 실시예에 따른 상변화 메모리 장치에서 사용되는 파이어링 셋 펄스의 형태를 설명하기 위한 도면들이다.
우선, 도 3a를 참조하면, 본 발명의 일 실시예에 따른 상변화 메모리 장치는 다수의 파이어링 루프(SL=1~SLmax)를 통해서 파이어링하게 되는데, 각 파이어링 루프(SL=1~SLmax)가 시작되기 전에 검증 독출(VERIFY_READ)을 하고, 파이어링 루프(SL=1~SLmax) 내에서는 검증 데이터와 파이어링 데이터가 서로 다른 다수의 파이어링 페일 상변화 메모리 셀을 찾아서, 찾아낸 파이어링 페일 상변화 메모리 셀만을 셋 상태로 파이어링하게 된다. 여기서, 검증 데이터는 파이어링하려고 하는 다수의 상변화 메모리 셀이 가지고 있는 데이터를 의미하고, 파이어링 데이터는 파이 어링을 통해서 상기 다수의 상변화 메모리 셀에 저장시키려는 데이터를 의미한다.
한편, 각 파이어링 루프(SL=1~SLmax) 내에서는 도 4에서와 같이 다수의 파이어링 페일 상변화 메모리 셀에 파이어링 셋 펄스(I_firing_SET)를 제공하여, 셋 상태로 파이어링하게 된다. 파이어링 셋 펄스(I_firing_SET)의 형태는 여러가지일 수 있다. 예를 들어, 도 4 및 도 5a에서와 같이 파이어링 셋 펄스(I_firing_SET)는 소정 전류 레벨에서 순차적으로 감소하는 스테이지를 포함하는 형태일 수도 있고, 도 5b 및 도 5c와 같이 각 스테이지 사이에 기설정된 전류 레벨을 갖는 구간이 포함될 수 있다. 도 5b는 기설정된 전류 레벨이 0mA이고, 도 5b는 기설정된 전류 레벨이 0mA 초과된 값을 갖는 경우를 도시한 것이다. 이와 같은 파이어링 셋 펄스(I_firing_SET)의 형태는 이러한 예시에 한정되지 않는다. 예를 들어, 파이어링 셋 펄스(I_firing_SET)는 소정 전류 레벨에서 순차적으로 증가하다가 감소하는 스테이지를 가질 수도 있다.
그런데, 각 파이어링 루프(SL=1~SLmax)에서 사용되는 파이어링 셋 펄스(I_firing_SET)의 전류 레벨은 달라질 수 있다. 파이어링 셋 펄스(I_firing_SET)는 소정 전류 레벨에서 순차적으로 감소하는 스테이지를 갖는데, 도 4에 도시된 바와 같이, 파이어링 루프(I_firing_SET)가 증가할수록 상기 소정 전류 레벨이 증가할 수 있다. 다만, 본 발명의 권리 범위는 이에 한정되지 않고, 예를 들어, 파이어링 루프(I_firing_SET)가 증가하여도 상기 소정 전류 레벨은 일정할 수도 있다.
도 3a 및 도 3b를 참조하면, 우선 파이어링 루프(SL)를 1로 세팅한다(S10).
다수의 상변화 메모리 셀로부터 다수의 검증 데이터(VDATA)를 검증 독출하 고(S20), 검증 데이터(VDATA)와 파이어링 데이터(FDATA)를 비교하여 동일한지 여부를 판단한다(S30). 여기서, 파이어링 데이터(FDATA)는 모두 셋 상태를 의미하는 데이터일 수 있다.
비교 결과, 검증 데이터(VDATA)와 파이어링 데이터(FDATA)가 동일한 경우에는 파이어링이 성공된 것이므로 파이어링을 종료한다.
비교 결과, 검증 데이터(VDATA)와 파이어링 데이터(FDATA)가 서로 동일하지 않은 파이어링 페일 상변화 메모리 셀을 셋 상태로 파이어링한다(S40).
한편, 파이어링 루프(SL)가 기설정된 최대 파이어링 루프(SLmax)와 동일한지 여부를 검토한다(S50).
비교 결과, 파이어링 루프(SL)가 기설정된 최대 파이어링 루프(SLmax)와 동일하지 않으면 파이어링 루프(SL)를 1 증가시키고(S60), 상기 검증 독출(S20), 파이어링 페일 상변화 메모리 셀을 찾아내는 것(S30), 파이어링(S40)을 반복한다. 한편, 동일할 경우에는 파이어링 동작을 종료한다.
한편, 도면에는 표시하지 않았으나, 검증 독출(S20)하기 전에, 다수의 상변화 메모리 셀에 셋 상태의 데이터를 기입하는 것을 더 포함하여도 무방하다.
도 6a는 본 발명의 다른 실시예에 따른 상변화 메모리 장치의 파이어링 방법을 설명하기 위한 개념적인 타이밍도이고, 도 6b는 도 6a의 타이밍도를 실시하기 위한 예시적인 순서도이다. 도 6a 및 도 6b는 다수의 상변화 메모리 셀을 리셋 상태로 파이어링하는 것을 구체적으로 설명한 것이다. 도 7은 본 발명의 일 실시예에 따른 상변화 메모리 장치에서 사용되는 파이어링 리셋 펄스의 형태를 설명하기 위 한 도면들이다.
우선, 도 6a를 참조하면, 본 발명의 일 실시예에 따른 상변화 메모리 장치는 다수의 파이어링 루프(RL=1~RLmax)를 통해서 파이어링하게 되는데, 각 파이어링 루프(RL=1~RLmax)가 시작되기 전에 검증 독출(VERIFY_READ)을 하고, 파이어링 루프(RL=1~RLmax) 내에서는 검증 데이터와 파이어링 데이터가 서로 다른 다수의 파이어링 페일 상변화 메모리 셀을 찾아서, 찾아낸 파이어링 페일 상변화 메모리 셀만을 리셋 상태로 파이어링하게 된다.
각 파이어링 루프(RL=1~RLmax)에서 사용되는 파이어링 리셋 펄스(I_firing_RESET)의 전류 레벨은 달라질 수 있다. 파이어링 리셋 펄스(I_firing_RESET)는 도 7에 도시된 바와 같이, 파이어링 루프(I_firing_RESET)가 증가할수록 상기 소정 전류 레벨이 증가할 수 있다. 다만, 본 발명의 권리 범위는 이에 한정되지 않고, 예를 들어, 파이어링 루프(I_firing_RESET)가 증가하여도 상기 소정 전류 레벨은 일정할 수도 있다.
도 6a 및 도 6b를 참조하면, 우선 파이어링 루프(RL)를 1로 세팅한다(S11).
다수의 상변화 메모리 셀로부터 다수의 검증 데이터(VDATA)를 검증 독출하고(S20), 검증 데이터(VDATA)와 파이어링 데이터(FDATA)를 비교하여 동일한지 여부를 판단한다(S31). 여기서, 파이어링 데이터(FDATA)는 모두 리셋 상태를 의미하는 데이터일 수 있다.
비교 결과, 검증 데이터(VDATA)와 파이어링 데이터(FDATA)가 동일한 경우에는 파이어링이 성공된 것이므로 파이어링을 종료한다.
비교 결과, 검증 데이터(VDATA)와 파이어링 데이터(FDATA)가 서로 동일하지 않은 파이어링 페일 상변화 메모리 셀을 리셋 상태로 파이어링한다(S41).
한편, 파이어링 루프(RL)가 기설정된 최대 파이어링 루프(RLmax)와 동일한지 여부를 검토한다(S51).
비교 결과, 파이어링 루프(RL)가 기설정된 최대 파이어링 루프(RLmax)와 동일하지 않으면 파이어링 루프(RL)를 1 증가시키고(S61), 상기 검증 독출(S20), 파이어링 페일 상변화 메모리 셀을 찾아내는 것(S31), 파이어링(S41)을 반복한다. 한편, 동일할 경우에는 파이어링 동작을 종료한다.
한편, 도면에는 표시하지 않았으나, 검증 독출(S20)하기 전에, 다수의 상변화 메모리 셀에 리셋 상태의 데이터를 기입하는 것을 더 포함하여도 무방하다.
도 8a는 본 발명의 또 다른 실시예에 따른 상변화 메모리 장치의 파이어링 방법을 설명하기 위한 개념적인 타이밍도이고, 도 8b는 도 8a의 타이밍도를 실시하기 위한 예시적인 순서도이다. 도 3a 및 도 3b와 실질적으로 동일한 부분에 대해서는 동일한 도면 부호를 사용하며, 해당 부분에 대한 상세한 설명은 생략하기로 한다.
도 6a 및 도 6b를 참조하면, 파이어링 루프(SL)를 1로 세팅하고(S10), 다수의 검증 데이터(VDATA)를 검증 독출하고(S20), 검증 데이터(VDATA)와 파이어링 데이터(FDATA)를 비교하여 동일한지 여부를 판단한다(S32). 여기서, 파이어링 데이터(FDATA)는 모두 리셋 상태를 의미할 수 있다. 비교 결과, 검증 데이터(VDATA)와 파이어링 데이터(FDATA)가 서로 동일하지 않은 파이어링 페일 상변화 메모리 셀을 셋 상태로 파이어링한다(S40). 이어서, 파이어링 페일 상변화 메모리 셀에 리셋 데이터를 기입한다(S80).
도 9a는 본 발명의 또 다른 실시예에 따른 상변화 메모리 장치의 파이어링 방법을 설명하기 위한 개념적인 타이밍도이고, 도 9b는 도 9a의 타이밍도를 실시하기 위한 예시적인 순서도이다. 도 7a 및 도 7b와 실질적으로 동일한 부분에 대해서는 동일한 도면 부호를 사용하며, 해당 부분에 대한 상세한 설명은 생략하기로 한다.
도 9a 및 도 9b를 참조하면, 파이어링 루프(RL)를 1로 세팅하고(S11), 다수의 검증 데이터(VDATA)를 검증 독출하고(S20), 검증 데이터(VDATA)와 파이어링 데이터(FDATA)를 비교하여 동일한지 여부를 판단한다(S33). 여기서, 파이어링 데이터(FDATA)는 모두 셋 상태 또는 리셋 상태를 의미할 수 있다. 비교 결과, 검증 데이터(VDATA)와 파이어링 데이터(FDATA)가 서로 동일하지 않은 파이어링 페일 상변화 메모리 셀을 리셋 상태로 파이어링한다(S41). 이어서, 파이어링 페일 상변화 메모리 셀에 셋 데이터를 기입한다(S80).
도 10은 본 발명의 일 실시예에 따른 상변화 메모리 장치를 설명하기 위한 블록도이다. 도 10은 본 발명의 일 실시예에 따른 상변화 메모리 장치의 파이어링 방법을 구현하기 위한 예시적인 블록도이고, 본 발명이 이에 한정되는 것은 아니다. 도 1과 실질적으로 동일한 부분에 대해서는 동일한 도면 부호를 사용하며, 해당 부분에 대한 상세한 설명은 생략하기로 한다.
우선 도 10을 참조하면, 본 발명의 실시예들에 따른 상변화 메모리 장치는 메모리 셀 어레이(110), 로우 디코더(124), 컬럼 디코더(126), 어드레스 버퍼(128) 및 기입 회로(130)를 포함하고, 기입 회로(130)는 비교부(140), 검증 센스 앰프(142), 데이터 입력 버퍼(144), 기입 펄스 제공부(160), 기입 드라이버(170), 제어부(180), 커맨드 버퍼(186), 셋 제어 신호 제공부(190) 등을 포함할 수 있다. 이하에서는 테스트 모드에서 파이어링을 수행하는 기입 회로(130)의 동작을 설명하도록 한다.
비교부(140)는 검증 센스 앰프(142)에 의해 다수의 상변화 메모리 셀로부터 검증 독출된 데이터(VDATA)(이하, 검증 데이터라 함)와, 데이터 입력 버퍼(144)를 통해서 입력된 데이터(FDATA)(이하, 파이어링 데이터라 함)를 비교하여, 비교 신호(PASS)를 출력한다. 여기서, 파이어링 데이터는 셋(SET) 상태를 나타내는 데이터일 수 있다. 비교 신호(PASS)에는 다수의 상변화 메모리 셀 중 검증 데이터(VDATA)와 파이어링 데이터(FDATA)가 서로 다른 적어도 하나의 파이어링 페일 상변화 메모리 셀을 나타낸다.
커맨드 버퍼(186)는 외부로부터 예를 들어 도 2에서 도시된 바와 같은 테스트 명령(test_CMD)를 제공받아, 하이 레벨로 인에이블된 파이어링 인에이블 신호(TM_firing)를 제공한다. 파이어링 인에이블 신호(TM_firing)가 하이 레벨이 되면, 상변화 메모리 장치는 테스트 모드로 진입하게 된다.
제어부(180)는 파이어링 인에이블 신호(TM_firing)를 제공받아 다수의 파이어링 페일 상변화 메모리 셀이 파이어링되기 위한 n(단, n은 자연수)번째 파이어링 루프를 나타내는 파이어링 루프 신호(firing_LOOP)를 기입 펄스 제공부(160), 셋 제어 신호 제공부(190) 등에 제공한다. 도면에는 표시하지 않았으나, 기입 펄스 제공부(160), 셋 제어 신호 제공부(190), 검증 센스 앰프(142), 기입 드라이버(170) 등에 별도의 동작 인에이블 신호를 제공하여 기입 동작을 제어할 수 있다.
셋 제어 신호 제공부(190)는 n번째 파이어링 루프를 나타내는 파이어링 루프 신호(firing_LOOP)를 제공받아, 소정 전압 레벨에서 순차적으로 감소하는 다수의 스테이지를 포함하며 상기 소정 전압 레벨은 각 파이어링 루프마다 변하는 셋 제어 신호(SET_CON)를 제공한다. 즉, 셋 제어 신호(SET_CON)는 도 4, 도 5a 내지 도 5c의 파이어링 셋 펄스와 동일 또는 유사한 파형을 갖는다. 또한, 셋 제어 신호 제공부(190)는 액티브 시간이 서로 중첩되지 않는 다수의 제어 펄스(PS)를 순차적으로 제공한다. 이러한 셋 제어 신호 제공부(190)의 자세한 블록은 도 11을 이용하여 후술한다.
기입 펄스 제공부(160)는 비교 신호(PASS), 파이어링 루프 신호(firing_LOOP), 제어 펄스(PS)를 제공받아, 셋 펄스 폭 제어 신호(PWD_SET) 및 리셋 펄스 폭 제어 신호(PWD_RESET)를 제공한다. 여기서, 셋 펄스 폭 제어 신호(PWD_SET)는 순차적으로 제공되는 다수의 제어 펄스(PS) 중 첫번째 제어 펄스의 액티브 시점에서 액티브되며, 다수의 제어 펄스(PS) 중 마지막 제어 펄스(PS)의 인액티브(inactive) 시점에서 인액티브된다.
기입 드라이버(170)는 파이어링 데이터(FDATA), 셋 제어 신호(SET_CON), 셋 펄스 폭 제어 신호(PWD_SET) 및 리셋 펄스 폭 제어 신호(PWD_RESET)를 제공받고 외부로부터 제2 전압(예를 들어, 외부 승압 전압)(EXVPP)을 제공받고, 적어도 하나의 파이어링 페일 상변화 메모리 셀에 파이어링 셋 펄스(I_firing_SET) 또는 파이어링 리셋 펄스(I_firing_RESET)를 제공하여 파이어링 데이터(FDATA)를 기입한다. 구체적으로 기입 드라이버(170)는 파이어링 데이터(FDATA)가 셋 데이터이면, 셋 제어 신호(SET_CON)에 응답하여 셋 펄스 폭 제어 신호(PWD_SET)가 액티브되어 있는 동안 소정 전류 레벨에서 순차적으로 감소하는 다수의 스테이지를 포함하고, 상기 소정 전류 레벨은 각 파이어링 루프마다 변하는 파이어링 셋 펄스(I_firing_SET)를 제공하고, 파이어링 데이터(FDATA)가 리셋 데이터이면, 리셋 펄스 폭 제어 신호(PWD_RESET)가 액티브되어 있는 동안 파이어링 리셋 펄스(I_firing_RESET)를 제공한다. 이러한 기입 드라이버(170)의 예시적인 회로도는 도 13에 도시되어 있다.
도 11은 도 10의 셋 제어 신호 제공부의 예시적인 블록도이다.
우선 도 11을 참조하면, 셋 제어 신호 제공부(190)는 오실레이터(192), 레지스터(194), 레벨 제어 신호 제공부(196), 셋 제어부(198)를 포함한다.
오실레이터(192)는 클럭(POSC)을 제공하고, 레지스터(194)는 클럭(POSC)을 제공받아 액티브 시간이 서로 중첩되지 않는 다수의 제어 펄스(PS)를 순차적으로 제공한다.
레벨 제어 신호 제공부(196)는 n번째 파이어링 루프를 나타내는 파이어링 루프 신호(firing_LOOP)를 제공받아, n번째 파이어링 루프에 대응하는 레벨 제어 신호를 제공한다. n번째 파이어링 루프에 대응하는 레벨 제어 신호를 제공하는 방법은 여러가지 있을 수 있다. 예를 들어, 각 파이어링 루프에 해당할 때 제공하는 레벨 제어 신호를 별도의 메모리에 저장해 두었다가 n번째 파이어링 루프를 나타내는 파이어링 루프 신호(firing_LOOP)가 입력되면 출력할 수도 있고, 입력되는 파이어링 루프 신호(firing_LOOP)를 디코딩하여 레벨 제어 신호를 생성하여 출력할 수도 있다.
셋 제어부(198)는 다수의 제어 펄스(PS)를 순차적으로 제공받아 소정 전압 레벨에서 순차적으로 감소하는 다수의 스테이지를 포함하는 셋 제어 신호(SET_CON)를 제공하되, 레벨 제어 신호(L_CON)를 제공받아 상기 소정 전압 레벨이 변하게 한다.
이러한 셋 제어부(198)의 예시적 회로도에 대해 도 12를 참조하여 자세히 설명한다.
도 12의 셋 제어부(198a)는 도 4의 파이어링 셋 펄스(I_firing_SET)를 생성하기 위해서 사용되는 셋 제어 신호(SET_CON)를 생성하기 위한 예시적 회로도이다. 셋 제어부(198a)는 제1 노드(N1)와 제2 노드(N2) 사이에 직렬로 연결된 다수의 저항(R11~Ra)을 포함하는 제1 저항열(210)과, 레벨 제어 신호(L_CON21~L_CONb)를 제공받아 제1 노드(N1)의 전압 레벨을 조절하는 제1 전압 레벨 조절부(220)와, 다수의 제어 펄스(PS)를 순차적으로 제공받아 제1 저항열(210)의 다수의 저항(R11~Ra) 사이의 노드 전압을 순차적으로 출력하는 전송부(230)를 포함한다.
여기서, 제1 전압 레벨 조절부(220)는 제1 노드(N1)와 전원 전압(VDD) 사이에 직렬로 연결된 다수의 저항(R21~Rb)을 포함하는 제2 저항열(222), 제2 저항열(222)의 다수의 저항(R21~Rb) 사이의 노드에 연결되고, 레벨 제어 신호(L_CON21~L_CONb)에 응답하여 선택적으로 턴온되는 다수의 PMOS 트랜지스터(224) 를 포함할 수 있다.
도 13은 도 10의 기입 드라이버의 예시적인 회로도이다.
도 13을 참조하면, 기입 드라이버(170)는 기입 드라이버 제어부(172), 셋 펄스 구동부(174), 리셋 펄스 구동부(176), 스위칭부(177) 및 풀다운부(178)를 포함한다.
기입 드라이버 제어부(172)는 파이어링 데이터(FDATA), 셋 펄스 폭 제어 신호(PWD_SET) 및 리셋 펄스 폭 제어 신호(PWD_RESET)를 제공받아 각각 셋 펄스 구동부(174), 리셋 펄스 구동부(176), 풀다운부(178)를 제어하는 제1 내지 제3 출력 신호(OUT1, OUT2, OUT3)를 제공한다. 기입 드라이버 제어부(172)는 다수의 인버터(INV1, INV2)와, 다수의 낸드 게이트(NAND1, NAND2)와, 노아 게이트(NOR)를 포함할 수 있다. 제1 출력 신호(OUT1)는 파이어링 데이터(FDATA)의 반전 신호 및 셋 펄스 폭 제어 신호(PWD_SET)의 낸드 연산 신호의 반전 신호이고, 제2 출력 신호(OUT2)는 파이어링 데이터(FDATA)와 리셋 펄스 폭 제어 신호(PWD_RESET)의 낸드 연산 신호이고, 제3 출력 신호(OUT3)는 리셋 펄스 폭 제어 신호(PWD_RESET)와 셋 펄스 폭 제어 신호(PWD_SET)의 노아 연산 신호이다.
셋 펄스 구동부(174)는 셋 제어 신호(SET_CON)와 제1 출력 신호(OUT1)를 제공받아 파이어링 셋 펄스(I_firing_SET)를 제공한다. 셋 펄스 구동부(174)는 다수의 NMOS 트랜지스터(MN1, MN2)와, 다수의 PMOS 트랜지스터(MP1, MP2, MP3)를 포함한다.
리셋 펄스 구동부(176)는 제2 출력 신호(OUT2)를 제공받아 파이어링 리셋 펄 스(I_firing_RESET)를 제공한다. 리셋 펄스 구동부(176)는 제2 출력 신호(OUT2)에 응답하여 턴온되는 PMOS 트랜지스터(MP4)를 포함한다.
스위칭부(177)는 파이어링 인에이블 신호(TM_firing)에 응답하여, 정상 동작 모드에서는 전원 전압을 내부에서 승압시켜 형성한 내부 승압 전압(VPP)을 셋 펄스 구동부(174)와 리셋 펄스 구동부(175)에 제공하고, 테스트 모드에서는 외부에서 제공된 외부 승압 전압(EXVPP)을 셋 펄스 구동부(174)와 리셋 펄스 구동부(175)에 제공하게 된다. 내부 승압 전압(VPP)보다 외부에서 제공된 외부 승압 전압(EXVPP)의 전압 레벨이 더 높다.
풀다운부(178)는 제3 출력 신호(OUT3)를 제공받아 출력 노드(NOUT)의 레벨을 풀다운하는 역할을 한다. 풀다운부(178)는 제3 출력 신호(OUT3)에 응답하여 턴온되는 NMOS 트랜지스터(MN3)를 포함하는데, NMOS 트랜지스터(MN3)의 전류 구동 능력은 PMOS 트랜지스터(MP3, MP4)의 전류 구동 능력보다 크다.
테스트 모드에서 상변화 메모리 셀에 셋 상태의 파이어링 데이터(FDATA)를 제공하는 경우, 기입 드라이버(170)의 동작을 살펴보면 다음과 같다.
파이어링 데이터(FDATA)는 로우 레벨이고, 셋 펄스 폭 제어 신호(PWD_SET)는 하이 레벨이므로, 낸드 게이트(NAND1)는 로우 레벨의 신호를 출력하고, 인버터(INV2)를 거쳐서 제1 출력 신호(OUT1)는 하이 레벨이 된다. 따라서, NMOS 트랜지스터(MN1)는 턴온되고, PMOS 트랜지스터(MP2)는 턴오프된다. 또한, 낸드 게이트(NAND2)는 제2 출력 신호(OUT2)를 하이 레벨로 출력하여 PMOS 트랜지스터(MP4)는 턴오프되고, 노아 게이트(NOR)는 제3 출력 신호(OUT3)를 로우 레벨로 출력하고 NMOS 트랜지스터(MN3)는 턴 오프 된다. 이와 같은 상태에서, 소정 전압 레벨에서 순차적으로 감소하는 다수의 스테이지를 포함하며 상기 소정 전압 레벨은 각 파이어링 루프마다 변하는 셋 제어 신호(SET_CON)가 입력되면, 셋 제어 신호(SET_CON)의 전압 레벨에 따라 NMOS 트랜지스터(MN2)의 턴온되는 정도가 달라진다. 이에 따라서, 노드(N3)의 노드 전압이 달라지고, PMOS 트랜지스터(MP3)의 턴온되는 정도도 달라진다. 그런데, 셋 펄스 구동부(174)는 테스트 모드에서는 외부에서 제공되는 높은 레벨의 외부 승압 전압(EXVPP)을 이용하기 때문에, 정상 동작 모드에서 제공되는 셋 펄스의 전류 레벨보다 더 높은 파이어링 셋 펄스(I_firing_SET)를 제공할 수 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.