一种串行接口电路的测试方法和系统的制作方法

文档序号:6563703阅读:111来源:国知局
专利名称:一种串行接口电路的测试方法和系统的制作方法
技术领域
本发明涉及电路测试技术领域,特别涉及一种串行接口电路的测试方法和系统。
背景技术
串行接口由于采用单通道传输数据,可以提高信号传输过程中的抗干扰能力,允许数据使用更高的频率进行传输,因此在通信中应用很广泛。常见的串行接口有I2S,UART等。根据工作方式又分为单工、半双工、全双工。
典型的双工串行接口电路如图1所示,主机和外部单元通过两条数据通路相连接。从主机角度来说,称从右往左的数据通路为接收通路,从左往右的数据通路为发送通路。通过接收通路,主机接收来自外部单元的数据的过程如下主机的接收端(RX)102把外部单元的发送端101发送过来的串行信号转化成并行数据,依次存到先入先出缓冲器103中,主机的处理模块104就从先入先出缓冲器103中把并行数据取走,作下一步的处理;通过发送通路,主机向外部单元发送数据的过程如下主机的处理模块104把待发送的并行数据陆续放到发送端的先入先出缓冲器105中,主机的发送端106就从先入先出缓冲器105中逐个取走并行数据并转化成串行信号发送出去,供外部单元的接收端107接收。
测试串行接口电路就是测试接收通路和发送通路的各个组成部分是否正常工作。外部单元一侧的所有电路是测试环境,而主机一侧的所有电路则是被测试的对象。现有的测试方法通常分别独立测试接收通路和发送通路。
当发现主机接收到的数据和外部单元发送的数据不一致时,就按照如下方式测试接收通路按顺序分别在接口r3、接口r2、接口r1处检查数据,如果某个接口处的数据与外部单元发送的数据不一致,说明该接口右边的电路有问题,这时再进一步测试这块有问题的电路。当发现外部单元接收到的数据和主机发送的数据不一致时,则按照类似的方式测试发送通路来定位有问题的电路。
现有的串行接口电路的测试方法需要检查整条数据通路,需要接入数据通路的各个中间接口,提取该接口通行的数据。由于这些中间接口的形式各异,可能是并行,可能是串行,还需要对数据进行转换。因此现有的串行接口电路的测试方法存在如下缺点故障电路难于定位,测试所需工作量很大,效率较低。

发明内容
有鉴于此,本发明的目的在于,提出一种串行接口电路的测试方法和系统,可以迅速定位故障电路,极大提高测试的工作效率。所述测试方法包括如下步骤A、在串行接口电路中,设置至少一条附加数据通路;B、测试所设置的附加数据通路的正确性,根据测试结果判断串行接口电路中发生故障的位置。
所述设置至少一条附加数据通路为在串行接口电路中设置选择器以及所述选择器所连接的附加线路,通过改变所设置选择器的选择,接通由串行接口电路的部分线路和所述附加线路构成的附加数据通路。
步骤B进一步包括测试所述串行接口电路原有的接收通路和发送通路的正确性。
步骤B之前进一步包括配置故障电路的位置与所述数据通路的正确性的对应关系表;则步骤B所述根据测试结果判断串行接口电路中发生故障的位置为根据测试结果查找预先配置的故障电路的位置与所述数据通路的正确性的对应关系表,从而得到故障电路的位置。
较佳地,所述步骤B包括B1、测试所述串行接口电路中的部分数据通路,确定故障电路的范围;B2、判断所确定的故障电路范围是否为可能划分的最小范围,若是,则结束本流程;否则,进一步测试与所确定的故障电路范围相关的数据通路,确定新的故障电路的范围,并再次执行步骤B2。
所述测试系统包括待测试的串行接口电路的器件以及由所述器件组成的发送通路和接收通路,以及至少一条由所述串行接口电路的部分器件构成的附加数据通路。
所述附加数据通路进一步包括选择器以及所述选择器连接的附加线路,所述选择器还与所述串行接口线路的器件相连接,用于选择接通由串行接口电路的部分线路和所述附加线路构成的附加数据通路,或接通所述发送通路或接收通路。
所述附加线路中进一步设置有用于模拟所述串行接口电路中器件对数据造成的时延的寄存器。
所述选择器为二选一选择器。
所述发送通路的起点为主机的处理模块,终点为外部单元的接收端,所述接收通路的起点为外部单元的发送端,终点为主机的处理模块;则所述附加数据通路的起点为主机的处理模块或外部单元的发送端,终点为主机的处理模块或外部单元的接收端。
从以上技术方案可以看出,本发明在原有串行接口电路的基础上,增加少量逻辑电路,使得原有的各自独立的两条数据通路彼此相互关联,并分解出多个新的数据通路,通过比较这些数据通路传递的信号,可以快速判断出发生故障电路的位置,从而极大提高测试串行接口电路的工作效率。


图1为基本串行接口电路示意图;
图2为本发明实施例的电路图;图3为本发明实施例的流程图;图4为本发明实施例按照一定顺序测试各个数据通路并判断故障电路位置的流程图。
具体实施例方式
本发明的核心内容为在原有串行接口电路的基础上,增加少量附加逻辑电路,使得原有的各自独立的两条数据通路彼此相互关联,并分解出多个新的数据通路,通过比较这些数据通路传递的信号,即可定位故障电路。
为使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步的详细阐述。
图2所示为本发明实施例的电路图。与图1所示的基本双工串行接口电路比较,本实施例增加了6个二选一选择器(以下简称为选择器)、所述选择器所连接的附加线路和两组寄存器。二选一选择器包括两个接收端和一个发送端,这两个接收端分别为默认选择支路和非默认选择支路,在同一时刻,其中一个选择支路置为有效,而另一个选择支路为无效,而发送端始终为有效。每个选择器都将默认选择支路置为有效,则构成基本的两条数据通路,即从外部单元的发送端201开始,经接收端202、先入先出缓冲器203至处理模块204的接收通路,以及从处理模块204开始,经先入先出缓冲器205、发送端206至外部单元的接收端207的发送通路。每次仅将其中一个选择器的非默认支路置为有效,则会产生一个附加数据通路,一共得到六个数据通路,下面分别加以说明。
1)、选择器t1的默认选择支路连接发送端206,非默认选择支路则连接外部单元的发送端201。将选择器t1置为非默认支路有效则构成数据通路C1,数据通路C1从外部单元的发送端201到外部单元的接收端207,即旁路掉主机侧所有电路。数据通路C1的目的是单独测试外部单元的电路功能,包括它的发送端201和接收端207,确保外部单元能够正确发送和接收数据,为主机侧电路的测试创造一个良好的测试环境。
2)、选择器t2的默认选择支路连接选择器t3,非默认选择支路则连接接收端202。将选择器t2置为非默认支路有效则构成数据通路C2,数据通路C2依次经过外部单元的发送端201、接收端202、发送端206和外部单元的接收端207,即旁路掉主机的处理模块204以及两个先入先出缓冲器。数据通路C2的目的是可以单独测试纯粹的串行接口,即主机的接收端202和发送端206的电路。
3)、选择器t3的默认支路连接先入先出缓冲器205,非默认支路连接寄存器209。将选择器t3的非默认支路置为有效则构成数据通路C3,数据通路C3依次经过处理模块204、寄存器209、发送端206和外部单元的接收端207,即将主机发送端的先入先出缓冲器205旁路掉。数据通路C3的目的是单独测试原始发送通路的一部分,即处理模块204和主机的发送端206构成的电路。
4)、选择器r3的默认支路连接先入先出缓冲器203,非默认支路连接寄存器208。将选择器r3的非默认支路置为有效则构成数据通路C4,数据通路C4依次经过外部单元的发送端201、接收端202、寄存器208、处理模块204,即旁路掉主机接收端的先入先出缓冲器203。数据通路C4的目的是单独测试原始接收通路的一部分,即处理模块204和主机的接收端202构成的电路。
5)、选择器r2的默认支路连接接收端202,非默认支路连接选择器t3。将选择器r2的非默认支路置为有效则构成数据通路C5,数据通路C5依次经过处理模块204、主机发送端的先入先出缓冲器205和主机接收端的先入先出缓冲器203,最后再回到处理模块204,即将纯粹的串行接口电路(接收端202和发送端206都旁路掉)。数据通路C5的目的是单独测试主机侧除串行接口以外的其他电路。
6)、选择器r1的默认支路连接外部单元的发送端201,非默认支路连接发送端206。将选择器r1的非默认支路置为有效则构成数据通路C6,数据通路C6依次经过处理模块204、主机发送端的先入先出缓冲器205、发送端206、接收端202和主机接收端的先入先出缓冲器203,最后再回到处理模块204。数据通路C6的目的是单独测试主机侧的所有电路。
这六条数据通路C1~C6以及原始的接收通路和发送通路,其起始点和终点都是主机的处理模块204或者外部单元。对于其中任意一条数据通路,只要对比其终点接收的并行数据和起始点所发送的并行数据,就可得知该数据通路的正确性;进一步通过对比不同数据通路的正确性,就可以立刻得知故障电路的位置。表1示出了根据数据通路的正确性判断故障电路的位置的几个例子,其中符号“√”表示该数据通路正确,符号“×”表示该数据通路出现问题,符号“-”表示未对该数据通路进行测试。

表1类似表1所示形式,可以配置故障电路的位置与所述数据通路的正确性的对应关系表。本发明实施例的完整流程如图3所示,包括如下步骤步骤301在主机和外部单元之间的基本串行接口电路的基础上,设置至少一条附加数据通路。所述附加数据通路的起始点为主机或外部单元的发送端,终点为主机或外部单元的接收端。
本实施例通过在基本串行接口电路中设置二选一选择器以及寄存器而实现附加数据通路,除所述二选一选择器和寄存器外,附加数据通路中的所有器件均为基本串行接口电路中的器件。其中二选一选择器用于改变数据的流向,寄存器用于模拟原串行接口电路中器件对数据造成的时延。例如图2中,原有串行接口电路中的先入先出缓冲器203从接收端202收到数据,到将该数据发送到处理模块204的接收端之间的时间间隔为t1。则将寄存器208存取数据的时间间隔也设置为t1。这样,对于区别仅仅在于将先入先出缓冲器203替换为寄存器208的两条数据通路,如原始的接收通路和通路C4来说,通路中的其它器件收发数据的情况不会因为上述替换有任何影响。
如图2所示的附加数据通路的设置方案仅是一种示例而已,本发明并未对附加数据通路的设置方案作出限制。
步骤302按照一定的顺序依次测试各个数据通路的正确性,被测试的数据通路至少包括一条附加数据通路,也可包括串行接口电路的基本数据通路;步骤303若根据已知的测试结果,可以判断出故障电路的位置,则输出所判断出的故障电路的位置并结束本流程,否则转至步骤302。
上述步骤中,可以先测试所有基本数据通路和附加数据通路,再根据测试结果判断故障电路的位置。所述判断故障电路的位置可以是根据测试结果查找预先配置的故障电路的位置与所述数据通路的正确性的对应关系表,从而得到故障电路的位置。
实际应用中,电路故障也许仅仅出现在某个器件上,无需测试所有基本数据通路和附加数据通路,而采用如下方法a、测试部分数据通路,确定故障电路的范围。所述的部分数据通路通常选择由较多器件构成的数据通路。
b、若所确定的故障电路范围已经是可能划分的最小范围,即确定为某个器件,则完成测试;否则继续测试与所述故障电路范围有关的数据通路,进一步缩小故障电路的范围并重复执行步骤b,直到所确定的故障电路的范围是可能划分的最小范围。
以图2所示电路为例,可以根据如图4所示流程根据一定顺序测试各个数据通路并判断故障电路位置步骤401设置选择器t1,连通仅连接外部单元的发送端和接收端的附加数据通路C1,并判断C1的起始点(即外部单元的发送端)所发送的数据与C1的终点(即外部单元的接收端)所接收的数据是否一致,若是,则执行步骤402;否则得到结论外部单元的发送端或接收端有问题并结束本流程。
步骤402测试串行接口电路的接收通路或发送通路,若接收通路有问题转至步骤403,若发送通路有问题转至步骤404,若都没有问题则该串行接口电路正常并结束本流程。
步骤403通过设置选择器r3连通数据通路C4并测试C4,若C4正确则先入先出缓冲器203出故障;否则连通并测试数据通路C2,若C2正确则处理模块204出故障,若C2错误则接收端202出故障;并结束本流程。
步骤404通过设置选择器t3连通数据通路C3并测试C3,若C3正确则先入先出缓冲器205出故障;否则连通并测试数据通路C2,若C2正确则处理模块204出故障,若C2错误则发送端206出故障;并结束本流程。
为实现本发明目的,以上实施例在串行接口电路中增加了6条附加数据通路。本领域技术人员应当认识到,附加数据通路的具体数目与本发明的方案的精神实质无关,图2所示的本发明实施例的电路也仅是针对图1所示的串行接口电路的一种示例而已。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种串行接口电路的测试方法,其特征在于,该方法包括如下步骤A、在串行接口电路中,设置至少一条附加数据通路;B、测试所设置的附加数据通路的正确性,根据测试结果判断串行接口电路中发生故障的位置。
2.根据权利要求1所述的方法,其特征在于,所述设置至少一条附加数据通路为在串行接口电路中设置选择器以及所述选择器所连接的附加线路,通过改变所设置选择器的选择,接通由串行接口电路的部分线路和所述附加线路构成的附加数据通路。
3.根据权利要求1所述的方法,其特征在于,步骤B进一步包括测试所述串行接口电路原有的接收通路和发送通路的正确性。
4.根据权利要求1所述的方法,其特征在于,步骤B之前进一步包括配置故障电路的位置与所述数据通路的正确性的对应关系表;则步骤B所述根据测试结果判断串行接口电路中发生故障的位置为根据测试结果查找预先配置的故障电路的位置与所述数据通路的正确性的对应关系表,从而得到故障电路的位置。
5.根据权利要求1所述的方法,其特征在于,所述步骤B包括B1、测试所述串行接口电路中的部分数据通路,确定故障电路的范围;B2、判断所确定的故障电路范围是否为可能划分的最小范围,若是,则结束本流程;否则,进一步测试与所确定的故障电路范围相关的数据通路,确定新的故障电路的范围,并再次执行步骤B2。
6.一种串行接口电路的测试系统,包括待测试的串行接口电路的器件以及由所述器件组成的发送通路和接收通路,其特征在于,所述测试系统还包括至少一条由所述串行接口电路的部分器件构成的附加数据通路。
7.根据权利要求6所述的测试系统,其特征在于,所述附加数据通路进一步包括选择器以及所述选择器连接的附加线路,所述选择器还与所述串行接口线路的器件相连接,用于选择接通由串行接口电路的部分线路和所述附加线路构成的附加数据通路,或接通所述发送通路或接收通路。
8.根据权利要求7所述的测试系统,其特征在于,所述附加线路中进一步设置有用于模拟所述串行接口电路中器件对数据造成的时延的寄存器。
9.根据权利要求7所述的测试系统,其特征在于,所述选择器为二选一选择器。
10.根据权利要求6至9任一项所述的测试系统,其特征在于,所述发送通路的起点为主机的处理模块,终点为外部单元的接收端,所述接收通路的起点为外部单元的发送端,终点为主机的处理模块;则所述附加数据通路的起点为主机的处理模块或外部单元的发送端,终点为主机的处理模块或外部单元的接收端。
全文摘要
本发明公开了一种串行接口电路的测试方法,包括如下步骤A.在串行接口电路中,设置至少一条附加数据通路;B.测试所设置的附加数据通路的正确性,根据测试结果判断串行接口电路中发生故障的位置。本发明还公开了一种串行接口电路的测试系统,包括待测试的串行接口电路的器件以及由所述器件组成的发送通路和接收通路,以及至少一条由所述串行接口电路的部分器件构成的附加数据通路。本发明在原有串行接口电路的基础上,增加少量逻辑电路,使得原有的各自独立的两条数据通路彼此相互关联,并分解出多个新的数据通路,通过比较这些数据通路传递的信号,可以快速判断出发生故障电路的位置,从而极大提高测试串行接口电路的工作效率。
文档编号G06F11/267GK1975690SQ20061016175
公开日2007年6月6日 申请日期2006年12月19日 优先权日2006年12月19日
发明者刘子熹 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1