KR20220118265A - 데이터마스킹동작을 수행하는 전자장치 - Google Patents

데이터마스킹동작을 수행하는 전자장치 Download PDF

Info

Publication number
KR20220118265A
KR20220118265A KR1020210022194A KR20210022194A KR20220118265A KR 20220118265 A KR20220118265 A KR 20220118265A KR 1020210022194 A KR1020210022194 A KR 1020210022194A KR 20210022194 A KR20210022194 A KR 20210022194A KR 20220118265 A KR20220118265 A KR 20220118265A
Authority
KR
South Korea
Prior art keywords
data
read
circuit
write
masking
Prior art date
Application number
KR1020210022194A
Other languages
English (en)
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 KR1020210022194A priority Critical patent/KR20220118265A/ko
Priority to CN202110641534.2A priority patent/CN114974392A/zh
Priority to US17/370,726 priority patent/US11514998B2/en
Publication of KR20220118265A publication Critical patent/KR20220118265A/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • 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
    • G11C7/1009Data masking during input/output
    • 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
    • G06F11/1048Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/12015Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising clock generation or timing circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • G11C29/4401Indication or identification of errors, e.g. for repair for self repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • 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
    • 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/1015Read-write modes for single port memories, i.e. having either a random port or a serial port
    • G11C7/1039Read-write modes for single port memories, i.e. having either a random port or a serial port using pipelining techniques, i.e. using latches between functional memory parts, e.g. row/column decoders, I/O buffers, sense amplifiers
    • 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
    • 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/106Data output latches
    • 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion 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/1078Data input circuits, e.g. write amplifiers, data input buffers, data input registers, data input level conversion circuits
    • G11C7/1087Data input latches
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C2029/0411Online error correction

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

전자장치는 데이터마스킹동작 시 리드데이터 및 리드패러티를 출력한 이후 라이트데이터 및 라이트패러티를 저장하는 코어회로 및 상기 리드패러티를 토대로 상기 리드데이터에 포함된 에러를 정정하고, 에러가 정정된 상기 리드데이터와 입력데이터 및 마스킹데이터로부터 상기 라이트패러티를 생성하며, 에러가 정정되지 않은 상기 리드데이터와 상기 입력데이터 및 상기 마스킹데이터로부터 상기 라이트데이터를 생성하는 에러정정회로를 포함한다.

Description

데이터마스킹동작을 수행하는 전자장치{ELECTRIC DEVICE FOR PERFORMING DATA MASKING OPERATION}
본 발명은 데이터마스킹동작 시 에러가 정정된 리드데이터로부터 라이트패러티를 생성하고, 에러가 정정되지 않은 리드데이터로부터 라이트데이터를 생성하는 데이터마스킹동작을 수행하는 전자장치에 관한 것이다.
최근 반도체장치의 동작속도를 증가시키기 위해 클럭 사이클(cycle)마다 다수 비트를 포함하는 데이터를 입/출력하는 다양한 방식 등이 사용되고 있다. 데이터의 입/출력 속도가 빨라지는 경우 데이터가 전송되는 과정 중 발생되는 오류의 발생 확률도 증가 되므로, 데이터 전송의 신뢰성을 보장하기 위한 별도의 장치와 방법이 추가적으로 요구되고 있다.
예를 들어, 데이터 전송 시마다 오류 발생 여부를 확인할 수 있는 오류코드를 생성하여 데이터와 함께 전송함으로써, 데이터 전송의 신뢰성을 보장하는 방법을 사용하고 있다. 오류코드에는 발생한 오류를 검출할 수 있는 오류검출코드(Error Detection Code, EDC)와, 오류 발생시 이를 자체적으로 정정할 수 있는 오류정정코드(Error Correction Code, ECC) 등이 있다.
본 발명은 데이터마스킹동작 시 내부리드동작에서 에러가 정정된 리드데이터를 사용하여 라이트패러티를 생성하고, 내부라이트동작에서 에러가 정정되지 않은 리드데이터로부터 생성되는 라이트데이터와 라이트패러티를 재 저장하는 라이트백디스에이블동작을 지원하는 전자시스템을 제공한다.
이를 위해 본 발명은 데이터마스킹동작 시 리드데이터 및 리드패러티를 출력한 이후 라이트데이터 및 라이트패러티를 저장하는 코어회로 및 상기 리드패러티를 토대로 상기 리드데이터에 포함된 에러를 정정하고, 에러가 정정된 상기 리드데이터와 입력데이터 및 마스킹데이터로부터 상기 라이트패러티를 생성하며, 에러가 정정되지 않은 상기 리드데이터와 상기 입력데이터 및 상기 마스킹데이터로부터 상기 라이트데이터를 생성하는 에러정정회로를 포함하는 전자장치를 제공한다.
또한, 본 발명은 외부에서 입력되는 마스킹신호로부터 마스킹데이터를 생성하는 마스킹데이터생성회로, 내부리드동작 시 생성되는 리드패러티로부터 리드데이터의 에러를 정정하기 위한 정정제어신호를 생성하는 에러제어회로 및 상기 내부리드동작 시 에러제어신호 및 상기 정정제어신호에 의해 상기 리드데이터의 에러를 정정하며, 상기 마스킹데이터와 에러가 정정된 상기 리드데이터로부터 전달데이터를 생성하고, 내부라이트동작 시 상기 마스킹데이터와 에러가 정정되지 않은 상기 리드데이터로부터 상기 전달데이터를 생성하는 데이터처리회로를 포함하는 전자장치를 제공한다.
본 발명에 의하면 전자시스템은 데이터마스킹동작 시 내부리드동작에서 에러가 정정된 리드데이터를 사용하여 라이트패러티를 생성하고, 내부라이트동작에서 에러가 정정되지 않은 리드데이터로부터 생성되는 라이트데이터와 라이트패러티를 재 저장하는 라이트백디스에이블동작을 지원할 수 있다.
또한, 본 발명에 의하면 전자시스템은 데이터마스킹동작 시 내부리드동작에서 에러가 정정된 리드데이터를 사용하여 라이트패러티를 생성하고, 내부라이트동작에서 에러가 정정되지 않은 리드데이터로부터 생성되는 라이트데이터와 라이트패러티를 재 저장함으로써 데이터영역에 저장되는 데이터의 신뢰성을 확보할 수 있다.
도 1은 본 발명의 일 실시예에 따른 전자시스템의 구성을 도시한 블럭도이다.
도 2는 도 1에 도시된 전자시스템에 포함된 전자장치의 구성을 도시한 블럭도이다.
도 3은 도 2에 도시된 전자장치에 포함된 에러제어회로의 구성을 도시한 블럭도이다.
도 4는 도 3에 도시된 에러제어회로에 포함된 신드롬생성회로의 구성을 도시한 블럭도이다.
도 5는 도 4에 도시된 신드롬생성회로에 포함된 로직회로의 구성을 도시한 회로도이다.
도 6은 도 2에 도시된 전자장치에 포함된 데이터처리회로의 구성을 도시한 블럭도이다.
도 7은 도 6에 도시된 데이터처리회로에 포함된 에러제어신호생성회로의 구성을 도시한 회로도이다.
도 8은 도 6에 도시된 데이터처리회로에 포함된 정정신호생성회로의 구성을 도시한 회로도이다.
도 9는 도 6에 도시된 데이터처리회로에 포함된 반전제어회로의 구성을 도시한 회로도이다.
도 10은 도 2에 도시된 전자장치에 포함된 라이트제어회로의 구성을 도시한 블럭도이다.
도 11은 도 10에 도시된 라이트제어회로에 포함된 라이트데이터생성회로의 구성을 도시한 회로도이다.
도 12는 도 10에 도시된 라이트제어회로에 포함된 라이트패러티생성회로의 구성을 도시한 블럭도이다.
도 13은 도 12에 도시된 라이트패러티생성회로에 포함된 지연회로의 구성을 도시한 회로도이다.
도 14 및 도 15는 본 발명의 일 실시예에 따른 전자장치의 데이터마스킹동작을 설명하기 위한 도면이다.
도 16은 본 발명의 다른 실시예에 따른 전자시스템의 동작을 설명하기 위한 타이밍도이다
도 17은 도 1 내지 도 16에 도시된 전자시스템이 적용된 전자시스템의 일 실시예에 따른 구성을 도시한 도면이다.
"기 설정된"이라는 용어는 프로세스나 알고리즘에서 매개변수를 사용할 때 매개변수의 수치가 미리 결정되어 있음을 의미한다. 매개변수의 수치는 실시예에 따라서 프로세스나 알고리즘이 시작할 때 설정되거나 프로세스나 알고리즘이 수행되는 구간 동안 설정될 수 있다.
다양한 구성요소들을 구별하는데 사용되는 "제1" 및 "제2" 등의 용어는 구성요소들에 의해 한정되지 않는다. 예를 들어, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 반대로 제2 구성요소는 제1 구성요소로 명명될 수 있다.
하나의 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 할 때 직접적으로 연결되거나 중간에 다른 구성요소를 매개로 연결될 수도 있다고 이해되어야 한다. 반면 "직접 연결되어" 및 "직접 접속되어"라는 기재는 하나의 구성요소가 다른 구성요소에 또 다른 구성요소를 사이에 두지 않고 직접 연결된다고 이해되어야 한다.
"로직하이레벨" 및 "로직로우레벨"은 신호들의 로직레벨들을 설명하기 위해 사용된다. "로직하이레벨"을 갖는 신호는 "로직로우레벨"을 갖는 신호와 구별된다. 예를 들어, 제1 전압을 갖는 신호가 "로직하이레벨"에 대응할 때 제2 전압을 갖는 신호는 "로직로우레벨"에 대응할 수 있다. 일 실시예에 따라 "로직하이레벨"은 "로직로우레벨"보다 큰 전압으로 설정될 수 있다. 한편, 신호들의 로직레벨들은 실시예에 따라서 다른 로직레벨 또는 반대의 로직레벨로 설정될 수 있다. 예를 들어, 로직하이레벨을 갖는 신호는 실시예에 따라서 로직로우레벨을 갖도록 설정될 수 있고, 로직로우레벨을 갖는 신호는 실시예에 따라서 로직하이레벨을 갖도록 설정될 수 있다.
이하, 실시예를 통하여 본 발명을 더욱 상세히 설명하기로 한다. 이들 실시예는 단지 본 발명을 예시하기 위한 것이며, 본 발명의 권리 보호 범위가 이들 실시예에 의해 제한되는 것은 아니다.
도 1에 도시된 바와 같이, 본 발명의 일 실시 예에 따른 전자시스템(100)은 컨트롤러(110) 및 전자장치(120)를 포함할 수 있다. 전자장치(120)는 입력데이터생성회로(220), 마스킹데이터생성회로(230), 코어회로(240) 및 에러정정회로(250)를 포함할 수 있다.
컨트롤러(110)는 제1 컨트롤핀(11), 제2 컨트롤핀(31), 제3 컨트롤핀(51) 및 제4 컨트롤핀(71)을 포함할 수 있다. 전자장치(120)는 제1 반도체핀(21), 제2 반도체핀(41), 제3 반도체핀(61) 및 제4 반도체핀(81)을 포함할 수 있다. 제1 전송라인(L11)은 제1 컨트롤핀(11) 및 제1 반도체핀(21) 사이에 연결될 수 있다. 제2 전송라인(L31)은 제2 컨트롤핀(31) 및 제2 반도체핀(41) 사이에 연결될 수 있다. 제3 전송라인(L51)은 제3 컨트롤핀(51) 및 제3 반도체핀(61) 사이에 연결될 수 있다. 제4 전송라인(L71)은 제4 컨트롤핀(71) 및 제4 반도체핀(81) 사이에 연결될 수 있다. 컨트롤러(110)는 클럭(CLK)을 제1 전송라인(L11)을 통해 전자장치(120)에 전송할 수 있다. 컨트롤러(110)는 커맨드(RMW)를 제2 전송라인(L31)을 통해 전자장치(120)에 전송할 수 있다. 컨트롤러(110)는 외부데이터(ED)를 제3 전송라인(L51)을 통해 전자장치(120)에 전송할 수 있다. 컨트롤러(110)는 마스킹신호(MS)를 제4 전송라인(L71)을 통해 전자장치(120)에 전송할 수 있다. 커맨드(RMW)는 데이터마스킹동작을 제어하기 위한 커맨드로 설정될 수 있다.
컨트롤러(110)는 데이터마스킹동작을 제어하기 위한 클럭(CLK) 및 커맨드(RMW)를 전자장치(120)로 출력할 수 있다. 컨트롤러(110)는 데이터마스킹동작 시 전자장치(120)에 저장되기 위한 외부데이터(ED)를 전자장치(120)로 출력할 수 있다. 컨트롤러(110)는 데이터마스킹동작 시 외부데이터(ED)를 마스킹하기 위한 마스킹신호(MS)를 전자장치(120)로 출력할 수 있다. 커맨드(RMW), 외부데이터(ED) 및 마스킹신호(MS)는 클럭(CLK)에 포함된 홀수 펄스 또는 짝수 펄스에 동기 되어 연속적으로 입출력될 수 있다.
입력데이터생성회로(220)는 클럭(CLK)에 동기 되어 외부데이터(ED)로부터 입력데이터(도 2의 IND<1:16>)를 생성할 수 있다.
마스킹데이터생성회로(230)는 클럭(CLK)에 동기 되어 마스킹신호(MS)로부터 마스킹데이터(도 2의 MD<1:16>)를 생성할 수 있다.
코어회로(240)는 데이터마스킹동작의 내부리드동작 시 내부에 저장된 리드데이터(도 2의 RD<1:16>) 및 리드패러티(도 2의 RP<1:4>)를 에러정정회로(250)로 출력할 수 있다. 코어회로(240)는 데이터마스킹동작의 내부라이트동작 시 에러정정회로(250)로부터 라이트데이터(도 2의 WD<1:16>) 및 라이트패러티(도 2의 WP<1:4>)를 수신하여 저장할 수 있다.
에러정정회로(250)는 내부리드동작 시 리드패러티(도 2의 RP<1:4>)를 토대로 리드데이터(도 2의 RD<1:16>)에 포함된 에러를 정정할 수 있다. 에러정정회로(250)는 내부리드동작 시 에러가 정정된 리드데이터(도 2의 RD<1:16>), 입력데이터(도 2의 IND<1:16>) 및 마스킹데이터(도 2의 MD<1:16>)로부터 라이트패러티(도 2의 WP<1:4>)를 생성할 수 있다. 에러정정회로(250)는 내부라이트동작 시 에러가 정정되지 않은 리드데이터(도 2의 RD<1:16>), 입력데이터(도 2의 IND<1:16>) 및 마스킹데이터(도 2의 MD<1:16>)로부터 라이트데이터(도 2의 WD<1:16>)를 생성할 수 있다.
도 2는 전자장치(120)의 일 실시예에 따른 구성을 도시한 블럭도이다. 도 2에 도시된 바와 같이, 전자장치(120)는 리드라이트제어회로(210), 입력데이터생성회로(220), 마스킹데이터생성회로(230), 코어회로(240) 및 에러정정회로(250)를 포함할 수 있다.
리드라이트제어회로(210)는 클럭(CLK)에 동기 되어 커맨드(RMW)로부터 내부리드커맨드(IRD), 내부라이트커맨트(IWT) 및 어드레스(IADD)를 생성할 수 있다. 리드라이트제어회로(210)는 데이터마스킹동작 시 클럭(CLK)에 동기 되어 커맨드(RMW)로부터 내부리드동작을 수행하기 위한 내부리드커맨드(IRD) 및 어드레스(IADD)를 생성할 수 있다. 리드라이트제어회로(210)는 데이터마스킹동작 시 클럭(CLK)에 동기 되어 커맨드(RMW)로부터 내부라이트동작을 수행하기 위한 내부라이트커맨트(IWT) 및 어드레스(IADD)를 생성할 수 있다. 데이터마스킹동작 시 내부리드동작이 수행된 이후 내부라이트동작이 연속으로 수행될 수 있다.
입력데이터생성회로(220)는 클럭(CLK)에 동기 되어 제1 내지 제16 외부데이터(ED<1:16>)를 토대로 제1 내지 제16 입력데이터(IND<1:16>)를 생성할 수 있다. 입력데이터생성회로(220)는 클럭(CLK)에 동기 되어 제1 내지 제16 외부데이터(ED<1:16>)를 버퍼링하여 제1 내지 제16 입력데이터(IND<1:16>)를 생성할 수 있다. 입력데이터생성회로(220)는 클럭(CLK)의 라이징에지 또는 폴링에지에 동기 되어 제1 내지 제16 외부데이터(ED<1:16>)를 토대로 제1 내지 제16 입력데이터(IND<1:16>)를 생성할 수 있다.
마스킹데이터생성회로(230)는 클럭(CLK)에 동기 되어 제1 내지 제16 마스킹신호(MS<1:16>)를 토대로 제1 내지 제16 마스킹데이터(MD<1:16>)를 생성할 수 있다. 마스킹데이터생성회로(230)는 클럭(CLK)에 동기 되어 제1 내지 제16 마스킹신호(MS<1:16>)를 버퍼링하여 제1 내지 제16 마스킹데이터(MD<1:16>)를 생성할 수 있다. 마스킹데이터생성회로(230)는 클럭(CLK)의 라이징에지 또는 폴링에지에 동기 되어 제1 내지 제16 마스킹신호(MS<1:6>)를 토대로 제1 내지 제16 마스킹데이터(MD<1:16>)를 생성할 수 있다. 제1 내지 제16 마스킹신호(MS<1:16>)는 제1 내지 제16 외부데이터(ED<1:16>)와 동일한 비트수로 구현될 수 있다. 제1 내지 제16 마스킹신호(MS<1:16>) 중 일부 비트는 제1 내지 제16 외부데이터(ED<1:16>)의 일부 비트를 마스킹하기 위해 로직하이레벨로 입력될 수 있다.
코어회로(240)는 데이터영역(241) 및 패러티영역(242)를 포함할 수 있다. 코어회로(240)는 내부리드커맨드(IRD)가 입력되는 경우 어드레스(IADD)에 의해 데이터영역(241) 내부에 저장된 제1 내지 제16 리드데이터(RD<1:16>)를 출력할 수 있다. 코어회로(240)는 내부리드커맨드(IRD)가 입력되는 경우 어드레스(IADD)에 의해 패러티영역(242) 내부에 저장된 제1 내지 제4 리드패러티(RP<1:4>)를 출력할 수 있다. 제1 내지 제4 리드패러티(RP<1:4>)는 제1 내지 제16 리드데이터(RD<1:16>)의 에러정보를 포함하는 신호로 설정될 수 있다. 코어회로(240)는 내부라이트커맨드(IWT)가 입력되는 경우 어드레스(IADD)에 의해 제1 내지 제16 라이트데이터(WD<1:16>)를 데이터영역(241)에 저장할 수 있다. 코어회로(240)는 내부라이트커맨드(IWT)가 입력되는 경우 어드레스(IADD)에 의해 제1 내지 제4 라이트패러티(WP<1:4>)를 패러티영역(242)에 저장할 수 있다. 제1 내지 제4 라이트패러티(WP<1:4>)는 제1 내지 제16 라이트데이터(WD<1:16>)의 에러정보를 포함하는 신호로 설정될 수 있다.
에러정정회로(250)는 에러제어회로(251), 데이터처리회로(252) 및 라이트제어회로(253)를 포함할 수 있다.
에러제어회로(251)는 내부리드동작 시 제1 내지 제4 리드패러티(RP<1:4>)로부터 제1 내지 제16 리드데이터(RD<1:16>)에 포함된 에러를 정정하기 위한 제1 내지 제16 정정제어신호(IC<1:16>)를 생성할 수 있다.
데이터처리회로(252)는 내부리드동작 시 내부리드커맨드(IRD)로부터 에러제어신호(도 6의 ECCCTR)를 생성할 수 있다. 데이터처리회로(252)는 내부리드커맨드(IRD)가 입력되는 경우 디스에이블되는 에러제어신호(도 6의 ECCCTR)를 생성할 수 있다. 데이터처리회로(252)는 내부리드동작 시 에러제어신호(도 6의 ECCCTR)와 제1 내지 제16 정정제어신호(IC<1:16>)에 의해 제1 내지 제16 리드데이터(RD<1:16>)의 에러를 정정할 수 있다. 데이터처리회로(252)는 내부리드동작 시 제1 내지 제16 마스킹데이터(MD<1:16>)와 에러가 정정된 제1 내지 제16 리드데이터(RD<1:16>)로부터 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다. 데이터처리회로(252)는 내부라이트동작 시 제1 내지 제16 마스킹데이터(MD<1:16>)와 에러가 정정되지 않은 제1 내지 제16 리드데이터(RD<1:16>)로부터 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다.
라이트제어회로(253)는 내부리드동작 시 제1 내지 제16 전달데이터(TD<1:16>)에 대한 ECC 인코딩동작을 수행하여 제1 내지 제4 라이트패러티(WP<1:4>)를 생성할 수 있다. 라이트제어회로(253)는 내부라이트동작 시 제1 내지 제16 전달데이터(TD<1:16>), 제1 내지 제16 마스킹데이터(MD<1:16>)와 제1 내지 제16 입력데이터(IND<1:16>)로부터 제1 내지 제16 라이트데이터(WD<1:16>)를 생성할 수 있다.
이와 같은, 에러정정회로(250)는 내부리드동작 시 제1 내지 제4 리드패러티(RP<1:4>)를 토대로 제1 내지 제16 리드데이터(RD<1:16>)에 포함된 에러를 정정할 수 있다. 에러정정회로(250)는 내부리드동작 시 에러가 정정된 제1 내지 제16 리드데이터(RD<1:16>)와 제1 내지 제16 입력데이터(IND_1:16>) 및 제1 내지 제16 마스킹데이터(MD<1:16>)로부터 제1 내지 제4 라이트패러티(WP<1:4>)를 생성할 수 있다. 에러정정회로(250)는 내부라이트동작 시 에러가 정정되지 않은 제1 내지 제16 리드데이터(RD<1:16>)와 제1 내지 제16 입력데이터(IND_1:16>) 및 제1 내지 제16 마스킹데이터(MD<1:16>)로부터 제1 내지 제16 라이트데이터(WD<1:16>) 를 생성할 수 있다.
도 3은 에러제어회로(251)의 일 실시예에 따른 구성을 도시한 블럭도이다. 도 3에 도시된 바와 같이, 에러제어회로(251)는 신드롬생성회로(310) 및 ECC 디코더(320)를 포함할 수 있다.
신드롬생성회로(310)는 제1 내지 제16 리드데이터(RD<1:16>)와 제1 내지 제4 리드패러티(RP<1:4>)로부터 제1 내지 제16 리드데이터(RD<1:16>)에 포함된 에러의 위치정보를 포함하는 제1 내지 제4 신드롬(SYD<:4>)를 생성할 수 있다.
ECC 디코더(320)는 제1 내지 제4 신드롬(SYD<:4>)에 대한 ECC 디코딩동작을 수행하여 제1 내지 제16 정정제어신호(IC<1:16>)를 생성할 수 있다. ECC 디코더(320)는 제1 내지 제4 신드롬(SYD<:4>)을 디코딩하여 제1 내지 제16 정정제어신호(IC<1:16>)를 생성할 수 있다.
여기서, ECC 디코딩동작은 제1 내지 제16 리드데이터(RD<1:16>)와 제1 내지 제4 리드패러티(RP<1:4>)로부터 제1 내지 제4 신드롬(SYD<:4>)를 생성하는 동작과 제1 내지 제4 신드롬(SYD<:4>)을 디코딩하여 제1 내지 제16 정정제어신호(IC<1:16>)를 생성하기 위한 동작을 포함할 수 있다.
도 4는 신드롬생성회로(310)의 일 실시예에 따른 구성을 도시한 블럭도이다. 도 4에 도시된 바와 같이, 신드롬생성회로(310)는 패러티생성회로(311) 및 로직회로(312)를 포함할 수 있다.
패러티생성회로(311)는 인에이블신호(EN)의 인에이블 구간 동안 제1 내지 제16 리드데이터(RD<1:16>)로부터 제1 내지 제4 패러티(P<1:4>)를 생성할 수 있다. 패러티생성회로(311)는 인에이블신호(EN)의 인에이블 구간 동안 오류정정코드(Error Correction Code, ECC)를 사용하여 제1 내지 제16 리드데이터(RD<1:16>)로부터 제1 내지 제4 패러티(P<1:4>)를 생성할 수 있다. 패러티생성회로(311)는 내부리드동작 시 제1 내지 제16 리드데이터(RD<1:16>)에 대한 ECC 인코딩동작을 수행하여 제1 내지 제4 패러티(P<1:4>)를 생성할 수 있다. 인에이블신호(EN)는 데이터마스킹동작 시 인에이블되는 신호로 설정될 수 있다.
로직회로(312)는 제1 내지 제4 패러티(P<1:4>)와 제1 내지 제4 리드패러티(RP<1:4>)를 비교하여 제1 내지 제4 신드롬(SYD<1:4>)을 생성할 수 있다.
도 5는 로직회로(312)의 일 실시예에 따른 구성을 도시한 회로도이다. 도 5에 도시된 바와 같이, 로직회로(312)는 익스클루시브 오어게이트들(310<1>,310<2>,310<3>,310<4>)로 구현될 수 있다.
익스클루시브 오어게이트(310<1>)는 제1 패러티(P<1>)와 제1 리드패러티(RP<1>)를 비교하여 제1 신드롬(SYD<1>)을 생성할 수 있다. 익스클루시브 오어게이트(310<1>)는 제1 패러티(P<1>)와 제1 리드패러티(RP<1>)의 배타적 논리합 연산을 수행하여 제1 신드롬(SYD<1>)을 생성할 수 있다. 익스클루시브 오어게이트(310<1>)는 제1 패러티(P<1>)와 제1 리드패러티(RP<1>)의 로직레벨이 서로 상이한 경우 로직하이레벨의 제1 신드롬(SYD<1>)을 생성할 수 있다.
익스클루시브 오어게이트(310<2>)는 제2 패러티(P<2>)와 제2 리드패러티(RP<2>)를 비교하여 제2 신드롬(SYD<2>)을 생성할 수 있다. 익스클루시브 오어게이트(310<2>)는 제2 패러티(P<2>)와 제2 리드패러티(RP<2>)의 배타적 논리합 연산을 수행하여 제2 신드롬(SYD<2>)을 생성할 수 있다. 익스클루시브 오어게이트(310<2>)는 제2 패러티(P<2>)와 제2 리드패러티(RP<2>)의 로직레벨이 서로 상이한 경우 로직하이레벨의 제2 신드롬(SYD<2>)을 생성할 수 있다.
익스클루시브 오어게이트(310<3>)는 제3 패러티(P<3>)와 제3 리드패러티(RP<3>)를 비교하여 제3 신드롬(SYD<3>)을 생성할 수 있다. 익스클루시브 오어게이트(310<3>)는 제3 패러티(P<3>)와 제3 리드패러티(RP<3>)의 배타적 논리합 연산을 수행하여 제3 신드롬(SYD<3>)을 생성할 수 있다. 익스클루시브 오어게이트(310<3>)는 제3 패러티(P<3>)와 제3 리드패러티(RP<3>)의 로직레벨이 서로 상이한 경우 로직하이레벨의 제3 신드롬(SYD<3>)을 생성할 수 있다.
익스클루시브 오어게이트(310<4>)는 제4 패러티(P<4>)와 제4 리드패러티(RP<4>)를 비교하여 제4 신드롬(SYD<4>)을 생성할 수 있다. 익스클루시브 오어게이트(310<4>)는 제4 패러티(P<4>)와 제4 리드패러티(RP<4>)의 배타적 논리합 연산을 수행하여 제4 신드롬(SYD<4>)을 생성할 수 있다. 익스클루시브 오어게이트(310<4>)는 제4 패러티(P<4>)와 제4 리드패러티(RP<4>)의 로직레벨이 서로 상이한 경우 로직하이레벨의 제4 신드롬(SYD<4>)을 생성할 수 있다.
도 6은 데이터처리회로(252)의 일 실시예에 따른 구성을 도시한 블럭도이다. 도 6에 도시된 바와 같이, 데이터처리회로(252)는 에러제어신호생성회로(330), 정정신호생성회로(340) 및 반전제어회로(350)를 포함할 수 있다.
에러제어신호생성회로(330)는 내부리드커맨드(IRD)가 입력되는 경우 디스에이블되는 에러제어신호(ECCCTR)를 생성할 수 있다. 에러제어신호생성회로(330)는 스트로브지연신호(STD)가 입력되는 경우 인에이블되는 에러제어신호(ECCCTR)를 생성할 수 있다. 에러제어신호생성회로(330)는 리셋신호(RST)가 입력되는 경우 디스에이블되는 에러제어신호(ECCCTR)를 생성할 수 있다. 스트로브지연신호(STD)는 후술하는 개시신호(도 10의 STR)가 지연되어 생성되는 신호로 설정될 수 있다. 리셋신호(RST)는 전자장치(120)가 동작을 시작하는 초기화동작에서 로직로우레벨로 생성되는 신호로 설정될 수 있다.
정정신호생성회로(340)는 에러제어신호(ECCCTR)를 수신하여 제1 내지 제16 정정제어신호(IC<1:16>)를 토대로 제1 내지 제16 정정신호(CRS<1:16>)를 생성할 수 있다. 정정신호생성회로(340)는 에러제어신호(ECCCTR)가 디스에이블되는 경우 제1 내지 제16 정정제어신호(IC<1:16>)를 토대로 제1 내지 제16 정정신호(CRS<1:16>)를 생성할 수 있다. 정정신호생성회로(340)는 에러제어신호(ECCCTR)가 인에이블되는 경우 제1 내지 제16 정정신호(CRS<1:16>)의 생성을 차단할 수 있다.
반전제어회로(350)는 내부리드동작 시 제1 내지 제16 마스킹데이터(MD<1:16>) 및 제1 내지 제16 정정신호(CRS<1:16>)에 의해 제1 내지 제16 리드데이터(RD<1:16>)의 에러를 정정하여 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다. 반전제어회로(350)는 내부리드동작 시 제1 내지 제16 정정신호(CRS<1:16>)의 로직레벨에 따라 제1 내지 제16 리드데이터(RD<1:16>)를 반전 또는 비반전하여 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다. 예를 들어, 반전제어회로(350)는 제1 정정신호(CRS<1>)가 로직로우레벨로 생성되는 경우 제1 리드데이터(RD<1>)를 반전하여 제1 전달데이터(TD<1>)를 생성할 수 있다. 반전제어회로(350)는 제1 정정신호(CRS<1>)가 로직하이레벨로 생성되는 경우 제1 리드데이터(RD<1>)를 비 반전하여 제1 전달데이터(TD<1>)를 생성할 수 있다. 반전제어회로(350)는 내부라이트동작 시 제1 내지 제16 마스킹데이터(MD<1:16>)에 의해 제1 내지 제16 리드데이터(RD<1:16>)의 일부비트를 차단하여 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다. 예를 들어, 반전제어회로(350)는 제1 마스킹데이터(MD<1>)가 로직로우레벨로 입력되는 경우 제1 리드데이터(RD<1>)의 입력을 차단할 수 있다.
도 7은 에러제어신호생성회로(330)의 일 실시예에 따른 구성을 도시한 회로도이다. 도 7에 도시된 바와 같이, 에러제어신호생성회로(330)는 인버터들(331<1>,331<3>) 및 낸드게이트들(331<2>,331<4>)로 구현될 수 있다.
에러제어신호생성회로(330)는 초기화동작 시 리셋신호(RST)가 로직로우레벨로 입력되는 경우 로직로우레벨의 에러제어신호(ECCCTR)를 생성할 수 있다. 에러제어신호생성회로(330)는 내부리드동작 시 내부리드커맨드(IRD)가 로직하이레벨로 입력되는 경우 로직로우레벨의 에러제어신호(ECCCTR)를 생성할 수 있다. 에러제어신호생성회로(330)는 스트로브지연신호(STD)가 로직하이레벨로 입력되는 경우 로직하이레벨의 에러제어신호(ECCCTR)를 생성할 수 있다. 에러제어신호생성회로(330)는 내부리드동작 시 로직로우레벨로 디스에이블되고 내부라이트동작 시 로직하이레벨로 인에이블되는 에러제어신호(ECCCTR)를 생성할 수 있다.
도 8은 정정신호생성회로(340)의 일 실시예에 따른 구성을 도시한 회로도이다. 도 8에 도시된 바와 같이, 정정신호생성회로(340)는 제1 내지 제16 정정신호생성회로(341_1,341_2 … 341_16)를 포함할 수 있다.
제1 정정신호생성회로(341_1)는 인버터(341<1>) 및 낸드게이트(341<2>)로 구현될 수 있다. 제1 정정신호생성회로(341_1)는 에러제어신호신호(ECCCTR)가 로직로우레벨로 디스에이블되는 경우 제1 정정제어신호(IC<1>)를 반전 버퍼링하여 제1 정정신호(CRS<1>)를 생성할 수 있다. 제1 정정신호생성회로(341_1)는 에러제어신호신호(ECCCTR)가 로직하이레벨로 인에이블되는 경우 로직하이레벨의 제1 정정신호(CRS<1>)를 생성할 수 있다. 제1 정정신호생성회로(341_1)는 에러제어신호신호(ECCCTR)가 로직하이레벨로 인에이블되는 경우 제1 정정신호(CRS<1>)의 생성을 차단할 수 있다.
여기서, 제2 내지 제16 정정신호생성회로(341_2 … 341_16)는 제1 정정신호생성회로(341_1)와 입출력 신호만 상이할 뿐 동일한 회로로 구현되어 동일한 동작을 수행하므로 구체적인 설명은 생략한다.
도 9는 반전제어회로(350)의 일 실시예에 따른 구성을 도시한 회로도이다. 도 9에 도시된 바와 같이, 반전제어회로(350)는 리드마스킹신호생성회로(351) 및 리드드라이버(352)를 포함할 수 있다.
리드마스킹신호생성회로(351)는 인버터(351<1>)로 구현될 수 있다. 리드인에이블신호생성회로(351)는 제1 내지 제16 마스킹데이터(MD<1:16>)를 반전 버퍼링하여 제1 내지 제16 리드마스킹신호(MDRB<1:16>)를 생성할 수 있다.
리드드라이버(352)는 인버터(352<1>), 멀티플랙서(352<2>), 낸드게이트(352<3>), 노어게이트(352<4>), PMOS 트랜지스터(352<5>) 및 NMOS 트랜지스터(352<6>)로 구현될 수 있다. 인버터(352<1>)는 제1 내지 제16 리드데이터(RD<1:16>)를 반전 버퍼링하여 출력할 수 있다. 멀티플랙서(352<2>)는 제1 내지 제16 정정신호(CRS<1:16>)가 로직로우레벨인 경우 인버터(352<1>)의 출력신호를 출력할 수 있다. 멀티플랙서(352<2>)는 제1 내지 제16 정정신호(CRS<1:16>)가 로직하이레벨인 경우 제1 내지 제16 리드데이터(RD<1:16>)를 출력할 수 있다. 낸드게이트(352<3>)는 제1 내지 제16 마스킹데이터(MD<1:16>)가 로직하이레벨로 입력되고 멀티플랙서(352<2>)의 출력신호가 로직하이레벨인 경우 로직로우레벨의 제1 내지 제16 리드풀업신호(RPU<1:16>)를 생성할 수 있다. 낸드게이트(352<3>)는 제1 내지 제16 마스킹데이터(MD<1:16>)가 로직로우레벨로 입력되는 경우 로직하이레벨의 제1 내지 제16 리드풀업신호(RPU<1:16>)를 생성할 수 있다. 노어게이트(352<4>)는 제1 내지 제16 리드마스킹신호(MDRB<1:16>)가 로직로우레벨로 입력되고 멀티플랙서(352<2>)의 출력신호가 로직로우레벨인 경우 로직하이레벨의 제1 내지 제16 리드풀다운신호(RPD<1:16>)를 생성할 수 있다. 낸드게이트(352<3>)는 제1 내지 제16 리드마스킹신호(MDRB<1:16>)가 로직하이레벨로 입력되는 경우 로직로우레벨의 제1 내지 제16 리드풀다운신호(RPD<1:16>)를 생성할 수 있다. PMOS 트랜지스터(352<5>)는 제1 내지 제16 리드풀업신호(RPU<1:16>)가 로직로우레벨로 입력되는 경우 제1 내지 제16 전달데이터(TD<1:16>)를 전원전압(VDD) 레벨로 구동하여 로직하이레벨의 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다. NMOS 트랜지스터(352<6>)는 제1 내지 제16 리드풀다운신호(RPD<1:16>)가 로직하이레벨로 입력되는 경우 제1 내지 제16 전달데이터(TD<1:16>)를 접지전압(VSS) 레벨로 구동하여 로직로우레벨의 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다.
반전제어회로(350)는 제1 내지 제16 마스킹데이터(MD<1:16>) 중 로직로우레벨의 비트에 대응하는 제1 내지 제16 전달데이터(TD<1:16>)의 생성을 차단할 수 있다. 예를 들어, 반전제어회로(350)는 제1 마스킹데이터(MD<1>)가 로직로우레벨인 경우 제1 전달데이터(TD<1>)의 생성을 차단할 수 있다. 반전제어회로(350)는 제1 내지 제16 마스킹데이터(MD<1:16>) 중 로직하이레벨의 비트에 대응하는 제1 내지 제16 리드데이터(RD<1:16>)를 반전 또는 비반전하여 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다. 예를 들어, 반전제어회로(350)는 제2 마스킹데이터(MD<2>)가 로직하이레벨로 입력되는 경우 제2 리드데이터(RD<2>)를 반전 또는 비반전하여 제2 전달데이터(TD<2>)를 생성할 수 있다. 반전제어회로(350)는 제1 내지 제16 정정신호(CRS<1:16>)의 로직레벨에 따라 제1 내지 제16 리드데이터(RD<1:16>)의 에러를 정정하여 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다. 예를 들어, 반전제어회로(350)는 제1 정정신호(CRS<1>)가 로직로우레벨인 경우 제1 리드데이터(RD<1>)의 에러를 정정하여 제1 전달데이터(TD<1>)를 생성할 수 있다. 제1 리드데이터(RD<1>)의 에러를 정정하는 경우는 제1 리드데이터(RD<1>)의 로직레벨을 반전하여 제1 전달데이터(TD<1>)를 생성하는 동작을 의미한다.
여기서, 도 9에 도시된 반전제어회로(350)는 설명의 편의상 하나의 회로로 도시되어 있지만 제1 내지 제16 전달데이터(TD<1:16>)의 비트 수인 16개의 회로로 구현될 수 있다.
도 10은 라이트제어회로(253)의 일 실시예에 따른 구성을 도시한 블럭도이다. 도 10에 도시된 바와 같이, 라이트제어회로(253)는 라이트데이터생성회로(360) 및 라이트패러티생성회로(370)를 포함할 수 있다.
라이트데이터생성회로(360)는 내부라이트동작 시 제1 내지 제16 마스킹데이터(MD<1:16>), 제1 내지 제16 입력데이터(IND<1:16>) 및 제1 내지 제16 전달데이터(TD<1:16>)로부터 제1 내지 제16 라이트데이터(WD<1:16>)를 생성할 수 있다.
라이트패러티생성회로(370)는 내부리드동작 시 개시신호(STR)가 인에이블되는 경우 제1 내지 제16 전달데이터(TD<1:16>)에 대한 ECC 인코딩동작을 수행하여 제1 내지 제4 라이트패러티(WP<1:4>)를 생성할 수 있다.
도 11은 라이트데이터생성회로(360)의 일 실시예에 따른 구성을 도시한 블럭도이다. 도 11에 도시된 바와 같이, 라이트데이터생성회로(360)는 라이트마스킹신호생성회로(361), 전달데이터구동회로(362) 및 라이트데이터출력회로(363)를 포함할 수 있다.
라이트마스킹신호생성회로(361)는 인버터(361<1>)로 구현될 수 있다. 라이트마스킹신호생성회로(361)는 제1 내지 제16 마스킹데이터(MD<1:16>)를 반전 버퍼링하여 제1 내지 제16 라이트마스킹신호(MDWB<1:16>)를 생성할 수 있다.
전달데이터구동회로(362)는 낸드게이트(362<1>), 노어게이트(362<2>), PMOS 트랜지스터(362<3>) 및 NMOS 트랜지스터(362<4>)로 구현될 수 있다. 낸드게이트(362<1>)는 제1 내지 제16 라이트마스킹신호(MDWB<1:16>)가 로직하이레벨로 입력되고 제1 내지 제16 입력데이터(IND<1:16>)가 로직하이레벨인 경우 로직로우레벨의 제1 내지 제16 라이트풀업신호(WPU<1:16>)를 생성할 수 있다. 낸드게이트(362<1>)는 제1 내지 제16 라이트마스킹신호(MDWB<1:16>)가 로직로우레벨로 입력되는 경우 로직하이레벨의 제1 내지 제16 라이트풀업신호(WPU<1:16>)를 생성할 수 있다. 노어게이트(362<2>)는 제1 내지 제16 마스킹데이터(MD<1:16>)가 로직로우레벨로 입력되고 제1 내지 제16 입력데이터(IND<1:16>)가 로직로우레벨인 경우 로직하이레벨의 제1 내지 제16 라이트풀다운신호(WPD<1:16>)를 생성할 수 있다. 노어게이트(362<2>)는 제1 내지 제16 마스킹데이터(MD<1:16>)가 로직하이레벨로 입력되는 경우 로직로우레벨의 제1 내지 제16 라이트풀다운신호(WPD<1:16>)를 생성할 수 있다. PMOS 트랜지스터(362<3>)는 제1 내지 제16 라이트풀업신호(WPU<1:16>)가 로직로우레벨로 입력되는 경우 로직하이레벨의 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다. NMOS 트랜지스터(362<4>)는 제1 내지 제16 라이트풀다운신호(WPD<1:16>)가 로직하이레벨로 입력되는 경우 로직로우레벨의 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다.
전달데이터구동회로(362)는 제1 내지 제16 마스킹데이터(MD<1:16>) 중 로직로우레벨의 비트에 대응하는 제1 내지 제16 입력데이터(IND<1:16>)를 버퍼링하여 제1 내지 제16 전달데이터(TD<1:16>)를 구동할 수 있다. 예를 들어, 전달데이터구동회로(362)는 제1 마스킹데이터(MD<1>)가 로직로우레벨인 경우 제1 입력데이터(IND<1>)를 버퍼링하여 제1 전달데이터(TD<1>)를 구동할 수 있다. 전달데이터구동회로(362)는 제1 내지 제16 마스킹데이터(MD<1:16>) 중 로직하이레벨의 비트에 대응하는 제1 내지 제16 전달데이터(TD<1:16>)의 구동을 차단할 수 있다. 예를 들어, 전달데이터구동회로(362)는 제2 마스킹데이터(MD<2>)가 로직하이레벨로 입력되는 경우 제2 입력데이터(IND<2>)의 입력을 차단하여 제2 전달데이터(TD<2>)의 구동을 차단할 수 있다.
라이트데이터출력회로(363)는 인버터들(363<1>,363<2>,363<3>)로 구현될 수 있다. 라이트데이터출력회로(363)는 제1 내지 제16 전달데이터(TD<1:16>)를 래치할 수 있다. 라이트데이터출력회로(363)는 래치된 제1 내지 제16 전달데이터(TD<1:16>)를 버퍼링하여 제1 내지 제16 라이트데이터(WD<1:16>)를 생성할 수 있다.
여기서, 도 11에 도시된 라이트데이터생성회로(360)는 설명의 편의상 하나의 회로로 도시되어 있지만 제1 내지 제16 라이트데이터(WD<1:16>)의 비트 수인 16개의 회로로 구현될 수 있다.
도 12는 라이트패러티생성회로(370)의 일 실시예에 따른 구성을 도시한 블럭도이다. 도 12에 도시된 바와 같이, 라이트패러티생성회로(370)는 ECC 인코더(371), 지연회로(372), 래치회로(373) 및 라이트패러티전달회로(374)를 포함할 수 있다.
ECC 인코더(371)는 인에이블신호(EN)의 인에이블 구간 동안 제1 내지 제16 전달데이터(TD<1:16>)에 대한 ECC 인코딩동작을 수행하여 제1 내지 제4 전달패러티(TP<1:4>)를 생성할 수 있다. ECC 인코더(371)는 인에이블신호(EN)의 인에이블 구간 동안 오류정정코드(Error Correction Code, ECC)를 사용하여 제1 내지 제16 전달데이터(TD<1:16>)로부터 제1 내지 제4 전달패러티(TP<1:4>)를 생성할 수 있다. 인에이블신호(EN)는 데이터마스킹동작 시 인에이블되는 신호로 설정될 수 있다.
지연회로(372)는 개시신호(STR)를 ECC 인코딩동작 시간만큼 지연하여 스트로브지연신호(STD)를 생성할 수 있다. 지연회로(372)는 ECC 인코딩동작 시간과 동일한 지연량을 갖는 리플리카 지연회로로 구현될 수 있다.
래치회로(373)는 스트로브지연신호(STD)가 인에이블되는 경우 제1 내지 제4 전달패러티(TP<1:4>)를 래치할 수 있다. 래치회로(373)는 스트로브지연신호(STD)가 인에이블되는 경우 래치된 제1 내지 제4 전달패러티(TP<1:4>)를 제1 내지 제4 래치패러티(LP<1:4>)로 출력할 수 있다. 래치회로(373)는 ECC 인코딩 시간만큼 개시신호(STR)가 지연되어 생성되는 스트로브지연신호(STD)가 인에이블되는 시점에 제1 내지 제4 전달패러티(TP<1:4>)를 래치하여 제1 내지 제4 래치패러티(LP<1:4>)를 생성할 수 있다.
라이트패러티전달회로(374)는 제1 내지 제4 래치패러티(LP<1:4>)로부터 제1 내지 제4 라이트패러티(WP<1:4>)를 생성할 수 있다. 라이트패러티전달회로(374)는 일반적인 드라이버로 구현되어 제1 내지 제4 래치패러티(LP<1:4>)로부터 제1 내지 제4 라이트패러티(WP<1:4>)를 생성할 수 있다.
도 13은 지연회로(372)의 일 실시예에 따른 구성을 도시한 회로도이다. 도 13에 도시된 바와 같이, 지연회로(372)는 직렬로 연결되는 다수의 인버터들(372<1>,372<2>,372<3>,372<4>)로 구현될 수 있다.
지연회로(372)는 앞서 설명한 ECC 인코딩동작의 시간만큼 개시신호(STR)를 지연하여 스트로브지연신호(STD)를 생성할 수 있다. 지연회로(372)는 4개의 인버터로 구현되어 있지만 실시예에 따라 ECC 인코딩동작 시간과 동일한 지연량을 갖도록 인버터들의 수가 조절될 수 있다. 지연회로(372)는 인버터들의 수에 따라 지연량이 조절될 수 있다.
도 14를 참고하여 본 발명의 일 실시예에 따른 데이터마스킹동작 중 내부리드동작을 설명하면 다음과 같다.
리드라이트제어회로(210)는 클럭(CLK)에 동기 되어 커맨드(RMW)로부터 로직하이레벨의 내부리드커맨드(IRD) 및 어드레스(IADD)를 생성한다.
입력데이터생성회로(220)는 클럭(CLK)에 동기 되어 제1 내지 제16 외부데이터(ED<1:16>)를 토대로 제1 내지 제16 입력데이터(IND<1:16>)를 생성한다.
마스킹데이터생성회로(230)는 클럭(CLK)에 동기 되어 제1 내지 제16 마스킹신호(MS<1:16>)를 토대로 제1 내지 제16 마스킹데이터(MD<1:16>)를 생성한다.
코어회로(240)는 내부리드커맨드(IRD)가 입력되고 어드레스(IADD)에 의해 데이터저장영역(241)에 저장된 제1 내지 제16 리드데이터(RD<1:16>)와 패러티영역(242)에 저장된 제1 내지 제4 리드패러티(RP<1:4>)를 출력한다.
에러제어회로(251)는 제1 내지 제4 리드패러티(RP<1:4>)로부터 제1 내지 제16 리드데이터(RD<1:16>)에 포함된 에러를 정정하기 위한 제1 내지 제16 정정제어신호(IC<1:16>)를 생성한다.
데이터처리회로(252)는 내부리드커맨드(IRD)로부터 로직로우레벨의 에러제어신호(ECCCTR)를 생성한다. 데이터처리회로(252)는 에러제어신호(ECCCTR)가 로직로우레벨로 디스에이블되는 구간 동안 제1 내지 제16 정정제어신호(IC<1:16>)에 의해 제1 내지 제16 리드데이터(RD<1:16>)의 에러를 정정한다. 데이터처리회로(252)는 제1 내지 제16 마스킹데이터(MD<1:16>)와 에러가 정정된 제1 내지 제16 리드데이터(RD<1:16>)로부터 제1 내지 제16 전달데이터(TD<1:16>)를 생성한다.
라이트제어회로(253)는 제1 내지 제16 전달데이터(TD<1:16>)에 대한 ECC 인코딩동작을 수행하여 제1 내지 제4 라이트패러티(WP<1:4>)를 생성한다.
즉, 본 발명의 일 실시예에 따른 전자장치(120)는 데이터마스킹동작 중 내부리드동작 시 제1 내지 제16 마스킹데이터(MD<1:16>)와 에러가 정정된 제1 내지 제16 리드데이터(RD<1:16>)로부터 제1 내지 제4 라이트패러티(WP<1:4>)를 생성한다.
도 15를 참고하여 본 발명의 일 실시예에 따른 데이터마스킹동작 중 내부라이트동작을 설명하면 다음과 같다.
리드라이트제어회로(210)는 클럭(CLK)에 동기 되어 커맨드(RMW)로부터 내부리드커맨드(IRD)를 생성한 이후 로직하이레벨의 내부라이트커맨드(IWT) 및 어드레스(IADD)를 생성한다.
입력데이터생성회로(220)는 클럭(CLK)에 동기 되어 제1 내지 제16 외부데이터(ED<1:16>)를 토대로 제1 내지 제16 입력데이터(IND<1:16>)를 생성한다.
마스킹데이터생성회로(230)는 클럭(CLK)에 동기 되어 제1 내지 제16 마스킹신호(MS<1:16>)를 토대로 제1 내지 제16 마스킹데이터(MD<1:16>)를 생성한다.
데이터처리회로(252)는 내부라이트동작 시 로직하이레벨의 에러제어신호(ECCCTR)를 생성한다. 데이터처리회로(252)는 로직하이레벨의 에러제어신호(ECCCTR)에 의해 에러가 정정되지 않은 제1 내지 제16 리드데이터(RD<1:16>)와 제1 내지 제16 마스킹데이터(MD<1:16>)로부터 제1 내지 제16 전달데이터(TD<1:16>)를 생성한다.
라이트제어회로(253)는 제1 내지 제16 전달데이터(TD<1:16>), 제1 내지 제16 마스킹데이터(MD<1:16>)와 제1 내지 제16 입력데이터(IND<1:16>)로부터 제1 내지 제16 라이트데이터(WD<1:16>)를 생성한다.
코어회로(240)는 내부라이트커맨드(IWT)가 입력되고 어드레스(IADD)에 의해 제1 내지 제16 라이트데이터(WT<1:16>)를 데이터저장영역(241)에 저장한다. 코어회로(240)는 내부라이트커맨드(IWT)가 입력되고 어드레스(IADD)에 의해 내부리드동작 시 생성된 제1 내지 제4 라이트패러티(WP<1:4>)를 패러티영역(242)에 저장한다.
즉, 본 발명의 일 실시예에 따른 전자장치(120)는 데이터마스킹동작 중 내부라이트동작 시 에러가 정정되지 않은 제1 내지 제16 리드데이터(RD<1:16>)로부터 제1 내지 제16 전달데이터(TD<1:16>)를 생성할 수 있다. 전자장치(120)는 데이터마스킹동작 중 내부라이트동작 시 제1 내지 제16 전달데이터(TD<1:16>), 제1 내지 제16 마스킹데이터(MD<1:16>)와 제1 내지 제16 입력데이터(IND<1:16>)로부터 생성되는 제1 내지 제16 라이트데이터(WD<1:16>)를 저장할 수 있다. 전자장치(120)는 데이터마스킹동작 중 내부라이트동작 시 내부리드동작 시 생성된 제1 내지 제4 라이트패러티(WP<1:4>)를 저장할 수 있다.
도 16을 참고하여 본 발명의 일 실시예의 전자시스템(100)의 데이터마스킹동작을 예를 들어 설명하되, 라이트백디스에이블동작을 설명하면 다음과 같다.
T1 시점에, 컨트롤러(110)는 데이터마스킹동작을 수행하기 위한 클럭(CLK) 및 커맨드(RMW)를 전자장치(120)로 출력한다.
리드라이트제어회로(210)는 클럭(CLK)에 동기 되어 커맨드(RMW)수신한다.
T2 시점에, 리드라이트제어회로(210)는 T1 시점에 입력된 커맨드(RMW)로부터 로직하이레벨의 내부리드커맨드(IRD) 및 어드레스(IADD)를 생성한다.
데이터처리회로(252)는 로직하이레벨의 내부리드커맨드(IRD)로부터 로직로우레벨로 디스에이블되는 에러제어신호(ECCCTR)를 생성한다.
T3 시점에, 코어회로(240)는 T2 시점에 입력되는 내부리드커맨드(IRD) 및 어드레스(IADD)에 의해 데이터영역(241) 내부에 저장된 제1 내지 제16 리드데이터(RD<1:16>)를 출력한다. 코어회로(240)는 T2 시점에 입력되는 내부리드커맨드(IRD) 및 어드레스(IADD)에 의해 패러티영역(242) 내부에 저장된 제1 및 제4 리드패러티(RP<1:4>)를 출력한다.
T4 시점에, 입력데이터생성회로(220)는 클럭(CLK)에 동기 되어 제1 내지 제16 외부데이터(ED<1:16>)를 토대로 제1 내지 제16 입력데이터(IND<1:16>)를 생성한다.
마스킹데이터생성회로(230)는 클럭(CLK)에 동기 되어 제1 내지 제16 마스킹신호(MS<1:16>)를 토대로 제1 내지 제16 마스킹데이터(MD<1:16>)를 생성한다. 이때, 제1 내지 제16 마스킹신호(MS<1:16>) 중 로직하이레벨의 비트는 제1 내지 제16 입력데이터(IND<1:16>)의 입력을 차단하기 위한 비트로 설정될 수 있다.
에러제어회로(251)는 제1 내지 제4 리드패러티(RP<1:4>)로부터 제1 내지 제16 리드데이터(RD<1:16>)에 포함된 에러를 정정하기 위한 제1 내지 제16 정정제어신호(IC<1:16>)를 생성한다.
T5 시점에, 데이터처리회로(252)는 에러제어신호(ECCCTR)가 로직로우레벨로 디스에이블되므로 제1 내지 제16 정정제어신호(IC<1:16>)에 의해 제1 내지 제16 리드데이터(RD<1:16>)의 에러를 정정한다. 데이터처리회로(252)는 제1 내지 제16 마스킹데이터(MD<1:16>)와 에러가 정정된 제1 내지 제16 리드데이터(RD<1:16>)로부터 제1 내지 제16 전달데이터(TD<1:16>)를 생성한다. 라이트제어회로(253)는 제1 내지 제16 전달데이터(TD<1:16>)에 대한 ECC 인코딩동작을 수행하여 제1 내지 제4 라이트패러티(WP<1:4>)를 생성한다.
T6 시점에, 데이터처리회로(252)는 내부라이트동작 시 로직하이레벨로 인에이블되는 에러제어신호(ECCCTR)를 생성한다.
데이터처리회로(252)는 에러제어신호(ECCCTR)가 로직하이레벨로 인에이블되므로 제1 내지 제16 리드데이터(RD<1:16>)의 에러를 정정하지 않는다. 데이터처리회로(252)는 제1 내지 제16 마스킹데이터(MD<1:16>)와 에러가 정정되지 않은 제1 내지 제16 리드데이터(RD<1:16>)로부터 제1 내지 제16 전달데이터(TD<1:16>)를 생성한다. 즉, 에러가 정정되지 않은 제1 내지 제16 리드데이터(RD<1:16>)로부터 생성되는 제1 내지 제16 전달데이터(TD<1:16>)는 T5 시점에 에러가 정정된 제1 내지 제16 리드데이터(RD<1:16>)로부터 생성되는 제1 내지 제16 전달데이터(TD<1:16>)와 상이한 로직레벨 조합으로 생성될 수 있다.
라이트제어회로(253)는 에러가 정정되지 않은 제1 내지 제16 리드데이터(RD<1:16>)로부터 생성되는 제1 내지 제16 전달데이터(TD<1:16>)와 제1 내지 제16 마스킹데이터(MD<1:16>) 및 제1 내지 제16 입력데이터(IND<1:16>)로부터 제1 내지 제16 라이트데이터(WD<1:16>)를 생성한다.
T7 시점에, 리드라이트제어회로(210)는 T1 시점에 입력된 커맨드(RMW)로부터 로직하이레벨의 내부라이트커맨드(IWT) 및 어드레스(IADD)를 생성한다.
코어회로(240)는 내부라이트커맨드(IWT) 및 어드레스(IADD)에 의해 제1 내지 제16 라이트데이터(WD<1:16>)를 데이터영역(241)에 저장한다. 코어회로(240)는 내부라이트커맨드(IWT) 및 어드레스(IADD)에 의해 제1 및 제4 라이트패러티(WP<1:4>)를 패러티영역(242)에 저장한다.
이와 같은 본 발명의 일 실시예에 따른 전자시스템(100)은 내부리드동작에서 에러가 정정된 리드데이터를 사용하여 라이트패러티를 생성하고, 내부라이트동작에서 에러가 정정되지 않은 리드데이터로부터 생성되는 라이트데이터와 라이트패러티를 재 저장하는 라이트백디스에이블동작을 지원할 수 있다. 또한, 본 발명의 일 실시예에 따른 전자시스템(100)은 내부리드동작에서 에러가 정정된 리드데이터를 사용하여 라이트패러티를 생성하고, 내부라이트동작에서 에러가 정정되지 않은 리드데이터로부터 생성되는 라이트데이터와 라이트패러티를 재 저장함으로써 데이터영역에 저장되는 데이터의 신뢰성을 확보할 수 있다.
도 17은 본 발명의 일 실시예에 따른 전자시스템(1000)의 일 실시예에 따른 구성을 도시한 블럭도이다. 도 17에 도시된 바와 같이, 전자시스템(1000)은 호스트(1100) 및 반도체시스템(1200)을 포함할 수 있다.
호스트(1100) 및 반도체시스템(1200)은 인터페이스 프로토콜을 사용하여 상호 신호들을 전송할 수 있다. 호스트(1100) 및 반도체시스템(1200) 사이에 사용되는 인터페이스 프로토콜에는 MMC(Multi-Media Card), ESDI(Enhanced Small Disk Interface), IDE(Integrated Drive Electronics), PCI-E(Peripheral Component Interconnect - Express), ATA(Advanced Technology Attachment), SATA(Serial ATA), PATA(Parallel ATA), SAS(serial attached SCSI), USB(Universal Serial Bus) 등이 있다.
반도체시스템(1200)은 컨트롤러(1300)와 반도체장치들(1400(K:1))을 포함할 수 있다. 컨트롤러(1300)는 반도체장치들(1400(K:1))이 데이터마스킹동작을 수행하도록 반도체장치들(1400(K:1))을 제어할 수 있다. 반도체장치들(1400(K:1)) 각각은 내부리드동작에서 에러가 정정된 리드데이터를 사용하여 라이트패러티를 생성하고, 내부라이트동작에서 에러가 정정되지 않은 리드데이터로부터 생성되는 라이트데이터와 라이트패러티를 재 저장하는 라이트백디스에이블동작을 지원할 수 있다. 또한, 반도체장치들(1400(K:1)) 각각은 내데이터마스킹동작 시 내부리드동작에서 리드데이터의 에러를 정정한 이후 에러가 정정된 리드데이터를 사용하여 라이트패러티를 생성하고, 내부라이트동작에서 라이트데이터와 에러가 정정된 리드데이터로부터 생성되는 라이트패러티를 재 저장함으로써 데이터영역에 저장되는 데이터의 신뢰성을 확보할 수 있다.
컨트롤러(1300)는 도 1에 도시된 컨트롤러(110)로 구현될 수 있다. 반도체장치들(1400(K:1)) 각각은 도 1 및 도 2에 도시된 전자장치(120)로 구현될 수 있다. 실시예에 따라서 반도체장치들(1400(K:1))은 DRAM(dynamic random access memory), PRAM(Phase change Random Access Memory), RRAM(Resistive Random Access Memory), MRAM(Magnetic Random Access Memory) 및 FRAM(Ferroelectric Random Access Memory) 중 하나로 구현될 수 있다.
100. 전자시스템 110. 컨트롤러
120. 전자장치 210. 리드라이트제어회로
220. 입력데이터생성회로 230. 마스킹데이터생성회로
240. 코어회로 241. 데이터영역
242. 패러티영역 250. 에러정정회로
251. 에러제어회로 252. 데이터처리회로
253. 라이트제어회로 310. 신드롬생성회로
311. 패러티생성회로 312. 로직회로
320. ECC 디코더 330. 에러제어신호생성회로
340. 정정신호생성회로 350. 반전제어회로
341_1 ~ 341-16: 제1 내지 제16 정정신호생성회로
351. 리드마스킹신호생성회로 352. 리드드라이버
360. 라이트데이터생성회로 361. 라이트마스킹신호생성회로
362. 라이트드라이버 363. 라이트데이터출력회리ㅗ
370. 라이트패러티생성회로 371. ECC 인코더
372. 지연회로 373. 래치회로
374. 라이트패러티전달회로

Claims (21)

  1. 데이터마스킹동작 시 리드데이터 및 리드패러티를 출력한 이후 라이트데이터 및 라이트패러티를 저장하는 코어회로; 및
    상기 리드패러티를 토대로 상기 리드데이터에 포함된 에러를 정정하고, 에러가 정정된 상기 리드데이터와 입력데이터 및 마스킹데이터로부터 상기 라이트패러티를 생성하며, 에러가 정정되지 않은 상기 리드데이터와 상기 입력데이터 및 상기 마스킹데이터로부터 상기 라이트데이터를 생성하는 에러정정회로를 포함하는 전자장치.
  2. 제 1 항에 있어서,
    상기 에러정정회로는 내부리드동작 시 에러가 정정된 상기 리드데이터에 포함된 비트 중 상기 마스킹데이터의 비트에 의해 차단된 비트를 상기 입력데이터의 비트로 대체하여 생성된 전달데이터로부터 상기 라이트패러티를 생성하고,
    상기 에러정정회로는 내부라이트동작 시 에러가 정정되지 않은 상기 리드데이터에 포함된 비트 중 상기 마스킹데이터의 비트에 의해 차단된 비트를 상기 입력데이터의 비트로 대체하여 생성된 상기 전달데이터로부터 상기 라이트데이터를 생성하는 전자장치.
  3. 제 1 항에 있어서, 상기 에러정정회로는
    상기 리드패러티로부터 상기 리드데이터에 포함된 에러를 정정하기 위한 정정제어신호를 생성하는 에러제어회로;
    상기 내부리드동작 시 에러제어신호 및 상기 정정제어신호에 의해 상기 리드데이터의 에러를 정정하고, 상기 마스킹데이터와 에러가 정정된 상기 리드데이터로부터 전달데이터를 생성하며, 내부라이트동작 시 상기 마스킹데이터와 에러가 정정되지 않은 상기 리드데이터로부터 상기 전달데이터를 생성하는 데이터처리회로; 및
    상기 전달데이터에 대한 ECC 인코딩동작을 수행하여 상기 라이트패러티를 생성하고, 상기 마스킹데이터, 상기 입력데이터 및 상기 전달데이터로부터 상기 라이트데이터를 생성하는 라이트제어회로를 포함하는 전자장치.
  4. 제 3 항에 있어서, 상기 에러제어회로는
    상기 리드데이터와 상기 리드패러티로부터 상기 리드데이터에 포함된 에러정보를 포함하는 신드롬을 생성하는 신드롬생성회로; 및
    상기 신드롬에 대한 상기 ECC 디코딩동작을 수행하여 상기 정정제어신호를 생성하는 ECC 디코더를 포함하는 전자장치.
  5. 제 4 항에 있어서, 상기 신드롬생성회로는
    상기 데이터마스킹동작 시 인에이블되는 인에이블신호가 인에이블되는 경우 상기 리드데이터에 대한 에러정보를 포함하는 패러티를 생성하는 패러티생성회로; 및
    상기 패러티와 상기 리드패러티를 비교하여 상기 신드롬을 생성하는 로직회로를 포함하는 전자장치.
  6. 제 3 항에 있어서, 상기 데이터처리회로는
    내부리드커맨드에 의해 디스에이블되고 스트로브지연신호에 의해 인에이블되는 상기 에러제어신호를 생성하는 에러제어신호생성회로;
    상기 에러제어신호가 디스에이블되는 구간 동안 상기 정정제어신호를 토대로 정정신호를 생성하는 정정신호생성회로; 및
    상기 마스킹데이터 및 상기 리드데이터를 수신하고, 상기 정정신호에 의해 상기 리드데이터의 에러를 정정하여 상기 전달데이터를 생성하는 반전제어회로를 포함하는 전자장치.
  7. 제 6 항에 있어서,
    상기 정정신호생성회로는 상기 에러제어신호가 인에이블되는 구간 동안 상기 정정신호의 생성을 차단하는 전자장치.
  8. 제 6 항에 있어서, 상기 반전제어회로는
    상기 마스킹데이터를 반전 버퍼링하여 리드마스킹신호를 생성하는 리드마스킹신호생성회로; 및
    상기 마스킹데이터가 인에이블되는 경우 상기 정정신호에 의해 상기 리드데이터를 반전 또는 비반전하여 상기 전달데이터를 생성하고, 상기 마스킹데이터가 디스에이블되는 경우 상기 전달데이터의 생성을 차단하는 리드드라이버를 포함하는 전자장치.
  9. 제 3 항에 있어서, 상기 라이트제어회로는
    상기 마스킹데이터, 상기 입력데이터 및 상기 전달데이터로부터 상기 라이트데이터를 생성하는 라이트데이터생성회로; 및
    개시신호가 입력된 이후 상기 전달데이터에 대한 상기 ECC 인코딩동작을 수행하여 상기 라이트패러티를 생성하는 라이트패러티생성회로를 포함하는 전자장치.
  10. 제 9 항에 있어서, 상기 라이트데이터생성회로는
    상기 마스킹데이터를 반전 버퍼링하여 라이트마스킹신호를 생성하는 라이트마스킹신호생성회로; 및
    상기 마스킹데이터가 디스에이블되는 경우 상기 입력데이터를 버퍼링하여 상기 전달데이터를 구동하고, 상기 마스킹데이터가 인에이블되는 경우 상기 전달데이터의 구동을 차단하는 라이트드라이버; 및
    상기 전달데이터를 래치하고 래치된 상기 전달데이터를 버퍼링하여 상기 라이트데이터를 생성하는 라이트데이터출력회로를 포함하는 전자장치.
  11. 제 9 항에 있어서, 상기 라이트패러티생성회로는
    상기 전달데이터에 대한 상기 ECC 인코딩동작을 수행하여 전달패러티를 생성하는 ECC 인코더;
    상기 개시신호를 상기 ECC 인코딩동작 시간만큼 지연하여 상기 스트로브지연신호를 생성하는 지연회로;
    상기 스트로브지연신호가 인에이블되는 경우 상기 전달패러티를 래치하여 래치패러티를 생성하는 래치회로; 및
    상기 래치패러티로부터 상기 라이트패러티를 생성하는 라이트패러티전달회로를 포함하는 전자장치.
  12. 외부에서 입력되는 마스킹신호로부터 마스킹데이터를 생성하는 마스킹데이터생성회로;
    내부리드동작 시 생성되는 리드패러티로부터 리드데이터의 에러를 정정하기 위한 정정제어신호를 생성하는 에러제어회로; 및
    상기 내부리드동작 시 에러제어신호 및 상기 정정제어신호에 의해 상기 리드데이터의 에러를 정정하고, 상기 마스킹데이터와 에러가 정정된 상기 리드데이터로부터 전달데이터를 생성하며, 내부라이트동작 시 상기 마스킹데이터와 에러가 정정되지 않은 상기 리드데이터로부터 상기 전달데이터를 생성하는 데이터처리회로를 포함하는 전자장치.
  13. 제 12 항에 있어서, 상기 에러제어회로는
    상기 리드데이터와 상기 리드패러티로부터 상기 리드데이터에 포함된 에러정보를 포함하는 신드롬을 생성하는 신드롬생성회로; 및
    상기 신드롬에 대한 상기 ECC 디코딩동작을 수행하여 상기 정정제어신호를 생성하는 ECC 디코더를 포함하는 전자장치.
  14. 제 13 항에 있어서, 상기 신드롬생성회로는
    데이터마스킹동작 시 인에이블되는 인에이블신호가 인에이블되는 경우 상기 리드데이터에 대한 에러정보를 포함하는 패러티를 생성하는 패러티생성회로; 및
    상기 패러티와 상기 리드패러티를 비교하여 신드롬을 생성하는 로직회로를 포함하는 전자장치.
  15. 제 13 항에 있어서, 상기 데이터처리회로는
    상기 내부리드커맨드에 의해 디스에이블되고 스트로브지연신호에 의해 인에이블되는 상기 에러제어신호를 생성하는 에러제어신호생성회로;
    상기 에러제어신호가 디스에이블되는 구간 동안 상기 정정제어신호를 토대로 정정신호를 생성하는 정정신호생성회로; 및
    상기 마스킹데이터 및 상기 리드데이터를 수신하고, 상기 정정신호에 의해 상기 리드데이터의 에러를 정정하여 상기 전달데이터를 생성하는 반전제어회로를 포함하는 전자장치.
  16. 제 15 항에 있어서,
    상기 정정신호생성회로는 상기 에러제어신호가 인에이블되는 구간 동안 상기 정정신호의 생성을 차단하는 전자장치.
  17. 제 15 항에 있어서, 상기 반전제어회로는
    상기 마스킹데이터를 반전 버퍼링하여 리드마스킹신호를 생성하는 리드마스킹신호생성회로; 및
    상기 마스킹데이터가 인에이블되는 경우 상기 정정신호에 의해 상기 리드데이터를 반전 또는 비반전하여 상기 전달데이터를 생성하고, 상기 마스킹데이터가 디스에이블되는 경우 상기 전달데이터의 생성을 차단하는 리드드라이버를 포함하는 전자장치.
  18. 제 12 항에 있어서,
    외부에서 입력되는 외부데이터로부터 입력데이터를 생성하는 입력데이터생성회로; 및
    상기 전달데이터에 대한 ECC 인코딩동작을 수행하여 라이트패러티를 생성하고, 상기 마스킹데이터, 상기 입력데이터 및 상기 전달데이터로부터 상기 라이트데이터를 생성하는 라이트제어회로를 더 포함하는 전자장치.
  19. 제 18 항에 있어서, 상기 라이트제어회로는
    상기 마스킹데이터, 상기 입력데이터 및 상기 전달데이터로부터 상기 라이트데이터를 생성하는 라이트데이터생성회로; 및
    개시신호가 입력된 이후 상기 전달데이터에 대한 상기 ECC 인코딩동작을 수행하여 상기 라이트패러티를 생성하는 라이트패러티생성회로를 포함하는 전자장치.
  20. 제 19 항에 있어서, 상기 라이트데이터생성회로는
    상기 마스킹데이터를 반전 버퍼링하여 라이트마스킹신호를 생성하는 라이트마스킹신호생성회로; 및
    상기 마스킹데이터가 디스에이블되는 경우 상기 입력데이터를 버퍼링하여 상기 전달데이터를 구동하고, 상기 마스킹데이터가 인에이블되는 경우 상기 전달데이터의 구동을 차단하는 라이트드라이버; 및
    상기 전달데이터를 래치하고 래치된 상기 전달데이터를 버퍼링하여 상기 라이트데이터를 생성하는 라이트데이터출력회로를 포함하는 전자장치.
  21. 제 19 항에 있어서, 상기 라이트패러티생성회로는
    상기 전달데이터에 대한 상기 ECC 인코딩동작을 수행하여 전달패러티를 생성하는 ECC 인코더;
    상기 개시신호를 상기 ECC 인코딩동작 시간만큼 지연하여 상기 스트로브지연신호를 생성하는 지연회로;
    상기 스트로브지연신호가 인에이블되는 경우 상기 전달패러티를 래치하여 래치패러티를 생성하는 래치회로; 및
    상기 래치패러티로부터 상기 라이트패러티를 생성하는 라이트패러티전달회로를 포함하는 전자장치.
KR1020210022194A 2021-02-18 2021-02-18 데이터마스킹동작을 수행하는 전자장치 KR20220118265A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210022194A KR20220118265A (ko) 2021-02-18 2021-02-18 데이터마스킹동작을 수행하는 전자장치
CN202110641534.2A CN114974392A (zh) 2021-02-18 2021-06-09 用于执行数据掩蔽操作的电子器件
US17/370,726 US11514998B2 (en) 2021-02-18 2021-07-08 Electronic device for performing data masking operation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210022194A KR20220118265A (ko) 2021-02-18 2021-02-18 데이터마스킹동작을 수행하는 전자장치

Publications (1)

Publication Number Publication Date
KR20220118265A true KR20220118265A (ko) 2022-08-25

Family

ID=82801371

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210022194A KR20220118265A (ko) 2021-02-18 2021-02-18 데이터마스킹동작을 수행하는 전자장치

Country Status (3)

Country Link
US (1) US11514998B2 (ko)
KR (1) KR20220118265A (ko)
CN (1) CN114974392A (ko)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102142588B1 (ko) 2012-04-12 2020-08-07 삼성전자 주식회사 메모리 장치, 메모리 시스템 및 이의 동작 방법
KR20170112630A (ko) * 2016-04-01 2017-10-12 에스케이하이닉스 주식회사 반도체장치 및 반도체시스템
KR102358321B1 (ko) * 2017-04-10 2022-02-08 에스케이하이닉스 주식회사 메모리 시스템, 메모리 장치 및 그의 동작 방법
KR20190031787A (ko) * 2017-09-18 2019-03-27 삼성전자주식회사 병렬 리드-모디파이-라이트 동작을 수행하는 메모리 장치
KR20220022269A (ko) * 2020-08-18 2022-02-25 에스케이하이닉스 주식회사 메모리 장치 및 그의 테스트 방법

Also Published As

Publication number Publication date
CN114974392A (zh) 2022-08-30
US20220262449A1 (en) 2022-08-18
US11514998B2 (en) 2022-11-29

Similar Documents

Publication Publication Date Title
US10613928B2 (en) Semiconductor devices and semiconductor systems including the same
US9823956B2 (en) Data I/O circuits and semiconductor systems including the same
US10379947B2 (en) Semiconductor device
KR20180119072A (ko) 반도체장치
US10419025B2 (en) Semiconductor device
US11031064B1 (en) Semiconductor devices
US10289485B2 (en) Integrated circuit
US10319455B2 (en) Semiconductor device
KR20190072144A (ko) 에러정정방법 및 이를 이용한 반도체장치
US11342942B2 (en) Electronic device for performing error correction operation and error check operation
US10552277B2 (en) Electronic devices
US11514998B2 (en) Electronic device for performing data masking operation
US10379786B2 (en) Semiconductor devices
US11599413B2 (en) Electronic system including error calculation circuit for performing error correction operation
US11475971B1 (en) Semiconductor device and semiconductor system for testing error correction circuit
US11048602B2 (en) Electronic devices
US11309046B2 (en) Semiconductor devices and semiconductor systems including the same
US20230282300A1 (en) Semiconductor device and semiconductor system
US11176976B2 (en) Systems for performing a read-modify-write operation
US11221900B2 (en) Semiconductor device for performing an error check operation
US20230153194A1 (en) Semiconductor device
KR20170140933A (ko) 비교회로 및 반도체장치
KR20170140931A (ko) 반도체장치 및 반도체시스템