首页> 中国专利> 集成电路之间的串行数据通信

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

摘要

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

著录项

  • 公开/公告号CN1212517A

    专利类型发明专利

  • 公开/公告日1999-03-31

    原文格式PDF

  • 申请/专利权人 三星电子株式会社;

    申请/专利号CN98117640.2

  • 发明设计人 金光明;

    申请日1998-08-26

  • 分类号H03K19/0175;

  • 代理机构中原信达知识产权代理有限责任公司;

  • 代理人谢丽娜

  • 地址 韩国京畿道

  • 入库时间 2023-12-17 13:21:23

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2015-10-28

    未缴年费专利权终止 IPC(主分类):H04B3/00 授权公告日:20041013 终止日期:20140826 申请日:19980826

    专利权的终止

  • 2004-10-13

    授权

    授权

  • 1999-03-31

    公开

    公开

  • 1999-03-10

    实质审查请求的生效

    实质审查请求的生效

说明书

本发明涉及串行数据发送,并且具体地说涉及集成电路中形成的功能模块的通信电路之间的串行数据发送和接收。

随着超大规模集成电路(VLSI)技术的发展,一个或多个通信电路与逻辑功能一起已经被封装在一个单独的芯片或功能模块中。在这些集成电路(IC)之间,数据可以通过一条通信线路从一个模块发送到另一个模块。在该领域主要使用三种主要的串行发送方法:同步输入/输出,UART(通用异步收发信机),和I2C通信。在同步通信中,使用某些辅助信号例如时钟信号同步发送方和接收方。每一方具有用于启动串行发送的一个控制块。它要求在它们之间有两条通信线路:时钟线和数据线。另外,需要用于启动/禁止通信电路的一个辅助控制线路。

UART被设计为工作在发送和接收两种方式。通常,它接受8条数据线作为并行输入,并且提供一个完全结构化的串行输出。因此一个芯片可以转换通信线路上的串行信号为系统中所需的并行信号以及从并行信号转换为串行信号。UART还具有用于启动串行发送的一个控制块。这个方法的缺陷在于它具有有限的发送速度。

另外,当起通信电路作用的控制块加入IC模块中时也出现问题。首先,它在IC上占据相当大的芯片面积,并且其次它引起由控制块的数据线和时钟线中的信号状态改变产生的电磁干扰(EMI)噪音。

另外,在串行通信期间,一个奇偶校验位经常被插入一个串行数据帧作为数据完整性检查。另外,一个互补的数据信号可以随原始数据一起发送并且在接收方可以进行发送校验。这些校验方案要求通信电路和信号发送系统中的有一种复杂的电路结构。

本发明试图解决已有的技术问题,并且因此本发明的一个目的是提供当数据经通信线路发送时,可以减少EMI辐射的一种通信电路。

本发明的另一个目的是提供具有简单结构和小的芯片占用面积的一种通信电路。

本发明的再一个目的是提供具有简单数据校验方案的一种通信电路。

根据本发明,提供了一种串行通信电路,它包括:用于产生具有表示一个数据的特定脉冲宽度的一个脉冲信号的编码器;用于恢复从编码器中接收的脉冲信号的数据的解码器;编码器的输出端和解码器数据输入端之间连接的一条数据线;用于增加一个特定数据的值到待发送的数据值并且从接收的数据值中减去该特定数据值的控制器。

根据本发明的一个优选实施例,脉冲信号宽度由具有预定时间间隔的第一脉冲宽度和单位时间间隔之和的第二脉冲宽度组成。

另外,第一脉冲宽度对应于表示脉冲信号开始的特定数据。另外,第一脉冲宽度的时间间隔大于第二脉冲宽度的单位时间间隔。

根据本发明,提供了用于在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。计数器34计数来自分频器300的分频时钟脉冲。寄存器360接收待发送的数据值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。另外,接收的数据信号PKata被施加到计数器500的复位端。在接收数据信号PData的下降沿,计数器500被复位。在接收数据信号PData的上升沿,计数器500的输出值存储到寄存器520中。CPU540计算计数器500的输出值;它从计数器500的输出值中减去时间间隔DO的值。可以把结果值作为接收数据RD1并且由此完成了脉冲数据PData的恢复。另外,以如上述的相同方式,在第二解码器420a中恢复互补的脉冲数据信号/PData为另一个接收数据RD2。

然后,CPU440将恢复的数据RD1与数据RD2比较。如果恢复的数据RD1和RD2具有相同值,则认为接收的脉冲数据PData是有效的。但是,如果恢复的数据RD1和RD2具有不同值,则认为接收的脉冲数据PData是无效的。

另外,如果发现恢复的数据RD1和RD2具有相同值,即在接收期间没有错误或没有噪音的情况下,CPU440可以产生一个确认信号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时,在步骤1判断是否检测到脉冲信号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模块中时,通信电路可以占据小的芯片面积。

另外,根据这个发明,用于发送数据的简单数据校验和纠错是可能的,因为一个脉冲数据信号和它的反向脉冲信号被接收机同时接收并且如果两个恢复的数据具有相同的值,则将一个确认信号发送回发送机。因此,在串行通信期间,可以避免由外部噪音引起的数据错误发送。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号