KR102180299B1 - 반도체 장치 - Google Patents

반도체 장치 Download PDF

Info

Publication number
KR102180299B1
KR102180299B1 KR1020140014297A KR20140014297A KR102180299B1 KR 102180299 B1 KR102180299 B1 KR 102180299B1 KR 1020140014297 A KR1020140014297 A KR 1020140014297A KR 20140014297 A KR20140014297 A KR 20140014297A KR 102180299 B1 KR102180299 B1 KR 102180299B1
Authority
KR
South Korea
Prior art keywords
data
memory
erase state
memory cells
erase
Prior art date
Application number
KR1020140014297A
Other languages
English (en)
Other versions
KR20150093474A (ko
Inventor
박이슬
양철우
Original Assignee
에스케이하이닉스 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이하이닉스 주식회사 filed Critical 에스케이하이닉스 주식회사
Priority to KR1020140014297A priority Critical patent/KR102180299B1/ko
Priority to US14/327,160 priority patent/US9230667B2/en
Publication of KR20150093474A publication Critical patent/KR20150093474A/ko
Application granted granted Critical
Publication of KR102180299B1 publication Critical patent/KR102180299B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/22Safety or protection circuits preventing unauthorised or accidental access to memory cells
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/04Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
    • G11C16/0483Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/10Programming or data input circuits
    • G11C16/14Circuits for erasing electrically, e.g. erase voltage switching circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/26Sensing or reading circuits; Data output circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1006Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor

Landscapes

  • Engineering & Computer Science (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Security & Cryptography (AREA)
  • Read Only Memory (AREA)
  • Storage Device Security (AREA)

Abstract

반도체 장치는 데이터를 저장하기 위한 메모리 셀들과 소거 상태 정보를 저장하기 위한 플래그 셀을 포함하는 메모리 블록과, 메모리 셀들 및 플래그 셀의 프로그램 동작, 소거 동작 및 리드 동작을 수행하도록 구성된 동작 회로, 및 데이터를 암호화하도록 구성된 데이터 변경 회로를 포함하며, 소거 상태 정보에 따라, 데이터 변경 회로는 메모리 셀들로부터 독출된 데이터를 암호화한다.

Description

반도체 장치{Semiconductor apparatus}
본 발명은 반도체 장치에 관한 것으로, 특히 메모리 셀을 포함하는 반도체 장치에 관한 것이다.
저장 장치는 컴퓨터나 스마트폰 등과 같은 호스트 장치의 제어에 따라 데이터를 저장하는 장치이다. 저장 장치는 데이터가 저장되는 메모리 장치와 메모리 장치를 제어하는 메모리 컨트롤러를 포함할 수 있다. 메모리 장치는 휘발성 메모리 장치 (Volatile Memory)와 비휘발성 메모리 장치 (Non Volatile Memory)로 구분된다.
휘발성 메모리 장치는 전원이 공급된 경우에만 데이터를 저장하고, 전원 공급이 차단되면 저장된 데이터가 소멸되는 메모리 장치이다. 휘발성 메모리 장치는 정적 랜덤 액세스 메모리 (Static Random Access Memory; SRAM), 동적 랜덤 액세스 메모리 (Dynamic Random Access Memory; DRAM) 등이 있다.
비휘발성 메모리 장치는 전원이 차단되어도 데이터가 소멸되지 않는 메모리 장치로서, 롬(Read Only Memory; ROM), PROM (Programmable ROM), EPROM (Electrically Programmable ROM), EEPROM (Electrically Erasable and Programmable ROM) 및 플래시 메모리(Flash Memory) 등이 있다.
호스트로부터 삭제 명령이 입력되면 해당 블록의 데이터가 실제로 지워지지 않고 파일 시스템에서는 메타 데이터만 지워진다. 이 때문에 다른 사용자가 삭제된 파일을 악의적으로 복구하는 것이 쉽다.
본 발명의 실시예는 데이터를 안전하게 보호할 수 있는 반도체 장치를 제공한다.
본 발명의 실시예에 따른 반도체 장치는 데이터를 저장하기 위한 메모리 셀들과 소거 상태 정보를 저장하기 위한 플래그 셀을 포함하는 메모리 블록과, 메모리 셀들 및 플래그 셀의 프로그램 동작, 소거 동작 및 리드 동작을 수행하도록 구성된 동작 회로, 및 데이터를 암호화하도록 구성된 데이터 변경 회로를 포함하며, 소거 상태 정보에 따라, 데이터 변경 회로는 메모리 셀들로부터 독출된 데이터를 암호화한다.
본 발명의 다른 실시예에 따른 반도체 장치는 소거 상태 정보를 저장하는 메모리 블록을 포함하고, 상기 메모리 블록의 프로그램 동작, 소거 동작 및 리드 동작을 수행하도록 구성된 메모리 장치, 및 메모리 블록의 메모리 셀들로부터 독출된 데이터를 소거 상태 정보에 따라 암호화하도록 구성된 컨트롤러를 포함한다.
본 발명의 실시예는 데이터를 안전하게 보호할 수 있다.
도 1은 본 발명의 실시예에 따른 반도체 장치를 설명하기 위한 블록도이다.
도 2a 및 도 2b는 본 발명의 다른 실시예들에 따른 반도체 장치를 설명하기 위한 블록도들이다.
도 3은 본 발명의 실시예들에 따른 반도체 장치의 메모리 블록을 설명하기 위한 회로도이다.
도 4a 및 도 4b는 본 발명의 실시예에 따른 반도체 장치의 암호화/복호화 회로를 설명하기 위한 블록도들이다.
도 5a 및 도 5b는 본 발명의 실시예에 따른 반도체 장치의 동작을 설명하기 위한 흐름도이다.
도 6a 내지 도 6c는 본 발명의 실시예에 따른 반도체 장치의 동작을 설명하기 위한 파형도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 설명하기로 한다. 그러나, 본 발명은 이하에서 개시되는 실시예에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 본 발명의 범위가 다음에 상술하는 실시예에 한정되는 것은 아니다. 단지 본 실시예는 본 발명의 개시가 완전하도록 하며 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명의 범위는 본원의 특허 청구 범위에 의해서 이해되어야 한다.
도 1은 본 발명의 실시예에 따른 메모리 시스템을 설명하기 위한 블록도이다.
도 1을 참조하면, 반도체 장치(10)는 메모리 컨트롤러(100) 및 메모리 장치(200)를 포함한다. 메모리 컨트롤러(100)는 호스트(HOST) 및 메모리 장치(200)에 연결된다. 호스트(HOST)로부터의 요청에 응답하여, 메모리 컨트롤러(100)는 메모리 장치(200)를 액세스하도록 구성된다. 예를 들면, 메모리 컨트롤러(100)는 메모리 장치(200)의 읽기 동작, 프로그램 루프, 그리고 소거 루프를 제어하도록 구성된다. 메모리 컨트롤러(100)는 메모리 장치(200) 및 호스트(Host) 사이에 인터페이스를 제공하도록 구성된다. 메모리 컨트롤러(100)는 메모리 장치(200)를 제어하기 위한 펌웨어(firmware)를 구동하도록 구성된다. 메모리 장치(200)는 플래시 메모리 장치를 포함한다.
메모리 컨트롤러(100)는 내부 버스(110), 프로세서(120), 플래시 전송 계층(Flash Translation Layer: FTL)(130), ECC 블럭(140), 메모리 인터페이스(150), 데이터 변경 회로(160), 그리고 호스트 인터페이스(170)를 포함한다. 내부 버스(110)는 메모리 컨트롤러(100)의 구성요소들 사이에 채널을 제공하도록 구성된다. 예시적으로, 내부 버스(110)는 커맨드 및 데이터를 전송하기 위한 공통 채널일 수 있다. 다른 예로서, 내부 버스(110)는 커맨드 및 데이터를 각각 전송하기 위한 커맨드 채널 및 데이터 채널을 포함할 수 있다.
프로세서(120)는 메모리 컨트롤러(100)의 제반 동작을 제어하도록 구성된다. 프로세서(120)는 메모리 컨트롤러(100)에서 구동되는 소프트웨어 및 펌웨어를 실행하도록 구성될 수 있다.
플래시 변환 계층(130)은 메모리 장치(200)를 제어하기 위한 다양한 수단들을 제공한다. 메모리 장치(200)가 플래시 메모리 장치인 경우, 플래시 메모리 장치(200)는 통상적인 메모리와 상이한 특징들을 갖는다. 우선, 플래시 메모리 장치(200)는 쓰기 전 소거(erase before write) 특성을 갖는다. 그리고, 플래시 메모리 장치(200)의 읽기 동작 및 프로그램 루프의 단위와 소거 루프의 단위는 상이하다. 플래시 메모리 장치(200)의 읽기 동작 및 프로그램 루프는 페이지 단위로 수행되고, 소거 루프는 메모리 블록 단위로 수행된다. 메모리 블록은 복수의 페이지들을 포함한다. 또한, 플래시 메모리 장치(200)의 프로그램 루프 및 소거 루프의 반복 실시 횟수는 제한되어 있다. 그리고, 플래시 메모리 장치(200)의 소거 시간, 프로그램 시간, 그리고 읽기 시간은 상이하다.
호스트(HOST)가 플래시 메모리 장치(200)를 액세스할 때, 플래시 변환 계층(130)은 상술한 바와 같은 플래시 메모리 장치(200)의 특성에 기반한 다양한 제어 수단들을 제공한다. 예를 들면, 플래시 변환 계층(130)은 호스트(HOST)로부터 수신되는 논리 어드레스를 플래시 메모리 장치(200)의 물리 어드레스로 변환하는 수단을 제공한다. 플래시 변환 계층(130)은 논리 어드레스 및 물리 어드레스 사이의 사상(mapping) 관계에 대한 정보를 테이블화하여 유지한다. 플래시 변환 계층(130)은 플래시 메모리 장치(200)의 메모리 블록들의 프로그램 및 소거 횟수가 균일화되도록 제어하는 수단을 제공한다. 예를 들면, 플래시 변환 계층(130)은 마모도 관리(wear leveling) 수단을 제공한다. 플래시 변환 계층(130)은 플래시 메모리 장치(200)의 소거 횟수를 최소화시키기 위한 수단을 제공한다. 예를 들면, 플래시 메모리 장치(200)는 머지(merge) 및 가비지 컬렉션(garbage collection) 등과 같은 제어 수단을 제공한다.
특히, 컨트롤러(100)는 소거 동작을 위해 일반 소거 명령(normal erase command) 또는 안전 소거 명령(secure erase command)이 입력되면 플래시 변환 계층(130)에 저장된 메모리 블록의 메타 정보를 변경할 수 있다. 예로써, 컨트롤러(100)는 소거 명령에 따라 해당 메모리 블록의 어드레스를 소거 상태의 어드레스에 포함시킬 수 있다.
ECC 블록(140)은 메모리 장치(200)로부터 읽어진 데이터의 오류를 검출하고, 정정하도록 구성될 수 있다.
메모리 인터페이스(150)는 플래시 메모리 장치(200)와 통신하기 위한 프로토콜을 포함한다. 예를 들면, 메모리 인터페이스(150)는 낸드(NAND) 인터페이스, 노어(NOR) 인터페이스 등과 같은 플래시 인터페이스들 중 적어도 하나를 포함할 수 있다.
데이터 변경 회로(160)는 프로그램 동작 시 메모리 블록(210MB)의 메모리 셀들에 저장될 데이터를 암호화하고, 리드 동작 시 메모리 블록(210MB)의 메모리 셀들로부터 독출된 데이터를 복호화하는 동작을 수행할 수 있다.
호스트 인터페이스(170)는 호스트(HOST) 및 메모리 컨트롤러(100) 사이의 데이터 교환을 수행하기 위한 프로토콜을 포함한다. 예시적으로, 컨트롤러(100)는 USB(Universal Serial Bus) 프로토콜, MMC(multimedia card) 프로토콜, PCI(peripheral component interconnection) 프로토콜, PCI-E(PCI-express) 프로토콜, ATA(Advanced Technology Attachment) 프로토콜, Serial-ATA 프로토콜, Parallel-ATA 프로토콜, SCSI(smallcomputer small interface) 프로토콜, ESDI(enhanced small disk interface) 프로토콜, 그리고 IDE(Integrated Drive Electronics) 프로토콜 등과 같은 다양한 인터페이스 프로토콜들 중 적어도 하나를 통해 외부(호스트)와 통신하도록 구성된다.
도면에는 도시되어 있지 않지만, 컨트롤러(100)는 저장부를 더 포함할 수 있다. 저장부는 프로세서(120)의 동작 메모리로 이용될 수 있으며, 메모리 장치(200) 및 호스트(Host) 사이의 버퍼 메모리로 이용될 수 있으며, 메모리 장치(200) 및 호스트(Host) 사이의 캐시 메모리로 이용될 수 있다. 또한, 메모리 장치(200)로부터 입력된 데이터를 임시 자정하는 버퍼로 사용될 수도 있다.
예시적으로, 저장부는 SRAM(Static RAM), DRAM(Dynamic RAM), SDRAM(Synchronous DRAM), PRAM(Phase-change RAM), MRAM(Magnetic RAM), RRAM(Resistive RAM), FRAM(Ferroelectric RAM), 노어 플래시 메모리 등과 같이, 랜덤 액세스가 가능한 다양한 메모리들 중 적어도 하나를 포함할 수 있다.
이러한 저장부에는 메모리 블록의 소거 상태 정보가 임시로 저장될 수 있으며, 데이터 변경 회로(160)는 저장부에 저장된 소거 상태 정보에 따라 리드 동작 시 데이터의 암호화를 선택적으로 실시할 수 있다.
메모리 장치(200)는 메모리 어레이(210)와 동작 회로(220~260)를 포함한다. NAND 플래시 메모리 장치의 경우 동작 회로는 제어 회로(220), 전압 공급 회로(230), 읽기/쓰기 회로(240), 컬럼 선택 회로(250) 및 입출력 회로(260)를 포함할 수 있다. 메모리 장치(200)의 각 구성 요소들에 대한 구체적인 설명은 후술하기로 한다.
메모리 장치(200)는 소거 상태 정보를 저장하는 메모리 블록(210MB)을 포함하고, 메모리 블록(210MB)의 프로그램 동작, 소거 동작 및 리드 동작을 수행하도록 구성된다. 컨트롤러(100)는 메모리 블록(210MB)의 메모리 셀들로부터 독출된 데이터를 소거 상태 정보에 따라 암호화하도록 구성된다. 한편, 소거 동작을 위해 일반 소거 명령이 입력되면 컨트롤러(100)는 플래시 변환 계층(130)에서 메모리 블록(210MB)과 관련된 메타 정보를 변경할 수 있다. 또한, 소거 동작을 위해 안전 소거 명령이 입력되면 컨트롤러(100)는 플래시 변환 계층(130)에서 메모리 블록(210MB)과 관련된 메타 정보를 변경하고 메모리 장치(200)는 선택된 메모리 블록(210MB)의 플래그 셀(미도시)에 저장되는 소거 상태 정보를 변경할 수 있다.
특히, 컨트롤러(100)가 메모리 장치(200)로부터 입력된 메모리 블록(210MB)의 데이터를 호스트(HOST)로 출력하기 전에, 데이터 변경 회로(160)는 메모리 블록(210MB)의 소거 상태 정보에 따라 메모리 블록(210MB)에서 독출된 데이터의 암호화를 선택적으로 실시할 수 있다. 예로써, 사용자가 소거된 메모리 블록의 데이터를 비정상적으로 복구하려고 할 때 리드 동작이 실시될 수 있는데, 이러한 리드 동작 시 소거 상태 정보에 따라 리드 대상 메모리 블록의 안전 소거 모드 상태인 경우, 데이터 변경 회로(160)는 메모리 셀들로부터 독출된 데이터를 암호화할 수 있다. 암호화된 데이터가 컨트롤러(100)로부터 호스트(HOST) 출력됨에 따라 데이터를 비정상적으로 복구하는 것을 방지하고 데이터를 안전하게 보호할 수 있다. 구체적인 동작 방법은 후술하기로 한다.
상기에서는 컨트롤러(100)의 데이터 변경 회로(160)에서 데이터가 암호화되거나 복호화 되었으나, 데이터 변경 회로를 메모리 장치(200) 내에 설치하고 메모리 장치(200) 내에서 데이터를 암호화하거나 복호화할 수도 있다. 이를 구체적으로 설명하면 다음과 같다. 도 2a 및 도 2b는 본 발명의 다른 실시예들에 따른 반도체 장치를 설명하기 위한 블록도들이다. 도 3은 본 발명의 실시예들에 따른 반도체 장치의 메모리 블록을 설명하기 위한 회로도이다.
도 2a를 참조하면, 반도체 장치는 메모리 어레이(210), 동작 회로(220~260) 및 데이터 변경 회로(270A)를 포함한다.
메모리 어레이(210)는 다수의 메모리 블록들(210MB)을 포함한다. 각각의 메모리 블록(210MB)은 메모리 셀들(MCe, MCo) 및 플래그 셀들(FCe, FCo)을 포함하며, 메모리 블록(210MB)의 구조를 설명하면 다음과 같다.
도 3을 참조하면, 각각의 메모리 블록은 비트라인들(BLe, BLo)과 공통 소스 라인(SL) 사이에 연결된 다수의 메모리 스트링들(ST)을 포함한다. 각각의 워드라인(WL0~WLn)에는 메모리 셀들(MCe, MCo) 및 플래그 셀들(FCe, FCo)이 연결된다. 제1 플래그 셀(FCe)에는 메모리 셀들(MCe, MCo)의 프로그램 상태 정보가 저장될 수 있다. 즉, MSB 프로그램 동작의 실시 여부에 따라 메모리 셀들(MCe, MCo)에 1비트의 데이터가 저장되었는지 2비트의 데이터가 저장되었는지를 확인하기 위한 프로그램 상태 정보가 저장될 수 있다. 제2 플래시 셀(FCo)에는 소거 상태 정보가 저장될 수 있다. 예로써, 메모리 블록이 비소거 상태 또는 일반 소거 상태인 경우 동작 회로에 의해 제2 플래그 셀에 소거 상태 정보가 제1 데이터로 저장되고, 메모리 블록이 안전 소거 상태인 경우 동작 회로에 의해 제2 플래그 셀에 소거 상태 정보가 제2 데이터로 저장될 수 있다. 다른 예로써, 메모리 블록이 안전 소거 명령에 응답하여 안전 소거 상태가 되는 경우, 동작 회로에 의해 제2 플래그 셀은 소거 상태에서 프로그램 상태로 변경될 수 있다.
메모리 스트링들(ST)은 비트 라인들(BLe, BLo)과 각각 연결되고 공통 소스 라인(SL)과 공통으로 연결된다. 각각의 메모리 스트링(ST)은 소스가 공통 소스 라인(SL)에 연결되는 소스 셀렉트 트랜지스터(SST), 복수의 메모리 셀들(MCe)이 직렬로 연결된 셀 스트링, 그리고 드레인이 비트라인(BLe)에 연결되는 드레인 셀렉트 트랜지스터(DST)를 포함한다. 셀 스트링에 포함된 메모리 셀들(MCe)은 셀렉트 트랜지스터들(SST, DST) 사이에 직렬로 연결된다. 플래그 메모리 스트링은 소스가 공통 소스 라인(SL)에 연결되는 소스 셀렉트 트랜지스터(SST), 복수의 플래그 셀들(FCe)이 직렬로 연결된 플래그 셀 스트링, 그리고 드레인이 비트라인(BLe)에 연결되는 드레인 셀렉트 트랜지스터(DST)를 포함한다. 플래그 셀 스트링에 포함된 플래그 셀들(FCe)은 셀렉트 트랜지스터들(SST, DST) 사이에 직렬로 연결된다.
소스 셀렉트 트랜지스터(SST)의 게이트는 소스 셀렉트 라인(SSL)에 연결되고, 메모리 셀들(MCe, MCo) 및 플래그 셀들(FCe, FCo))의 게이트들은 워드라인들(WL0~WLn)에 각각 연결되며, 드레인 셀렉트 트랜지스터(DST)의 게이트는 드레인 셀렉트 라인(DSL)에 연결된다. 여기서, 드레인 셀렉트 트랜지스터(DST)는 셀 스트링(Ce)과 비트라인의 연결 또는 차단을 제어하며, 소스 셀렉트 트랜지스터(SST)는 셀 스트링(Ce)과 공통 소스 라인(SL)의 연결 또는 차단을 제어한다.
낸드 플래시 메모리 장치에서 메모리 셀 블록에 포함된 메모리 셀들 및 플래그 셀들은 물리적 페이지 단위 또는 논리적 페이지 단위로 구분할 수 있다. 예를 들어, 하나의 워드라인(예, WL0)에 연결된 셀들(MCe, MCo, FCe, FCo)이 하나의 물리적 페이지(PAGE)를 구성한다. 또한, 하나의 워드라인(예, WL0)에 연결된 짝수 번째 셀들(MCe, FCe)이 이븐 페이지를 구성하고, 홀수 번째 셀들(MCo, FCo)이 오드 페이지를 구성할 수 있다. 이러한 페이지(또는, 이븐 페이지와 오드 페이지)는 프로그램 동작 또는 리드 동작의 기본 단위가 될 수 있다.
다시, 도 2a를 참조하면, 동작 회로(220~260)는 선택된 워드라인(예, WL0)에 연결된 셀들(MCe, MCo, FCe, FCo)의 프로그램 루프, 소거 루프 및 리드 동작을 수행하도록 구성된다. 프로그램 루프는 프로그램 동작과 검증 동작을 포함하고, 소거 루프는 소거 동작과 검증 동작을 포함한다.
프로그램 루프, 소거 루프 및 리드 동작을 수행하기 위하기 위하여, 동작 회로(220~260)는 동작 전압들(Verase, Vpgm, Vread, Vpass, Vdsl, Vssl, Vsl)을 선택된 메모리 블록의 로컬 라인들(SSL, WL0~WLn, DSL)과 공통 소스 라인(SL)으로 선택적으로 출력하고, 비트라인들(BLe, BLo)의 프리차지/디스차지를 제어하거나 비트라인들(BLe, BLo)의 전류 흐름을 센싱하도록 구성된다.
NAND 플래시 메모리 장치의 경우, 동작 회로는 제어 회로(220), 전압 공급 회로(230), 읽기/쓰기 회로(240), 컬럼 선택 회로(250) 및 입출력 회로(260)를 포함한다. 각각의 구성 요소에 대해 구체적으로 설명하면 다음과 같다.
제어 회로(220)는 외부로부터 입출력 회로(260)를 통해 입력되는 명령 신호(CMD)에 응답하여 프로그램 루프, 소거 루프 및 리드 동작을 수행하기 위한 동작 전압들(Verase, Vpgm, Vread, Vpass, Vdsl, Vssl, Vsl)이 원하는 레벨로 발생될 수 있도록 전압 공급 회로(230)를 제어하기 위한 전압 제어 신호(CMDv)를 출력한다. 그리고, 제어 회로(220)는 프로그램 루프, 소거 루프 및 리드 동작을 수행하기 위해 읽기/쓰기 회로(240)에 포함된 회로들(PB)을 제어하기 위한 제어 신호들(CMDpb)을 출력한다. 또한, 제어 회로(220)는 어드레스 신호(ADD)가 입력되면 이들에 의해 컬럼 어드레스 신호(CADD)와 로우 어드레스 신호(RADD)가 생성되어 제어 회로(220)로부터 출력된다.
전압 공급 회로(230)는 제어 회로(220)의 전압 제어 신호(CMDv)에 응답하여 메모리 셀들의 프로그램 루프, 소거 루프 및 리드 동작에 따라 필요한 동작 전압들(Verase, Vpgm, Vread, Vpass, Vdsl, Vssl, Vsl)을 생성하고, 제어 회로(220)의 로우 어드레스 신호(RADD)에 응답하여 선택된 메모리 블록의 로컬 라인들(SSL, WL0~WLn, DSL)과 공통 소스 라인(SL)로 동작 전압들을 출력한다.
이러한 전압 공급 회로(230)는 전압 생성 회로(231)와 로우 디코더(233)를 포함할 수 있다. 전압 생성 회로(231)는 제어 회로(220)의 전압 제어 신호(CMDv)에 응답하여 동작 전압들(Verase, Vpgm, Vread, Vpass, Vdsl, Vssl, Vsl)을 생성하고, 로우 디코더(233)는 제어 회로(220)의 로우 어드레스 신호(RADD)에 응답하여 동작 전압들을 메모리 블록들(210MB) 중 선택된 메모리 블록의 로컬 라인들(SSL, WL0~WLn, DSL)과 공통 소스 라인(SL)으로 전달한다.
이렇듯, 이하에서 설명되는 동작 전압들(Verase, Vpgm, Vread, Vpass, Vdsl, Vssl, Vsl)의 출력과 변경은 제어 회로(220)의 전압 제어 신호(CMDv)에 따라 전압 공급 회로(230)에 의해 이루어진다.
읽기/쓰기 회로(240)는 비트라인들(BLe, BLo)을 통해 메모리 어레이(210)와 연결되는 다수의 페이지 버퍼들(PB)을 각각 포함할 수 있다. 특히, 페이지 버퍼들(PB)은 비트라인들(BLe, BLo)마다 각각 연결될 수 있다. 즉, 하나의 비트라인에 하나의 페이지 버퍼(PB)가 연결될 수 있다. 프로그램 동작 시 제어 회로(220)의 PB 제어 신호(CMDpb)와 메모리 셀들에 저장하기 위한 데이터(DATA)에 따라, 페이지 버퍼들(PB)은 비트라인들(BLe, BLo)을 선택적으로 프리차지한다. 프로그램 검증 동작이나 리드 동작 시 제어 회로(220)의 PB 제어 신호(CMDpb)에 따라, 비트라인들(BLe, BLo)을 프리차지한 후 비트라인들(BLe, BLo)의 전압 변화나 전류를 센싱하여 셀들(MCe, MCo, FCe, FCo)로부터 독출된 데이터를 래치한다.
컬럼 선택 회로(250)는 제어 회로(220)에서 출력된 컬럼 어드레스(CADD)에 응답하여 읽기/쓰기 회로(240)에 포함된 페이지 버퍼들(PB)을 선택한다. 즉, 컬럼 선택 회로(250)는 메모리 셀들에 저장될 데이터를 컬럼 어드레스(CADD)에 응답하여 순차적으로 페이지 버퍼들(PB)로 전달한다. 또한, 리드 동작에 의해 페이지 버퍼들(PB)에 래치된 메모리 셀들의 데이터가 외부로 출력될 수 있도록 컬럼 선택 회로(250)는 컬럼 어드레스(CADD)에 응답하여 순차적으로 페이지 버퍼들(PB)을 선택한다.
입출력 회로(260)는 외부로부터 입력되는 명령 신호(CMD)와 어드레스 신호(ADD)를 제어 회로(220)로 전달한다. 또한, 입출력 회로(260)는 프로그램 동작 시 외부로부터 입력된 데이터(DATA)를 컬럼 선택 회로(250)로 전달하거나, 리드 동작 시 메모리 셀들로부터 독출된 데이터를 외부로 출력하는 동작을 수행한다.
데이터 변경 회로(270A)는 컬럼 선택 회로(250)와 입출력 회로(260) 사이에 연결되고, 메모리 셀들로부터 독출된 데이터가 입출력 회로(260)를 통해 출력되기 전에 독출된 데이터를 소거 상태 정보에 따라 선택적으로 암호화할 수 있다. 이를 위해, 데이터 변경 회로(270A)는 제어 회로(220)의 제어 신호(CMDed)에 응답하여 동작하며, 제어 회로(220)는 리드 동작 시 메모리 블록의 소거 상태 정보에 따라 데이터 변경 회로(270A)를 제어한다.
예로써, 소거 상태 정보에 따라 상기 메모리 블록이 비소거 상태이거나 일반 소거 상태로 확인되면, 데이터 변경 회로(270A)는 독출된 데이터를 암호화하지 않고 동작 회로(220~260)는 독출된 데이터를 그대로 출력한다. 소거 상태 정보에 따라 메모리 블록이 안전 소거 상태로 확인되면, 동작 회로(220~260)에 의해 메모리 셀들로부터 독출된 데이터를 데이터 변경 회로(270A)가 암호화하고 암호화된 데이터가 동작 회로(특히, 입출력 회로)(260)에 의해 출력된다.
데이터 변경 회로(270A)의 실시예에 대해 구체적으로 설명하면 다음과 같다. 도 4a 및 도 4b는 본 발명의 실시예에 따른 반도체 장치의 암호화/복호화 회로를 설명하기 위한 블록도들이다.
도 4a를 참조하면, 데이터 변경 회로(270A)는 선택 회로(275) 및 암호화 회로(271B)를 포함할 수 있다. 리드 동작 시 선택된 메모리 블록이 비소거 상태이거나 일반 소거 상태인 경우 선택 회로(275)는 메모리 블록으로부터 독출된 데이터를 입출력 회로(260)로 전달한다. 리드 동작 시 선택된 메모리 블록이 안전 소거 상태인 경우 선택 회로(275)는 메모리 블록으로부터 독출된 데이터를 암호화 회로(271B)로 전달한다. 암호화 회로(271B)는 메모리 블록으로부터 독출된 데이터를 암호화한 후 입출력 회로(260)로 출력한다.
상기에서는 출력되는 데이터를 암호화하였으나, 프로그램 동작을 실시할 때에도 데이터를 암호화할 수 있다. 구체적으로 설명하면 다음과 같다.
도 2b를 참조하면, 메모리 어레이(210), 제어 회로(220), 전압 공급 회로(230), 읽기/쓰기 회로(240), 컬럼 선택 회로(250) 및 입출력 회로(260)의 구성은 도 2a에서 설명한 동작 회로(220~260)의 구성과 동일할 수 있다.
데이터 변경 회로(270B)는 컬럼 선택 회로(250) 및 입출력 회로(260) 사이에 연결된다. 그리고, 입출력 회로(260)를 통해 입력되는 데이터를 메모리 셀들에 저장하기 위한 프로그램 동작 시 데이터 변경 회로(270B)는 메모리 셀들에 저장될 데이터를 암호화할 수 있다. 암호화된 데이터는 컬럼 선택 회로(250)에 의해 읽기/쓰기 회로(240)로 전달되고, 전압 공급 회로(230) 및 읽기/쓰기 회로(240)는 데이터 변경 회로(270B)에 의해 암호화된 데이터를 메모리 셀들에 저장하기 위하여 제어 회로(220)의 제어에 따라 프로그램 동작을 실시할 수 있다.
리드 동작 시 선택된 메모리 블록(210MB)이 비소거 상태로 확인되면, 동작 회로의 전압 공급 회로(230) 및 읽기/쓰기 회로(240)에 의해 메모리 셀들로부터 독출된 데이터가 데이터 변경 회로(270B)에 의해 복호화된다. 복호화된 데이터는 입출력 회로(260)를 통해 출력된다.
리드 동작 시 선택된 메모리 블록(210MB)이 소거 상태 정보에 따라 안전 소거 상태로 확인되면, 동작 회로의 전압 공급 회로(230) 및 읽기/쓰기 회로(240)에 의해 메모리 셀들로부터 독출된 데이터가 입출력 회로(260)를 통해 출력되기 전에 데이터 변경 회로(270B)에 의해 한 번 더 암호화될 수 있다.
데이터 변경 회로(270B)의 실시예에 대해 구체적으로 설명하면 다음과 같다.
도 4b를 참조하면, 데이터 변경 회로(270B)는 선택 회로(275), 암호화 회로부(271) 및 복호화 회로(273)를 포함할 수 있다. 암호화 회로부(271)는 제1 암호화 회로(271A) 및 제2 암호화 회로(271B)를 포함할 수 있다. 제1 암호화 회로(271A)는 프로그램 동작 시 메모리 셀들에 저장하기 위해 입력된 데이터를 암호화하도록 구성된다. 제2 암호화 회로(271B)는 리드 동작 시 메모리 셀들로부터 독출된 데이터를 출력하기 전에 암호화하로독 구성된다.
예로써, 리드 동작 시 선택된 메모리 블록이 소거 상태 정보에 따라 비소거 상태이거나 일반 소거 상태로 확인된 경우 선택 회로(275)는 메모리 셀들로부터 독출된 데이터를 복호화 회로(273)로 전달한다. 복호화 회로(273)는 메모리 셀들로부터 독출된 데이터는 프로그램 동작 시 암호화된 상태로 메모리 셀들에 저장된 데이터이므로, 외부로 출력되기 전에 복호화되어야 한다. 따라서, 복호화 회로(273)는 메모리 셀들로부터 독출된 데이터를 암호화 전상태로 복화화한다. 복호화된 데이터는 입출력 회로(260)를 통해 출력된다.
리드 동작 시 선택된 메모리 블록이 소거 상태 정보에 따라 안전 소거 상태로 확인된 경우 선택 회로(275)는 메모리 블록으로부터 독출된 데이터를 제2 암호화 회로(271B)로 전달한다. 제2 암호화 회로(271B)는 메모리 셀들로부터 독출된 데이터를 암호화한 후 입출력 회로(260)로 출력한다. 메모리 셀들로부터 독출된 데이터는 프로그램 동작 시 제1 암호화 회로(271A)에 의해 암호화된 상태에서 메모리 셀들에 저장된 데이터이다. 따라서, 메모리 셀들로부터 독출된 후 제2 암호화 회로(271B)에 의해 한 번 더 암호화된 후 입출력 회로(260)를 통해 출력된다.
한편, 도 1에 도시된 컨트롤러(100)의 데이터 변경 회로(160)는 데이터 버스(110)로부터 입력된 데이터를 암호화 또는 복화하한 후 데이터 버스(110)로 다시 출력한다는 점에서 차이가 있을 뿐, 데이터 변경 회로(160)의 내부 구성은 도 4a 또는 도 4b에 도시된 데이터 변경 회로와 동일할 수 있다.
이하, 상기에서 설명한 반도체 장치의 동작 방법을 설명하기로 한다. 도 5a 및 도 5b는 본 발명의 실시예에 따른 반도체 장치의 동작을 설명하기 위한 흐름도이다. 도 6a 내지 도 6c는 본 발명의 실시예에 따른 반도체 장치의 동작을 설명하기 위한 파형도이다.
도 5a를 참조하면, 단계(S501)에서 메모리 블록의 소거 동작을 위해 소거 명령이 입력된다.
단계(S503)에서 소거 명령이 일반 소거 명령인지 안전 소거 명령인지 확인한다. 소거 명령의 종류는 컨트롤러의 프로세서가 확인할 수 있으며, 확인 결과에 따라 메모리 장치를 제어할 수 있다.
소거 명령이 일반 소거 명령이라면, 단계(S507)에서 플래시 변환 계층의 정보를 변경한다. 즉, 컨트롤러는 소거 동작을 위해 선택된 메모리 블록의 어드레스를 소거 상태의 어드레스에 포함시키기 위하여 선택된 메모리 블록과 관련된 메타 정보를 플래시 변환 계층에서 변경할 수 있다.
도 5a 및 도 6a를 참조하면, 단계(S503)에서 소거 명령이 안전 소거 명령으로 확인되면, 단계(S505)에서 선택된 메모리 블록에 저장된 소거 상태 정보를 변경한다. 예로써, 메모리 블록이 비소거 상태 또는 일반 소거 상태인 경우 메모리 장치의 메모리 블록에 포함된 제2 플래그 셀(FCo)에는 소거 상태 정보가 제1 데이터(예, 소거 데이터)로 저장된다. 메모리 블록이 안전 소거 상태인 경우 메모리 장치의 제2 플래그 셀(FCo)에는 소거 상태 정보가 제2 데이터(예, 프로그램 데이터)로 저장될 수 있다. 즉, 제2 플래그 셀(FCo)이 소거 상태(PV0)에서 프로그램 상태(예, PV2)로 변경될 수 있다. 이를 위해, 메모리 장치의 동작 회로는 제2 플래그 셀(FCo)의 상태를 변경하기 위하여 제2 플래그 셀(FC0)의 프로그램 동작을 실시할 수 있다.
참고로, 제1 플래그 셀(FCe)에는 메모리 블록의 프로그램 상태가 저장될 수 있다. 메모리 셀당 2비트의 데이터가 저장되어 메모리 셀들의 문턱전압들이 소거 레벨(PV0)과 3개의 프로그램 레벨들(PV1~PV3)에 나누어 분포되므로, 제1 플래그 셀(FCe)에는 프로그램 데이터가 저장된다. 즉, 제1 플래그 셀(FCe)은 프로그램 상태가 된다. 예로써, 메모리 셀에 데이터를 저장하기 위한 MSB 프로그램 동작 시 제1 플래그 셀(FCe)이 소거 상태에서 프로그램 상태로 변경될 수 있다.
단계(S507)에서, 플래시 변환 계층에서 메모리 블록의 정보를 변경한다. 즉, 컨트롤러는 소거 동작을 위해 선택된 메모리 블록의 어드레스를 소거 상태의 어드레스에 포함시키기 위하여 선택된 메모리 블록과 관련된 메타 정보를 플래시 변환 계층에서 변경할 수 있다.
한편, 메모리 블록의 메모리 셀들에 저장된 데이터를 삭제하기 위한 실제 소거 동작은 실시되지 않는다. 따라서, 메모리 셀들의 문턱전압들이 소거 레벨(PV0)과 3개의 프로그램 레벨들(PV1~PV3)에 나누어 분포된 상태를 유지한다. 메모리 셀들의 데이터는 삭제되지 않았지만, 플래시 변환 계층에서 선택된 메모리 블록의 메타 정보를 변경했기 때문에, 이후 해당 메모리 블록은 일반 소거 상태의 메모리 블록으로 취급된다.
도 5b 및 도 6a를 참조하면, 단계(S511)에서 리드 명령이 입력된다. 리드 명령은 일반적인 리드 명령일 수 있고 소거 동작이 실시된 메모리 블록의 데이터를 정상적으로 또는 비정상적으로 복구하기 위한 리드 명령일 수 있다.
단계(S513)에서 선택된 메모리 블록의 소거 상태 정보를 확인한다. 이를 위해, 동작 회로는 메모리 셀들(MCe, MCo) 및 플래그 셀들(FCe, FCo)에 저장된 데이터를 독출한다. 동작 회로는 제2 플래그 셀(FCo)로부터 독출된 데이터를 이용하여 메모리 블록의 소거 상태 정보를 확인할 수 있다.
단계(S515)에서 제2 플래그 셀(FCo)로부터 독출된 데이터에 따라 메모리 블록이 안전 소거 블록인지 확인한다. 제2 플래그 셀(FCo)로부터 독출된 데이터가 소거 데이터이거나 제2 플래그 셀(FCo)이 소거 상태이면 메모리 블록은 비소거 블록이거나 일반 소거 블록으로 확인되고, 단계(S519)에서 메모리 셀들(MCe, MCo)로부터 독출된 데이터는 암호화를 거치지 않고 그대로 출력된다. 메모리 셀들로부터 독출된 데이터가 프로그램 동작 시 암호화된 데이터라면, 단계(S519)에서 메모리 셀들로부터 독출된 데이터를 복호화한 후에 출력될 수 있다. 데이터의 복호화 동작은 도 1에 도시된 컨트롤러(100)의 데이터 변경 회로(160)에 의해 실시되거나, 도 4b에 도시된 데이터 변경 회로(270B)에 의해 실시될 수 있다.
제2 플래그 셀(FCo)로부터 독출된 데이터가 프로그램 데이터이거나 제2 플래그 셀(FCo)이 프로그램 상태이면, 단계(S515)에서 메모리 블록은 안전 소거 상태로 확인된다. 이 경우, 데이터를 보호하고 불법적으로 데이터가 유출되는 것을 방지하기 위하여, 단계(S517)에서 데이터를 확인할 수 없도록 독출된 데이터의 암호화 동작을 실시한다. 데이터의 암호화 동작은 도 1에 도시된 컨트롤러(100)의 데이터 변경 회로(160), 도 4a에 도시된 데이터 변경 회로(270A) 또는 도 4b에 도시된 데이터 변경 회로(270B)에 의해 실시될 수 있다. 메모리 셀들로부터 독출된 데이터가 프로그램 동작 시 암호화된 후 메모리 셀들에 저장된 데이터라면, 암호화된 데이터는 메모리 셀들로부터 독출된 후 컨트롤러 또는 호스트로 출력되기 전에 단계(S517)에서 한 번 더 암호화된다.
메모리 셀들로부터 독출된 데이터는 데이터 변경 회로에 의해 암호화된 후 단계(S519)에서 컨트롤러나 호스트로 출력된다.
상기의 동작들을 살펴보면, 사용자가 안전 소거 상태의 메모리 블록의 데이터를 복구하기 위한 동작(예, 리드 동작)을 수행하더라도, 사용자는 복화화할 수 없는 암호화 데이터를 얻게 된다. 따라서, 저장 장치를 분실하더라도 타인은 안전 소거 상태의 메모리 블록으로부터 어떠한 데이터도 정상적으로 얻어 낼 수 없다.
도 6b를 참조하면, 소거 상태로 분류되는 메모리 블록에 데이터를 저장하기 위한 프로그램 동작이 실시되기 전에, 메모리 블록의 메모리 셀들(MCe, MCo)에 저장된 데이터를 삭제하기 위하여 동작 회로는 메모리 블록의 소거 동작을 실시한다. 그 결과, 메모리 셀들(MCe, MCo)과 플래그 셀들(FCe, FCo)의 문턱전압들은 모두 소거 레벨(PV0)에 분포하게 된다.
도 6c를 참조하면, 메모리 셀들에 데이터를 저장하기 위한 LSB(Least Significant Bit) 프로그램 동작과 MSB(Most Significanct Bit) 프로그램 동작이 실시된다. 그 결과, 메모리 셀들(MCe, MCo)의 문턱전압들은 저장되는 데이터에 따라 소거 레벨(PV0)과 3개의 프로그램 레벨들(PV1~PV3)에 나누어 분포하게 된다.
이때, 제1 플래그 셀(FCe)에는 MSB 프로그램 동작이 실시되었음을 알리기 위한 데이터(예, 프로그램 데이터)가 저장될 수 있다. 제2 플래그 셀(FCo)은 메모리 블록이 비소거 상태임을 알리기 위한 소거 데이터가 소거 상태 정보로 저장될 수 있다.
한편, 도면에는 도시되어 있지 않지만, 단위 셀당 1비트의 데이터를 저장하기 위해 LSB 프로그램 동작만 실시되는 경우, 메모리 셀들(MCe, MCo)의 문턱전압들은 저장되는 데이터에 따라 소거 레벨(PV0)과 3개의 프로그램 레벨들(PV1~PV3) 중 어느 하나의 프로그램 레벨에 나누어 분포하게 된다.
이때, 제1 플래그 셀(FCe)에는 LSB 프로그램 동작만 실시되었음을 알리기 위한 데이터(예, 소거 데이터)가 저장될 수 있다. 제2 플래그 셀(FCo)은 메모리 블록이 비소거 상태임을 알리기 위한 소거 데이터가 소거 상태 정보로 저장될 수 있다.
10 : 반도체 장치 100 : 컨트롤러
110 : 데이터 버스 120 : 프로세서
130 : FTL 140 : ECC 블록
150 : 메모리 인터페이스 160 : 데이터 변경 회로
170 : 호스트 인터페이스 200 : 메모리 장치
210 : 메모리 어레이 210MB : 메모리 블록
220 : 제어 회로 230 : 전압 공급 회로
240 : 컬럼 선택 회로 250 : 읽기/쓰기 회로
260 : 입출력 회로 270A, 270B : 데이터 변경 회로
271 : 암호화 회로 그룹 271A, 271B : 암호화 회로
273 : 복호화 회로 275 : 선택 회로

Claims (20)

  1. 데이터를 저장하기 위한 메모리 셀들과 소거 상태 정보를 저장하기 위한 플래그 셀을 포함하는 메모리 블록;
    상기 메모리 셀들 및 상기 플래그 셀로부터 상기 데이터 및 상기 소거 상태 정보를 리드하는 리드 동작을 수행하는 동작 회로; 및
    상기 소거 상태 정보에 따라 상기 메모리 셀들로부터 리드된 데이터를 암호화하는 데이터 변경 회로를 포함하는 반도체 장치.
  2. ◈청구항 2은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1 항에 있어서,
    상기 메모리 블록이 비소거 상태 또는 일반 소거 상태인 경우 상기 동작 회로에 의해 상기 플래그 셀에는 상기 소거 상태 정보가 제1 데이터로 저장되고,
    상기 메모리 블록이 안전 소거 상태인 경우 상기 동작 회로에 의해 상기 플래그 셀에는 상기 소거 상태 정보가 제2 데이터로 저장되는 반도체 장치.
  3. ◈청구항 3은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1 항에 있어서,
    상기 메모리 블록이 안전 소거 명령에 응답하여 안전 소거 상태가 되는 경우, 상기 동작 회로는 상기 플래그 셀을 소거 상태에서 프로그램 상태로 변경하는 반도체 장치.
  4. ◈청구항 4은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1 항에 있어서,
    상기 메모리 블록의 상기 리드 동작 시 상기 동작 회로는 상기 플래그 셀에 저장된 상기 소거 상태 정보를 확인하는 반도체 장치.
  5. ◈청구항 5은(는) 설정등록료 납부시 포기되었습니다.◈
    제 2 항에 있어서,
    상기 소거 상태 정보가 상기 제1 데이터로 확인되면, 상기 동작 회로는 상기 메모리 셀들로부터 리드된 데이터를 그대로 출력하는 반도체 장치.
  6. ◈청구항 6은(는) 설정등록료 납부시 포기되었습니다.◈
    제 2 항에 있어서,
    상기 소거 상태 정보가 상기 제2 데이터로 확인되면, 상기 동작 회로에 의해 상기 메모리 셀들로부터 리드된 데이터를 상기 데이터 변경 회로가 암호화하고 암호화된 데이터가 상기 동작 회로에 의해 출력되는 반도체 장치.
  7. ◈청구항 7은(는) 설정등록료 납부시 포기되었습니다.◈
    제 1 항에 있어서,
    상기 메모리 셀들의 프로그램 동작 시 상기 데이터 변경 회로는 상기 메모리 셀들에 저장될 데이터를 암호화하고, 상기 동작 회로는 암호화된 데이터를 상기 메모리 셀들에 저장하는 반도체 장치.
  8. ◈청구항 8은(는) 설정등록료 납부시 포기되었습니다.◈
    제 7 항에 있어서,
    상기 리드 동작 시 상기 소거 상태 정보에 따라 상기 메모리 블록이 안전 소거 상태로 확인되면, 상기 동작 회로에 의해 상기 메모리 셀들로부터 리드된 암호화된 데이터가 출력되기 전에 상기 데이터 변경 회로에 의해 한 번 더 암호화되는 반도체 장치.
  9. ◈청구항 9은(는) 설정등록료 납부시 포기되었습니다.◈
    제 7 항에 있어서,
    상기 리드 동작 시 상기 소거 상태 정보에 따라 상기 메모리 블록이 비소거 상태로 확인되면, 상기 동작 회로에 의해 상기 메모리 셀들로부터 리드된 암호화된 데이터가 상기 데이터 변경 회로에 의해 복호화되는 반도체 장치.
  10. ◈청구항 10은(는) 설정등록료 납부시 포기되었습니다.◈
    제 7 항에 있어서, 상기 데이터 변경 회로는,
    상기 메모리 셀들에 저장될 상기 데이터를 암호화하도록 구성되는 제1 암호화 회로; 및
    상기 메모리 셀들로부터 리드된 상기 데이터를 암호화하도록 구성된 제2 암호화 회로를 포함하는 반도체 장치.
  11. 데이터를 저장하기 위한 제1 메모리 셀들 및 소거 상태 정보를 저장하는 제2 메모리 셀을 포함하는 메모리 블록을 포함하고, 상기 제1 메모리 셀들 및 제2 메모리 셀로부터 상기 데이터 및 상기 소거 상태 정보를 리드하는 리드 동작을 수행하는 메모리 장치; 및
    상기 제1 메모리 셀들로부터 리드된 데이터를 상기 소거 상태 정보에 따라 암호화하는 컨트롤러를 포함하는 반도체 장치.
  12. ◈청구항 12은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11 항에 있어서,
    상기 메모리 블록이 비소거 상태 또는 일반 소거 상태인 경우 상기 메모리 장치의 상기 제2 메모리 셀에는 상기 소거 상태 정보가 제1 데이터로 저장되고,
    상기 메모리 블록이 안전 소거 상태인 경우 상기 메모리 장치의 상기 제2 메모리 셀에는 상기 소거 상태 정보가 제2 데이터로 저장되도록 구성되는 반도체 장치.
  13. ◈청구항 13은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11 항에 있어서,
    상기 메모리 블록이 안전 소거 명령에 응답하여 안전 소거 상태가 되는 경우, 상기 메모리 장치는 상기 제2 메모리 셀의 문턱전압 분포에 대응되는 상태를 소거 상태에서 프로그램 상태로 변경하는 반도체 장치.
  14. ◈청구항 14은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11 항에 있어서,
    상기 메모리 블록의 상기 리드 동작 시 상기 메모리 장치는 상기 소거 상태 정보를 상기 컨트롤러로 출력하도록 구성되는 반도체 장치.
  15. ◈청구항 15은(는) 설정등록료 납부시 포기되었습니다.◈
    제 12 항에 있어서,
    상기 소거 상태 정보가 상기 제1 데이터로 확인되면, 상기 컨트롤러는 상기 메모리 장치로부터 입력된 상기 제1 메모리 셀들로부터 리드된 데이터를 그대로 출력하는 반도체 장치.
  16. ◈청구항 16은(는) 설정등록료 납부시 포기되었습니다.◈
    제 12 항에 있어서,
    상기 소거 상태 정보가 상기 제2 데이터로 확인되면, 상기 컨트롤러가 상기 메모리 장치로부터 입력된 상기 제1 메모리 셀들로부터 리드된 데이터를 암호화한 후 암호화된 데이터를 출력하는 반도체 장치.
  17. ◈청구항 17은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11 항에 있어서,
    상기 제1 메모리 셀들의 프로그램 동작 시 상기 컨트롤러는 상기 제1 메모리 셀들에 저장될 데이터를 암호화하고, 상기 메모리 장치는 상기 컨트롤러에 의해 암호화된 데이터를 상기 제1 메모리 셀들에 저장하도록 구성되는 반도체 장치.
  18. ◈청구항 18은(는) 설정등록료 납부시 포기되었습니다.◈
    제 17 항에 있어서,
    상기 리드 동작 시 상기 소거 상태 정보에 따라 상기 메모리 블록이 안전 소거 상태로 확인되면, 상기 컨트롤러는 상기 메모리 장치로부터 입력된 상기 제1 메모리 셀들의 암호화된 데이터를 한 번 더 암호화한 후 출력하도록 구성되는 반도체 장치.
  19. ◈청구항 19은(는) 설정등록료 납부시 포기되었습니다.◈
    제 17 항에 있어서,
    상기 리드 동작 시 상기 소거 상태 정보에 따라 상기 메모리 블록이 비소거 상태로 확인되면, 상기 컨트롤러는 상기 메모리 장치부터 입력되는 상기 제1 메모리 셀들의 암호화된 데이터를 복호화하도록 구성되는 반도체 장치.
  20. ◈청구항 20은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11 항에 있어서,
    상기 메모리 블록의 소거 동작을 위해 일반 소거 명령이 입력되면 상기 컨트롤러는 상기 메모리 블록과 관련된 메타 정보를 변경하고,
    상기 소거 동작을 위해 안전 소거 명령이 입력되면 상기 컨트롤러는 상기 메모리 블록과 관련된 상기 메타 정보를 변경하고 상기 메모리 장치는 상기 메모리 블록의 상기 제2 메모리 셀에 저장되는 소거 상태 정보를 변경하도록 구성되는 반도체 장치.
KR1020140014297A 2014-02-07 2014-02-07 반도체 장치 KR102180299B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020140014297A KR102180299B1 (ko) 2014-02-07 2014-02-07 반도체 장치
US14/327,160 US9230667B2 (en) 2014-02-07 2014-07-09 Semiconductor device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140014297A KR102180299B1 (ko) 2014-02-07 2014-02-07 반도체 장치

Publications (2)

Publication Number Publication Date
KR20150093474A KR20150093474A (ko) 2015-08-18
KR102180299B1 true KR102180299B1 (ko) 2020-11-18

Family

ID=53775492

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140014297A KR102180299B1 (ko) 2014-02-07 2014-02-07 반도체 장치

Country Status (2)

Country Link
US (1) US9230667B2 (ko)
KR (1) KR102180299B1 (ko)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8860117B2 (en) 2011-04-28 2014-10-14 Micron Technology, Inc. Semiconductor apparatus with multiple tiers of memory cells with peripheral transistors, and methods
US8964474B2 (en) 2012-06-15 2015-02-24 Micron Technology, Inc. Architecture for 3-D NAND memory
US9368209B2 (en) * 2014-02-04 2016-06-14 Stmicroelectronics S.R.L. Embedded non-volatile memory with single polysilicon layer memory cells programmable through channel hot electrons and erasable through fowler-nordheim tunneling
US20160034217A1 (en) * 2014-07-31 2016-02-04 Samsung Electronics Co., Ltd. Memory controller configured to control data sanitization and memory system including the same
JP6313245B2 (ja) * 2014-09-09 2018-04-18 東芝メモリ株式会社 半導体記憶装置
US9679650B1 (en) 2016-05-06 2017-06-13 Micron Technology, Inc. 3D NAND memory Z-decoder
US10074430B2 (en) * 2016-08-08 2018-09-11 Micron Technology, Inc. Multi-deck memory device with access line and data line segregation between decks and method of operation thereof
CN107731257B (zh) * 2016-08-12 2021-07-13 中芯国际集成电路制造(上海)有限公司 一种数据恢复电路及具备数据恢复功能的装置
US11450381B2 (en) 2019-08-21 2022-09-20 Micron Technology, Inc. Multi-deck memory device including buffer circuitry under array

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120008413A1 (en) * 2010-07-09 2012-01-12 Byoung Kwan Jeong Method for operating semiconductor memory device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101504338B1 (ko) * 2009-03-04 2015-03-23 삼성전자주식회사 불휘발성 메모리 장치의 동작 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120008413A1 (en) * 2010-07-09 2012-01-12 Byoung Kwan Jeong Method for operating semiconductor memory device

Also Published As

Publication number Publication date
US9230667B2 (en) 2016-01-05
US20150228349A1 (en) 2015-08-13
KR20150093474A (ko) 2015-08-18

Similar Documents

Publication Publication Date Title
KR102180299B1 (ko) 반도체 장치
JP6193629B2 (ja) 不揮発性メモリセルの物理的特性を利用して乱数を生成する方法
KR102564563B1 (ko) 메모리 시스템 및 그 동작 방법
TWI674581B (zh) 半導體記憶體裝置及其之操作方法
US9575839B2 (en) Data storage device and operating method thereof
CN110622249B (zh) 数据存储装置
US20150113237A1 (en) Data storing system and operating method thereof
KR20140020057A (ko) 키 제어 로직을 포함하는 플래시 메모리 장치 및 그것의 암호화 키 저장 방법
KR20150053092A (ko) 데이터 저장 시스템 및 그것의 동작 방법
US9646696B2 (en) Semiconductor memory device, erasing methods thereof, and data storage device including the same
KR20140123230A (ko) 플래시 메모리와 메모리 컨트롤러를 포함하는 데이터 저장 장치 및 그것의 배드 페이지 관리 방법
TW201913662A (zh) 記憶體裝置及其操作方法
US9298650B2 (en) Memory system, semiconductor memory device and operating method thereof
TW201730890A (zh) 半導體記憶體裝置及其操作方法
KR20170064834A (ko) 데이터 저장 장치 및 그것의 동작 방법
US11307777B2 (en) Memory system and operating method thereof
KR20180104853A (ko) 메모리 시스템 및 그의 동작 방법
KR20140028718A (ko) 반도체 메모리 장치 및 이의 동작 방법
US11386018B2 (en) Memory system and operating method thereof
KR20210069257A (ko) 메모리 장치 및 그것의 동작 방법
KR20150056203A (ko) 반도체 장치 및 이의 동작 방법
US12014059B2 (en) Storage devices, methods of operating storage devices, and methods of operating host devices
KR20150012768A (ko) 반도체 메모리 장치 및 그것의 동작 방법
KR20140079912A (ko) 반도체 메모리 장치 및 이의 동작 방법
US20240097885A1 (en) Memory controller and storage device including same

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant