KR20040012677A - Method and apparatus for reducing simultaneous switching output noise using dynamic bus inversion - Google Patents
Method and apparatus for reducing simultaneous switching output noise using dynamic bus inversion Download PDFInfo
- Publication number
- KR20040012677A KR20040012677A KR10-2003-7006227A KR20037006227A KR20040012677A KR 20040012677 A KR20040012677 A KR 20040012677A KR 20037006227 A KR20037006227 A KR 20037006227A KR 20040012677 A KR20040012677 A KR 20040012677A
- Authority
- KR
- South Korea
- Prior art keywords
- bit
- data
- inversion
- bus transaction
- inversion signal
- Prior art date
Links
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
-
- 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/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4234—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
- G06F13/4239—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus with asynchronous protocol
Abstract
본 발명의 동적 버스 반전을 구현하는 컴퓨터 시스템의 일 실시예는 동적 버스 반전 엔코더를 구비하는 제1 시스템 논리 장치와 동적 버스 반전 디코더를 구비하는 제2 시스템 논리 장치를 포함한다. 상기 제1 시스템 논리 장치와 상기 제2 시스템 논리 장치는 데이터 버스를 통해 연결된다. 상기 엔코더는 현재 데이터 버스에 놓인 데이터 비트 그룹과 다음에 데이터 버스에 놓일 데이터 비트 그룹을 비교한다. 상기 엔코더가 상기 현재 데이터 비트 그룹과 다음 데이터 비트 그룹 사이에 발생된 비트 변화 수가 소정의 수보다 큰 것으로 판단한 경우, 상기 엔코더는 상기 다음 데이터 비트 그룹을 상기 데이터 버스에 놓기 전에 상기 다음 데이터 비트 그룹을 반전시킨다. 상기 엔코더는 또한 상기 디코더에 의해 수신되는 반전 신호를 발생시킨다. 상기 반전 신호의 발생에 응답하여, 상기 디코더는 사전에 반전된 다음 데이터 비트 그룹을 원래 데이터로 복원하기 위하여 반전한다.One embodiment of a computer system implementing dynamic bus inversion of the present invention includes a first system logic device having a dynamic bus inversion encoder and a second system logic device having a dynamic bus inversion decoder. The first system logic device and the second system logic device are connected via a data bus. The encoder compares the group of data bits that are currently placed on the data bus with the group of data bits that will be next placed on the data bus. If the encoder determines that the number of bit changes generated between the current data bit group and the next data bit group is greater than a predetermined number, the encoder selects the next data bit group before placing the next data bit group on the data bus. Invert The encoder also generates an inverted signal received by the decoder. In response to the generation of the inverted signal, the decoder inverts beforehand and then inverts to restore the group of data bits to the original data.
Description
오늘날 컴퓨터 시스템의 성능 향상을 위한 노력으로, 시스템 설계자는 여러 시스템 데이터 버스의 클록 주파수를 향상시키기 위해 모색해 왔다. 버스 주파수가 증가함에 따라 데이터 라인(data line)의 노이즈는 점점 중요한 문제가 된다. 클록 주파수 증가와 그에 대응한 클록 주기의 감소는 데이터 라인에 존재하는 노이즈를 데이터가 수신측에 래치되기 전에 안정시키는 데 더 적은 시간을 허용한다. 데이터가 수신측에 래치될 때 데이터 라인에 존재하는 노이즈는 무효 데이터(invalid data)의 래치를 초래할 수 있다.In an effort to improve the performance of today's computer systems, system designers have sought to improve the clock frequencies of many system data buses. As bus frequencies increase, noise on data lines becomes an increasingly important issue. Increasing the clock frequency and correspondingly decreasing clock periods allow less time to stabilize the noise present on the data line before the data is latched to the receiving side. Noise present in the data line when the data is latched on the receiving side may result in the latching of invalid data.
데이터 라인 상의 노이즈 공급원 중 하나는 동시 스위칭 출력 노이즈라 할 수 있다. 이 노이즈는 동시에 특정 장치 스위칭 상태에 대해 몇몇 많은 출력 드라이버에 기인한다. 이에 대한 일례는 그래픽스 버스(graphics bus)를 통하여 그래픽스 장치에 한꺼번에 32비트 데이터를 구동하는 시스템 논리 장치를 포함한다.이 시스템 논리 장치는 한 클록 주기 동안에 32비트의 "1"을 구동할 수 있고, 그 후 다음 클록 주기 동안에 32비트의 "0"을 구동할 수 있다. 이 예에서, 모든 그래픽스 버스 비트는 한 클록 주기에서 다음 클록 주기로 상태가 변화한다. 이런 변화(transition)는 32개의 데이터 라인 전부 또는 일부에 동시 스위칭 출력 노이즈를 유발시킬 수 있고 그래픽스 버스에 대한 가능 클록 주파수를 제한할 수 있어, 그래픽스 서브시스템의 잠재적인 성능(potential performance)을 제한할 수 있다.One source of noise on the data line may be referred to as simultaneous switching output noise. This noise is due to several many output drivers simultaneously for a particular device switching state. An example of this includes a system logic device that drives 32-bit data at a time through a graphics bus to a graphics device. The system logic device can drive 32 bits of "1" in one clock period, The 32 bits of "0" can then be driven during the next clock period. In this example, all graphics bus bits change state from one clock cycle to the next. This transition can cause simultaneous switching output noise on all or part of the 32 data lines and can limit the possible clock frequency for the graphics bus, limiting the potential performance of the graphics subsystem. Can be.
본 발명은 컴퓨터 시스템에 관한 것이다. 특히 본 발명은 데이터 버스의 동시 스위칭 출력을 감소시키는 분야에 관한 것이다.The present invention relates to a computer system. In particular, the present invention relates to the field of reducing simultaneous switching output of a data bus.
도 1은 동적 버스 반전 엔코더를 구비한 시스템 논리 장치 및 동적 버스 반전 디코더를 구비한 그래픽스 장치를 포함하는 시스템의 일 실시예를 나타나낸 블록도이다.1 is a block diagram illustrating one embodiment of a system including a system logic device with a dynamic bus inversion encoder and a graphics device with a dynamic bus inversion decoder.
도 2는 동적 버스 반전 엔코더의 일 실시예를 나타내는 블록도이다.2 is a block diagram illustrating one embodiment of a dynamic bus inversion encoder.
도 3은 동적 버스 반전을 사용한 동시 스위칭 출력 노이즈를 감소시키는 방법의 일 실시예를 나타낸 흐름도이다.3 is a flow diagram illustrating one embodiment of a method of reducing simultaneous switching output noise using dynamic bus inversion.
본 발명은 이하에 기술된 실시예에 대한 상세한 설명과 첨부 도면으로부터 더욱 완전히 이해될 것이지만, 본 발명은 기술된 특정 실시예로 한정되어서는 안되며, 기술된 특정 실시예는 오직 설명과 이해를 위한 것이다.While the invention will be more fully understood from the following detailed description of the embodiments and the accompanying drawings, the invention is not to be limited to the specific embodiments described, and the specific embodiments described are for illustration and understanding only. .
도 1은 동적 버스 반전(dynamic bus inversion, DBI) 엔코더를 구비한 시스템 논리 장치(system logic device)(120)와 DBI 디코더(124)를 구비한 그래픽스 장치(130)를 포함하는 시스템의 일 실시예를 나타나낸 블록도이다. 시스템(100)은 또한 시스템 논리 장치(120)에 연결된 프로세서(110)를 포함한다. 시스템 논리 장치는 시스템 메모리(140) 및 입출력 허브(input/output hub)(150)에도 연결된다.1 illustrates an embodiment of a system including a system logic device 120 with a dynamic bus inversion (DBI) encoder and a graphics device 130 with a DBI decoder 124. Is a block diagram showing. System 100 also includes a processor 110 coupled to system logic device 120. The system logic device is also connected to the system memory 140 and the input / output hub 150.
시스템 논리 장치는 출력 데이터 버스(203)와 반전 신호(inversion signal)(205)를 사용하여 그래픽스 장치(130)에 연결된다. DBI 엔코더(200)는 이전에 출력 데이터 버스(203) 상에 높인 데이터 비트 집합과 다음에 데이터 버스(203) 상에 놓일 데이터 비트 집합을 비교한다. DBI 엔코더(200)는 이전 데이터 비트 집합에 뒤이어서 데이터 버스(203) 상에서 구동되는 다음 데이터 비트 집합의 결과로서 데이터 버스(203) 상에서 얼마나 많은 데이터 비트 변화(transition)가 발생하였는지를 판정한다. DBI 엔코더(200)는 데이터 비트들이 반전되었음을 DBI 디코더(124)에 나타내기 위하여 반전 신호(205)를 발생시킨다(assert). DBI 디코더(124)는 그러면 반전된 데이터 비트들을 원래 데이터로 복원하기 위하여 반전한다.The system logic device is connected to the graphics device 130 using an output data bus 203 and an inversion signal 205. The DBI encoder 200 compares the data bit set previously raised on the output data bus 203 with the data bit set to be placed next on the data bus 203. DBI encoder 200 determines how many data bit transitions have occurred on data bus 203 as a result of the next set of data bits driven on data bus 203 following the previous set of data bits. DBI encoder 200 asserts an inversion signal 205 to indicate to DBI decoder 124 that the data bits have been inverted. DBI decoder 124 then inverts to restore the inverted data bits to the original data.
상기한 소정의 수는 최소 비트 변화가 발생하도록 선태된다. 일부 실시예의 경우, 소정의 수는 데이터 폭의 반(半)과 동일하도록 선택된다. 예를 들어, 16비트 데이터 그룹의 경우 소정의 수는 8이다. 따라서, 8 데이터 비트 이상이 상태를 변화하면, 데이터 비트들은 반전되고 반전 신호가 발생한다.The predetermined number described above is selected such that a minimum bit change occurs. In some embodiments, the predetermined number is chosen to be equal to half the data width. For example, for a 16-bit data group, the predetermined number is eight. Thus, if more than eight data bits change state, the data bits are inverted and an inverted signal is generated.
전술한 DBI 실시예는 출력 데이터 버스 상에서 발생되는 비트 변화의 수를 제한함으로써 동시 스위칭 출력 노이즈의 양을 감소시킨다.The DBI embodiment described above reduces the amount of simultaneous switching output noise by limiting the number of bit changes that occur on the output data bus.
디코더(124)의 실시예는 입력 데이터(incoming data) 및 반전 신호에 대해XOR 기능을 수행하는 XOR 회로를 포함한다. 이러한 방식으로, 반전 없음(no inversion)이 나타나면, 즉 반전 신호(205)가 "1"이면 입력 데이터는 디코더(124)에 의해 반전되지 않는다. 반전이 나타나면, 즉 반전 신호(205)가 "1"이면 입력 데이터의 각 비트는 원래 데이터를 복원하기 위하여 디코더(124)에 의해 반전된다.An embodiment of the decoder 124 includes an XOR circuit that performs an XOR function on the incoming data and the inverted signal. In this way, if no inversion appears, i.e., if the inversion signal 205 is " 1 ", the input data is not inverted by the decoder 124. If inversion occurs, i.e. if inversion signal 205 is " 1 ", then each bit of input data is inverted by decoder 124 to recover the original data.
비록 시스템(100)은 단일 데이터 버스와 단일 반전 신호를 나타내고 있지만, 데이터 버스(203)는 두 개 이상의 그룹으로 나뉠 수 있다. 예를 들어, 32비트 버스는 각각 16비트로 이루어지는 두 개의 그룹으로 나뉠 수 있다. 다른 구성도 가능하다. 반전 결정은 그 후 그룹 기반(group-by-group basis)으로 엔코더(200)에 의해 이루어진다. 각 그룹은 고유한 반전 신호를 사용한다.Although system 100 represents a single data bus and a single inverted signal, data bus 203 may be divided into two or more groups. For example, a 32-bit bus can be divided into two groups of 16 bits each. Other configurations are possible. The inversion decision is then made by the encoder 200 on a group-by-group basis. Each group uses its own inverted signal.
도 2는 동적 버스 반전 엔코더(200)의 일 실시예를 나타내는 블록도이다. 출력데이터 버스(203)를 통해 전달될 데이터는 내부 데이터 버스(201)를 통해 엔코더(200)로 전달된다. 이 실시예의 경우, 내부 데이터 버스(201) 및 출력 데이터 버스(203)는 16비트 폭을 갖는다. 다른 실시예에서는 각각 16비트로 이루어지는 두 개의 그룹으로 구성되는 32비트의 데이터 폭도 가능하다. 또 다른 실시예에서는 다른 데이터 구성과 그룹화가 가능하다.2 is a block diagram illustrating one embodiment of a dynamic bus inversion encoder 200. Data to be delivered via the output data bus 203 is transferred to the encoder 200 via the internal data bus 201. In this embodiment, the internal data bus 201 and the output data bus 203 are 16 bits wide. In another embodiment, a 32-bit data width consisting of two groups of 16 bits each is also possible. In another embodiment, different data configurations and groupings are possible.
내부 데이터(201)는 XOR 회로(210) 및 인버터(220)/멀티플렉서(230) 조합 모두에 전송된다. XOR 회로(210)는 또한 출력 데이터(203)를 수신한다. 출력 데이터(203)는 현재의 데이터 비트 집합을 나타낸다. XOR 연산은 입력 데이터(201)와 출력 데이터(203)에 대해 수행된다. 반전 판정 회로(240)는 XOR 연산의 출력을 수신하여 XOR 연산에 의해 발견된 데이터 비트 변화의 수가 소정의 수를 초과하는지를 판정한다. 이 실시예의 경우, 소정의 수는 8이다. 다른 실시예에서는 다른 소정의 수를 사용할 수 있다. 프로그램할 수 있는 소정의 수를 사용하는 엔코더(200)를 구현하는 것도 가능하다. 반전 판정 회로(240)가 데이터 비트 변화의 수가 소정의 수를 초과하는 것으로 판단하면 내부 반전 신호(209)가 발생된다.Internal data 201 is transmitted to both the XOR circuit 210 and the inverter 220 / multiplexer 230 combination. XOR circuit 210 also receives output data 203. Output data 203 represents the current set of data bits. The XOR operation is performed on the input data 201 and the output data 203. The inversion determination circuit 240 receives the output of the XOR operation to determine whether the number of data bit changes found by the XOR operation exceeds a predetermined number. For this embodiment, the predetermined number is eight. Other predetermined numbers may be used in other embodiments. It is also possible to implement an encoder 200 using any number that can be programmed. If the inversion determination circuit 240 determines that the number of data bit changes exceeds a predetermined number, an internal inversion signal 209 is generated.
내부 반전 신호(209)는 멀티플렉서(230)와 래치(260)로 전달된다. 데이터 비트 변화의 수가 소정의 수를 초과하는 것을 나타내는 내부 반전 신호(209)가 발생되면, 멀티플렉서(230)는 인버터 회로(220)의 출력을 래치(250)로 전달한다. 내부 반전 신호가 발생되지 않으면, 멀티플렉서(230)는 반전되지 않은 내부 데이터를 래치(250)로 전달한다. 그러면 래치(250)는 멀티플렉서(230)의 출력을 출력 데이터 버스(203) 상에 래치한다. 내부 반전 신호(209)는 내부 신호(205) 상으로 래치된다.The internal inversion signal 209 is transmitted to the multiplexer 230 and the latch 260. When the internal inversion signal 209 is generated indicating that the number of data bit changes exceeds a predetermined number, the multiplexer 230 delivers the output of the inverter circuit 220 to the latch 250. If the internal inversion signal is not generated, the multiplexer 230 transfers internal data that is not inverted to the latch 250. Latch 250 then latches the output of multiplexer 230 on output data bus 203. The internal inversion signal 209 is latched onto the internal signal 205.
인버터(220)/멀티플렉서(230) 조합은 내부 데이터 버스 비트들(201)이 각각 내부 반전 신호(209)와 XOR 연산되는 XOR 회로로 구현될 수 있다. 내부 반전 신호(209)가 발생되면, 각각의 내부 데이터 비트(201)는 반전되어 래치(250)의 입력으로 전달된다. 내부 반전 신호(209)가 발생되지 않으면, XOR 연산은 내부 데이터 비트(201)를 변경시키지 않은 채로 둔다.Inverter 220 / multiplexer 230 combination may be implemented in an XOR circuit in which internal data bus bits 201 are XORed with internal inversion signal 209, respectively. When the internal inversion signal 209 is generated, each internal data bit 201 is inverted and passed to the input of the latch 250. If the internal inversion signal 209 is not generated, the XOR operation leaves the internal data bit 201 unchanged.
도 3은 동적 버스 반전을 사용하여 동시 스위칭 출력 노이즈를 감소시키는 방법의 일 실시예를 나타낸 흐름도이다. 첫 번째 n비트 데이터와 두 번째 n비트 데이터 사이의 비트 변화의 수는 블록 320에서 계수된다. 블록 330에 나타낸 것처럼, 계수된 비트 변화의 수가 소정의 수를 초과하면, 다음 n비트 데이터는 블록 340에서 반전된다. 반전된 다음 n비트 데이터는 블록 360에서 데이터 버스를 통해 전달된다. 반전 신호는 또한 블록 360에서 발생된다. 계수된 비트 변화 수가 소정의 수를 초과하지 않으면, 다음 n비트 데이터는 블록 350에서 데이터 버스를 통해 전달된다. 전술한 실시예의 방법은 데이터 버스를 통해 전달될 모든 후속하는 n비트 데이터에 대해 반복될 수 있다. 이 실시예의 경우, n은 16이고 소정의 수는 8이지만, 다른 실시예에서는 다른 데이터 폭과 소정의 수를 사용할 수 있다.3 is a flow diagram illustrating one embodiment of a method of reducing simultaneous switching output noise using dynamic bus inversion. The number of bit changes between the first n-bit data and the second n-bit data is counted at block 320. As indicated at block 330, if the number of counted bit changes exceeds a predetermined number, the next n-bit data is inverted at block 340. The inverted n-bit data is then passed over the data bus at block 360. The inversion signal is also generated at block 360. If the counted number of bit changes does not exceed a predetermined number, the next n-bit data is passed over the data bus at block 350. The method of the foregoing embodiment can be repeated for all subsequent n-bit data to be delivered over the data bus. In this embodiment, n is 16 and the predetermined number is 8. In other embodiments, other data widths and predetermined numbers may be used.
비록 일부 전술한 일시예에서 그래픽스 버스를 통해 그래픽스 장치로 데이터를 전송하는 시스템 논리 장치를 언급하였지만, 다른 실시예에서는 DBI 엔코더를 구비하는 송신기로서 임의의 시스템 장치를 사용하고 DBI 디코더를 구비하는 수신기로서 임의의 다른 장치를 사용하는 것도 가능하다.Although some of the foregoing examples refer to a system logic device for transmitting data to a graphics device via a graphics bus, another embodiment uses any system device as a transmitter with a DBI encoder and as a receiver with a DBI decoder. It is also possible to use any other device.
이상에서 본 발명을 특정 실시예에 관련하여 상세하게 설명하였지만, 첨부한 특허청구범위에 밝힌 것과 같이 본 발명의 기술적 사상과 범위를 벗어나지 않으면서 다양한 변형과 변경이 이루어질 수 있다는 것은 명백하다. 따라서 명세서와 도면은 한정하는 것이 아니라 예시하는 것으로 간주되어야 한다.While the present invention has been described in detail with reference to specific embodiments, it is apparent that various modifications and changes can be made without departing from the spirit and scope of the invention as set forth in the appended claims. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.
명세서에서 실시예와 관련하여 기술된 특정한 형상(feature), 구조 또는 특징을 의미하는 "실시예", "일 실시예", "일부 실시예" 또는 "다른 실시예"는 적어도 본 발명의 일부 실시예에 포함되지만 반드시 본 발명의 모든 실시예에 포함되는 것은 아니다. "실시예", "일 실시예" 또는 "일부 실시예"의 다양한 양상은 반드시 모두 동일한 실시예를 가리키는 것은 아니다.An “embodiment”, “one embodiment”, “some embodiments”, or “another embodiment” means a particular feature, structure, or feature described in connection with an embodiment in the specification, at least in some embodiments of the invention. Although included in the examples, they are not necessarily included in all embodiments of the present invention. The various aspects of "an embodiment", "one embodiment" or "some embodiments" do not necessarily all refer to the same embodiment.
Claims (26)
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US70822100A | 2000-11-07 | 2000-11-07 | |
US09/708,221 | 2000-11-07 | ||
PCT/US2001/031816 WO2002039290A2 (en) | 2000-11-07 | 2001-10-12 | Method and apparatus for reducing simultaneous switching output noise using dynamic bus inversion |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20040012677A true KR20040012677A (en) | 2004-02-11 |
Family
ID=24844882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2003-7006227A KR20040012677A (en) | 2000-11-07 | 2001-10-12 | Method and apparatus for reducing simultaneous switching output noise using dynamic bus inversion |
Country Status (6)
Country | Link |
---|---|
KR (1) | KR20040012677A (en) |
CN (1) | CN1483166A (en) |
AU (1) | AU2002211646A1 (en) |
DE (1) | DE10196834T1 (en) |
GB (1) | GB2387943A (en) |
WO (1) | WO2002039290A2 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100845141B1 (en) * | 2007-01-17 | 2008-07-10 | 삼성전자주식회사 | Single rate interface device, dual rate interface device and dual rate interfacing method |
KR100877680B1 (en) * | 2006-04-04 | 2009-01-09 | 삼성전자주식회사 | Method and Computer readable recording media, and apparatus for interfacing between semiconductor devices using single ended parallel interface system |
US7541947B2 (en) | 2006-05-27 | 2009-06-02 | Samsung Electronics Co., Ltd. | Semiconductor devices, a system including semiconductor devices and methods thereof |
US7688102B2 (en) | 2006-06-29 | 2010-03-30 | Samsung Electronics Co., Ltd. | Majority voter circuits and semiconductor devices including the same |
US8552891B2 (en) | 2006-05-27 | 2013-10-08 | Samsung Electronics Co., Ltd. | Method and apparatus for parallel data interfacing using combined coding and recording medium therefor |
WO2020205060A1 (en) * | 2019-03-29 | 2020-10-08 | Intel Corporation | Minimum input/output toggling rate for interfaces |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1380961B1 (en) * | 2002-07-10 | 2006-04-05 | STMicroelectronics S.r.l. | Process and device for reducing bus switching activity and computer program product therefor |
JP2004080553A (en) | 2002-08-21 | 2004-03-11 | Nec Corp | Circuit and method for data output |
DE60221396D1 (en) | 2002-09-25 | 2007-09-06 | St Microelectronics Srl | Method and apparatus for transmitting digital signal over a computer bus and computer program product therefor |
EP1403775B1 (en) * | 2002-09-25 | 2006-03-08 | STMicroelectronics S.r.l. | Process and devices for transmiting digital signals over buses and computer program product therefor |
KR100459726B1 (en) * | 2002-10-05 | 2004-12-03 | 삼성전자주식회사 | Data inversion circuit of multi-bit pre-fetch semiconductor device and method there-of |
US6992506B2 (en) | 2003-03-26 | 2006-01-31 | Samsung Electronics Co., Ltd. | Integrated circuit devices having data inversion circuits therein with multi-bit prefetch structures and methods of operating same |
EP1761855B1 (en) | 2004-06-21 | 2008-01-16 | Nxp B.V. | Data processing system and method for interconnect arbitration |
US7764792B1 (en) | 2005-01-13 | 2010-07-27 | Marvell International Ltd. | System and method for encoding data transmitted on a bus |
US7869525B2 (en) | 2005-08-01 | 2011-01-11 | Ati Technologies, Inc. | Dynamic bus inversion method and system |
KR100621353B1 (en) | 2005-11-08 | 2006-09-07 | 삼성전자주식회사 | Data in-out put circuit with verification for data inversion and semiconductor memory device having the same |
CN101788967B (en) * | 2010-03-09 | 2012-02-08 | 西安电子科技大学 | Encoding and decoding method for crosstalk resistant on-chip bus and encoding and decoding device thereof |
US8260992B2 (en) | 2010-04-12 | 2012-09-04 | Advanced Micro Devices, Inc. | Reducing simultaneous switching outputs using data bus inversion signaling |
CN103885913B (en) * | 2014-03-26 | 2017-01-04 | 中国科学院声学研究所 | Bus coding and decoding device and method thereof |
KR20160058503A (en) * | 2014-11-17 | 2016-05-25 | 에스케이하이닉스 주식회사 | Semiconductor Memory Apparatus |
US10623200B2 (en) * | 2018-07-20 | 2020-04-14 | Nvidia Corp. | Bus-invert coding with restricted hamming distance for multi-byte interfaces |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0520650A1 (en) * | 1991-06-19 | 1992-12-30 | AT&T Corp. | Low power signaling using gray codes |
JPH0969075A (en) * | 1995-08-31 | 1997-03-11 | Nippon Telegr & Teleph Corp <Ntt> | Bus circuit |
US5960468A (en) * | 1997-04-30 | 1999-09-28 | Sony Corporation | Asynchronous memory interface for a video processor with a 2N sized buffer and N+1 bit wide gray coded counters |
-
2001
- 2001-10-12 GB GB0312605A patent/GB2387943A/en not_active Withdrawn
- 2001-10-12 KR KR10-2003-7006227A patent/KR20040012677A/en not_active Application Discontinuation
- 2001-10-12 DE DE10196834T patent/DE10196834T1/en not_active Withdrawn
- 2001-10-12 CN CNA018183921A patent/CN1483166A/en active Pending
- 2001-10-12 WO PCT/US2001/031816 patent/WO2002039290A2/en not_active Application Discontinuation
- 2001-10-12 AU AU2002211646A patent/AU2002211646A1/en not_active Abandoned
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100877680B1 (en) * | 2006-04-04 | 2009-01-09 | 삼성전자주식회사 | Method and Computer readable recording media, and apparatus for interfacing between semiconductor devices using single ended parallel interface system |
US7541947B2 (en) | 2006-05-27 | 2009-06-02 | Samsung Electronics Co., Ltd. | Semiconductor devices, a system including semiconductor devices and methods thereof |
US7830280B2 (en) | 2006-05-27 | 2010-11-09 | Samsung Electronics Co., Ltd. | Semiconductor devices, a system including semiconductor devices and methods thereof |
US8552891B2 (en) | 2006-05-27 | 2013-10-08 | Samsung Electronics Co., Ltd. | Method and apparatus for parallel data interfacing using combined coding and recording medium therefor |
US9048855B2 (en) | 2006-05-27 | 2015-06-02 | Samsung Electronics Co., Ltd | Method and apparatus for parallel data interfacing using combined coding and recording medium therefor |
US7688102B2 (en) | 2006-06-29 | 2010-03-30 | Samsung Electronics Co., Ltd. | Majority voter circuits and semiconductor devices including the same |
KR100845141B1 (en) * | 2007-01-17 | 2008-07-10 | 삼성전자주식회사 | Single rate interface device, dual rate interface device and dual rate interfacing method |
US7746890B2 (en) | 2007-01-17 | 2010-06-29 | Samsung Electronics Co., Ltd. | Interface device and inter-chip communication interface apparatus to control data transfer between chips |
WO2020205060A1 (en) * | 2019-03-29 | 2020-10-08 | Intel Corporation | Minimum input/output toggling rate for interfaces |
US10963405B2 (en) | 2019-03-29 | 2021-03-30 | Intel Corporation | Minimum input/output toggling rate for interfaces |
Also Published As
Publication number | Publication date |
---|---|
GB0312605D0 (en) | 2003-07-09 |
GB2387943A (en) | 2003-10-29 |
DE10196834T1 (en) | 2003-11-13 |
AU2002211646A1 (en) | 2002-05-21 |
WO2002039290A3 (en) | 2003-04-03 |
WO2002039290A2 (en) | 2002-05-16 |
CN1483166A (en) | 2004-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR20040012677A (en) | Method and apparatus for reducing simultaneous switching output noise using dynamic bus inversion | |
US6584526B1 (en) | Inserting bus inversion scheme in bus path without increased access latency | |
JP4310878B2 (en) | Bus emulation device | |
US6016066A (en) | Method and apparatus for glitch protection for input buffers in a source-synchronous environment | |
US20070011379A1 (en) | I/O energy reduction using previous bus state and I/O inversion bit for bus inversion | |
JP3683892B2 (en) | Method and system for improved differential form transition coding | |
US7043670B2 (en) | Reducing the effect of simultaneous switching noise | |
JP2968251B2 (en) | How to detect a bus driver when an error occurs on a clock synchronous bus | |
US7436220B2 (en) | Partially gated mux-latch keeper | |
US20190107999A1 (en) | Random number generating system and random number generating method thereof | |
US20040088497A1 (en) | Methods and apparatus for exchanging data using cyclic redundancy check codes | |
KR19990022495A (en) | High Speed Circulation Redundancy Check System and Method Using Programmable Structure | |
US20220382627A1 (en) | Infrastructure integrity checking | |
US5808485A (en) | Clock clamping circuit that prevents clock glitching and method therefor | |
US7024618B2 (en) | Transmission error checking in result forwarding | |
JP3591822B2 (en) | Bus system and method | |
JP2001144620A (en) | Bus system | |
JP2752654B2 (en) | Data transmission method of scrambled code | |
JP2864611B2 (en) | Semiconductor memory | |
US6990507B2 (en) | Parity prediction for arithmetic increment function | |
JP3473746B2 (en) | Data transmission / reception circuit | |
EP1243111A1 (en) | Method and circuit for protection of a universal serial bus transceiver against short-circuit | |
KR100528450B1 (en) | Synchronous memory device | |
US6304104B1 (en) | Method and apparatus for reducing worst case power | |
KR0186166B1 (en) | Error detecting device for a cd-rom driver |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |