具有可中断时钟的数据总线接口的制作方法

文档序号:7674853阅读:211来源:国知局

专利名称::具有可中断时钟的数据总线接口的制作方法
技术领域
:本发明涉及一种数据总线接口,具体涉及一种用于I2C总线或IC间总线的接口,在所述总线中,时钟信号是可中断的。
背景技术
:诸如上述I2C总线的数据总线接口作为行业标准而为人所知,并且被大量使用。I2C总线被指定为异步数据总线,其中一条数据线和一条时钟线对于数据传输而言足够了。数据传输的开始和结束由数据和时钟线上的对应状时钟速率是由发起该数据传输的设备指定的。因此,可能发生数据时钟与存在于接收器处的时钟不同步。因此,这种接口也被称为异步接口。如今,通常利用集成设计工具来制造数字集成电路,并且从库中导入和连接用于不同功能的现有的块。由于这些设计工具是专门为实现同步逻辑而构思的,因此在已经建立的工具流程中不可能集成异步功能,例如上述异步数据接口。在因此而有必要的没有工具支持的实现中,对于异步数据接口自身以及连同该集成电路的剩余部分的定时可能出现问题。为了确保集成电路的安全操作一一尽管有这些定时问题,需要相当大的设计工作量,这是不期望的。为了能够仍然使用异步数据接口,可以在库中获得利用同步架构来模拟异步数据接口的功能块。当接收到异步传送的数据时,通过以所述数据速率的倍数进行过采样来对时钟和数据线上的状态进行采样。然后,可以根据采样值的重复度(multiplicity)来确定异步信号。在这样的同步集成电路中,多个元件利用系统时钟而各自被同时切换。所得到的电流产生在大频率范围上产生所谓的数字噪声,并且还增大电路的功耗,即使对应的电路部分没有被使用也是如此。在集成电路中,特别是在必须处理低电平上的RF信号的那些电路中,理想的是避免其它信号对有用信号的任何干扰。这些其它信号也可以是集成电路操作所需的时钟信号。因此,通常仅将时钟信号施加到必须工作以执行该集成电路的功能的那些电路部分。常常出现的是仅在接通之后或者在必须改变参数时,才经由接口来对电路进行寻址。该接口在多数时间内不需要是工作的。在该情况下,如果该接口没有被用于通信,则可以切断用于该接口的时钟。然而,必须采取特殊的预防措施以便能够检测到外部发起的连接建立,使得当该接口尚未准备好接收所传送的数据时,该数据的部分不丟失。因此,理想的是提出一种电路,其仅在接口被实际用于通信时才提供该接口的操作所需的时钟。此外,理想的是该电路^5l包括少数组件,因此能够在没有工具支持并且不经较大设计工作量的情况下被手工地实现。
发明内容在权利要求1中提出的电路提供所希望的功能。在从属权利要求中指出有利的实施例和进一步的发展。该数据总线接口包括时钟和数据线,其中,经由时钟和数据线上的状态的唯一组合来分别指示数据传输的开始和结束。此外,提供接口电^^,其在接收模式中通过以数据速率的倍数进行扫描来确定时钟和数据线上的状态,并且输出所传送的数据。提供控制电路以检测数据传输的开始和结束,其中,在检测到数据传输的开始之后,该控制电路向接口电路施加所述接口电路的操作所需的时钟。在检测到数据传输的结束之后,该控制电路中断所述接口电路的操作所需的时钟。所述控制电路优选地被设计为状态机,其对时钟和数据线上的状态做出反应而不需要时钟信号。根据本发明的电路包括控制块和逻辑与门。根据控制块发出的控制信号,逻辑与门向所述接口电路传送该接口的操作所需的时钟。此外,将该接口的数据和时钟线提供给控制块。此外,可以向控制块提供时钟线和复位线。复位线用来将所述电路设置为规定状态。在操作期间,控制块连续地监控所述接口的数据和时钟线。当连接到该接口的外部设备指示该接口上的数据传输时,控制块将控制信号施加到逻辑与门,该逻辑与门由此将所述时钟一一其也被施加到栅极——传送给接口电路。在数据传输终止之后,再次通过所述控制信号切断用于该接口电路的时钟。在根据本发明的电路的一个实施例中,控制块将控制信号传送给接口电路,该接口电路将执行该接口电^各向规定状态的复位。所述控制信号可以是被提供给逻辑与门的同一信号。控制块确保在数据传输将花费的时间内向所述接口电路提供操作所需的时钟。在此情况下,控制块检测数据传输的开始和结束。接口电路只需接收和确认所传送的数据。根据本发明的用于利用时钟和数据线(SCL、SDA)来控制^:据总线接口的方法包括以下步骤检测数据传输的开始,并且当检测到数据传输的开始时将时钟信号施加到接收和传送电路。一旦数据传输被发起和运行,就检测数据传输的终止。当检测到数据传输的终止时,从接收和传送电路移除时钟信号。在一个实施例中,检测数据传输的开始和终止包括监控数据和/或时钟线的逻辑状态或状态转变。在一个实施例中,施加和移除时钟信号包括控制传导或中断时钟信号的开关或多路复用器。所述开关也可包括逻辑与门或逻辑或门或者其它合适的逻辑门。下面参照附图来描述本发明。在附图中,图1示出了根据本发明的电路的组件的示意概略图;图2示出了经由I2C总线进行的数据传输的开始和结束时的信号状态的示意表示;图3示出了根据本发明的控制块的第一实施例的示意表示;图4示出了控制块的不同状态的状态图;以及图5示出了根据本发明的控制块的第二实施例的示意表示。具体实施例方式在附图中,利用相同的参考标号来提供相同或相似的元件。图1示出了根据本发明的电路的示意表示,该电路具有控制块CLK—CTRL、逻辑与门10和接口电路12C。时钟线SCL和数据线SDA连接到接口电路12C。此外,时钟线SCL和数据线SDA还被提供给控制块CLK—CTRL。另外,还经由对应的时钟线向控制块CLK—CTRL提供时钟CLK。提供复位线RST以便将所述电路设置为规定状态。控制块CLK_CTRL的输出信号CLK—ON被提供给逻辑与门10和接口电路I2C。时钟信号CLK还被施加在逻辑与门10的第二输入上。控制块CLK—CTRL监控时钟和数据线SCL和SDA。利用时钟和数据线SCL和SDA上的规定状态来指示数据传输的开始和结束。当检测到外部发起的数据传输时,控制块CLK一CTRL的输出CLK—ON呈现导致施加到逻辑与门10的时钟信号CLK作为切换时钟信号CLK一G而被施加到接口电路I2C的状态。在数据传输结束时,输出CLK—ON呈现使得逻辑与门10阻断时钟CLK的状态,即切换时钟信号CLK—G不再被施加到接口电路I2C。在图l所示的示意电路中,输出信号CLK一ON还与接口电路I2C的复位输入相连接。这确保在每个新的数据传输开始时,接口电路I2C的元件被设置为规定状态。另一方面,接口电路I2C在数据传输开始时尚不具有任何时钟以扫描数据线SCL和SDA。此外,在接口电路I2C检测到数据线SCL和SDA上指示数据传输结束的夫见定状态之前,时钟信号可能已经被再次切断。控制块CLK一CTRL负责检测数据传输的开始和结束,并且将接口电路I2C保持为复位,直到存在数据传输为止。图2是当接口12C的数据线SDA和时钟线SCL上的、控制块CLK—CTRL的输出CLK一ON上的、以及施加到接口电路I2C的时钟信号CLK—G的对应信号CLK而示出图2呈现的信号状态。在该图的左手侧,呈现数据线SDA和时钟线SCL上的、指示数据传输的开始的信号状态。对于一开始已经提到过的I2C总线,利用时钟线SCL上的逻辑高电平和数据线SDA上的逻辑低电平来指示数据传输的开始,而两条线在空闲状态下均具有逻辑高电平。因此,数据线SDA的下降沿指示数据传输的开始。然而,数据传输的开始不一定与时钟CLK同步。当时钟信号CLK具有下降沿时,根据本发明的电路仅仅将时钟信号CLK作为切换时钟信号CLK_G传送到接口电路I2C。为此,控制块CLK—CTRL的输出信号仅在时钟信号CLK的下降沿呈现逻辑高电平。该逻辑高电平具有不再将接口电路I2C保持为复位的作用。因此,这将使得接口电路I2C能够从复位状态转变为操作状态,此外,时钟信号CLK—G将随后被安全地施加到接口电路I2C。换言之,在取消复位和时钟信号CLK—G的下一个上升沿之间将可获得与一半时钟周期的长度相对应的固定时间。图的右侧呈现了数据线SDA和时钟线SCL上的、指示数据传输的结束的信号状态。对于I2C总线,通过数据线SDA上的上升沿指示数据传输的结束,而时钟信号线SCL具有逻辑高电平。与数据传输的开始的检测相似,在检测到数据传输的结束之后,利用时钟信号CLK的下一个下降沿切断到接口电路I2C的切换时钟信号CLK一G。因此,使得接口电路I2C可以获得完整的最后一个时钟周期。上述定时涉及其中时钟的上升沿为决定性的(decisive)接口电路I2C。对于其中时钟的下降沿为决定性的接口电路,将相应地利用时钟信号CLK的上升沿来进行复位的取消和时钟信号CLK的传输。图3呈现了根据本发明的控制块CLKj:TRL的示例性示意电3各图。信号SCL、SDA、和CLK以及复位信号RST被提供给控制块CLK—CTRL。控制块CLK—CTRL包括异步状态机110、开始/停止解码器150、以及触发器130。输出CLKJ)N指示检测到数据传输的开始或结束。异步状态机110根据由其逻辑电路元件确定的组合分析来分析向其施加的信号SCL、SDA和CLK。与同步状态机相反,异步状态机包括具有组合反馈信号路径的逻辑网络。不需要存储状态变量的时钟控制的(clocked)存储元件。而是,利用根据状态机的输入信号和逻辑电路元件的反馈信号的组合函数的输出信号来表示所述状态。在根据本发明的状态机中,利用逻辑电路的输出q0、ql和q2来表示状态变量。仅在存在一个或多个输入信号上的改变时才能出现状态的改变。所述输入信号之一上的改变可以经由网络而引起输出q0、ql或q2上的改变。在图3所示的电路中,时钟信号CLK不是所述电路操作所需的时钟,而是像数据和时钟线SDA和SCL的输入一样的普通输入信号。图4示出了状态机的状态图,所述状态机在控制块CLKj:TRL中提供对于数据传输的开始和结束的检测。当从左向右读时,紧跟在箭头之后的数字组表示输入信号SCL、SDA和CLK上的状态。代替信号的长划(dash)表示该信号对所述状态没有影响。箭头表明状态改变。灰色圆圈中的字母a到h表示根据本发明的状态机可采取的那些状态。在此情况下,初始状态是具有字母a的状态。当信号SCL和SDA示出高逻辑电平一一即指示没有数据传输时一一状态机将保持为状态a。信号CLK的状态是不相关的。当信号SCL和SDA指示数据传输的开始时,信号SCL的状态将是重要的。当信号CLK具有逻辑高电平时,状态机改变为状态c。否则,状态机改变为状态b并且等待信号CLK做出从逻辑低电平到逻辑高电平的转变。仅在那之后,状态机将改变为状态c。在状态c中,检测数据传输的开始,并且该状态机等待时钟信号CLK的下降沿以便将时钟CLK—G接通到接口电路12C。时钟CLK一G的接通将由从状态c向状态d的转变触发。在图4中,利用虚箭头示出这一转变。由图3所示的解码器150产生的、在工作状态下具有逻辑低电平的信号START设置图3所示的触发器130。因此,触发器130在其输出处具有逻辑高电平,该逻辑高电平经由图l所示的与门10而将时钟CLK—G释放到接口电路I2C。触发器130由解码器150的与非门的输出处的状态改变控制。该与非门仅在存在状态c以及时钟线CLK上的逻辑低电平时切换。如图3所示,该与非门的上面三个输入与状态机110的反相输出q0和q2以及正相输出ql相连接。因此,所述与非门利用上面三个输入将由数字串OIO表示的状态c解码。所述与非门的第四输入与反相时钟信号CLK相连接。当状态机改变为状态c时,时钟信号CLK具有逻辑高电平,如上所述。结果,解码尚未完成。这将仅仅是时钟信号CLK具有逻辑低电平的情况。那时,状态机从状态c改变为状态d,并且补偿和瞬时动作在该网络中继续进行。在瞬时动作减弱之后,将信号施加到不再对应于解码状态的与非门的输入,并且信号START再次呈现逻辑高电平。因此,显然,从状态c到状态d的转变产生了具有长度为AT的逻辑低电平的脉冲;AT与瞬时动作的持续时间相等。该脉冲设置图3所示的触发器130。下表示出了状态机的不同状态和输出q0、ql和q2处的对应逻辑电平。<table>tableseeoriginaldocumentpage8</column></row><table>当考虑所述不同状态的编码时,显然,对于从状态c到状态d的转变,只有输出q2需要改变。输出qO和ql保持不变。这一状态编码允许产生无瑕疯的(clean)触发脉冲,这是因为由于若干相关信号之间的运行时间差导致的丢失脉冲在此转变中不能出现。此外,状态编码的选择以及电路的设计确保即使是无意地也不能通过所述电路内的瞬时状态改变而达到状态c。在达到状态d之后,将开始在I2C总线上传送数据。该传输以信号SCL呈现逻辑低电平开始。因此,所述状态机改变为状态e。根据I2C总线规范,信号SDA只可以在信号SCL具有逻辑低电平时在数据传输期间改变其逻辑电平。根据所传送的数据,所述状态机呈现状态d、e、f和a。当传送0(零)时,出现状态d和e。当传送1(一)时出现状态f和a。正如在图4的状态图中显而易见的那样,被施加到接口电路以进行操作的时钟信号CLK在经由总线传送数据期间对于状态机是不重要的。如图2所示,经由I2C总线的数据传输将被所谓的停止条件终止。为了启动该停止条件,必须将数据线SDA设置为逻辑低电平,而时钟线SCL具有逻辑低电平。由此,所述状态机改变为状态e。随后,时钟线SCL被设置为逻辑高电平,由于这一原因,强迫状态机进入状态d。如果现在数据线SDA也从逻辑低电平转变为逻辑高电平,则出现停止条件。与在数据传输开始时必须存在的开始条件相似,状态机向下一状态——g或h——的转变将取决于时钟信号CLK。如果当离开状态d时时钟信号CLK具有逻辑高电平,则在解码器150中产生信号STOP之前,状态机在状态g中等待时钟信号CLK的下降沿。仅在那时才将触发器130复位,并且信号CLK一ON中断时钟信号CLK向接口电路I2C的传输。图5示出了根据本发明的替换示例控制块CLK_CTRL的示意电路图。在图3所示的控制块CLK一CTRL中,所需的逻辑操作由它们各自的基本电路表示。然而,当制造电路时,减少所使用的不同基本电路的数目可以是有利的。例如,可以用与非门来代替与门和或门。然后,可以通过预定义的电路元件来有利地组装所得到的电路,所迷电路元件可以在用于制造数字电路的__由IC制造商使用和/或IC制造商可以获得的一一设计工具的库中获得。对于图5所示的电路,利用这种预定义的电路元件来代替图3所示的一些电路元件。这里围绕各个逻辑基本电路的实线框表明它是来自库的预定义的电路元件。权利要求1.一种具有时钟和数据线(SCL、SDA)的数据总线接口,其中,数据传输的开始和结束分别由时钟和数据线(SCL、SDA)的唯一状态组合来指示,其中,提供接口电路(I2C),其在接收模式中通过以数据速率的倍数进行采样来确定时钟和数据线(SCL、SDA)的状态,并且输出所传送的数据,其特征在于,提供用于检测数据传输的开始和结束的控制电路(CLK_CTRL),其中所述控制电路(CLK_CTRL)在检测到数据传输的开始之后向接口电路(I2C)施加该接口电路(I2C)的操作所需的第一时钟信号(CLK_G),并且其中,所述控制电路(CLK_CTRL)在检测到数据传输的结束之后中断该接口电路(I2C)的操作所需的第一时钟信号(CLK_G)。2.如权利要求1所述的数据总线接口,其特征在于,所述控制电路(CLK_CTRL)分析时钟和数据线(SCL、SDA)的状态。3.如权利要求1所述的数据总线接口,其特征在于,所述控制电路(CLK_CTRL)包括无时钟的状态机。4.如权利要求1所述的数据总线接口,其特征在于,所述时钟信号(CLK—G)的施加和/或中断与第二时钟信号(CLK)同步发生,其中第一时钟信号(CLK—G)是从第二时钟信号(CLK)导出的。5.如权利要求1所述的数据总线接口,其特征在于,所述控制电路(CLK_CTRL)将复位信号施加到接口电路(I2C)。6.如权利要求1所述的数据总线接口,其特征在于,外部复位信号(RST)被提供给所述控制电路。7.—种用于利用时钟和数据线(SCL、SDA)来控制数据总线接口的方法,包括以下步骤-检测数据传输的开始;-当检测到数据传输的开始时,将时钟信号施加到接收和传送电路;-检测数据传输的终止;以及-当检测到数据传输的终止时从接收和传送电路移除所述时钟信号。8.如权利要求7所述的方法,其中,检测数据传输的开始和终止包括监控数据和/或时钟线的逻辑状态或状态转变。9.如权利要求7所述的方法,其中,施加和移除时钟信号包括控制传导或中断所述时钟信号的开关。全文摘要在具有经由时钟和数据线进行的异步数据传输的数据总线中,通过以数据总线的数据速率的倍数进行采样来确定所传送的数据。在此情况下,利用与数据总线的异步时钟不同步的时钟来进行采样。为了避免由于在当前不传送数据时以高频时钟不必要地操作接口电路而出现的干扰,提供用于检测数据传输的开始和结束的控制电路。仅在数据传输开始时,才会向接口电路提供所需时钟。在数据传输结束之后,将再次切断用于所述接口电路的时钟。该控制电路优选地被设计为状态机,其对数据总线的数据和时钟线上的状态做出反应而不需要时钟信号。文档编号H04L25/06GK101371234SQ200780002469公开日2009年2月18日申请日期2007年1月11日优先权日2006年1月30日发明者弗里德里克·海兹曼申请人:汤姆森特许公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1