KR100812710B1 - Method and apparatus for communication using control bus - Google Patents
Method and apparatus for communication using control bus Download PDFInfo
- Publication number
- KR100812710B1 KR100812710B1 KR1020060112458A KR20060112458A KR100812710B1 KR 100812710 B1 KR100812710 B1 KR 100812710B1 KR 1020060112458 A KR1020060112458 A KR 1020060112458A KR 20060112458 A KR20060112458 A KR 20060112458A KR 100812710 B1 KR100812710 B1 KR 100812710B1
- Authority
- KR
- South Korea
- Prior art keywords
- command
- slave
- baseband unit
- control bus
- bus
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L5/00—Arrangements affording multiple use of the transmission path
- H04L5/003—Arrangements for allocating sub-channels of the transmission path
- H04L5/0053—Allocation of signaling, i.e. of overhead other than pilot signals
- H04L5/0055—Physical resource allocation for ACK/NACK
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Information Transfer Systems (AREA)
Abstract
Description
도 1은 종래의 I2C 버스를 포함하는 디지털 장치에서 명령어의 전달 과정을 도시한 순서도.1 is a flow chart illustrating the transfer of instructions in a digital device including a conventional I2C bus.
도 2는 종래의 I2C 버스를 포함하는 디지털 장치에서 각각의 명령어에 따른 통신 과정을 도시한 도면.2 is a diagram illustrating a communication process according to each command in a digital device including a conventional I2C bus.
도 3은 본 발명의 바람직한 일 실시예에 따른 제어 버스를 이용한 통신 방법이 적용되는 I2C 버스를 포함하는 디지털 장치의 구성을 예시한 도면.3 is a diagram illustrating a configuration of a digital device including an I2C bus to which a communication method using a control bus according to an embodiment of the present invention is applied.
도 4는 본 발명의 바람직한 일 실시예에 따른 제어 버스를 이용한 통신 방법이 적용되는 I2C 버스를 포함하는 디지털 장치에서 명령어의 전달 과정을 도시한 순서도.FIG. 4 is a flowchart illustrating a process of transferring a command in a digital device including an I2C bus to which a communication method using a control bus according to an embodiment of the present invention is applied.
도 5는 본 발명의 바람직한 일 실시예에 따른 제어 버스를 이용한 통신 방법이 적용되는 I2C 버스를 포함하는 디지털 장치에서 각각의 명령어에 따른 통신 과정을 도시한 도면.5 is a diagram illustrating a communication process according to each command in a digital device including an I2C bus to which a communication method using a control bus is applied according to an exemplary embodiment of the present invention.
본 발명은 제어 버스를 이용한 통신 방법 및 장치에 관한 것으로서, 보다 상세하게는 보다 효율적이고 간단하게 제어 신호를 전달할 수 있는 제어 버스를 이용한 통신 방법 및 장치에 관한 것이다.The present invention relates to a communication method and apparatus using a control bus, and more particularly, to a communication method and apparatus using a control bus capable of transmitting a control signal more efficiently and simply.
제어 버스란 제어 신호(예를 들어, 명령어 등)를 송수신하기 위한 버스를 말하며, 제어 버스는 예를 들어 I2C 버스 또는 동종의 버스일 수 있다.The control bus refers to a bus for transmitting and receiving a control signal (eg, a command, etc.), and the control bus may be, for example, an I2C bus or a similar bus.
이하의 설명에서는 제어 버스 중 가장 일반적인 I2C 버스를 기준으로 설명한다.The following description is based on the most common I2C bus among control buses.
I2C 버스란, Inter-IC(Integrated Circuit) 라고도 불리우며, 집적 회로들 간의 통신 링크를 제공하는 두 가닥 선의 양방향 직렬 버스이다.The I2C bus, also called Inter-IC (Integrated Circuit), is a two-wire, bidirectional serial bus that provides a communication link between integrated circuits.
일반적으로 I2C 또는 I2C 버스로 지칭되며 현재 디지털 장치들의 내부 컴퓨팅 기능이 포함되는 Embedded System 구현을 위한 사실상의 표준으로 널리 사용되고 있다.Generally referred to as an I2C or I2C bus, it is now widely used as a de facto standard for implementing embedded systems that include the internal computing capabilities of digital devices.
본 명세서에서 I2C 장치란 베이스밴드부에 제어 버스를 통해 연결되고, 제어 버스를 통해 수신되는 제어 신호에 의해 제어되는 종속 모듈로, 특히 디지털 장치에 포함되어 다른 구성 요소들과 통신을 수행하는 장치를 말한다.In the present specification, the I2C device is a slave module connected to the baseband unit through a control bus and controlled by a control signal received through the control bus, and particularly, a device included in a digital device to communicate with other components. .
또한 I2C 장치라고 칭하였으나 I2C 버스 외의 다른 제어 버스를 사용할 수 있으며 바람직하게는 장치나 기기의 형태가 아닌 칩(chip)의 형태로 구현될 수 있다.In addition, although referred to as an I2C device, a control bus other than the I2C bus may be used, and may be preferably implemented in the form of a chip rather than a device or a device.
이러한 I2C 버스를 이용하여 제어 신호를 주고 받는 I2C 버스를 포함하는 디지털 장치에서 베이스밴드부는 I2C 버스를 통해 제어 신호인 명령어를 I2C 장치에 전달한다.In a digital device including an I2C bus that transmits and receives a control signal using the I2C bus, the baseband unit transmits a command, which is a control signal, to the I2C device through the I2C bus.
한편, I2C 장치에는 I2C 마스터와 I2C 슬레이브와의 통신을 위한 버퍼(buffer)인 I2C 레지스터 맵이 포함되며, I2C 레지스터 맵에는 I2C 장치의 상태를 나타내는 값인 I2C 상태 레지스터가 포함된다. On the other hand, the I2C device includes an I2C register map, which is a buffer for communication between the I2C master and the I2C slave, and the I2C register map includes an I2C status register, which is a value representing the state of the I2C device.
I2C 상태 레지스터는 일반적으로 읽기 전용(read-only) 속성으로서, 베이스밴드부에서 직접 수정할 수 없으나, 명령어의 처리 과정에 따라 변경되기도 하고, 어떤 지정된 명령어로 인해 그 상태를 변경할 수 있다.The I2C status register is generally a read-only attribute and cannot be modified directly by the baseband unit. However, the I2C status register may change depending on the processing of an instruction, and may change its state due to a specific instruction.
I2C 버스를 포함하는 디지털 처리 장치에서 I2C 버스를 이용하여 제어 신호를 주고 받는 I2C 통신 과정을 도 1을 참조하여 살펴본다.An I2C communication process of transmitting and receiving a control signal using the I2C bus in a digital processing apparatus including an I2C bus will be described with reference to FIG. 1.
도 1은 종래의 I2C 버스를 포함하는 디지털 장치에서 명령어의 전달 과정을 도시한 순서도이다.1 is a flowchart illustrating a process of transferring a command in a digital device including a conventional I2C bus.
도 1에 도시된 바와 같이, 종래의 I2C 버스를 포함하는 디지털 장치에서 명령어의 전달 과정은 먼저 베이스밴드부에서 I2C 장치 내의 I2C 상태 레지스터의 값을 읽고(S100), 읽은 I2C 상태 레지스터의 값에 따라 명령어의 전달이 가능한 상태인지 판단한다(S102).As shown in FIG. 1, in a digital device including a conventional I2C bus, a command transfer process first reads a value of an I2C status register in an I2C device from a baseband unit (S100) and according to the read value of an I2C status register. It is determined whether the state of the delivery is possible (S102).
명령어의 전달이 가능한 상태인지 여부의 판단은 도 1에 예시된 바와 같이 I2C 상태 레지스터의 값이 'BUSY'(즉, 다른 명령어를 수행 중인 상태를 나타냄)를 나타내면 다시 단계 S100으로 돌아가 I2C 상태 레지스터의 값이 'BUSY'인지 여부를 계속 판단하게 된다.Determination of whether the instruction can be delivered is determined as shown in FIG. 1 when the value of the I2C status register indicates 'BUSY' (that is, indicating the status of executing another instruction). It will continue to determine whether the value is 'BUSY'.
그러나 I2C 상태 레지스터의 값이 'BUSY'가 아니라면, 어떠한 다른 명령도 수행하지 않고 있는 상태를 나타낸다.However, if the value of the I2C status register is not 'BUSY', it indicates that no other command is being executed.
따라서, 만일 어떠한 명령어도 수행하지 않는 상태라면 이를 표시할 수 있도록 I2C 장치는 먼저 I2C 상태 레지스터 값을 'READY'로 전환한다(S104).Therefore, the I2C device first converts the I2C status register value to 'READY' so that it can be displayed if no command is performed (S104).
그리고 베이스밴드부는 다시 I2C 상태 레지스터의 값을 읽어(S106) 다시 읽어 온 I2C 상태 레지스터의 값이 'READY'인지 확인하고(S108), I2C 상태 레지스터의 값이 'READY'인 경우 비로소 명령어를 전달한다(S110).The baseband unit reads the value of the I2C status register again (S106), checks whether the value of the read-back I2C status register is 'READY' (S108), and delivers an instruction only when the value of the I2C status register is 'READY'. (S110).
한편, I2C 장치는 명령어를 전달받으면 I2C 상태 레지스터를 'BUSY'값으로 변경하고, 명령어의 수행이 끝나면 I2C 레지스터의 값을 'INIT'로 변경한다.On the other hand, the I2C device changes the I2C status register to 'BUSY' value when the command is received, and changes the value of the I2C register to 'INIT' when the command is completed.
I2C 상태 레지스터가 READY, BUSY의 두 가지 값만을 사용하지 않고 INIT, READY, BUSY의 세 가지 상태의 값을 사용하는 이유는 명령 처리 부분 진입 전의 상태(READY)와 명령 처리 후의 상태(INIT)를 명확하게 구분하기 위한 것이다.The reason why the I2C status register uses three values of INIT, READY, and BUSY instead of only two values of READY and BUSY is clear for the status before entering the instruction processing section (READY) and after the instruction processing (INIT). To distinguish.
도 1에 도시된 바와 같이, I2C 버스를 이용한 명령어의 전달 과정에서 실제 명령어를 전송하기 위해서는 단계100에서 단계102와 단계106에서 단계108의 각각 2번의 폴링(polling) 과정이 필요하다. 이로 인하여 I2C를 통해 명령을 전달 하는 과정에서 오버헤드가 발생하다.As shown in FIG. 1, in order to transmit an actual command in a command transfer process using an I2C bus, two polling processes of step 102 in step 100 and step 108 in step 108 are required. This causes overhead in the process of delivering commands through I2C.
도 2를 참조하여 종래의 I2C 버스를 포함하는 디지털 장치에서 각각의 명령어에 따른 통신 과정을 보다 상세하게 살펴본다.Referring to Figure 2 looks at the communication process according to each command in a digital device including a conventional I2C bus in more detail.
도 2는 종래의 I2C 버스를 포함하는 디지털 장치에서 각각의 명령어에 따른 통신 과정을 도시한 도면이다.2 is a diagram illustrating a communication process according to each command in a digital device including a conventional I2C bus.
도 2에서 I2C Byte Write는 I2C 버스를 통하여 하나의 데이터를 쓰는 명령어이고, I2C Sequential Write는 I2C 버스를 통하여 여러 개의 데이터를 연속적으로 쓰는 명령어이다.In FIG. 2, I2C Byte Write is an instruction to write one data through the I2C bus, and I2C Sequential Write is an instruction to continuously write several data through the I2C bus.
또한, I2C Byte Read는 I2C 버스를 통하여 하나의 데이터를 읽는 명령어이고, I2C Sequential Read는 I2C 버스를 통하여 여러 개의 데이터를 연속적으로 읽는 명령어이다.In addition, I2C Byte Read is a command that reads one data through the I2C bus, and I2C Sequential Read is a command that reads several data sequentially through the I2C bus.
도 2에서, 'Start'와 'Stop'은 I2C 통신의 시작, 끝을 알려주는 신호가 출력되는 부분이고 'Device ID', 'Address', 'Data' 및 'Read'는 I2C 버스를 통하여 실제로 읽기 또는 쓰기 동작이 수행되는 부분이다.In FIG. 2, 'Start' and 'Stop' are parts in which signals indicating the start and end of I2C communication are output, and 'Device ID', 'Address', 'Data' and 'Read' are actually read through the I2C bus. Alternatively, the write operation is performed.
읽기 명령어(I2C Byte Read, I2C Sequential Read)에서 'Restart'는 먼저 읽기 명령어를 전달한 장치의 식별자(Device ID)와 읽어 올 데이터의 주소(Address)를 전송받고 읽어 올 데이터가 다시 전송될 수 있도록 I2C 통신이 계속되게 하기 위한 부분이다.In the read command (I2C Byte Read, I2C sequential read), 'Restart' receives the device ID and the address of the data to be read first, and then the data to be read is transmitted again. This is to keep the communication going.
한편, 전달된 명령어에 따라 실제 읽기 또는 쓰기 동작이 수행되는 부분에서는 'Device ID', 'Address', 'Data' 및 'Read'에서는 항상 ACK(Acknowledgement) 신호가 발생해야 정상적인 I2C 통신이 이루어진다.On the other hand, in the part where actual read or write operation is performed according to the transferred command, normal I2C communication is performed only when an acknowledgment signal is generated at 'Device ID', 'Address', 'Data' and 'Read'.
반면, NAK(Negative-Acknowledgement) 신호가 발생하게 되면 I2C 장치에서 어떤 문제로 인하여 정상 동작하지 못하는 경우이므로 베이스밴드부는 ACK 신호가 발생할 때까지 I2C 장치로 명령어의 전달을 위한 연결을 계속하여 시도하거나, I2C 장치에서 I2C 통신 자체에 대한 오류를 베이스밴드부로 전달하여야 한다.On the other hand, if a negative-acknowledgement (NAK) signal is generated, the I2C device does not operate normally due to some problem. Therefore, the baseband unit continuously attempts to connect the command to the I2C device until an ACK signal is generated. In the I2C device, an error about the I2C communication itself should be transmitted to the baseband unit.
즉, 먼저 I2C 상태 레지스터의 값에 따라 I2C 장치가 다른 명령어를 수행하고 있는지 여부를 판단하여 I2C 장치로 명령어를 전달하고, ACK 신호와 NAK 신호에 따라 베이스밴드부와 I2C 장치간에 통신이 가능한지 판단하여 명령어를 실제로 수행하는 것이다.That is, first, it is determined whether the I2C device is executing another command according to the value of the I2C status register, and the command is transmitted to the I2C device, and it is determined whether communication is possible between the baseband unit and the I2C device according to the ACK signal and the NAK signal. Is actually doing
따라서 먼저 도 1에서 살펴본 바와 같이 종래의 I2C 통신에서의 명령어 전달은 명령어를 전송할 때마다 명령어 전달을 위한 I2C 상태 레지스터의 값을 확인하는 폴링(polling)이 추가적으로 필요하고 또한, 도 2에서 살펴본 바와 같이 I2C 장치와의 통신이 가능한지 판단하는 등 추가적인 작업인 발생하는 오버헤드(overhead)가 발생되는 문제점이 있다.Therefore, as described above with reference to FIG. 1, the instruction transfer in the conventional I2C communication requires additional polling to check the value of the I2C status register for the instruction transfer each time the instruction is transmitted. There is a problem in that an overhead occurs, which is an additional task such as determining whether communication with the I2C device is possible.
그리고, 명령어 전달을 위한 추가적인 작업으로 인하여 명령어의 전달이 느려지고 I2C 버스를 포함하는 디지털 장치 전체의 속도가 느려지는 문제점이 있다.In addition, there is a problem in that the delivery of the command is slowed due to the additional work for delivering the command and the speed of the entire digital device including the I2C bus is slowed.
상기한 바와 같은 종래의 문제점을 해결하기 위해, 본 발명은 제어 버스의 통신에서의 명령어를 전송할 때 마다 명령어 전달을 위한 추가적인 작업이 필요없는 제어 버스를 이용한 통신 방법 및 장치를 제안하는 것이다.In order to solve the conventional problems as described above, the present invention proposes a communication method and apparatus using a control bus that does not require additional work for command transfer each time a command is transmitted in the communication of the control bus.
또한, 본 발명은 명령어 전달을 위한 추가적인 작업없이 간단하게 명령어의 전달이 가능하여 제어 버스를 포함하는 디지털 장치 전체의 속도가 느려지지 않는 제어 버스를 이용한 통신 방법 및 장치를 제안하는 것이다.In addition, the present invention proposes a communication method and apparatus using a control bus that is capable of simple command transfer without additional work for command delivery, such that the speed of the entire digital device including the control bus does not slow down.
본 발명의 또 다른 목적들은 이하의 실시예에 대한 설명을 통해 쉽게 이해될 수 있을 것이다.Still other objects of the present invention will be readily understood through the following description of the embodiments.
상기한 바와 같은 목적을 달성하기 위해, 본 발명의 일 측면에 따르면 제어 버스를 이용한 통신 방법이 제공된다.In order to achieve the above object, according to an aspect of the present invention there is provided a communication method using a control bus.
본 발명의 바람직한 일 실시예에 따르면, 베이스밴드부가 I2C 장치와 연결되도록 하는 제어 버스를 이용하여 통신하는 방법에 있어서, 상기 I2C 장치에 포함되는 슬레이브가 ACK(Acknowledge) 신호를 발생하는지 판단하는 단계(a); 및 상기 슬레이브에서 ACK 신호가 발생하는 경우 명령어를 전달하는 단계(b)를 포함하되, 상기 ACK 신호는 상기 I2C 장치가 상기 베이스밴드부가 전달한 명령어에 상응하는 동작을 수행하지 않는 경우 발생되는 것을 특징으로 하는 제어 버스를 이용한 통신 방법이 제공된다.According to a preferred embodiment of the present invention, in a method of communicating using a control bus that allows the baseband unit to be connected to the I2C device, determining whether a slave included in the I2C device generates an ACK (Acknowledge) signal ( a); And (b) transmitting a command when an ACK signal is generated in the slave, wherein the ACK signal is generated when the I2C device does not perform an operation corresponding to the command transmitted by the baseband unit. A communication method using a control bus is provided.
상기 제어 버스는 I2C(Inter-Integrated Circuit) 버스일 수 있다.The control bus may be an Inter-Integrated Circuit (I2C) bus.
상기 명령어가 전달된 경우 상기 I2C 장치는 상기 슬레이브에서 NAK(Non-Acknowledge) 신호가 발생하게 할 수 있으며, 상기 전달된 명령어가 읽기 명령어인 경우 상기 I2C 장치는 상기 슬레이브에서 다시 ACK 신호를 발생하게 하고, 상기 베이스밴드부에 포함되는 마스터는 상기 ACK 신호에 따라 데이터를 독출할 수 있다.When the command is delivered, the I2C device may cause a non-acknowledge (NAK) signal to be generated in the slave, and when the delivered command is a read command, the I2C device may generate an ACK signal again in the slave. The master included in the baseband unit may read data according to the ACK signal.
또한, 상기 독출되는 데이터는 상기 I2C 장치에 포함되는 I2C 레지스터 맵에 기록된 데이터일 수 있다.The read data may be data recorded in an I2C register map included in the I2C device.
본 발명의 다른 측면에 의하면, 제어 버스를 이용한 통신 방법을 구현하기 위한 프로그램을 기록한 기록 매체가 제공된다.According to another aspect of the present invention, there is provided a recording medium recording a program for implementing a communication method using a control bus.
본 발명의 바람직한 일 실시예에 따르면, 제어 버스를 이용한 베이스밴드부와의 통신 방법을 수행하기 위해 상기 제어 버스틀 통해 상기 베이스밴드부에 결합된 I2C 장치에 의해 실행될 수 있는 명령어들의 프로그램이 유형적으로 구현되어 있으며, 상기 I2C 장치에 의해 판독될 수 있는 프로그램을 기록한 기록 매체에 있어서, 명령어 처리 동작을 수행하지 않는 경우 상기 I2C 장치에 포함된 슬레이브가 상기 베이스밴드부로 ACK(Acknowledge) 신호를 출력하도록 제어하는 단계(a); 상기 ACK 신호에 따라 상기 베이스밴드부에 포함되는 마스터로부터 상기 슬레이브를 통해 명령어를 전달받는 단계(b); 상기 전달된 명령어가 읽기 명령어인지 판단하는 단계(c); 및 상기 판단 결과 읽기 명령어인 경우 상기 I2C 장치에 포함되는 메모리로부터 데이터를 독출하고, 상기 슬레이브에서 ACK 신호를 발생하게 하는 단계(d)를 포함하는 것을 특징으로 하는 제어 버스를 이용한 통신 방법을 구현하기 위한 프로그램을 기록한 기록 매체가 제공된다.According to a preferred embodiment of the present invention, a program of instructions that can be executed by an I2C device coupled to the baseband unit via the control bus to perform a method of communication with the baseband unit using a control bus is tangibly implemented. And recording a program that can be read by the I2C device, and controlling a slave included in the I2C device to output an ACK (Acknowledge) signal to the baseband unit when a command processing operation is not performed. (a); (B) receiving a command from the master included in the baseband unit through the slave according to the ACK signal; Determining (c) whether the transferred command is a read command; And (d) reading data from a memory included in the I2C device and generating an ACK signal in the slave when the determination result is a read command. A recording medium having recorded thereon a program is provided.
상기 제어 버스는 I2C(Inter-Integrated Circuit) 버스일 수 있다.The control bus may be an Inter-Integrated Circuit (I2C) bus.
상기 상기 전달된 명령어가 읽기 명령어인지 판단하는 단계는 상기 명령어를 구성하는 영역 중 주소 영역 다음에 위치하는 영역의 종류에 따라 판단할 수 있다.The determining of whether the transferred command is a read command may be determined according to a type of an area next to an address area among areas constituting the command.
본 발명의 또 다른 측면에 의하면, 제어 버스를 이용한 통신 장치가 제공된 다.According to another aspect of the present invention, a communication apparatus using a control bus is provided.
본 발명의 바람직한 일 실시예에 따르면, 제어 버스를 통해 명령어를 전달하고 명령어의 수행 결과를 독출하는 베이스밴드부; 및 상기 베이스밴드부로부터 명령어를 수신하고 상기 명령어의 수행 결과를 기록하는 I2C 장치를 포함하되, 상기 베이스밴드부는 상기 I2C 장치에 포함된 슬레이브로부터 ACK(Acknowledgement) 신호가 입력되는 경우 상기 명령어를 전달하는 것을 특징으로 하는 제어 버스를 이용한 통신 장치가 제공된다.According to an embodiment of the present invention, the baseband unit for transmitting a command through the control bus and reads the result of the execution of the command; And an I2C device that receives a command from the baseband unit and records a result of the execution of the command, wherein the baseband unit transmits the command when an acknowledgment signal is input from a slave included in the I2C device. A communication device using a control bus is provided.
상기 제어 버스는 I2C(Inter-Integrated Circuit) 버스일 수 있다.The control bus may be an Inter-Integrated Circuit (I2C) bus.
상기 명령어가 전달된 경우 상기 슬레이브는 상기 베이스밴드부로 NAK(Negative-Acknowledgement) 신호를 출력할 수 있으며, 상기 I2C 장치는 상기 전달된 명령어가 읽기 명령어인 경우 상기 슬레이브가 다시 ACK 신호를 출력하게 하고, 상기 베이스밴드부는 상기 ACK 신호에 따라 상응하는 데이터를 독출할 수 있다.When the command is delivered, the slave may output a negative-acknowledgement (NAK) signal to the baseband unit, and the I2C device causes the slave to output an ACK signal again when the transferred command is a read command. The baseband unit may read out corresponding data according to the ACK signal.
또한, 상기 I2C 장치는 상기 전달된 명령어를 구성하는 영역 중 주소 영역 다음에 위치하는 영역의 종류에 따라 읽기 명령어인지를 판단할 수 있다.In addition, the I2C device may determine whether the read command is based on the type of the area next to the address area among the areas constituting the transferred command.
상기 I2C 장치는 상기 전달받은 명령어에 따른 동작을 수행하는 프로세서(processor)를 포함할 수 있다.The I2C device may include a processor that performs an operation according to the received instruction.
상기 I2C 장치는 상기 명령어의 수행 결과를 기록하는 I2C 레지스터 맵을 포함할 수 있다.The I2C device may include an I2C register map that records the execution result of the command.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.As the invention allows for various changes and numerous embodiments, particular embodiments will be illustrated in the drawings and described in detail in the written description. However, this is not intended to limit the present invention to specific embodiments, it should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention.
본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In the following description of the present invention, if it is determined that the detailed description of the related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted.
제1, 제2 등의 용어는 다양한 구성 요소들을 설명하는데 사용될 수 있지만, 상기 구성 요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.Terms such as first and second may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.
예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.For example, without departing from the scope of the present invention, the first component may be referred to as the second component, and similarly, the second component may also be referred to as the first component.
및/또는 이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.The term and / or includes a combination of a plurality of related items or any item of a plurality of related items.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다.When a component is referred to as being "connected" or "connected" to another component, it may be directly connected to or connected to that other component, but it may be understood that other components may be present in between. Should be.
반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.On the other hand, when a component is said to be "directly connected" or "directly connected" to another component, it should be understood that there is no other component in between.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다.The terminology used herein is for the purpose of describing particular example embodiments only and is not intended to be limiting of the present invention.
단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.Singular expressions include plural expressions unless the context clearly indicates otherwise. In this application, the terms "comprise" or "have" are intended to indicate that there is a feature, number, step, operation, component, part, or combination thereof described in the specification, and one or more other features. It is to be understood that the present invention does not exclude the possibility of the presence or the addition of numbers, steps, operations, components, components, or a combination thereof.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.Unless defined otherwise, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Terms such as those defined in the commonly used dictionaries should be construed as having meanings consistent with the meanings in the context of the related art, and shall not be construed in ideal or excessively formal meanings unless expressly defined in this application. Do not.
이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 실시예를 상세히 설명하되, 도면 부호에 관계없이 동일하거나 대응하는 구성 요소는 동일한 참조 번호 를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings, and the same or corresponding components will be given the same reference numerals regardless of the reference numerals, and redundant description thereof will be omitted.
먼저 도 3을 참조하여 바람직한 일 실시예에 따른 제어 버스를 이용한 통신 방법이 적용되는 I2C 버스를 포함하는 디지털 장치의 구성을 살펴 본다.First, a configuration of a digital device including an I2C bus to which a communication method using a control bus according to an exemplary embodiment is applied will be described with reference to FIG. 3.
도 3은 본 발명의 바람직한 일 실시예에 따른 제어 버스를 이용한 통신 방법이 적용되는 I2C 버스를 포함하는 디지털 장치의 구성을 예시한 도면이다.3 is a diagram illustrating a configuration of a digital device including an I2C bus to which a communication method using a control bus according to an exemplary embodiment of the present invention is applied.
도3에 도시된 바와 같이, 본 발명의 바람직한 일 실시예에 따른 제어 버스를 이용한 통신 방법이 적용되는 I2C 버스를 포함하는 디지털 장치는 크게 베이스밴드부(300)와 I2C 장치(310)를 포함할 수 있다.As shown in FIG. 3, a digital device including an I2C bus to which a communication method using a control bus according to an exemplary embodiment of the present invention is applied may largely include a
전술한 바와 같이 본 명세서에서 I2C 장치(310)란 베이스밴드부(300)에 제어 버스를 통해 연결되고, 제어 버스를 통해 수신되는 제어 신호에 의해 제어되는 종속 모듈로 특히 디지털 장치에 포함되어 다른 구성 요소들과 통신을 수행하는 장치를 말한다.As described above, in the present specification, the
또한, I2C 장치(310)라고 칭하였으나 I2C 버스 외의 다른 제어 버스가 사용되어 그 명칭이 달라질 수 있으며 바람직하게는 장치나 기기의 형태가 아닌 칩(chip)의 구현될 수 있다.In addition, although referred to as the
먼저 베이스밴드부(300)는 베이스밴드 프로세서(302), 메모리(304), I2C 마스터(306)를 포함할 수 있으며, I2C 장치(310)는 I2C 슬레이브(312), I2C 레지스터 맵(314), 프로세서(316), 메모리(318)를 포함할 수 있다.First, the
베이스밴드부(300)에 포함되는 베이스밴드 프로세서(302)는 베이스밴드부(300)의 운영을 위한 기본 명령어들을 처리하고 반응하기 위한 논리 회로이다.The
베이스밴드부(300)의 메모리(304)는 베이스밴드부(300)에서 수행되는 명령어가 수행되는 영역과 명령어가 수행되면서 사용되는 영역으로 크게 두 가지로 나눌 수 있다.The
명령어가 수행되는 영역에 대한 메모리는 주로 플래쉬(flash) 형태가 사용되거나 SRAM(Static Random Access Memory) 또는 SDRAM (Synchronous Dynamic RAM) 형태의 메모리가 사용될 수 있으며, 명령어가 수행되면서 사용하는 메모리 영역은 주로 SRAM 또는 SDRAM 형태의 메모리가 사용될 수 있으나 이에 한정되는 것은 아니다. The memory for the area where the instruction is executed may be mainly in the form of flash or memory in the form of static random access memory (SRAM) or synchronous dynamic RAM (SDRAM). Memory in the form of SRAM or SDRAM may be used, but is not limited thereto.
I2C 마스터(306)는 I2C 장치와의 통신을 위한 것으로 읽기 또는 쓰기와 같은 명령어의 전달은 I2C 마스터(306)에 의해 수행된다.The
I2C 장치(310)는 베이스밴드부(300)와의 통신을 위한 통로로 I2C 버스를 사용하고 있으며, 베이스밴드부(300)와 I2C 장치(310)는 I2C 마스터(306)와 I2C 슬레이브(312)를 통해 서로 연결된다.The
I2C 레지스터 맵(314)은 I2C 마스터(306)와 I2C 슬레이브(312)간의 통신을 위한 버퍼(buffer)로 I2C 마스터(306)로부터 전달받거나 전달하고자 하는 내용을 저장할 수 있는 공간이다.The
I2C 마스터(306)가 I2C 슬레이브(312)에 명령어를 전달할 때에는 전달하고자 하는 데이터와 그 데이터를 저장할 주소 정보를 함께 전송하고 주소 정보와 데이터는 I2C 레지스터 맵(314)에 저장된다.When the
종래의 I2C 마스터(306)가 I2C 슬레이브(312)에 명령어를 전달할 때에는 먼 저 I2C 레지스터 맵(314)에 I2C 장치(310)가 동작(예를 들어, 명령어 처리 동작 등)하는지 여부를 나타내는 특정 값이 I2C 레지스터 맵(314)의 특정 영역에 기록되어 있는지 판단하여 명령어를 전달한다.When the
이러한 I2C 레지스터 맵(314)의 특정 값을 I2C 상태 레지스터라고 하며 종래에는 I2C 상태 레지스터의 값이 I2C 장치(310)가 명령어를 수행하지 않고 있는 상태를 나타내는 특정한 값인 경우에만 명령어가 I2C 마스터(306)로부터 I2C 슬레이브(312)에 전달한다.Such a specific value of the
그러나 본 발명에서는 I2C 레지스터 맵(314)의 특정 값에 관계없이 I2C 슬레이브(312)에서 발생되는 ACK(Acknowledgement) 또는 NAK(Negative-Acknowledgement) 신호만을 이용하여 I2C 장치(310)는 명령어를 전달받아 수행한다.However, in the present invention, regardless of a specific value of the
일반적으로 ACK 또는 NAK 신호는 오류 검출 신호로서 명령어 또는 데이터를 주고 받을 때 수신 측에서 명령어 또는 데이터의 수신이 성공적으로 이루어진 경우 ACK 신호를 발생한다.In general, the ACK or NAK signal is an error detection signal and generates an ACK signal when a command or data is successfully received at the receiving side when the command or data is exchanged.
그러나 명령어나 데이터의 수신이 제대로 수행되지 못한 경우 NAK 신호를 발생하여 원래의 명령어나 데이터를 재전송하도록 하게 하는 신호이다.However, if the command or data is not properly received, it generates a NAK signal to retransmit the original command or data.
본 발명에서는 이러한 ACK와 NAK 신호를 이용하여 I2C 장치(310)로 명령어가 전송되도록 한다.In the present invention, the command is transmitted to the
ACK 또는 NAK신호를 이용한 I2C 장치(310)의 명령어를 수신하는 과정과 수신된 명령어에 따른 동작 수행 과정은 도 4와 도 5의 설명에서 보다 상세하게 살펴보 기로 한다.A process of receiving the command of the
I2C 장치(310)에 포함되는 프로세서(316)는 I2C 장치(310)의 운영을 위한 기본 명령어들을 처리하고 반응하기 위한 논리 회로이며, 또한 I2C 슬레이브(312)에 전달된 명령어들을 처리한다.The
I2C 장치(310)의 메모리(220)는 베이스밴드부(300)에 포함되는 메모리(304)와 마찬가지로 명령어가 수행되는 영역과, 명령어가 수행되면서 사용되는 영역으로 크게 두 가지로 나눌 수 있다.Like the
또한, 명령어가 수행되는 영역에 대한 메모리는 플래쉬(flash) 형태가 사용되거나 SRAM(Static Random Access Memory) 또는 SDRAM (Synchronous Dynamic RAM) 형태의 메모리가 사용될 수 있으며, 명령어가 수행되면서 사용하는 메모리 영역은 SRAM 또는 SDRAM 형태의 메모리가 사용될 수 있으나 이에 한정되는 것은 아니다.In addition, the memory for the region in which the instruction is executed may be used in the form of flash, or the memory in the form of static random access memory (SRAM) or the synchronous dynamic RAM (SDRAM). Memory in the form of SRAM or SDRAM may be used, but is not limited thereto.
한편, 전술한 바와 같이 읽기 또는 쓰기 동작이 수행되는 부분에서는 I2C 장치(310)가 ACK(Acknowledgement) 신호가 발생해야 정상적인 I2C 통신이 이루어진다.On the other hand, in the portion where the read or write operation is performed as described above, the
반면, NAK(Negative-Acknowledgement) 신호의 발생은 I2C 장치(310)가 어떤 문제로 인하여 정상 동작하지 못하는 경우를 나타낸다.On the other hand, generation of a negative-acknowledgement (NAK) signal indicates a case in which the
본 발명에서는 이러한 ACK 신호와 NAK 신호만을 이용하여 종래의 I2C 상태 레지스터의 값을 읽지 않고도 I2C 장치(310)로 명령어를 전달하여 수행할 수 있게 한다.In the present invention, only the ACK signal and the NAK signal can be used to transmit and execute a command to the
이를 위하여 먼저 I2C 장치(310)가 명령어를 수행 중일 때에는 NAK 신호를 출력하게 하고, I2C 장치(310)가 명령어를 수행하고 있지 않는 경우에는 ACK 신호를 출력하게 한다.To this end, first, the
즉, I2C 장치(310)에서의 명령어의 처리는 I2C 장치(310)에 포함되는 프로세서(316)에서 수행되므로 프로세서(316)가 명령어를 수행 중인 경우 I2C 슬레이브(312)에서 NAK 신호를 발생하게 한다.That is, since the processing of the instruction in the
반면, 프로세서(316)가 명령어를 수행하지 않고 있는 경우 I2C 슬레이브(312)에서 ACK 신호를 발생하게 하는 것이다.On the other hand, when the
이러한 특징을 이용한 본 발명의 바람직한 일 실시예에 따른 제어 버스를 이용한 통신 방법에 의한 명령어의 전달 과정을 도 4를 참조하여 살펴본다.With reference to FIG. 4, a process of transferring a command by a communication method using a control bus according to an exemplary embodiment of the present invention using such a feature will be described.
도 4는 본 발명의 바람직한 일 실시예에 따른 제어 버스를 이용한 통신 방법이 적용되는 I2C 버스를 포함하는 디지털 장치에서 명령어의 전달 과정을 도시한 순서도이다.4 is a flowchart illustrating a command transfer process in a digital device including an I2C bus to which a communication method using a control bus according to an embodiment of the present invention is applied.
도 4에 도시된 바와 같이 본 발명의 바람직한 일 실시예에 따른 제어 버스를 이용한 통신 방법이 적용되는 I2C 버스를 포함하는 디지털 장치에서 명령어의 전달 과정은 먼저 I2C 마스터(306)에서 I2C 장치(310, 보다 상세하게는 I2C 슬레이브(312))로 명령어를 전달을 시도하고(S400), I2C 슬레이브(312)가 ACK 신호를 발생하고 있는 경우에만 최종적으로 명령어를 전달한다(S402).As shown in FIG. 4, in the digital device including the I2C bus to which the communication method using the control bus according to the exemplary embodiment of the present invention is applied, first, an
반면, I2C 슬레이브(312)가 ACK 신호를 발생하고 있지 않는 경우(즉 NAK 신호를 발생하고 있는 경우)라면 다시 I2C 마스터(306)에서 I2C 슬레이브(312)로 명 령어의 전달을 시도한다.On the other hand, if the
도 1의 종래의 I2C 버스를 포함하는 디지털 장치에서 명령어의 전달 과정과 비교하여 도 4의 본 발명에 의한 I2C 버스를 포함하는 디지털 장치에서 명령어의 전달 과정이 단순하게 됨을 알 수 있다.It can be seen that the process of transferring commands is simplified in the digital device including the I2C bus according to the present invention of FIG. 4 as compared with the process of transferring commands in the digital device including the conventional I2C bus of FIG. 1.
즉 본 발명은 종래의 I2C 통신에서는 기본적으로 ACK/NAK신호를 통하여 현재 통신이 가능한 상태인지 아닌지를 판단할 수 있는 기준으로만 사용하는 것이 아니라 현재 I2C를 통해서 들어온 명령을 처리하고 있는 중인지 아닌지를 판단하는 기준이 되도록 사용하여 I2C 버스를 포함하는 디지털 장치에서 명령어의 전달 과정을 단순하게 하는 것이다.That is, the present invention basically uses the ACK / NAK signal only as a criterion for determining whether the current communication is possible or not, and determines whether the current I2C communication is processing a command coming through the I2C. It is used as a reference to simplify the process of delivering instructions in a digital device including an I2C bus.
한편, I2C 슬레이브(312)의 최초의 상태는 I2C 명령에 대한 응답에 ACK 신호를 내보내도록 설정하고, 하나의 명령어가 전달되었을 경우, 그 명령어에 대한 기본적인 처리가 완료될 때까지, I2C 슬레이브(312)가 NAK 신호를 발생하도록 한다.On the other hand, the initial state of the
이러한 방법에 의하면 I2C 장치(310)가 하나의 명령어를 처리하는 동안 I2C 통신 자체가 정상적으로 동작하지 못하기 때문에, 명령어의 처리 도중에 다른 명령어가 수행될 수 없게 되어 I2C 장치(310)가 정상적인 명령어의 처리가 가능하게 된다.According to this method, since the I2C communication itself does not operate normally while the
하나의 명령어에 대한 처리가 완료되면, I2C 슬레이브(312)를 ACK 신호를 발생하도록 하여 다음 명령을 전달받을 수 있는 상태로 만든다.When the processing of one command is completed, the
한편, I2C 마스터(306)를 통해 명령어를 전달받아 전달받은 명령어를 I2C 장 치에서 수행하는 경우 I2C 슬레이브(312)를 무조건 NAK 상태로 두는 것이 아니라 명령어에 따라 다르게 판단하도록 할 수 있다.On the other hand, when the command received through the
I2C 장치(310)에서 처리된 데이터를 읽어 오는 명령어가 I2C 슬레이브(312)에 전달된 경우 명령어를 전달받은 후 I2C 슬레이브(312)를 NAK 상태로 두면 I2C 마스터(306)와 I2C 슬레이브(312)간의 통신이 불가능하므로 I2C 마스터(306)는 I2C 레지스터 맵(314)에서 원하는 데이터를 독출할 수 없게 되기 때문이다.When a command for reading data processed by the
반면, 명령어를 전달받아 I2C 장치(310) 내에서 데이터를 처리하는 예를 들면, 쓰기와 같은 명령어를 전달받은 경우에는 명령어를 전달받은 후 명령어의 수행이 완료될 때까지 I2C 마스터(306)와 I2C 슬레이브(312)간에 다른 통신이 필요하지 않으므로 I2C 슬레이브(312)를 계속 NAK 상태로 두어도 될 것이다.On the other hand, in the case of receiving a command and processing data in the
따라서, I2C 버스를 통해 명령어를 전달받은 경우 I2C 슬레이브(312)를 계속적으로 NAK 상태로 변환하여 유지하는 것이 아니라 전달받은 명령어가 읽기 명령어인지 쓰기 명령어인지 판단하여, I2C 마스터(306)와 I2C 슬레이브(312)간에 명령어 전달 후 다른 통신이 필요없는 쓰기 명령어에서만 I2C 슬레이브(312)에서 계속적으로 NAK 신호가 발생하도록 하고 명령어의 수행이 완료되면 ACK 신호가 발생하도록 한다.Therefore, when the command is received through the I2C bus, the
이러한 전달받은 명령어에 따라 I2C 슬레이브(312)에서 ACK/NAK 신호가 발생하도록 하게 하는 과정을 도 5를 참조하여 보다 상세하게 살펴본다.The process of causing the ACK / NAK signal to occur in the
도 5는 본 발명의 바람직한 일 실시예에 따른 제어 버스를 이용한 통신 방법이 적용되는 I2C 버스를 포함하는 디지털 장치에서 각각의 명령어에 따른 통신 과 정을 도시한 도면이다.FIG. 5 is a diagram illustrating a communication process according to each command in a digital device including an I2C bus to which a communication method using a control bus according to an exemplary embodiment of the present invention is applied.
도 5에서 I2C Byte Write는 I2C 버스를 통하여 하나의 데이터를 쓰는 명령어이고, I2C Sequential Write는 I2C 버스를 통하여 여러 개의 데이터를 연속적으로 쓰는 명령어이다.In FIG. 5, I2C Byte Write is an instruction to write one data through the I2C bus, and I2C Sequential Write is an instruction to continuously write several data through the I2C bus.
또한, I2C Byte Write는 I2C 버스를 통하여 하나의 데이터를 읽는 명령어이고, I2C Sequential Write는 I2C 버스를 통하여 여러 개의 데이터를 연속적으로 읽는 명령어이다.In addition, I2C Byte Write is a command that reads one data through the I2C bus, and I2C Sequential Write is a command that reads several data sequentially through the I2C bus.
도 5의 각각의 명령어에 따른 통신 과정에서 시작 부분은 Start/Device ID/Address로 서로 같다.In the communication process according to each command of FIG. 5, start parts are the same as Start / Device ID / Address.
도 5에서 도시된 바와 같이 먼저 데이터를 읽기 또는 쓰기 명령어의 수행 과정에서 'Device ID'와 'Address' 부분은 데이터를 전달하거나 전달받을 장치의 식별자와 저장되거나 저장된 데이터의 주소를 나타내는 부분이다.As shown in FIG. 5, in the process of performing a data read or write command, the 'Device ID' and 'Address' parts indicate an identifier of a device to which data is to be transmitted or received and an address of the stored or stored data.
한편, 쓰기 명령어(I2C Byte Write 또는 I2C Sequential Write)의 경우 'Address' 부분 다음에 'Data'가 위치하므로 I2C 장치(310)는 쓰기 명령어인지 읽기 명령어인지 'Address' 다음에 'Data'가 위치하는지 아닌지에 따라 판단한다.Meanwhile, in case of a write command (I2C Byte Write or I2C Sequential Write), 'Data' is located after the 'Address' part. Therefore, whether the
따라서 실제 데이터가 쓰여지는 과정인 'Data' 부분에서는 I2C 장치(310)가 다른 명령어를 수행하고 있는 경우 NAK 신호를, 다른 명령어를 수행하고 있지 않는 경우에는 ACK 신호를 선택적으로 발생하도록 한다.Therefore, in the 'Data' part, which is a process in which actual data is written, the N2 signal is selectively generated when the
반면 다른 부분, 예를 들면 'Device ID'와 'Address' 부분에서는 항상 ACK 신호가 발생하게 하도록 하여 쓰기 명령어에서만 I2C 슬레이브(312)에서 NAK 신호 가 발생할 수 있도록 한다.On the other hand, in other parts, for example, 'Device ID' and 'Address' part, the ACK signal is always generated so that the NAK signal can be generated in the
이러한 I2C 장치(310) 내에서 데이터를 처리하는 명령어에 따라 ACK 신호와 NAK 신호를 선택적으로 발생하게 함으로써 I2C 레지스터 맵(314)의 I2C 상태 레지스터에 특정 값을 기록하고 이를 읽을 필요없이 I2C 장치(310)에서 명령어를 전달받아 수행할 수 있게 된다.By selectively generating an ACK signal and a NAK signal according to a command for processing data in the
상기한 본 발명의 바람직한 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대해 통상의 지식을 가진 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.Preferred embodiments of the present invention described above are disclosed for purposes of illustration, and those skilled in the art will be able to make various modifications, changes, and additions within the spirit and scope of the present invention. Additions should be considered to be within the scope of the following claims.
이상에서 설명한 바와 같이, 본 발명에 의한 제어 버스를 이용한 통신 방법 및 장치에 의하면, 제어 버스의 통신에서의 명령어를 전송할 때 마다 명령어 전달을 위한 추가적인 작업이 필요없는 장점이 있다.As described above, according to the communication method and apparatus using the control bus according to the present invention, there is an advantage that no additional work for command transfer is required each time a command is transmitted in the communication of the control bus.
또한, 명령어 전달을 위한 추가적인 작업없이 간단하게 명령어의 전달이 가능하여 제어 버스를 포함하는 디지털 장치 전체의 속도가 느려지지 않는 장점이 있다.In addition, there is an advantage that the speed of the entire digital device including the control bus is not slowed down because the command can be simply transferred without additional work for command transfer.
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060112458A KR100812710B1 (en) | 2006-11-14 | 2006-11-14 | Method and apparatus for communication using control bus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060112458A KR100812710B1 (en) | 2006-11-14 | 2006-11-14 | Method and apparatus for communication using control bus |
Publications (1)
Publication Number | Publication Date |
---|---|
KR100812710B1 true KR100812710B1 (en) | 2008-03-12 |
Family
ID=39398549
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060112458A KR100812710B1 (en) | 2006-11-14 | 2006-11-14 | Method and apparatus for communication using control bus |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100812710B1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210089932A (en) * | 2020-01-09 | 2021-07-19 | 성균관대학교산학협력단 | Non-volatile memory storage, computing system including the same and peration method thereof |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05100993A (en) * | 1991-10-07 | 1993-04-23 | Mitsubishi Electric Corp | Signal line sharing system |
JPH06342407A (en) * | 1993-06-01 | 1994-12-13 | Toshiba Corp | Channel device |
JP2000231539A (en) | 1999-02-12 | 2000-08-22 | Ricoh Co Ltd | Data transfer system and data transfer method |
JP2003122707A (en) | 2001-10-10 | 2003-04-25 | Nec Corp | Electronic equipment with i2c bus and bus control method |
KR20050079563A (en) * | 2004-02-06 | 2005-08-10 | 삼성전자주식회사 | Bus system for reducing response delay time |
-
2006
- 2006-11-14 KR KR1020060112458A patent/KR100812710B1/en active IP Right Grant
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH05100993A (en) * | 1991-10-07 | 1993-04-23 | Mitsubishi Electric Corp | Signal line sharing system |
JPH06342407A (en) * | 1993-06-01 | 1994-12-13 | Toshiba Corp | Channel device |
JP2000231539A (en) | 1999-02-12 | 2000-08-22 | Ricoh Co Ltd | Data transfer system and data transfer method |
JP2003122707A (en) | 2001-10-10 | 2003-04-25 | Nec Corp | Electronic equipment with i2c bus and bus control method |
KR20050079563A (en) * | 2004-02-06 | 2005-08-10 | 삼성전자주식회사 | Bus system for reducing response delay time |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20210089932A (en) * | 2020-01-09 | 2021-07-19 | 성균관대학교산학협력단 | Non-volatile memory storage, computing system including the same and peration method thereof |
US11294822B2 (en) | 2020-01-09 | 2022-04-05 | Research & Business Foundation Sungkyunkwan University | Non-volatile memory storage, computing system including the same and operation method thereof |
KR102412423B1 (en) * | 2020-01-09 | 2022-06-23 | 성균관대학교산학협력단 | Non-volatile memory storage, computing system including the same and peration method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9378076B2 (en) | Serial communication test device, system including the same and method thereof | |
JPS5914778B2 (en) | data processing equipment | |
KR20130129388A (en) | Method and circuit arrangement for transmitting data between processor modules | |
US6357015B1 (en) | Data interface and high-speed communication system using the same | |
US7337260B2 (en) | Bus system and information processing system including bus system | |
US12105580B2 (en) | Transmission system | |
US20060190637A1 (en) | Control apparatus, information processing apparatus, and data transferring method | |
US8521932B2 (en) | Arbitrator and arbitrating method applied to system management bus system | |
CN109154925A (en) | Communication equipment, communication means, program and communication system | |
KR100241514B1 (en) | Microcomputer | |
KR20080080799A (en) | Method and device for memory of serial interface | |
US6145044A (en) | PCI bus bridge with transaction forwarding controller for avoiding data transfer errors | |
US20070101032A1 (en) | Bus arbitration circuit and bus arbitration method | |
US7203781B2 (en) | Bus architecture with primary bus and secondary or slave bus wherein transfer via DMA is in single transfer phase engagement of primary bus | |
KR100812710B1 (en) | Method and apparatus for communication using control bus | |
JPS6043546B2 (en) | Data transfer error handling method | |
US7130946B2 (en) | Configuration and method having a first device and a second device connected to the first device through a cross bar | |
JP5035349B2 (en) | Circuit and its control method | |
JP2004288147A (en) | Xip system to serial memory and its method | |
JP7265953B2 (en) | Communication control system and information processing equipment | |
JP4033707B2 (en) | IC card and control method thereof | |
JP2020087179A (en) | Controller and controller control method | |
US8423699B2 (en) | Information processing apparatus and method for controlling information processing apparatus | |
KR100737904B1 (en) | interface device between master/slave devices and method thereof | |
KR940004578B1 (en) | Slave board control unit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20130221 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20140303 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20150302 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20180226 Year of fee payment: 11 |
|
FPAY | Annual fee payment |
Payment date: 20190225 Year of fee payment: 12 |