KR102254255B1 - Device including single wire interface and data processing system having the same - Google Patents

Device including single wire interface and data processing system having the same Download PDF

Info

Publication number
KR102254255B1
KR102254255B1 KR1020150099858A KR20150099858A KR102254255B1 KR 102254255 B1 KR102254255 B1 KR 102254255B1 KR 1020150099858 A KR1020150099858 A KR 1020150099858A KR 20150099858 A KR20150099858 A KR 20150099858A KR 102254255 B1 KR102254255 B1 KR 102254255B1
Authority
KR
South Korea
Prior art keywords
clock signal
clock
oversampling
slave device
frame
Prior art date
Application number
KR1020150099858A
Other languages
Korean (ko)
Other versions
KR20160118902A (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 US15/072,470 priority Critical patent/US9755821B2/en
Publication of KR20160118902A publication Critical patent/KR20160118902A/en
Priority to US15/677,202 priority patent/US9882711B1/en
Application granted granted Critical
Publication of KR102254255B1 publication Critical patent/KR102254255B1/en

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/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
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • 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
    • 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
    • G06F13/4295Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using an embedded synchronisation

Abstract

슬레이브 장치와 통신할 수 있는 마스터 장치는 싱글 와이어를 통해 어드레스를 포함하는 명령 프레임과 데이터를 포함하는 데이터 프레임을 상기 슬레이브 장치와 주고받는 하나의 패드와, 클락 신호로부터 오버샘플링 클락 신호를 생성하고, 상기 오버샘플링 클락 신호의 클락 위상들 중에서 하나의 클락 위상을 선택하는 동기화 과정과, 상기 슬레이브 장치로부터 전송된 상기 데이터 프레임에 포함된 각 비트 값을 상기 동기화 과정에서 선택된 클락 위상과 동일한 위치에 존재하는 클락 위상을 이용하여 샘플링하는 샘플링 과정을 수행하는 처리 회로를 포함한다.The master device capable of communicating with the slave device generates an oversampling clock signal from a single pad and a clock signal that exchanges a command frame including an address and a data frame including data with the slave device through a single wire, The synchronization process of selecting one of the clock phases of the oversampling clock signal, and each bit value included in the data frame transmitted from the slave device is present at the same position as the clock phase selected in the synchronization process. And a processing circuit that performs a sampling process of sampling using a clock phase.

Description

싱글 와이어 인터페이스를 포함하는 장치와 이를 포함하는 데이터 처리 시스템{DEVICE INCLUDING SINGLE WIRE INTERFACE AND DATA PROCESSING SYSTEM HAVING THE SAME}A device including a single wire interface and a data processing system including the device {DEVICE INCLUDING SINGLE WIRE INTERFACE AND DATA PROCESSING SYSTEM HAVING THE SAME}

본 발명의 개념에 따른 실시 예는 집적 회로에 관한 것으로, 특히 싱글 와이어 인터페이스를 이용하여 서로 통신할 수 있는 마스터 장치와 슬레이브 장치, 및 이들을 포함하는 데이터 처리 시스템에 관한 것이다.An embodiment according to the concept of the present invention relates to an integrated circuit, and more particularly, to a master device and a slave device capable of communicating with each other using a single wire interface, and a data processing system including the same.

전자통신(telecommunication) 또는 컴퓨터 과학(computer science)에서, 직렬 통신(serial communication)은 통신 채널 또는 컴퓨터 버스를 통해 한번에 한 비트 단위로 데이터를 전송하는 과정을 의미한다. 상기 직렬 통신은 여러 개의 병렬 채널들을 갖는 링크를 통해 동시에 여러 비트들을 전송하는 병렬 통신과 대조된다. 직렬 통신은 모든 장거리(long-haul) 통신과 대부분의 컴퓨터 네트워크들에서 사용된다.In telecommunication or computer science, serial communication refers to a process of transmitting data in units of one bit at a time through a communication channel or a computer bus. The serial communication contrasts with parallel communication, which transmits several bits at the same time over a link with several parallel channels. Serial communication is used in all long-haul communications and in most computer networks.

많은 통신 시스템들은 같은 인쇄 회로 기판(printed circuit board(PCB)) 위에서 두 개의 집적 회로들을 접속하기 위해 설계된다. 집적 회로는 많은 더 핀들을 포함할수록 더 비싸진다. 패키지에서 핀들의 개수를 줄이기 위해, 많은 집적 회로들은, 통신 속도가 중요하지 않을 때, 데이터를 전송하기 위해 직렬 버스를 사용한다. 이러한 저-비용(low-cost) 직렬 버스의 예들은 SPI(serial peripheral interface)와 I2C(inter-integrated circuit) 등을 포함한다.Many communication systems are designed to connect two integrated circuits on the same printed circuit board (PCB). An integrated circuit becomes more expensive the more pins it contains. To reduce the number of pins in the package, many integrated circuits use a serial bus to transfer data when communication speed is not critical. Examples of such low-cost serial buses include serial peripheral interface (SPI) and inter-integrated circuit (I2C).

SPI 버스는 짧은 거리 통신, 주로 임베디드 시스템들에서 사용되는 동기 직렬 통신 인터페이스(synchronous serial communication interface)이다. SPI는 3개의 핀들 또는 4개의 핀들을 사용할 수 있다. SPI는 3개의 핀들 또는 4핀들을 사용하므로, 핀들의 개수가 많고, 상기 핀들 각각에 접속된 출력 드라이버와 입력 버퍼가 존재하므로, 칩의 가격이 증가할 수 있다.The SPI bus is a synchronous serial communication interface used in short distance communication, mainly embedded systems. SPI can use 3 pins or 4 pins. Since the SPI uses 3 pins or 4 pins, the number of pins is large, and since there are output drivers and input buffers connected to each of the pins, the price of a chip may increase.

I2C는 필립스 반도체(Philips Semiconductor, 현재는 NXP Semiconductors)에 의해 발명된 멀티-마스터, 멀티-슬레이브, 싱글-엔디드(single-ended), 직렬 컴퓨터 버스이다. I2C는 마더보드, 임베디드 시스템 또는 이동 전화기 등에서 저속의 주변 기기들을 연결하기 위해 사용된다. I2C는 두 개의 양방향 오픈-드레인 라인들 (two bidirectional open-drain lines), 즉 저항들에 의해 풀업되는 직렬 데이터 라인(Serial Data Line(SDA))과 직렬 클락 라인(Serial Clock Line(SCL))을 사용한다. I2C는 접속된 두 장치들 사이에서 동기를 맞추기 위해 직렬 클락을 이용하여 직렬 데이터를 전송하므로 전력 소모가 크고, 저항을 이용하여 출력 커패시터를 충전하므로 작동 속도가 느릴 수 있다.I2C is a multi-master, multi-slave, single-ended, serial computer bus invented by Philips Semiconductor (now NXP Semiconductors). I2C is used to connect low-speed peripherals in motherboards, embedded systems, or mobile phones. I2C has two bidirectional open-drain lines, a serial data line (SDA) pulled up by resistors and a serial clock line (SCL). use. I2C uses a serial clock to transmit serial data to synchronize between two connected devices, so power consumption is large, and operation speed may be slow because the output capacitor is charged using a resistor.

본 발명이 이루고자 하는 기술적인 과제는 칩들 사이에서 데이터 전송을 위한 핀(또는 패드)의 개수를 하나로 줄여서 핀의 개수를 감소시키고, 상기 핀의 개수가 감소함에 따라 칩의 가격 경쟁력을 높이고, 상기 핀의 개수가 감소함에 따라 소모 전력을 감소시킬 수 있는 새로운 통신 프로토콜을 지원할 수 있는 장치와 이를 포함하는 데이터 처리 시스템을 제공하는 것이다.The technical problem to be achieved by the present invention is to reduce the number of pins (or pads) for data transmission between chips to one, thereby reducing the number of pins, and increasing the price competitiveness of the chip as the number of pins decreases. An apparatus capable of supporting a new communication protocol capable of reducing power consumption as the number of is reduced, and a data processing system including the same are provided.

본 발명의 실시 예에 따른, 슬레이브 장치와 통신할 수 있는 마스터 장치는 싱글 와이어를 통해 어드레스를 포함하는 명령 프레임과 데이터를 포함하는 데이터 프레임을 상기 슬레이브 장치와 주고받는 하나의 패드와, 클락 신호로부터 오버샘플링 클락 신호를 생성하고, 상기 오버샘플링 클락 신호의 클락 위상들 중에서 하나의 클락 위상을 선택하는 동기화 과정과, 상기 슬레이브 장치로부터 전송된 상기 데이터 프레임에 포함된 각 비트 값을 상기 동기화 과정에서 선택된 클락 위상과 동일한 위치에 존재하는 클락 위상을 이용하여 샘플링하는 샘플링 과정을 수행하는 처리 회로를 포함한다.According to an embodiment of the present invention, a master device capable of communicating with a slave device transmits a command frame including an address and a data frame including data through a single wire from one pad to and from the slave device, and a clock signal. A synchronization process of generating an oversampling clock signal and selecting one of the clock phases of the oversampling clock signal, and each bit value included in the data frame transmitted from the slave device are selected during the synchronization process. And a processing circuit that performs a sampling process of sampling by using a clock phase existing at the same position as the clock phase.

상기 명령 프레임과 상기 데이터 프레임 각각은 시작 비트 값과 정지 비트 값을 포함하고, 상기 처리 회로는 상기 시작 비트 값에 대해 상기 동기화 과정을 수행한다.Each of the command frame and the data frame includes a start bit value and a stop bit value, and the processing circuit performs the synchronization process on the start bit value.

상기 처리 회로는 적어도 두 개의 플립-플롭들을 포함하는 동기 검출 회로와, 데이터 처리 회로를 포함한다. 상기 동기 검출 회로는, 상기 적어도 두 개의 플립-플롭들을 이용하여, 상기 선택된 클락 위상과 관련된 클락 위상 선택 신호들을 상기 오버샘플링 클락 신호의 주기마다 생성하고, 상기 데이터 처리 회로는, 상기 오버샘플링 클락 신호의 주기마다, 상기 클락 위상 선택 신호들과 관련된 클락 위상을 이용하여 상기 데이터 프레임에 포함된 상기 각 비트 값을 샘플링한다.The processing circuit includes a synchronization detection circuit including at least two flip-flops, and a data processing circuit. The synchronization detection circuit generates clock phase selection signals related to the selected clock phase for each period of the oversampling clock signal using the at least two flip-flops, and the data processing circuit includes the oversampling clock signal Each of the bit values included in the data frame is sampled by using a clock phase associated with the clock phase selection signals at each period of.

실시 예에 따라, 상기 오버샘플링 클락 신호는 4x 오버샘플링 클락 신호일 수 있다. 실시 예에 따라, 상기 오버샘플링 클락 신호는 2x 오버샘플링 클락 신호일 수 있다.According to an embodiment, the oversampling clock signal may be a 4x oversampling clock signal. According to an embodiment, the oversampling clock signal may be a 2x oversampling clock signal.

상기 싱글 와이어는 상기 클락 신호를 상기 슬레이브 장치로 전송하는 클락 라인을 포함하지 않는다.The single wire does not include a clock line for transmitting the clock signal to the slave device.

상기 마스터 장치에서 사용되는 상기 클락 신호의 주파수는 상기 슬레이브 장치에서 사용되는 클락 신호의 주파수와 동일하다.The frequency of the clock signal used in the master device is the same as the frequency of the clock signal used in the slave device.

상기 마스터 장치는 풀-업 저항 제어 신호에 응답하여 전압 공급 라인과 상기 하나의 패드의 접속을 제어하는 풀-업 저항과, 상기 하나의 패드에 접속된 출력 드라이버를 더 포함한다.The master device further includes a pull-up resistor for controlling a connection between a voltage supply line and the one pad in response to a pull-up resistance control signal, and an output driver connected to the one pad.

상기 마스터 장치는 상기 명령 프레임에 포함된 정지 비트 값이 상기 출력 드라이버를 통해 상기 하나의 패드로 전송될 때, 상기 풀-업 저항 제어 신호를 활성화하는 제어 회로를 더 포함한다.The master device further includes a control circuit for activating the pull-up resistance control signal when a stop bit value included in the command frame is transmitted to the one pad through the output driver.

상기 마스터 장치는 패리티 비트를 포함하는 상기 명령 프레임을 생성하는 프레임 생성기를 더 포함한다.The master device further includes a frame generator for generating the command frame including a parity bit.

본 발명의 실시 예에 따른, 마스터 장치와 통신할 수 있는 슬레이브 장치는 싱글 와이어를 통해 어드레스를 포함하는 명령 프레임과 데이터를 포함하는 데이터 프레임을 상기 마스터 장치와 주고받는 하나의 패드와, 클락 신호로부터 오버샘플링 클락 신호를 생성하고, 상기 오버샘플링 클락 신호의 클락 위상들 중에서 하나의 클락 위상을 선택하고, 상기 마스터 장치로부터 전송된 상기 데이터 프레임에 포함된 각 비트 값을 선택된 클락 위상을 이용하여 샘플링하는 처리 회로를 포함한다. 상기 싱글 와이어는 상기 클락 신호를 전송하는 클락 라인을 포함하지 않는다.According to an embodiment of the present invention, a slave device capable of communicating with a master device transmits a command frame including an address and a data frame including data through a single wire from one pad to and from the master device and a clock signal. Generating an oversampling clock signal, selecting one of the clock phases of the oversampling clock signal, and sampling each bit value included in the data frame transmitted from the master device using the selected clock phase Includes a processing circuit. The single wire does not include a clock line for transmitting the clock signal.

상기 슬레이브 장치는 풀-업 저항 제어 신호에 응답하여 전압 공급 라인과 상기 하나의 패드의 접속을 제어하는 풀-업 저항과, 상기 하나의 패드에 접속된 출력 드라이버를 더 포함한다.The slave device further includes a pull-up resistor for controlling a connection between a voltage supply line and the one pad in response to a pull-up resistance control signal, and an output driver connected to the one pad.

본 발명의 실시 예에 따른, 데이터 처리 시스템은 하나의 제1패드를 포함하는 마스터 장치와, 하나의 제2패드와 상기 하나의 제2패드에 접속된 처리 회로를 포함하는 슬레이브 장치와, 상기 하나의 제1패드와 상기 하나의 제2패드 사이에 접속된 싱글 와이어를 포함하고, 상기 처리 회로는 클락 신호로부터 오버샘플링 클락 신호를 생성하고, 상기 오버샘플링 클락 신호의 클락 위상들 중에서 하나의 클락 위상을 선택하고, 상기 마스터 장치로부터 전송된 프레임에 포함된 각 비트 값을 선택된 클락 위상을 이용하여 샘플링한다.According to an embodiment of the present invention, a data processing system includes a master device including one first pad, a slave device including a second pad and a processing circuit connected to the one second pad, and the one A single wire connected between the first pad and the second pad of, and the processing circuit generates an oversampling clock signal from a clock signal, and one of the clock phases of the oversampling clock signal Then, each bit value included in the frame transmitted from the master device is sampled using the selected clock phase.

본 발명의 실시 예에 따른 마스터 장치 또는 슬레이브 장치는 싱글 와이어 인터페이스에 접속된 하나의 패드만을 포함하므로 패드의 개수가 하나로 감소하는 효과가 있다.Since the master device or the slave device according to an embodiment of the present invention includes only one pad connected to a single wire interface, the number of pads is reduced to one.

패드의 개수가 하나로 감소함에 따라, 상기 패드로 출력 데이터를 드라이빙하는 출력 드라이버의 개수와 상기 패드를 통해 입력된 입력 데이터를 처리하는 입력 버퍼의 개수도 줄일 수 있으므로, 전체적으로 다이 또는 칩의 사이즈가 감소하는 효과가 있다.As the number of pads decreases to one, the number of output drivers driving output data to the pads and the number of input buffers processing input data inputted through the pads can also be reduced, thus reducing the overall die or chip size. There is an effect.

패드의 개수가 하나로 감소함에 따라, 마스터 장치 또는 슬레이브 장치에서 소모되는 전력도 감소하는 효과가 있다.As the number of pads decreases to one, the power consumed by the master device or the slave device is also reduced.

본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 상세한 설명이 제공된다.
도 1은 본 발명의 실시 예에 따른 데이터 처리 시스템의 블록도이다.
도 2는 본 발명의 프로토콜에 따른 버스트 작동을 위한 명령 프레임 포맷의 실시 예이다.
도 3은 본 발명의 프로토콜에 따른 랜덤 작동을 위한 명령 프레임 포맷의 실시 예이다.
도 4는 본 발명의 프로토콜에 따른 데이터 프레임 포맷의 실시 예이다.
도 5는 도 2, 도 3, 또는 도 4에 도시된 프레임의 시작 필드(start field)와 이에 대한 설명이다.
도 6은 도 2, 도 3, 또는 도 4에 도시된 프레임의 정지 필드(stop field)와 이에 대한 설명이다.
도 7은 도 2, 도 3, 또는 도 4에 도시된 프레임의 모드 필드(mode field)와 이에 대한 설명이다.
도 8은 도 2 또는 도 3에 도시된 프레임의 방향 필드(direction field)와 이에 대한 설명이다.
도 9는 도 2 또는 도 3에 도시된 프레임의 랜덤 필드(random field)와 이에 대한 설명이다.
도 10은 도 2 또는 도 3에 도시된 프레임의 어드레스 필드(address field)와 이에 대한 설명이다.
도 11은 도 2에 도시된 프레임의 버스트 필드(burst field)와 이에 대한 설명이다.
도 12는 도 2에 도시된 프레임의 버스트 길이(burst length field)와 이에 대한 설명이다.
도 13은 본 발명의 실시 예에 따라 4x 오버샘플링 클락 신호를 이용하여 수행되는 동기화 과정(synchronization process)과 샘플링(sampling) 과정을 설명하기 위한 신호들의 타이밍 도이다.
도 14는 도 1에 도시된 슬레이브 장치에 포함된 제2처리 회로의 실시 예를 나타내는 블록도이다.
도 15는 도 14에 도시된 동기 검출 회로에 포함된 동기화 회로의 실시 예를 나타내는 블록도이다.
도 16은 도 14에 도시된 동기 검출 회로에 포함되고 4x 오버샘플링을 이용하여 동기화 과정을 수행하는 유한 상태 기계(finite-state machine(FSM))의 상태 도 (state diagram)이다.
도 17은 도 14에 도시된 동기 검출 회로에 포함되고 4x 오버샘플링을 이용하여 동기화 과정을 수행하는 FSM의 위상 카운트 작동을 설명하기 위한 상태 도이다.
도 18은 도 1에 도시된 슬레이브 장치에 포함된 제2처리 회로의 실시 예를 나타내는 블록도이다.
도 19는 도 18에 도시된 처리 회로에 포함된 2x 오버샘플링 클락 신호를 생성하는 클락 생성기의 실시 예를 나타낸다.
도 20은 도 18에 도시된 처리 회로에 포함된 2x 오버샘플링 클락 신호를 생성하는 클락 생성기의 실시 예를 나타낸다.
도 21은 도 18에 도시된 동기 검출 회로에 포함된 동기화 회로의 실시 예를 나타내는 블록도이다.
도 22는 본 발명의 실시 예에 따라 2x 오버샘플링 클락 신호를 이용하여 수행되는 동기화 과정과 샘플링 과정을 설명하기 위한 신호들의 타이밍 도이다.
도 23은 도 18에 도시된 동기 검출 회로에 포함되고 2x 오버샘플링을 이용하여 동기화 과정을 수행하는 FSM의 상태 도이다.
도 24는 도 18에 도시된 동기 검출 회로에 포함되고 2x 오버샘플링을 이용하여 동기화 과정을 수행하는 FSM의 위상 카운트 작동을 설명하기 위한 상태 도이다.
도 25는 4x 오버샘플링을 수행하는 장치에 포함된 동적 풀-업(dynamic pull-up) 저항을 제어하는 과정을 설명하기 위한 신호들의 타이밍 도이다.
도 26은 2x 오버샘플링을 수행하는 장치에 포함된 동적 풀-업 저항을 제어하는 과정을 설명하기 위한 신호들의 타이밍 도이다.
도 27은 패리티 비트를 포함하는 본 발명의 프로토콜에 따른 명령 프레임 포맷과 데이터 프레임 포맷을 나타낸다.
도 28은 패리티 인에이블 레지스터와 패리티 상태 레지스터를 포함하는 슬레이브 장치를 포함하는 데이터 처리 시스템의 블록도이다.
도 29는 패리티 인에이블 과정을 설명하기 위한 본 발명의 프로토콜에 따른 프레임 포맷의 실시 예이다.
도 30은 패리티 디스에이블 과정을 설명하기 위한 본 발명의 프로토콜에 따른 프레임 포맷의 실시 예이다.
도 31은 도 1에 도시된 마스터 장치가 도 1에 도시된 슬레이블 장치의 파워 모드를 제어하는 과정을 설명하는 타이밍 도이다.
도 32는 본 발명의 실시 예에 따른 클락 게이팅 회로를 나타낸다.
도 33은 도 32에 도시된 클락 게이팅 회로의 타이밍 도를 나타낸다.
도 34는 본 발명의 실시 예에 따른 데이터 처리 시스템의 블록도이다.
도 35는 본 발명의 실시 예에 따른 데이터 처리 시스템의 블록도이다.
In order to more fully understand the drawings cited in the detailed description of the present invention, a detailed description of each drawing is provided.
1 is a block diagram of a data processing system according to an embodiment of the present invention.
2 is an embodiment of a command frame format for burst operation according to the protocol of the present invention.
3 is an embodiment of a command frame format for random operation according to the protocol of the present invention.
4 is an embodiment of a data frame format according to the protocol of the present invention.
5 is a start field of the frame shown in FIG. 2, 3, or 4 and a description thereof.
6 is a stop field of the frame shown in FIG. 2, 3, or 4 and a description thereof.
7 is a mode field of the frame shown in FIG. 2, 3, or 4 and a description thereof.
8 is a direction field of the frame shown in FIG. 2 or 3 and a description thereof.
9 is a random field of the frame shown in FIG. 2 or 3 and a description thereof.
10 is an address field of the frame shown in FIG. 2 or 3 and a description thereof.
11 is a burst field of the frame shown in FIG. 2 and a description thereof.
12 is a burst length field of the frame shown in FIG. 2 and a description thereof.
13 is a timing diagram of signals for explaining a synchronization process and a sampling process performed using a 4x oversampling clock signal according to an embodiment of the present invention.
14 is a block diagram illustrating an embodiment of a second processing circuit included in the slave device illustrated in FIG. 1.
15 is a block diagram illustrating an embodiment of a synchronization circuit included in the synchronization detection circuit shown in FIG. 14.
FIG. 16 is a state diagram of a finite-state machine (FSM) included in the synchronization detection circuit shown in FIG. 14 and performing a synchronization process using 4x oversampling.
FIG. 17 is a state diagram illustrating a phase count operation of an FSM included in the synchronization detection circuit shown in FIG. 14 and performing a synchronization process using 4x oversampling.
18 is a block diagram illustrating an embodiment of a second processing circuit included in the slave device illustrated in FIG. 1.
FIG. 19 shows an embodiment of a clock generator that generates a 2x oversampling clock signal included in the processing circuit shown in FIG. 18.
FIG. 20 shows an embodiment of a clock generator that generates a 2x oversampling clock signal included in the processing circuit shown in FIG. 18.
21 is a block diagram illustrating an embodiment of a synchronization circuit included in the synchronization detection circuit shown in FIG. 18.
22 is a timing diagram of signals for explaining a synchronization process and a sampling process performed using a 2x oversampling clock signal according to an embodiment of the present invention.
FIG. 23 is a state diagram of an FSM included in the synchronization detection circuit shown in FIG. 18 and performing a synchronization process using 2x oversampling.
FIG. 24 is a diagram illustrating a phase count operation of an FSM included in the synchronization detection circuit shown in FIG. 18 and performing a synchronization process using 2x oversampling.
25 is a timing diagram of signals for explaining a process of controlling a dynamic pull-up resistance included in an apparatus for performing 4x oversampling.
26 is a timing diagram of signals for explaining a process of controlling a dynamic pull-up resistance included in an apparatus for performing 2x oversampling.
27 shows a command frame format and a data frame format according to the protocol of the present invention including a parity bit.
28 is a block diagram of a data processing system including a slave device including a parity enable register and a parity status register.
29 is an embodiment of a frame format according to the protocol of the present invention for explaining a parity enable process.
30 is an embodiment of a frame format according to the protocol of the present invention for explaining a parity disable process.
FIG. 31 is a timing diagram illustrating a process in which the master device shown in FIG. 1 controls the power mode of the slave device shown in FIG. 1.
32 shows a clock gating circuit according to an embodiment of the present invention.
33 shows a timing diagram of the clock gating circuit shown in FIG. 32;
34 is a block diagram of a data processing system according to an embodiment of the present invention.
35 is a block diagram of a data processing system according to an embodiment of the present invention.

본 명세서에 개시되어 있는 본 발명의 개념에 따른 실시 예들에 대해서 특정한 구조적 또는 기능적 설명은 단지 본 발명의 개념에 따른 실시 예들을 설명하기 위한 목적으로 예시된 것으로서, 본 발명의 개념에 따른 실시 예들은 다양한 형태들로 실시될 수 있으며 본 명세서에 설명된 실시 예들에 한정되지 않는다.Specific structural or functional descriptions of the embodiments according to the concept of the present invention disclosed in the present specification are exemplified only for the purpose of describing the embodiments according to the concept of the present invention, and the embodiments according to the concept of the present invention are It may be implemented in various forms and is not limited to the embodiments described herein.

본 발명의 개념에 따른 실시 예들은 다양한 변경들을 가할 수 있고 여러 가지 형태들을 가질 수 있으므로 실시 예들을 도면에 예시하고 본 명세서에서 상세하게 설명하고자 한다. 그러나, 이는 본 발명의 개념에 따른 실시 예들을 특정한 개시 형태들에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물, 또는 대체물을 포함한다.Since the embodiments according to the concept of the present invention can apply various changes and have various forms, the embodiments will be illustrated in the drawings and described in detail herein. However, this is not intended to limit the embodiments according to the concept of the present invention to specific disclosed forms, and includes all changes, equivalents, or substitutes included in the spirit and scope of the present invention.

제1 또는 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성 요소를 다른 구성 요소로부터 구별하는 목적으로만, 예컨대 본 발명의 개념에 따른 권리 범위로부터 벗어나지 않은 채, 제1구성 요소는 제2구성 요소로 명명될 수 있고 유사하게 제2구성 요소는 제1구성 요소로도 명명될 수 있다.Terms such as first or second may be used to describe various constituent elements, but the constituent elements should not be limited by the terms. The terms are only for the purpose of distinguishing one component from other components, for example, without departing from the scope of the rights according to the concept of the present invention, the first component may be named as the second component and similarly the second component. The constituent element may also be referred to as a first constituent element.

어떤 구성 요소가 다른 구성 요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성 요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성 요소가 다른 구성 요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는 중간에 다른 구성 요소가 존재하지 않는 것으로 이해되어야 할 것이다. 구성 요소들 간의 관계를 설명하는 다른 표현들, 즉 "~사이에"와 "바로 ~사이에" 또는 "~에 이웃하는"과 "~에 직접 이웃하는" 등도 마찬가지로 해석되어야 한다.When a component is referred to as being "connected" or "connected" to another component, it is understood that it is directly connected to or may be connected to the other component, but other components may exist in the middle. It should be. On the other hand, when a component is referred to as being "directly connected" or "directly connected" to another component, it should be understood that there is no other component in the middle. Other expressions describing the relationship between components, such as "between" and "directly between" or "adjacent to" and "directly adjacent to" should be interpreted as well.

본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로서, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 본 명세서에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성 요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present specification are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In this specification, terms such as "comprise" or "have" are intended to designate the presence of features, numbers, steps, actions, components, parts, or combinations thereof described herein, but one or more other features. It is to be understood that the presence or addition of elements or numbers, steps, actions, components, parts, or combinations thereof, does not preclude in advance the possibility of the presence or addition.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 나타낸다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 갖는 것으로 해석되어야 하며, 본 명세서에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the present invention belongs. Terms as defined in a commonly used dictionary should be construed as having a meaning consistent with the meaning of the related technology, and should not be interpreted as an ideal or excessively formal meaning unless explicitly defined in the present specification. Does not.

이하, 본 명세서에 첨부된 도면들을 참조하여 본 발명의 실시 예들을 상세히 설명한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 본 발명의 실시 예에 따른 데이터 처리 시스템의 블록도이다. 도 1을 참조하면, 데이터 처리 시스템(100)은 싱글 와이어(single wire; 110)를 통해 본 발명의 실시 예에서 정의된 전송 프레임(SPEEDY)을 주고받을 수 있는 마스터 장치 (200)와 슬레이브 장치(300)를 포함할 수 있다.1 is a block diagram of a data processing system according to an embodiment of the present invention. Referring to FIG. 1, the data processing system 100 includes a master device 200 and a slave device capable of sending and receiving a transmission frame (SPEEDY) defined in an embodiment of the present invention through a single wire 110. 300).

데이터 처리 시스템(100)은 마스터 장치(200)와 슬레이브 장치(300)로 클락 신호(TCLK)를 공급하는 클락 소스(130)를 더 포함할 수 있다. 싱글 와이어(110)는 클락 신호(TCLK)를 전송하는 클락 라인을 포함하지 않는다. 즉, 클락 소스(130)로부터 출력된 클락 신호(TCLK)는 싱글 와이어(110)와 독립적인 클락 라인(111)을 통해 슬레이브 장치(300)로 전송될 수 있다. 클락 소스(130)는 TCXO(temperature compensated crystal oscillator) 또는 크리스탈 오실레이터로 구현될 수 있으나 이에 한정되는 것은 아니다.The data processing system 100 may further include a clock source 130 that supplies a clock signal TCLK to the master device 200 and the slave device 300. The single wire 110 does not include a clock line for transmitting the clock signal TCLK. That is, the clock signal TCLK output from the clock source 130 may be transmitted to the slave device 300 through the clock line 111 independent from the single wire 110. The clock source 130 may be implemented as a temperature compensated crystal oscillator (TCXO) or a crystal oscillator, but is not limited thereto.

마스터 장치(200)로 공급되는 클락 신호(TCLK)는 "마스터 클락 신호"라 하고, 슬레이브 장치(300)로 공급되는 클락 신호(TCLK)는 "슬레이브 클락 신호"라 한다. 즉, 마스터 클락 신호의 클락 소스(130)와 슬레이브 클락 신호의 클락 소스 (130)는 동일할 수 있다. 그러나 도 35에 도시된 바와 같이, 마스터 클락 신호 (MCLK)의 클락 소스(370)와 슬레이브 클락 신호(TCLK)의 클락 소스(370-1)는 서로 다를 수 있으나, 각 처리 회로(220과 320)로 공급되는 클락 신호(TCLK)의 주파수는 동일해야 한다.The clock signal TCLK supplied to the master device 200 is referred to as a "master clock signal", and the clock signal TCLK supplied to the slave device 300 is referred to as a "slave clock signal". That is, the clock source 130 of the master clock signal and the clock source 130 of the slave clock signal may be the same. However, as shown in FIG. 35, the clock source 370 of the master clock signal MCLK and the clock source 370-1 of the slave clock signal TCLK may be different from each other, but each processing circuit 220 and 320 The frequency of the clock signal TCLK supplied to the device must be the same.

예컨대, 데이터 처리 시스템(100)은 PC(personal computer) 또는 모바일 컴퓨팅 장치일 수 있다. 상기 모바일 컴퓨팅 장치는 랩탑 컴퓨터, 이동 전화기, 스마트폰, 태블릿(tablet) PC, PDA(personal digital assistant), EDA(enterprise digital assistant), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라(digital video camera), PMP(portable multimedia player), PND(personal navigation device 또는 portable navigation device), 휴대용 게임 콘솔(handheld game console), 모바일 인터넷 장치(mobile internet device(MID)), 웨어러블 (wearable) 컴퓨터, 사물 인터넷(internet of things(IoT)) 장치, 만물 인터넷 (internet of everything(IoE)) 장치, 드론(drone), 또는 e-북(e-book)으로 구현될 수 있다.For example, the data processing system 100 may be a personal computer (PC) or a mobile computing device. The mobile computing device includes a laptop computer, a mobile phone, a smart phone, a tablet PC, a personal digital assistant (PDA), an enterprise digital assistant (EDA), a digital still camera, and a digital video camera. ), PMP (portable multimedia player), PND (personal navigation device or portable navigation device), handheld game console, mobile internet device (MID), wearable computer, Internet of Things ( It may be implemented as an internet of things (IoT)) device, an internet of everything (IoE) device, a drone, or an e-book.

싱글 와이어(110)는 디지털 비트스트림(bitstream), 즉 비트들의 시퀀스 (sequence)를 전송할 수 있는 양방향(bidirectional) 직렬 버스를 의미할 수 있다.The single wire 110 may mean a digital bitstream, that is, a bidirectional serial bus capable of transmitting a sequence of bits.

본 발명의 실시 예에 따라 정의된 프로토콜, 즉 어드레스를 전송하기 위한 명령 프레임(command frame)과 데이터를 전송하기 위한 데이터 프레임을 주고받을 수 있는 싱글 와이어(110)는 마스터 장치(200)의 하나의 제1패드(214)와 슬레이브 장치(300)의 하나의 제2패드(314) 사이에 접속될 수 있다. 여기서, 프레임은 디지털 데이터 전송 단위(digital data transmission unit)로서 비트들의 시퀀스 또는 심벌들을 포함할 수 있다. 예컨대, 싱글 와이어(110)는 전기적 전송 라인, 예컨대 PCB(printed circuit board) 기술을 이용하여 제조될 수 있는 마이크로스트립 (microstrip)으로 구현될 수 있으나 이에 한정되는 것은 아니다.A protocol defined according to an embodiment of the present invention, that is, a single wire 110 capable of sending and receiving a command frame for transmitting an address and a data frame for transmitting data, is one of the master device 200. It may be connected between the first pad 214 and one second pad 314 of the slave device 300. Here, the frame may include a sequence of bits or symbols as a digital data transmission unit. For example, the single wire 110 may be implemented as an electrical transmission line, for example, a microstrip that may be manufactured using a printed circuit board (PCB) technology, but is not limited thereto.

본 발명의 실시 예에 따른 마스터 장치(200)는 I2C(inter-integrated circuit) 버스 인터페이싱 방법 또는 SPI(serial peripheral interface) 버스 인터페이싱 방법을 사용하는 종래의 마스터 장치에 비해 패드(pad)의 개수를 줄일 수 있다. 또한, 본 발명의 실시 예에 따른 슬레이브 장치(300)는 I2C 버스 인터페이싱 방법 또는 SPI 버스 인터페이싱 방법을 사용하는 종래의 슬레이브 장치에 비해 패드의 개수를 줄일 수 있다. 여기서, 패드는 접촉 패드(contact pad) 또는 핀(pin)을 의미할 수 있으나 이에 한정되는 것은 아니다.The master device 200 according to an embodiment of the present invention reduces the number of pads compared to a conventional master device using an inter-integrated circuit (I2C) bus interfacing method or a serial peripheral interface (SPI) bus interfacing method. I can. In addition, the slave device 300 according to an embodiment of the present invention can reduce the number of pads compared to a conventional slave device using the I2C bus interfacing method or the SPI bus interfacing method. Here, the pad may mean a contact pad or a pin, but is not limited thereto.

본 발명의 실시 예에 따른 싱글 와이어(110)는 I2C 버스 인터페이싱 방법과 SPI 버스 인터페이싱 방법과 달리 클락 신호(TCLK)를 전송하는 클락 라인을 포함하지 않는다.Unlike the I2C bus interfacing method and the SPI bus interfacing method, the single wire 110 according to an embodiment of the present invention does not include a clock line for transmitting the clock signal TCLK.

본 발명의 실시 예에 따른 장치(200 또는 300)가 다이(die)일 때, 다이(200 또는 300)에 구현되는 패드의 개수가 감소함에 따라, 다이(200 또는 300)의 크기는 감소하고, 다이(200 또는 300)에서 소모되는 전력도 감소하고, 다이(200 또는 300)를 제조하는 코스트(cost)도 감소하는 효과가 있다.When the device 200 or 300 according to an embodiment of the present invention is a die, as the number of pads implemented on the die 200 or 300 decreases, the size of the die 200 or 300 decreases, The power consumed by the die 200 or 300 is also reduced, and the cost of manufacturing the die 200 or 300 is also reduced.

즉, 다이(200 또는 300)가 더 적은 실리콘(silicon) 면적에 구현될 수 있으므로, 다이(200 또는 300)의 가격 경쟁력이 증가하는 효과가 있다. 예컨대, 장치 (200 또는 300)는 집적 회로(IC), 시스템 온 칩(system on chip(SoC)) 또는 패키지 (package)로 구현될 수 있다.That is, since the die 200 or 300 can be implemented in a smaller silicon area, there is an effect of increasing the price competitiveness of the die 200 or 300. For example, the device 200 or 300 may be implemented as an integrated circuit (IC), a system on chip (SoC), or a package.

마스터 장치(200)는 슬레이브 장치(300)를 제어할 수 있는 컨트롤러 회로 또는 프로세서를 의미할 수 있다. 예컨대, 마스터 장치(200)는 베이스밴드 모뎀 프로세서 칩(baseband modem processor chip), 모뎀의 기능과 애플리케이션 프로세서(application processor(AP))의 기능을 함께 수행할 수 있는 칩, AP, 또는 모바일 AP로 구현될 수 있으나 이에 한정되는 것은 아니다.The master device 200 may refer to a controller circuit or a processor capable of controlling the slave device 300. For example, the master device 200 is implemented as a baseband modem processor chip, a chip capable of performing the functions of a modem and an application processor (AP) together, an AP, or a mobile AP. It may be, but is not limited thereto.

슬레이브 장치(300)는 무선 IC(radio frequency integrated circuit(RFIC)), 연결 칩(connectivity chip), 센서, 지문 인식(fingerprint recognition) 칩, 전력 관리 IC(power management IC), 전력 공급 모듈(power supply module), 디지털 디스플레이 인터페이스(digital display interface) 칩, 디스플레이 드라이버 (display driver) IC, 또는 터치 스크린 컨트롤러(touch screen controller)로 구현될 수 있으나 이에 한정되는 것은 아니다.The slave device 300 includes a radio frequency integrated circuit (RFIC), a connectivity chip, a sensor, a fingerprint recognition chip, a power management IC, and a power supply module. module), a digital display interface chip, a display driver IC, or a touch screen controller, but is not limited thereto.

예컨대, RFIC는 적어도 하나의 연결 칩을 포함할 수 있다. 예컨대, 연결 칩은 이동 통신을 위한 칩, WLAN(wireless local area network) 통신을 위한 칩, 블루투스 통신을 위한 칩, GNSS(global navigation satellite system) 통신을 위한 칩, FM(frequency modulation) 오디오 신호/비디오 신호를 처리하기 위한 칩, NFC (near field communication)을 위한 칩, 및/또는 Wi-Fi 통신을 위한 칩을 포함할 수 있으나 이에 한정되는 것을 아니다.For example, the RFIC may include at least one connection chip. For example, the connection chip is a chip for mobile communication, a chip for wireless local area network (WLAN) communication, a chip for Bluetooth communication, a chip for global navigation satellite system (GNSS) communication, and a frequency modulation (FM) audio signal/video. A chip for processing a signal, a chip for near field communication (NFC), and/or a chip for Wi-Fi communication may be included, but the present invention is not limited thereto.

마스터 장치(200)는 제1프레임 생성기(210), 제1출력 드라이버(212), 제1패드(214), 제1입력 버퍼(216), 제1처리 회로(220), 제1제어 회로(270), 및 제1풀-업 저항(271)을 포함할 수 있다.The master device 200 includes a first frame generator 210, a first output driver 212, a first pad 214, a first input buffer 216, a first processing circuit 220, and a first control circuit ( 270), and a first pull-up resistor 271.

제1프레임 생성기(210)는, 제1제어 회로(270)의 제어에 따라, 어드레스를 전송하기 위한 명령 프레임을 생성할 수 있다. 본 발명의 실시 예에 따른 명령 프레임은 버스트(burst) 명령 프레임과 랜덤(random) 명령 프레임으로 분류될 수 있다.The first frame generator 210 may generate a command frame for transmitting an address under control of the first control circuit 270. Command frames according to an embodiment of the present invention may be classified into a burst command frame and a random command frame.

도 2는 본 발명의 프로토콜에 따른 버스트 작동을 위한 명령 프레임 포맷의 실시 예이다. 도 2를 참조하면, 버스트 작동(burst operation)을 위한 명령 프레임 포맷(CFFB)은 복수의 필드들(START, MODE, DIR(R/W), RANDOM, ADDRESS, BURST, BURST LENGTH, 및 STOP)을 포함할 수 있다. 각 필드(START, MODE, DIR(R/W), RANDOM, ADDRESS, BURST, BURST LENGTH, 및 STOP)의 기능과 설명은 도 5부터 도 12를 참조하여 상세히 설명될 것이다. 각 필드(START, MODE, DIR(R/W), RANDOM, ADDRESS, BURST, BURST LENGTH, 및 STOP)에 포함된 비트의 개수는 예시적인 것으로서, 본 발명의 기술적 사상이 각 필드(START, MODE, DIR(R/W), RANDOM, ADDRESS, BURST, BURST LENGTH, 및 STOP)에 포함된 비트의 개수에 한정되는 것은 아니다. 여기서, 비트(bit)는 2개의 값들(예컨대, 1(또는 로직 1) 또는 0(또는 로직 0)) 중에서 어느 하나의 값을 가질 수 있다. 이하, 비트의 값은 비트 값(bit value)이라 한다.2 is an embodiment of a command frame format for burst operation according to the protocol of the present invention. 2, a command frame format (CFFB) for a burst operation includes a plurality of fields (START, MODE, DIR(R/W), RANDOM, ADDRESS, BURST, BURST LENGTH, and STOP). Can include. Functions and descriptions of each field (START, MODE, DIR(R/W), RANDOM, ADDRESS, BURST, BURST LENGTH, and STOP) will be described in detail with reference to FIGS. 5 to 12. The number of bits included in each field (START, MODE, DIR(R/W), RANDOM, ADDRESS, BURST, BURST LENGTH, and STOP) is exemplary, and the technical idea of the present invention is based on each field (START, MODE, It is not limited to the number of bits included in DIR (R/W), RANDOM, ADDRESS, BURST, BURST LENGTH, and STOP). Here, a bit may have any one of two values (eg, 1 (or logic 1) or 0 (or logic 0)). Hereinafter, the value of a bit is referred to as a bit value.

도 3은 본 발명의 프로토콜에 따른 랜덤 작동을 위한 명령 프레임 포맷의 실시 예이다. 도 3을 참조하면, 랜덤 작동을 위한 명령 프레임 포맷(CFFR)은 복수의 필드들(START, MODE, DIR(R/W), RANDOM, ADDRESS, 및 STOP)을 포함할 수 있다. 각 필드(START, MODE, DIR(R/W), RANDOM, ADDRESS, 및 STOP)의 기능과 설명은 도 5부터 도 12를 참조하여 상세히 설명될 것이다. 각 필드(START, MODE, DIR(R/W), RANDOM, ADDRESS, 및 STOP)에 포함된 비트의 개수는 예시적인 것으로서, 본 발명의 기술적 사상이 각 필드(START, MODE, DIR(R/W), RANDOM, ADDRESS, 및 STOP)에 포함된 비트의 개수에 한정되는 것은 아니다.3 is an embodiment of a command frame format for random operation according to the protocol of the present invention. Referring to FIG. 3, a command frame format (CFFR) for random operation may include a plurality of fields (START, MODE, DIR (R/W), RANDOM, ADDRESS, and STOP). Functions and descriptions of each field (START, MODE, DIR(R/W), RANDOM, ADDRESS, and STOP) will be described in detail with reference to FIGS. 5 to 12. The number of bits included in each field (START, MODE, DIR (R/W), RANDOM, ADDRESS, and STOP) is exemplary, and the technical idea of the present invention is based on each field (START, MODE, DIR (R/W) ), RANDOM, ADDRESS, and STOP).

슬레이브 장치(300)에 제1데이터(DATA1)를 라이트하기 위해, 제1프레임 생성기(210)는 제1데이터(DATA1)를 포함하는 제1출력 프레임(ODATA1)을 생성할 수 있다.In order to write the first data DATA1 to the slave device 300, the first frame generator 210 may generate a first output frame ODATA1 including the first data DATA1.

도 4는 본 발명의 프로토콜에 따른 데이터 프레임 포맷의 실시 예이다. 도 4를 참조하면, 데이터 프레임 포맷(DFF)은 복수의 필드들(START, MODE, DATA 및 STOP)을 포함할 수 있다. 각 필드(START, MODE, DATA 및 STOP)의 기능과 설명은 도 5부터 도 12를 참조하여 상세히 설명될 것이다. 각 필드(START, MODE, DATA 및 STOP)에 포함된 비트의 개수는 예시적인 것으로서, 본 발명의 기술적 사상이 각 필드(START, MODE, DATA 및 STOP)에 포함된 비트의 개수에 한정되는 것은 아니다.4 is an embodiment of a data frame format according to the protocol of the present invention. Referring to FIG. 4, the data frame format DFF may include a plurality of fields (START, MODE, DATA, and STOP). The function and description of each field (START, MODE, DATA, and STOP) will be described in detail with reference to FIGS. 5 to 12. The number of bits included in each field (START, MODE, DATA, and STOP) is exemplary, and the technical idea of the present invention is not limited to the number of bits included in each field (START, MODE, DATA, and STOP). .

예컨대, 데이터 필드(DATA)는 8-비트, 16-비트, 22-비트, 또는 32-비트로 구현될 수 있으나, 데이터 필드(DATA)에 포함되는 비트의 개수는 구현 예들에 따라 다양하게 변경될 수 있다.For example, the data field DATA may be implemented as 8-bit, 16-bit, 22-bit, or 32-bit, but the number of bits included in the data field DATA may be variously changed according to implementation examples. have.

제1출력 드라이버(212)는, 제1출력 인에이블 신호(OEN1)에 응답하여, 제1출력 프레임(ODATA1, 예컨대 명령 프레임 또는 데이터 프레임)에 포함된 각 비트(또는 각 비트 값)를 제1패드(214)로 드라이빙할 수 있다. 제1패드(214)는 제1출력 프레임(ODATA1)을 전송 프레임(SPEEDY)으로서 싱글 와이어(110)로 출력할 수 있다.In response to the first output enable signal OEN1, the first output driver 212 first converts each bit (or each bit value) included in the first output frame ODATA1, for example, a command frame or a data frame. You can drive with the pad 214. The first pad 214 may output the first output frame ODATA1 as a transmission frame SPEEDY through a single wire 110.

제1입력 버퍼(216)는 슬레이브 장치(300)로부터 출력되고 제1패드(214)를 통해 입력된 전송 프레임(SPEEDY)을 버퍼링하고, 버퍼된 제1프레임(IDATA1)에 포함된 각 비트를 제1처리 회로(220)로 전송할 수 있다. 예컨대, 버퍼된 제1프레임 (IDATA1)은 슬레이브 장치(300)로부터 리드된 리드 데이터일 수 있다.The first input buffer 216 buffers the transmission frame SPEEDY output from the slave device 300 and input through the first pad 214, and removes each bit included in the buffered first frame IDATA1. It can be transmitted to the first processing circuit 220. For example, the buffered first frame IDATA1 may be read data read from the slave device 300.

버퍼된 제1프레임(IDATA1)을 처리할 때, 제1처리 회로(220)는 클락 신호 (TCLK)로부터 오버샘플링 클락 신호를 생성하고, 생성된 오버샘플링 클락 신호의 클락 위상들 중에서 하나의 클락 위상을 선택하고(예컨대, 동기화 과정에서), 상기 오버샘플링 클락 신호의 주기마다, 선택된 클락 위상과 동일한 위치에 존재하는 클락 위상을 이용하여, 버퍼된 제1프레임(IDATA1)에 포함된 각 비트 값을 샘플링할 수 있다.When processing the buffered first frame IDATA1, the first processing circuit 220 generates an oversampling clock signal from the clock signal TCLK, and one of the clock phases of the generated oversampling clock signal. (E.g., in the synchronization process), and for each period of the oversampling clock signal, each bit value included in the buffered first frame IDATA1 is calculated using a clock phase present at the same position as the selected clock phase. Can be sampled.

예컨대, 샘플링된 각 비트 값은 마스터 장치(200)에 의해 액세스될 수 있는 메모리 장치(미도시)에 저장될 수 있으나 이에 한정되는 것은 아니다. 상기 메모리 장치는 마스터 장치(200)의 내부 또는 외부에 구현될 수 있고, 상기 메모리 장치는 DRAM과 같은 휘발성 메모리 장치 또는 플래시-기반 메모리 장치와 같은 불휘발성 메모리 장치로 구현될 수 있다.For example, each sampled bit value may be stored in a memory device (not shown) that can be accessed by the master device 200, but is not limited thereto. The memory device may be implemented inside or outside the master device 200, and the memory device may be implemented as a volatile memory device such as DRAM or a nonvolatile memory device such as a flash-based memory device.

제1제어 회로(270)는 제1출력 드라이버(212)의 인에이블을 제어하는 제1출력 인에이블 신호(OEN1)와, 제1풀-업 저항(271)을 제어하는 제1풀-업 저항 인에이블 신호(PEN1)를 생성할 수 있다. 제1출력 인에이블 신호(OEN1)와 제1풀-업 저항 인에이블 신호(PEN1)의 인에이블/디스에이블 타이밍은 도 25 및/또는 도 26에 예시적으로 도시된 타이밍 도를 참조하여 상세히 설명될 것이다.The first control circuit 270 includes a first output enable signal OEN1 that controls enable of the first output driver 212 and a first pull-up resistor that controls the first pull-up resistor 271. An enable signal PEN1 may be generated. The enable/disable timing of the first output enable signal OEN1 and the first pull-up resistor enable signal PEN1 will be described in detail with reference to the timing diagram exemplarily shown in FIGS. 25 and/or 26. Will be.

제1제어 회로(270)는 제1풀-업 저항 인에이블 신호(PEN1)의 활성화 구간을 제어할 수 있는 제어 값들을 저장하는 레지스터(272)를 포함할 수 있다. 비록, 도 1에서는 레지스터(272)가 제1제어 회로(270) 내부에 도시되어 있으나, 레지스터 (272)는 제1제어 회로(270) 외부에 구현될 수 있다. 제1제어 회로(270)는 레지스터 (272)에 저장된 제어 값들을 이용하여 제1풀-업 저항 인에이블 신호(PEN1)의 활성화 구간을 제어할 수 있다.The first control circuit 270 may include a register 272 that stores control values capable of controlling an activation period of the first pull-up resistance enable signal PEN1. Although the register 272 is shown inside the first control circuit 270 in FIG. 1, the register 272 may be implemented outside the first control circuit 270. The first control circuit 270 may control an activation period of the first pull-up resistance enable signal PEN1 using control values stored in the register 272.

제1풀-업 저항(271)은, 제1풀-업 저항 인에이블 신호(PEN1)에 응답하여, 제1작동 전압(VDD1)을 공급하는 제1전압 라인(또는 제1전압 노드)과 제1패드(214) 사이에서 접속(connect) 또는 분리(disconnect)될 수 있다. 예컨대, 제1풀-업 저항 인에이블 신호(PEN1)가 활성화되면, 제1풀-업 저항(271)은 제1전압 라인과 제1패드 (214) 사이에 접속될 수 있다. 그러나, 제1풀-업 저항 인에이블 신호(PEN1)가 비활성화되면, 제1풀-업 저항(271)은 제1전압 라인과 제1패드(214)를 분리할 수 있다. 본 명세서에서 활성화(activation)는 로우 레벨(또는 로직 0)로부터 하이 레벨(또는 로직 1)로 천이하고 비활성화는 상기 하이 레벨로부터 상기 로우 레벨로 천이하는 것으로 정의될 수 있으나 실시 예에 따라 그 반대일 수도 있다.The first pull-up resistor 271 is in response to the first pull-up resistor enable signal PEN1, a first voltage line (or a first voltage node) supplying a first operating voltage VDD1 and a first voltage line. One may be connected or disconnected between the pads 214. For example, when the first pull-up resistor enable signal PEN1 is activated, the first pull-up resistor 271 may be connected between the first voltage line and the first pad 214. However, when the first pull-up resistor enable signal PEN1 is deactivated, the first pull-up resistor 271 may separate the first voltage line from the first pad 214. In this specification, activation may be defined as a transition from a low level (or logic 0) to a high level (or logic 1), and deactivation may be defined as a transition from the high level to the low level, but the opposite is true according to embodiments. May be.

슬레이브 장치(300)는 제2프레임 생성기(310), 제2출력 드라이버(312), 제2패드(314), 제2입력 버퍼(316), 제2처리 회로(320), 제2제어 회로(370), 및 제2풀-업 저항(371)을 포함할 수 있다.The slave device 300 includes a second frame generator 310, a second output driver 312, a second pad 314, a second input buffer 316, a second processing circuit 320, and a second control circuit ( 370), and a second pull-up resistor 371.

제2프레임 생성기(310)는, 제2제어 회로(370)의 제어에 따라, 에러 비트, 상태 비트, 또는 데이터를 전송하기 위한 데이터 프레임을 생성할 수 있다.The second frame generator 310 may generate an error bit, a status bit, or a data frame for transmitting data under control of the second control circuit 370.

슬레이브 장치(300)가 제2데이터(DATA2)를 마스터 장치(200)로 전송하기 위해, 제2프레임 생성기(310)는 제2데이터(DATA2)를 포함하는 제2출력 프레임 (ODATA2)을 생성할 수 있다. 예컨대, 제2데이터(DATA2)는 마스터 장치(200)의 관점에서 리드 데이터일 수 있으나 이에 한정되는 것은 아니다.In order for the slave device 300 to transmit the second data DATA2 to the master device 200, the second frame generator 310 generates a second output frame ODATA2 including the second data DATA2. I can. For example, the second data DATA2 may be read data from the viewpoint of the master device 200, but is not limited thereto.

예컨대, 제2데이터(DATA2)는 마스터 장치(200)로부터 출력된 명령 프레임에 따라 슬레이브 장치(300)의 메모리 장치(미도시)로부터 리드된 데이터일 수 있다. 상기 메모리 장치는 휘발성 메모리 또는 불휘발성 메모리일 수 있고, 상기 메모리 장치는 슬레이브 장치(300)의 내부 또는 외부에 구현될 수 있고, 상기 메모리 장치는 슬레이브 장치(300)에 고정(fixed)될 수 있고 슬레이브 장치(300)로부터 떼어낼 수 있다(removable).For example, the second data DATA2 may be data read from a memory device (not shown) of the slave device 300 according to a command frame output from the master device 200. The memory device may be a volatile memory or a nonvolatile memory, and the memory device may be implemented inside or outside the slave device 300, and the memory device may be fixed to the slave device 300. It can be removed from the slave device 300 (removable).

제2출력 프레임(ODATA2)의 포맷은 도 4에 도시된 데이터 프레임 포맷(DFF)과 동일 또는 유사할 수 있다.The format of the second output frame ODATA2 may be the same as or similar to the data frame format DFF illustrated in FIG. 4.

제2출력 드라이버(312)는, 제2출력 인에이블 신호(OEN2)에 응답하여, 제2출력 프레임(ODATA2)에 포함된 각 비트(또는 각 비트 값)를 제2패드(314)로 드라이빙할 수 있다. 제2패드(314)는 제2출력 프레임(ODATA2)을 전송 프레임(SPEEDY)으로서 싱글 와이어(110)로 출력할 수 있다.The second output driver 312 drives each bit (or each bit value) included in the second output frame ODATA2 to the second pad 314 in response to the second output enable signal OEN2. I can. The second pad 314 may output the second output frame ODATA2 as a transmission frame SPEEDY through a single wire 110.

제2입력 버퍼(316)는 마스터 장치(200)로부터 출력되고 제2패드(314)를 통해 입력된 전송 프레임(SPEEDY)을 버퍼링하고, 버퍼된 제2프레임(IDATA2)에 포함된 각 비트를 제2처리 회로(320)로 전송할 수 있다.The second input buffer 316 buffers the transmission frame SPEEDY output from the master device 200 and input through the second pad 314, and removes each bit included in the buffered second frame IDATA2. It can be transmitted to the second processing circuit 320.

제2처리 회로(320)는 슬레이브 클락 신호(TCLK)로부터 오버샘플링 클락 신호를 생성하고, 생성된 오버샘플링 클락 신호의 클락 위상들 중에서 하나의 클락 위상을 선택하고, 상기 오버샘플링 클락 신호의 주기마다, 선택된 클락 위상과 동일한 위치에 존재하는 클락 위상을 이용하여, 버퍼된 제2프레임(IDATA2)에 포함된 각 비트 값을 샘플링할 수 있다.The second processing circuit 320 generates an oversampling clock signal from the slave clock signal TCLK, selects one clock phase from among the clock phases of the generated oversampling clock signal, and performs each period of the oversampling clock signal. , Each bit value included in the buffered second frame IDATA2 may be sampled by using the clock phase existing at the same position as the selected clock phase.

제2처리 회로(320)에 의해 샘플된 데이터가 명령 프레임에 포함된 데이터(예컨대, 라이트 명령 또는 리드 명령)일 때, 제2처리 회로(320)는 상기 라이트 명령과 관련된 라이트 작동을 위한 라이트 제어 신호들 또는 상기 리드 명령과 관련된 리드 작동을 위한 리드 제어 신호들을 생성할 수 있다.When the data sampled by the second processing circuit 320 is data included in the command frame (for example, a write command or a read command), the second processing circuit 320 controls a write operation related to the write command. Signals or read control signals for a read operation related to the read command may be generated.

제2제어 회로(370)는 제2출력 드라이버(312)의 인에이블을 제어하는 제2출력 인에이블 신호(OEN2)와 제2풀-업 저항(371)을 제어하는 제2풀-업 저항 인에이블 신호(PEN2)를 생성할 수 있다. 제2출력 인에이블 신호(OEN2)와 제2풀-업 저항 인에이블 신호(PEN2)의 인에이블/디스에이블 타이밍을 도 25 및/또는 도 26을 참조하여 상세히 설명될 것이다.The second control circuit 370 is a second output enable signal OEN2 that controls enable of the second output driver 312 and a second pull-up resistor that controls the second pull-up resistor 371. An enable signal PEN2 may be generated. The enable/disable timing of the second output enable signal OEN2 and the second pull-up resistor enable signal PEN2 will be described in detail with reference to FIGS. 25 and/or 26.

제2제어 회로(370)는 제2풀-업 저항 인에이블 신호(PEN2)의 활성화 구간을 제어할 수 있는 제어 값들을 저장하는 레지스터(372)를 포함할 수 있다. 비록, 도 1에서는 레지스터(372)가 제2제어 회로(370) 내부에 도시되어 있으나, 레지스터 (372)는 제2제어 회로(370) 외부에 구현될 수 있다. 제2제어 회로(370)는 레지스터 (372)에 저장된 제어 값들을 이용하여 제2풀-업 저항 인에이블 신호(PEN2)의 활성화 구간을 제어할 수 있다.The second control circuit 370 may include a register 372 that stores control values capable of controlling an activation period of the second pull-up resistance enable signal PEN2. Although the register 372 is shown inside the second control circuit 370 in FIG. 1, the register 372 may be implemented outside the second control circuit 370. The second control circuit 370 may control an activation period of the second pull-up resistor enable signal PEN2 using control values stored in the register 372.

제2풀-업 저항(371)은, 제2풀-업 저항 인에이블 신호(PEN2)에 응답하여, 제2작동 전압(VDD2)을 공급하는 제2전압 라인과 제2패드(314) 사이에서 접속 또는 분리될 수 있다. 예컨대, 제2풀-업 저항 인에이블 신호(PEN2)가 활성화되면, 제2풀-업 저항(371)은 제2전압 라인과 제2패드(314) 사이에 접속될 수 있다. 그러나, 제2풀-업 저항 인에이블 신호(PEN2)가 비활성화되면, 제2풀-업 저항(371)은 제2전압 라인과 제2패드(314)을 분리할 수 있다. 예컨대, 제1작동 전압(VDD1)의 레벨과 제2작동 전압(VDD2)의 레벨은 동일하거나 서로 다를 수 있다.The second pull-up resistor 371 is between the second voltage line and the second pad 314 supplying the second operating voltage VDD2 in response to the second pull-up resistor enable signal PEN2. Can be connected or disconnected. For example, when the second pull-up resistor enable signal PEN2 is activated, the second pull-up resistor 371 may be connected between the second voltage line and the second pad 314. However, when the second pull-up resistor enable signal PEN2 is deactivated, the second pull-up resistor 371 may separate the second voltage line from the second pad 314. For example, the level of the first operating voltage VDD1 and the level of the second operating voltage VDD2 may be the same or different from each other.

클락 소스(130)는 마스터 장치(200)와 슬레이브 장치(300)로 클락 신호 (TCLK)를 공급할 수 있다. 예컨대, 제1처리 회로(220)와 제2처리 회로(320) 각각은 동일한 주파수를 갖는 클락 신호(TCLK)를 이용하여 오버샘플링 클락 신호를 생성할 수 있다. 즉, 제1처리 회로(220)와 제2처리 회로(320) 각각이 동일한 주파수를 갖는 클락 신호(TCLK)를 소스 클락 신호로서 이용하므로, 제1처리 회로(220)와 제2처리 회로(320) 사이의 주파수 오프셋(frequency offset)은 제거될 수 있다.The clock source 130 may supply a clock signal TCLK to the master device 200 and the slave device 300. For example, each of the first processing circuit 220 and the second processing circuit 320 may generate an oversampling clock signal using a clock signal TCLK having the same frequency. That is, since the first processing circuit 220 and the second processing circuit 320 each use the clock signal TCLK having the same frequency as the source clock signal, the first processing circuit 220 and the second processing circuit 320 The frequency offset between) may be removed.

도 5는 도 2, 도 3, 또는 도 4에 도시된 프레임의 시작 필드(start field)와 이에 대한 설명이다. 도 5를 참조하면, 시작 필드(STRAT)의 시작 비트는 1-비트이고, 전송 프레임(SPEEDY)의 시작 필드(START)의 시작 비트 값이 "1"로부터 "0"으로 천이할 때, 데이터, 예컨대 전송 프레임(SPEEDY)의 전송이 시작됨을 지시한다. 여기서 "1"은 하이 레벨 또는 로직 "1"을 의미하고, "0"은 로우 레벨 또는 로직 "0"을 의미한다.5 is a start field of the frame shown in FIG. 2, 3, or 4 and a description thereof. Referring to FIG. 5, the start bit of the start field STRAT is 1-bit, and when the start bit value of the start field START of the transmission frame SPEEDY transitions from "1" to "0", data, For example, it indicates that transmission of a transmission frame (SPEEDY) is started. Here, “1” means a high level or logic “1”, and “0” means a low level or logic “0”.

도 6은 도 2, 도 3, 또는 도 4에 도시된 프레임의 정지 필드(stop field)와 이에 대한 설명이다. 도 6을 참조하면, 정지 필드(STOP)의 정지 비트는 1-비트이고, 전송 프레임(SPEEDY)의 정지 필드(STOP)의 정지 비트 값이 1일 때, 데이터, 예컨대 전송 프레임(SPEEDY)의 전송이 정지됨을 지시한다. 또한, 전송 프레임 (SPEEDY)의 정지 필드(STOP)의 정지 비트 값이 "1"을 유지할 때, 데이터, 예컨대 전송 프레임(SPEEDY)의 전송이 정지됨을 지시한다. 예컨대, 정지 필드(STOP)의 정지 비트의 바로 앞의 비트의 비트 값은 "0" 또는 "1"일 수 있다.6 is a stop field of the frame shown in FIG. 2, 3, or 4 and a description thereof. 6, when the stop bit of the stop field (STOP) is 1-bit and the stop bit value of the stop field (STOP) of a transmission frame (SPEEDY) is 1, data, for example, transmission of a transmission frame (SPEEDY) Indicates that this is to be stopped. Further, when the stop bit value of the stop field STOP of the transmission frame SPEEDY maintains "1", it indicates that transmission of data, for example, the transmission frame SPEEDY is stopped. For example, the bit value of the bit immediately preceding the stop bit of the stop field STOP may be "0" or "1".

비록, 도 5와 도 6에서 오버샘플링 클락 신호가 4xCLK일 경우가 도시되어 있으나 이는 예시적인 것에 불과하다.Although, the case where the oversampling clock signal is 4xCLK is illustrated in FIGS. 5 and 6, this is only exemplary.

도 7은 도 2, 도 3, 또는 도 4에 도시된 프레임의 모드 필드(mode field)와 이에 대한 설명이다. 도 7을 참조하면, 모드 필드(MODE)의 모드 비트는 1-비트이고, 상기 모드 비트는 전송 프레임(SPEEDY)이 명령 페이즈(command phase)를 위한 명령 프레임인지 데이터 페이즈를 위한 데이터 프레임인지를 지시할 수 있다. 예컨대, 도 2 또는 도 3에 도시된 명령 프레임 포맷(CFFB 또는 CFFR)의 모드 필드 (MODE)의 모드 비트 값은 "0"으로 설정될 수 있고, 도 5에 도시된 데이터 프레임 포맷(DFF)의 모드 필드(MODE)의 모드 비트 값은 "1"로 설정될 수 있다.7 is a mode field of the frame shown in FIG. 2, 3, or 4 and a description thereof. Referring to FIG. 7, the mode bit of the mode field (MODE) is 1-bit, and the mode bit indicates whether the transmission frame SPEEDY is a command frame for a command phase or a data frame for a data phase. can do. For example, the mode bit value of the mode field (MODE) of the command frame format (CFFB or CFFR) shown in FIG. 2 or 3 may be set to “0”, and the data frame format (DFF) shown in FIG. The mode bit value of the mode field MODE may be set to "1".

도 8은 도 2 또는 도 3에 도시된 프레임의 방향 필드(direction field)와 이에 대한 설명이다. 도 8을 참조하면, 방향 필드(DIR(R/W))의 지시 비트는 1-비트이다. 예컨대, 리드 작동(READ)을 위해 방향 필드(DIR(R/W))의 지시 비트 값은 "0"으로 설정될 수 있고, 라이트 작동(WRITE)을 위해 방향 필드(DIR(R/W))의 지시 비트 값은 "1"로 설정될 수 있다.8 is a direction field of the frame shown in FIG. 2 or 3 and a description thereof. Referring to FIG. 8, the indication bit of the direction field DIR(R/W) is 1-bit. For example, the value of the indication bit of the direction field (DIR(R/W)) for read operation (READ) may be set to “0”, and the direction field (DIR(R/W)) for write operation (WRITE) The indication bit value of may be set to "1".

예컨대, 마스터 장치(200)에 의해 생성된 프레임이 명령 프레임이고 방향 필드(DIR(R/W))의 지시 비트 값이 "0"으로 설정되면, 슬레이브 장치(300)는 상기 프레임에 기초하여 방향 전환을 수행할 수 있다. 여기서, "방향 전환"은 리드 데이터를 포함하는 데이터 프레임을 마스터 장치(200)로 전송하기 위해 슬레이브 장치(300)에서 수행되는 작동 전환을 의미할 수 있다. 즉, 슬레이브 장치(300)는 명령 프레임을 수신하는 수신 모드로부터 데이터 프레임을 전송하는 전송 모드로 변경될 수 있다. 도 25와 도 26에 도시된 바와 같이, 방향 전환은 각 출력 인에이블 신호(OEN1과 OEN2)의 레벨에 따라 결정될 수 있다.For example, if the frame generated by the master device 200 is a command frame and the indication bit value of the direction field (DIR(R/W)) is set to "0", the slave device 300 Conversion can be done. Here, "direction change" may mean an operation change performed by the slave device 300 to transmit a data frame including read data to the master device 200. That is, the slave device 300 may change from a reception mode for receiving a command frame to a transmission mode for transmitting a data frame. As shown in FIGS. 25 and 26, the direction change may be determined according to the levels of each of the output enable signals OEN1 and OEN2.

그러나, 마스터 장치(200)에 의해 생성된 프레임이 명령 프레임이고 방향 필드(DIR(R/W))의 지시 비트 값이 "1"로 설정되면, 슬레이브 장치(300)는 상기 프레임에 기초하여 방향 전환을 수행하지 않는다. 즉, 슬레이브 장치(300)는 데이터 프레임을 수신하기 위해 수신 모드를 그대로 유지할 수 있다.However, if the frame generated by the master device 200 is a command frame and the indication bit value of the direction field (DIR(R/W)) is set to "1", the slave device 300 Do not perform conversion. That is, the slave device 300 may maintain the receiving mode as it is in order to receive the data frame.

도 9는 도 2 또는 도 3에 도시된 프레임의 랜덤 필드(random field)와 이에 대한 설명이다. 도 9를 참조하면, 랜덤 필드(RANDOM)의 지시 비트는 1-비트이고, 랜덤 필드(RANDOM)의 지시 비트는 어드레스 필드(ADDRESS)의 어드레스 비트들(예컨대, 도 10의 ADDRESS[8:0])이 랜덤 어드레스인지 버스트 어드레스인지를 지시할 수 있다. 도 2에 도시된 명령 프레임 포맷(CFFB)의 랜덤 필드(RANDOM)의 지시 비트 값은 "0"으로 설정될 수 있고, 도 3에 도시된 명령 프레임 포맷(CFFR)의 랜덤 필드 (RANDOM)의 지시 비트 값은 "1"로 설정될 수 있다.9 is a random field of the frame shown in FIG. 2 or 3 and a description thereof. Referring to FIG. 9, the indication bits of the random field RANDOM are 1-bit, and the indication bits of the random field RANDOM are address bits of the address field ADDRESS (eg, ADDRESS[8:0] in FIG. 10). ) May indicate whether it is a random address or a burst address. The indication bit value of the random field (RANDOM) of the command frame format (CFFB) shown in FIG. 2 may be set to “0”, and the indication of the random field (RANDOM) of the command frame format (CFFR) shown in FIG. 3 The bit value can be set to "1".

도 10은 도 2 또는 도 3에 도시된 프레임의 어드레스 필드(address field)와 이에 대한 설명이다. 도 10을 참조하면, 어드레스 필드(ADDRESS)의 어드레스 비트들은 9-비트들일 수 있다. 예컨대, 어드레스 비트들이 9-비트들일 때, 어드레스 공간들은 512개의 목적지들을 지원할 수 있다. 비록, 도 10에서는 어드레스 필드 (ADDRESS)의 어드레스 비트들의 개수가 9개로 도시되어 있으나 어드레스 필드 (ADDRESS)의 어드레스 비트들의 개수는 실시 예에 따라 다양하게 변경될 수 있다.10 is an address field of the frame shown in FIG. 2 or 3 and a description thereof. Referring to FIG. 10, address bits of the address field ADDRESS may be 9-bits. For example, when the address bits are 9-bits, the address spaces can support 512 destinations. Although the number of address bits in the address field ADDRESS is shown as 9 in FIG. 10, the number of address bits in the address field ADDRESS may be variously changed according to exemplary embodiments.

도 11은 도 2에 도시된 프레임의 버스트 필드(burst field)와 이에 대한 설명이다. 도 11을 참조하면, 버스트 필드(BURST)의 지시 비트들은 2-비트들이고, "00", "01". "10" 및 "11" 각각은 버스트 타입을 나타낼 수 있다. 예컨대, "00"은 고정된(FIXED) 버스트 타입으로서 고정된-어드레스 버스트를 나타내고, "01"은 증가(INCREMENT) 버스트 타입으로서 증가하는-어드레스 버스트를 나타내고, "10"은 확장(EXTENSION) 버스트 타입으로서 확장된 특별한 명령을 나타내고, "11"은 스트림(STREAM) 타입으로서 무한한 데이터를 나타내고, 마스터 장치(200)는 많은 데이터를 갖는 라이트 명령을 사용할 수 있다.11 is a burst field of the frame shown in FIG. 2 and a description thereof. Referring to FIG. 11, indication bits of the burst field BURST are 2-bits, and "00" and "01". Each of "10" and "11" may represent a burst type. For example, "00" represents a fixed-address burst as a FIXED burst type, "01" represents an increasing-address burst as an INCREMENT burst type, and "10" represents an EXTENSION burst. A special command extended as a type is indicated, and "11" indicates infinite data as a stream (STREAM) type, and the master device 200 may use a write command having a large amount of data.

도 12는 도 2에 도시된 프레임의 버스트 길이(burst length field)와 이에 대한 설명이다. 도 12를 참조하면, 버스트 길이(BURST LENGTH)의 지시 비트들 ([4:0])은 5-비트들이고, 데이터 전송의 개수를 나타낼 수 있다.12 is a burst length field of the frame shown in FIG. 2 and a description thereof. Referring to FIG. 12, indication bits ([4:0]) of the burst length BURST LENGTH are 5-bits, and may indicate the number of data transmissions.

도 13은 본 발명의 실시 예에 따라 4x 오버샘플링 클락 신호를 이용하여 수행되는 동기화 과정과 샘플링 과정을 설명하기 위한 신호들의 타이밍 도이고, 도 14는 도 1에 도시된 슬레이브 장치에 포함된 제2처리 회로의 실시 예를 나타내는 블록도이다.13 is a timing diagram of signals for explaining a synchronization process and a sampling process performed using a 4x oversampling clock signal according to an embodiment of the present invention, and FIG. 14 is a second diagram included in the slave device shown in FIG. It is a block diagram showing an embodiment of a processing circuit.

도 1부터 도 14를 참조하면, 인에이블 신호 생성기(327-1)와 마스크 회로 (327-2)를 제외하면 슬레이브 장치(300)의 제2처리 회로(320)의 구조와 작동은 마스터 장치(200)의 제1처리 회로(220)의 구조와 작동과 동일 또는 유사하다고 가정한다. 도 13과 도 14는 4x 오버샘플링 과정을 도시한다.Referring to FIGS. 1 to 14, except for the enable signal generator 327-1 and the mask circuit 327-2, the structure and operation of the second processing circuit 320 of the slave device 300 is a master device ( It is assumed that the structure and operation of the first processing circuit 220 of 200) are the same or similar. 13 and 14 show a 4x oversampling process.

인에이블 신호 생성기(327-1)는 전송 프레임(SPEEDY)을 이용하여 인에이블 신호(EN)를 생성할 수 있다. 마스크 회로(327-2)는 인에이블 신호(EN)를 이용하여 클락 신호(TCLK)의 전송을 제어할 수 있다. 예컨대, 마스크 회로(327-2)는 논리곱 게이트로 구현될 수 있으나 이에 한정되는 것은 아니다. 즉, 슬레이브 장치(300)가 슬립 상태에 있을 때, 인에이블 신호 생성기(327-1)는 로우 레벨을 갖는 인에이블 신호(EN)를 생성할 수 있으므로, 마스크 회로(327-2)는 클락 신호(TCLK)의 전송을 차단할 수 있다. 인에이블 신호 생성기(327-1)의 구조와 작동은 도 32를 참조하여 상세히 설명될 것이다.The enable signal generator 327-1 may generate the enable signal EN by using the transmission frame SPEEDY. The mask circuit 327-2 may control transmission of the clock signal TCLK using the enable signal EN. For example, the mask circuit 327-2 may be implemented as an AND gate, but is not limited thereto. That is, when the slave device 300 is in the sleep state, the enable signal generator 327-1 can generate the enable signal EN having a low level, so the mask circuit 327-2 is a clock signal. Transmission of (TCLK) can be blocked. The structure and operation of the enable signal generator 327-1 will be described in detail with reference to FIG. 32.

비록, 도 14에서는 로우 파워 작동을 위해 클락 신호(TCLK)의 전송을 제어할 수 있는 인에이블 신호 생성기(327-1)와 마스크 회로(327-2)가 도시되어 있으나, 실시 예에 따라 인에이블 신호 생성기(327-1)와 마스크 회로(327-2)는 클락 신호 (TCLK)의 주파수보다 낮은 주파수를 갖는 클락 신호(TCLK')를 생성할 수 있는 주파수 제어 회로로 대체될 수 있다. 예컨대, 상기 주파수 제어 회로는, 슬레이브 장치 (300)가 슬립 상태에 있을 때, 전송 프레임(SPEEDY)을 이용하여 클락 신호 (TCLK)의 주파수보다 낮은 주파수를 갖는 클락 신호(TCLK')를 생성할 수 있다.Although, in FIG. 14, an enable signal generator 327-1 and a mask circuit 327-2 capable of controlling transmission of the clock signal TCLK for low power operation are shown, the enable signal generator 327-2 is shown. The signal generator 327-1 and the mask circuit 327-2 may be replaced with a frequency control circuit capable of generating a clock signal TCLK' having a frequency lower than that of the clock signal TCLK. For example, when the slave device 300 is in a sleep state, the frequency control circuit may generate a clock signal TCLK' having a frequency lower than the frequency of the clock signal TCLK by using the transmission frame SPEEDY. have.

싱글 와이어(110)를 통해 송신 장치(200 또는 300)로부터 전송된 전송 프레임(SPEEDY)은 클락 신호(TCLK)를 포함하지 않는 비동기(asynchronous) 신호들이므로, 수신 장치(300 또는 200)는 전송 프레임(SPEEDY)에 대해 동기화 과정 (synchronization process)과 오버샘플링 과정(oversampling process)을 수행할 수 있는 처리 회로(320 또는 220)를 포함할 수 있다. 예컨대, 처리 회로(320 또는 220)는 전송 프레임(SPEEDY; 예컨대, 명령 프레임 또는 데이터 프레임)마다 동기화 과정을 새롭게 수행할 수 있다.Since the transmission frame SPEEDY transmitted from the transmission device 200 or 300 through the single wire 110 is asynchronous signals that do not include the clock signal TCLK, the reception device 300 or 200 is a transmission frame A processing circuit 320 or 220 capable of performing a synchronization process and an oversampling process for (SPEEDY) may be included. For example, the processing circuit 320 or 220 may newly perform a synchronization process for each transmission frame (SPEEDY; for example, a command frame or a data frame).

마스터 장치(200)에서 사용되는 마스터 오버샘플링 클락 신호(M_4xCLK)의 위상과 슬레이브 장치(300)에서 사용되는 슬레이브 오버샘플링 클락 신호(S_4xCLK)의 위상 사이에서 위상 차이(경우에 따라, 최악의 위상 차이)가 발생했을 때, 도 13의 (a)와 (b) 각각은 두 개의 오버 샘플링 클락 신호들(M_4xCLK과 S_4xCLK) 사이에서 동기를 어떻게 검출하고 어느 시점에서 샘플링해야 데이터, 즉 전송 프레임 (SPEEDY)에 포함된 각 비트 값을 안전하게 샘플링할 수 있는지를 나타낸다.The phase difference between the phase of the master oversampling clock signal (M_4xCLK) used in the master device 200 and the slave oversampling clock signal (S_4xCLK) used in the slave device 300 (in some cases, the worst phase difference). When) occurs, each of (a) and (b) of FIG. 13 shows how to detect synchronization between two over-sampling clock signals (M_4xCLK and S_4xCLK) and sample data at some point, that is, transmission frame (SPEEDY). Indicates whether each bit value contained in can be safely sampled.

각 처리 회로(220 또는 320)는 데이터, 예컨대 전송 프레임(SPEEDY)에 포함된 각 비트 값을 정확하게 샘플링하기 위해 다음과 같은 조건들을 만족해야 한다.Each processing circuit 220 or 320 must satisfy the following conditions in order to accurately sample data, for example, each bit value included in the transmission frame SPEEDY.

첫째, 각 오버샘플링 클락 신호(M_4xCLK와 S_4xCLK)는 동일한 주파수를 갖는 클락 신호(TCLK)에 기초하여 생성되고, 각 오버샘플링 클락 신호(M_4xCLK와 S_4xCLK)의 주파수는 서로 동일해야 한다. 즉, 각 오버샘플링 클락 신호(M_4xCLK와 S_4xCLK)의 주파수가 동일하면, 주파수 오프셋 문제는 발생하지 않는다.First, each oversampling clock signal M_4xCLK and S_4xCLK is generated based on a clock signal TCLK having the same frequency, and the frequencies of each oversampling clock signal M_4xCLK and S_4xCLK must be the same. That is, if the frequencies of each of the oversampling clock signals M_4xCLK and S_4xCLK are the same, the frequency offset problem does not occur.

둘째, 위상 오프셋(phase offset)과 지터(jitter)로부터 데이터, 예컨대 전송 프레임(SPEEDY)에 포함된 각 비트 값을 정확하게 샘플링하기 위해, 각 처리 회로(220 또는 320)는 상기 각 비트 값의 중앙(center)을 샘플링하면 안전하게 상기 각 비트 값을 샘플링할 수 있다. 예컨대, 도 13의 (a)와 (b) 각각에 도시된 바와 같이, 각 샘플링 영역(SR)의 각 상승 에지(rising edge 또는 positive edge)에서 각 비트 값을 샘플링하면 상기 각 비트 값은 안전하게 샘플링될 수 있다.Second, in order to accurately sample data, for example, each bit value included in a transmission frame (SPEEDY) from a phase offset and jitter, each processing circuit 220 or 320 is positioned at the center of each bit value ( center), you can safely sample the value of each bit. For example, as shown in each of (a) and (b) of Fig. 13, when each bit value is sampled at each rising edge (rising edge or positive edge) of each sampling area (SR), each bit value is safely sampled. Can be.

셋째, 각 처리 회로(220 또는 320)는 전송 프레임(SPEEDY)의 시작 필드 (STRAT)의 시작 비트 값을 이용하여 전송 프레임(SPEEDY)의 시작을 명확하게 식별하고, 전송 프레임(SPEEDY)에 대한 동기화 과정을 수행할 수 있다.Third, each processing circuit 220 or 320 clearly identifies the start of the transmission frame (SPEEDY) by using the start bit value of the start field (STRAT) of the transmission frame (SPEEDY), and synchronizes the transmission frame (SPEEDY). The process can be carried out.

예컨대, 슬레이브 장치(300)에 대한 라이트 작동 시에, 제2처리 회로(320)는 마스터 장치(200)로부터 출력된 프레임들(예컨대, 명령 프레임과 데이터 프레임) 각각에 포함된 시작 필드(STRAT)의 시작 비트 값을 이용하여 상기 프레임들 각각의 시작을 명확하게 식별하고, 상기 프레임들 각각에 대한 동기화 과정을 수행할 수 있다.For example, when a write operation for the slave device 300 is performed, the second processing circuit 320 includes a start field (STRAT) included in each of the frames (eg, a command frame and a data frame) output from the master device 200. The start of each of the frames may be clearly identified by using the start bit value of, and a synchronization process may be performed for each of the frames.

예컨대, 슬레이브 장치(300)에 대한 리드 작동 시에, 제2처리 회로(320)는 마스터 장치(200)로부터 출력된 명령 프레임에 포함된 시작 필드(STRAT)의 시작 비트 값을 이용하여 상기 명령 프레임의 시작을 명확하게 식별하고, 상기 명령 프레임에 대한 동기화 과정을 수행할 수 있다. 그 후에, 제1처리 회로(220)는 슬레이브 장치(300)로부터 출력된 데이터 프레임에 포함된 시작 필드(STRAT)의 시작 비트 값을 이용하여 상기 데이터 프레임의 시작을 명확하게 식별하고, 상기 데이터 프레임에 대한 동기화 과정을 수행할 수 있다. 즉, 각 처리 회로(220 또는 320)는 각 프레임의 시작을 명확하게 식별하고, 동기화 과정을 수행할 수 있다.For example, during a read operation for the slave device 300, the second processing circuit 320 uses the start bit value of the start field STRAT included in the command frame output from the master device 200 to determine the command frame. It is possible to clearly identify the start of and perform a synchronization process for the command frame. After that, the first processing circuit 220 clearly identifies the start of the data frame by using the start bit value of the start field STRAT included in the data frame output from the slave device 300, and Synchronization process can be performed. That is, each processing circuit 220 or 320 may clearly identify the start of each frame and perform a synchronization process.

각 처리 회로(220 또는 320)는, 동기화 과정을 통해, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 4개의 클락 위상들(P1~P4) 중에서 하나의 클락 위상(예컨대, 도 13의 (a)의 경우 1(CASE1)에서는 두 번째 클락 위상(P2) 또는 도 13의 (b)의 경우 2(CASE2)에는 세 번째 클락 위상(P3))을 선택하고, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다, 선택된 클락 위상(예컨대, 경우 1(CASE1)에서는 두 번째 클락 위상(P2) 또는 2(CASE2)에는 세 번째 클락 위상(P3)과 동일한 위치에 존재하는 클락 위상)을 이용하여 전송 프레임(SPEEDY)에 포함된 각 비트 값을 안전하고 정확하게 샘플링할 수 있다.Each processing circuit 220 or 320, through a synchronization process, one of the four clock phases (P1 to P4) of the slave 4x oversampling clock signal (S_4xCLK) (e.g., Select the second clock phase (P2) in case 1 (CASE1) or the third clock phase (P3) in case 2 (CASE2) in Fig. 13(b), and the period of the slave 4x oversampling clock signal (S_4xCLK) Each time, a transmission frame (SPEEDY) using the selected clock phase (e.g., the second clock phase (P2) in case 1 (CASE1) or the clock phase existing at the same position as the third clock phase (P3) in 2 (CASE2)) is used. Each bit value contained in) can be safely and accurately sampled.

각 처리 회로(220 또는 320)는 전송 프레임(SPEEDY)마다 동기화 과정을 새롭게 수행할 수 있다. 따라서, 각 처리 회로(220 또는 320)는 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 4개의 클락 위상들(P1~P4) 중에서 하나의 클락 위상을 전송 프레임(SPEEDY)마다 새롭게 선택할 수 있다.Each processing circuit 220 or 320 may newly perform a synchronization process for each transmission frame SPEEDY. Accordingly, each processing circuit 220 or 320 may newly select one clock phase for each transmission frame SPEEDY from among the four clock phases P1 to P4 of the slave 4x oversampling clock signal S_4xCLK.

실시 예에 따라, 각 처리 회로(220 또는 320)는 강력한(robust) 동기화 과정을 위해 데이터 페이즈(data phase)를 변경할 수 있다. 데이터 페이즈를 변경하는 예들은 다음과 같다.Depending on the embodiment, each processing circuit 220 or 320 may change a data phase for a robust synchronization process. Examples of changing the data phase are as follows.

실시 예에 따라, 마스터 장치(200)가 마스터 클락 신호(TCLK 또는 정상 상태 (NORMAL)에서 TCLK')의 각 상승 에지에 동기된 각 데이터(즉, 전송 프레임(SPEEDY)에 포함된 각 비트 값)를 슬레이브 장치(300)로 전송하면, 제2처리 회로(320)는 슬레이브 클락 신호(TCLK 또는 정상 상태(NORMAL)에서 TCLK')의 각 상승 에지를 이용하여 상기 각 데이터(즉, 전송 프레임(SPEEDY)에 포함된 상기 각 비트 값)를 샘플링할 수 있다. 샘플링을 위해, 슬레이브 4x 오버샘플링 클락 신호 (S_4xCLK)가 사용될 수 있다.Depending on the embodiment, the master device 200 is each data synchronized to each rising edge of the master clock signal (TCLK or TCLK' in the normal state (NORMAL)) (that is, each bit value included in the transmission frame (SPEEDY)) Is transmitted to the slave device 300, the second processing circuit 320 uses each rising edge of the slave clock signal (TCLK or TCLK' in the normal state) to use the respective data (that is, the transmission frame (SPEEDY)). Each bit value included in) may be sampled. For sampling, a slave 4x oversampling clock signal (S_4xCLK) may be used.

실시 예에 따라, 마스터 클락 신호(TCLK)의 주파수와 슬레이브 클락 신호 (TCLK)의 주파수가 동일하고, 마스터 장치(200)와 슬레이브 장치(300) 사이의 거리 (예컨대, PCB의 배선 길이)가 짧고, 마스터 장치(200)로부터 슬레이브 장치(300)로 전송되는 전송 프레임(SPEEDY)의 전송 속도가 느릴 때, 마스터 장치(200)는 마스터 클락 신호(TCLK)의 각 상승 에지에 동기된 각 데이터(즉, 전송 프레임(SPEEDY)에 포함된 각 비트 값)를 슬레이브 장치(300)로 전송하면, 제2처리 회로(320)는 슬레이브 클락 신호(TCLK)의 각 하강 에지(falling edge 또는 negative edge)를 이용하여 상기 각 데이터(즉, 전송 프레임(SPEEDY)에 포함된 상기 각 비트 값)를 샘플링할 수 있다. 샘플링을 위해, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)가 사용될 수 있다.Depending on the embodiment, the frequency of the master clock signal TCLK and the frequency of the slave clock signal TCLK are the same, and the distance between the master device 200 and the slave device 300 (e.g., the wiring length of the PCB) is short, , When the transmission speed of the transmission frame (SPEEDY) transmitted from the master device 200 to the slave device 300 is low, the master device 200 is synchronized with each rising edge of the master clock signal (TCLK). , When each bit value included in the transmission frame (SPEEDY) is transmitted to the slave device 300, the second processing circuit 320 uses each falling edge or negative edge of the slave clock signal TCLK. Thus, each of the data (that is, each bit value included in the transmission frame SPEEDY) can be sampled. For sampling, a slave 4x oversampling clock signal S_4xCLK may be used.

예컨대, 각 처리 회로(220 또는 320)는 데이터 페이즈를 변경할 수 있는 정보를 저장하는 프로그램 가능한 메모리(예컨대, 도 14의 329)를 포함할 수 있다. 예컨대, 상기 프로그램 가능한 메모리는 각 제어 회로(270 또는 370)에 의해 프로그램될 수 있는 레지스터로 구현될 수 있으나 이에 한정되는 것은 아니다.For example, each processing circuit 220 or 320 may include a programmable memory (eg, 329 of FIG. 14) that stores information capable of changing a data phase. For example, the programmable memory may be implemented as a register that can be programmed by each control circuit 270 or 370, but is not limited thereto.

도 13의 (a)와 도 14를 참조하면, 제2처리 회로(320)의 실시 예에 따른 제2처리 회로(320A)는 클락 생성기(322A), 동기 검출 회로(324A), 및 제2데이터 처리 회로(328)를 포함할 수 있다. 제2처리 회로(320A)는 레지스터(329)를 더 포함할 수 있다. 예컨대, 레지스터(329)는 데이터 페이즈를 제어할 수 있는 제1정보와 동기 검출 회로(324A)의 동기화 온/오프를 제어할 수 있는 제2정보를 포함할 수 있다. 상술한 바와 같이, 상기 제1정보는 샘플링을 위한 클락 신호 또는 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 에지를 선택할 수 있는 정보일 수 있고, 상기 제2정보는 동기화 과정의 온/오프를 제어할 수 있는 정보일 수 있다. 상기 각 정보는 하나 또는 그 이상의 디지털 신호들을 포함할 수 있다.13A and 14, the second processing circuit 320A according to the embodiment of the second processing circuit 320 includes a clock generator 322A, a synchronization detection circuit 324A, and second data. Processing circuitry 328 may be included. The second processing circuit 320A may further include a register 329. For example, the register 329 may include first information capable of controlling the data phase and second information capable of controlling the synchronization on/off of the synchronization detection circuit 324A. As described above, the first information may be information for selecting an edge of a clock signal for sampling or a slave 4x oversampling clock signal (S_4xCLK), and the second information is to control on/off of the synchronization process. It can be information that can be done. Each of the pieces of information may include one or more digital signals.

동기 검출 회로(324A)가 온(on) 되면, 동기 검출 회로(324A)는 동기화 과정을 수행하고, 동기 검출 회로(324A)가 오프(off) 되면, 동기 검출 회로(324A)는 동기화 과정을 수행하지 않는다. 예컨대, 동기 검출 회로(324A)가 오프(off) 되면, 전송 프레임(SPEEDY)은 제2데이터 처리 회로(328)로 그대로 전송될 수 있다.When the synchronization detection circuit 324A is turned on, the synchronization detection circuit 324A performs a synchronization process, and when the synchronization detection circuit 324A is off, the synchronization detection circuit 324A performs a synchronization process. I never do that. For example, when the synchronization detection circuit 324A is turned off, the transmission frame SPEEDY may be transmitted to the second data processing circuit 328 as it is.

클락 생성기(322A)는 마스크 회로(327-2)로부터 출력된 슬레이브 클락 신호 (TCLK')를 이용하여 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)를 생성할 수 있다. 도 13의 (a)와 (b)에 도시된 바와 같이, 슬레이브 4x 오버샘플링 클락 신호 (S_4xCLK)는 주기마다 4개의 클락 위상들(P1~P4)을 포함할 수 있다. 실시 예에 따라, 제2처리 회로(320A)는 인에이블 신호 생성기(327-1)와 마스크 회로(327-2)를 더 포함할 수 있다. 인에이블 신호 생성기(327-1)와 마스크 회로(327-2)의 작동은 도 31부터 도 33을 참조하여 상세히 설명될 것이다.The clock generator 322A may generate a slave 4x oversampling clock signal S_4xCLK using the slave clock signal TCLK' output from the mask circuit 327-2. 13A and 13B, the slave 4x oversampling clock signal S_4xCLK may include four clock phases P1 to P4 per period. According to an embodiment, the second processing circuit 320A may further include an enable signal generator 327-1 and a mask circuit 327-2. Operations of the enable signal generator 327-1 and the mask circuit 327-2 will be described in detail with reference to FIGS. 31 to 33.

동기 검출 회로(324A)는, 전송 프레임(SPEEDY)에 포함된 각 비트 값을 샘플링하기 위해, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 4개의 클락 위상들 (P1~P4) 중에서 어느 하나의 클락 위상을 주기마다 선택할 수 있다. 또한, 동기 검출 회로(324A)는 유효 지시 신호(VALID), 데이터(DDATA), 및 위상 카운트(PCNT)를 제2데이터 처리 회로(328)로 전송할 수 있다. 예컨대, 데이터(DDATA)는 전송 프레임(SPEEDY)과 동일할 수 있다.Synchronization detection circuit 324A, in order to sample each bit value included in the transmission frame SPEEDY, any one of the four clock phases (P1 to P4) of the slave 4x oversampling clock signal (S_4xCLK). Can be selected for each cycle. In addition, the synchronization detection circuit 324A may transmit the valid indication signal VALID, the data DDATA, and the phase count PCNT to the second data processing circuit 328. For example, the data DDATA may be the same as the transmission frame SPEEDY.

동기 검출 회로(324A)는 동기 회로(324-1)와 유한 상태 기계(finite-state machine(FSM); 324-2)를 포함할 수 있다. 동기 검출 회로(324A)는 레지스터(324-3)를 더 포함할 수 있다. 레지스터(324-3)는 에러 정보 또는 타임 아웃 정보를 저장할 수 있다.The synchronization detection circuit 324A may include a synchronization circuit 324-1 and a finite-state machine (FSM) 324-2. The synchronization detection circuit 324A may further include a register 324-3. The register 324-3 may store error information or timeout information.

도 15는 도 14에 도시된 동기 검출 회로에 포함된 동기 회로의 실시 예를 나타내는 블록도이다.15 is a block diagram illustrating an embodiment of a synchronization circuit included in the synchronization detection circuit shown in FIG. 14.

도 13의 (a)부터 도 15를 참조하면, 동기 회로(324-1)는 안정된 샘플링을 위해 복수의 플립-플롭들(326-1과 326-2)을 포함할 수 있다. 제1플립-플롭(326-1)은, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)에 응답하여, 전송 프레임(SPEEDY)에 포함된 각 비트 값을 샘플링할 수 있다. 제2플립-플롭(326-2)은, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)에 응답하여, 제1플립-플롭(326-1)으로부터 출력된 각 비트 값을 샘플링하고, 샘플링된 각 비트 값(SD0=DDATA)을 출력할 수 있다. 복수의 플립-플롭들(326-1과 326-2)은 샘플링 회로를 구성할 수 있다.13A to 15, the synchronization circuit 324-1 may include a plurality of flip-flops 326-1 and 326-2 for stable sampling. The first flip-flop 326-1 may sample each bit value included in the transmission frame SPEEDY in response to the slave 4x oversampling clock signal S_4xCLK. The second flip-flop 326-2 samples each bit value output from the first flip-flop 326-1 in response to the slave 4x oversampling clock signal S_4xCLK, and each sampled bit value (SD0=DDATA) can be output. The plurality of flip-flops 326-1 and 326-2 may constitute a sampling circuit.

도 16은 도 14에 도시된 동기 검출 회로에 포함되고 4x 오버샘플링을 이용하여 동기화 과정(synchronization process)을 수행하는 유한 상태 기계(finite-state machine(FSM))의 상태 도(state diagram)이고, 도 17은 도 14에 도시된 동기 검출 회로에 포함되고 4x 오버샘플링을 이용하여 동기화 과정을 수행하는 FSM의 위상 카운트 작동을 설명하기 위한 상태 도이다.FIG. 16 is a state diagram of a finite-state machine (FSM) included in the synchronization detection circuit shown in FIG. 14 and performing a synchronization process using 4x oversampling, FIG. 17 is a state diagram illustrating a phase count operation of an FSM included in the synchronization detection circuit shown in FIG. 14 and performing a synchronization process using 4x oversampling.

도 13의 (a)부터 도 17을 참조하면, FSM(324-2)은, 동기 회로(324-1)에 의해 샘플링된 데이터(SD0=DDATA), 수신 인에이블 신호(RxEN), 및 프레임 종료 신호 (EndFrame)를 이용하여, 유효 지시 신호(VALID)와 위상 카운트(PCNT)를 생성할 수 있다.13A to 17, the FSM 324-2 includes data sampled by the synchronization circuit 324-1 (SD0=DDATA), a reception enable signal RxEN, and a frame end. Using the signal (EndFrame), it is possible to generate a valid indication signal (VALID) and a phase count (PCNT).

예컨대, 도 14에 도시된 바와 같이 슬레이브 장치(300)가 수신 모드일 때 수신 인에이블 신호(RxEN)는 "1"로 활성화되고, 슬레이브 장치(300)가 송신 모드일 때 수신 인에이블 신호(RxEN)는 "0"으로 비활성화된다고 가정한다. 또한, 전송 프레임(SPEEDY)의 전송이 종료되지 않았을 때 프레임 종료 신호(EndFrame)는 "0"으로 비활성화되고, 전송 프레임(SPEEDY)의 전송이 종료되었을 때 프레임 종료 신호 (EndFrame)는 "1"로 활성화된다고 가정한다. 위상 카운트(PCNT)는, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다, 각 클락 위상(P1-P4)의 상승 에지에 응답하여 4, 3, 2, 1 순서로 다운-카운트(down-count) 된다고 가정한다. 그러나, 실시 예에 따라, 위상 카운트(PCNT)는, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다, 각 클락 위상(P1-P4)의 상승 에지에 응답하여 1, 2, 3, 및 4 순서로 업-카운트(up-count) 될 수도 있다.For example, as shown in FIG. 14, when the slave device 300 is in the reception mode, the reception enable signal RxEN is activated to "1", and when the slave device 300 is in the transmission mode, the reception enable signal RxEN ) Is assumed to be deactivated to "0". In addition, when the transmission of the transmission frame (SPEEDY) is not finished, the frame end signal (EndFrame) is deactivated to "0", and when the transmission of the transmission frame (SPEEDY) is finished, the frame end signal (EndFrame) is set to "1". It is assumed to be active. The phase count (PCNT) is, for each period of the slave 4x oversampling clock signal (S_4xCLK), in response to the rising edge of each clock phase (P1-P4), down-counting in the order of 4, 3, 2, 1 ). However, according to the embodiment, the phase count (PCNT) is in the order of 1, 2, 3, and 4 in response to the rising edge of each clock phase (P1-P4) for each period of the slave 4x oversampling clock signal (S_4xCLK). It can also be up-counted.

예컨대, 동기 회로(324-1)는, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 첫 번째 클락 위상(P1)의 상승 에지를 이용하여, 시작 필드(START)의 시작 비트 값을 샘플링하고, 샘플된 비트 값(SD0=0)을 출력한다. 샘플된 비트 값(SD0)이 "0"이므로, 첫 번째 클락 위상(P1)의 상승 에지는 동기화 검출 영역(SDR)에 포함된다.For example, the synchronization circuit 324-1 samples the start bit value of the start field START by using the rising edge of the first clock phase P1 of the slave 4x oversampling clock signal S_4xCLK, and the sampled Outputs the bit value (SD0=0). Since the sampled bit value SD0 is "0", the rising edge of the first clock phase P1 is included in the synchronization detection area SDR.

즉, 동기 회로(324-1)는 동기화 검출 영역(SDR)에서 동기화 작동을 수행할 수 있다. 도 13의 (a)와 (b)에서 THRESHOLD는 "0"을 검출할 수 있는 값을 의미할 수 있다.That is, the synchronization circuit 324-1 may perform a synchronization operation in the synchronization detection area SDR. In FIGS. 13A and 13B, THRESHOLD may mean a value capable of detecting “0”.

아이들 상태(IDLE)의 FSM(324-2)은, 첫 번째 클락 위상(P1)에서 샘플된 비트 값(SD0=0)과 활성화된 수신 인에이블 신호(RxEN=1)와 에 응답하여, 동기화 진행 상태(SYNC)로 천이(transition)할 수 있다. 이때, FSM(324-2)은 첫 번째 클락 위상 (P1)의 상승 에지를 카운트하고 위상 카운트(PCNT)로서 "4"를 출력할 수 있다.The FSM 324-2 in the idle state (IDLE) proceeds in synchronization in response to the bit value (SD0=0) sampled in the first clock phase (P1) and the activated receive enable signal (RxEN=1). It can transition to the state (SYNC). At this time, the FSM 324-2 may count the rising edge of the first clock phase P1 and output “4” as the phase count PCNT.

동기화 진행 상태(SYNC)에서, 에러 또는 글리치(glitch)에 의해 활성화된 수신 인에이블 신호(RxEN)가 "0"으로 천이하거나 샘플된 비트 값(SD0)이 "1"로 천이하면, FSM(324-2)은 동기화 진행 상태(SYNC)로부터 아이들 상태(IDLE)로 천이하고 에러 신호(ERROR)를 생성할 수 있다. 에러 신호(ERROR)에 해당하는 비트 값은 레지스터(324-3)에 저장될 수 있다.In the synchronization progress state (SYNC), when the receive enable signal (RxEN) activated by an error or glitch transitions to "0" or the sampled bit value (SD0) transitions to "1", the FSM 324 -2) may transition from the synchronization progress state (SYNC) to the idle state (IDLE) and generate an error signal (ERROR). The bit value corresponding to the error signal ERROR may be stored in the register 324-3.

동기화 진행 상태(SYNC)에서, 동기 회로(324-1)는, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 두 번째 클락 위상(P2)의 상승 에지를 이용하여, 시작 필드 (START)의 시작 비트 값을 샘플링하고, 샘플된 비트 값(SD0=0)을 출력할 수 있다. 즉, 동기화 진행 상태(SYNC)에서, FSM(324-2)은, 두 번째 클락 위상(P2)의 상승 에지에서 샘플된 비트 값(SD0=0)과 활성화된 수신 인에이블 신호(RxEN=1)에 응답하여, 동기화 완료 상태(SYNC_DONE)로 천이할 수 있다. 즉, 첫 번째 클락 위상(P1)의 상승 에지에서 샘플된 비트 값(SD0=0)과 두 번째 클락 위상(P2)의 상승 에지에서 샘플된 비트 값(SD0=0)이 모두 "0"일 때, FSM(324-2)은 동기화 진행 상태(SYNC)로부터 동기화 완료 상태(SYNC_DONE)로 천이할 수 있다. 이때, FSM(324-2)은 두 번째 클락 위상(P2)의 상승 에지를 카운트하고 위상 카운트(PCNT)로서 "3"를 출력할 수 있다. 예컨대, 위상 카운트(PCNT)로서 "3"이 출력될 때, FSM(324-2)은 활성화된 유효 지시 신호(VALID)를 생성할 수 있다.In the synchronization progress state (SYNC), the synchronization circuit 324-1 uses the rising edge of the second clock phase (P2) of the slave 4x oversampling clock signal (S_4xCLK), the start bit value of the start field (START). May be sampled, and a sampled bit value (SD0=0) may be output. That is, in the synchronization progress state (SYNC), the FSM 324-2, the bit value sampled at the rising edge of the second clock phase (P2) (SD0 = 0) and the activated receive enable signal (RxEN = 1) In response to, it is possible to transition to the synchronization complete state (SYNC_DONE). That is, when the bit value sampled at the rising edge of the first clock phase (P1) (SD0=0) and the bit value sampled at the rising edge of the second clock phase (P2) are “0” , The FSM 324-2 may transition from a synchronization progress state (SYNC) to a synchronization completion state (SYNC_DONE). At this time, the FSM 324-2 may count the rising edge of the second clock phase P2 and output "3" as the phase count PCNT. For example, when "3" is output as the phase count PCNT, the FSM 324-2 may generate an activated valid indication signal VALID.

FSM(324-2)은 세 번째 클락 위상(P3)의 상승 에지를 카운트하고 위상 카운트(PCNT)로서 "2"를 출력할 수 있고, 네 번째 클락 위상(P4)의 상승 에지를 카운트하고 위상 카운트(PCNT)로서 "1"를 출력할 수 있다. 예컨대, FSM(324-2)은, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다, 현재 클락 위상이 4개의 클락 위상들(P1-P4) 중에서 몇 번째 클락 위상인지를 지시하는 위상 카운트(PCNT)를 생성할 수 있다.The FSM 324-2 can count the rising edge of the third clock phase (P3) and output "2" as the phase count (PCNT), and count the rising edge of the fourth clock phase (P4) and count the phase. "1" can be output as (PCNT). For example, the FSM 324-2, for each period of the slave 4x oversampling clock signal S_4xCLK, is a phase count (PCNT) indicating which clock phase is the current clock phase among the four clock phases P1-P4. ) Can be created.

또한, FSM(324-2)은, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다, 두 번째 클락 위상(P2)이 전송 프레임(SPEEDY)에 포함된 각 비트 값을 샘플링을 위한 클락 위상임을 지시하는 활성화된 유효 지시 신호(VALID)를 생성할 수 있다.In addition, the FSM 324-2 indicates that the second clock phase P2 is a clock phase for sampling each bit value included in the transmission frame SPEEDY for each period of the slave 4x oversampling clock signal S_4xCLK. It is possible to generate an activated valid indication signal VALID.

제2데이터 처리 회로(328)는 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK), 유효 지시 신호(VALID), 데이터(DDATA), 및 위상 카운트(PCNT)를 수신하고, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다 두 번째 클락 위상(P2)의 상승 에지를 이용하여 데이터(DDATA)에 포함된 각 비트 값(예컨대, D7과 D6)을 샘플링할 수 있다. 예컨대, 유효 지시 신호(VALID)는 위상 카운트(PCNT)가 "3"일 때마다 활성화된 펄스 형태를 가질 수 있으나 이에 한정되는 것은 아니다.The second data processing circuit 328 receives a slave 4x oversampling clock signal (S_4xCLK), a valid indication signal (VALID), data (DDATA), and a phase count (PCNT), and receives the slave 4x oversampling clock signal (S_4xCLK). Each bit value (eg, D7 and D6) included in the data DDATA may be sampled using the rising edge of the second clock phase P2 for each period of. For example, the valid indication signal VALID may have an activated pulse shape whenever the phase count PCNT is “3”, but is not limited thereto.

수신 인에이블 신호(RxEN)가 "1"이 아닐 때(!RxEN) 또는 전송 프레임 (SPEEDY)의 수신이 완료되었을 때, FSM(324-2)의 상태는 동기화 완료 상태 (SYNC_DONE)로부터 아이들(IDLE)로 천이할 수 있다. 또한, 수신 인에이블 신호 (RxEN)가 "1"이 아닐 때(!RxEN), 전송 프레임(SPEEDY)의 수신이 완료되었을 때, 또는 에러가 발생했을 때, FSM(324-2)은 위상 카운트 상태(PHASE COUNT)로부터 아이들(IDLE)로 천이할 수 있다.When the reception enable signal (RxEN) is not "1" (!RxEN) or when the reception of the transmission frame (SPEEDY) is completed, the status of the FSM 324-2 is set to idle (IDLE) from the synchronization completion status (SYNC_DONE). ). In addition, when the reception enable signal (RxEN) is not "1" (!RxEN), when the reception of the transmission frame (SPEEDY) is completed, or when an error occurs, the FSM 324-2 is in a phase count state. You can transition from (PHASE COUNT) to IDLE.

제2데이터 처리 회로(328)는 동기 회로(324-1)로부터 출력된 데이터 (DDATA=SPEEDY)에 포함된 각 비트 값을 슬레이브 4x 오버샘플링 클락 신호 (S_4xCLK)의 두 번째 클락 위상(P2)마다 샘플링하고, 샘플링 결과에 따라 라이트 작동 또는 리드 작동을 위한 제어 신호들을 생성할 수 있다.The second data processing circuit 328 converts each bit value included in the data (DDATA=SPEEDY) output from the synchronization circuit 324-1 for each second clock phase (P2) of the slave 4x oversampling clock signal (S_4xCLK). It is possible to sample and generate control signals for a write operation or a read operation according to the sampling result.

도 13의 (a)의 경우 1(CASE1)은, 슬레이브 4x 오버샘플링 클락 신호 (S_4xCLK)의 위상이 가장 빠를 때(예컨대, 마스터 4x 오버샘플링 클락 신호 (M_4xCLK)의 위상과 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 위상의 차이가 가장 작을 때), 복수의 클락 위상들(P1-P4) 중에서 어느 하나의 클락 위상(예컨대, P2)을 선택하는 과정을 설명하기 위한 타이밍 도이다.In the case of (a) of FIG. 13, 1 (CASE1) is when the phase of the slave 4x oversampling clock signal (S_4xCLK) is the fastest (e.g., the phase of the master 4x oversampling clock signal (M_4xCLK) and the slave 4x oversampling clock signal (When the difference in phase of S_4xCLK is the smallest), this is a timing diagram for explaining a process of selecting any one clock phase (eg, P2) from among a plurality of clock phases P1-P4.

동기 회로(234-1)는, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다, 4개의 클락 위상들(P1-P4) 중에서 두 번째 클락 위상(P2)을 선택하고, 선택 결과에 상응하는 활성화된 유효 지시 신호(VALID)를 제2데이터 처리 회로(328)로 출력할 수 있다.The synchronization circuit 234-1 selects a second clock phase P2 from among four clock phases P1-P4 for each period of the slave 4x oversampling clock signal S_4xCLK, and activates corresponding to the selection result. The valid indication signal VALID may be output to the second data processing circuit 328.

도 13의 (b)의 경우 2(CASE2)는, 슬레이브 4x 오버샘플링 클락 신호 (S_4xCLK)의 위상이 가장 느릴 때(예컨대, 마스터 4x 오버샘플링 클락 신호 (M_4xCLK)의 위상과 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 위상의 차이가 가장 클 때), 복수의 클락 위상들(P1-P4) 중에서 어느 하나의 클락 위상(예컨대, P3)을 선택하는 과정을 설명하기 위한 타이밍 도이다.In the case of (b) of FIG. 13, 2 (CASE2) is when the phase of the slave 4x oversampling clock signal (S_4xCLK) is the slowest (e.g., the phase of the master 4x oversampling clock signal (M_4xCLK) and the slave 4x oversampling clock signal (When the phase difference of S_4xCLK is the largest), a timing diagram for explaining a process of selecting any one clock phase (eg, P3) from among a plurality of clock phases P1-P4.

동기 회로(324-1)는, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 첫 번째 클락 위상(P1)의 상승 에지를 이용하여, 시작 필드(START)의 시작 비트 값을 샘플링하고, 샘플된 비트 값(SD0=1)을 출력한다고 가정한다. 이때 샘플된 비트 값(SD0)이 "0"이 아니므로, 첫 번째 클락 위상(P1)의 상승 에지는 동기화 검출 영역(SDR)에 포함되지 않는다. FSM(324-2)은 첫 번째 클락 위상(P1)의 상승 에지를 카운트하고 위상 카운트(PCNT)를 출력하지 않을 수 있으나 이에 한정되는 것은 아니다. 즉, 샘플된 비트 값(SD0)이 "0"일 때, 위상 카운트(PCNT)는 출력될 수 있으나 위상 카운트(PCNT)의 출력 타이밍을 실시 예에 따라 다양하게 변경될 수 있다.The synchronization circuit 324-1 samples the start bit value of the start field START by using the rising edge of the first clock phase P1 of the slave 4x oversampling clock signal S_4xCLK, and the sampled bit value. Assume that (SD0=1) is output. At this time, since the sampled bit value SD0 is not "0", the rising edge of the first clock phase P1 is not included in the synchronization detection area SDR. The FSM 324-2 may count the rising edge of the first clock phase P1 and may not output the phase count PCNT, but is not limited thereto. That is, when the sampled bit value SD0 is "0", the phase count PCNT may be output, but the output timing of the phase count PCNT may be variously changed according to exemplary embodiments.

동기 회로(324-1)는, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 두 번째 클락 위상(P2)의 상승 에지를 이용하여, 시작 필드(START)의 시작 비트 값을 샘플링하고, 샘플된 비트 값(SD0=0)을 출력할 수 있다. 이때 샘플된 비트 값(SD0)이 "0"이므로, 두 번째 클락 위상(P2)의 상승 에지는 동기화 검출 영역(SDR)에 포함된다.The synchronization circuit 324-1 samples the start bit value of the start field START by using the rising edge of the second clock phase P2 of the slave 4x oversampling clock signal S_4xCLK, and the sampled bit value. (SD0=0) can be output. At this time, since the sampled bit value SD0 is "0", the rising edge of the second clock phase P2 is included in the synchronization detection area SDR.

아이들 상태(IDLE)의 FSM(324-2)은, 두 번째 클락 위상(P2)에서 샘플된 비트 값(SD0=0)과 활성화된 수신 인에이블 신호(RxEN=1)에 응답하여, 동기화 진행 상태 (SYNC)로 천이할 수 있다. 이때, FSM(324-2)은 두 번째 클락 위상(P2)의 상승 에지를 카운트하고 위상 카운트(PCNT)로서 "4"를 출력할 수 있다.The FSM 324-2 in the idle state (IDLE) is in response to the bit value (SD0=0) sampled in the second clock phase (P2) and the activated receive enable signal (RxEN=1), and the synchronization is in progress. Transition to (SYNC) is possible. At this time, the FSM 324-2 may count the rising edge of the second clock phase P2 and output "4" as the phase count PCNT.

동기화 진행 상태(SYNC)에서, 에러 또는 글리치에 의해 활성화된 수신 인에이블 신호(RxEN)가 "0"으로 천이하거나 샘플된 비트 값(SD0)이 "1"로 천이하면, FSM(324-2)은 동기화 진행 상태(SYNC)로부터 아이들 상태(IDLE)로 천이하고 에러 신호(ERROR)를 생성할 수 있다. 에러 신호(ERROR)에 해당하는 비트 값은 레지스터 (324-3)에 저장될 수 있다.In the synchronization progress state (SYNC), if the receive enable signal (RxEN) activated by an error or glitch transitions to "0" or the sampled bit value (SD0) transitions to "1", FSM (324-2) May transition from the synchronization progress state (SYNC) to the idle state (IDLE) and generate an error signal (ERROR). The bit value corresponding to the error signal ERROR may be stored in the register 324-3.

동기화 진행 상태(SYNC)에서, 동기 회로(324-1)는, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 세 번째 클락 위상(P3)의 상승 에지를 이용하여, 시작 필드 (START)의 시작 비트 값을 샘플링하고, 샘플된 비트 값(SD0=0)을 출력할 수 있다. 즉, 동기화 진행 상태(SYNC)에서, FSM(324-2)은, 세 번째 클락 위상(P3)의 상승 에지에서 샘플된 비트 값(SD0=0)과 활성화된 수신 인에이블 신호(RxEN=1)에 응답하여, 동기화 완료 상태(SYNC_DONE)로 천이할 수 있다. 즉, 두 번째 클락 위상(P2)의 상승 에지에서 샘플된 비트 값(SD0=0)과 세 번째 클락 위상(P3)의 상승 에지에서 샘플된 비트 값(SD0=0)이 모두 "0"일 때, FSM(324-2)은 동기화 진행 상태(SYNC)로부터 동기화 완료 상태(SYNC_DONE)로 천이할 수 있다. 이때, FSM(324-2)은 세 번째 클락 위상(P3)의 상승 에지를 카운트하고 위상 카운트(PCNT)로서 "3"를 출력할 수 있다. 예컨대, 위상 카운트(PCNT)로서 "3"이 출력될 때, FSM(324-2)은 활성화된 유효 지시 신호(VALID)를 생성할 수 있다.In the synchronization progress state (SYNC), the synchronization circuit 324-1 uses the rising edge of the third clock phase (P3) of the slave 4x oversampling clock signal (S_4xCLK), the start bit value of the start field (START). May be sampled, and a sampled bit value (SD0=0) may be output. That is, in the synchronization progress state (SYNC), the FSM 324-2, the bit value sampled at the rising edge of the third clock phase (P3) (SD0 = 0) and the activated receive enable signal (RxEN = 1) In response to, it is possible to transition to the synchronization complete state (SYNC_DONE). That is, when the bit value sampled at the rising edge of the second clock phase (P2) (SD0=0) and the bit value sampled at the rising edge of the third clock phase (P3) are “0” , The FSM 324-2 may transition from a synchronization progress state (SYNC) to a synchronization completion state (SYNC_DONE). In this case, the FSM 324-2 may count the rising edge of the third clock phase P3 and output “3” as the phase count PCNT. For example, when "3" is output as the phase count PCNT, the FSM 324-2 may generate an activated valid indication signal VALID.

FSM(324-2)은 네 번째 클락 위상(P4)의 상승 에지를 카운트하고 위상 카운트(PCNT)로서 "2"를 출력할 수 있다. 예컨대, FSM(324-2)은, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다, 현재 클락 위상이 4개의 클락 위상들(P1-P4) 중에서 몇 번째 클락 위상인지를 지시하는 위상 카운트(PCNT)를 생성할 수 있다.The FSM 324-2 may count the rising edge of the fourth clock phase P4 and output "2" as the phase count PCNT. For example, the FSM 324-2, for each period of the slave 4x oversampling clock signal S_4xCLK, is a phase count (PCNT) indicating which clock phase is the current clock phase among the four clock phases P1-P4. ) Can be created.

또한, FSM(324-2)은, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다, 세 번째 클락 위상(P3)이 전송 프레임(SPEEDY)에 포함된 각 비트 값을 샘플링을 위한 클락 위상임을 지시하는 활성화된 유효 지시 신호(VALID)를 생성할 수 있다.In addition, the FSM 324-2 indicates that the third clock phase P3 is a clock phase for sampling each bit value included in the transmission frame SPEEDY for each period of the slave 4x oversampling clock signal S_4xCLK. It is possible to generate an activated valid indication signal VALID.

제2데이터 처리 회로(328)는 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK), 유효 지시 신호(VALID), 데이터(DDATA), 및 위상 카운트(PCNT)를 수신하고, 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다 세 번째 클락 위상(P3)의 상승 에지를 이용하여 데이터(DDATA)에 포함된 각 비트 값(예컨대, D7과 D6)을 샘플링할 수 있다. 예컨대, 유효 지시 신호(VALID)는 위상 카운트(PCNT)가 "3"일 때마다 활성화된 펄스 형태를 가질 수 있으나 이에 한정되는 것은 아니다.The second data processing circuit 328 receives a slave 4x oversampling clock signal (S_4xCLK), a valid indication signal (VALID), data (DDATA), and a phase count (PCNT), and receives the slave 4x oversampling clock signal (S_4xCLK). Each bit value (eg, D7 and D6) included in the data DDATA may be sampled by using the rising edge of the third clock phase P3 for each period of. For example, the valid indication signal VALID may have an activated pulse shape whenever the phase count PCNT is “3”, but is not limited thereto.

수신 인에이블 신호(RxEN)가 "1"이 아닐 때(!RxEN) 또는 전송 프레임 (SPEEDY)의 수신이 완료되었을 때, FSM(324-2)의 상태는 동기화 완료 상태 (SYNC_DONE)로부터 아이들(IDLE)로 천이할 수 있다. 또한, 수신 인에이블 신호 (RxEN)가 "1"이 아닐 때(!RxEN), 전송 프레임(SPEEDY)의 수신이 완료되었을 때, 또는 에러가 발생했을 때, FSM(324-2)은 위상 카운트 상태(PHASE COUNT)로부터 아이들(IDLE)로 천이할 수 있다.When the reception enable signal (RxEN) is not "1" (!RxEN) or when the reception of the transmission frame (SPEEDY) is completed, the status of the FSM 324-2 is set to idle (IDLE) from the synchronization completion status (SYNC_DONE). ). In addition, when the reception enable signal (RxEN) is not "1" (!RxEN), when the reception of the transmission frame (SPEEDY) is completed, or when an error occurs, the FSM 324-2 is in a phase count state. You can transition from (PHASE COUNT) to IDLE.

제2데이터 처리 회로(328)는 동기 회로(324-1)로부터 출력된 데이터 (DDATA=SPEEDY)에 포함된 각 비트 값을 슬레이브 4x 오버샘플링 클락 신호(S_4xCLK)의 세 번째 클락 위상(P3)마다 샘플링하고, 샘플링 결과에 따라 라이트 작동 또는 리드 작동을 위한 제어 신호들을 생성할 수 있다.The second data processing circuit 328 converts each bit value included in the data (DDATA=SPEEDY) output from the synchronization circuit 324-1 for each third clock phase P3 of the slave 4x oversampling clock signal S_4xCLK. It is possible to sample and generate control signals for a write operation or a read operation according to the sampling result.

동기 회로(234-1)는, 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다, 4개의 클락 위상들(P1-P4) 중에서 세 번째 클락 위상(P3)을 선택하고, 선택 결과에 해당하는 유효 지시 신호(VALID)를 제2데이터 처리 회로(328)로 출력할 수 있다.The synchronization circuit 234-1 selects the third clock phase P3 from the four clock phases P1-P4 for each period of the 4x oversampling clock signal S_4xCLK, and a valid indication corresponding to the selection result The signal VALID may be output to the second data processing circuit 328.

제2데이터 처리 회로(328)는, 4x 오버샘플링 클락 신호(S_4xCLK)의 주기마다, 유효 지시 신호(VALID)와 위상 카운트(PCNT)에 기초하여 4개의 클락 위상들 (P1-P4) 중에서 세 번째 클락 위상(P3)을 이용하여 프레임에 포함된 각 비트 값에 대한 샘플링을 수행할 수 있다.The second data processing circuit 328 is a third of the four clock phases P1-P4 based on the valid indication signal VALID and the phase count PCNT for each period of the 4x oversampling clock signal S_4xCLK. Sampling of each bit value included in the frame may be performed using the clock phase P3.

도 18은 도 1에 도시된 슬레이브 장치에 포함된 제2처리 회로의 실시 예를 나타내는 블록도이다.18 is a block diagram illustrating an embodiment of a second processing circuit included in the slave device illustrated in FIG. 1.

도 1의 제2처리 회로(320)의 실시 예에 따른 도 18의 제2처리 회로(320B)는 클락 생성기(322B), 동기 검출 회로(324B), 및 제2데이터 처리 회로(328)를 포함할 수 있다. 제2처리 회로(320A)는 레지스터(329)를 더 포함할 수 있다. 예컨대, 레지스터(329)는 데이터 페이즈를 제어할 수 있는 제1정보와 동기 검출 회로(324B)의 온/오프를 제어할 수 있는 제2정보를 포함할 수 있다. 상술한 바와 같이, 상기 제1정보는 샘플링 에지를 선택할 수 있는 정보일 수 있고, 상기 제2정보는 동기화 과정의 온/오프를 제어할 수 있는 정보일 수 있다.The second processing circuit 320B of FIG. 18 according to the embodiment of the second processing circuit 320 of FIG. 1 includes a clock generator 322B, a synchronization detection circuit 324B, and a second data processing circuit 328. can do. The second processing circuit 320A may further include a register 329. For example, the register 329 may include first information for controlling the data phase and second information for controlling the on/off of the synchronization detection circuit 324B. As described above, the first information may be information capable of selecting a sampling edge, and the second information may be information capable of controlling on/off of a synchronization process.

클락 생성기(322B)는 마스크 회로(327-2)로부터 출력된 슬레이브 클락 신호 (TCLK')를 이용하여 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)를 생성할 수 있다. 실시 예에 따라, 제2처리 회로(320B)는 인에이블 신호 생성기(327-1)와 마스크 회로(327-2)를 더 포함할 수 있다. 인에이블 신호 생성기(327-1)와 마스크 회로(327-2)의 작동은 도 31부터 도 33을 참조하여 상세히 설명될 것이다.The clock generator 322B may generate a slave 2x oversampling clock signal S_2xCLK using the slave clock signal TCLK' output from the mask circuit 327-2. According to an embodiment, the second processing circuit 320B may further include an enable signal generator 327-1 and a mask circuit 327-2. Operations of the enable signal generator 327-1 and the mask circuit 327-2 will be described in detail with reference to FIGS. 31 to 33.

도 19는 도 18에 도시된 제2처리 회로에 포함된 슬레이브 2x 오버샘플링 클락 신호를 생성하는 클락 생성기의 실시 예를 나타낸다. 도 19를 참조하면, 클락 생성기(322B)는 지연 회로(331)와 배타 논리합(exclusive OR(XOR)) 회로(333)를 포함할 수 있다. 지연 회로(331)는 슬레이브 클락 신호(TCLK')를 지연시킬 수 있다. 예컨대, 지연 회로(331)는 지연 버퍼로 구현될 수 있으나 이에 한정되는 것은 아니다. XOR 회로(333)는 슬레이브 클락 신호(TCLK')와 지연 회로(331)로부터 출력된 지연 클락 신호(dCLK)를 XOR 연산하고, 슬레이브 2x 오버샘플링 클락 신호 (S_2xCLK)를 생성할 수 있다.19 illustrates an embodiment of a clock generator that generates a slave 2x oversampling clock signal included in the second processing circuit illustrated in FIG. 18. Referring to FIG. 19, the clock generator 322B may include a delay circuit 331 and an exclusive OR (XOR) circuit 333. The delay circuit 331 may delay the slave clock signal TCLK'. For example, the delay circuit 331 may be implemented as a delay buffer, but is not limited thereto. The XOR circuit 333 performs an XOR operation on the slave clock signal TCLK' and the delay clock signal dCLK output from the delay circuit 331, and generates a slave 2x oversampling clock signal S_2xCLK.

도 20은 도 18에 도시된 제2처리 회로에 포함된 슬레이브 2x 오버샘플링 클락 신호를 생성하는 클락 생성기의 실시 예를 나타낸다. 도 20을 참조하면, 클락 생성기(322B)는 플립-플롭(341), 인버터(343), 및 부정 배타 논리합(exclusive NOR (XNOR)) 회로(345)를 포함할 수 있다.FIG. 20 shows an embodiment of a clock generator that generates a slave 2x oversampling clock signal included in the second processing circuit illustrated in FIG. 18. Referring to FIG. 20, the clock generator 322B may include a flip-flop 341, an inverter 343, and an exclusive NOR (XNOR) circuit 345.

인버터(343)의 출력 신호는 플립-플롭(341)의 입력 신호로서 공급(또는 피드백)되고, XNOR 회로(345)의 출력 신호(S_2xCLK)는 플립-플롭(341)의 클락 신호로서 공급된다. 인버터(343)는 플립-플롭(341)의 출력 신호를 반전한다. XNOR 회로(345)는 인버터(343)의 출력 신호와 슬레이브 클락 신호(TCLK')를 XNOR 연산하고, 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)를 생성할 수 있다.The output signal of the inverter 343 is supplied (or fed back) as an input signal of the flip-flop 341, and the output signal S_2xCLK of the XNOR circuit 345 is supplied as a clock signal of the flip-flop 341. The inverter 343 inverts the output signal of the flip-flop 341. The XNOR circuit 345 performs an XNOR operation on the output signal of the inverter 343 and the slave clock signal TCLK', and generates a slave 2x oversampling clock signal S_2xCLK.

동기 검출 회로(324B)는, 전송 프레임(SPEEDY)에 포함된 각 비트 값을 샘플링하기 위해, 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)의 2개의 클락 위상들 중에서 어느 하나의 클락 위상을 선택할 수 있다. 동기 검출 회로(324B)는 유효 지시 신호(VALID), 데이터(DDATA), 및 위상 카운트(PCNT)를 제2데이터 처리 회로(328)로 전송할 수 있다.The synchronization detection circuit 324B may select any one of the two clock phases of the slave 2x oversampling clock signal S_2xCLK in order to sample each bit value included in the transmission frame SPEEDY. The synchronization detection circuit 324B may transmit the valid indication signal VALID, the data DDATA, and the phase count PCNT to the second data processing circuit 328.

동기 검출 회로(324B)는 동기 회로(324-1B)와 FSM(324-2B)를 포함할 수 있다. 동기 검출 회로(324B)는 레지스터(324-3B)를 더 포함할 수 있다. 레지스터 (324-3B)는 에러 정보 또는 타임 아웃 정보를 저장할 수 있다.The synchronization detection circuit 324B may include a synchronization circuit 324-1B and an FSM 324-2B. The synchronization detection circuit 324B may further include a register 324-3B. The register 324-3B may store error information or timeout information.

도 21은 도 18에 도시된 동기 검출 회로에 포함된 동기 회로의 실시 예를 나타내는 블록도이다. 동기 회로(324-1B)는 지연 회로(351)와 2개의 동기 장치들 (synchronizers; 353과 355)을 포함할 수 있다.21 is a block diagram illustrating an embodiment of a synchronization circuit included in the synchronization detection circuit shown in FIG. 18. The synchronization circuit 324-1B may include a delay circuit 351 and two synchronization devices 353 and 355.

지연 회로(351)는 전송 프레임(SPEEDY)을 지연시킬 수 있다. 예컨대, 지연 회로(351)는 지연 버퍼로 구현될 수 있으나 이에 한정되는 것은 아니다.The delay circuit 351 may delay the transmission frame SPEEDY. For example, the delay circuit 351 may be implemented as a delay buffer, but is not limited thereto.

제1동기 장치(353)는 제1플립-플롭(353-1)과 제2플립-플롭(353-2)을 포함할 수 있다. 제1플립-플롭(353-1)은 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)에 응답하여 전송 프레임(SPEEDY)을 래치(또는 샘플링)할 수 있다. 제2플립-플롭(353-2)은 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)에 응답하여 제1플립-플롭(353-1)의 출력 신호를 래치하고, 데이터(SD0)를 출력할 수 있다.The first synchronous device 353 may include a first flip-flop 353-1 and a second flip-flop 353-2. The first flip-flop 353-1 may latch (or sample) the transmission frame SPEEDY in response to the slave 2x oversampling clock signal S_2xCLK. The second flip-flop 353-2 may latch the output signal of the first flip-flop 353-1 and output data SD0 in response to the slave 2x oversampling clock signal S_2xCLK.

제2동기 장치(355)는 제3플립-플롭(355-1)과 제4플립-플롭(355-2)을 포함할 수 있다. 제3플립-플롭(355-1)은 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)에 응답하여 지연 회로(351)의 출력 신호(dSPEEDY)를 래치(또는 샘플링)할 수 있다. 제4플립-플롭(355-2)은 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)에 응답하여 제3플립-플롭(355-1)의 출력 신호를 래치하고, 데이터(SD1)를 출력할 수 있다.The second synchronous device 355 may include a third flip-flop 355-1 and a fourth flip-flop 355-2. The third flip-flop 355-1 may latch (or sample) the output signal dSPEEDY of the delay circuit 351 in response to the slave 2x oversampling clock signal S_2xCLK. The fourth flip-flop 355-2 may latch the output signal of the third flip-flop 355-1 and output data SD1 in response to the slave 2x oversampling clock signal S_2xCLK.

도 22는 본 발명의 실시 예에 따라 슬레이브 2x 오버샘플링 클락 신호를 이용하여 수행되는 동기화 과정을 설명하기 위한 신호들의 타이밍 도이다. 도 18부터 도 22를 참조하면, 클락 생성기(322B)는 55%의 듀티 사이클과 45%의 듀티 사이클을 갖는 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)를 주기적으로 생성할 수 있다고 가정하나 이에 한정되는 것은 아니다.22 is a timing diagram of signals for explaining a synchronization process performed using a slave 2x oversampling clock signal according to an embodiment of the present invention. 18 to 22, it is assumed that the clock generator 322B can periodically generate a slave 2x oversampling clock signal S_2xCLK having a 55% duty cycle and a 45% duty cycle, but is limited thereto. no.

도 23은 도 18에 도시된 동기 검출 회로에 포함되고 슬레이브 2x 오버샘플링을 이용하여 동기화 과정을 수행하는 FSM의 상태 도이고, 도 24는 도 18에 도시된 동기 검출 회로에 포함되고 슬레이브 2x 오버샘플링을 이용하여 동기화 과정을 수행하는 FSM의 위상 카운트 작동을 설명하기 위한 상태 도이다.FIG. 23 is a state diagram of an FSM included in the synchronization detection circuit shown in FIG. 18 and performing a synchronization process using slave 2x oversampling, and FIG. 24 is a slave 2x oversampling included in the synchronization detection circuit shown in FIG. It is a state diagram for explaining the phase count operation of the FSM performing the synchronization process by using.

도 18부터 도 24를 참조하면, FSM(324-2B)은, 동기 회로(324-1B)에 의해 샘플링된 데이터(DDATA=SD0과 SD1), 수신 인에이블 신호(RxEN), 및 프레임 종료 신호 (EndFrame)를 이용하여, 유효 지시 신호(VALID)와 위상 카운트(PCNT)를 생성할 수 있다.18 to 24, the FSM 324-2B includes data sampled by the synchronization circuit 324-1B (DDATA=SD0 and SD1), a reception enable signal RxEN, and a frame end signal ( EndFrame) can be used to generate a valid indication signal (VALID) and a phase count (PCNT).

예컨대, 슬레이브 장치(300)가 수신 모드일 때 수신 인에이블 신호(RxEN)는 "1"로 활성화되고, 슬레이브 장치(300)가 송신 모드일 때 수신 인에이블 신호 (RxEN)는 "0"로 비활성화된다고 가정한다. 또한, 전송 프레임(SPEEDY)의 수신이 종료되지 않았을 때 프레임 종료 신호(EndFrame)는 "0"으로 비활성화되고, 전송 프레임(SPEEDY)의 수신이 종료되었을 때 프레임 종료 신호(EndFrame)는 "1"으로 활성화된다고 가정한다. 위상 카운트(PCNT)는 2x 오버샘플링 클락 신호(S_2xCLK)의 주기마다 2, 1 순서로 다운-카운트 된다고 가정하나, 실시 예에 따라 위상 카운트 (PCNT)는 2x 오버샘플링 클락 신호(S_2xCLK)의 주기마다 1, 2 순서로 업-카운트 될 수도 있다.For example, when the slave device 300 is in the receive mode, the receive enable signal RxEN is activated to "1", and when the slave device 300 is in the transmit mode, the receive enable signal RxEN is deactivated to "0". Is assumed to be. In addition, when the reception of the transmission frame (SPEEDY) is not finished, the frame end signal (EndFrame) is deactivated to "0", and when the reception of the transmission frame (SPEEDY) is finished, the frame end signal (EndFrame) is set to "1". It is assumed to be active. It is assumed that the phase count (PCNT) is down-counted in the order of 2 and 1 for each period of the 2x oversampling clock signal S_2xCLK, but according to the embodiment, the phase count (PCNT) is for each period of the 2x oversampling clock signal S_2xCLK It can also be up-counted in the order of 1 or 2.

예컨대, 동기 회로(324-1B)는, 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)의 두 번째 클락 위상을 이용하여, 시작 필드(START)의 시작 비트 값을 샘플링하고, 샘플된 비트 값들(SD0=0과 SD1=0)을 출력한다.For example, the synchronization circuit 324-1B samples the start bit value of the start field START using the second clock phase of the slave 2x oversampling clock signal S_2xCLK, and samples the sampled bit values (SD0=0). And SD1=0).

아이들 상태(IDLE)의 FSM(324-2B)은, 활성화된 수신 인에이블 신호(RxEN=1)와 두 번째 클락 위상의 상승 에지에서 샘플된 비트 값들(SD0=0과 SD1=0)에 응답하여, 동기화 완료 상태(SYNC_DONE)로 천이할 수 있다.The FSM 324-2B in the idle state (IDLE) responds to the activated receive enable signal (RxEN=1) and the bit values sampled at the rising edge of the second clock phase (SD0=0 and SD1=0). , Can transition to the synchronization complete state (SYNC_DONE).

그러나, 아이들 상태(IDLE)의 FSM(324-2B)은, 활성화된 수신 인에이블 신호 (RxEN=1)와 두 번째 클락 위상의 상승 에지에서 샘플된 비트 값들(SD0=0과 SD1=1)에 응답하여, 동기화 진행 상태(SYNC)로 천이할 수 있다.However, the FSM 324-2B in the idle state (IDLE) is based on the activated receive enable signal (RxEN=1) and the bit values sampled at the rising edge of the second clock phase (SD0=0 and SD1=1). In response, it may transition to a synchronization progress state (SYNC).

동기화 진행 상태(SYNC)에서, 에러 또는 글리치에 의해 활성화된 수신 인에이블 신호(RxEN)가 비활성화로 천이하거나 샘플된 비트 값(SD0)이 "1"로 천이할 때, FSM(324-2B)은 동기화 진행 상태(SYNC)로부터 아이들 상태(IDLE)로 천이하고 에러 신호(ERROR)를 생성할 수 있다. 에러 신호(ERROR)에 해당하는 비트는 레지스터(324-3B)에 저장될 수 있다.In the synchronization progress state (SYNC), when the receive enable signal (RxEN) activated by an error or glitch transitions to inactive or the sampled bit value (SD0) transitions to "1", the FSM 324-2B It is possible to transition from the synchronization progress state (SYNC) to the idle state (IDLE) and generate an error signal (ERROR). Bits corresponding to the error signal ERROR may be stored in the register 324-3B.

그러나, 동기화 진행 상태(SYNC)에서, 활성화된 수신 인에이블 신호(RxEN)가 유지되고 샘플된 비트 값들(SD0과 SD1) 각각이 "0"일 때, FSM(324-2B)은 동기화 진행 상태(SYNC)로부터 동기화 완료 상태(SYNC_DONE)로 천이할 수 있다.However, in the synchronization progress state (SYNC), when the activated receive enable signal RxEN is maintained and each of the sampled bit values (SD0 and SD1) is "0", the FSM 324-2B is in the synchronization progress state ( SYNC) can transition to the synchronization complete state (SYNC_DONE).

FSM(324-2b)은, 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)의 주기마다, 두 번째 클락 위상이 전송 프레임(SPEEDY)에 포함된 각 비트 값을 샘플링을 위한 클락 위상임을 지시하는 활성화된 유효 지시 신호(VALID)를 생성할 수 있다.The FSM 324-2b is an activated valid indication indicating that the second clock phase is a clock phase for sampling each bit value included in the transmission frame SPEEDY, for each period of the slave 2x oversampling clock signal S_2xCLK. A signal (VALID) can be generated.

제2데이터 처리 회로(328)는 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK), 유효 지시 신호(VALID), 데이터(DDATA), 및 위상 카운트(PCNT)를 수신하고, 데이터 (DDATA)에 포함된 각 비트 값을 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)의 두 번째 클락 위상을 이용하여 샘플링할 수 있다. 제2데이터 처리 회로(328)는 동기 회로(324-1B)로부터 출력된 데이터(DDATA)에 포함된 각 비트 값을 슬레이브 2x 오버샘플링 클락 신호(S_2xCLK)의 두 번째 클락 위상을 이용하여 샘플링하고, 샘플링 결과에 따라 라이트 작동 또는 리드 작동을 위한 제어 신호들을 생성할 수 있다.The second data processing circuit 328 receives a slave 2x oversampling clock signal (S_2xCLK), a valid indication signal (VALID), data (DDATA), and a phase count (PCNT), and each bit included in the data (DDATA). The value may be sampled using the second clock phase of the slave 2x oversampling clock signal S_2xCLK. The second data processing circuit 328 samples each bit value included in the data DDATA output from the synchronization circuit 324-1B using the second clock phase of the slave 2x oversampling clock signal S_2xCLK, Depending on the sampling result, control signals for write operation or read operation can be generated.

도 25는 4x 오버샘플링을 수행하는 장치에 포함된 동적 풀-업(dynamic pull-up) 저항을 제어하는 과정을 설명하기 위한 신호들의 타이밍 도이다.25 is a timing diagram of signals for explaining a process of controlling a dynamic pull-up resistance included in an apparatus for performing 4x oversampling.

전송 프레임(SPEEDY)이 싱글 와이어(110)를 통해 전송될 때, 전력 소모와 빠른 천이(transition)를 위해 각 풀-업 저항(271과 371)은 각 패드(214와 314)와 각 전압 라인을 분리할 수 있다. 즉, 각 풀-업 저항(271과 371)은 디스에이블된다. 그러나, 정지 필드(STOP)의 정지 비트가 싱글 와이어(110)를 통해 전송되는 동안, 풀-업 저항(271 또는 371)은 동적으로 제어될 수 있다.When the transmission frame (SPEEDY) is transmitted through a single wire 110, each pull-up resistor 271 and 371 connects each pad 214 and 314 and each voltage line for power consumption and fast transition. Can be separated. That is, each pull-up resistor 271 and 371 is disabled. However, while the stop bit of the stop field STOP is transmitted through the single wire 110, the pull-up resistor 271 or 371 may be dynamically controlled.

마스터 장치(200)와 슬레이브 장치(300)가 동시에 싱글 와이어(110)를 구동 (drive)하면, 마스터 장치(200)와 슬레이브 장치(300) 각각의 에너지 손실이 크고 각 패드(214와 314)가 손상될 수 있다. 또한, 마스터 장치(200)와 슬레이브 장치(300) 모두가 싱글 와이어(110)를 구동하지 않으면, 싱글 와이어(110)를 통해 큰 쇼트 전류(short current)가 흐를 수 있고, 이에 따라 에너지 손실이 크고 마스터 장치(200)와 슬레이브 장치(300)는 불안정한 상태로 될 수 있다. 따라서, 방향 전환을 위해 풀-업 저항(271 또는 371)의 인에이블 또는 디스에이블은 제어되어야 한다.When the master device 200 and the slave device 300 simultaneously drive the single wire 110, the energy loss of each of the master device 200 and the slave device 300 is large, and each of the pads 214 and 314 is It can be damaged. In addition, if both the master device 200 and the slave device 300 do not drive the single wire 110, a large short current may flow through the single wire 110, and thus energy loss is large. The master device 200 and the slave device 300 may be in an unstable state. Therefore, enabling or disabling of the pull-up resistor 271 or 371 for direction change must be controlled.

마스터 장치(200)로부터 출력된 최종 데이터, 예컨대, 정지 필드(STOP) 직전 필드에 포함된 비트들 중에서 마지막 비트의 비트 값이 "0"일 때, 제1기간(I)에서 제1출력 인에이블 제어 신호(OEN1)는 활성화 상태이므로, 제1출력 드라이버(212)는 정지 비트(ODATA1)를 제1패드(214)로 강하게 드라이빙할 수 있다. 이에 따라, 전송 프레임(SPEEDY)에 포함된 정지 비트의 상승 시간(rising time)은 감소할 수 있다.When the last data output from the master device 200, for example, the bit value of the last bit among the bits included in the field immediately before the stop field (STOP) is "0", the first output is enabled in the first period (I) Since the control signal OEN1 is in an active state, the first output driver 212 can strongly drive the stop bit ODATA1 with the first pad 214. Accordingly, a rising time of the stop bit included in the transmission frame SPEEDY may be reduced.

제1기간(I)이 시작될 때, 제1풀-업 저항 제어 신호(PEN1)는 활성화된다. 따라서, 제1풀-업 저항(271)이 인에이블되므로, 제1작동 전압(VDD1)은 제1풀-업 저항 (271)과 제1패드(214)를 통해 싱글 와이어(110)로 공급될 수 있다. 예컨대, 인에이블된 제1풀-업 저항(271)의 저항값은 45㏀일 수 있으나 이에 한정되는 것은 아니다.When the first period I starts, the first pull-up resistance control signal PEN1 is activated. Therefore, since the first pull-up resistor 271 is enabled, the first operating voltage VDD1 is supplied to the single wire 110 through the first pull-up resistor 271 and the first pad 214. I can. For example, the resistance value of the enabled first pull-up resistor 271 may be 45 kΩ, but is not limited thereto.

제4기간(Ⅳ)이 시작될 때, 제2출력 인에이블 제어 신호(OEN2)는 활성화되므로, 제2출력 드라이버(312)는 제2패드(314)를 통해 싱글 와이어(110)로 비트 값을 전송할 수 있다.When the fourth period (IV) starts, the second output enable control signal OEN2 is activated, so the second output driver 312 transmits the bit value to the single wire 110 through the second pad 314. I can.

도 25에 도시된 바와 같이, 제1기간(I)은 마스터 장치(200)로부터 출력된 전송 프레임(SPEEDY)이 싱글 와이어(110)를 통해 슬레이브 장치(300)로 전송되는 제1전송 기간(TxDATA)을 의미할 수 있다.As shown in FIG. 25, the first period (I) is a first transmission period (TxDATA) in which a transmission frame (SPEEDY) output from the master device 200 is transmitted to the slave device 300 through a single wire 110. Can mean ).

제2기간(Ⅱ)과 제3기간(Ⅲ)은, 출력 인에이블 신호들(OEN1과 OEN2) 모두가 비활성화된 상태에서, 제1풀-업 저항(271)에 의해 싱글 와이어(110)가 제1작동 전압(VDD1)으로 풀-업되고 있는 풀-업 기간(PULL-UP)을 의미할 수 있다.In the second period (II) and the third period (III), when all of the output enable signals OEN1 and OEN2 are deactivated, the single wire 110 is controlled by the first pull-up resistor 271. It may mean a pull-up period (PULL-UP) being pulled up to one operating voltage (VDD1).

제4기간(Ⅳ)은 슬레이브 장치(300)로부터 출력된 전송 프레임(SPEEDY)이 싱글 와이어(110)를 통해 마스터 장치(200)로 전송되는 제2전송 기간(RxDATA)을 의미할 수 있다.The fourth period IV may mean a second transmission period RxDATA in which the transmission frame SPEEDY output from the slave device 300 is transmitted to the master device 200 through a single wire 110.

도 25에 도시된 바와 같이, 제1풀-업 저항 제어 신호(PEN1)의 활성화 기간은 안정된 방향 전환을 위해 가변적으로 제어될 수 있다. 예컨대, 제1제어 회로(270)는 제1풀-업 저항 제어 신호(PEN1)의 활성화 기간을 제어할 수 있다. 상기 활성화 기간을 제어할 수 있는 정보는 레지스터(272)에 설정 또는 프로그램될 수 있다. 방향 전환 타이밍은 각 출력 인에이블 제어 신호(OEN1와 OEN2)의 활성화 타이밍과 비활성화 타이밍에 의해 제어될 수 있다.As shown in FIG. 25, the activation period of the first pull-up resistance control signal PEN1 may be variably controlled for stable direction change. For example, the first control circuit 270 may control an activation period of the first pull-up resistance control signal PEN1. Information capable of controlling the activation period may be set or programmed in the register 272. The direction change timing may be controlled by activation timing and deactivation timing of each of the output enable control signals OEN1 and OEN2.

제1전송 기간(TxDATA)은 제1출력 인에이블 제어 신호(OEN1)의 비활성화 시점에 의해 결정되고, 제1전송 기간(TxDATA) 동안 제1출력 드라이버(212)는 제1패드 (214)를 통해 싱글 와이어(110)를 제1방향으로 구동할 수 있다. 제2전송 기간 (RxDATA)은 제2출력 인에이블 제어 신호(OEN2)의 활성화 시점에 의해 결정되고, 제2출력 드라이버(312)는 제2패드(314)를 통해 싱글 와이어(110)를 제2방향으로 구동할 수 있다. 예컨대, 제1방향과 제2방향은 서로 반대 방향일 수 있다.The first transmission period TxDATA is determined by a deactivation point of the first output enable control signal OEN1, and during the first transmission period TxDATA, the first output driver 212 passes through the first pad 214. The single wire 110 can be driven in the first direction. The second transmission period (RxDATA) is determined by the activation time of the second output enable control signal OEN2, and the second output driver 312 connects the single wire 110 to the second through the second pad 314. It can be driven in any direction. For example, the first direction and the second direction may be opposite to each other.

도 26은 2x 오버샘플링을 수행하는 장치에 포함된 동적 풀-업 저항을 제어하는 과정을 설명하기 위한 신호들의 타이밍 도이다.26 is a timing diagram of signals for explaining a process of controlling a dynamic pull-up resistance included in an apparatus for performing 2x oversampling.

제1기간(i)이 시작될 때, 제1풀-업 저항 제어 신호(PEN1)는 활성화된다. 따라서, 제1풀-업 저항(271)이 인에이블되므로, 제1작동 전압(VDD1)은 제1풀-업 저항 (271)과 제1패드(214)를 통해 싱글 와이어(110)로 공급될 수 있다.When the first period i starts, the first pull-up resistance control signal PEN1 is activated. Therefore, since the first pull-up resistor 271 is enabled, the first operating voltage VDD1 is supplied to the single wire 110 through the first pull-up resistor 271 and the first pad 214. I can.

제1기간(i)에서 제1출력 드라이버(212)는 정지 비트 "1"을 제1패드(214)를 통해 싱글 와이어(110)로 드라이빙 한다. 제2기간(ⅱ)이 시작될 때, 제1출력 인에이블 신호(OEN1)는 비활성화된다. In the first period i, the first output driver 212 drives the stop bit "1" with the single wire 110 through the first pad 214. When the second period (ii) starts, the first output enable signal OEN1 is deactivated.

제3기간(①)에서 제2출력 인에이블 신호(OEN2)는 활성화되고, 제4기간(②)이 시작될 때, 제2출력 프레임(ODATA2)의 시작 비트는 "1"로부터 "0"으로 천이한다.In the third period (①), the second output enable signal OEN2 is activated, and when the fourth period (②) starts, the start bit of the second output frame ODATA2 transitions from "1" to "0". do.

도 26에 도시된 바와 같이, 제1풀-업 저항 제어 신호(PEN1)의 활성화 기간은 안정된 방향 전환을 위해 가변적으로 제어될 수 있다. 예컨대, 제1제어 회로(270)는 제1풀-업 저항 제어 신호(PEN1)의 활성화 기간을 제어할 수 있다. 상기 활성화 기간을 제어할 수 있는 정보는 레지스터(272)에 설정 또는 프로그램될 수 있다.As shown in FIG. 26, the activation period of the first pull-up resistance control signal PEN1 may be variably controlled for stable direction change. For example, the first control circuit 270 may control an activation period of the first pull-up resistance control signal PEN1. Information capable of controlling the activation period may be set or programmed in the register 272.

도 25와 도 26에서, 제1풀-업 저항 제어 신호(PEN1)가 가변되는 범위는 빗금으로 표시되어 있다.In FIGS. 25 and 26, a range in which the first pull-up resistance control signal PEN1 is varied is indicated by hatching.

에러 검출 방법들은 다음과 같다.The error detection methods are as follows.

첫째, 도 14와 도 16을 참조하면, 동기화 진행 상태(SYNC)에서, 에러 또는 글리치에 의해 제2처리 회로(320)가 기능 불량(malfunction)으로 되는 것을 방지하지 위해 데이터(SD0)가 "1"로 검출되거나 수신 인에이블 신호(RxEN)가 "0"으로 검출되면, FSM(324-2)은 에러 신호(ERROR)를 에러 상태 레지스터(324-3)에 설정(또는 프로그램)하고 아이들 상태(IDLE)로 천이할 수 있다. 또한, 동기화가 실패했을 때, FSM(324-2)는 정지 필드(STOP)의 비트 값이 "1"인지를 확인하고, 에러 신호(ERROR)를 에러 상태 레지스터(324-3)에 설정(또는 프로그램)하고 아이들 상태(IDLE)로 천이할 수 있다.First, referring to FIGS. 14 and 16, in order to prevent the second processing circuit 320 from becoming a malfunction due to an error or glitch in the synchronization progress state (SYNC), the data SD0 is "1". Is detected as "or the receive enable signal (RxEN) is detected as "0", the FSM 324-2 sets (or programs) an error signal (ERROR) in the error status register 324-3 and in the idle state ( IDLE). In addition, when synchronization fails, the FSM 324-2 checks whether the bit value of the stop field STOP is "1", and sets an error signal ERROR in the error status register 324-3 (or Program) and transition to the idle state (IDLE).

둘째, 제2컨트롤러(370)는 예외적인 상황에서 싱글 와이어(110)를 통해 주고받는 프레임들 사이의 충돌을 방지하기 위해 마스터 장치(200)로부터 출력된 명령 프레임에 응답할 수 있는 최대 응답 시간(또는 최대 타임아웃 시간)을 제한할 수 있다. 상기 최대 응답 시간은 제2컨트롤러(370)에 의해 액세스될 수 있는 레지스터 (372)에 저장될 수 있고, 상기 최대 응답 시간은 제2컨트롤러(370)에 의해 레지스터(372)에 설정(또는 프로그램)될 수 있다.Second, the second controller 370 has a maximum response time ( Or you can limit the maximum timeout time). The maximum response time may be stored in a register 372 that can be accessed by the second controller 370, and the maximum response time is set (or programmed) in the register 372 by the second controller 370. Can be.

슬레이브 장치(300)가 최대 응답 시간(또는 최대 타임아웃 시간) 내에 응답을 하지 못하는 경우, 제2컨트롤러(370)는 제2인에이블 제어 신호(OEN2)에 대한 제어권을 해제할 수 있다. 즉, 제2컨트롤러(370)는 비활성화된 제2인에이블 제어 신호(OEN2)를 생성할 수 있다. 제2컨트롤러(370)에 의해 제2인에이블 제어 신호 (OEN2)에 대한 제어권이 해제되었으므로, 마스터 장치(200)는 슬레이브 장치(300)의 상태를 판단할 수 없다. 따라서, 마스터 장치(200)는 레지스터(372)에 설정된 정보를 얻기 위한 명령 프레임을 슬레이브 장치(300)로 전송할 수 있다.When the slave device 300 fails to respond within the maximum response time (or the maximum timeout time), the second controller 370 may release the control right for the second enable control signal OEN2. That is, the second controller 370 may generate the deactivated second enable control signal OEN2. Since the control right for the second enable control signal OEN2 is released by the second controller 370, the master device 200 cannot determine the state of the slave device 300. Accordingly, the master device 200 may transmit a command frame for obtaining information set in the register 372 to the slave device 300.

셋째, 마스터 장치(200)는 에러 검출을 위해 명령 프레임 또는 데이터 프레임에 패리티 비트(parity bit)를 추가할 수 있다. 패리티 비트를 추가하는 방법은 도 27을 참조하여 설명될 것이다.Third, the master device 200 may add a parity bit to a command frame or a data frame to detect an error. A method of adding a parity bit will be described with reference to FIG. 27.

도 27은 패리티 비트를 포함하는 본 발명의 프로토콜에 따른 명령 프레임 포맷과 데이터 프레임 포맷을 나타낸다. 패리티 비트 또는 체크 비트(check bit)는 이진 코드(binary code)의 스트링(string)의 마지막(end)에 추가되는 비트로서 상기 스트링에 포함된 값 "1"의 개수가 홀수인지 짝수인지를 나타낸다. 패리티 비트들은 에러 검출 코드(error detecting code)의 가장 간단한 형태로서 사용된다. 패리티 비트는 짝수 패리티 비트와 홀수 패리티 비트로 분류된다.27 shows a command frame format and a data frame format according to the protocol of the present invention including a parity bit. A parity bit or a check bit is a bit added to the end of a string of a binary code and indicates whether the number of values "1" included in the string is odd or even. Parity bits are used as the simplest form of error detecting code. Parity bits are classified into even parity bits and odd parity bits.

짝수 패리티 비트는 스트링에 포함된 전체 비트들에서 "1"의 개수가 짝수가 되도록 패리티 비트를 결정하는 것이고, 홀수 패리티 비트는 스트링에 포함된 전체 비트들 중에서 "1"의 개수가 홀수가 되도록 패리티 비트를 결정하는 것이다.The even parity bit determines the parity bit so that the number of "1s" is an even number among all bits included in the string, and the odd parity bit is the parity so that the number of "1" is odd among all the bits included in the string. It is to determine the beat.

실시 예에 따라, 마스터 장치(200)는 프레임(예컨대, 명령 프레임 또는 데이터 프레임)에 짝수 패리티 비트 또는 홀수 패리티 비트를 추가할 수 있다. 예컨대, 마스터 장치(200)의 제1프레임 생성기(210)는, 제1제어 회로(270)의 제어에 따라, 프레임(예컨대, 명령 프레임 또는 데이터 프레임)에 짝수 패리티 비트 또는 홀수 패리티 비트를 추가할 수 있다.According to an embodiment, the master device 200 may add an even parity bit or an odd parity bit to a frame (eg, a command frame or a data frame). For example, the first frame generator 210 of the master device 200 may add an even parity bit or an odd parity bit to a frame (eg, a command frame or a data frame) under the control of the first control circuit 270. I can.

슬레이브 장치(300)의 제2처리 회로(320)는 마스터 장치(200)로부터 전송된 프레임에 포함된 패리티 비트를 이용하여 상기 프레임의 오류를 검출하고, 검출 결과를 레지스터에 저장할 수 있다. 예컨대, 슬레이브 장치(300)는 수신된 프레임에서 오류가 검출되면 검출 결과를 마스터 장치(200)로 전송할 수 있고, 마스터 장치 (200)는 상기 검출 결과에 응답하여 상기 프레임을 슬레이브 장치(300)로 다시 전송할 수 있다.The second processing circuit 320 of the slave device 300 may detect an error of the frame by using a parity bit included in the frame transmitted from the master device 200 and store the detection result in a register. For example, when an error is detected in the received frame, the slave device 300 may transmit a detection result to the master device 200, and the master device 200 may transmit the frame to the slave device 300 in response to the detection result. You can send it again.

비록, 도 27의 (a)부터 (d)에서, 패리티 비트를 포함하는 패리티 비트 필드 (PARITY)가 각 프레임 포맷(FR1~FR4)의 정지 필드(STOP)의 바로 앞에 추가된 실시 예가 도시되어 있으나, 실시 예에 따라 패리티 비트 필드(PARITY)는 각 프레임 포맷(FR1~FR4)에서 다양한 위치에 추가될 수 있다. 예컨대, 패리티 비트는 1-비트일 수 있으나 이에 한정되는 것은 아니다.Although, in (a) to (d) of FIG. 27, an embodiment in which a parity bit field (PARITY) including a parity bit is added immediately before the stop field (STOP) of each frame format (FR1 to FR4) is shown. , According to an embodiment, the parity bit field PARITY may be added at various positions in each frame format FR1 to FR4. For example, the parity bit may be 1-bit, but is not limited thereto.

도 27의 (a)는 패리티 비트 필드(PARITY)를 포함하는 데이터 프레임 포맷 (FR1)을 나타내고, 도 27의 (b)는 패리티 비트 필드(PARITY)를 포함하는 버스트 명령 프레임 포맷(FR2)을 나타내고, 도 27의 (c)는 패리티 비트 필드(PARITY)를 포함하는 랜덤 명령 프레임 포맷(FR3)을 나타내고, 도 27의 (d)는 패리티 비트 필드 (PARITY)를 포함하는 명령 프레임(특별한 명령) 포맷(FR4)을 나타낸다.FIG. 27A shows a data frame format FR1 including a parity bit field PARITY, and FIG. 27B shows a burst command frame format FR2 including a parity bit field PARITY. , FIG. 27(c) shows a random command frame format (FR3) including a parity bit field (PARITY), and FIG. 27(d) is a command frame (special command) format including a parity bit field (PARITY). (FR4).

도 27의 (d)를 참조하면, 어드레스 필드(ADDRESS)에 포함된 비트들이 모두 "1"일 때, 슬레이브 장치(300)는 현재의 작동(예컨대, 라이트 작동 또는 리드 작동)을 중지하거나 리셋(reset)할 수 있다. 따라서, 슬레이브 장치(300)는 잘못된 명령을 수행하지 않을 수 있다.Referring to FIG. 27D, when all bits included in the address field ADDRESS are "1", the slave device 300 stops the current operation (eg, write operation or read operation) or resets ( reset). Therefore, the slave device 300 may not perform an erroneous command.

비록, 도 27의 (d)에서는 어드레스 필드(ADDRESS)에 포함된 비트들이 모두 "1"인 실시 예가 도시되어 있으나, 어드레스 필드(ADDRESS)에 포함된 비트들이 장치들(200과 300) 사이에서 미리 정의된 특정한 비트들(또는 특정한 패턴)로 설정되면, 슬레이브 장치(300)는, 상기 미리 정의된 특정한 비트들에 응답하여, 현재의 작동을 중지하거나 리셋할 수 있다.Although, in (d) of FIG. 27, an embodiment in which the bits included in the address field ADDRESS are all "1" is shown, the bits included in the address field ADDRESS are previously When set to specific defined bits (or specific pattern), the slave device 300 may stop or reset the current operation in response to the predefined specific bits.

또한, 마스터 장치(200)가 비정상적인 프레임(예컨대, 도 2, 도 3, 도 4에 도시된 프레임 포맷에 맞지 않는 프레임)을 슬레이브 장치(300)로 전송하면, 슬레이브 장치(300)는 상기 비정상적인 프레임에 응답하여 현재의 작동을 중지하거나 리셋할 수 있다.In addition, when the master device 200 transmits an abnormal frame (eg, a frame that does not match the frame format shown in FIGS. 2, 3, and 4) to the slave device 300, the slave device 300 In response to, the current operation can be stopped or reset.

도 28은 패리티 인에이블 레지스터와 패리티 상태 레지스터를 포함하는 슬레이브 장치를 포함하는 데이터 처리 시스템의 블록도이다. 도 1과 도 28을 참조하면, 슬레이브 장치(300)는 도 1에 도시된 구성 요소들(310, 312, 314, 316, 320, 370, 및 371) 이외에 패리티 인에이블 레지스터(381)와 패리티 상태 레지스터(383)를 더 포함할 수 있다.28 is a block diagram of a data processing system including a slave device including a parity enable register and a parity status register. 1 and 28, the slave device 300 includes a parity enable register 381 and a parity state in addition to the components 310, 312, 314, 316, 320, 370, and 371 shown in FIG. 1. A register 383 may be further included.

도 29는 패리티 인에이블 과정을 설명하기 위한 본 발명의 프로토콜에 따른 프레임 포맷의 실시 예이다. 이때, 패리티 인에이블 레지스터(381)와 패리티 상태 레지스터(383)는 동일한 레지스터라고 가정하나 이에 한정되는 것은 아니다.29 is an embodiment of a frame format according to the protocol of the present invention for explaining a parity enable process. In this case, the parity enable register 381 and the parity status register 383 are assumed to be the same register, but are not limited thereto.

도 28과 도 29의 (a)를 참조하면, 마스터 장치(200)는 패리티 인에이블 레지스터(381)에 인에이블을 위한 비트를 라이트하기 위한 라이트 프레임, 즉 라이트 명령 프레임을 싱글 와이어(110)를 통해 슬레이브 장치(300)로 출력할 수 있다. 예컨대, 패리티 인에이블 레지스터(381)는 어드레스 필드(ADDRESS)에 포함된 비트들에 의해 결정될 수 있다.Referring to FIGS. 28 and 29A, the master device 200 uses a single wire 110 to write a write frame for writing a bit for enable in the parity enable register 381, that is, a write command frame. Through this, it can be output to the slave device 300. For example, the parity enable register 381 may be determined by bits included in the address field ADDRESS.

도 28과 도 29의 (b)를 참조하면, 마스터 장치(200)는 패리티 인에이블 레지스터(381)에 인에이블을 위한 비트들(22'b0000000000000000000001)을 라이트하기 위해 데이터 프레임을 싱글 와이어(110)를 통해 슬레이브 장치(300)로 출력할 수 있다. 따라서, 패리티 인에이블 레지스터(381)에는 인에이블을 위한 비트들 (22'b0000000000000000000001)이 저장될 수 있다.Referring to FIGS. 28 and 29B, the master device 200 converts a data frame into a single wire 110 in order to write bits 22'b0000000000000000000001 for enable in the parity enable register 381. Through the output may be output to the slave device 300. Accordingly, bits (22'b0000000000000000000001) for enable may be stored in the parity enable register 381.

도 28과 도 29의 (c)를 참조하면, 마스터 장치(200)는 패리티 상태 레지스터 (383)에 저장된 비트들(22'b0000000000000000000001)을 리드하기 위한 명령 프레임, 예컨대 패리티 필드(PARITY)를 포함하는 리드 명령 프레임을 싱글 와이어(110)를 통해 슬레이브 장치(300)로 출력할 수 있다. 슬레이브 장치(300)는, 상기 리드 명령 프레임에 응답하여, 패리티 상태 레지스터 (383)에 저장된 비트들 (22'b0000000000000000000001)을 리드하고, 리드된 비트들 (22'b0000000000000000000001)을 포함하는 데이터 프레임, 예컨대, 패리티 필드 (PARITY)를 포함하는 리드 데이터 프레임을 마스터 장치(200)로 전송할 수 있다.28 and 29(c), the master device 200 includes a command frame for reading the bits 22'b0000000000000000000001 stored in the parity status register 383, for example, a parity field. The read command frame may be output to the slave device 300 through a single wire 110. The slave device 300 reads the bits 22'b0000000000000000000001 stored in the parity status register 383 in response to the read command frame, and a data frame including the read bits 22'b0000000000000000000001, for example , A read data frame including a parity field (PARITY) may be transmitted to the master device 200.

도 30은 패리티 디스에이블 과정을 설명하기 위한 본 발명의 프로토콜에 따른 프레임 포맷의 실시 예이다. 이때, 패리티 인에이블 레지스터(381)와 패리티 상태 레지스터(383)는 동일한 레지스터라고 가정하나 이에 한정되는 것은 아니다.30 is an embodiment of a frame format according to the protocol of the present invention for explaining a parity disable process. In this case, the parity enable register 381 and the parity status register 383 are assumed to be the same register, but are not limited thereto.

도 28과 도 30의 (a)를 참조하면, 마스터 장치(200)는 패리티 인에이블 레지스터(381)에 디스에이블을 위한 비트를 라이트하기 위한 라이트 프레임, 즉 라이트 명령 프레임을 싱글 와이어(110)를 통해 슬레이브 장치(300)로 출력할 수 있다. 예컨대, 패리티 인에이블 레지스터(381)는 어드레스 필드(ADDRESS)에 포함된 비트들에 의해 결정될 수 있다.Referring to FIGS. 28 and 30A, the master device 200 uses a single wire 110 to write a write frame for writing a bit for disable in the parity enable register 381, that is, a write command frame. Through this, it can be output to the slave device 300. For example, the parity enable register 381 may be determined by bits included in the address field ADDRESS.

도 28과 도 30의 (b)를 참조하면, 마스터 장치(200)는 패리티 인에이블 레지스터(381)에 디스에이블을 위한 비트들(22'b0000000000000000000000)을 라이트하기 위해 데이터 프레임을 싱글 와이어(110)를 통해 슬레이브 장치(300)로 출력할 수 있다. 따라서, 패리티 인에이블 레지스터(381)에는 디스에이블을 위한 비트들 (22'b0000000000000000000001)이 저장될 수 있다.Referring to FIGS. 28 and 30B, the master device 200 converts a data frame to a single wire 110 in order to write bits 22'b0000000000000000000000 for disable in the parity enable register 381. Through the output may be output to the slave device 300. Accordingly, bits 22'b0000000000000000000001 for disable may be stored in the parity enable register 381.

도 28과 도 30의 (c)를 참조하면, 마스터 장치(200)는 패리티 상태 레지스터 (383)에 저장된 비트들(22'b0000000000000000000001)을 리드하기 위한 명령 프레임, 예컨대 패리티 필드(PARITY)를 포함하는 리드 명령 프레임을 싱글 와이어(110)를 통해 슬레이브 장치(300)로 출력할 수 있다. 슬레이브 장치(300)는, 상기 리드 명령 프레임에 응답하여, 패리티 상태 레지스터 (383)에 저장된 비트들 (22'b0000000000000000000001)을 리드하고, 리드된 비트들 (22'b0000000000000000000001)을 포함하는 데이터 프레임, 예컨대, 패리티 필드 (PARITY)를 포함하는 리드 데이터 프레임을 마스터 장치(200)로 전송할 수 있다.28 and 30(c), the master device 200 includes a command frame for reading the bits 22'b0000000000000000000001 stored in the parity status register 383, for example, a parity field. The read command frame may be output to the slave device 300 through a single wire 110. The slave device 300 reads the bits 22'b0000000000000000000001 stored in the parity status register 383 in response to the read command frame, and a data frame including the read bits 22'b0000000000000000000001, for example , A read data frame including a parity field (PARITY) may be transmitted to the master device 200.

도 31은 도 1에 도시된 마스터 장치가 도 1에 도시된 슬레이블 장치의 파워 모드를 제어하는 과정을 설명하는 타이밍 도이다.FIG. 31 is a timing diagram illustrating a process in which the master device shown in FIG. 1 controls the power mode of the slave device shown in FIG. 1.

도 1, 도 14, 도 18, 및 도 31을 참조하면, 데이터 처리 시스템(100)이 부트 (boot)될 때, 슬레이브 장치(300)는 저전력 작동을 위해 슬립 상태(SLEEP)로 작동할 수 있다. 도 31에 예시적으로 도시된 바와 같이, 슬레이브 장치(300)가 슬립 상태(SLEEP)에서 작동할 때, 마스크 회로(327-2)는 로우 레벨을 갖는 인에이블 신호(EN)에 응답하여 클락 신호(TCLK)의 전송을 차단할 수 있다.1, 14, 18, and 31, when the data processing system 100 is booted, the slave device 300 may operate in a sleep state (SLEEP) for low power operation. . As exemplarily shown in FIG. 31, when the slave device 300 operates in the sleep state (SLEEP), the mask circuit 327-2 is a clock signal in response to the enable signal EN having a low level. Transmission of (TCLK) can be blocked.

인에이블 신호 생성기(327-1)는, 제2패드(314)를 통해 입력된 신호, 예컨대 전송 프레임(SPEEDY)에 포함된 신호에 기초하여, 인에이블 신호(EN)의 활성화 또는 비활성화를 제어할 수 있다. 예컨대, 인에이블 신호 생성기(327-1)는, 제2패드 (314)를 통해 입력된 신호의 상승 에지를 검출하고, 검출 결과에 따라 하이 레벨을 갖는 인에이블 신호(EN)를 생성할 수 있다. 마스크 회로(327-2)는, 하이 레벨을 갖는 인에이블 신호(EN)에 응답하여, 클락 신호(TCLK)를 출력 클락 신호(TCLK')로서 출력할 수 있다. 따라서, 슬레이브 장치(300)는 슬립 상태(SLEEP)로부터 정상 상태 (NORMAL)로 변경될 수 있으므로, 슬레이브 장치(300)는 웨이크업될 수 있다.The enable signal generator 327-1 may control activation or deactivation of the enable signal EN based on a signal input through the second pad 314, for example, a signal included in the transmission frame SPEEDY. I can. For example, the enable signal generator 327-1 may detect a rising edge of a signal input through the second pad 314 and generate an enable signal EN having a high level according to the detection result. . The mask circuit 327-2 may output the clock signal TCLK as an output clock signal TCLK' in response to the enable signal EN having a high level. Accordingly, since the slave device 300 may change from the sleep state (SLEEP) to the normal state (NORMAL), the slave device 300 may wake up.

예컨대, 마스터 장치(200)는 슬립 상태(SLEEP)에 있는 슬레이브 장치(300)를 웨이크업 상태(또는 웨이크업 모드)로 변경하기 위해 웨이크업 신호(WUS)를 슬레이브 장치(300)로 전송할 수 있다.For example, the master device 200 may transmit a wake-up signal WUS to the slave device 300 to change the slave device 300 in the sleep state (SLEEP) to a wake-up state (or wake-up mode). .

마스터 장치(200)는 정상 상태(NORMAL)에 있는 슬레이브 장치(300)를 슬립 상태(SLEEP)로 변경하기 위해 명령(예컨대, 슬립 상태를 위한 명령(CSM))을 슬레이브 장치(300)로 전송할 수 있다. 슬립 상태를 위한 명령(CSM)은 전송 프레임 (SPEEDY)으로서 마스터 장치(200)로부터 슬레이브 장치(300)로 전송될 수 있다. 예컨대, 인에이블 신호 생성기(327-1)는, 슬립 상태를 위한 명령(SPEEDY=CSM)을 이용하여, 로우 레벨을 갖는 인에이블 신호(EN)를 생성할 수 있다. 따라서, 마스크 회로(327-2)는 클락 신호(TCLK)가 클락 생성기(322A 또는 322B)로 공급되는 것을 차단할 수 있다. 클락 신호(TCLK)의 공급이 차단됨에 따라, 슬레이브 장치(300)에서 소모되는 전력은 감소될 수 있다.The master device 200 may transmit a command (e.g., a command for a sleep state (CSM)) to the slave device 300 to change the slave device 300 in the normal state (NORMAL) to the sleep state (SLEEP). have. The command for the sleep state (CSM) may be transmitted from the master device 200 to the slave device 300 as a transmission frame (SPEEDY). For example, the enable signal generator 327-1 may generate an enable signal EN having a low level by using a command for a sleep state (SPEEDY=CSM). Accordingly, the mask circuit 327-2 may block the clock signal TCLK from being supplied to the clock generator 322A or 322B. As the supply of the clock signal TCLK is cut off, power consumed by the slave device 300 may be reduced.

상술한 바와 같이, 마스터 장치(200)는 슬레이브 장치(300)를 슬립 상태 (SLEEP) 또는 정상 상태(NORMAL)로 작동시킬 수 있는 신호, 예컨대 전송 프레임 (SPEEDY)을 싱글 와이어(110)를 통해 슬레이브 장치(300)로 전송할 수 있다. 예컨대, 슬립 상태(SLEEP)는 아이들 상태를 포함할 수 있고, 정상 상태(NORMAL)는 웨이크-업 상태를 포함할 수 있다.As described above, the master device 200 transmits a signal capable of operating the slave device 300 in a sleep state (SLEEP) or a normal state (NORMAL), for example, a transmission frame (SPEEDY) through a single wire 110. It can be transmitted to the device 300. For example, the sleep state (SLEEP) may include an idle state, and the normal state (NORMAL) may include a wake-up state.

도 32는 본 발명의 실시 예에 따른 클락 게이팅 회로를 나타내고, 도 33은 도 32에 도시된 클락 게이팅 회로의 타이밍 도를 나타낸다. 도 1, 도 14, 도 18, 도 31, 도 32, 및 도 33을 참조하면, 마스터 장치(200)는 슬레이브 장치(300)의 상태를 슬립 상태(SLEEP)로 제어하기 위해 POR(power on reset) 신호를 사용하거나 슬립 레지스터(327-3)에 슬립 상태를 위한 슬립 명령(SLEEP_CMD)을 라이트할 수 있다. 실시 예에 따라, 슬립 상태를 위한 명령(SLEEP_CMD)은 전송 프레임(SPEEDY)을 통해 인에이블 신호 생성기(327-1)로 전송될 수 있다.32 shows a clock gating circuit according to an embodiment of the present invention, and FIG. 33 shows a timing diagram of the clock gating circuit shown in FIG. 32. 1, 14, 18, 31, 32, and 33, the master device 200 is a power on reset (POR) to control the state of the slave device 300 to a sleep state (SLEEP). ) Signal or write a sleep command (SLEEP_CMD) for a sleep state in the sleep register 327-3. According to an embodiment, the command for the sleep state SLEEP_CMD may be transmitted to the enable signal generator 327-1 through the transmission frame SPEEDY.

예컨대, POR 신호가 하이 레벨로 천이하면, 각 플립 플롭(327-3, 327-6, 및 327-7)은 하이 레벨을 갖는 출력 신호(Q)를 래치할 수 있다. 따라서, 인버터(327-4)는 로우 레벨을 갖는 출력 신호(즉, 인에이블 신호(EN))를 출력하므로, 마스크 회로(327-2)는 클락 신호(TCLK)의 전송을 차단할 수 있다.For example, when the POR signal transitions to the high level, each flip-flop 327-3, 327-6, and 327-7 may latch the output signal Q having the high level. Accordingly, since the inverter 327-4 outputs an output signal having a low level (ie, the enable signal EN), the mask circuit 327-2 may block transmission of the clock signal TCLK.

슬레이브 장치(300)가 정상 상태(NORMAL)일 때, 즉, 인에이블 신호(EN)가 하이 레벨일 때, 마스크 회로(327-2)는 클락 신호(TCLK)를 출력 클락 신호(TCLK')로 출력할 수 있다.When the slave device 300 is in a normal state (NORMAL), that is, when the enable signal EN is at a high level, the mask circuit 327-2 converts the clock signal TCLK to the output clock signal TCLK'. Can be printed.

슬레이브 장치(300)의 상태를 정상 상태(NORMAL)로부터 슬립 상태(SLEEP)로 변경하기 위해, 마스터 장치(200)는 슬립 명령(SLEEP_CMD)을 슬레이브 장치(300)로 전송할 수 있다. 예컨대, 슬립 명령(SLEEP_CMD)은 전송 프레임(SPEEDY)으로 전송될 수 있다. 슬립 상태(SLEEP)에서, 인에이블 신호 생성기(327-1)는 로우 레벨을 갖는 인에이블 신호(EN)를 생성하고, 마스크 회로(327-2)는 클락 신호(TCLK)의 전송을 차단할 수 있다.In order to change the state of the slave device 300 from the normal state (NORMAL) to the sleep state (SLEEP), the master device 200 may transmit a sleep command SLEEP_CMD to the slave device 300. For example, the sleep command SLEEP_CMD may be transmitted as a transmission frame SPEEDY. In the sleep state (SLEEP), the enable signal generator 327-1 may generate an enable signal EN having a low level, and the mask circuit 327-2 may block transmission of the clock signal TCLK. .

슬레이브 장치(300)의 상태를 슬립 상태(SLEEP)로부터 정상 상태(NORMAL)로 변경하기 위해, 마스터 장치(200)는 정상 상태 명령(CMD)을 슬레이브 장치(300)로 전송할 수 있다. 예컨대, 정상 상태 명령(CMD)은 전송 프레임(SPEEDY)으로 전송될 수 있다. 전송 프레임(SPEEDY)이 "1"로 될 때, 인에이블 신호 생성기(327-1)는 하이 레벨을 갖는 인에이블 신호(EN)를 생성하고, 마스크 회로(327-2)는 클락 신호(TCLK)를 출력 클락 신호(TCLK')로서 출력할 수 있다. 제1시점(T1)에서 슬레이브 장치(300)의 상태는 정상 상태(NORMAL)로부터 슬립 상태(SLEEP)로 변경될 수 있고, 제2시점(T2)에서 슬레이브 장치(300)의 상태는 슬립 상태(SLEEP)로부터 정상 상태(NORMAL)로 변경될 수 있다.In order to change the state of the slave device 300 from the sleep state (SLEEP) to the normal state (NORMAL), the master device 200 may transmit a normal state command CMD to the slave device 300. For example, the steady state command CMD may be transmitted in a transmission frame SPEEDY. When the transmission frame SPEEDY becomes "1", the enable signal generator 327-1 generates an enable signal EN having a high level, and the mask circuit 327-2 generates a clock signal TCLK. Can be output as an output clock signal TCLK'. At the first time point T1, the state of the slave device 300 may be changed from the normal state (NORMAL) to the sleep state (SLEEP), and at the second time point T2, the state of the slave device 300 is a sleep state ( SLEEP) can be changed to a normal state (NORMAL).

도 34는 본 발명의 실시 예에 따른 데이터 처리 시스템의 블록도이다. 도 1과 도 34를 참조하면, 마스터 장치(200-1)는 각 슬레이브 장치(300-1~300-8)를 제어할 수 있는 프로세서를 의미할 수 있다. 마스터 장치(200-1)와 각 슬레이브 장치 (300-1~300-8) 사이에는 서로 독립적인 싱글 와이어가 접속될 수 있다. 상술한 같이, 마스터 장치(200-1)는 베이스밴드 모뎀 프로세서 칩, 모뎀의 기능과 AP의 기능을 함께 수행할 수 있는 칩, AP 또는 모바일 AP로 구현될 수 있으나 이에 한정되는 것은 아니다.34 is a block diagram of a data processing system according to an embodiment of the present invention. 1 and 34, the master device 200-1 may mean a processor capable of controlling each of the slave devices 300-1 to 300-8. Single wires independent of each other may be connected between the master device 200-1 and each of the slave devices 300-1 to 300-8. As described above, the master device 200-1 may be implemented as a baseband modem processor chip, a chip capable of performing both a modem function and an AP function, an AP, or a mobile AP, but is not limited thereto.

슬레이브 장치들은 RFIC(300-1), PMIC(300-2), 전력 공급 모듈(300-3), 제2RFIC(300-4), 센서(300-5), 지문 인식 칩(300-6), 터치 스크린 컨트롤러(300-7), 및 DDI(digital display interface 또는 display driver IC) 칩(300-8)을 포함할 수 있다. RFIC(300-1)는 적어도 하나의 연결 칩을 포함할 수 있다. 예컨대, 연결 칩은 이동 통신을 위한 칩, WLAN 통신을 위한 칩, 블루투스 통신을 위한 칩, GNSS 통신을 위한 칩, FM 오디오/비디오를 처리하기 위한 칩, NFC, 및/또는 Wi-Fi 통신을 위한 칩을 포함할 수 있으나 이에 한정되는 것을 아니다.The slave devices are RFIC (300-1), PMIC (300-2), power supply module (300-3), second RFIC (300-4), sensor (300-5), fingerprint identification chip (300-6), A touch screen controller 300-7 and a digital display interface or display driver IC (DDI) chip 300-8 may be included. The RFIC 300-1 may include at least one connection chip. For example, the connection chip is a chip for mobile communication, a chip for WLAN communication, a chip for Bluetooth communication, a chip for GNSS communication, a chip for processing FM audio/video, NFC, and/or for Wi-Fi communication. It may include a chip, but is not limited thereto.

도 35는 본 발명의 실시 예에 따른 데이터 처리 시스템의 블록도이다. 도 1과 도 35를 참조하면, 데이터 처리 시스템(100-2)은 마스터 장치(200A), 슬레이브 장치(300), 제1클락 소스(370) 및 제2클락 소스(370-1)를 포함할 수 있다. 제1클락 소스(370)는 제1주파수를 갖는 제1클락 신호(MCLK)를 생성하고, 제2클락 소스(370-1)는 제2주파수를 갖는 제2클락 신호(TCLK)를 생성한다고 가정한다.35 is a block diagram of a data processing system according to an embodiment of the present invention. 1 and 35, the data processing system 100-2 may include a master device 200A, a slave device 300, a first clock source 370 and a second clock source 370-1. I can. Assume that the first clock source 370 generates a first clock signal MCLK having a first frequency, and the second clock source 370-1 generates a second clock signal TCLK having a second frequency. do.

마스터 장치(200A)의 위상 동기 루프(phase locked loop(PLL); 280)는 제1클락 신호(MCLK)를 수신하고, 제2주파수를 갖는 제2클락 신호(TCLK)를 생성할 수 있다. 즉, PLL(280)은 슬레이브 장치(300)의 제2처리 회로(320)로 공급되는 제2클락 신호(TCLK)와 동일한 주파수를 갖는 제2클락 신호(TCLK)를 생성하고, 제2클락 신호 (TCLK)를 제1처리 회로(220)로 공급할 수 있다.The phase locked loop (PLL) 280 of the master device 200A may receive the first clock signal MCLK and generate a second clock signal TCLK having a second frequency. That is, the PLL 280 generates a second clock signal TCLK having the same frequency as the second clock signal TCLK supplied to the second processing circuit 320 of the slave device 300, and the second clock signal (TCLK) may be supplied to the first processing circuit 220.

본 발명은 도면에 도시된 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.The present invention has been described with reference to the embodiments shown in the drawings, but these are only exemplary, and those of ordinary skill in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention should be determined by the technical idea of the attached registration claims.

100, 100-1, 100-2: 데이터 처리 시스템
110: 싱글 와이어
200, 200A: 마스터 장치
210: 제1프레임 생성기
212: 제1출력 드라이버
214: 제1패드
216: 제1입력 버퍼
220: 제1처리 회로
270: 제1제어 회로
271: 제1풀-업 저항
300: 슬레이브 장치
310: 제2프레임 생성기
312: 제2출력 드라이버
314: 제2패드
316: 제2입력 버퍼
320: 제2처리 회로
100, 100-1, 100-2: data processing system
110: single wire
200, 200A: master device
210: first frame generator
212: first output driver
214: first pad
216: first input buffer
220: first processing circuit
270: first control circuit
271: first pull-up resistance
300: slave device
310: second frame generator
312: second output driver
314: second pad
316: second input buffer
320: second processing circuit

Claims (20)

슬레이브 장치와 통신할 수 있는 마스터 장치에 있어서,
싱글 와이어를 통해 어드레스를 포함하는 명령 프레임과 데이터를 포함하는 데이터 프레임을 상기 슬레이브 장치와 주고받는 하나의 패드; 및
클락 신호로부터 오버샘플링 클락 신호를 생성하고, 상기 오버샘플링 클락 신호의 클락 위상들 중에서 하나의 클락 위상을 선택하는 동기화 과정과, 상기 슬레이브 장치로부터 전송된 상기 데이터 프레임에 포함된 각 비트 값을 상기 동기화 과정에서 선택된 클락 위상과 동일한 위치에 존재하는 클락 위상을 이용하여 샘플링하는 샘플링 과정을 수행하는 처리 회로를 포함하는 마스터 장치.
In a master device capable of communicating with a slave device,
A single pad for transmitting and receiving a command frame including an address and a data frame including data to and from the slave device through a single wire; And
A synchronization process of generating an oversampling clock signal from a clock signal, selecting one of the clock phases of the oversampling clock signal, and synchronizing each bit value included in the data frame transmitted from the slave device. A master device comprising a processing circuit that performs a sampling process for sampling by using a clock phase present at the same position as the clock phase selected in the process.
제1항에 있어서,
상기 명령 프레임과 상기 데이터 프레임 각각은 시작 비트 값과 정지 비트 값을 포함하고,
상기 처리 회로는 상기 시작 비트 값에 대해 상기 동기화 과정을 수행하는 마스터 장치.
The method of claim 1,
Each of the command frame and the data frame includes a start bit value and a stop bit value,
The processing circuit is a master device that performs the synchronization process on the start bit value.
제1항에 있어서, 상기 처리 회로는,
적어도 두 개의 플립-플롭들을 포함하는 동기 검출 회로; 및
데이터 처리 회로를 포함하고,
상기 동기 검출 회로는, 상기 적어도 두 개의 플립-플롭들을 이용하여, 상기 선택된 클락 위상과 관련된 클락 위상 선택 신호들을 상기 오버샘플링 클락 신호의 주기마다 생성하고,
상기 데이터 처리 회로는, 상기 오버샘플링 클락 신호의 주기마다, 상기 클락 위상 선택 신호들과 관련된 클락 위상을 이용하여 상기 데이터 프레임에 포함된 상기 각 비트 값을 샘플링하는 마스터 장치.
The method of claim 1, wherein the processing circuit,
A synchronization detection circuit including at least two flip-flops; And
Including data processing circuitry,
The synchronization detection circuit, using the at least two flip-flops, generates clock phase selection signals related to the selected clock phase for each period of the oversampling clock signal,
The data processing circuit, for each period of the oversampling clock signal, samples each bit value included in the data frame by using a clock phase associated with the clock phase selection signals.
제3항에 있어서,
상기 오버샘플링 클락 신호는 4x 오버샘플링 클락 신호인 마스터 장치.
The method of claim 3,
The oversampling clock signal is a 4x oversampling clock signal.
제3항에 있어서,
상기 오버샘플링 클락 신호는 2x 오버샘플링 클락 신호인 마스터 장치.
The method of claim 3,
The oversampling clock signal is a 2x oversampling clock signal.
제1항에 있어서,
상기 싱글 와이어는 상기 클락 신호를 상기 슬레이브 장치로 전송하는 클락 라인을 포함하지 않는 마스터 장치.
The method of claim 1,
The single wire does not include a clock line for transmitting the clock signal to the slave device.
제1항에 있어서,
상기 마스터 장치에서 사용되는 상기 클락 신호의 주파수는 상기 슬레이브 장치에서 사용되는 클락 신호의 주파수와 동일한 마스터 장치.
The method of claim 1,
The frequency of the clock signal used in the master device is the same as the frequency of the clock signal used in the slave device.
제1항에 있어서, 상기 마스터 장치는,
풀-업 저항 제어 신호에 응답하여 전압 공급 라인과 상기 하나의 패드의 접속을 제어하는 풀-업 저항; 및
상기 하나의 패드에 접속된 출력 드라이버를 더 포함하는 마스터 장치.
The method of claim 1, wherein the master device,
A pull-up resistor for controlling a connection between a voltage supply line and the one pad in response to a pull-up resistor control signal; And
Master device further comprising an output driver connected to the one pad.
제8항에 있어서, 상기 마스터 장치는,
상기 명령 프레임에 포함된 정지 비트 값이 상기 출력 드라이버를 통해 상기 하나의 패드로 전송될 때, 상기 풀-업 저항 제어 신호를 활성화하는 제어 회로를 더 포함하는 마스터 장치.
The method of claim 8, wherein the master device,
And a control circuit for activating the pull-up resistance control signal when a stop bit value included in the command frame is transmitted to the one pad through the output driver.
제1항에 있어서, 상기 마스터 장치는,
패리티 비트를 포함하는 상기 명령 프레임을 생성하는 프레임 생성기를 더 포함하는 마스터 장치.
The method of claim 1, wherein the master device,
The master device further comprises a frame generator for generating the command frame including a parity bit.
마스터 장치와 통신할 수 있는 슬레이브 장치에 있어서,
싱글 와이어를 통해 어드레스를 포함하는 명령 프레임과 데이터를 포함하는 데이터 프레임을 상기 마스터 장치와 주고받는 하나의 패드; 및
클락 신호로부터 오버샘플링 클락 신호를 생성하고, 상기 오버샘플링 클락 신호의 클락 위상들 중에서 하나의 클락 위상을 선택하고, 상기 마스터 장치로부터 전송된 상기 데이터 프레임에 포함된 각 비트 값을 선택된 클락 위상을 이용하여 샘플링하는 처리 회로를 포함하는 슬레이브 장치.
In the slave device that can communicate with the master device,
A single pad for transmitting and receiving a command frame including an address and a data frame including data to and from the master device through a single wire; And
Generate an oversampling clock signal from a clock signal, select one of the clock phases of the oversampling clock signal, and use the selected clock phase for each bit value included in the data frame transmitted from the master device. A slave device including a processing circuit for sampling and sampling.
제11항에 있어서, 상기 처리 회로는,
적어도 두 개의 플립-플롭들을 포함하는 동기 검출 회로; 및
데이터 처리 회로를 포함하고,
상기 동기 검출 회로는, 상기 적어도 두 개의 플립-플롭들을 이용하여, 상기 하나의 클락 위상과 관련된 클락 위상 선택 신호들을 상기 오버샘플링 클락 신호의 주기마다 생성하고,
상기 데이터 처리 회로는, 상기 오버샘플링 클락 신호의 주기마다, 상기 클락 위상 선택 신호들과 관련된 상기 하나의 클락 위상을 이용하여 상기 데이터 프레임에 포함된 상기 각 비트 값을 샘플링하는 슬레이브 장치.
The method of claim 11, wherein the processing circuit,
A synchronization detection circuit including at least two flip-flops; And
Including data processing circuitry,
The synchronization detection circuit, using the at least two flip-flops, generates clock phase selection signals related to the one clock phase for each period of the oversampling clock signal,
The data processing circuit, for each period of the oversampling clock signal, samples each bit value included in the data frame by using the one clock phase related to the clock phase selection signals.
제12항에 있어서,
상기 오버샘플링 클락 신호는 4x 오버샘플링 클락 신호인 슬레이브 장치.
The method of claim 12,
The oversampling clock signal is a 4x oversampling clock signal.
제12항에 있어서,
상기 오버샘플링 클락 신호는 2x 오버샘플링 클락 신호인 슬레이브 장치.
The method of claim 12,
The oversampling clock signal is a 2x oversampling clock signal.
제11항에 있어서,
상기 싱글 와이어는 상기 클락 신호를 전송하는 클락 라인을 포함하지 않는 슬레이브 장치.
The method of claim 11,
The single wire is a slave device that does not include a clock line for transmitting the clock signal.
제11항에 있어서,
상기 슬레이브 장치에서 사용되는 상기 클락 신호의 주파수는 상기 마스터 장치에서 사용되는 클락 신호의 주파수와 동일한 슬레이브 장치.
The method of claim 11,
The frequency of the clock signal used in the slave device is the same as the frequency of the clock signal used in the master device.
제11항에 있어서, 상기 슬레이브 장치는,
풀-업 저항 제어 신호에 응답하여 전압 공급 라인과 상기 하나의 패드의 접속을 제어하는 풀-업 저항; 및
상기 하나의 패드에 접속된 출력 드라이버를 더 포함하는 슬레이브 장치.
The method of claim 11, wherein the slave device,
A pull-up resistor for controlling a connection between a voltage supply line and the one pad in response to a pull-up resistor control signal; And
The slave device further comprising an output driver connected to the one pad.
제17항에 있어서, 상기 슬레이브 장치는,
상기 명령 프레임에 포함된 정지 비트 값이 상기 출력 드라이버를 통해 상기 하나의 패드로 전송될 때, 상기 풀-업 저항 제어 신호를 활성화하는 제어 회로를 더 포함하는 슬레이브 장치.
The method of claim 17, wherein the slave device,
And a control circuit for activating the pull-up resistance control signal when a stop bit value included in the command frame is transmitted to the one pad through the output driver.
하나의 제1패드를 포함하는 마스터 장치;
하나의 제2패드와 상기 하나의 제2패드에 접속된 처리 회로를 포함하는 슬레이브 장치; 및
상기 하나의 제1패드와 상기 하나의 제2패드 사이에 접속된 싱글 와이어를 포함하고,
상기 처리 회로는 클락 신호로부터 오버샘플링 클락 신호를 생성하고, 상기 오버샘플링 클락 신호의 클락 위상들 중에서 하나의 클락 위상을 선택하고, 상기 마스터 장치로부터 전송된 프레임에 포함된 각 비트 값을 선택된 클락 위상을 이용하여 샘플링하는 데이터 처리 시스템.
A master device including one first pad;
A slave device including one second pad and a processing circuit connected to the one second pad; And
Including a single wire connected between the one first pad and the one second pad,
The processing circuit generates an oversampling clock signal from a clock signal, selects one of the clock phases of the oversampling clock signal, and selects each bit value included in the frame transmitted from the master device. A data processing system that samples by using.
제19항에 있어서, 상기 슬레이브 장치는,
풀-업 저항 제어 신호에 응답하여 전압 공급 라인과 상기 하나의 패드의 접속을 제어하는 풀-업 저항; 및
상기 하나의 패드에 접속된 출력 드라이버를 더 포함하는 데이터 처리 시스템.
The method of claim 19, wherein the slave device,
A pull-up resistor for controlling a connection between a voltage supply line and the one pad in response to a pull-up resistor control signal; And
A data processing system further comprising an output driver connected to the one pad.
KR1020150099858A 2015-04-02 2015-07-14 Device including single wire interface and data processing system having the same KR102254255B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US15/072,470 US9755821B2 (en) 2015-04-02 2016-03-17 Device including single wire interface and data processing system including the same
US15/677,202 US9882711B1 (en) 2015-04-02 2017-08-15 Device including single wire interface and data processing system including the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562141924P 2015-04-02 2015-04-02
US62/141,924 2015-04-02

Publications (2)

Publication Number Publication Date
KR20160118902A KR20160118902A (en) 2016-10-12
KR102254255B1 true KR102254255B1 (en) 2021-05-21

Family

ID=57173491

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150099858A KR102254255B1 (en) 2015-04-02 2015-07-14 Device including single wire interface and data processing system having the same

Country Status (1)

Country Link
KR (1) KR102254255B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20210115278A (en) 2020-03-12 2021-09-27 주식회사 실리콘웍스 Data communication method in display device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130322461A1 (en) 2012-06-01 2013-12-05 Research In Motion Limited Multiformat digital audio interface

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6178161B1 (en) * 1997-10-31 2001-01-23 Nortel Networks Corporation Communications methods and apparatus

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130322461A1 (en) 2012-06-01 2013-12-05 Research In Motion Limited Multiformat digital audio interface

Also Published As

Publication number Publication date
KR20160118902A (en) 2016-10-12

Similar Documents

Publication Publication Date Title
US9882711B1 (en) Device including single wire interface and data processing system including the same
KR102328014B1 (en) Device including single wire interface and data processing system having the same
US10241953B2 (en) Dynamic data-link selection over common physical interface
EP2619907B1 (en) Incorporating an independent logic block in a system-on-a-chip
CN110018975B (en) Mobile device and interface method thereof
KR102450296B1 (en) Device including digital interface with mixture of synchronous and asynchronous communication, digital processing system including the same, and method of digital processing performed by the same
US9575552B2 (en) Device, method and system for operation of a low power PHY with a PCIe protocol stack
US20200008144A1 (en) Link speed control systems for power optimization
JP2017528946A (en) System and method for inter-chip communication
US11249932B2 (en) Device, apparatus and system to reduce current leakage during differential communications
US11513584B2 (en) Method and apparatus to save power in USB repeaters/re-timers
EP3275156B1 (en) Apparatus, system and method for sharing physical layer logic across multiple protocols
US11520727B2 (en) Sideband signaling in a peripheral component interconnect (PCI) express (PCIE) link
KR102254255B1 (en) Device including single wire interface and data processing system having the same
US20190042521A1 (en) Asymmetrical embedded universal serial bus (eusb) link
JP6596901B2 (en) Data transfer control device and electronic device using the same
WO2023159415A1 (en) Adaptive low-power signaling to enable link signal error recovery without increased link clock rates

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right