KR101554159B1 - 데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템 - Google Patents

데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템 Download PDF

Info

Publication number
KR101554159B1
KR101554159B1 KR1020080098694A KR20080098694A KR101554159B1 KR 101554159 B1 KR101554159 B1 KR 101554159B1 KR 1020080098694 A KR1020080098694 A KR 1020080098694A KR 20080098694 A KR20080098694 A KR 20080098694A KR 101554159 B1 KR101554159 B1 KR 101554159B1
Authority
KR
South Korea
Prior art keywords
data
input data
storage device
data storage
control signal
Prior art date
Application number
KR1020080098694A
Other languages
English (en)
Other versions
KR20100039647A (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 KR1020080098694A priority Critical patent/KR101554159B1/ko
Priority to US12/573,246 priority patent/US8352808B2/en
Priority to CN200910253066.0A priority patent/CN101763895B/zh
Publication of KR20100039647A publication Critical patent/KR20100039647A/ko
Application granted granted Critical
Publication of KR101554159B1 publication Critical patent/KR101554159B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/58Random or pseudo-random number generators
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units

Abstract

데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템이 개시된다. 본 발명의 실시예에 따른 데이터 저장 장치는, 입력되는 데이터를 선택적으로 랜덤화하여 소정의 저장 수단에 기입함으로써 랜더마이저 및 저장 장치의 효율성을 최대화할 수 있다. 또한, 본 발명의 실시예에 따른 데이터 저장 장치는, 기설정된 단위별로 랜더마이저의 씨드를 각각 상이하게 적용함으로써 데이터의 랜덤성을 더욱 증가시킬 수 있다.

Description

데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템{Data storage device and data storage system having the same}
본 발명의 실시예는 데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템에 관한 것이다.
타이밍 회복 회로(timing recovery circuit), 자동 이득 제어 회로(automatic gain control circuit), 또는 적응적 회로(adaptive circuit) 등의 동작을 개선시키기 위하여 랜더마이저(randomizer)가 사용될 수 있다. 예컨대, 상기 랜더마이저는 '0' 또는 '1'만으로 이루어진 시퀀스를 랜덤화함으로써 데이터의 타이밍이 용이하게 회복될 수 있도록 한다. 상기 랜더마이저는 스크램블러(scrambler)로 불릴 수도 있다.
하지만, 종래의 랜더마이저는 데이터의 속성과 무관하게 입력 데이터에 대하여 일괄적으로 랜덤화를 수행하기 때문에 시간적 또는 비용적으로 상당히 비효율적이다.
또한, 종래의 랜더마이저는 단일의 씨드(seed)를 이용하여 입력 데이터를 랜덤화하기 때문에, 데이터의 랜덤성을 증가시키는데 있어서 일정한 한계를 갖게 된 다.
본 발명은 상기의 문제점을 해결하고자 안출된 것으로서, 본 발명에 따른 실시예가 해결하고자 하는 과제는 데이터의 속성에 따라 데이터를 선택적으로 랜덤화할 수 있는 데이터 저장 장치를 제공하는 것이다.
또한, 본 발명에 따른 실시예가 해결하고자 하는 다른 과제는 데이터의 랜덤성을 증가시킬 수 있는 데이터 저장 장치를 제공하는 것이다.
상기의 과제를 해결하기 위한 데이터 저장 장치는, 제1 입력 데이터의 속성을 결정하고 결정된 상기 입력 데이터의 속성에 기초한 제1 제어 신호를 출력하기 위한 컨트롤러; 및 상기 컨트롤러로부터 출력된 상기 제1 제어 신호에 응답하여 상기 제1 입력 데이터를 선택적으로 랜덤화하기 위한 랜더마이저(randomizer)를 포함할 수 있다.
상기 컨트롤러는, 상기 제1 입력 데이터에 포함된 플래그 신호(flag signal)에 기초하여 상기 입력 데이터의 속성을 결정할 수 있다.
상기 데이터 저장 장치는, 제2 입력 데이터를 오류 정정 부호화하여 상기 제1 입력 데이터를 생성하기 위한 오류 정정 부호화기를 더 포함할 수 있다.
상기 랜더마이저는, 상기 오류 정정 부호화기에서 출력된 상기 제1 데이터 중 패리티 데이터(parity data)를 선택적으로 랜덤화할 수 있다.
상기 랜더마이저는, 각 섹터, 각 페이지, 각 워드 라인, 또는 각 블록별로 상이한 씨드를 이용하여 상기 제1 입력 데이터를 선택적으로 랜덤화할 수 있다.
상기 데이터 저장 장치는, 호스트로부터의 독출 명령에 응답하여 독출되는 독출 데이터를 역랜덤화하기 위한 디랜더마이저(derandomizer)를 더 포함하고, 상기 디랜더마이저는 상기 컨트롤러로부터 출력된 제2 제어 신호에 응답하여 상기 독출 데이터를 선택적으로 역랜덤화할 수 있다.
상기의 과제를 해결하기 위한 데이터 저장 시스템은, 데이터 저장 장치; 및 상기 데이터 저장 장치의 동작을 제어하기 위한 프로세서를 포함하고, 상기 데이터 저장 장치는, 입력 데이터의 속성을 결정하고 결정된 상기 입력 데이터의 속성에 기초한 제어 신호를 출력하기 위한 컨트롤러; 및 상기 컨트롤러로부터 출력된 제어 신호에 응답하여 상기 입력 데이터를 선택적으로 랜덤화하기 위한 랜더마이저(randomizer)를 포함할 수 있다.
각 섹터, 각 페이지, 각 워드 라인, 또는 각 블록별로 상이한 씨드를 이용하여 상기 입력 데이터를 선택적으로 랜덤화할 수 있다.
본 발명의 실시예에 따른 데이터 저장 장치는 입력 데이터를 선택적으로 랜덤화함으로써 데이터 저장 장치의 효율성을 높일 수 있다.
또한, 본 발명의 실시예에 따른 데이터 저장 장치는 기설정된 데이터 단위별로 서로 상이한 씨드를 적용시킴으로써, 데이터의 랜덤성을 더욱 증가시킬 수 있다.
또한, 본 발명의 실시예에 따른 데이터 저장 장치는 기설정된 데이터 단위별 로 서로 상이한 씨드를 적용시킴으로써, 데이터의 독출을 보다 용이하게 할 수 있다.
본 발명과 본 발명의 동작상의 이점 및 본 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바람직한 실시예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조해야만 한다.
이하, 첨부된 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 이해하고 실시할 수 있도록 본 발명의 바람직한 실시예를 상세히 설명하도록 한다. 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 실시예에 따른 데이터 저장 장치(100)의 개략적인 블록도이다.
본 발명의 실시예에 따른 데이터 저장 장치(100)는 컨트롤러(controller, 20) 및 랜더마이저(randomizer, 10)를 포함할 수 있다.
도 1에 도시된 예에서, 상단부의 프로세스는 저장 유닛(40)에 데이터를 기입하기 위한 기입 프로세스(write process)를 나타내고, 하단부의 프로세스는 상기 저장 유닛(40)에 기입된 데이터를 독출하기 위한 독출 프로세스(read process)를 나타낸다.
도 1에서는 데이터가 오류 정정 부호화(ECC; error correction code)를 수행하는 것으로 예시하였지만, 실시예에 따라 ECC 인코더(50) 및 ECC 디코더(60)의 동 작 없이 데이터의 기입 프로세스 또는 독출 프로세스가 수행될 수도 있다.
먼저, 도 1의 상단부에 도시된 기입 프로세스에 대하여 상세히 기술하도록 한다.
외부(예컨대, 호스트)로부터 입력되는 입력 데이터(DATA)는 상기 ECC 인코더(50)에서 오류 정정 인코딩되어 패리티 비트(parity bit)가 부가된 데이터(DATA´)로 변환될 수 있고, 변환된 데이터(DATA´)는 상기 랜더마이저(10)로 입력될 수 있다.
상기 ECC 인코더(50) 및 ECC 디코더(60)는 오류 정정 부호화를 위한 회로, 시스템 또는 장치를 모두 포함할 수 있다.
또한, 상기 데이터 저장 장치(100)가 상기 ECC 인코더(50)를 포함하지 않는 실시예에서는, 상기 입력 데이터(DATA)가 직접 상기 랜더마이저(10)로 입력될 수 있다.
상기 컨트롤러(20)는 입력 데이터(DATA)의 속성(characteristic)을 결정하고 결정된 상기 입력 데이터(DATA)의 속성에 기초한 제어 신호(CS)를 출력할 수 있다. 상기 입력 데이터(DATA)의 속성은, 예컨대 상기 입력 데이터(DATA)가 실질적 정보를 포함하는 기본 데이터인지, 상기 기본 데이터에 대한 부가 정보를 포함하는 메타 데이터(meta data)인지, 스페어 데이터(spare data)인지, 또는 상기 패리티 비트를 포함하는 패리티 데이터(parity data)인지 등을 나타낸다.
또한, 배드 블록 마킹(bad block marking) 시에 배드 블록 정보를 나타내기 위하여 블록의 소정 영역에 n비트(예컨대, n은 8)크기의 스페어 데이터(예컨대, "00000000")가 프로그램될 수 있으며, 배드 블록 정보를 나타내는 스페어 데이터를 램덤화할 경우 배드 블록 정보가 손상될 우려가 있기 때문에 상기 랜더마이저(10)에 의한 랜덤화가 수행되지 않도록 본 발명의 실시예에 따른 데이터 저장 장치(100)가 구현될 수 있다.
실시예에 따라 상기 컨트롤러(20)는 상기 입력 데이터(DATA)에 포함된 플래그 신호(flag signal)에 기초하여 상기 입력 데이터(DATA)의 속성을 결정할 수도 있다. 실시예에 따라, 상기 컨트롤러(20)는 상기 플래그 신호에 기초하여 데이터가 프로그램(program)되었는지 여부를 확인할 수 있다.
상기 랜더마이저(10)는 상기 컨트롤러(20)로부터 출력된 제어 신호(CS)에 응답하여 상기 입력 데이터(DATA) 또는 상기 ECC 인코더(50)에 의해서 패리티 비트가 부가된 데이터(DATA´)를 선택적으로 랜덤화할 수 있다.
보다 구체적으로, 상기 입력 데이터(DATA)가 기본 데이터인 경우에, 상기 컨트롤러(20)는 제1 레벨(예컨대, 하이 레벨)을 갖는 제어 신호(CS)를 출력할 수 있고, 상기 랜더마이저(10)는 상기 제1 레벨을 갖는 제어 신호(CS)에 응답하여 상기 입력 데이터(DATA) 또는 상기 ECC 인코더(50)에 의해 패리티 비트가 부가된 데이터(DATA´)를 랜덤화할 수 있다. 상기 랜더마이저(10)에 의해 랜덤화된 데이터(DATA˝)는 상기 저장 유닛(40)에 기입될 수 있다.
유사하게, 상기 입력 데이터(DATA)가 메타 데이터, 또는 스페어 데이터인 경우에, 상기 컨트롤러(20)는 제2 레벨(예컨대, 로우 레벨)을 갖는 제어 신호(CS)를 출력할 수 있고, 상기 랜더마이저(10)는 상기 제2 레벨을 갖는 제어 신호(CS)에 응 답하여 상기 입력 데이터(DATA) 또는 상기 ECC 인코더(50)에 의해 패리티 비트가 부가된 데이터(DATA´)를 랜덤화하지 않을 수 있다.
상기 랜더마이저(10)는 부가형 랜더마이저(additive randomizer 또는 synchronous randomizer) 또는 복합형 랜더마이저(multiplicative randomizer 또는 self-synchronous randomizer)를 포함할 수 있다.
또한, 입력 데이터(DATA)가 ECC 인코더(50)에 의해 인코딩되는 실시예에서, 상기 랜더마이저(10)는 패리티 데이터를 랜덤화할 수도 있고 또는 랜덤화하지 않을 수도 있다. 입력 데이터(DATA)의 속성에 따른 상기 랜더마이저(10)의 동작에 대해서는 도 2a에서 상술하기로 한다.
도 1의 하단부에 도시된 독출 프로세스에 대하여 상세히 기술하도록 한다.
독출 회로(미도시)는 외부(예컨대, 호스트)로부터의 독출 명령에 응답하여, 상기 저장 유닛(40)에 기입된 데이터 중 상기 독출 명령에 대응하는 데이터(DATA˝)를 독출하여 상기 디랜더마이저(30)로 전송할 수 있다.
상기 디랜저마이저(30)는 상기 컨트롤러(20)로부터 출력되는 제어 신호(CS´)에 응답하여 상기 저장 유닛(40)으로부터 독출되는 데이터(DATA˝)를 선택적으로 역랜덤화할 수 있다.
보다 구체적으로, 상기 저장 유닛(40)으로부터 독출되는 데이터(DATA˝)가 기본 데이터이면 상기 컨트롤러(20)는 제1 레벨(예컨대, 하이 레벨)을 갖는 제어 신호(CS´)를 출력하고, 상기 디랜더마이저(30)는 상기 제1 레벨을 갖는 제어 신호(CS´)에 응답하여 상기 저장 유닛(40)으로부터 독출되는 데이터(DATA˝)를 역랜 덤화할 수 있다.
유사하게, 상기 저장 유닛(40)으로부터 독출되는 데이터(DATA˝)가 메타 데이터, 또는 스페이 데이터이면 상기 컨트롤러(20)는 제2 레벨(예컨대, 로우 레벨)을 갖는 제어 신호(CS´)를 출력하고, 상기 디랜더마이저(30)는 상기 제2 레벨을 갖는 제어 신호(CS´)에 응답하여 상기 저장 유닛(40)으로부터 독출되는 데이터(DATA˝)를 역랜덤화하지 않을 수 있다.
상기 랜더마이저(10)가 부가형 랜더마이저로 구현되는 경우 상기 디랜더마이저(30)는 상기 랜더마이저(10)를 그대로 이용할 수 있으며, 따라서 본 발명의 실시예에 따른 데이터 저장 장치(100)는 소형화를 이룰 수 있다.
또한, 상기 디랜저마이저(30)에서 출력된 데이터(DATA´)는 ECC 디코더(60)에 의해 오류가 확인되어 확인된 오류가 정정될 수 있다. 실시예에 따라 기입 프로세스에서 ECC 인코더(50)를 거치지 않은 경우에는 상기 ECC 디코더(60)의 동작이 생략될 수도 있다. 독출 시의 상기 디랜더마이저(30)의 동작에 대해서는 도 2b에서 후술하기로 한다.
본 발명의 실시예에 따른 데이터 저장 장치(100)는 섹터(sector), 페이지(page), 워드 라인(word line), 또는 블록(block) 중 어느 하나의 단위로 씨드(seed)를 상이하게 적용할 수 있다.
예컨대, 상기 데이터 저장 장치(100)는 상기 입력 데이터(DATA)를 구성하는 제1 섹터와 제2 섹터에 제1 씨드와 제2 씨드를 각각 적용할 수 있으며, 이러한 원리는 페이지 단위, 워드 라인 단위, 또는 블록 단위에도 동일하게 적용될 수 있다. 또한, 예컨대 섹터 별로 상이한 씨드를 적용하여 랜덤화하는 경우에 랜덤화하는 데이터의 양이 섹터의 크기와 동일할 수 있다.
상기 랜더마이저(10)는 입력 데이터(DATA) 또는 상기 ECC 인코더(50)에 의해 패리티 비트가 부가된 데이터(DATA´)에 의사-랜덤 이진 시퀀스(PRBS; pseudo-random binary sequence)를 부가함으로써 데이터를 랜덤화하며, 상기 의사-랜덤 이진 시퀀스는 선형 피드백 시프트 레지스터(LFSR; linear feedback shift register)에 의해 생성될 수 있다.
따라서, 상기 선형 피드백 시프트 레지스터에 입력되는 씨드를 기설정된 데이터 단위마다 상이하게 적용함으로써, 데이터를 구성하는 각 단위에 서로 상이한 의사-랜덤 이진 시퀀스가 부가되도록 본 발명의 실시예에 따른 데이터 저장 장치(100)가 구현될 수 있다.
상기 씨드가 M 비트(M은 자연수)의 크기인 경우, 상기 씨드에 의해 생성되는 의사-랜덤 이진 시퀀스는 (2M-1)의 주기를 가질 수 있다.
실시예에 따라, 상기 각 씨드는 블록 넘버(block number), 워드 라인 넘버(word line number), 페이지 넘버(page number), 섹터 넘버(sector number) 등을 이용하여 계산될 수 있다.
또는 실시예에 따라, 기계산된 복수 개의 씨드들이 소정의 메모리 유닛(미도시)에 저장될 수 있고, 상기 랜더마이저(10) 또는 상기 디랜더마이저(30)는 상기 메모리 유닛으로부터 어플리케이션에 적합한 씨드를 수신하여 프로세스를 수행할 수도 있다.
따라서, 상기 저장 유닛(40)에 기입되는 데이터에 대해 한가지의 씨드를 적용하지 않고 기설정된 단위마다 서로 상이한 씨드가 적용됨으로써, 섹터, 페이지, 워드 라인, 또는 블록별로 동일한 패턴의 데이터가 입력되더라도 본 발명의 실시예에 따른 데이터 저장 장치(100)는 데이터의 랜덤성을 더욱 증가시킬 수 있게 된다.
또한, 섹터, 페이지, 워드 라인, 또는 블록 단위별로 랜더마이저(10)의 씨드를 다르게 적용함으로써, 데이터 독출이 보다 효과적으로 수행될 수 있다.
예컨대, 종래에는 랜더마이저가 두 개 이상의 페이지(예컨대, 페이지 A 및 페이지 B)에 걸쳐서 적용되는 경우 페이지 B에 기입된 데이터만을 독출하기 위한 디랜더마이징을 하기 위해서 페이지 A에 랜더마이저가 어떻게 적용되었는지를 파악해야했지만, 본 발명의 실시예에 따른 데이터 저장 장치(100)는 페이지 A에 랜더마이저가 어떻게 적용되었는지를 판단할 필요없이 페이지 B에 기입된 데이터만을 독립적으로 독출할 수 있다는 장점이 있다.
도 2a 및 도 2b는 본 발명의 실시예에 따른 랜더마이저(10) 및 디랜더마이저(30)의 개략적인 구성을 각각 나타낸 블록도이다.
도 2a는 본 발명의 실시예에 따른 랜더마이저(10)의 개략적인 블록도이다. 도 1 및 도 2a를 참고하여 설명하면, 본 발명의 실시예에 따른 랜더마이저(10)는 상기 컨트롤러(20)로부터 출력되는 제어 신호(CS)에 응답하여 스위칭되는 스위치(12), 및 랜덤화를 수행하기 위한 랜더밍 회로(randoming circuit, 11)를 포함할 수 있다.
상술한 바와 같이, 상기 입력 데이터(DATA) 또는 상기 ECC 인코더(50)에 의해 패리티 비트가 부가된 데이터(DATA´)가 기본 데이터인 경우 상기 컨트롤러(20)는 제1 레벨(예컨대, 하이 레벨)을 갖는 제어 신호(CS)를 출력할 수 있고, 상기 스위치(12)는 상기 제1 레벨을 갖는 제어 신호(CS)에 응답하여 상기 입력 데이터(DATA) 또는 상기 ECC 인코더(50)에 의해 패리티 비트가 부가된 데이터(DATA´)가 상기 랜더밍 회로(11)에 연결될 수 있도록 스위칭될 수 있다.
유사하게, 상기 입력 데이터(DATA) 또는 상기 ECC 인코더(50)에 의해 패리티 비트가 부가된 데이터(DATA´)가 메타 데이터 또는 스페어 데이터인 경우 상기 컨트롤러(20)는 제2 레벨(예컨대, 로우 레벨)을 갖는 제어 신호(CS)를 출력할 수 있고, 상기 입력 데이터(DATA) 또는 상기 ECC 인코더(50)에 의해 패리티 비트가 부가된 데이터(DATA´)가 상기 랜더밍 회로(11)에 입력되지 않고 바이패스(bypass)되도록 상기 스위치(12)가 상기 제2 레벨을 갖는 제어 신호(CS)에 응답하여 스위칭될 수 있다.
도 2b는 본 발명의 실시예에 따른 디랜더마이저(30)의 개략적인 블록도이다. 도 1 및 도 2b를 참고하여 설명하면, 본 발명의 실시예에 따른 디랜더마이저(30)는, 상기 컨트롤러(20)로부터 출력되는 제어 신호(CS´)에 응답하여 스위칭되는 스위치(32), 및 역랜덤화를 수행하기 위한 디랜더밍 회로(derandoming circuit, 31)를 포함할 수 있다.
상술한 바와 같이, 독출 데이터(DATA˝)가 기본 데이터인 경우 상기 컨트롤러(20)는 제1 레벨(예컨대, 하이 레벨)을 갖는 제어 신호(CS´)를 출력할 수 있고, 상기 스위치(32)는 상기 제1 레벨을 갖는 제어 신호(CS´)에 응답하여 상기 독출 데이터(DATA˝)가 상기 랜더밍 회로(11)에 연결될 수 있도록 스위칭될 수 있다.
유사하게, 상기 독출 데이터(DATA˝)가 메타 데이터 또는 스페어 데이터인 경우 상기 컨트롤러(20)는 제2 레벨(예컨대, 로우 레벨)을 갖는 제어 신호(CS´)를 출력할 수 있고, 상기 독출 데이터(DATA˝)가 상기 디랜더밍 회로(31)에 입력되지 않고 바이패스되도록 상기 스위치(32)가 상기 제2 레벨을 갖는 제어 신호(CS´)에 응답하여 스위칭될 수 있다.
도 3은 본 발명의 실시예에 따른 데이터 저장 시스템(1)의 개략적인 블록도를 나타낸다. 도 3을 참조하면, 본 발명의 실시예에 따른 데이터 저장 시스템(1)은 시스템 버스(system bus, 110)에 접속된 데이터 저장 장치(100)와 프로세서(processor, 120)를 포함할 수 있다.
프로세서(120)는 상기 데이터 저장 장치(100)의 프로그램 동작(또는 기입 동작), 독출 동작, 또는 검증 동작을 제어하기 위한 제어 신호들을 생성할 수 있다. 따라서, 데이터 저장 장치(100)의 제어 블록(미도시)은 상기 프로세서(120)로부터 출력된 제어 신호에 응답하여 프로그램 동작(또는 기입 동작), 독출 동작, 또는 검증 동작 등을 수행할 수 있다.
실시예에 따라, 본 발명의 실시예에 따른 데이터 저장 시스템(1)이 휴대용 어플리케이션(portalble application)으로 구현되는 경우에, 본 발명의 실시예에 따른 데이터 저장 시스템(1)은 데이터 저장 장치(100)와 프로세서(120)로 동작 전원을 공급하기 위한 배터리(battery, 150)를 더 포함할 수 있다.
상기 휴대용 어플리케이션은, 휴대용 컴퓨터(portable computer), 디지털 카메라(digital camera), PDA(personal digital assistance), 휴대 전화기(cellular telephone), MP3 플레이어, PMP(portable multimedia player), 차량자동항법장치(automotive navigation system), 메모리 카드(memory card), 시스템 카드(system card), 게임기, 전자 사전, 또는 솔리드 스테이트 디스크(solid state disk)를 포함할 수 있다.
본 발명의 실시예에 따른 데이터 저장 시스템(1)은 외부의 데이터 처리 장치와 데이터를 주고 받을 수 있도록 하는 인터페이스, 예컨대 입/출력 장치(130)를 더 포함할 수 있다.
본 발명의 실시예에 따른 데이터 저장 시스템(1)이 무선 시스템인 경우, 본 발명의 실시예에 따른 데이터 저장 시스템(1)은 무선 인터페이스(140)를 더 포함할 수 있다. 이 경우 무선 인터페이스(140)는 프로세서(120)에 접속되고 시스템 버스(110)를 통하여 무선으로 외부 무선 장치와 데이터를 송수신할 수 있다.
상기 무선 시스템은 PDA, 휴대용 컴퓨터, 무선 전화기, 페이저(pager), 디지털 카메라와 같은 무선 장치, RFID 리더, 또는 RFID 시스템일 수 있다. 또한, 상기 무선 시스템은 WLAN(Wireless Local Area Network) 시스템 또는 WPAN(Wireless Personal Area Network) 시스템일 수 있다. 또한, 상기 무선 시스템은 이동 전화 네트워크(Cellular Network)일 수 있다.
본 발명의 실시예에 따른 데이터 저장 시스템(1)이 이미지 촬상 장치(image pick-up device)인 경우, 본 발명의 실시예에 따른 데이터 저장 시스템(1)은 광학 신호를 전기 신호로 변환할 수 있는 이미지 센서(image sensor, 160)를 더 포함할 수 있다. 상기 이미지 센서(160)는 전자 결합 소자(CCD; charge-coupled device)를 이용한 이미지 센서일 수 있고, 또는 CMOS(complementary metal-oxide semiconductor) 이미지 센서일 수 있다. 이 경우 본 발명의 실시예에 따른 데이터 저장 시스템(1)은 디지털 카메라 또는 디지털 카메라가 부착된 이동 전화기일 수 있다. 또한, 본 발명의 실시예에 따른 데이터 저장 시스템(1)은 카메라가 부착된 인공 위성 시스템(satellite system)일 수 있다.
본 발명은 도면에 도시된 일 실시예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 것을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 실시예에 따른 데이터 저장 장치의 개략적인 블록도.
도 2a는 본 발명의 실시예에 따른 랜더마이저의 개략적인 블록도.
도 2b는 본 발명의 실시예에 따른 디랜더마이저의 개략적인 블록도.
도 3은 본 발명의 실시예에 따른 데이터 저장 시스템의 개략적인 블록도.

Claims (8)

  1. 제1 입력 데이터의 속성을 결정하고 결정된 상기 제1 입력 데이터의 속성에 기초한 제1 제어 신호를 출력하기 위한 컨트롤러; 및
    상기 컨트롤러로부터 출력된 상기 제1 제어 신호에 응답하여 상기 제1 입력 데이터를 선택적으로 랜덤화하기 위한 랜더마이저(randomizer)를 포함하고,
    상기 제1입력 데이터의 속성은 상기 제1입력 데이터가 기본 데이터 또는 메타(meta) 데이터인지를 나타내고, 상기 기본 데이터는 실질적 정보를 포함하고, 상기 메타 데이터는 상기 기본 데이터에 대한 부가 정보를 포함하는 데이터 저장 장치.
  2. 제1항에 있어서, 상기 컨트롤러는,
    상기 제1 입력 데이터에 포함된 플래그 신호(flag signal)에 기초하여 상기 제1 입력 데이터의 속성을 결정하는 데이터 저장 장치.
  3. 제1항에 있어서, 상기 데이터 저장 장치는,
    제2 입력 데이터를 오류 정정 부호화하여 상기 제1 입력 데이터를 생성하기 위한 오류 정정 부호화기를 더 포함하는 데이터 저장 장치.
  4. 제3항에 있어서, 상기 랜더마이저는,
    상기 오류 정정 부호화기에서 출력된 상기 제1 입력 데이터 중 패리티 데이터(parity data)를 선택적으로 랜덤화하는 데이터 저장 장치.
  5. 제1항에 있어서, 상기 랜더마이저는,
    각 섹터, 각 페이지, 각 워드 라인, 또는 각 블록별로 상이한 씨드를 이용하여 상기 제1 입력 데이터를 선택적으로 랜덤화하는 데이터 저장 장치.
  6. 제1항에 있어서, 상기 데이터 저장 장치는,
    호스트로부터의 독출 명령에 응답하여 독출되는 독출 데이터를 역랜덤화하기 위한 디랜더마이저(derandomizer)를 더 포함하고,
    상기 디랜더마이저는 상기 컨트롤러로부터 출력된 제2 제어 신호에 응답하여 상기 독출 데이터를 선택적으로 역랜덤화하는 데이터 저장 장치.
  7. 데이터 저장 장치; 및
    상기 데이터 저장 장치의 동작을 제어하기 위한 프로세서를 포함하고,
    상기 데이터 저장 장치는,
    입력 데이터의 속성을 결정하고 결정된 상기 입력 데이터의 속성에 기초한 제어 신호를 출력하기 위한 컨트롤러; 및
    상기 컨트롤러로부터 출력된 제어 신호에 응답하여 상기 입력 데이터를 선택적으로 랜덤화하기 위한 랜더마이저(randomizer)를 포함하고,
    상기 입력 데이터의 속성은 상기 입력 데이터가 기본 데이터 또는 메타(meta) 데이터인지를 나타내고, 상기 기본 데이터는 실질적 정보를 포함하고, 상기 메타 데이터는 상기 기본 데이터에 대한 부가 정보를 포함하는 데이터 저장 시스템.
  8. 제7항에 있어서,
    각 섹터, 각 페이지, 각 워드 라인, 또는 각 블록별로 상이한 씨드를 이용하 여 상기 입력 데이터를 선택적으로 랜덤화하는 데이터 저장 시스템.
KR1020080098694A 2008-10-08 2008-10-08 데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템 KR101554159B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020080098694A KR101554159B1 (ko) 2008-10-08 2008-10-08 데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템
US12/573,246 US8352808B2 (en) 2008-10-08 2009-10-05 Data storage system and device with randomizer/de-randomizer
CN200910253066.0A CN101763895B (zh) 2008-10-08 2009-10-09 具有随机化器/去随机化器的数据存储系统和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080098694A KR101554159B1 (ko) 2008-10-08 2008-10-08 데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템

Publications (2)

Publication Number Publication Date
KR20100039647A KR20100039647A (ko) 2010-04-16
KR101554159B1 true KR101554159B1 (ko) 2015-09-21

Family

ID=42076758

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080098694A KR101554159B1 (ko) 2008-10-08 2008-10-08 데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템

Country Status (3)

Country Link
US (1) US8352808B2 (ko)
KR (1) KR101554159B1 (ko)
CN (1) CN101763895B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10067819B2 (en) 2016-03-28 2018-09-04 SK Hynix Inc. Data storage device and operating method thereof

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI438778B (zh) * 2010-03-25 2014-05-21 Silicon Motion Inc 用來抑制資料錯誤之方法以及相關之記憶裝置及其控制器
CN102543182B (zh) * 2010-12-14 2014-12-31 炬力集成电路设计有限公司 随机化电路、存储器控制单元、存储器、通信系统及方法
KR101736337B1 (ko) 2011-02-28 2017-05-30 삼성전자주식회사 비휘발성 메모리 장치, 상기 메모리 장치를 제어하는 컨트롤러, 및 상기 컨트롤러 동작 방법
KR101720101B1 (ko) * 2011-03-18 2017-03-28 삼성전자주식회사 메모리 시스템에 데이터를 쓰는 쓰기 방법 및 메모리 시스템의 데이터 쓰기 방법
JP2012226822A (ja) 2011-04-15 2012-11-15 Samsung Electronics Co Ltd 不揮発性メモリ装置
KR101818671B1 (ko) * 2011-04-19 2018-02-28 삼성전자주식회사 불휘발성 메모리 장치, 불휘발성 메모리 시스템 및 그것의 랜덤 데이터 읽기 방법
KR101678919B1 (ko) 2011-05-02 2016-11-24 삼성전자주식회사 메모리 시스템 및 에러 정정 방법
KR20120125790A (ko) * 2011-05-09 2012-11-19 삼성전자주식회사 메모리 장치 및 그것을 포함하는 메모리 시스템
KR101818445B1 (ko) 2011-07-08 2018-01-16 삼성전자주식회사 메모리 컨트롤러, 이의 동작 방법, 및 상기 메모리 컨트롤러를 포함하는 전자 장치들
KR20130049332A (ko) * 2011-11-04 2013-05-14 삼성전자주식회사 메모리 시스템 및 그것의 동작 방법
KR101811298B1 (ko) 2011-12-28 2017-12-27 삼성전자주식회사 랜덤마이져로 씨드를 제공하는 씨드 컨트롤러 및 그것을 포함한 메모리 컨트롤러
KR20130080203A (ko) * 2012-01-04 2013-07-12 삼성전자주식회사 셀 상태들의 비대칭 특성을 고려한 프로그램 데이터를 생성하는 방법 및 그것을 이용한 메모리 시스템
TWI523030B (zh) 2012-01-09 2016-02-21 群聯電子股份有限公司 緩衝記憶體管理方法、記憶體控制器與記憶體儲存裝置
CN103218308B (zh) * 2012-01-20 2016-06-29 群联电子股份有限公司 缓冲存储器管理方法、存储器控制器与存储器储存装置
KR101923157B1 (ko) 2012-02-22 2018-11-28 삼성전자주식회사 메모리 시스템 및 그것의 프로그램 방법
US8984373B2 (en) * 2012-02-22 2015-03-17 Silicon Motion, Inc. Method for accessing flash memory and associated flash memory controller
KR102036348B1 (ko) * 2012-02-27 2019-10-24 삼성전자 주식회사 메모리 컨트롤러 및 이의 동작 방법
BR112014031288A2 (pt) * 2012-06-14 2017-06-27 Thomson Licensing método, aparelho e sistema para determinar a reação do observador a elementos de conteúdo
TWI521528B (zh) 2012-08-08 2016-02-11 群聯電子股份有限公司 記憶體儲存裝置、其記憶體控制器與資料處理方法
CN103631670B (zh) * 2012-08-22 2018-08-31 群联电子股份有限公司 存储器储存装置、存储器控制器与数据处理方法
KR102025251B1 (ko) 2012-10-31 2019-09-25 삼성전자주식회사 메모리 시스템 및 그것의 프로그램 방법
KR101997794B1 (ko) 2012-12-11 2019-07-09 삼성전자주식회사 메모리 제어기 및 그것을 포함한 메모리 시스템
TWI603194B (zh) 2013-12-04 2017-10-21 慧榮科技股份有限公司 資料儲存裝置以及其資料存取方法
KR102187643B1 (ko) 2013-12-04 2020-12-08 삼성전자주식회사 메모리 시스템 및 그것을 포함하는 유저 장치
KR102116258B1 (ko) 2013-12-24 2020-06-05 삼성전자주식회사 메모리 시스템 및 그것을 포함하는 유저 장치
KR20150122825A (ko) * 2014-04-23 2015-11-03 에스케이하이닉스 주식회사 메모리 컨트롤 유닛 및 그것을 포함하는 데이터 저장 장치
US9575834B2 (en) * 2014-05-16 2017-02-21 International Business Machines Corporation Detecting single event upsets and stuck-at faults in RAM-based data path controllers
KR102200108B1 (ko) 2014-10-10 2021-01-08 삼성전자주식회사 비휘발성 메모리 장치 및 그 동작 방법
TWI506634B (zh) * 2014-11-06 2015-11-01 Phison Electronics Corp 資料存取方法、記憶體控制電路單元及記憶體儲存裝置
US9654407B2 (en) 2014-12-31 2017-05-16 Infineon Technologies Ag Communication systems and methods having reduced frame duration
TWI562149B (en) * 2015-03-09 2016-12-11 Phison Electronics Corp Memory control circuit unit, memory storage apparatus and data accessing method
CN106033681B (zh) * 2015-03-16 2020-01-07 群联电子股份有限公司 存储器控制电路单元、存储器储存装置及数据存取方法
KR20160127525A (ko) * 2015-04-27 2016-11-04 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
KR102370292B1 (ko) 2015-05-07 2022-03-07 에스케이하이닉스 주식회사 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법
TWI569275B (zh) 2015-07-17 2017-02-01 慧榮科技股份有限公司 資料儲存裝置及其資料維護方法
KR102438988B1 (ko) * 2016-04-07 2022-09-02 삼성전자주식회사 랜덤화 연산을 수행하는 불휘발성 메모리 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050053168A1 (en) * 2003-08-23 2005-03-10 Hun-Geun Song Apparatus and method for transmitting/receiving data in a mobile communication system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4993029A (en) * 1989-03-13 1991-02-12 International Business Machines Corporation Method and apparatus for randomizing data in a direct access storage device
US5592492A (en) * 1994-05-13 1997-01-07 Lsi Logic Corporation Convolutional interleaving/de-interleaving method and apparatus for data transmission
US6543024B2 (en) 1996-02-09 2003-04-01 Overland Storage, Inc. Write format for digital data storage
CN1160617C (zh) 1997-10-23 2004-08-04 西加特技术有限责任公司 偶数/奇数数据轨道的交替随机化
US6384747B1 (en) * 2000-10-23 2002-05-07 Cirrus Logic, Inc. Data encoding to provide run-length control in a data storage system
US6785862B1 (en) * 2001-08-14 2004-08-31 Mindspeed Technologies, Inc. Convolutional interleaver employing an efficient memory scheme
US7433141B2 (en) * 2005-03-09 2008-10-07 Tandberg Data Corporation Data randomization for rewriting in recording/reproduction apparatus
US7478220B2 (en) 2005-06-23 2009-01-13 International Business Machines Corporation Method, apparatus, and product for prohibiting unauthorized access of data stored on storage drives
US8127200B2 (en) * 2006-12-24 2012-02-28 Sandisk Il Ltd. Flash memory device and system with randomizing for suppressing errors
US8370561B2 (en) * 2006-12-24 2013-02-05 Sandisk Il Ltd. Randomizing for suppressing errors in a flash memory

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050053168A1 (en) * 2003-08-23 2005-03-10 Hun-Geun Song Apparatus and method for transmitting/receiving data in a mobile communication system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10067819B2 (en) 2016-03-28 2018-09-04 SK Hynix Inc. Data storage device and operating method thereof

Also Published As

Publication number Publication date
US20100088574A1 (en) 2010-04-08
CN101763895A (zh) 2010-06-30
CN101763895B (zh) 2015-05-06
KR20100039647A (ko) 2010-04-16
US8352808B2 (en) 2013-01-08

Similar Documents

Publication Publication Date Title
KR101554159B1 (ko) 데이터 저장 장치 및 이를 포함하는 데이터 저장 시스템
CN106205663B (zh) 半导体存储器设备、存储器系统及错误校正的方法
KR101811298B1 (ko) 랜덤마이져로 씨드를 제공하는 씨드 컨트롤러 및 그것을 포함한 메모리 컨트롤러
JP4901334B2 (ja) メモリコントローラ
JP4953648B2 (ja) 不揮発性記憶装置およびメモリコントローラ
KR101739878B1 (ko) 컨트롤러, 이의 동작방법, 및 상기 컨트롤러를 포함한 메모리 시스템
JP4908083B2 (ja) メモリコントローラ
US8612667B2 (en) Method for performing data pattern management regarding data accessed by a controller of a flash memory, and associated memory device and controller thereof
US8054689B2 (en) Memory card using multi-level signaling and memory system having the same
KR20100046265A (ko) 플래시 메모리의 에러 스캐닝
US9164889B2 (en) Memory system to select program operation method and method thereof
US8867283B2 (en) Semiconductor memory device, operating method thereof, and data storage apparatus including the same
KR20100124087A (ko) 메모리 컨트롤러, 그것을 포함하는 메모리 시스템 그리고 그것의 동작 방법
KR20140075434A (ko) 메모리 컨트롤러 및 그 동작방법
CN105139885A (zh) 一种可编程伽马电压输出装置和显示设备
CN106776104B (zh) 一种Nand Flash控制器和终端以及控制Nand Flash的方法
CN103871470A (zh) 非易失性存储装置、操作方法和具有其的数据处理系统
KR102121335B1 (ko) 데이터 처리 블록 및 그것을 포함하는 데이터 저장 장치
KR101311963B1 (ko) 파워 어택으로부터 안전하게 데이터를 쓰고 읽을 수 있는반도체 메모리 장치 및 그 방법
CN105280235A (zh) 半导体存储器件、具有其的存储系统及其操作方法
US9460782B2 (en) Method of operating memory controller and devices including memory controller
US11928077B2 (en) Data processing circuit, data storage device including the same, and operating method thereof
TWI743715B (zh) 用來針對非揮發性記憶體進行資訊保護的方法及設備
KR101818443B1 (ko) 메모리 컨트롤러, 및 상기 메모리 컨트롤러를 포함하는 메모리 시스템
CN115080305A (zh) 一种基于重复读取的数据恢复方法、系统及电子设备

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180831

Year of fee payment: 4