KR20150040170A - 플래시 메모리를 기반으로 하는 저장 장치 및 그것의 동작 방법 - Google Patents

플래시 메모리를 기반으로 하는 저장 장치 및 그것의 동작 방법 Download PDF

Info

Publication number
KR20150040170A
KR20150040170A KR20130118816A KR20130118816A KR20150040170A KR 20150040170 A KR20150040170 A KR 20150040170A KR 20130118816 A KR20130118816 A KR 20130118816A KR 20130118816 A KR20130118816 A KR 20130118816A KR 20150040170 A KR20150040170 A KR 20150040170A
Authority
KR
South Korea
Prior art keywords
period
data
signal
flash memory
enable signal
Prior art date
Application number
KR20130118816A
Other languages
English (en)
Other versions
KR102138110B1 (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 KR1020130118816A priority Critical patent/KR102138110B1/ko
Priority to US14/299,464 priority patent/US9373406B2/en
Priority to CN201410524776.3A priority patent/CN104517646B/zh
Publication of KR20150040170A publication Critical patent/KR20150040170A/ko
Application granted granted Critical
Publication of KR102138110B1 publication Critical patent/KR102138110B1/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
    • 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
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • 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/32Timing 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/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1057Data output buffers, e.g. comprising level conversion circuits, circuits for adapting load
    • 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/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device

Abstract

본 발명의 실시 예에 따른 플래시 메모리를 기반으로 하는 저장 장치는 데이터를 저장하는 플래시 메모리; 및 데이터 스트로브 라인 및 복수의 데이터 라인을 통해 상기 플래시 메모리와 연결되는 메모리 컨트롤러를 포함하되, 상기 메모리 컨트롤러는 읽기 동작 시에 상기 플래시 메모리로 읽기 인에이블 신호(nRE)를 제공하고, 상기 플래시 메모리는 상기 읽기 인에이블 신호(nRE)를 입력 받고 상기 데이터 스트로브 라인을 통해 상기 메모리 컨트롤러로 제공되는 데이터 스트로브 신호(DQS)의 처음 M개의 주기를 조절한다.

Description

플래시 메모리를 기반으로 하는 저장 장치 및 그것의 동작 방법{STORAGE DEVICE BASED ON FLASH MEMORY AND METHOD FOR OPERATING THEREOF}
본 발명은 반도체 메모리 장치에 관한 것으로, 더 자세하게는 플래시 메모리를 기반으로 하는 저장 장치 및 그것의 동작 방법에 관한 것이다.
반도체 메모리 장치는 일반적으로 DRAM, SRAM 등과 같은 휘발성 메모리 장치와 EEPROM, FRAM, PRAM, MRAM, 플래시 메모리 등과 같은 불휘발성 메모리 장치로 구분할 수 있다. 휘발성 메모리 장치는 전원이 차단될 때 저장된 데이터를 잃지만, 불휘발성 메모리는 전원이 차단되더라도 저장된 데이터를 보존한다. 특히, 플래시 메모리는 높은 프로그래밍 속도, 낮은 전력 소비, 대용량 데이터 저장 등의 장점을 갖는다. 따라서 플래시 메모리를 기반으로 하는 저장 장치(storage device)가 광범위하게 사용되고 있다.
플래시 메모리를 기반으로 하는 저장 장치에는 기존의 하드 디스크를 대체하고 있는 솔리드 스테이트 드라이브(SSD), SD 카드나 MMC 등과 같은 메모리 카드 등이 있다. 이러한 반도체 메모리 장치는 소형으로 만들 수 있기 때문에, 휴대용 전자 기기 등에 내장될 수 있다. 내장형 저장 장치의 예로, eSSD(embedded SSD)나 eMMC(embedded MMC) 등이 있다. eSSD는 렙탑 컴퓨터(laptop computer)나 테블렛 PC 또는 전자책 등에 사용될 수 있고, eMMC는 모바일 장치 등에 사용될 수 있다.
이러한 저장 장치는 플래시 메모리와 메모리 컨트롤러를 포함한다. 플래시 메모리와 메모리 컨트롤러 사이에서는 데이터가 고속으로 전송된다. 저장 장치는 데이터 전송의 안정성을 위해 데이터 스트로브 신호(DQS)를 사용한다. 그러나 데이터 스트로브 신호(DQS)는 데이터 스트로브 라인의 저항 등에 의해 펄스 폭이 좁아질 수 있다. 데이터 스트로브 신호의 펄스 폭이 좁아지면, 데이터를 안전하게 전송하지 못할 수 있다.
본 발명의 목적은 데이터 스트로브 라인을 통해 전송되는 데이터 스트로브 신호(DQS)의 펄스 폭을 조절함으로 데이터를 안전하게 전송할 수 있는 저장 장치 및 그것의 동작 방법을 제공하는 데 있다.
본 발명의 실시 예에 따른 플래시 메모리를 기반으로 하는 저장 장치는 데이터를 저장하는 플래시 메모리; 및 데이터 스트로브 라인 및 복수의 데이터 라인을 통해 상기 플래시 메모리와 연결되는 메모리 컨트롤러를 포함하되, 상기 메모리 컨트롤러는 읽기 동작 시에 상기 플래시 메모리로 읽기 인에이블 신호(nRE)를 제공하고, 상기 플래시 메모리는 상기 읽기 인에이블 신호(nRE)를 입력 받고 상기 데이터 스트로브 라인을 통해 상기 메모리 컨트롤러로 제공되는 데이터 스트로브 신호(DQS)의 처음 M(M은 자연수)개의 주기를 조절한다.
실시 예로서, 상기 메모리 컨트롤러는 상기 플래시 메모리로 제공되는 읽기 인에이블 신호의 주기를 조절하기 위한 읽기 인에이블 신호 주기 조절 회로(이하, nRE 주기 조절 회로라고 함)를 포함한다. 상기 플래시 메모리는 상기 nRE 주기 조절 회로에서 제공되는 읽기 인에이블 신호를 입력 받고 상기 데이터 스트로브 신호의 처음 M개의 주기를 조절한다. 처음 M개의 주기에는 서로 다른 주기가 포함될 수 있다.
또 다른 실시 예로서, 상기 nRE 주기 조절 회로는 상기 읽기 인에이블 신호의 주기를 N배로 조절하기 위한 주기 선택기; 상기 N배로 조절된 주기의 카운트 정보를 제공하는 주기 카운터; 및 상기 주기 선택기 및 상기 주기 카운터에 응답하여 주기가 조절된 읽기 인에이블 신호를 발생하는 주기 신호 발생기를 포함한다.
또 다른 실시 예로서, 상기 메모리 컨트롤러는 상기 주기 조절된 데이터 스트로브 신호의 상승 엣지(rising edge) 또는 하강 엣지(falling edge)에 맞추어(aligned), 상기 복수의 데이터 라인을 통해 상기 플래시 메모리로부터 읽기 데이터를 입력 받고, 상기 입력된 데이터를 선입선출회로에 저장한다. 상기 메모리 컨트롤러는 상기 플래시 메모리부터 처음 입력되는 일정 수의 읽기 데이터를 더미 데이터로 처리한다. 또는 상기 메모리 컨트롤러는 상기 플래시 메모리부터 처음부터 입력되는 모든 읽기 데이터를 유효 데이터로 처리한다.
본 발명의 다른 실시 예는 플래시 메모리를 기반으로 하는 저장 장치의 동작 방법에 관한 것이다. 상기 저장 장치는 데이터를 저장하는 플래시 메모리; 및 데이터 스트로브 라인 및 복수의 데이터 라인을 통해 상기 플래시 메모리와 연결되는 메모리 컨트롤러를 포함한다. 상기 저장 장치의 동작 방법은 데이터 스트로브 신호(DQS)의 주기를 조절하는 단계; 및 상기 조절된 데이터 스트로브 신호에 응답하여 상기 복수의 데이터 라인을 통해 데이터를 전송하는 단계를 포함하되, 상기 데이터 스트로브 신호의 주기는 처음 M(M은 자연수)개의 주기 동안 N(N은 2이상인 자연수)배로 조절된다.
실시 예로서, 상기 저장 장치의 동작 방법은 읽기 요청을 입력 받고 읽기 인에이블 신호의 주기를 조절하는 단계를 더 포함하고, 상기 주기 조절된 읽기 인에이블 신호에 응답하여 상기 데이터 스트로브 신호의 주기를 조절한다. 상기 주기 조절된 데이터 스트로브 신호의 상승 엣지(rising edge) 또는 하강 엣지(falling edge)에 맞추어(aligned), 상기 복수의 데이터 라인을 통해 읽기 데이터를 전송한다.
다른 실시 예로서, 상기 저장 장치의 동작 방법은 상기 주기 조절된 데이터 스트로브 신호의 중앙에 맞추어(center aligned), 상기 복수의 데이터 라인을 통해 쓰기 데이터를 전송한다.
본 발명의 또 다른 일면은 호스트; 및 상기 호스트와 연결되는 내장형 저장 장치를 포함하는 모바일 장치에 관한 것이다. 여기에서, 상기 내장형 저장 장치는 데이터를 저장하는 플래시 메모리; 및 데이터 스트로브 라인 및 복수의 데이터 라인을 통해 상기 플래시 메모리와 연결되는 메모리 컨트롤러를 포함한다. 상기 메모리 컨트롤러는 상기 데이터 스트로브 라인을 통해 상기 플래시 메모리로부터 제공되는 데이터 스트로브 신호(DQS)의 처음 M(M은 자연수)개의 주기를 조절한다.
실시 예로서, 상기 메모리 컨트롤러는 읽기 동작 시에 상기 플래시 메모리로 읽기 인에이블 신호(nRE)를 제공하고, 상기 플래시 메모리는 상기 읽기 인에이블 신호(nRE)를 입력 받고 상기 데이터 스트로브 라인을 통해 상기 메모리 컨트롤러로 제공되는 데이터 스트로브 신호(DQS)의 처음 M개의 주기를 조절한다. 상기 메모리 컨트롤러는 상기 읽기 인에이블 신호의 처음 M개의 주기를 기본 주기의 N(N은 자연수)배로 조절할 수 있다.
다른 실시 예로서, 상기 읽기 인에이블 신호의 타겟 주기는 기본 주기의 정수배일 수 있다. 또한, 상기 데이터 스트로브 신호의 처음 M개의 주기에는 서로 다른 주기가 포함될 수 있다.
본 발명에 실시 예에 따른 저장 장치에 의하면, 데이터 스트로브 라인을 통해 플래시 메모리로부터 메모리 컨트롤러로 제공되는 데이터 스트로브 신호(DQS)의 첫 번째 펄스 폭을 조절함으로, 유효 데이터(valid data)가 더미 데이터(dummy data) 또는 무효 데이터(invalid data)로 잘못 처리되는 문제를 방지할 수 있다.
도 1은 본 발명의 실시 예에 따른 저장 장치를 보여주는 블록도이다.
도 2 및 도 3은 도 1에 도시된 저장 장치의 읽기 동작을 예시적으로 설명하기 위한 타이밍도이다.
도 4는 도 1에 도시된 nRE 주기 조절 회로를 예시적으로 보여주는 블록도이다.
도 5는 도 4에 도시된 nRE 주기 조절 회로의 동작 방법을 예시적으로 설명하기 위한 순서도이다.
도 6은 도 1에 도시된 저장 장치의 데이터 스트로브 신호(DQS)의 주기를 조절하는 방법을 보여주는 타이밍도이다.
도 7 내지 도 9는 더미 DQS 신호 및 더미 데이터를 사용하지 않는 예를 보여주는 타이밍도이다.
도 10은 도 4에 도시된 nRE 주기 조절 회로의 동작 방법의 다른 실시 예를 보여주는 순서도이다.
도 11은 읽기 인에이블 신호(nRE)의 타겟 주기(target cycle)를 기본 주기(reference cycle)의 2배로 설정한 타이밍도이다.
도 12는 읽기 인에이블 신호(nRE)의 처음 M 주기 동안 서로 다른 주기를 갖는 예를 보여주는 타이밍도이다.
도 13은 본 발명의 실시 예에 따른 저장 장치의 동작 방법을 보여주는 순서도이다.
도 14는 본 발명의 실시 예에 따른 저장 장치의 다른 동작 방법을 보여주는 순서도이다.
도 15는 본 발명의 실시 예에 따른 저장 장치의 쓰기 동작을 보여주는 블록도이다.
도 16 내지 도 18은 도 15에 도시된 저장 장치(2000)에서 데이터 스트로브 신호(DQS)의 주기를 조절한 예를 보여주는 타이밍도이다.
도 19는 본 발명의 실시 예에 따른 저장 장치를 메모리 카드에 적용한 예를 보여준다.
도 20은 본 발명의 실시 예에 따른 저장 장치가 모바일 장치에 사용된 경우를 보여주는 블록도이다.
도 21은 본 발명의 실시 예에 따른 저장 장치를 간략하게 도시한 블록도이고,
도 22는 도 21의 저장 장치의 응용 예를 보여주는 블록도이다.
도 23은 도 22를 참조하여 설명된 저장 장치를 포함하는 컴퓨팅 시스템을 보여주는 블록도이다.
이하에서, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자가 본 발명의 기술적 사상을 용이하게 실시할 수 있을 정도로 상세히 설명하기 위하여, 본 발명의 실시 예를 첨부된 도면을 참조하여 설명하기로 한다.
도 1은 본 발명의 실시 예에 따른 저장 장치를 보여주는 블록도이다. 도 1을 참조하면, 저장 장치(1000)는 플래시 메모리(1100)와 메모리 컨트롤러(1200)를 포함한다.
플래시 메모리를 기반으로 하는 저장 장치(storage device)에는 기존의 하드 디스크를 대체하고 있는 솔리드 스테이트 드라이브(SSD), SD 카드나 MMC 등과 같은 메모리 카드 등이 있다. 이러한 저장 장치는 eSSD(embedded SSD), eMMC(embedded MMC), UFS(universal flash storage) 등과 같이 소형으로 구현되어 휴대용 전자 기기 등에 내장될 수 있다. eSSD는 렙탑 컴퓨터(laptop computer)나 전자책 등에 사용될 수 있고, eMMC는 모바일 장치 등에 사용될 수 있다
도 1을 참조하면, 메모리 컨트롤러(1200)는 데이터 스트로브 라인 및 복수의 데이터 라인을 통해 플래시 메모리(1100)와 연결된다. 메모리 컨트롤러(1200)는 외부로부터 읽기 요청을 입력 받고, 플래시 메모리(1100)로 읽기 인에이블 신호(nRE)를 제공한다. 플래시 메모리(1100)에 있는 DQS 생성기(1110)는 읽기 인에이블 신호(nRE)를 입력 받고, 데이터 스트로브 신호(DQS)를 생성한다. 플래시 메모리(1100)는 데이터 스트로브 라인을 통해 데이터 스트로브 신호(DQS)를 메모리 컨트롤러(1200)로 제공한다.
메모리 컨트롤러(1200)는 데이터 스트로브 신호(DQS)를 입력 받고, 플래시 메모리(1100)로부터 복수의 데이터 라인을 통해 읽기 데이터를 입력 받는다. 데이터 출력 신호(예를 들면, DQ1~DQ8)는 데이터 스트로브 신호(DQS)의 상승 에지(rising edge) 또는 하강 에지(falling edge)에 맞추어(aligned) 출력된다. 도 1의 예에서는, 데이터 스트로브 신호(DQS) 신호가 한 번 천이할 때마다 8 비트 데이터씩 출력된다. 출력된 데이터는 선입선출회로(FIFO, 1220)의 래치 회로(LAT1~LAT8)에 순차적으로 저장된다.
도 2 및 도 3은 도 1에 도시된 저장 장치의 읽기 동작을 예시적으로 설명하기 위한 타이밍도이다. 도 2 및 도 3에서는 도 1의 8개의 데이터 출력 신호(DQ1~DQ8) 중에서 제 1 데이터 출력 신호(DQ1)만 도시되어 있다. 나머지 데이터 출력 신호(DQ2~DQ8)도 동일한 방식으로 전송된다.
도 1 및 도 2를 참조하면, 읽기 인에이블 신호(nRE)가 플래시 메모리(도 1 참조, 1100)로 제공된다. 이하에서는 읽기 인에이블 신호(nRE)의 한 주기(cycle)가 5nS이라고 가정한다. 읽기 인에이블 신호(nRE)가 제공되고, 소정의 시간(예를 들면, 약 10nS)이 지난 후에, 데이터 스트로브 신호(DQS)가 메모리 컨트롤러(도 1 참조, 1200)로 제공된다.
데이터 스트로브 신호(DQS)는 신호 라인의 저항 등에 의해 첫 번째 하이 펄스 폭이 좁아질 수 있다. 도 2의 빗금 친 부분(A)만큼 데이터 스트로브 신호(DQS)의 하이 펄스 폭이 좁아질 수 있다. 이와 같이 DQS 신호의 듀티비(duty rate)가 맞지 않을 경우에 대비하여, 플래시 메모리(1100)는 유효 DQS 신호를 전송하기 전에 더미 DQS 신호를 전송한다. 메모리 컨트롤러(1200)는 더미 DQS 신호에 의한 더미 데이터(DM1, DM2)를 무시하고, 유효 DQS 신호에 의한 유효 데이터(D1~D4)만을 선입선출회로(1220)의 제 1 래치 회로(LAT1)에 순차적으로 저장한다.
도 3은 DQS 신호의 첫 번째 펄스 폭이 비정상적으로 좁아진 예를 보여준다. 반도체 제조 공정 상의 결함이나 신호 라인의 저항 등에 의해 DQS 신호의 첫 번째 펄스 폭이 메모리 컨트롤러(1200)가 인식하지 못할 정도로 좁아질 수 있다. 도 3에서, 빗금 친 부분(B)은 데이터 스트로브 신호(DQS)의 첫 번째 펄스 폭이 좁아진 예를 보여준다.
이러한 비정상적인 경우에, 메모리 컨트롤러(1200)는 DQS 신호의 첫 번째 펄스를 인식하지 못할 수 있다. 메모리 컨트롤러(1200)가 DQS 신호의 첫 번째 펄스를 인식하지 못하면, 그 뒤에 전송되는 유효 DQS 신호 및 유효 데이터(D1, D2)를 더미 DQS 신호 및 더미 데이터로 잘못 판단할 수 있다. 즉, 메모리 컨트롤러(1200)는 유효 데이터(D1, D2)를 버리고, 나머지 유효 데이터(D3, D4)만을 선입선출회로(1220)에 저장할 수 있다.
본 발명의 실시 예에 따른 저장 장치(1000)는 데이터 스트로브 라인을 통해 메모리 컨트롤러(1200)로 제공되는 데이터 스트로브 신호(DQS)의 첫 번째 펄스 폭을 조절함으로, 유효 데이터(valid data)가 더미 데이터(dummy data) 또는 무효 데이터(invalid data)로 잘못 처리되는 문제를 방지할 수 있다.
데이터 스트로브 신호(DQS)의 펄스 폭 또는 주기를 조절하는 방법은 여러 가지가 있을 수 있다. 예를 들면, 플래시 메모리(1100)의 DQS 생성기(1110)에서 DQS 신호의 주기를 조절할 수 있다. 이 경우는 플래시 메모리 자체적으로 DQS 신호의 주기를 조절하는 방식이다. 다른 방법으로는 메모리 컨트롤러(1200)의 읽기 인에이블 신호(nRE)의 주기를 조절함으로 DQS 신호의 주기를 조절할 수 있다.
이하에서는 읽기 인에이블 신호(nRE)의 주기를 조절하는 방식이 설명될 것이다. 다시 도 1을 참조하면, 메모리 컨트롤러(1200)는 읽기 인에이블 신호(nRE)의 주기를 조절하기 위해, nRE 주기 조절 회로(1210)를 포함한다.
도 4는 도 1에 도시된 nRE 주기 조절 회로를 예시적으로 보여주는 블록도이다. 도 4를 참조하면, nRE 주기 조절 회로(1210)는 오실레이터(1211), 주기 선택기(1212), 주기 카운터(1213), 주기 신호 발생기(1214), 그리고 읽기 인에이블 신호 출력부(1215)를 포함한다.
오실레이터(1211)는 클록 신호(CLK)를 생성한다. 클록 신호(CLK)는 주기 신호 발생기(1214)로 제공된다. 주기 신호 발생기(1214)는 클록 신호(CLK)를 입력 받고, N배 주기를 갖는 신호를 생성할 수 있다. 도 4에서, 1배 주기 신호 발생기(121)는 클록 신호와 동일 주기를 갖는 신호(nRE_1)를 발생한다. 이하에서는, 클록 신호와 동일한 주기를 기본 주기(reference cycle)라고 한다. 2배 주기 신호 발생기(122)는 기본 주기의 2배를 갖는 신호(nRE_2)를 발생한다. 마찬가지로, N배 주기 신호 발생기(12N)는 N(N은 2보다 큰 자연수)배 주기를 갖는 신호(nRE_N)를 발생한다.
주기 선택기(1212)는 선택 신호(SEL)를 통해 1 내지 N배 주기 신호 발생기(121~12N)를 선택할 수 있다. 주기 카운터(1213)는 주기 선택기(1212)부터 선택 정보를 입력 받고, 선택된 주기 신호 발생기로 주기 카운트 정보(CNT)를 제공할 수 있다. 읽기 인에이블 신호 출력부(1215)는 주기 신호 발생기(1214)로부터 신호를 입력 받고, 주기가 조절된 읽기 인에이블 신호(nRE)를 발생한다.
nRE 주기 조절 회로(1210)는 읽기 인에이블 신호(nRE)의 처음 M(M은 자연수) 개의 주기 동안에 N(N은 자연수)배로 주기를 조절할 수 있다. 여기에서, M값은 주기 카운터(1231)의 주기 카운트 정보(CNT)를 통해 정해지고, N값은 주기 선택기(1212)의 선택 신호(SEL)를 통해 정해질 수 있다.
도 5는 도 4에 도시된 nRE 주기 조절 회로의 동작 방법을 예시적으로 설명하기 위한 순서도이다.
S110 단계에서, 읽기 인에이블 신호(nRE)의 주기 조절을 선택할지 여부가 판단된다. 읽기 인에이블 신호(nRE)의 주기 조절을 선택하지 않으면(No), 주기 선택기(1212)는 1배 주기 신호 발생기(121)를 선택한다. 1배 주기 신호 발생기(121)는 기본 주기를 갖는 신호(nRE_1)를 발생한다(S150). 만약 읽기 인에이블 신호(nRE)의 주기 조절을 선택하면(Yes), S120 단계가 수행된다.
S120 단계에서, 기본 주기의 2배 주기를 갖는 신호(nRE_2)를 선택할지 여부가 판단된다. 2배 주기 신호(nRE_2)를 선택하면(Yes), 주기 선택기(1212)는 2배 주기 신호 발생기(122)를 선택하고 S130 단계가 수행된다. 만약 2배 주기 신호(nRE_2)를 선택하지 않으면(No), 주기 선택기(1212)는 N배 주기 신호 발생기(12N)를 선택하고 S140 단계가 수행된다
S130 단계에서, 2배 주기 신호 발생기(122)는 기본 주기의 2배 주기를 갖는 신호(nRE_2)를 발생한다. 한편, 주기 카운터(1213)는 주기 선택기(1212)부터 선택 정보를 입력 받고, 2배 주기 신호 발생기(122)로 주기 카운트 정보(CNT)를 제공한다. 2배 주기 신호 발생기(122)는 주기 카운트 정보(CNT)에 따라 2배 주기 신호(nRE_2)를 발생한다(S135). 예를 들어, 주기 카운트 정보(CNT)가 2인 경우에, 2배 주기 신호 발생기(122)는 처음 2개의 주기 동안에 2배로 조절된 신호를 발생한다.
S140 단계에서, N배 주기 신호 발생기(12N)는 N배 주기 신호(nRE_N)를 발생한다. N배 주기 신호 발생기(12N)는 주기 카운트 정보(CNT)에 따라 N배 주기 신호(nRE_N)를 발생한다(S145). 예를 들어, 4배 주기 신호 발생기의 주기 카운트 정보가 1인 경우에, 처음 1개의 주기 동안 4배로 조절된 신호를 발생한다. S135 단계 및 S145 단계에서, 주기 카운트 정보만큼 신호가 발생한 경우에, S150 단계가 수행된다.
S150 단계에서, 주기 선택기(1212)는 1배 주기 신호 발생기(121)를 선택한다. 1배 주기 신호 발생기(121)는 주기 카운트 정보(CNT)에 따라 기본 주기를 갖는 신호(nRE_1)를 발생한다. S160 단계에서, 읽기 인에이블 신호 출력부(1215)는 주기 신호 발생기(1214)로부터 신호를 입력 받고, 주기가 조절된 읽기 인에이블 신호(nRE)를 출력한다.
도 4 및 도 5에 도시된 nRE 주기 조절 회로(1210)는 하나의 예에 불과하며, 이것과 다른 방식으로 설계되거나 동작할 수 있다.
도 6은 도 1에 도시된 저장 장치의 데이터 스트로브 신호(DQS)의 주기를 조절하는 방법을 보여주는 타이밍도이다. 본 발명의 실시 예에 따른 저장 장치(1000)는 읽기 인에이블 신호(nRE)의 주기 조절을 통해, 데이터 스트로브 신호(DQS)의 주기를 조절할 수 있다.
도 6을 참조하면, nRE 주기 조절 회로(도 4 참조, 1200)는 처음 한 주기 동안 2배로 조절된 주기(10nS)를 갖는 읽기 인에이블 신호(nRE_2, 도 4 참조)를 발생하고, 나머지 주기 동안에는 기본 주기(reference cycle, 5nS)를 갖는 읽기 인에이블 신호(nRE_1)를 발생한다. 읽기 인에이블 신호(nRE_2)가 제공되고, 소정의 시간(예를 들면, 약 15nS)이 지난 후에, 데이터 스트로브 신호(DQS)의 첫 번째 펄스가 메모리 컨트롤러(도 1 참조, 1200)로 제공된다. DQS 신호의 첫 번째 주기는 읽기 인에이블 신호(nRE_2)와 마찬가지로 2배 주기(10nS)만큼 넓어진다.
도 6에서, 빗금 친 부분(B)은 라인 저항 등에 의해 데이터 스트로브 신호(DQS)의 하이 펄스 폭이 좁아진 예를 보여준다. 도 3의 경우에, 메모리 컨트롤러(1200)는 데이터 스트로브 신호(DQS)의 첫 번째 펄스를 인식하지 못할 수 있다. 그러나 도 6의 경우에는 데이터 스트로브 신호(DQS)의 첫 번째 펄스 폭이 2배로 넓어져서, 메모리 컨트롤러(1200)는 첫 번째 펄스를 정상적으로 인식할 수 있다.
이와 같이 본 발명의 실시 예에 따른 저장 장치(1000)는 읽기 인에이블 신호(nRE)의 주기(cycle)를 조절함으로, 유효 데이터가 더미 데이터로 잘못 인식되는 문제를 방지할 수 있다. 한편, 본 발명의 실시 예에 따른 저장 장치(1000)는 읽기 인에이블 신호의 주기를 조절함으로, 더미 DQS 신호 및 더미 데이터를 사용하지 않고, 처음부터 입력되는 모든 읽기 데이터를 유효 데이터로 처리할 수 있다.
도 7 내지 도 9는 더미 DQS 신호 및 더미 데이터를 사용하지 않는 예를 보여주는 타이밍도이다. 도 7은 처음 한 주기 동안 2배로 조절된 주기(10nS)를 갖는 읽기 인에이블 신호(nRE)를 발생한 예이다. 도 7을 참조하면, 데이터 스트로브 신호(DQS)의 첫 번째 펄스 폭이 2배로 넓어지면, 신호 라인의 저항 등으로 인한 영향을 거의 받지 않을 수 있다. 이와 같이 DQS 신호의 안정성이 보장되는 경우에, 저장 장치(1000)은 더미 DQS 신호에 의한 더미 데이터를 버리지 않고, 처음부터 입력되는 모든 데이터를 유효 데이터로 처리할 수 있다.
도 8을 참조하면, nRE 주기 조절 회로(도 4 참조, 1200)는 2주기 동안 2배로 조절된 주기(10nS)를 갖는 읽기 인에이블 신호(nRE)를 발생한다. 읽기 인에이블 신호(nRE)가 제공되고, 소정의 시간(예를 들면, 약 15nS)이 지난 후에, 2주기 동안 2배로 조절된 주기(10nS)를 갖는 DQS 신호가 메모리 컨트롤러(1200)로 제공된다. 메모리 컨트롤러(1200)는 DQS 신호의 상승 또는 하강 천이에 응답하여 읽기 데이터(D1~D6)를 입력 받는다. 도 7에서 설명한 바와 같이, 저장 장치(1000)는 처음부터 입력되는 모든 데이터를 유효 데이터로 처리할 수 있다.
도 9를 참조하면, nRE 주기 조절 회로(도 4 참조, 1200)는 처음 한 주기 동안 4배로 조절된 주기(20nS)를 갖는 읽기 인에이블 신호(nRE)를 발생한다. 읽기 인에이블 신호(nRE)가 제공되고, 한 주기 동안 4배로 조절된 주기(20nS)를 갖는 DQS 신호가 메모리 컨트롤러(1200)로 제공된다. 메모리 컨트롤러(1200)는 DQS 신호의 상승 또는 하강 천이에 응답하여 읽기 데이터(D1~D4)를 입력 받는다. 데이터 스트로브 신호(DQS)의 첫 번째 펄스 폭이 넓어질수록 신호 라인의 저항 등으로 인한 영향을 더 적게 받고, DQS 신호의 안정성이 더 보장될 수 있다.
도 10은 도 4에 도시된 nRE 주기 조절 회로의 동작 방법의 다른 실시 예를 보여주는 순서도이다. 도 4에 도시된 nRE 주기 조절 회로(1210)는 타겟 주기(target cycle)를 기본 주기(reference cycle)의 정수배 또는 K(K는 1.5 또는 3.8과 같은 임의의 수)배로 설정할 수 있다(도 11 참조). 또는 nRE 주기 조절 회로(1210)는 처음 M 주기 동안 서로 다른 주기를 갖도록 주기 조절을 할 수 있다(도 12 참조). 도 10에서는 타겟 주기를 기본 주기의 정수배로 설정함과 동시에, 처음 M 주기 동안 서로 다른 주기를 설정할 수 있는 방법이 설명될 것이다.
S205 단계에서, 타겟 주기(T-cycle)을 설정한다. 타겟 주기는 처음 M 주기 동안 주기 조절된 후에 제공되는 주기를 의미한다. 도 6 내지 도 9의 예에서, 타겟 주기는 기본 주기(5nS)로 설정되어 있다. 본 발명에서는 타겟 주기를 기본 주기의 정수배로 설정할 수 있다.
S210 단계에서, 읽기 인에이블 신호(nRE)의 주기 조절을 선택할지 여부가 판단된다. 읽기 인에이블 신호(nRE)의 주기 조절을 선택하지 않으면(No), 주기 선택기(1212)는 타겟 주기를 발생한다(S250). 예를 들어, 타겟 주기가 10nS라고 하면 주기 신호 발생기(도 4 참조, 1214)는 2배 주기 신호 발생기(122)를 선택한다. 2배 주기 신호 발생기(122)는 기본 주기의 2배 주기를 갖는 신호(nRE_2)를 발생한다. 만약 읽기 인에이블 신호(nRE)의 주기 조절을 선택하면(Yes), S220 단계가 수행된다.
S220 단계에서, X1 주기를 선택한다. X1 주기는 처음 한 주기 동안 조절된 주기를 의미한다. X1 주기는 기본 주기의 정수배이다. 예를 들면, X1 주기는 기본 주기의 3배 주기(15nS)를 갖는 신호일 수 있다. S230 단계에서, X1 주기를 갖는 읽기 인에이블 신호를 발생한다. 예를 들어, X1 주기가 15nS라고 하면 주기 신호 발생기(도 4 참조, 1214)는 3배 주기 신호 발생기(123)를 선택한다. 3배 주기 신호 발생기(123)는 기본 주기의 3배 주기를 갖는 신호(nRE_3)를 발생한다.
S235 단계에서, 주기 카운터(1213)는 주기 선택기(1212)부터 선택 정보를 입력 받고, 선택된 X1배 주기 신호 발생기로 주기 카운트 정보(CNT)를 제공한다. 여기에서, X1배 주기 신호 발생기는 도 4의 1배 내지 N배 주기 신호 발생기(121~12N) 중 어느 하나일 수 있다. X1배 주기 신호 발생기는 주기 카운트 정보(CNT)에 따라 X1배 주기 신호(nRE_X1)를 발생한다.
예를 들어, X1 주기가 3배 주기(15nS)이고 주기 카운트 정보(CNT)가 2인 경우에, 3배 주기 신호 발생기(123)는 처음 2개의 주기 동안에 3배로 조절된 신호를 발생한다. S235 단계에서, 주기 카운트 정보만큼 신호가 발생한 경우에, S240 단계가 수행된다.
S240 단계에서, X2 주기를 선택할지 여부가 판단된다. X2 주기가 선택되면(Yes), S245 단계에서 파라미터 i를 한 단계 증가하고 X2 주기를 발생한다(S230). 주기 선택기(1212)는 X2배 주기 신호 발생기를 선택한다. 여기에서, X2배 주기 신호 발생기는 도 4의 1배 내지 N배 주기 신호 발생기(121~12N) 중 어느 하나일 수 있다. X2배 주기 신호 발생기는 주기 카운트 정보(CNT)에 따라 기본 주기의 X2배 주기를 갖는 신호(nRE_X2)를 발생한다. S230 단계 내지 S245 단계를 반복적으로 수행하면, nRE 주기 신호 발생기(1210)는 처음 M 주기 동안 다른 주기를 갖는 신호를 생성할 수 있다.
S240 단계에서, X(i+1) 주기가 선택되지 않으면(No), S250 단계가 수행된다. S250 단계에서는 타겟 주기(T-cycle)를 발생한다. S260 단계에서, 읽기 인에이블 신호 출력부(1215)는 주기 신호 발생기(1214)로부터 신호를 입력 받고, 주기가 조절된 읽기 인에이블 신호(nRE)를 출력한다.
도 11은 읽기 인에이블 신호(nRE)의 타겟 주기(target cycle)를 기본 주기(reference cycle)의 2배로 설정한 타이밍도이다. 도 11의 예에서, 기본 주기는 5nS이고, 타겟 주기는 10nS이다. 도 11을 참조하면, 처음 한 주기 동안 3배로 조절된 주기(15nS)를 갖고, 나머지 타겟 주기는 10nS를 갖는 읽기 인에이블 신호(nRE)가 발생한다. 즉, 도 10에서, X1 주기는 기본 주기의 3배이고, T 주기는 2배이다. 데이터 스트로브 신호(DQS)의 첫 번째 주기가 3배로 길어지면, 신호 라인의 저항 등으로 인한 영향을 거의 받지 않을 수 있다.
도 12는 읽기 인에이블 신호(nRE)의 처음 M 주기 동안 서로 다른 주기를 갖는 예를 보여주는 타이밍도이다. 도 12의 예에서, 기본 주기와 타겟 주기는 모두 5nS이다. 도 12를 참조하면, 처음 한 주기는 3배로 조절된 주기(15nS)이고, 다음 주기는 2배로 조절된 주기(10nS)이고, 나머지 타겟 주기는 5nS이다. 즉, 도 12에서, X1 주기는 기본 주기의 3배이고, X2 주기는 2배이고, T 주기는 기본 주기이다.
데이터 스트로브 신호(DQS)의 첫 번째 주기가 3배로 길어지고 두 번째 주기가 2배로 길어지면, 신호 라인의 저항 등으로 인한 영향을 거의 받지 않을 수 있다. 이와 같이 DQS 신호의 안정성이 보장되는 경우에, 저장 장치(1000)은 더미 DQS 신호에 의한 더미 데이터를 버리지 않고, 처음부터 입력되는 모든 데이터를 유효 데이터로 처리할 수 있다.
도 13은 본 발명의 실시 예에 따른 저장 장치의 동작 방법을 보여주는 순서도이다. 도 1에서 설명한 바와 같이, 저장 장치(1000)는 데이터를 저장하는 플래시 메모리(1100)와 데이터 스트로브 라인 및 복수의 데이터 라인을 통해 플래시 메모리(1100)와 연결되는 메모리 컨트롤러(1200)를 포함한다.
저장 장치(1000)의 동작 방법은 데이터 스트로브 신호(DQS)의 주기를 조절하는 단계(S310)와 조절된 데이터 스트로브 신호에 응답하여 복수의 데이터 라인을 통해 데이터를 전송하는 단계(S320)를 포함한다. 여기에서, 데이터 스트로브 신호의 주기는 처음 M(M은 자연수)개의 주기 동안 N(N은 2이상인 자연수)배로 조절될 수 있다.
도 13에 도시된 동작 방법은 플래시 메모리(1100)의 DQS 생성기(1110)에서 DQS 신호의 주기를 조절한다. 이 경우는 메모리 컨트롤러(1200)로부터 주기 조절된 nRE 신호를 입력 받고 DQS 신호의 주기를 조절하거나, 플래시 메모리 자체적으로 DQS 신호의 주기를 조절하는 방식을 모두 포함한다.
도 14는 본 발명의 실시 예에 따른 저장 장치의 다른 동작 방법을 보여주는 순서도이다. 도 14를 참조하면, 저장 장치(1000)의 동작 방법은 읽기 요청을 입력 받고 읽기 인에이블 신호의 주기를 조절하는 단계(S405), 주기 조절된 읽기 인에이블 신호에 응답하여 데이터 스트로브 신호의 주기를 조절하는 단계(S410), 그리고 조절된 데이터 스트로브 신호에 응답하여 복수의 데이터 라인을 통해 데이터를 전송하는 단계(S420)를 포함한다. 여기에서, 데이터 스트로브 신호의 주기는 처음 M(M은 자연수)개의 주기 동안 N(N은 2이상인 자연수)배로 조절될 수 있다.
도 14에 도시된 동작 방법은 메모리 컨트롤러(1200)의 nRE 주기 신호 발생기(1210)에서 nRE 신호의 주기를 조절한다. 이 경우는 메모리 컨트롤러(1200)로부터 제공되는 nRE 신호의 주기 조절을 통해 DQS 신호의 주기를 조절하는 방식이다. 본 발명에 실시 예에 따른 저장 장치(1000)의 동작 방법에 의하면, 데이터 스트로브 라인을 통해 플래시 메모리로부터 메모리 컨트롤러로 제공되는 데이터 스트로브 신호(DQS)의 첫 번째 펄스 폭을 조절함으로, 유효 데이터(valid data)가 더미 데이터(dummy data) 또는 무효 데이터(invalid data)로 잘못 처리되는 문제를 방지할 수 있다.
한편, 본 발명의 실시 예에 따른 저장 장치는 쓰기 동작의 경우에도 DQS 신호의 폭이 좁아져서 데이터를 안정하게 전송하지 못할 수 있다. 본 발명은 쓰기 동작의 경우에도 DQS 신호의 주기를 조절함으로 데이터 안정성을 보장할 수 있다.
도 15는 본 발명의 실시 예에 따른 저장 장치의 쓰기 동작을 보여주는 블록도이다. 도 15를 참조하면, 저장 장치(2000)는 플래시 메모리(2100)와 메모리 컨트롤러(2200)를 포함한다.
도 15를 참조하면, 메모리 컨트롤러(2200)는 호스트로부터 쓰기 요청을 입력 받고, 플래시 메모리(2100)로 쓰기 인에이블 신호(nWE)를 제공한다. 메모리 컨트롤러(2200)에 있는 DQS 생성기(2210)는 내부적으로 데이터 스트로브 신호를 생성하고 주기를 조절한다. DQS 생성기(2210)는 주기 조절된 데이터 스트로브 신호(DQS)를 플래시 메모리(2100)로 제공한다.
플래시 메모리(2100)는 데이터 스트로브 신호(DQS)를 입력 받고, 메모리 컨트롤러(2200)로부터 쓰기 데이터를 입력 받을 수 있도록 준비한다. 쓰기 데이터는 데이터 스트로브 신호(DQS)의 중앙에 맞추어(center-aligned), 플래시 메모리(2100)로 제공된다. 도 15의 예에서는, 데이터 스트로브 신호(DQS) 신호가 한 번 천이할 때마다, 8 비트 데이터가 쓰기 데이터 발생기(2220)로부터 플래시 메모리(2100)로 제공된다.
도 16 내지 도 18은 도 15에 도시된 저장 장치(2000)에서 데이터 스트로브 신호(DQS)의 주기를 조절한 예를 보여주는 타이밍도이다. 데이터 스트로브 신호(DQS)의 주기를 조절하는 방법은 도 4 및 도 5에서 설명한 바와 같다. 도 16은 한 주기 동안 2배로 조절된 주기(10nS)를 갖는 데이터 스트로브 신호(DQS)를 발생한 예이다. 도 17은 2주기 동안 2배로 조절된 주기(10nS)를 갖는 DQS 신호를 발생한 예이고, 도 18은 한 주기 동안 4배로 조절된 주기(20nS)를 갖는 DQS 신호를 발생한 예이다.
도 16 내지 도 18을 참조하면, 데이터 스트로브 신호(DQS)의 첫 번째 펄스 폭이 2배 이상으로 충분히 넓어지면, 쓰기 데이터 제공 시에 DQS 듀티비가 맞지 않아서 발생하는 문제를 해결할 수 있다.
본 발명의 실시 예에 따른 저장 장치는 여러 가지 제품에 적용 또는 응용될 수 있다. 본 발명의 실시 예에 따른 저장 장치는 퍼스널 컴퓨터, 디지털 카메라, 캠코더, 휴대 전화, MP3, PMP, PSP, PDA 등과 같은 전자 장치들뿐만 아니라, 메모리 카드, USB 메모리, 솔리드 스테이트 드라이브(Solid State Drive, 이하 SSD라 함) 등으로 구현될 수 있다.
도 19는 본 발명의 실시 예에 따른 저장 장치를 메모리 카드에 적용한 예를 보여준다. 메모리 카드 시스템(3000)은 호스트(3100)와 메모리 카드(3200)를 구비한다. 호스트(3100)는 호스트 컨트롤러(3110) 및 호스트 접속 유닛(3120)을 포함한다. 메모리 카드(3200)는 카드 접속 유닛(3210), 카드 컨트롤러(3220), 그리고 플래시 메모리(3230)를 포함한다.
호스트(3100)는 메모리 카드(3200)에 데이터를 쓰거나, 메모리 카드(3200)에 저장된 데이터를 읽는다. 호스트 컨트롤러(3110)는 커맨드(예를 들면, 쓰기 커맨드), 호스트(3100) 내의 클록 발생기(도시되지 않음)에서 발생한 클록 신호(CLK), 그리고 데이터(DAT)를 호스트 접속 유닛(3120)을 통해 메모리 카드(3200)로 전송한다.
카드 컨트롤러(3220)는 카드 접속 유닛(3210)을 통해 수신된 쓰기 커맨드에 응답하여, 카드 컨트롤러(3220) 내에 있는 클록 발생기(도시되지 않음)에서 발생한 클록 신호에 동기하여 데이터를 플래시 메모리(3230)에 저장한다. 플래시 메모리(3230)는 호스트(3100)로부터 전송된 데이터를 저장한다. 예를 들어, 호스트(3100)가 디지털 카메라인 경우에는 영상 데이터를 저장한다.
카드 컨트롤러(3220)는 데이터 스트로브 라인을 통해 플래시 메모리(3230)로부터 제공되는 데이터 스트로브 신호(DQS)의 처음 M(M은 자연수)개의 주기를 조절할 수 있다. 카드 컨트롤러(3220)는 읽기 동작 시에 플래시 메모리(3230)로 읽기 인에이블 신호(nRE)를 제공하고, 플래시 메모리(3230)는 읽기 인에이블 신호(nRE)를 입력 받고 데이터 스트로브 라인을 통해 카드 컨트롤러(3220)로 제공되는 데이터 스트로브 신호(DQS)의 처음 M개의 주기를 조절할 수 있다. 카드 컨트롤러(3220)는 읽기 인에이블 신호의 처음 M개의 주기를 기본 주기의 N(N은 자연수)배로 조절할 수 있다.
도 20은 본 발명의 실시 예에 따른 저장 장치가 모바일 장치에 사용된 경우를 보여주는 블록도이다. 도 20을 참조하면, 모바일 장치(4000)는 호스트(4100)와 내장형 저장 장치(4200)를 포함한다. 도 20에서는 내장형 저장 장치(4200)의 예로 eMMC가 도시되어 있다. eMMC(4200)는 JEDEC에서 표준으로 정한 메모리 카드로서, 휴대용 MMC를 내장형(embedded)으로 만든 것이다.
호스트(4100)는 애플리케이션(4110), 운영 체제(OS; Operating System, 4120), 프로세서(4130), 랜덤 액세스 메모리(RAM, 4140), 그리고 eMMC 드라이버(4150)를 포함한다. 계속해서 도 20을 참조하면, eMMC(4200)는 플래시 메모리(4210)와 eMMC 컨트롤러(4220)를 포함할 수 있다. eMMC 컨트롤러(4220)는 중앙처리장치(CPU)와 랜덤 액세스 메모리(RAM)를 포함할 수 있다. 중앙처리장치(4221)는 랜덤 액세스 메모리(4222)를 이용하여 eMMC 펌웨어(4223)를 구동할 수 있다.
eMMC 컨트롤러(4220)는 데이터 스트로브 라인을 통해 플래시 메모리(4210)로부터 제공되는 데이터 스트로브 신호(DQS)의 처음 M(M은 자연수)개의 주기를 조절할 수 있다. eMMC 컨트롤러(4220)는 읽기 동작 시에 플래시 메모리(4210)로 읽기 인에이블 신호(nRE)를 제공하고, 플래시 메모리(4210)는 읽기 인에이블 신호(nRE)를 입력 받고 데이터 스트로브 라인을 통해 eMMC 컨트롤러(4220)로 제공되는 데이터 스트로브 신호(DQS)의 처음 M개의 주기를 조절할 수 있다. eMMC 컨트롤러(4220)는 읽기 인에이블 신호의 처음 M개의 주기를 기본 주기의 N(N은 자연수)배로 조절할 수 있다.
도 21은 본 발명의 실시 예에 따른 저장 장치를 간략하게 도시한 블록도이고, 도 22는 도 21의 저장 장치의 응용 예를 보여주는 블록도이다. 도 23은 도 22를 참조하여 설명된 저장 장치를 포함하는 컴퓨팅 시스템을 보여주는 블록도이다.
도 21을 참조하면, 저장 장치(5000)는 불휘발성 메모리 장치(5100) 및 컨트롤러(5200)를 포함한다. 여기서, 컨트롤러(5200) 및 불휘발성 메모리 장치(5100)는 하나의 반도체 장치로 집적되어 앞서 언급한 솔리드 스테이트 드라이브(SSD, Solid State Drive)를 구성할 수 있다. 솔리드 스테이트 드라이브(SSD)는 반도체 메모리에 데이터를 저장하도록 구성되는 저장 장치를 포함한다. 저장 장치(5000)가 솔리드 스테이트 드라이브(SSD)로 이용되는 경우, 저장 장치(5000)에 연결된 호스트(Host)의 동작 속도는 획기적으로 개선될 수 있다.
컨트롤러(5200)는 호스트(Host) 및 불휘발성 메모리 장치(5100)에 연결된다. 호스트(Host)로부터의 요청에 응답하여, 컨트롤러(5200)는 불휘발성 메모리 장치(5100)를 액세스하도록 구성된다. 예를 들면, 컨트롤러(5200)는 불휘발성 메모리 장치(5100)의 읽기, 쓰기, 소거, 그리고 배경(background) 동작을 제어하도록 구성된다. 컨트롤러(5200)는 불휘발성 메모리 장치(5100) 및 호스트(Host) 사이에 인터페이스를 제공하도록 구성된다. 컨트롤러(5200)는 불휘발성 메모리 장치(5100)를 제어하기 위한 펌웨어(firmware)를 구동하도록 구성될 수 있다.
도 22를 참조하면, 저장 장치(6000)는 불휘발성 메모리 장치(6100) 및 컨트롤러(6200)를 포함한다. 불휘발성 메모리 장치(6100)는 복수의 불휘발성 메모리 칩들을 포함한다. 복수의 불휘발성 메모리 칩들은 복수의 그룹들로 분할된다. 복수의 불휘발성 메모리 칩들의 각 그룹은 하나의 공통 채널을 통해 컨트롤러(6200)와 통신하도록 구성된다. 예를 들어, 복수의 불휘발성 메모리 칩들은 제 1 내지 제 k 채널들(CH1~CHk)을 통해 컨트롤러(6200)와 통신하는 것으로 도시되어 있다. 도 22에서, 하나의 채널에 복수의 불휘발성 메모리 칩들이 연결되는 것으로 설명되었다. 그러나 하나의 채널에 하나의 불휘발성 메모리 칩이 연결되도록 저장 장치(6000)가 변형될 수 있음이 이해될 것이다.
도 23을 참조하면, 컴퓨팅 시스템(7000)은 중앙 처리 장치(7100), 램(7200, RAM, Random Access Memory), 사용자 인터페이스(7300), 전원(7400), 그리고 저장 장치(6000)를 포함한다.
저장 장치(6000)은 시스템 버스(7500)를 통해, 중앙처리장치(7100), 램(7200), 사용자 인터페이스(7300), 그리고 전원(7400)에 전기적으로 연결된다. 사용자 인터페이스(7300)를 통해 제공되거나, 중앙 처리 장치(7100)에 의해서 처리된 데이터는 저장 장치(6000)에 저장된다.
도 23에서, 불휘발성 메모리 장치(6100)는 컨트롤러(6200)를 통해 시스템 버스(7500)에 연결되는 것으로 도시되어 있다. 그러나 불휘발성 메모리 장치(6100)는 시스템 버스(7500)에 직접 연결되도록 구성될 수 있다. 도 23에서, 도 22를 참조하여 설명된 저장 장치(6000)가 제공되는 것으로 도시되어 있다. 그러나, 저장 장치(6000)는 도 21을 참조하여 설명된 저장 장치(5000)로 대체될 수도 있다. 예시적으로, 컴퓨팅 시스템(7000)은 도 21 및 도 22를 참조하여 설명된 저장 장치들(5000, 6000)을 모두 포함하도록 구성될 수 있다.
한편, 본 발명의 상세한 설명에서는 구체적인 실시 예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 예를 들어, 본 발명의 범위는 플래시 메모리 장치에 한정되지 않는다. 본 발명은 변환 계층에 의한 어드레스 변환이 사용되는 모든 저장 장치에 적용될 수 있다. 그러므로 본 발명의 범위는 상술한 실시 예에 국한되어 정해져서는 안되며 후술하는 특허청구범위뿐만 아니라 이 발명의 특허청구범위와 균등한 것들에 의해 정해져야 한다.
1000, 2000: 저장 장치
1100, 2100: 플래시 메모리
1200, 2200: 메모리 컨트롤러

Claims (21)

  1. 데이터를 저장하는 플래시 메모리; 및
    데이터 스트로브 라인 및 복수의 데이터 라인을 통해 상기 플래시 메모리와 연결되는 메모리 컨트롤러를 포함하되,
    상기 메모리 컨트롤러는 읽기 동작 시에 상기 플래시 메모리로 읽기 인에이블 신호(nRE)를 제공하고, 상기 플래시 메모리는 상기 읽기 인에이블 신호(nRE)를 입력 받고 상기 데이터 스트로브 라인을 통해 상기 메모리 컨트롤러로 제공되는 데이터 스트로브 신호(DQS)의 처음 M(M은 자연수)개의 주기를 조절하는 저장 장치.
  2. 제 1 항에 있어서,
    상기 메모리 컨트롤러는 상기 플래시 메모리로 제공되는 읽기 인에이블 신호의 주기를 조절하기 위한 읽기 인에이블 신호 주기 조절 회로(이하, nRE 주기 조절 회로라고 함)를 포함하는 저장 장치
  3. 제 2 항에 있어서,
    상기 플래시 메모리는 상기 nRE 주기 조절 회로에서 제공되는 읽기 인에이블 신호를 입력 받고 상기 데이터 스트로브 신호의 처음 M개의 주기를 조절하는 저장 장치.
  4. 제 3 항에 있어서,
    상기 메모리 컨트롤러는 상기 읽기 인에이블 신호의 처음 M개의 주기를 기본 주기의 N(N은 자연수)배로 조절하는 저장 장치.
  5. 제 3 항에 있어서,
    상기 처음 M개의 주기에는 서로 다른 주기가 포함되어 있는 저장 장치.
  6. 제 3 항에 있어서,
    상기 nRE 주기 조절 회로는
    상기 읽기 인에이블 신호의 주기를 N배로 조절하기 위한 주기 선택기;
    상기 N배로 조절된 주기의 카운트 정보를 제공하는 주기 카운터; 및
    상기 주기 선택기 및 상기 주기 카운터에 응답하여 주기가 조절된 읽기 인에이블 신호를 발생하는 주기 신호 발생기를 포함하는 저장 장치.
  7. 제 3 항에 있어서,
    상기 메모리 컨트롤러는 상기 주기 조절된 데이터 스트로브 신호의 상승 엣지(rising edge) 또는 하강 엣지(falling edge)에 맞추어(aligned), 상기 복수의 데이터 라인을 통해 상기 플래시 메모리로부터 읽기 데이터를 입력 받고, 상기 입력된 데이터를 선입선출회로에 저장하는 저장 장치.
  8. 제 7 항에 있어서,
    상기 메모리 컨트롤러는 상기 플래시 메모리부터 처음 입력되는 일정 수의 읽기 데이터를 더미 데이터로 처리하는 저장 장치.
  9. 제 7 항에 있어서,
    상기 메모리 컨트롤러는 상기 플래시 메모리부터 처음부터 입력되는 모든 읽기 데이터를 유효 데이터로 처리하는 저장 장치.
  10. 저장 장치의 동작 방법에 있어서,
    상기 저장 장치는 데이터를 저장하는 플래시 메모리; 및
    데이터 스트로브 라인 및 복수의 데이터 라인을 통해 상기 플래시 메모리와 연결되는 메모리 컨트롤러를 포함하고,
    상기 저장 장치의 동작 방법은
    데이터 스트로브 신호(DQS)의 주기를 조절하는 단계; 및
    상기 조절된 데이터 스트로브 신호에 응답하여 상기 복수의 데이터 라인을 통해 데이터를 전송하는 단계를 포함하되,
    상기 데이터 스트로브 신호의 주기는 처음 M(M은 자연수)개의 주기 동안 N(N은 2이상인 자연수)배로 조절되는 동작 방법.
  11. 제 10 항에 있어서,
    읽기 요청을 입력 받고 읽기 인에이블 신호의 주기를 조절하는 단계를 더 포함하고, 상기 주기 조절된 읽기 인에이블 신호에 응답하여 상기 데이터 스트로브 신호의 주기를 조절하는 동작 방법.
  12. 제 11 항에 있어서,
    상기 주기 조절된 데이터 스트로브 신호의 상승 엣지(rising edge) 또는 하강 엣지(falling edge)에 맞추어(aligned), 상기 복수의 데이터 라인을 통해 읽기 데이터를 전송하는 동작 방법.
  13. 제 11 항에 있어서,
    상기 메모리 컨트롤러는 상기 플래시 메모리부터 처음 입력되는 일정 수의 읽기 데이터를 더미 데이터로 처리하는 동작 방법.
  14. 제 11 항에 있어서,
    상기 메모리 컨트롤러는 상기 플래시 메모리부터 처음부터 입력되는 모든 읽기 데이터를 유효 데이터로 처리하는 동작 방법.
  15. 제 10 항에 있어서,
    상기 주기 조절된 데이터 스트로브 신호의 중앙에 맞추어(center aligned), 상기 복수의 데이터 라인을 통해 쓰기 데이터를 전송하는 동작 방법.
  16. 호스트; 및
    상기 호스트와 연결되는 내장형 저장 장치를 포함하되,
    상기 내장형 저장 장치는
    데이터를 저장하는 플래시 메모리; 및
    데이터 스트로브 라인 및 복수의 데이터 라인을 통해 상기 플래시 메모리와 연결되는 메모리 컨트롤러를 포함하되,
    상기 메모리 컨트롤러는 상기 데이터 스트로브 라인을 통해 상기 플래시 메모리로부터 제공되는 데이터 스트로브 신호(DQS)의 처음 M(M은 자연수)개의 주기를 조절하는 모바일 장치.
  17. 제 16 항에 있어서,
    상기 메모리 컨트롤러는 읽기 동작 시에 상기 플래시 메모리로 읽기 인에이블 신호(nRE)를 제공하고, 상기 플래시 메모리는 상기 읽기 인에이블 신호(nRE)를 입력 받고 상기 데이터 스트로브 라인을 통해 상기 메모리 컨트롤러로 제공되는 데이터 스트로브 신호(DQS)의 처음 M개의 주기를 조절하는 모바일 장치.
  18. 제 17 항에 있어서,
    상기 메모리 컨트롤러는 상기 읽기 인에이블 신호의 처음 M개의 주기를 기본 주기의 N(N은 자연수)배로 조절하는 모바일 장치.
  19. 제 17 항에 있어서,
    상기 읽기 인에이블 신호의 타겟 주기는 기본 주기의 정수배인 모바일 장치.
  20. 제 17 항에 있어서,
    상기 데이터 스트로브 신호의 처음 M개의 주기에는 서로 다른 주기가 포함되어 있는 모바일 장치.
  21. 제 16 항에 있어서,
    상기 내장형 저장 장치는 eMMC인 모바일 장치.
KR1020130118816A 2013-10-04 2013-10-04 플래시 메모리를 기반으로 하는 저장 장치 및 그것의 동작 방법 KR102138110B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020130118816A KR102138110B1 (ko) 2013-10-04 2013-10-04 플래시 메모리를 기반으로 하는 저장 장치 및 그것의 동작 방법
US14/299,464 US9373406B2 (en) 2013-10-04 2014-06-09 Flash memory based on storage devices and methods of operation
CN201410524776.3A CN104517646B (zh) 2013-10-04 2014-10-08 基于快闪存储器的存储设备和操作方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130118816A KR102138110B1 (ko) 2013-10-04 2013-10-04 플래시 메모리를 기반으로 하는 저장 장치 및 그것의 동작 방법

Publications (2)

Publication Number Publication Date
KR20150040170A true KR20150040170A (ko) 2015-04-14
KR102138110B1 KR102138110B1 (ko) 2020-07-27

Family

ID=52776825

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130118816A KR102138110B1 (ko) 2013-10-04 2013-10-04 플래시 메모리를 기반으로 하는 저장 장치 및 그것의 동작 방법

Country Status (3)

Country Link
US (1) US9373406B2 (ko)
KR (1) KR102138110B1 (ko)
CN (1) CN104517646B (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160099861A (ko) * 2015-02-13 2016-08-23 삼성전자주식회사 슈미트 트리거 회로 및 이를 포함하는 비휘발성 메모리 장치
KR20170023254A (ko) * 2015-08-19 2017-03-03 삼성전자주식회사 반도체 메모리 시스템 및 반도체 메모리 장치 및 반도체 메모리 장치의 동작방법
KR20190134070A (ko) * 2018-05-24 2019-12-04 에센코어 리미티드 메모리 장치, 메모리 장치의 제어 방법 및 메모리 장치를 제어하는 방법

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6171066B1 (ja) 2016-09-01 2017-07-26 ウィンボンド エレクトロニクス コーポレーション 半導体記憶装置
KR102378384B1 (ko) * 2017-09-11 2022-03-24 삼성전자주식회사 불휘발성 메모리 장치의 동작 방법 및 메모리 컨트롤러의 동작 방법
DE102018124375A1 (de) * 2017-11-21 2019-05-23 Samsung Electronics Co., Ltd. Betriebsverfahren eines signalempfängers, pulsbreitensteuerungund elektronische vorrichtung mit denselben
US10395701B1 (en) * 2018-05-09 2019-08-27 Micron Technology, Inc. Memory device with a latching mechanism
JP7066556B2 (ja) * 2018-07-11 2022-05-13 キオクシア株式会社 メモリシステム
KR20210062499A (ko) * 2019-11-21 2021-05-31 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그 동작 방법
JP2022094033A (ja) * 2020-12-14 2022-06-24 キオクシア株式会社 メモリシステム
US11645155B2 (en) * 2021-02-22 2023-05-09 Nxp B.V. Safe-stating a system interconnect within a data processing system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7983100B2 (en) * 2009-07-13 2011-07-19 Montage Technology (Shanghai) Co., Ltd. Method for generating read enable signal and memory system using the method
KR20120048750A (ko) * 2010-11-04 2012-05-16 삼성전자주식회사 온-다이 터미네이션 회로를 가지는 불휘발성 메모리 장치 및 그것의 제어 방법
KR20120052092A (ko) * 2010-11-15 2012-05-23 삼성전자주식회사 네트워크 중계 방법, 네트워크 접속 방법 및 이를 적용한 무선 통신 그룹
KR20120052029A (ko) * 2010-11-15 2012-05-23 삼성전자주식회사 불휘발성 메모리 장치, 그것의 읽기 방법, 그리고 그것을 포함하는 메모리 시스템

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6407963B1 (en) 1999-10-19 2002-06-18 Hitachi, Ltd. Semiconductor memory device of DDR configuration having improvement in glitch immunity
US6785189B2 (en) 2002-09-16 2004-08-31 Emulex Design & Manufacturing Corporation Method and apparatus for improving noise immunity in a DDR SDRAM system
JP4364041B2 (ja) * 2004-04-01 2009-11-11 Okiセミコンダクタ株式会社 データ転送回路
US7543172B2 (en) 2004-12-21 2009-06-02 Rambus Inc. Strobe masking in a signaling system having multiple clock domains
JP4747621B2 (ja) 2005-03-18 2011-08-17 日本電気株式会社 メモリインターフェイス制御回路
KR20070054017A (ko) 2005-11-22 2007-05-28 삼성전자주식회사 신호 처리 장치
US20110264851A1 (en) * 2006-12-07 2011-10-27 Tae-Keun Jeon Memory system and data transmitting method thereof
KR100933257B1 (ko) 2007-12-28 2009-12-22 주식회사 하이닉스반도체 반도체 메모리 장치
JP2010170597A (ja) 2009-01-20 2010-08-05 Elpida Memory Inc 半導体記憶装置及びそのリードプリアンブル信号の制御方法、並びにデータ伝送システム
US7990781B1 (en) 2009-06-23 2011-08-02 Juniper Networks, Inc. Write strobe generation for a memory interface controller
KR101626084B1 (ko) * 2009-11-25 2016-06-01 삼성전자주식회사 멀티 칩 메모리 시스템 및 그것의 데이터 전송 방법
CN102280129B (zh) * 2010-06-09 2014-12-17 上海华虹宏力半导体制造有限公司 闪速存储器及其读取电路
KR101132800B1 (ko) * 2010-06-09 2012-04-02 주식회사 하이닉스반도체 데이터입력회로
JP5655555B2 (ja) 2010-12-27 2015-01-21 富士通セミコンダクター株式会社 メモリインターフェース回路、メモリインターフェース方法、および電子機器
US8422319B2 (en) 2011-05-30 2013-04-16 Lsi Corporation System and method for gate training in a memory system
KR20130114354A (ko) * 2012-04-09 2013-10-18 삼성전자주식회사 메모리 시스템 및 컨트롤러의 동작 방법
KR20140008745A (ko) * 2012-07-11 2014-01-22 삼성전자주식회사 자기 메모리 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7983100B2 (en) * 2009-07-13 2011-07-19 Montage Technology (Shanghai) Co., Ltd. Method for generating read enable signal and memory system using the method
KR20120048750A (ko) * 2010-11-04 2012-05-16 삼성전자주식회사 온-다이 터미네이션 회로를 가지는 불휘발성 메모리 장치 및 그것의 제어 방법
KR20120052092A (ko) * 2010-11-15 2012-05-23 삼성전자주식회사 네트워크 중계 방법, 네트워크 접속 방법 및 이를 적용한 무선 통신 그룹
KR20120052029A (ko) * 2010-11-15 2012-05-23 삼성전자주식회사 불휘발성 메모리 장치, 그것의 읽기 방법, 그리고 그것을 포함하는 메모리 시스템

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160099861A (ko) * 2015-02-13 2016-08-23 삼성전자주식회사 슈미트 트리거 회로 및 이를 포함하는 비휘발성 메모리 장치
KR20170023254A (ko) * 2015-08-19 2017-03-03 삼성전자주식회사 반도체 메모리 시스템 및 반도체 메모리 장치 및 반도체 메모리 장치의 동작방법
KR20190134070A (ko) * 2018-05-24 2019-12-04 에센코어 리미티드 메모리 장치, 메모리 장치의 제어 방법 및 메모리 장치를 제어하는 방법

Also Published As

Publication number Publication date
CN104517646A (zh) 2015-04-15
US20150098275A1 (en) 2015-04-09
CN104517646B (zh) 2019-11-19
US9373406B2 (en) 2016-06-21
KR102138110B1 (ko) 2020-07-27

Similar Documents

Publication Publication Date Title
KR102138110B1 (ko) 플래시 메모리를 기반으로 하는 저장 장치 및 그것의 동작 방법
JP4550439B2 (ja) Ecc制御装置
US7542371B2 (en) Memory controller and memory system
US9412468B2 (en) Semiconductor devices and semiconductor systems for conducting a training operation
CN102422360B (zh) 校准存储器系统中的写平整的起始值的方法
US9754650B2 (en) Memory device and system supporting command bus training, and operating method thereof
US7827431B2 (en) Memory card having memory device and host apparatus accessing memory card
KR102235521B1 (ko) 특정 패턴을 갖는 저장 장치 및 그것의 동작 방법
CN106205728B (zh) 奇偶校验电路及包括该奇偶校验电路的存储器装置
CN109753458B (zh) 包括多数据速率存储器设备的存储设备以及存储器控制器
US20150063044A1 (en) Strobe signal generation device and memory apparatus using the same
KR20170096798A (ko) 클럭 생성 회로, 이를 이용하는 인터페이스 회로 및 반도체 시스템
KR102473661B1 (ko) 듀티 사이클을 조절하는 메모리 장치 및 이를 포함하는 메모리 시스템
US20180350415A1 (en) Semiconductor devices and semiconductor systems including the same
KR20210040707A (ko) 메모리 장치 및 이를 포함하는 메모리 시스템
KR20210148777A (ko) 리드동작 및 모드레지스터리드동작을 수행하기 위한 전자장치
US20200013475A1 (en) Test control circuit, semiconductor memory apparatus and semiconductor system using the test control circuit
US8953392B2 (en) Latency control device and semiconductor device including the same
CN108376555B (zh) 存储器设备及其测试方法以及存储器模块及使用其的系统
KR20130102816A (ko) 데이터 액세스 메모리 및 그것의 데이터 손실 방지 방법
US11461176B2 (en) Memory device and memory system
US9424899B2 (en) Apparatuses and methods for providing active and inactive clock signals to a command path circuit
KR20180004605A (ko) 고속 데이터 전송을 위한 메모리 장치
KR20170093382A (ko) 래치 회로, 리시버 회로, 이를 이용하는 반도체 장치 및 시스템
KR20170136037A (ko) 전송 회로, 이를 포함하는 반도체 장치 및 시스템

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