CN1171398C - 集成电路之间的串行数据通信 - Google Patents

集成电路之间的串行数据通信 Download PDF

Info

Publication number
CN1171398C
CN1171398C CNB981176402A CN98117640A CN1171398C CN 1171398 C CN1171398 C CN 1171398C CN B981176402 A CNB981176402 A CN B981176402A CN 98117640 A CN98117640 A CN 98117640A CN 1171398 C CN1171398 C CN 1171398C
Authority
CN
China
Prior art keywords
data
pulse
signal
pulse signal
pulse duration
Prior art date
Legal status (The legal status 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 status listed.)
Expired - Fee Related
Application number
CNB981176402A
Other languages
English (en)
Other versions
CN1212517A (zh
Inventor
金光明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN1212517A publication Critical patent/CN1212517A/zh
Application granted granted Critical
Publication of CN1171398C publication Critical patent/CN1171398C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/08Modifications for reducing interference; Modifications for reducing effects due to line faults ; Receiver end arrangements for detecting or overcoming line faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1803Stop-and-wait protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/22Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/38Synchronous or start-stop systems, e.g. for Baudot code
    • H04L25/40Transmitting circuits; Receiving circuits
    • H04L25/49Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
    • H04L25/4902Pulse width modulation; Pulse position modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • H04L1/1692Physical properties of the supervisory signal, e.g. acknowledgement by energy bursts

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Physics & Mathematics (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Dc Digital Transmission (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Abstract

公开了在集成电路中形成的功能模块的通信电路之间的串行数据发送和接收,包括:用于产生具有表示一个数据的特定脉冲宽度的脉冲信号的编码器;用于恢复来自从编码器接收的脉冲信号的数据的解码器;编码器的输出端和解码器输入端之间连接的数据线;和用于把一个特定数据值加到要发送的数据值并且从接收的数据值减去特定数据值的控制器。利用本发明在串行通信期间,可以避免由外部噪音引起的错误数据发送。

Description

集成电路之间的串行数据通信
技术领域
本发明涉及串行数据发送,并且具体地说涉及集成电路中形成的功能模块的通信电路之间的串行数据发送和接收。
技术背景
随着超大规模集成电路(VLSI)技术的发展,一个或多个通信电路与逻辑功能一起已经被封装在一个单独的芯片或功能模块中。在这些集成电路(IC)之间,数据可以通过一条通信线路从一个模块发送到另一个模块。在该领域主要使用三种主要的串行发送方法:同步输入/输出,UART(通用异步收发信机),和I2C通信。在同步通信中,使用某些辅助信号例如时钟信号同步发送方和接收方。每一方具有用于启动串行发送的一个控制块。它要求在它们之间有两条通信线路:时钟线和数据线。另外,需要用于启动/禁止通信电路的一个辅助控制线路。
UART被设计为工作在发送和接收两种方式。通常,它接受8条数据线作为并行输入,并且提供一个完全结构化的串行输出。因此一个芯片可以转换通信线路上的串行信号为系统中所需的并行信号以及从并行信号转换为串行信号。UART还具有用于启动串行发送的一个控制块。这个方法的缺陷在于它具有有限的发送速度。
另外,当起通信电路作用的控制块加入IC模块中时也出现问题。首先,它在IC上占据相当大的芯片面积,并且其次它引起由控制块的数据线和时钟线中的信号状态改变产生的电磁干扰(EMI)噪音。
另外,在串行通信期间,一个奇偶校验位经常被插入一个串行数据帧作为数据完整性检查。另外,一个互补的数据信号可以随原始数据一起发送并且在接收方可以进行发送校验。这些校验方案要求通信电路和信号发送系统中有一种复杂的电路结构。
发明内容
本发明试图解决已有的技术问题,并且因此本发明的一个目的是提供当数据经通信线路发送时,可以减少EMI辐射的一种通信电路。
本发明的另一个目的是提供具有简单结构和小的芯片占用面积的一种通信电路。
本发明的再一个目的是提供具有简单数据校验方案的一种通信电路。
为了实现上述发明目的,本发明提供了一种通信电路的编码器,用于在集成电路中的各模块之间传送串行数据,包括:脉冲发生器,它包括:分频器,其按预定的脉冲信号宽度对时钟信号进行分频;寄存器,用于存储待发送的数据值;计数器,用于对分频后的时钟脉冲信号进行计数,并输出该计数值;开关装置,用于导通或关断由分频器向计数器的脉冲信号输出;比较器,用于将该计数值与存储在寄存器中的值进行比较;以及控制信号发生器,用于对脉冲发生器进行控制。
相应地,本发明还提供了一种通信电路的解码器,用于在各集成电路模块之间传送串行数据,包括:分频器,用于按预定的脉冲宽度对时钟脉冲信号进行分频;计数器,用于对来自分频器的预定脉冲宽度进行计数;以及寄存器,当所述计数器被去激活时,用于存储该计数器的输出值。
此外,本发明还提供了一种通信电路的数据发送机,用于在集成电路中的各模块之间传送串行数据,包括:控制器,时钟信号发生器,编码器,和输出缓存器,其中,所述编码器包括:脉冲发生器,它包括:分频器,其按预定的脉冲信号宽度对时钟信号进行分频;寄存器,用于存储待发送的数据值;计数器,用于对分频后的时钟脉冲信号进行计数,并输出该计数值;开关装置,用于导通或关断由分频器向计数器的脉冲信号输出;比较器,用于将该计数值与存储在寄存器中的值进行比较;以及控制信号发生器,用于对脉冲发生器进行控制;其中,所述编码器的数据输出端连接至输出缓存器的输入端。
对应地,本发明还提供了一种通信电路的数据接收机,用于在集成电路中的各模块之间传送串行数据,包括:时钟发生器,控制器,和解码器,其中,所述解码器包括第一和第二解码器,所述第一和第二解码器分别包括:分频器,用于按预定的脉冲宽度对时钟脉冲信号进行分频;计数器,用于对来自分频器的预定脉冲宽度进行计数;以及寄存器,当所述计数器被去激活时,用于存储该计数器的输出值。
本发明进一步提供了一种用于在IC中的各模块之间发送串行数据的编码方法,该方法包括步骤:a)确定是否存在待发送的数据;b)基于待发送的数据计算对应于该数据值的脉冲信号宽度;c)产生具有该计算宽度的第一脉冲信号;d)确定在脉冲信号产生期间,该计算宽度是否已经经过;以及e)如果该计算宽度已经经过,则停止产生脉冲信号。
对应于上述编码方法,本发明提供了一种用于在IC中的各模块之间接收串行数据的解码方法,该方法包括步骤:(A)确定待接收的第一或第二脉冲信号的第一脉冲宽度是否开始;(B)将计数器复位并对由分频器输出的分频时钟信号进行计数;(C)判断在脉冲信号接收期间,是否检测到该脉冲信号的终点;(D)如果已经检测到该脉冲信号的终点,则计算对应于该脉冲数据信号的计数器输出值,并存储到寄存器中;以及(E)从第二脉冲宽度恢复对应于第一脉冲信号和第二脉冲信号的原始数据。
根据本发明,提供了一种串行通信电路,它包括:用于产生具有表示一个数据的特定脉冲宽度的一个脉冲信号的编码器;用于恢复从编码器中接收的脉冲信号的数据的解码器;编码器的输出端和解码器数据输入端之间连接的一条数据线;用于增加一个特定数据的值到待发送的数据值并且从接收的数据值中减去该特定数据值的控制器。
根据本发明的一个优选实施例,脉冲信号宽度由具有预定时间间隔的第一脉冲宽度和单位时间间隔之和的第二脉冲宽度组成。
另外,第一脉冲宽度对应于表示脉冲信号开始的特定数据。另外,第一脉冲宽度的时间间隔大于第二脉冲宽度的单位时间间隔。
根据本发明,提供了用于在IC模块之间发送串行数据的方法,该方法包括步骤:产生具有对应于待发送的数据值的特定脉冲宽度的第一脉冲信号;产生与第一脉冲信号互补的第二脉冲信号;并且分别通过第一数据发送线和第二数据发送线同时输出第一脉冲信号和第二脉冲信号。
优选地,第一脉冲信号的宽度由具有预定时间间隔的第一脉冲宽度和单位时间间隔之和的第二脉冲宽度组成。
另外,第一脉冲宽度表示脉冲信号的开始,并且第一脉冲宽度的时间间隔大于第二脉冲宽度的单位时间间隔。
具体地说,第一脉冲信号产生步骤包括步骤:确定待发送的数据是否存在;计算对应于该数据值的脉冲宽度;产生具有计算的宽度的脉冲信号PData;确定在脉冲信号产生期间,计算宽度是否已经经过;并且如果计算宽度已经经过,则停止产生脉冲信号。
优选地,第一脉冲信号产生步骤还包括步骤:检查是否从接收机接收到一个确认信号ACK;如果已经接收到确认ACK,则确定是否存在要发送的另一个数据;并且如果在当前的时间间隔内没有收到确认信号ACK,则再发送该脉冲信号PData。
另外,根据本发明,提供用于在IC模块之间接收串行数据的一种方法,该方法包括步骤:通过第一数据发送线路和第二数据发送线路接收具有对应于一个数据值的特定脉冲宽度的第一脉冲信号和与第一脉冲信号互补的第二脉冲信号,其中第一脉冲信号宽度由具有预定时间间隔的第一脉冲宽度和单位时间间隔之和的第二脉冲宽度组成;并且从第二脉冲宽度恢复原始数据。
根据本发明的优选实施例,第一脉冲宽度表示脉冲信号的开始。另外,第一脉冲宽度的时间间隔大于第二脉冲宽度的单位时间间隔。
优选地,接收步骤包括步骤:确定第一脉冲宽度是否已经开始;将计数器复位以及对分频器输出的分频时钟信号进行计数;确定在脉冲信号接收期间是否检测到脉冲信号的终点;如果已经检测到脉冲信号的终点,则计算对应于脉冲数据信号的计数器输出值;在寄存器中存储计数器值;并且恢复对应于第一脉冲信号和第二脉冲信号的第二脉冲宽度的原始数据。
另外,接收步骤还包括步骤:确定从两个脉冲数据信号中恢复的数据是否具有相同值;如果两个恢复的数据具有相同值,则产生一个确认信号;并且通过第一数据发送线路发送确认信号到发送机。
根据本发明,因为经数据线路发送的串行数据具有单一的脉冲格式,当数据经通信线路发送时可以提供一种有效的EMI预防。另外,当与使用时钟信号的常规同步通信或UART通信中出现的电磁辐射相比时,电磁辐射显著减少。因此,采用这种数据发送方案的通信电路或模块可以避免噪音问题。
另外,由于本发明的发送机和接收机具有小的组成单元的数据输出控制块和数据输入模块,当它被集成到IC模块时,通信电路可以占据小的芯片面积。
另外,根据本发明,用于发送数据的一个简单数据校验方案和错误检测是可能的,因为一个脉冲数据信号和它们互补的脉冲信号被接收机同时接收,并且如果两个恢复的数据具有相同值,则一个确认信号送回发送机。因此在串行通信期间,可以避免由外部噪音产生的错误数据发送。
附图说明
通过参照如下附图可以理解本发明并且它的目的和优点对本领域技术人员将变得清楚:
图1是表示根据本发明通过两条发送线路执行串行通信的数据发送机和接收机的示意图;
图2是通过两条发送线路发送的脉冲信号的波形,其中根据本发明每个脉冲信号之间具有反相关系;
图3是表示在本发明中使用的脉冲数据信号的数据格式的图;
图4是表示其中每个信号的预定脉冲宽度表示一个特定数据的一个脉冲数据信号的例子的波形;
图5是根据本发明的一个实施例的数据发送机的示意方框图;
图6是根据本发明的一个实施例的数据接收机的示意方框图;
图7是表示从图5的发送机的两个输出端发送的脉冲数据信号的例子的波形;
图8是表示由图6的接收机接收的脉冲数据信号的例子的波形;
图9是描述在本发明的发送机中使用的串行数据发送方法的流程图;和
图10是描述在本发明的接收机中使用的串行数据接收方法的流程图。
具体实施方式
参照图1,显示了根据本发明通过两条发送线路执行串行通信的一个数据发送机和接收机。数据发送机100,其可以加入到例如家用电器中使用的微控制器的一个IC模块中,具有一个数据输出控制块。另外,数据接收机120,其可以加入到例如一个微控制器的一个IC模块中,具有一个数据输入控制块。数据发送机100具有两个数据输出端T1和T2,并且数据接收机120具有两个数据输入端T3和T4。这些数据传送端T1和T3通过数据线路DL连接,并且端T2和T4通过另一条数据线路/DL连接。数据线路DL传送由发送机100产生的一个脉冲数据信号PData,并且数据线路/DL传送与脉冲数据信号PData互补的脉冲数据信号/PData。根据本发明在数据发送机100和数据接收机120之间执行串行通信。尽管数据发送机100和数据接收机120已经分别说明以便容易理解发明,但是数据发送机100和数据接收机120两者可以加入到一个集成电路(IC)中以便组成一个通信电路。
图2表示分别经过两条发送线路DL和/DL发送的脉冲数据信号PData和/PData的一个例子。如图所示,经发送线路DL发送的一个脉冲数据信号PData在高电平和低电平之间翻转。脉冲信号PData当数据没被发送时保持高电平。相反地,当数据被发送时,脉冲信号PData保持低电平。因此,PData的高电平部分30和40表示无数据区而低电平部分70表示数据区。另外,脉冲信号PData的下降沿50表示数据发送的开始,而它的上升沿60表示数据发送的结束。
另一个脉冲信号/PData经发送线路/DL被发送。它在与脉冲信号PData具有互补关系的逻辑低电平和高电平之间翻转。因此,/PData的高电平部分80表示数据发送区域。
根据本发明的原理,由脉冲信号PData的数据区域70传送的数据具有一个特定的格式。如图3所示,一个脉冲数据由具有预定时间间隔DO的第一脉冲宽度和单位时间间隔Ud之和的第二脉冲宽度SUd组成。尽管图中说明了时间间隔DO长于单位时间间隔Ud,但是也可以配置成他们具有相同的时间间隔。
图4说明其中每个信号的脉冲宽度表示一个特定数据的几个脉冲数据信号。在图4(a)中,脉冲数据信号仅具有第一脉冲宽度,并且这个脉冲数据可以表示数字“0”。图4(b)的脉冲信号由第一脉冲宽度和具有一个单位时间间隔Ud的第二脉冲宽度组成,并且这个脉冲数据信号可以表示数字“1”。另外,由于图4(c)的脉冲信号由第一脉冲宽度和具有两个单位时间间隔2Ud的第二脉冲宽度组成,并且这个脉冲数据信号可以表示数字“2”。另外,由于图4(d)的脉冲信号由第一脉冲宽度和具有三个单位时间间隔3Ud的第二脉冲宽度组成,并且这个脉冲数据信号可以表示数字“3”。最后,由于图4(e)的脉冲信号由第一脉冲宽度和具有六个单位时间间隔6Ud的第二脉冲宽度组成,并且这个脉冲数据信号可以表示数字“6”。如前面所述,对应于每个上述脉冲信号的互补脉冲数据信号/PData由发送机100产生,并且经第二数据线路/DL同时发送到接收机120。
图5表示数据发送机100的一个实施例。数据发送机100包括一个时钟发生器200,一个控制器140,一个编码器160和一个数据输出缓存器180。控制器140包括CPU220和存储器240。编码器160包括一个控制信号发生器260以及一个脉冲发生器280。脉冲发生器280包括一个分频器300,一个电子开关320,一个计数器340,一个比较器380,一个寄存器360和一个开关去激活器400。发送机100的输出缓存器180包括缓存器B1和反相器IU。另外,缓存器B1和反相器IU的输出组成了发送机100的输出端T1和T2。
CPU220接收一个命令信号D以产生如图4所示的脉冲数据信号PData。另外,CPU220接收通过数据线路DL由接收机120发送的确认信号ACK。存储器240存储CPU220的控制程序。
编码器160从时钟发生器200接收一个时钟信号CLK1。时钟脉冲信号CLK1在分频器300中被分频,以确定组成脉冲数据信号的第一脉冲宽度的时间间隔DO和第二脉冲宽度SUd的单位时间间隔Ud。计数器340对来自分频器300的分频时钟脉冲进行计数。寄存器360接收待发送的数据值TD,该TD是第一脉冲宽度的时间间隔的值。当数据TD被寄存器360接收时,计数器340被复位为零。另外,此时,CPU220允许控制信号发生器260产生一个开关启动信号SWE。这个信号SWE提供给电子开关320以便接通开关。
当接通开关320时,分频器300的输出脉冲提供给计数器340。然后在计数器340的输出端输出一个脉冲信号PData,从而它开始改变它的逻辑电平,如图7所示从高电平改为低电平。脉冲信号经缓存器B1发送给输出端T1。另外,同时,互补的脉冲数据信号/Pdata通过反相器IU在终端T2输出。
在脉冲信号PData的输出期间,比较器380将计数器340的输出值与寄存器360的值比较。如果它们是相同值,则比较器380输出一个信号给开关去激活器400,它关断开关320。这禁止开关320将分频器300的输出脉冲输出到计数器340,并且,低电平脉冲信号PData返回到它的原始高电平。然后一个脉冲信号的发送就完成了。
参照图6,显示了根据本发明的一个实施例配置的数据接收机120。数据接收机120包括一个时钟发生器460,第一解码器420,第二解码器420a和控制器440。第一解码器420与输入端经T3相连以便通过数据线路DL接收从数据发送机100输出的脉冲信号PData,并且第二解码器420a与输入端T4相连,以便通过数据线路/DL接收互补的脉冲信号/PData。第一解码器420包括分频器480,计数器500和寄存器520。第二解码器420a与第一解码器具有相同的结构。控制器440包括CPU540和存储器560,与发送机100的相类似。时钟发生器460将时钟脉冲CLK2提供给每个解码器的分频器480。时钟脉冲CLK2的频率可以与发送机100中使用的时钟脉冲CLK1的频率相同。
时钟CLK2被分频器480分频以便符合通过数据线DL接收的脉冲数据信号的第一脉冲宽度的时间间隔DO和第二脉冲宽度SUd的单位时间间隔Ud。分频的时钟脉冲提供给用于确定接收数据信号脉冲宽度的计数器500。另外,接收的数据信号PData被施加到计数器500的复位端。在接收数据信号PData的下降沿,计数器500被复位。在接收数据信号PData的上升沿,计数器500的输出值存储到寄存器520中。CPU540计算计数器500的输出值;它从计数器500的输出值中减去时间间隔DO的值。可以把结果值作为接收数据RD1并且由此完成了脉冲数据PData的恢复。另外,以如上述的相同方式,在第二解码器420a中恢复互补的脉冲数据信号/PData为另一个接收数据RD2。
然后,CPU540将恢复的数据RD1与数据RD2比较。如果恢复的数据RD1和RD2具有相同值,则认为接收的脉冲数据PData是有效的。但是,如果恢复的数据RD1和RD2具有不同值,则认为接收的脉冲数据PData是无效的。
另外,如果发现恢复的数据RD1和RD2具有相同值,即在接收期间没有错误或没有噪音的情况下,CPU540可以产生一个确认信号ACK,通过数据线DL发送给发送机100。当脉冲信号经过来自图8所示的数据接收终点的时间延迟后,产生确认信号ACK。时间延迟和确认信号的宽度可以设置为适当的时间值。当确认信号ACK被发送机100接收时,通知CPU220在接收机120中脉冲数据PData的安全接收。然而,当确认信号ACK没有被CPU220接收时,发出用于允许发送机100再次发送脉冲数据PData的一个命令。
图9显示发送机100中使用的串行数据发送方法。在步骤2,发送机100的CPU220确定在寄存器360中是否存在数据。如果数据存在,则在步骤3计算关于对应于该数据值的脉冲宽度。计数器340在步骤4产生具有计算宽度的脉冲信号PData和互补的脉冲信号/PData。在步骤5进行判断在脉冲信号产生期间是否已经经过该计算宽度。如果已经经过该计算宽度,则计数器在步骤6停止产生脉冲信号。最后,在步骤7,CPU220检查是否从接收机120接收到确认信号ACK。如果已经接收到确认信号ACK,则它进入到步骤2确定是否存在下一个将被发送的数据。另一方面,如果在当前时间间隔没有接收到确认信号ACK,则它进入到步骤4以便再次产生脉冲信号PData和反相的脉冲信号/PData。
图10表示根据本发明的接收机中使用的数据接收方法。接收机120分别通过数据线DL和/DL从发送机100接收脉冲信号PData和它的互补脉冲信号/PData,并且通过计算脉冲信号PData的宽度恢复原始数据。首先,当接收到脉冲信号PData时,在步骤11判断是否检测到脉冲信号PData的下降沿。然后在步骤12接收脉冲信号PData和互补脉冲信号/PData。此时,将计数器500复位并根据从分频器480输出的分频时钟信号开始计数。在这些信号接收期间,在步骤3进行下一步的判断是否检测到脉冲信号的上升沿。如果已经检测到脉冲信号的上升沿,则执行对应于脉冲信号PData的计数器输出值的计算。计数器的值被存储到寄存器520。利用这个值,可以得到对应于接收脉冲信号PData的脉冲宽度的原始数据RD1。
通过使用上述的相同方法,互补的脉冲信号/PData被恢复为另一个数据RD2。数据RD2对应接收的脉冲信号/PData的脉冲宽度。在步骤15,进一步判断,来自两个脉冲信号的恢复数据RD1和RD2是否具有相同值。如果两个恢复数据RD1和RD2具有相同值,则产生一个确认信号ACK,并且这个信号通过数据线DL发送给发送机。
由于从上面的描述中已经清楚,根据本发明通过数据线发送的数据信号具有单一的脉冲格式。当数据通过通信线路发送时,这有助于有效的EMI预防。与在使用时钟信号的一般同步通信或在UART通信中出现的电磁辐射相比,其电磁辐射显著减少。因此,采用这种数据发送方案的通信电路或模块可以避免噪音问题。
另外,由于本发明的发送机和接收机具有小组成单元的数据输出控制块和数据输入控制块,所以当它集成在一个IC模块中时,通信电路可以占据小的芯片面积。
另外,根据这个发明,用于发送数据的简单数据校验和纠错是可能的,因为一个脉冲数据信号和它的反相脉冲信号被接收机同时接收并且如果两个恢复的数据具有相同的值,则将一个确认信号发送回发送机。因此,在串行通信期间,可以避免由外部噪音引起的数据错误发送。

Claims (23)

1.一种通信电路的编码器,用于在集成电路中的各模块之间传送串行数据,包括:
脉冲发生器,它包括:
分频器,其按预定的脉冲信号宽度对时钟信号进行分频;
寄存器,用于存储待发送的数据值;
计数器,用于对分频后的时钟脉冲信号进行计数,并输出该计数值;
开关装置,用于导通或关断由分频器向计数器的脉冲信号输出;
比较器,用于将所述计数值与存储在寄存器中的值进行比较;以及
控制信号发生器,用于对脉冲发生器进行控制。
2.如权利要求1的编码器,其中该编码器还包括:
开关去激活器,其根据比较器的输出结果,关断所述开关装置。
3.如权利要求1或2的编码器,其中所述预定脉冲信号的宽度由具有预定时间间隔的第一脉冲宽度和作为单位时间间隔之和的第二脉冲宽度组成。
4.如权利要求3的编码器,其中所述第一脉冲宽度对应表示脉冲信号开始的特定数据。
5.如权利要求4的编码器,其中第一脉冲宽度的时间间隔大于或等于第二脉冲宽度的单位时间间隔。
6.一种通信电路的解码器,用于在集成电路中的各模块之间传送串行数据,包括:
分频器,用于按预定的脉冲宽度对时钟脉冲信号进行分频;
计数器,用于对来自分频器的预定脉冲宽度进行计数;以及
寄存器,当所述计数器被去激活时,用于存储该计数器的输出值。
7.一种通信电路的数据发送机,用于在集成电路中的各模块之间传送串行数据,包括:控制器,时钟信号发生器,编码器,和输出缓存器,其中,所述编码器包括:
脉冲发生器,它包括:
分频器,其按预定的脉冲信号宽度对时钟信号进行分频;寄存器,用于存储待发送的数据值;
计数器,用于对分频后的时钟脉冲信号进行计数,并输出该计数值;
开关装置,用于导通或关断由分频器向计数器的脉冲信号输出;
比较器,用于将该数据的计数值与存储在寄存器中的值进行比较;以及
控制信号发生器,用于对脉冲发生器进行控制;
其中,所述编码器的数据输出端连接至输出缓存器的输入端。
8.如权利要求7的数据发送机,其中所述输出缓存器包括有共同输入端的缓存器和反相器,所述缓存器的输出端与第一数据线相连,所述反相器的输出端与第二数据线相连。
9.如权利要求8所述的数据发送机,其中还包括用于检测由数据接收机发送的确认信号的装置。
10.如权利要求7至9中任何一项的数据发送机,其中所述的预定脉冲信号宽度由具有预定时间间隔的第一脉冲宽度和作为单位时间间隔之和的第二脉冲宽度组成。
11.如权利要求10的数据发送机,其中第一脉冲宽度对应表示脉冲信号开始的特定数据。
12.如权利要求11的数据发送机,其中第一脉冲宽度的时间间隔大于或等于第二脉冲宽度的单位时间间隔。
13.一种通信电路的数据接收机,用于在集成电路中的各模块之间传送串行数据,包括:时钟发生器,控制器,和解码器,其中,所述解码器包括第一和第二解码器,所述第一和第二解码器分别包括:
分频器,用于按预定的脉冲宽度对时钟脉冲信号进行分频;
计数器,用于对来自分频器的预定脉冲宽度进行计数;以及
寄存器,当所述计数器被去激活时,用于存储该计数器的输出值。
14.如权利要求13所述的数据接收机,还包括:当所述第一解码器和第二解码器的输出数据具有相同值时,用于产生确认信号的装置。
15.如权利要求14所述的数据接收机,其中该确认信号通过第一数据线被发送给数据发送机。
16.一种用于在IC中的各模块之间发送串行数据的编码方法,该方法包括步骤:
a)确定是否存在待发送的数据;
b)基于待发送的数据计算对应于该数据值的脉冲信号宽度;
c)产生具有该计算宽度的第一脉冲信号;
d)确定在脉冲信号产生期间,该计算宽度是否已经经过;并且
e)如果该计算宽度已经经过,则停止产生脉冲信号。
17.如权利要求16的方法,所述步骤c)进一步包括步骤:
产生与第一脉冲信号互补的第二脉冲信号。
18.如权利要求16或17的方法,进一步包括如下步骤:
f)检查是否从数据接收机接收到确认信号;以及
g)如果已经接收到确认信号,则判断是否存在待发送的下一个数据;如果在当前的时间间隔内,没有接收到确认信号,则回到步骤c),再次发送所述脉冲信号。
19.如权利要求18的方法,其中所述脉冲信号的宽度由具有预定时间间隔的第一脉冲宽度和作为单位时间间隔之和的第二脉冲宽度组成。
20.如权利要求19的方法其中,第一脉冲宽度表示脉冲信号开始。
21.如权利要求20的方法,其中第一脉冲宽度的时间间隔大于或等于第二脉冲宽度的单位时间间隔。
22.用于在IC中的各模块之间接收串行数据的解码方法,该方法包括步骤:
(A)确定待接收的第一或第二脉冲信号的第一脉冲宽度是否开始;
(B)将计数器复位并对由分频器输出的分频时钟信号进行计数;
(C)判断在脉冲信号接收期间,是否检测到该脉冲信号的终点;
(D)如果已经检测到该脉冲信号的终点,则计算对应于该脉冲数据信号的计数器输出值,并存储到寄存器中;以及
(E)从第二脉冲宽度恢复对应于第一脉冲信号和第二脉冲信号的原始数据。
23.如权利要求22的方法,其中,进一步包括如下步骤:
(F)判断从两个脉冲数据信号恢复的数据是否具有相同值;
(G)如果两个恢复的数据具有相同值,则产生一个确认信号;并且,通过第一数据发送线发送该确认信号到数据发送机。
CNB981176402A 1997-08-28 1998-08-26 集成电路之间的串行数据通信 Expired - Fee Related CN1171398C (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
KR1019970042213A KR100235842B1 (ko) 1997-08-28 1997-08-28 데이터 송/수신 회로 및 그 방법
KR42213/97 1997-08-28
KR42213/1997 1997-08-28

Publications (2)

Publication Number Publication Date
CN1212517A CN1212517A (zh) 1999-03-31
CN1171398C true CN1171398C (zh) 2004-10-13

Family

ID=19519165

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB981176402A Expired - Fee Related CN1171398C (zh) 1997-08-28 1998-08-26 集成电路之间的串行数据通信

Country Status (6)

Country Link
US (1) US6275526B1 (zh)
JP (1) JP3784176B2 (zh)
KR (1) KR100235842B1 (zh)
CN (1) CN1171398C (zh)
DE (1) DE19828632B4 (zh)
TW (1) TW380338B (zh)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000013037A (ko) * 1998-08-04 2000-03-06 윤종용 데이터 송/수신 회로 및 그 방법
DE19914742A1 (de) * 1999-03-31 2000-10-12 Siemens Ag Verfahren zum Übertragen von Daten
JP3525831B2 (ja) 1999-11-17 2004-05-10 日本電気株式会社 クロック信号伝送方式及びディジタル信号伝送方式並びにクロック信号伝送方法及びディジタル信号伝送方法
US6760367B1 (en) * 2000-09-26 2004-07-06 Eni Technology, Inc. Internal noise immune data communications scheme
KR20030004696A (ko) * 2001-07-06 2003-01-15 (주)제이앤에스개발무역 에러검출 자동 보정 시스템 방식에 의한 양방향 전력선통신 제어 시스템 및 방법
US20050032516A1 (en) * 2002-05-24 2005-02-10 Bruno Marchevsky Method and apparatus for detecting the presence of a wireless network
DE60209465D1 (de) * 2002-09-02 2006-04-27 St Microelectronics Srl Hochgeschwindigkeitschnittstelle für Funkanlagen
US7356756B1 (en) * 2004-08-20 2008-04-08 Altera Corporation Serial communications data path with optional features
US8073040B1 (en) * 2004-08-20 2011-12-06 Altera Corporation Serial communications control plane with optional features
US8291063B2 (en) * 2005-03-04 2012-10-16 Netapp, Inc. Method and apparatus for communicating between an agent and a remote management module in a processing system
US7805629B2 (en) * 2005-03-04 2010-09-28 Netapp, Inc. Protecting data transactions on an integrated circuit bus
US7487343B1 (en) 2005-03-04 2009-02-03 Netapp, Inc. Method and apparatus for boot image selection and recovery via a remote management module
US8090810B1 (en) 2005-03-04 2012-01-03 Netapp, Inc. Configuring a remote management module in a processing system
US7899680B2 (en) * 2005-03-04 2011-03-01 Netapp, Inc. Storage of administrative data on a remote management device
US7634760B1 (en) 2005-05-23 2009-12-15 Netapp, Inc. System and method for remote execution of a debugging utility using a remote management module
EP1798921A1 (en) * 2005-12-16 2007-06-20 STMicroelectronics (Research & Development) Limited Switch with a pulsed serial link
US20070240019A1 (en) * 2005-12-29 2007-10-11 International Business Machines Corporation Systems and methods for correcting errors in I2C bus communications
KR101278270B1 (ko) * 2011-08-26 2013-06-24 에스케이하이닉스 주식회사 반도체 장치
JP5801231B2 (ja) * 2012-03-22 2015-10-28 株式会社東芝 伝送システム、復号装置、メモリコントローラおよびメモリシステム
CN103532686B (zh) * 2012-07-03 2016-09-28 中国科学院微电子研究所 带有线序自适应功能的串行数据收发电路及其控制方法
CN102799195B (zh) * 2012-07-12 2014-09-24 清华大学 一种增量光栅信号处理方法
CN103544128B (zh) * 2013-10-28 2016-08-24 无锡中感微电子股份有限公司 芯片之间的单信号线通信方法、装置及系统
CN104270125B (zh) * 2014-08-29 2016-10-26 北京凌云光技术有限责任公司 同步脉冲信号补舍方法及装置
CN104298625A (zh) * 2014-10-11 2015-01-21 龙迅半导体科技(合肥)有限公司 一种iic设备地址的检测方法及装置
JP2016092445A (ja) * 2014-10-29 2016-05-23 株式会社リコー シリアル通信システム
CN104967504A (zh) * 2015-07-08 2015-10-07 北京麓柏科技有限公司 链路数据保护的方法和装置
DE102017214421A1 (de) * 2017-08-18 2019-02-21 Robert Bosch Gmbh Verfahren und Vorrichtung zur Synchronisation von Prozessen auf wenigstens zwei Prozessoren
CN107557984B (zh) * 2017-08-25 2019-05-28 肇庆市立泰电子产品有限公司 一种高性能的针织机选针器并行数据传输协议
KR102621215B1 (ko) * 2017-09-18 2024-01-08 인텔 코포레이션 시간 인코딩된 데이터 통신 프로토콜, 데이터 신호를 생성 및 수신하기 위한 장치 및 방법
US11979177B2 (en) 2017-09-18 2024-05-07 Intel Corporation Time encoded data communication protocol, apparatus and method for generating and receiving a data signal
CN112118083A (zh) * 2020-09-02 2020-12-22 广东瑞德智能科技股份有限公司 一种单线半双工的通信方法、通信装置及设备

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2235438B1 (zh) * 1973-06-26 1976-05-07 Labo Cent Telecommunicat
US4178549A (en) * 1978-03-27 1979-12-11 National Semiconductor Corporation Recognition of a received signal as being from a particular transmitter
US5185765A (en) * 1986-05-08 1993-02-09 Walker Harold R High speed data communication system using phase shift key coding
US5216667A (en) * 1991-05-24 1993-06-01 International Business Machines Corporation Simultaneous bidirectional transceiver
CH686465A5 (de) * 1993-01-26 1996-03-29 Royale Consultants Ltd Verfahren und Einrichtung zur bidirektionalen Informationsuebertragung (Full-Duplex).
US5905716A (en) * 1996-12-09 1999-05-18 Ericsson, Inc. Asynchronous full duplex communications over a single channel

Also Published As

Publication number Publication date
DE19828632B4 (de) 2007-08-02
TW380338B (en) 2000-01-21
CN1212517A (zh) 1999-03-31
JP3784176B2 (ja) 2006-06-07
DE19828632A1 (de) 1999-03-04
US6275526B1 (en) 2001-08-14
KR19990018932A (ko) 1999-03-15
JPH11168513A (ja) 1999-06-22
KR100235842B1 (ko) 1999-12-15

Similar Documents

Publication Publication Date Title
CN1171398C (zh) 集成电路之间的串行数据通信
US4720829A (en) Error control encoding system
EP0150072B1 (en) Decoder
US20140101356A1 (en) Transmission device, transmission system, and control method for transmission device
WO2005088467A1 (en) Data communication module providing fault tolerance and increased stability
WO1981001637A1 (en) Data processing system with serial data transmission between subsystems
EP0629068A1 (en) 4B6B coding scheme
CN1143237C (zh) 用至少另一种辅助载波信号从数据载体向站传输数据的系统
CN1922599A (zh) 通用串行总线发射机
EP0276445B1 (en) Method and apparatus for detecting transient errors
US7251304B2 (en) Bit synchronizing circuit configured to obviate errors from meta-stability
US7155352B2 (en) Using feedback to select transmitting voltage
US4675545A (en) Wave shaping apparatus for eliminating pulse width distortion
CN103346862B (zh) 一种分级保护的片上网络数据传输装置及方法
CN102932103B (zh) 一种基于数字化变电站的数据传输速率自适应接收方法
CN115004587B (zh) 用于数据传输的位反转
US20060007026A1 (en) Data transmitting circuit and method based on differential value data encoding
CN1173797A (zh) 比特同步电路及其方法
CN1826779A (zh) 用于接收机的时钟再训练方法
US11005599B2 (en) Data transmission systems and data transmission methods of suppressing data error occurrences due to crosstalk
CN109802761B (zh) 一种故障识别方法及装置
JP2806873B2 (ja) シリアルバス通信システム
US11258461B2 (en) Data processing device and method
WO2018080360A1 (en) Dbi protection for data link
CN1081864C (zh) 全电子式交换机双重化总线数据接收装置及方法

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20041013

Termination date: 20140826

EXPY Termination of patent right or utility model