KR101431930B1 - 반도체 장치 및 메모리 시스템 - Google Patents

반도체 장치 및 메모리 시스템 Download PDF

Info

Publication number
KR101431930B1
KR101431930B1 KR1020127014714A KR20127014714A KR101431930B1 KR 101431930 B1 KR101431930 B1 KR 101431930B1 KR 1020127014714 A KR1020127014714 A KR 1020127014714A KR 20127014714 A KR20127014714 A KR 20127014714A KR 101431930 B1 KR101431930 B1 KR 101431930B1
Authority
KR
South Korea
Prior art keywords
symbol
host device
symbols
coded
output
Prior art date
Application number
KR1020127014714A
Other languages
English (en)
Other versions
KR20120091320A (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 가부시끼가이샤 도시바
Publication of KR20120091320A publication Critical patent/KR20120091320A/ko
Application granted granted Critical
Publication of KR101431930B1 publication Critical patent/KR101431930B1/ko

Links

Images

Classifications

    • 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • 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/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/387Information transfer, e.g. on bus using universal interface adapter for adaptation of different data processing systems to different peripheral devices, e.g. protocol converters for incompatible systems, open system
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • 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
    • 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/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • 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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03828Arrangements for spectral shaping; Arrangements for providing signals with specified spectral properties
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0012High speed serial bus, e.g. IEEE P1394
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/38Universal adapter
    • G06F2213/3804Memory card connected to a computer port directly or by means of a reader/writer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/38Universal adapter
    • G06F2213/3854Control is performed at the peripheral side

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Power Engineering (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Dc Digital Transmission (AREA)
  • Storage Device Security (AREA)
  • Read Only Memory (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Error Detection And Correction (AREA)

Abstract

일 실시 형태에 따르면, 호스트 장치(2)와 통신 가능한 반도체 장치(1, 12)는 심볼 생성부(24), 코딩부(25) 및 송신부(26)를 포함한다. 심볼 생성부(24)는 난수 발생 회로(32)를 포함하고, 난수 발생 회로(32)에 의해 생성된 난수에 따라 심볼을 생성한다. 코딩부(25)는 심볼에 대하여 8b/10b 코딩을 행한다. 송신부(26)는 8b/10b 코딩부(25)에 의해 코딩된 심볼을 호스트 기기(2)에 송신한다.

Description

반도체 장치 및 메모리 시스템{SEMICONDUCTOR DEVICE AND MEMORY SYSTEM}
<관련 출원의 상호 참조>
본원은 2009년 12월 9일에 출원된 일본 특허 출원 번호 제2009-279719호에 기초하고 그로부터의 우선권의 이익을 청구하며, 그 전체 내용은 본원에 참조로서 원용된다.
본원에 기재된 실시 형태는 반도체 장치 및 메모리 시스템에 관한 것이며, 예를 들면, 메모리 시스템과 호스트 기기 사이의 통신 방법에 관한 것이다.
최근, 디지털 카메라 등의 해상도 향상에 의한 화상의 고정밀화, SDTM 카드 등의 데이터 기억 디바이스의 대용량화, 및 화상 데이터의 프레임 레이트 향상에 의한 고화질화가 주목할 만하다. 이러한 배경 하에, 디지털 카메라 등의 호스트 기기와, 데이터를 기록하는 기억 디바이스 등 사이의 데이터 전송량이 계속 증가하고 있다. 이러한 대용량 데이터 전송에 있어서, 접속 케이블의 간략화, 소비 전력의 억제 및 EMI 방사 노이즈 저감의 관점에서, 소진폭 차동 신호에 기초한 고속 시리얼 전송 방식이 일반적으로 사용되고 있다. 또한, 상기 고속 시리얼 전송 방식에서는 전송의 안정화를 위하여 8b/10b의 코딩을 사용하는 것이 일반적이다.
시리얼 전송 방식의 사용에 의한 데이터 통신 시에, 동일한 데이터 항목("00" 또는 "FF" 등)이 연속해서 송출되면, 그 연속 패턴의 주기에 대응하는 주파수 성분의 고조파 노이즈가 발생한다. 따라서, 상기 경우의 대처 방법으로서, 데이터에 난수를 중첩하여 그 결과를 송출하는, 소위 스크램블 방식이 알려져 있다. 예를 들면, 그 방식은 "High-Speed Serdes Devices and Applications", David Robert Stauffer 외 저, Springer 발행, 2008년, 140 내지 143 페이지에 기재되어 있다..
그러나 종래의 스크램블 방식에서는 데이터의 비통신 시, 즉, 아이들 상태에서, 시리얼 전송의 동기 유지를 위하여 고정 패턴이 연속하여 전송되는 경우의 대처 방법은 고려하지 않았으며, 아이들 상태에서의 노이즈 발생의 문제도 여전히 해결되지 않았다.
비특허문헌 1(참조문헌): "High-Speed Serdes Devices and Applications", David Robert Stauffer 외 저, Springer 발행, 2008년, 140 내지 143 페이지
일반적으로, 일 실시 형태에 따르면 호스트 기기와 통신 가능한 반도체 장치는, 심볼 생성부; 코딩부; 및 송신부를 포함한다. 심볼 생성부는 난수 발생 회로를 포함하고, 상기 난수 발생 회로에 의해 생성된 난수에 따라 심볼을 생성한다. 코딩부는 상기 심볼에 대하여 8b/10b 코딩을 행한다. 송신부는 상기 8b/10b 코딩부에 의해 코딩된 상기 심볼을 상기 호스트 기기로 송신한다.
도 1은 제1 실시 형태에 따른 메모리 시스템의 블록도이다.
도 2는 제1 실시 형태에 따른 메모리 카드에서의 신호 핀(pin)에 대한 신호 할당을 나타내는 도면이다.
도 3은 제1 실시 형태에 따른 메모리 컨트롤러의 블록도이다.
도 4는 제1 실시 형태에 따른 심볼을 나타내는 도면이다.
도 5는 제1 실시 형태에 따른 통신 상태를 나타내는 타이밍 차트이다.
도 6은 제1 실시 형태에 따른 심볼 생성부의 동작을 나타내는 플로우차트이다.
도 7은 통신 시의 주파수 스텍트럼을 나타내는 그래프이다.
도 8 내지 도 10은 각각 제1 실시 형태에 따른 주파수 스펙트럼을 나타내는 그래프이다.
도 11은 제2 실시 형태에 따른 메모리 컨트롤러의 블록도이다.
도 12는 제2 실시 형태에 따른 통신 상태를 나타내는 타이밍 차트이다.
도 13은 제2 실시 형태에 따른 메모리 시스템의 동작을 나타내는 플로우차트이다.
도 14는 제2 실시 형태에 따른 주파수 스펙트럼을 나타내는 그래프이다.
도 15는 제2 실시 형태의 변형예에 따른 통신 상태를 나타내는 타이밍 차트이다.
도 16 및 도 17은 각각 제3 실시 형태에 따른 통신 상태를 나타내는 타이밍 차트이다.
[제1 실시 형태]
제1 실시 형태에 따른 반도체 장치 및 메모리 시스템에 대해서, SD 메모리 카드(이하, 간단히 메모리 카드라 칭함)를 예로 들어 설명한다.
<메모리 카드의 전체 구성>
우선, 메모리 카드의 전체 구성에 대해서 도 1을 참조하여 설명한다. 도 1은 본 실시 형태에 따른 메모리 카드의 블록도이다.
도면에 도시한 바와 같이, 메모리 카드(1)는 예를 들면 퍼스널 컴퓨터, 디지털 카메라 등의 호스트 기기(2)와 통신 가능하다. 호스트 기기(2)는 버스 인터페이스(14)를 통하여 접속되는 메모리 카드(1)를 액세스하기 위해 사용되는 하드웨어 및 소프트웨어를 포함한다. 메모리 카드(1)는 호스트 기기(2)에 접속될 때에 전원 공급을 받아서 동작되어, 호스트 기기(2)로부터의 액세스에 대응하는 처리를 행한다.
메모리 카드(1)는 버스 인터페이스(14)를 통하여 호스트 기기(2)에 대하여 정보를 전송한다. 메모리 카드(1)는 NAND형 플래시 메모리 칩(간단히 NAND형 플래시 메모리, 또는 플래시 메모리로도 칭함)(11), NAND형 플래시 메모리 칩(11)을 제어하는 메모리 컨트롤러(12), 및 복수의 신호 핀(제1 핀 내지 제17 핀)(13)을 포함한다.
복수의 신호 핀(13)은 메모리 컨트롤러(12)와 전기적으로 접속되어 있다. 복수의 신호 핀(13) 중 제1 핀 내지 제17 핀에 대한 신호의 할당은, 예를 들면 도 2에 도시하고 있다. 도 2는 제1 핀 내지 제17 핀과, 그들에 할당된 신호를 나타내는 테이블이다.
제7 핀, 제8 핀, 제9 핀, 및 제1 핀에는, 데이터 0 내지 데이터 3이 각각 할당되어 있다. 제1 핀은 또한, 카드 검출 신호에도 할당되어 있다. 또한, 제2핀은 커맨드 CMD에, 제3 핀 및 제6 핀은 접지 전위 GND에, 제4 핀은 전원 전위 VDD에, 제5 핀은 클록 신호 CLK에 할당되어 있다.
또한, 제10 핀, 제13 핀, 제14 핀 및 제17 핀은, 전원 전위 VDD 또는 접지 전위 GND에 할당되어 있다. 또한, 제11 핀, 제12 핀, 제15 핀 및 제16 핀에는 각각, 차동 신호의 페어가 되는 데이터(D1+)과 데이터(D1-), 및 데이터(D0+)와 데이터(D0-)가 할당되어 있다. 상기 핀은, 소진폭 차동 신호에서의 상보적인 신호용 단자이다. 예를 들면, D0+와 D0-의 신호 페어는, 호스트 기기(2)로부터 메모리 카드(1)로의 신호 전송에 사용된다. 또한, D1+와 D1-의 신호 페어는 메모리 카드(1)로부터 호스트 기기(2)로의 신호 전송에 사용된다.
메모리 카드(1)는 호스트 기기(2)에 형성된 슬롯에 대하여 빼고 꽂기 가능하도록 형성되어 있다. 호스트 기기(2)에 설치된 호스트 컨트롤러(도시하지 않음)는 이들의 제1 핀 내지 제17 핀을 통하여 메모리 카드(1) 내의 메모리 컨트롤러(12)와 각종 신호 및 데이터 항목을 통신한다. 예를 들면, 메모리 카드(1)에 데이터가 기입될 때, 호스트 컨트롤러는 기입 커맨드를, 제11 핀 및 제12 핀을 통하여 메모리 컨트롤러(12)에 시리얼한 신호로서 송출한다. 이때 메모리 컨트롤러(12)는 제7 핀 및 제8 핀에 공급되어 있는 클록 신호에 응답하여, 제11 핀 및 제12 핀에 공급되는 기입 커맨드를 도입(fetch)한다.
기입 커맨드는 제11 핀 및 제12 핀만을 사용하여 메모리 컨트롤러(12)에 시리얼로 입력된다. 커맨드 입력에 할당되어 있는 제11 핀 및 제12 핀은 도 2에 도시한 바와 같이 배치되고, 복수의 신호 핀(13)과 그에 대응하는 버스 인터페이스(14)(SD 인터페이스)는 호스트 기기(2) 내의 호스트 컨트롤러와 메모리 카드(1)가 서로 통신하도록 하는데 사용된다.
이에 반해, NAND형 플래시 메모리(11)와 메모리 컨트롤러(12) 사이의 통신은 NAND형 플래시 메모리용 인터페이스에 의해 행해진다. 따라서, 여기 도면에는 도시하지 않지만, NAND형 플래시 메모리(11)와 메모리 컨트롤러(12)는 예를 들면, 8비트의 입출력(I/O)선에 의해 접속되어 있다.
예를 들면, 메모리 컨트롤러(12)가 NAND형 플래시 메모리(11)에 데이터를 기입할 때, 메모리 컨트롤러(12)는, I/O선을 통하여 데이터 입력 커맨드(80H), 칼럼 어드레스, 페이지 어드레스, 데이터, 및 프로그램 커맨드(10H)를 플래시 메모리(11)에 순차 입력한다. 이 경우, 커맨드(80H)의 "H"는 16진수를 나타내며, 실제로는 "10000000"의 8비트의 신호가 8비트의 I/O선에 패러렐로 공급된다. 즉, NAND형 플래시 메모리용 인터페이스에는 복수 비트의 커맨드가 패러렐로 공급된다.
또한, NAND형 플래시 메모리용 인터페이스에서는 NAND형 플래시 메모리(11)에 대한 커맨드와 데이터가 동일한 I/O선을 공용하여 통신되고 있다. 이와 같이, 호스트 기기(2) 내의 호스트 컨트롤러와 메모리 카드(1)가 통신하는 인터페이스와, NAND형 플래시 메모리(11)와 메모리 컨트롤러(12)가 통신하는 인터페이스는 서로 다르다.
<메모리 컨트롤러(12)의 구성>
다음으로, 도 1에 도시하는 메모리 카드(1)에 구비된 메모리 컨트롤러(12)의 상세에 대하여 설명한다. 이 경우, NAND형 플래시 메모리(11)는 주지의 구성을 갖고 있으므로, 그 설명은 생략한다.
메모리 컨트롤러(12)는, NAND형 플래시 메모리(11) 내부의 물리 상태(예를 들면, 어느 물리 블록 어드레스에 포함된 논리 섹터 어드레스 데이터의 수, 또는 어느 블록이 소거 상태로 설정되어 있는지)를 관리한다. 그리고, 메모리 컨트롤러(12)는, 호스트 기기(12)의 요구에 따라 NAND형 플래시 메모리(11)로부터 데이터를 판독하고, 이것을 호스트 기기(2)로 전송하고, 또한 호스트 기기(2)로부터 공급되는 기입 데이터를 NAND형 플래시 메모리(11)에 기입하기 위한 동작을 행한다. 이하에서는 설명의 간단화를 위해, 메모리 컨트롤러(12)로부터 호스트 기기(2)에 통신을 행하는 구성에만 착안하여 설명한다.
도 3은 메모리 컨트롤러(12)의 블록도이다. 도면에 도시한 바와 같이, 메모리 컨트롤러(12)는, 플래시 컨트롤러(21), 버퍼(22), 커맨드/데이터 제어부(23), 심볼 생성부(24), 8b/10b 코딩부(25), 호스트 인터페이스 모듈(26), MPU(micro processing unit)(27), ROM(read-only memory)(28) 및 RAM(random access memory)(29)을 포함한다. 이 경우, 도면에서의 실선은 데이터 및 심볼의 흐름을 나타내고, 파선은 MPU(27)에 의한 제어 상태를 나타낸다.
플래시 컨트롤러(21)는 MPU(27)의 제어에 기초하여, 메모리 컨트롤러(12)와 NAND형 플래시 메모리(11) 사이의 인터페이스 처리를 행한다. 예를 들면, 데이터의 판독 시에는, NAND형 플래시 메모리(11)로부터 전송된 판독 데이터를 수신하여, 그것을 버퍼(22)에 저장한다.
버퍼(22)는 판독 데이터를 일시적으로 유지하여, 이것을 커맨드/데이터 제어부(23)로 출력한다.
심볼 생성부(24)는 난수 발생 회로(32)를 포함하고, MPU(27)의 제어에 기초하여, 호스트 기기(2)와의 통신에 필요한 다양한 심볼(커맨드 또는 제어 신호라고도 부름)을 발행하여, 이것을 커맨드/데이터 제어부(23)에 출력한다. 난수 발생 회로(32)로서는, 예를 들면, 리니어 피드백 시프트 레지스터를 사용할 수 있다. 물론, 이에 한정되는 것은 아니다. 심볼 생성부(24)는 데이터의 비통신 시에는, 아이들 상태를 나타내는 심볼을 발행할 수 있다. 그리고, 심볼 생성부(24)는, 아이들 상태를 나타내는 심볼로서 복수의 종류의 심볼을 생성할 수 있고, 난수 발생 회로(32)에 의해 생성된 난수에 기초하여, 복수의 종류의 심볼 중 하나를 결정한다. 이에 대해서는 이후에 상세하게 설명한다.
커맨드/데이터 제어부(23)는, MPU(27)의 제어에 따라, 버퍼(22)로부터의 판독 데이터 및 커맨드/데이터 제어부(23)로부터의 심볼 중 하나를 선택하여, 이것을 8b/10b 코딩부(25)로 출력한다.
8b/10b 코딩부(25)는 커맨드/데이터 제어부(23)로부터 공급된 신호(판독 데이터 또는 심볼)에 대하여 8b/10b 코딩을 행하고, 그 결과를 호스트 인터페이스 모듈(26)에 출력한다. 8b/10b 코딩은, 8비트의 신호를 10비트로 코딩하는 처리이다. 이 코딩은 소정의 테이블을 사용하여 행해지고, 코딩 결과는 심볼 Dxx.x로 표기된다. 즉, "00H" 내지 "FFH"의 8비트 데이터는, D00.0 내지 D31.7의 심볼 중 하나로 표현된다. 이 심볼은 특히 D 코드라 불린다. 또한, D 코드로서 사용되지 않은 비트열(bit string) 중 일부는 제어용 심볼로서 사용되고 K 코드라 불린다. 8b/10b 코딩은 주지의 기술을 사용하여 행해질 수 있으며, 그 상세는 배경기술에서 설명한 참조문헌의 137 내지 139 페이지에 기재되어 있다.
호스트 인터페이스 모듈(26)은, 호스트 기기(2)에 대하여 인터페이스 처리를 행한다. 도 3에 도시한 바와 같이, 호스트 인터페이스 모듈(26)은 패러렐-시리얼 변환부(30)와 시리얼 출력 포트(31)를 포함한다. 패러렐-시리얼 변환부(30)는 8b/10b 코딩부(25)로부터 공급되는 10비트의 패러렐 데이터를 시리얼 데이터로 변환하여, 이것을 시리얼 출력 포트(31)에 출력한다. 시리얼 출력 포트(31)는 수신된 시리얼 데이터를, 버스 인터페이스(14)를 통하여 호스트 기기(2)로 송신한다.
MPU(27)는 메모리 카드(1) 전체의 동작을 제어한다. MPU(27)는, 예를 들면 메모리 카드(1)가 전원 공급을 받았을 때에, ROM(28)에 저장되어 있는 펌웨어(제어 프로그램)를 RAM(29) 상에 판독하여 미리 정해진(preset) 처리를 행함으로써, 각종 테이블을 RAM(29) 상에 형성한다. 또한, MPU(27)는 호스트 기기(2)로부터 기입 커맨드, 판독 커맨드 및 소거 커맨드를 수신하고, 수신된 커맨드에 따라, 플래시 컨트롤러(21), 커맨드/데이터 제어부(23), 심볼 생성부(24), 8b/10b 코딩부(25) 및 호스트 인터페이스 모듈(26)의 동작을 제어한다.
ROM(28)은 MPU(27)에 의해 실행되는 제어 프로그램 등을 저장한다. RAM(29)은 MPU(27)의 작업 에리어로서 사용되고, 제어 프로그램 및 각종 테이블을 기억한다.
<심볼 생성부(24)에 의해 생성되는 심볼>
다음으로, 심볼 생성부(24)에 의해 생성되는 심볼의 일부에 대해서, 도 4를 참조하여 설명한다. 도 4는 심볼 생성부(24)에 의해 생성되는 심볼의 심볼명, 그 기능, 및 8b/10b 코딩에 의해 얻어지는 코드를 나타내는 테이블이다.
도면에 도시한 바와 같이, 심볼 생성부(24)는, 심볼 SYN, COM, LIDL0 및 LIDL1을 생성할 수 있다. 심볼 SYN은 호스트 기기(2)와의 동기를 도모하기 위해 사용되는 신호이며, 8b/10b 코딩에 의해 심볼 D31.5로 코딩되는 신호이다. 심볼 COM은 콤마(즉, 심볼 간의 구획 또는 분할(division))를 나타내는 신호이며, 8b/10b 코딩에 의해 심볼 K28.5로 코딩되는 신호이다. 심볼 LIDL0 및 LIDL1은 메모리 카드(1)와 호스트 기기(2) 사이에서 데이터 통신이 행해지지 않는 아이들 상태를 나타내는 신호이다. 심볼 LIDL0은 8b/10b 코딩에 의해 심볼 K28.3으로 코딩되는 신호이고, 심볼 LIDL1은 심볼 D13.2, D19.2 또는 D18.5로 코딩되는 신호이다.
<메모리 카드(1)와 호스트 기기(2) 사이의 통신>
다음으로, 메모리 카드(1)와 호스트 기기(2) 사이의 통신의 상세에 대해서, 도 5를 참조하여 설명한다. 도 5는 메모리 카드(1)로부터 호스트 기기(2)로 송신되는 신호의 타이밍차트이다.
도면에 도시한 바와 같이, 호스트 기기(2)에 접속된 메모리 카드(1)는, 호스트 기기(2)와의 동기를 확립(set up)하기 위해 사용되는 심볼 세트 SYNC를 호스트 기기(2)로 송신한다. 심볼 세트 SYNC는 심볼 COM과 심볼 SYN의 조합이다. 심볼 COM, SYN을 포함하는 1개의 심볼 세트 SYNC는, 호스트 기기(2)와의 동기가 도모될 때까지, 계속해서 송신된다(시각 t0 내지 t1).
시각 t0 내지 t1의 기간에서의 메모리 컨트롤러(21)의 동작은 하기와 같다. 즉, MPU는, 호스트 기기(2)로의 접속을 검출하면, 심볼 생성부(24)에 대하여 심볼 COM, SYN을 생성하도록 명령한다. 이에 응답하여, 심볼 생성부(24)는 심볼 COM, SYN을 반복해서 생성하여, 이것을 커맨드/데이터 제어부(23)에 출력한다. 또한, 커맨드/데이터 제어부(23)는 MPU(27)의 명령에 따라, 심볼 생성부(24)로부터 공급되는 심볼 COM, SYN을 8b/10b 코딩부(25)로 전송한다. 그러면, 8b/10b 코딩부(25)는, MPU(27)의 명령에 따라, 수신된 심볼 COM, SYN을 각각 심볼 K28.5, D31.5로 코딩하여, 이것을 호스트 인터페이스 모듈(26)로 출력한다. 그리고, 호스트 인터페이스 모듈(26)은 수신된 심볼 K28.5, D31.5를 호스트 기기(2)로 송신한다.
시각 t1에 호스트 기기(2)와의 동기가 확립되면, 데이터 통신이 행해진다. 즉, 도 5의 시각 t1 내지 t2로 나타낸 바와 같이, 데이터 신호가 메모리 카드(1)로부터 호스트 기기(2)로 송신된다. 데이터 신호는 8b/10b 코딩에 의해 얻어진 일련의 D 코드이다.
시각 t1 내지 t2의 기간에서의 메모리 컨트롤러(12)의 동작은 하기와 같다. 즉, MPU(27)는, 호스트 기기(2)로부터 데이터 판독 커맨드 및 어드레스를 수신하면, NAND형 플래시 메모리(11)에 대하여 판독 커맨드 및 어드레스를 발행하고, 플래시 컨트롤러(21)를 통하여 NAND형 플래시 메모리(11)에 데이터의 판독을 명령한다. 그 후, 송신된 어드레스에 대응하는 판독 데이터는 플래시 컨트롤러(21)에 의해 수신되어, 버퍼(22)에 축적된다. 계속해서, 커맨드/데이터 제어부(23)는 MPU(27)의 명령에 따라, 버퍼(22)로부터의 판독 데이터를 8b/10b 코딩부(25)로 전송한다. 그러면, 8b/10b 코딩부(25)는 MPU(27)의 명령에 따라, 수신된 데이터를 대응하는 D 코드로 코딩하고, 그 결과를 호스트 인터페이스 모듈(26)로 출력한다. 이 후, 호스트 인터페이스 모듈(26)은 수신된 D 코드를 호스트 기기(2)로 송신한다.
시각 t2에 데이터 통신이 완료되면, 메모리 카드(1)는 아이들 상태로 설정되고, 아이들 상태를 나타내는 심볼 세트 IDL을 호스트 기기(2)로 송신한다. 심볼 세트 IDL은, 심볼 COM과 심볼 LIDL0 또는 LIDL1의 조합이다. 이하에서는 설명의 간단화를 위해, 심볼 LIDL1 및 LIDL0이 서로 구별되지 않은 경우, 그 심볼을 LIDLx(x=0 또는 1)라고 칭한다. 심볼 COM과 LIDLx를 포함하는 1개의 심볼 세트 IDL은, 다음 데이터 통신이 개시될 때(시각 t3)까지, 계속해서 송신된다(시각 t2 내지 t3).
시각 t1 내지 t2의 기간에서의 메모리 컨트롤러(12)의 동작은 하기와 같다. 즉, MPU(27)는, 호스트 기기(2)로의 미송신 데이터가 버퍼(2)에 존재하지 않다는 것을 검출하면, 심볼 생성부(24)에 대하여 심볼 COM과 LIDLx를 생성하도록 명령한다. 이에 응답하여, 심볼 생성부(24)는 심볼 COM 및 LIDLx를 반복해서 생성하여, 이것을 커맨드/데이터 제어부(23)에 출력한다. 또한, 커맨드/데이터 제어부(23)는, MPU(27)의 명령에 따라, 심볼 생성부(24)로부터 공급되는 심볼 COM 및 LIDLx를 8b/10b 코딩부(25)로 전송한다. 그러면, 8b/10b 코딩부(25)는, MPU(27)의 명령에 따라, 수신된 심볼 COM을 심볼 K28.5로 코딩한다. 또한, 심볼 LIDL0을 수신했을 때에는 이것을 심볼 K28.3으로 코딩하고, 심볼 LIDL1을 수신했을 때에는 이것을 심볼 D13.2, D19.2 또는 D18.5로 코딩한다. 그리고, 호스트 인터페이스 모듈(26)은, 수신된 심볼을 호스트 기기(2)로 송신한다. 심볼 세트 IDL은, 그 후에 호스트 기기(2)에 대하여 데이터 통신이 재개될 때까지, 호스트 기기(2)로 반복하여 송신된다.
<심볼 생성부(24)의 동작>
다음으로, 도 5에서 설명한 시각 t2 내지 t3에서의 심볼 생성부(24)의 동작에 대해서, 도 6을 참조하여 설명한다. 도 6은 심볼 생성부(24)의 동작을 나타내는 플로우차트이다.
도면에 도시한 바와 같이, 호스트 기기(2)로 송신될 데이터가 없는 경우(스텝 S10에서 아니오), 심볼 생성부(24)는 우선 심볼 COM을 발행한다(스텝 S11). 계속해서, 심볼 생성부(24)는, 난수 발생 회로(32)로부터 생성된 난수를 확인한다. 그리고, 난수가 미리 정해진(predetermined) 값("제1 값")이면(스텝 S13에서 예), 심볼 LIDL0을 발행한다(스텝 S14). 한편, 난수가 제1 값이 아니면(스텝 S13에서 아니오), 심볼 LIDL1을 발행한다(스텝 S15). 예를 들면, 난수가 1비트 신호인 경우에, 심볼 LIDL0의 발행 확률은 심볼 LIDL1의 발행 확률과 동일하다. 이러한 점에서, 심볼 LIDL0의 발행 확률이 50%이면, 심볼 LIDL1의 발행 확률도 50%이다.
이상의 동작은, 호스트 기기(2)와의 접속이 중단되거나(스텝 S16에서 예) 또는 데이터 송신 타이밍이 도달될 때까지(스텝 S10에서 예) 반복해서 행해진다. 난수 발생 회로(32)는, 난수를 항상 생성할 수도 있고, MPU(27)가 심볼 세트 IDL을 발행하라고 명령하는 기간에만 난수를 생성할 수도 있다.
<본 실시 형태의 효과>
상술한 바와 같이, 본 제1 실시 형태에 따른 메모리 카드(1)에서는, 통신 시의 노이즈를 저감할 수 있다. 본 효과에 대해서 이하에 설명한다.
배경기술에서 설명한 고속 시리얼 전송 방식에서는, 데이터 전송 개시 시에는, 동기를 확립하는 데 사용되는 심볼 세트(도 5에서 설명한 심볼 COM+SYN)가 계속해서 송신된다. 동기가 확립된 후, 데이터 전송이 개시된다.
상기 시스템에서, 일련의 데이터 전송이 종료된 시각부터, 다음의 데이터 전송이 개시되는 시각까지의 기간에 아이들 상태를 나타내는 아이들 심볼로서 사용되는 특정한 심볼을 계속해서 송신하는 것을 생각할 수 있다. 아이들 심볼은 호스트 기기와의 동기를 유지하기 위한 심볼이다.
아이들 심볼로서, 심볼 K28.3(이하, 심볼 LIDL이라 칭함)이 사용될 수 있다. 그러나, K28.3은 2진수 표시로 "001111_0010" 또는 "110000_1101"의 코드이며, "0" 또는 "1"이 연속 생성되는 신호이다. 따라서, 심볼 세트 COM+LIDL이 연속해서 송신되는 경우, 특정한 패턴으로 "0" 또는 "1"이 연속하는 신호가 반복적으로 송신된다. 그러면, 심볼 세트 COM+LIDL의 특정한 패턴의 반복에 의해, 소정의 스펙트럼의 피크가 커지고, 이는 노이즈, 특히 EMI 노이즈를 발생시킨다고 하는 문제가 생긴다. 이 상태를 도 7에 도시한다. 도 7은 아이들 심볼로서 LIDL이 사용되는 경우의 시뮬레이션 결과로서 얻어진 주파수 스펙트럼을 나타내는 그래프이며, 횡축은 MHz의 주파수를 나타내고, 종축은 dB의 강도를 나타낸다. 도면에 도시한 바와 같이, 주파수 스펙트럼은 이산적으로 발생하고, 그 강도는 비교적 커서, 특히 200 MHz 부근에서는 65㏈에 도달한다.
이러한 점에서, 본 실시 형태에 따른 구성에서는, 아이들 심볼로서 2개의 심볼 LIDL0, LIDL1이 사용된다. 이들 중 LIDL은 LIDL과 마찬가지인 심볼 K28.3이지만, LIDL1은 LIDL0과 서로 다른 심볼이다. 아이들 심볼로서 LIDL0 또는 LIDL1 중 어느 것이 사용될지는, 난수 발생 회로(32)에 의해 생성된 난수에 따라 랜덤하게 선택된다. 그 결과, 연속하는 심볼 세트에서, 동일한 "0"/"1" 패턴이 연속 생성되는 것이 억제되고, 이 패턴에 포함된 고조파의 방사가 억제될 수 있다. 따라서, 호스트 기기(2)와의 동기를 유지하면서, 노이즈의 발생을 효과적으로 억제할 있다.
도 8은 LIDL1로서 D13.2가 사용되는 경우의 시뮬레이션 결과로서 얻어진 주파수 스펙트럼을 나타내는 그래프이다. 도면에 도시한 바와 같이, 도 7의 예와 비교하여 주파수 스펙트럼의 피크는 보다 연속적이고(이산적이 아님), 그 결과 각 피크의 강도도 낮아진다. 예를 들면, 200MHz 부근의 피크 강도는 50㏈이며, 도 7에 비하여 15dB 만큼 낮다. 15㏈의 저하는 전력 환산으로 1/30에 대응한다. 이와 같이, 피크 강도를 저감함으로써 노이즈도 저감될 수 있다.
또한, 도 9 및 도 10은, LIDL1로서 D19.2 및 D18.5가 사용되는 경우의 시뮬레이션 결과로서 얻어진 주파수 스펙트럼을 나타내는 그래프이다. 도면에 도시한 바와 같이, 이 경우에도, 주파수 스펙트럼의 피크 강도는 도 7의 예보다 낮다.
상기 실시 형태에서는, LIDL1로서 심볼 D13.2, D19.2 또는 D18.5가 사용되는 예에 대하여 설명하였다. 그러나, 상기 심볼 이외의 심볼이 사용될 수도 있다. 즉, 동일한 데이터 패턴의 반복이 발생하기 어려운 구성을 제공하면 만족하므로, 그 구성은, LIDL로서 복수의 종류의 심볼이 사용된다면, 한정되지 않는다.
8b/10b 코딩에서는, 심볼의 DC 밸런스를 유지하기 위해, 10비트 중에서 "1"로 설정되는 비트의 수가 7비트 이상 또는 3비트 이하인 심볼은 사용되지 않는다. 10비트 중에서, "1"로 설정되는 비트의 수 및 "0"으로 설정되는 비트의 수가 각각 5비트로 설정되는 심볼이 사용되면, DC 밸런스를 도모할 수 있다. 그러나, 코딩된 심볼이 NRZ 방식으로 시리얼 송신된다는 가정 하에, 심볼에서 "0"과 "1" 간의 변경점("0"에서 "1"로 또는 "1"에서 "0"으로 비트가 변경되는 비트 위치)이 적절히 발생한다는 제한을 고려하면, 0x00에서 0xFF까지의 256 코드의 대략 절반의 134 코드만이, 5비트의 "1"과 "0"이 밸런스 상태로 설정되어 있는 심볼로 규정된다. 남아있는 122 코드는 "1"로 설정되어 있는 비트의 수가 6비트 또는 4비트인 심볼로서 규정된다.
이 경우, DC 밸런스의 균형을 용이하게 설정하기 위해, 러닝 디스패리티의 지수(index of running disparity)(이하, RD로 칭함)가 사용된다. 즉, "1"로 설정된 6비트를 포함하는 심볼과 4비트를 포함하는 심볼의 각 2개의 세트가 코드마다 규정된다. 전자를 RD+의 심볼로서 규정하고, 후자를 RD-의 심볼로서 규정한다. 이전에 설명한 바와 같이, "1" 및 "0"의 수가 딱 5비트로 설정된 심볼은 RD±0으로서 규정된다.
8b/10b 코딩에서, 연속하는 심볼에서 RD+와 RD-가 교대로 나타나도록 심볼이 선택된다. RD±0인 심볼의 경우, 다음 심볼의 RD는 바로 직전 RD의 후임자로서 선택된다.
따라서, 8b/10b 코딩되어 송신된 심볼열(symbol string)은, DC 밸런스를 유지하기 위해 RD+와 RD-의 코드가 교대로 생성되는 방식을 활용한다. 그러나, 연속 COM, LIDL 심볼이 아이들 상태에서 송신된 IDL 심볼 세트와 유사하게 송신되면, 본 실시 형태에 따른 랜덤 폼(random form)을 생성하는 방법이 사용되지 않는 경우에 RD의 반전이 주기적으로 발생한다. 예를 들어, COM(K28.5) 및 LIDL0(K28.3)에 의해 각각 구성되는 IDL 심볼 세트가 연속해서 송신되면, RD는 심볼마다 반전되고, 2개의 심볼의 고정 패턴 주기가 송신된다. 그러한 주기적 고정 패턴이 송신되면, 강한 EMI 노이즈가 그 기간에 발생하고, 그 기간의 적분곱(integral multiple)인 주파수에서 그 패턴에 따른 고조파 노이즈가 발생한다.
본 실시 형태에서는, RD±0으로 설정된 심볼 D13.2, D19.2 또는 D18.5를 LIDL1로서 사용함으로써, COM, LIDL1의 IDL 심볼 세트에서 RD의 반전이 한번 발생한다. COM 및 LIDL0을 구성하는 K 심볼에서는, RD- 심볼의 각 비트의 값을 반전시킴으로써 RD+ 심볼이 얻어진다. 따라서, RD가 반전되는 심볼 세트에서는, 위상 반전 관계로 스펙트럼 성분이 설정된다. 따라서, COM 및 LIDL1에 의해 구성된 IDL심볼 세트를 협지(sandwich)하는 COM 및 LIDL0의 IDL 심볼 세트가 송신되면, COM 및 LIDL0의 IDL 심볼 세트의 스펙트럼 성분은 서로 상쇄되어, 패턴에 따른 고조파 노이즈를 억제하는 효과를 기대할 수 있다.
그러나, COM 및 LIDL0의 IDL 심볼 세트와 COM 및 LIDL1의 IDL 심볼 세트를 교대로 송신하거나 또는 COM 및 LIDL0의 IDL 심볼 세트를 N 시각까지 송신한 후 COM 및 LIDL1의 IDL 심볼 세트를 송신함으로써 RD를 반전시키는 방식이 사용되면, 고정된 RD 반전 기간으로 인해 반전 기간에 EMI 노이즈의 발생이 억제될 수 있다. 따라서, 본 실시 형태에서는, RD 반전 기간이 고정되는 것을 방지하기 위해, RD 반전 기간을 이산적으로 설정하고, 난수에 따라 LIDL0의 심볼 세트 및 LIDL1의 심볼 세트를 선택함으로써 EMI 노이즈의 피크를 억제하는 것이 제안된다.
상기 실시 형태에서 설명한 LIDL 심볼 D13.2, D19.2 및 D18.5가 각각, RD±0이 되는 심볼로 설정되고, LIDL0(K28.3)과의 조합에 의해 EMI 노이즈 억제 효과를 도모할 수 있다는 것이 확인된다. 또한, 상기 심볼은, RD±0이 되는 복수의 LIDL1 심볼 후보들 중에서 시뮬레이션에 의해 억제 효과가 크다고 확인된 심볼이다.
[제2 실시 형태]
다음으로, 본 발명의 제2 실시 형태에 따른 반도체 장치 및 메모리 시스템에 대하여 설명한다. 본 실시 형태는, 아이들 심볼로서 복수의 종류의 심볼을 사용하는 대신에, 심볼 세트에 난수 데이터가 포함된다. 이하에서는, 제1 실시 형태와 서로 다른 부분에 대해서만 설명한다.
<메모리 컨트롤러(12)의 구성>
도 11은 본 실시 형태에 따른 메모리 컨트롤러(12)의 블록도이다. 도면에 도시한 바와 같이, 본 실시 형태에 따른 메모리 컨트롤러(12)는, 제1 실시 형태에서 설명한 도 3의 구성에서, 스크램블 데이터 생성부(33)가 더 구비된 구성으로 형성된다.
스크램블 데이터 생성부(33)는 난수 발생 회로(34)를 포함한다. 그리고, MPU(27)의 제어에 따라, 난수 발생 회로(34)를 사용하여, 예를 들면, 8비트의 난수 데이터(스크램블 데이터) SRDi(i=0 내지 N, N은 1 이상의 자연수)를 생성한다. 난수 발생 회로(34)로서는, 예를 들면, 리니어 피드백 레지스터가 사용될 수 있다.
8b/10b 코딩부(25)는 제1 실시 형태에서 설명한 기능 외에, 스크램블 데이터 생성부(33)에 의해 생성된 스크램블 데이터 SRDi에 대하여 8b/10b 코딩을 행하는 기능을 갖는다.
심볼 생성부(24)는 아이들 심볼로서 1종의 심볼 LIDL을 발행한다. 심볼 LIDL은 예를 들면, K28.3이다. 즉, 제1 실시 형태에서 아이들 심볼로서는 LIDL0만이 발행될 수 있는 구성이 제공된다.
<메모리 카드(1)와 호스트 기기(2) 사이의 통신>
다음으로, 메모리 카드(1)와 호스트 기기(2) 사이의 통신의 상세에 대해서, 도 12를 참조하여 설명한다. 도 12는 메모리 카드(1)로부터 호스트 기기(2)로 송신되는 신호의 타이밍차트이며, 제1 실시 형태에서의 도 5에 대응한다. 그러나, 호스트 기기(2)와의 동기 확립의 동작은 제1 실시 형태와 마찬가지이므로, 그 상태는 도면에 도시하지 않는다. 또한, 이하 설명에서는, 제1 실시 형태와 서로 다른 시각 t2 내지 t3에서의 동작에 대해서만 설명한다.
시각 t2에 데이터 통신이 완료되면, 메모리 카드(1)는 아이들 상태로 설정되고, 심볼 세트 IDL을 호스트 기기(2)로 송신한다. 심볼 세트 IDL은 심볼 COM, 심볼 LIDL 및 스크램블 데이터 생성부(33)에 의해 생성된 스크램블 데이터 SRDi에 대응하는 심볼의 조합이다. 스크램블 데이터 SRDi는 난수 발생 회로(34)에 의해 생성된 난수이기 때문에, 심볼 세트 IDL이 생성될 때마다, 스크램블 데이터 SRDi의 값도 바뀐다. 심볼 COM, LIDL 및 SRDi를 포함하는 1개의 심볼 세트 IDL은, 다음 데이터 통신이 개시될 때(시각 t3)까지, 연속해서 송신된다(시각 t2 내지 t3).
시각 t2 내지 t3의 기간에서의 메모리 컨트롤러(12)의 동작은 하기와 같다. 즉, MPU(27)는, 버퍼(2)에 호스트 기기(2)로의 미송신 데이터가 없다는 것을 검출하면, 심볼 생성부(24)에 대하여 심볼 COM과 LIDL을 생성하도록 명령한다. 이에 응답하여, 심볼 생성부(24)는 심볼 COM 및 LIDL을 반복해서 생성하여, 이것을 커맨드/데이터 제어부(23)에 출력한다. 또한, MPU(27)는 스크램블 데이터 생성부(33)에 대하여 스크램블 데이터 SRDi를 생성하도록 명령한다. 이에 응답하여, 스크램블 데이터 생성부(33)는 난수 발생 회로(34)를 사용하여 스크램블 데이터 SRDi를 생성하고, 이것을 커맨드/데이터 제어부(23)에 출력한다. 그리고, 커맨드/데이터 제어부(23)는, MPU(27)의 명령에 따라, 심볼 생성부(24)로부터 공급되는 심볼 COM 및 LIDL, 및 스크램블 데이터 생성부(33)로부터 공급되는 스크램블 데이터 SRDi를 8b/10b 코딩부(25)로 전송한다. 그러면, 8b/10b 코딩부(25)는, MPU(27)의 명령에 따라, 수신된 심볼 COM, LIDL, 및 스크램블 데이터 SRDi에 대하여 8b/10b 코딩을 행한다. 그리고, 호스트 인터페이스 모듈(26)은, 수신된 심볼을 호스트 기기(2)로 송신한다. 심볼 세트 IDL은, 그 후에 호스트 기기(2)에 대하여 데이터 통신이 재개될 때까지, 호스트 기기(2)로 반복해서 송신된다.
<심볼 생성부(24) 및 스크램블 데이터 생성부(33)의 동작>
다음으로, 도 12에서 설명한 시각 t2 내지 t3에서의 심볼 생성부(24) 및 스크램블 데이터 생성부(33)의 동작에 대해서, 도 13을 참조하여 설명한다. 도 13은 심볼 생성부(24) 및 스크램블 데이터 생성부(33)의 동작을 나타내는 플로우차트이다.
도면에 도시한 바와 같이, 호스트 기기(2)로 송신될 데이터가 없는 경우(스텝 S10에서 아니오), 심볼 생성부(24)는 우선 심볼 COM을 발행하고(스텝 S11), 계속해서 심볼 LIDL을 발행한다(스텝 S20). 또한, 스크램블 데이터 생성부(33)는 스크램블 데이터 SRDi를 생성한다(스텝 S21).
이상의 동작은, 호스트 기기(2)와의 접속이 중단되거나(스텝 S16에서 예), 또는 데이터 송신 타이밍이 도달될 때까지(스텝 S10에서 예) 반복하여 행해진다. 난수 발생 회로(34)는, 난수를 항상 생성할 수도 있고, MPU(27)가 스크램블 데이터 SRDi를 생성하라고 명령하는 기간에만 난수를 생성할 수도 있다.
<본 실시 형태의 효과>
상술한 바와 같이, 본 발명의 제2 실시 형태에 따른 메모리 카드(1)에서는, 제1 실시 형태와 마찬가지의 효과를 도모할 수 있다.
본 실시 형태에 따른 구성에서는, 아이들 심볼의 종류의 개수를 1종류(LIDL: K28.3)로 설정하는 것 대신에, 심볼 세트에 스크램블 데이터 SRDi가 포함된다. 스크램블 데이터 SRDi는 난수 발생 회로(34)에 의해 생성된다. 보다 구체적으로는, 스크램블 데이터는 M계열에 의해 생성되는 바이트열(byte string)이며, 예를 들면 생성 다항식(X15+X5+X4+X3+1)에 의해 형성되는 난수이다.
상기 난수를 심볼 세트에 도입함으로써, 소정의 패턴으로 "0"/"1"이 연속하여 발생하는 신호가 반복되는 것을 억제하고, 주파수 스펙트럼의 피크의 증가를 방지할 수 있다. 도 14는 본 실시 형태의 시뮬레이션 결과를 나타내는 주파수 스펙트럼의 그래프이다. 도면에 도시한 바와 같이, 제1 실시 형태에서 설명한 도 7의 경우에 비하여, 스펙트럼이 보다 연속적으로 되며, 그 피크 강도도 더 저감되어 있다. 예를 들면, 200MHz 부근의 피크 강도는 대략 60㏈이며, 도 7의 경우에 비하여 5㏈만큼 저감되어 있다. 이 결과, 노이즈가 저감될 수 있다.
본 실시 형태에서는, 아이들 상태를 나타내는 1개의 심볼 세트가 COM+LIDL+SRDi인 경우를 예로 들어 설명했지만, 스크램블 데이터 항목 SRDi의 수는 2바이트 이상으로 설정될 수도 있다. 도 15는 메모리 카드(1)로부터 호스트 기기(2)로 송신되는 신호의 타이밍차트이며, 1개의 심볼 세트에 2바이트의 스크램블 데이터 항목 SRDi, SRD(i+1)이 포함되는 경우에 대하여 나타내고 있다. 도면에 도시한 바와 같이, 최초의 심볼 세트는 COM+LIDL+SRD0+SRD1이며, 이에 이어 설정되는 심볼 세트는 COM+LIDL+SRD2+SRD3이고, 그들은 마찬가지로 결정된다.
이와 같이 스크램블 데이터의 바이트수를 증가시킴으로써, 스펙트럼을 보다 확산시킬 수 있고, 노이즈를 저감시킬 수 있다. 이 경우, 스크램블 데이터 항목의 개수를 2n개(n은 자연수), 즉, 스크램블 데이터의 데이터량이 2n 바이트로 설정하는 것이 바람직하다.
[제3 실시 형태]
다음으로, 제3 실시 형태에 따른 반도체 장치 및 메모리 시스템에 대하여 설명한다. 본 실시 형태는 제1 실시 형태를 심볼 SYN(이하, 동기 심볼이라 칭함)에 적용하여 도모된다. 즉, 본 실시 형태에서는, 제1 실시 형태에서 2종류의 LIDL을 생성하는 것 대신에, 2종류의 SYN(SYN0, SYN1)를 생성한다. 그 외에는 제1 실시 형태와 마찬가지이므로, 이하에서는 간단하게 설명한다.
<메모리 카드(1)와 호스트 기기(2) 사이의 통신>
도 16은 메모리 카드(1)로부터 호스트 기기(2)로 송신되는 신호의 타이밍차트이다. 도면에 도시한 바와 같이, 호스트 기기(2)와의 동기를 확립하는 데 사용되는 심볼 세트 SYNC는, COM+SYN0 또는 COM+SYN1이 선택된다. SYN0 또는 SYN1 중 어느 것이 생성될지는, 제1 실시 형태에서 설명한 LIDL0, LIDL1과 마찬가지로, 심볼 생성부(24)에서 난수 발생 회로(32)에 의해 생성된 난수에 기초하여 결정된다.
<본 실시 형태의 효과>
본 실시 형태에 따른 구성에서는, 제1 실시 형태와 마찬가지의 효과를 도모할 수 있다. 호스트 기기(2)와의 동기를 확립할 때에는, 심볼 세트 SYNC가 반복해서 송신된다. 따라서, 이 기간에도, 소정의 패턴으로 "0"/"1"이 연속하여 발생하는 신호가 반복될 수 있다. 그러나, 본 실시 형태와 같이 2종류의 심볼 SYN(SYNx: x=0 또는 1)을 준비하고, 그들 중 하나를 랜덤하게 선택함으로써, 소정의 패턴으로 "0"/"1"이 연속하여 발생하는 신호가 반복되는 것을 방지하여, 노이즈를 저감할 수 있다. 또한, SYNx를, 제1 실시 형태와 마찬가지로, RD가 ±0이 되는 심볼로 설정하는 것이 바람직하다.
[제4 실시 형태]
다음으로, 제4 실시 형태에 따른 반도체 장치 및 메모리 시스템에 대하여 설명한다. 본 실시 형태는 제2 실시 형태를 심볼 SYN(이하, 동기 심볼로 칭함)에 적용하여 도모된다. 즉, 본 실시 형태에서는, 제2 실시 형태에서와 같이 스크램블 데이터 SRDi가 심볼 세트 IDL에 포함되는 것이 아니라, 심볼 세트 SYNC에 포함된다. 그 외에는 제2 실시 형태와 마찬가지이므로, 이하에서는 간단하게 설명한다.
<메모리 카드(1)와 호스트 기기(2) 사이의 통신>
도 17은 메모리 카드(1)로부터 호스트 기기(2)로 송신되는 신호의 타이밍차트이다. 도면에 도시한 바와 같이, 호스트 기기(2)와의 동기를 확립하는 데 사용되는 심볼 세트 SYNC는 COM+SYN+SRDi이다. 물론, 1개의 심볼 세트 SYNC에 포함되는 스크램블 데이터는 2바이트 이상으로 설정될 수도 있다.
<본 실시 형태의 효과>
본 실시 형태에 따른 구성에서도, 제2 실시 형태와 마찬가지의 효과를 이룰 수 있다.
상술한 바와 같이, 본 발명의 제1 및 제3 실시 형태에 따른 반도체 장치(12) 및 메모리 시스템(1)은, 호스트 기기(2)와 통신 가능하다. 장치(12) 및 시스템(1)은 난수 발생 회로(32)를 포함하고, 난수 발생 회로(32)에 의해 생성된 난수에 따라 심볼 LIDL0, LIDL1(또는 SYN0, SYN1)을 생성하는 심볼 생성부(24)와, 심볼에 대하여 8b/10b 코딩을 행하는 코딩부(25)와, 8b/10b 코딩부(25)에 의해 코딩된 심볼을 호스트 기기(2)로 송신하는 송신부(26)를 포함한다.
또한, 제2 및 제4 실시 형태에 따른 반도체 장치(12) 및 메모리 시스템(1)은 호스트 기기(2)와 통신 가능하다. 상기 장치(1) 및 시스템(1)은 심볼 생성이 가능한 심볼 생성부(24)와, 스크램블 데이터 SRD 생성이 가능한 스크램블 데이터 생성부(33)와, 상기 심볼 및 상기 스크램블 데이터 SRD에 대하여 8b/10b 코딩을 행하는 코딩부(25)와, 상기 8b/10b 코딩부(25)에 의해 코딩된 상기 심볼 및 상기 스크램블 데이터 SRD를 1개의 심볼 세트로서 호스트 기기(2)로 송신하는 송신부(26)를 포함한다.
상기 심볼은, 예를 들면 호스트 기기(2)와의 비통신 기간인 아이들 상태를 나타내거나, 또는 호스트 기기(2)와의 동기를 확립하는 데 사용된다.
또한, 상기 제1 및 제3 실시 형태에서는, 아이들 심볼이 LIDL0과 LIDL1의 2종류이며, 동기 심볼이 SYN0과 SYN1의 2종류인 경우를 예로 들어 설명하였다. 그러나, 심볼 생성부(24)는, 아이들 심볼 및 동기 심볼을 3종류 이상 생성하도록 구성될 수도 있다. 3종류 이상의 경우라도, 생성될 심볼들 중 하나가 난수에 따라 결정된다. 또한, 심볼 생성부(24)는, 생성될 심볼을 난수에 따라 결정하지 않고, 복수의 심볼을 생성한 후, 그들 중 하나를 난수에 따라 선택하고, 선택된 심볼을 커맨드/데이터 제어부(23)에 출력할 수도 있다.
또한, 제1 및 제2 실시 형태를 조합할 수도 있다. 즉, 아이들 시의 심볼 세트 IDL은, 심볼 COM+(LIDL0 또는 LIDL1)+SRDi를 사용하여 구성될 수도 있다. 이것은 제3 및 제4 실시 형태에도 적용된다. 즉, 동기 시의 심볼 세트 SYNC는 심볼 COM+(SYN0 또는 SYN1)+SRDi를 사용하여 구성될 수도 있다.
또한, 제1 및 제2 실시 형태에서는, 아이들 심볼에 대해서만 복수의 심볼을 준비하거나 또는 스크램블 데이터를 부가하는 경우에 대하여 설명하였다. 또한, 제3 및 제4 실시 형태에서는, 동기 심볼에 대해서만 복수의 심볼을 준비하거나 또는 스크램블 데이터를 부가하는 경우에 대하여 설명하였다. 그러나, 제1 또는 제2 실시 형태와, 제3 또는 제4 실시 형태를, 동시에 실행할 수 있다. 즉, 아이들 심볼과 동기 심볼 양쪽에 대해서 복수의 심볼을 준비하거나, 또는 스크램블 데이터를 부가할 수 있다.
또한, 제1 내지 제4 실시 형태는, 아이들 심볼 및 동기 심볼 이외의 심볼에 대해서도 적용 가능하다. 즉, 소정의 패턴으로 "0"/"1"이 연속하여 생성되는 신호의 반복에 의한 노이즈의 발생이 가정되는 다른 심볼이 사용되면, 복수의 종류의 심볼을 준비하여 그들 중 하나를 랜덤하게 선택하거나, 또는 랜덤 데이터를 부가함으로써, 마찬가지의 효과를 도모할 수 있다.
또한, 배경 기술에서 설명한 바와 같이, 데이터는, 스크램블된 상태의 설정이 유지되는 동안 호스트 기기(2)로 송신될 수 있다. 이 경우, 도 3 및 도 11에서, 스크램블 데이터 생성부(33)는 버퍼와 커맨드/데이터 제어부(23) 사이에 설치될 수 있고, 버퍼(22)로부터 공급되는 판독 데이터는 스크램블 데이터 생성부(33)에 의해 스크램블될 수 있다. 또한, 소진폭 차동 신호에 의한 고속 시리얼 데이터 전송의 최근의 전송 속도는, 1Gbps 이상까지 증가된다. 그리고, 1Gbps 이상의 고속 데이터 전송에서는, 데이터 신호와 클록 신호를 동일 신호선에 다중화하여 그들을 전송하는 방식이 사용된다. 이는 클록 다중화 방식으로서 알려져 있다. 클록 다중화 방식에서는, 데이터 수신측에서, 전송 신호의 신호 토글(toggle)을 검출함으로써 클록이 재생되어 수신용 클록 신호로서 사용된다. 상기 제1 내지 제4 실시 형태가 상기한 매우 고속의 데이터 전송 방식에 적용되면, 보다 현저한 효과를 도모할 수 있다.
또한, 제1 내지 제4 실시 형태에서 설명한 심볼 및 랜덤 데이터의 생성은, 하드웨어를 사용하여 실행될 수도 있거나 소프트웨어를 사용하여 실행될 수도 있다. 그러나, 동작 속도의 관점에서는, 전용 하드웨어를 사용하는 것이 바람직하다. 소프트웨어를 사용하여 실행될 때에는, 예를 들면 심볼 생성 프로그램이 ROM(28) 등에 저장되고, MPU(27)가 이 프로그램을 실행함으로써, 도 6에 도시하는 동작이 행해진다. 이는 랜덤 데이터의 생성에도 적용된다.
또한, 제1 내지 제4 실시 형태에서는, 신호를 호스트 기기(2)에 출력하는 메모리 카드(1)의 구성에 대해서만 설명하였다. 호스트 기기(2)로부터 신호가 수신될 때에는, 송신 시와 반대의 동작이 행해질 수 있다. 예를 들면, 호스트 인터페이스 모듈(26)은 시리얼 입력 포트와 시리얼-패러렐 변환부를 포함한다. 그리고, 시리얼 입력 포트는 호스트 기기(2)로부터 신호를 수신하고, 시리얼-패러렐 변환부는 이것을 패러렐 신호로 변환한다. 계속해서, 8b/10b 코딩부(25)는 10비트의 패러렐 데이터를 8비트로 코딩하고, 이것을 버퍼(22)에 축적한다. 그리고, MPU(27)는 NAND형 플래시 메모리(11)에 대하여 데이터 기입 커맨드를 발행하고, 플래시 컨트롤러(21)를 통하여 데이터를 NAND형 플래시 메모리(11)에 출력한다.
또한, 도 5, 도 12, 도 16 및 도 17에서, 호스트 기기(2)와의 동기가 확립될 때에, 메모리 카드(1)도 호스트 기기(2)로부터 심볼 세트 SYNC를 수신한다. 또한, 메모리 카드(1)는 아이들 시에는 호스트 기기(2)로부터 심볼 세트 IDL을 수신한다. 이 심볼들은, 제1 내지 제4 실시 형태로 설명한 바와 같이, 난수에 기초하여 복수의 심볼로부터 선택된 심볼일 수 있거나, 또는 스크램블 데이터가 부가된 심볼일 수도 있다. 즉, 메모리 카드(1)뿐만 아니라, 호스트 기기(2)도 제1 내지 제4 실시 형태에 따른 구성을 가질 수 있고, 상기 실시 형태는 상기 구성을 포함하도록 의도하고 있다.
물론, 상기 실시 형태에서는, 메모리 시스템으로서 SD 메모리 카드를 사용하는 경우를 예로 들어 설명했지만, UHS(ultra-high-speed) II 카드나 SD IO 디바이스 등의 SD 인터페이스를 갖는 다른 디바이스를 사용할 수 있고, 그 밖의 디바이스를 사용할 수도 있다. 물론, NAND형 플래시 메모리(11)를 갖는 메모리 카드에 한하지 않고, 다른 기억 매체를 사용할 수도 있고, 기억 매체에 한하지 않고, 고속의 데이터 전송을 행하는 전자 디바이스가 널리 적용될 수도 있다.
소정의 실시 형태를 설명하였지만, 이들 실시 형태는 단지 예로서 제시했을 뿐이며 본 발명의 범위를 한정할 의도는 아니다. 실제로, 본원에 개시되는 신규한 실시 형태는 다양한 그 밖의 형태로 구현될 수 있고, 또한, 본 발명의 사상에서 벗어남 없이, 본원에 개시된 실시 형태의 다양한 생략, 대체 및 변경이 이루어질 수 있다. 첨부하는 특허청구범위 및 그의 균등물은, 그러한 형태 또는 변형이 본 발명의 범위 및 사상 내에 있는 한, 그것을 커버할 의도이다.
1 : 메모리 카드
2 : 호스트 기기
11 : NAND형 플래시 메모리
12 : 메모리 컨트롤러
13 : 신호 핀
21 : 플래시 컨트롤러
22 : 버퍼
23 : 커맨드/데이터 제어부
24 : 심볼 생성부
25 : 8b/10b 코딩부
26 : 호스트 인터페이스 모듈
27 : MPU
28 : ROM
29 : RAM
30 : 패러렐-시리얼 변환부
31 : 시리얼 출력 포트
32, 34 : 난수 발생 회로
33 : 스크램블 데이터 생성부

Claims (18)

  1. 호스트 기기와 통신 가능한 반도체 장치로서,
    제1 심볼 및 제2 심볼 중 하나를 랜덤하게 선택하여 출력하는 심볼 생성부;
    출력된 심볼에 대하여 8b/10b 코딩을 행하는 코딩부; 및
    상기 코딩부에 의해 코딩된 상기 심볼을 상기 호스트 기기에 송신하는 송신부
    를 포함하고,
    상기 제1 및 제2 심볼은 아이들(idle) 상태를 나타내며,
    상기 8b/10b 코딩된 심볼은 상기 송신부에 의해 상기 호스트 기기에 반복하여 송신되며,
    상기 제1 및 제2 심볼 각각은, 러닝 디스패리티(running disparity)가 플러스(+)인 심볼과 러닝 디스패리티가 마이너스(-)인 심볼을 포함하는 심볼 페어(a pair of symbols)를 포함하며,
    상기 심볼 생성부로부터 출력되는 심볼은, 해당 심볼의 직전에 상기 심볼 생성부로부터 출력된 심볼과는 다른 러닝 디스패리티를 갖는, 반도체 장치.
  2. 호스트 기기와 통신 가능한 반도체 장치로서,
    제1 심볼 및 제2 심볼 중 하나를 랜덤하게 선택하여 출력하고, 구획(delimiter)을 나타내는 제3 심볼을 더 출력하는 심볼 생성부;
    출력된 심볼에 대해서 8b/10b 코딩을 행하는 코딩부; 및
    상기 코딩부에 의해 코딩된 상기 심볼을 상기 호스트 기기에 송신하는 송신부
    를 포함하고,
    상기 제1 및 제2 심볼 중 8b/10b 코딩된 하나와 상기 8b/10b 코딩된 제3 심볼을 포함하는 심볼 세트가, 상기 송신부에 의해 상기 호스트 기기에 반복하여 송신되며,
    상기 심볼 세트는 상기 호스트 기기와의 동기(synchronization)를 확립(set up)하는 데 사용되며,
    상기 제1 및 제2 심볼 각각은, 러닝 디스패리티가 플러스(+)인 심볼과 러닝 디스패리티가 마이너스(-)인 심볼을 포함하는 심볼 페어를 포함하며,
    상기 심볼 생성부로부터 출력되는 심볼은, 해당 심볼의 직전에 상기 심볼 생성부로부터 출력된 심볼과는 다른 러닝 디스패리티를 갖는, 반도체 장치.
  3. 호스트 기기와 통신 가능한 반도체 장치로서,
    제1 심볼 및 제2 심볼 중 하나를 랜덤하게 선택하여 출력하는 심볼 생성부;
    출력된 심볼에 대하여 8b/10b 코딩을 행하는 코딩부; 및
    상기 코딩부에 의해 코딩된 상기 심볼을 상기 호스트 기기에 송신하는 송신부
    를 포함하고,
    상기 제1 및 제2 심볼은 아이들 상태를 나타내며,
    상기 8b/10b 코딩된 심볼은 상기 송신부에 의해 상기 호스트 기기에 반복하여 송신되며,
    상기 제1 및 제2 심볼 중 하나는 러닝 디스패리티가 ±0이 되는 심볼이며,
    상기 심볼 생성부로부터 출력되는 심볼은, 해당 심볼의 직전에 상기 심볼 생성부로부터 출력된 심볼과는 다른 러닝 디스패리티를 갖는, 반도체 장치.
  4. 호스트 기기와 통신 가능한 반도체 장치로서,
    제1 심볼 및 제2 심볼 중 하나를 랜덤하게 선택하여 출력하고, 구획을 나타내는 제3 심볼을 더 출력하는 심볼 생성부;
    출력된 심볼에 대해서 8b/10b 코딩을 행하는 코딩부; 및
    상기 코딩부에 의해 코딩된 상기 심볼을 상기 호스트 기기에 송신하는 송신부
    를 포함하고,
    상기 제1 및 제2 심볼 중 8b/10b 코딩된 하나와 상기 8b/10b 코딩된 제3 심볼을 포함하는 심볼 세트가, 상기 송신부에 의해 상기 호스트 기기에 반복하여 송신되며,
    상기 심볼 세트는 상기 호스트 기기와의 동기를 확립하는 데 사용되며,
    상기 제1 및 제2 심볼 중 하나는, 러닝 디스패리티가 ±0이 되는 심볼이며,
    상기 심볼 생성부로부터 출력되는 심볼은, 해당 심볼의 직전에 상기 심볼 생성부로부터 출력된 심볼과는 다른 러닝 디스패리티를 갖는, 반도체 장치.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 반도체 장치로부터 상기 호스트 기기에 송신될 데이터는 스크램블되며, 스크램블된 데이터가 상기 호스트 기기에 송신되는, 반도체 장치.
  6. 제1항 내지 제4항 중 어느 한 항에 있어서,
    상기 심볼 생성부는, 난수 발생 회로를 포함하고, 상기 난수 발생 회로에 의해 생성된 난수에 따라 상기 제1 및 제2 심볼 중 하나를 선택하는, 반도체 장치.
  7. 제1항 내지 제4항 중 어느 한 항에 있어서,
    스크램블 데이터를 생성가능한 스크램블 데이터 생성부를 더 포함하고,
    상기 코딩부는 상기 스크램블 데이터에 대하여 8b/10b 코딩을 행하고,
    상기 송신부는 상기 코딩부에 의해 코딩된 상기 심볼 및 스크램블 데이터를 1개의 심볼 세트로서 상기 호스트 기기에 송신하는, 반도체 장치.
  8. 메모리 시스템으로서,
    데이터 유지가 가능한 비휘발성의 반도체 기억 장치; 및
    호스트 기기로부터 수신된 기입 데이터를 상기 반도체 기억 장치에 기입 가능하고, 상기 반도체 기억 장치로부터 판독된 판독 데이터를 상기 호스트 기기에 송신 가능한 메모리 컨트롤러
    를 포함하고,
    상기 메모리 컨트롤러는,
    제1 심볼 및 제2 심볼 중 하나를 랜덤하게 선택하여 출력하는 심볼 생성부;
    출력된 심볼에 대하여 8b/10b 코딩을 행하는 코딩부; 및
    상기 코딩부에 의해 코딩된 상기 심볼을 상기 호스트 기기에 송신하는 송신부
    를 포함하고,
    상기 제1 및 제2 심볼은 아이들 상태를 나타내며,
    상기 8b/10b 코딩된 심볼은 상기 송신부에 의해 상기 호스트 기기에 반복하여 송신되며,
    상기 제1 및 제2 심볼 각각은, 러닝 디스패리티가 플러스(+)인 심볼과 러닝 디스패리티가 마이너스(-)인 심볼을 포함하는 심볼 페어를 포함하며,
    상기 심볼 생성부로부터 출력되는 심볼은, 해당 심볼의 직전에 상기 심볼 생성부로부터 출력된 심볼과는 다른 러닝 디스패리티를 갖는, 메모리 시스템.
  9. 메모리 시스템으로서,
    데이터 유지가 가능한 비휘발성의 반도체 기억 장치; 및
    호스트 기기로부터 수신된 기입 데이터를 상기 반도체 기억 장치에 기입 가능하고, 상기 반도체 기억 장치로부터 판독된 판독 데이터를 상기 호스트 기기에 송신 가능한 메모리 컨트롤러
    를 포함하고,
    상기 메모리 컨트롤러는,
    제1 심볼 및 제2 심볼 중 하나를 랜덤하게 선택하여 출력하는 심볼 생성부;
    출력된 심볼에 대하여 8b/10b 코딩을 행하는 코딩부; 및
    상기 코딩부에 의해 코딩된 상기 심볼을 상기 호스트 기기에 송신하는 송신부
    를 포함하고,
    상기 제1 및 제2 심볼은 아이들 상태를 나타내며,
    상기 8b/10b 코딩된 심볼은 상기 송신부에 의해 상기 호스트 기기에 반복하여 송신되며,
    상기 제1 및 제2 심볼 중 하나는 러닝 디스패리티가 ±0이 되는 심볼이며,
    상기 심볼 생성부로부터 출력되는 심볼은, 해당 심볼의 직전에 상기 심볼 생성부로부터 출력된 심볼과는 다른 러닝 디스패리티를 갖는, 메모리 시스템.
  10. 메모리 시스템으로서,
    데이터 유지가 가능한 비휘발성의 반도체 기억 장치; 및
    호스트 기기로부터 수신된 기입 데이터를 상기 반도체 기억 장치에 기입 가능하고, 상기 반도체 기억 장치로부터 판독된 판독 데이터를 상기 호스트 기기에 송신 가능한 메모리 컨트롤러
    를 포함하고,
    상기 메모리 컨트롤러는,
    제1 심볼 및 제2 심볼 중 하나를 랜덤하게 선택하여 출력하고, 구획을 나타내는 제3 심볼을 더 출력하는 심볼 생성부;
    출력된 심볼에 대해서 8b/10b 코딩을 행하는 코딩부; 및
    상기 코딩부에 의해 코딩된 상기 심볼을 상기 호스트 기기에 송신하는 송신부
    를 포함하고,
    상기 제1 및 제2 심볼 중 8b/10b 코딩된 하나와 상기 8b/10b 코딩된 제3 심볼을 포함하는 심볼 세트가, 상기 송신부에 의해 상기 호스트 기기에 반복하여 송신되며,
    상기 심볼 세트는 상기 호스트 기기와의 동기를 확립하는 데 사용되며,
    상기 제1 및 제2 심볼 각각은, 러닝 디스패리티가 플러스(+)인 심볼과 러닝 디스패리티가 마이너스(-)인 심볼을 포함하는 심볼 페어를 포함하며,
    상기 심볼 생성부로부터 출력되는 심볼은, 해당 심볼의 직전에 상기 심볼 생성부로부터 출력된 심볼과는 다른 러닝 디스패리티를 갖는, 메모리 시스템.
  11. 메모리 시스템으로서,
    데이터 유지가 가능한 비휘발성의 반도체 기억 장치; 및
    호스트 기기로부터 수신된 기입 데이터를 상기 반도체 기억 장치에 기입 가능하고, 상기 반도체 기억 장치로부터 판독된 판독 데이터를 상기 호스트 기기에 송신 가능한 메모리 컨트롤러
    를 포함하고,
    상기 메모리 컨트롤러는,
    제1 심볼 및 제2 심볼 중 하나를 랜덤하게 선택하여 출력하고, 구획을 나타내는 제3 심볼을 더 출력하는 심볼 생성부;
    출력된 심볼에 대해서 8b/10b 코딩을 행하는 코딩부; 및
    상기 코딩부에 의해 코딩된 상기 심볼을 상기 호스트 기기에 송신하는 송신부
    를 포함하고,
    상기 제1 및 제2 심볼 중 8b/10b 코딩된 하나와 상기 8b/10b 코딩된 제3 심볼을 포함하는 심볼 세트가, 상기 송신부에 의해 상기 호스트 기기에 반복하여 송신되며,
    상기 심볼 세트는 상기 호스트 기기와의 동기를 확립하는 데 사용되며,
    상기 제1 및 제2 심볼 중 하나는 러닝 디스패리티가 ±0이 되는 심볼이며,
    상기 심볼 생성부로부터 출력되는 심볼은, 해당 심볼의 직전에 상기 심볼 생성부로부터 출력된 심볼과는 다른 러닝 디스패리티를 갖는, 메모리 시스템.
  12. 삭제
  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
KR1020127014714A 2009-12-09 2010-09-15 반도체 장치 및 메모리 시스템 KR101431930B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2009279719A JP5657242B2 (ja) 2009-12-09 2009-12-09 半導体装置及びメモリシステム
JPJP-P-2009-279719 2009-12-09
PCT/JP2010/066464 WO2011070837A1 (en) 2009-12-09 2010-09-15 Semiconductor device and memory system

Publications (2)

Publication Number Publication Date
KR20120091320A KR20120091320A (ko) 2012-08-17
KR101431930B1 true KR101431930B1 (ko) 2014-08-19

Family

ID=44145390

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127014714A KR101431930B1 (ko) 2009-12-09 2010-09-15 반도체 장치 및 메모리 시스템

Country Status (7)

Country Link
US (10) US8781024B2 (ko)
EP (1) EP2510419B1 (ko)
JP (1) JP5657242B2 (ko)
KR (1) KR101431930B1 (ko)
CN (2) CN104965805B (ko)
TW (1) TWI425367B (ko)
WO (1) WO2011070837A1 (ko)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5657242B2 (ja) * 2009-12-09 2015-01-21 株式会社東芝 半導体装置及びメモリシステム
JP2013140541A (ja) 2012-01-06 2013-07-18 Toshiba Corp 半導体記憶装置
FR2990539B1 (fr) * 2012-05-11 2016-03-11 Morpho Procede et dispositif pour l'emission d'un message
US9270417B2 (en) * 2013-11-21 2016-02-23 Qualcomm Incorporated Devices and methods for facilitating data inversion to limit both instantaneous current and signal transitions
EP2892156A3 (en) * 2013-12-27 2015-10-28 Altera Corporation Apparatus for improved encoding and associated methods
FR3032576B1 (fr) 2015-02-05 2017-03-10 St Microelectronics Grenoble 2 Procede de codage en ligne a bit de polarite utilisant des trames aperiodiques
CN104579583A (zh) * 2015-02-09 2015-04-29 浪潮电子信息产业股份有限公司 一种对8b/10b编码方式的改进方法
JP6398801B2 (ja) * 2015-03-09 2018-10-03 沖電気工業株式会社 メモリ装置へのデータ書き込み/読み出し制御方法及びメモリ装置
US10013944B2 (en) 2015-11-27 2018-07-03 Panasonic Liquid Crystal Display Co., Ltd. Display device and source driver for bit conversion of image data
CN106791950A (zh) * 2016-12-27 2017-05-31 深圳Tcl数字技术有限公司 高速信号传输系统、高速信号传输方法及装置
US20180308214A1 (en) * 2017-04-21 2018-10-25 Intel Corporation Data scrambling mechanism
CN117669631A (zh) * 2017-06-05 2024-03-08 铠侠股份有限公司 存储卡及主机设备
JP7292864B2 (ja) * 2018-04-23 2023-06-19 キオクシア株式会社 半導体記憶装置
CN115421928B (zh) * 2022-11-04 2023-01-31 摩尔线程智能科技(北京)有限责任公司 减少芯片产生的电磁干扰的装置、方法和电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070061236A (ko) * 2005-12-08 2007-06-13 한국전자통신연구원 서비스 품질 보장형 스위치드 라우터 시스템
KR100849956B1 (ko) * 2007-01-29 2008-08-01 삼성전자주식회사 반도체 장치 및 그것의 스크램블된 데이터 전송 방법

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5229769A (en) * 1992-02-21 1993-07-20 Advanced Micro Devices, Inc. Method and circuit for performing running disparity measurements
US5304996A (en) * 1992-02-21 1994-04-19 Advanced Micro Devices, Inc. 8B/10B encoder providing one of pair of noncomplementary, opposite disparity codes responsive to running disparity and selected commands
US6657949B1 (en) * 1999-07-06 2003-12-02 Cisco Technology, Inc. Efficient request access for OFDM systems
JP3712631B2 (ja) * 2000-06-19 2005-11-02 シャープ株式会社 伝送方法および伝送システム並びに通信装置
US6625716B2 (en) * 2001-06-28 2003-09-23 Intel Corporation Method apparatus, and system for efficient address and data protocol for a memory
US7092629B2 (en) * 2001-11-19 2006-08-15 Hewlett-Packard Development Company, L.P. Time-division and wave-division multiplexed link for use in a service area network
JP2003204363A (ja) * 2002-01-04 2003-07-18 Hitachi Ltd シリアル伝送方式
JP4081541B2 (ja) * 2002-03-11 2008-04-30 富士フイルム株式会社 撮像通信システム
US20040098545A1 (en) 2002-11-15 2004-05-20 Pline Steven L. Transferring data in selectable transfer modes
US7917673B2 (en) * 2003-09-20 2011-03-29 Samsung Electronics Co., Ltd. Communication device and method having a shared local memory
US6876315B1 (en) * 2004-03-12 2005-04-05 International Business Machines Corporation DC-balanced 6B/8B transmission code with local parity
US7386027B2 (en) * 2004-03-31 2008-06-10 Matsushita Electric Industrial Co., Ltd. Methods and apparatus for generating and processing wideband signals having reduced discrete power spectral density components
US7081838B2 (en) * 2004-12-29 2006-07-25 Enigma Semiconductor, Inc. 16b/10s coding apparatus and method
US7782805B1 (en) * 2005-02-08 2010-08-24 Med Belhadj High speed packet interface and method
US7292161B2 (en) * 2005-05-31 2007-11-06 International Business Machines Corporation NB/MB coding apparatus and method using both disparity independent and disparity dependent encoded vectors
KR100707308B1 (ko) * 2005-06-13 2007-04-12 삼성전자주식회사 엠엠씨 인터페이스를 갖는 플래시 메모리 장치 및 그것을포함한 메모리 시스템
US8988223B2 (en) * 2005-12-09 2015-03-24 Tego Inc. RFID drive management facility
KR100782327B1 (ko) * 2006-05-27 2007-12-06 삼성전자주식회사 반도체 장치 사이의 단일형 병렬데이터 인터페이스 방법,기록매체 및 반도체 장치
WO2007145316A1 (ja) * 2006-06-15 2007-12-21 Panasonic Corporation メモリコントローラ、不揮発性記憶装置、及び不揮発性記憶装置システム
JP5002201B2 (ja) * 2006-06-30 2012-08-15 株式会社東芝 メモリシステム
JP4908083B2 (ja) * 2006-06-30 2012-04-04 株式会社東芝 メモリコントローラ
US7383992B2 (en) * 2006-10-10 2008-06-10 Imation Corp. Memory card with host interface and including internal interface for receiving micro-size memory cards
US7492291B2 (en) * 2006-10-20 2009-02-17 Agere Systems Inc. Methods and apparatus for interfacing a plurality of encoded serial data streams to a serializer/deserializer circuit
EP1973285A1 (en) * 2007-03-23 2008-09-24 Nokia Siemens Networks Gmbh & Co. Kg Method and receiver for decoding digital information
US8665735B2 (en) * 2007-07-20 2014-03-04 Broadcom Corporation Method and system for quality of service management in a multi-standard mesh of networks
US8233622B2 (en) * 2008-06-18 2012-07-31 International Business Machines Corporation Transmitting parallel data via high-speed serial interconnection
US7769048B2 (en) * 2008-06-25 2010-08-03 Intel Corporation Link and lane level packetization scheme of encoding in serial links
CN101677399B (zh) * 2008-09-18 2014-07-09 香港科技大学 基于流密码的安全编码方案的多媒体内容编码方法和系统
JP5375320B2 (ja) * 2009-05-08 2013-12-25 富士通株式会社 通信制御方法、通信システム及び通信装置
JP5657242B2 (ja) * 2009-12-09 2015-01-21 株式会社東芝 半導体装置及びメモリシステム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20070061236A (ko) * 2005-12-08 2007-06-13 한국전자통신연구원 서비스 품질 보장형 스위치드 라우터 시스템
KR100849956B1 (ko) * 2007-01-29 2008-08-01 삼성전자주식회사 반도체 장치 및 그것의 스크램블된 데이터 전송 방법

Also Published As

Publication number Publication date
US20230376440A1 (en) 2023-11-23
CN104965805B (zh) 2018-01-09
EP2510419A4 (en) 2017-06-07
US20180260355A1 (en) 2018-09-13
WO2011070837A1 (en) 2011-06-16
TWI425367B (zh) 2014-02-01
TW201145038A (en) 2011-12-16
KR20120091320A (ko) 2012-08-17
US9720870B2 (en) 2017-08-01
US10482052B2 (en) 2019-11-19
US20220066973A1 (en) 2022-03-03
JP2011123609A (ja) 2011-06-23
US20120243636A1 (en) 2012-09-27
US20160371217A1 (en) 2016-12-22
US20210073164A1 (en) 2021-03-11
US11176079B2 (en) 2021-11-16
US20150317270A1 (en) 2015-11-05
CN102652299B (zh) 2015-07-08
US9996493B2 (en) 2018-06-12
CN102652299A (zh) 2012-08-29
US20200034324A1 (en) 2020-01-30
US20140281097A1 (en) 2014-09-18
US11762800B2 (en) 2023-09-19
US20170300448A1 (en) 2017-10-19
US8781024B2 (en) 2014-07-15
US9471527B2 (en) 2016-10-18
CN104965805A (zh) 2015-10-07
EP2510419A1 (en) 2012-10-17
JP5657242B2 (ja) 2015-01-21
US9111048B2 (en) 2015-08-18
US10877917B2 (en) 2020-12-29
EP2510419B1 (en) 2018-09-05

Similar Documents

Publication Publication Date Title
KR101431930B1 (ko) 반도체 장치 및 메모리 시스템
EP2248031B1 (en) Data bus inversion apparatus, systems, and methods
KR101800157B1 (ko) 데이터 심볼 트랜지션 기반 클록킹에 의한 멀티-와이어 싱글 엔드 푸시-풀 링크
US9048855B2 (en) Method and apparatus for parallel data interfacing using combined coding and recording medium therefor
KR20180073578A (ko) Mipi csi-2 c-phy 에 대한 의사-무작위 2진 시퀀스 시드들을 교번시키기
EP2343859B1 (en) Low latency serial memory interface
JP2007011788A (ja) メモリカード及びそのホスト機器
JP5784197B2 (ja) ホスト機器
JP2013219601A (ja) シリアルデータ送信システム
US9864540B2 (en) Interface circuit for communication, and system including the same

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: 20170719

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180718

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190718

Year of fee payment: 6