专利名称:一种可编程逻辑器件的检测方法和检测系统的制作方法
技术领域:
本发明涉及电子产品故障检测技术领域,更具体地说,涉及一种可编程逻辑器件的检测方法和检测系统。
背景技术:
可编程逻辑器件(programmable logic device,简称PLD)是一种由用户编程实现所需功能的半定制集成电路。所述PLD型号、内部管脚分配及其连接关系的描述,即配置数据,可保存于EPROM (可擦除可编程只读存储器)或PROM (可编程只读存储器)等存储单元。在所述PLD及外围电路保持不变的情况下,为所述PLD的存储单元写入不同的配置数据,SP可实现不同的逻辑功能。将编译好的配置数据写入所述PLD的过程,称为PLD配置。在实际应用中,为保证配置数据的完整性,即所述配置数据在下载及存储期间无数据遗漏、损坏等现象发生,主控制器需要对其外围的PLD在当前工作状态下的配置结果进行检测,以保证所述PLD能够准确执行主控制器发出的控制命令。现有的检测方法如下:在编译配置数据过程中,引入可发送固定电平信号的数据,与原配置数据一并进行PLD配置;在用户模式下,所述PLD执行配置数据,得到固定电平信号并输出,所述主控制器采集并解析该固定电平信号的逻辑值,实现检测;如果解析得到的固定电平信号的逻辑值与编译配置数据时编译的固定电平信号的逻辑值相同,表示该PLD当前已被正确配置;反之则表示该PLD当前未被正确配置。在上述检测方法中,所述PLD与主控制器通过传输链路进行信息传输。但是,由于所述传输链路是所述PLD与主控制器之间在物理上存在的连接链路,如一根导线,与外界接触,存在断线、误接电源或对地短接的故障风险,所述主控制器解析得到的固定电平信号的逻辑值会因该传输链路的故障情况而固定为高或低,造成在无法获知所述传输链路发生故障的情况下,对所述PLD当前的配置情况做出误判断,该检测方法的可靠性不高。·
发明内容
有鉴于此,本发明提供一种可编程逻辑器件的检测方法和检测系统,在能够实时获知所述传输链路是否故障的情况下,同时检测所述PLD当前是否被正确配置,提高检测方法的可靠性。一种可编程逻辑器件的检测方法,包括:所述可编程逻辑器件PLD接收时钟信号,按照预设脉冲周期生成方式生成检测脉冲信号并输出;主控制器接收所述检测脉冲信号,解析得到所述检测脉冲信号的实际脉冲周期;比对所述实际脉冲周期与所述预设脉冲周期的差值是否在预设误差范围内;若是,则判定所述PLD当前已被正确配置;反之,则判定所述PLD当前未被正确配置。其中,所述PLD接收时钟信号,按照预设脉冲周期生成方式生成检测脉冲信号,包括:
所述PLD接收至少两个时钟信号;所述PLD按照第一预设脉冲周期生成方式,分别对应各时钟信号生成等数量的、具有同一预设脉冲周期的预检测脉冲信号;对上述预检测脉冲信号分时复用,生成一个检测脉冲信号。其中,所述PLD接收时钟信号,按照预设脉冲周期生成方式生成检测脉冲信号,包括:所述PLD接收一个时钟信号;所述PLD按照第二预设脉冲周期生成方式,对应该时钟信号生成一个预检测脉冲信号;该预检测脉冲信号即为所述检测脉冲信号。可选地,所述PLD接收时钟信号前,还包括:所述PLD下载配置数据,所述配置数据包括具有根据时钟信号和预设脉冲周期生成方式,生成一个脉冲周期预设的脉冲信号的逻辑功能的数据。一种可编程逻辑器件的检测系统,其特征在于,包括:可编程逻辑器件PLD、主控制器和传输链路;所述PLD接收时钟信号,按照预设脉冲周期生成方式生成检测脉冲信号并输出;所述主控制器接收所述检测脉冲信号,解析得到所述检测脉冲信号的实际脉冲周期;比对所述实际脉冲周期与所述预设脉冲周期的差值是否在预设误差范围内;若是,则判定所述PLD当前已被正确配置;反之,则判定所述PLD当前未被正确配置;所述主控制器与所述PLD通过传输链路连接。其中,所述PLD包括存储有具有根据时钟信号生成脉冲周期预设的脉冲信号的逻辑功能的配置数据的存储单元。其中,所述存储单元为存储有具有接收至少两个时钟信号;按照同一预设脉冲周期生成方式,分别对应各时钟信号生成等数量的、具有同一预设脉冲周期的预检测脉冲信号;对上述预检测脉冲信号分时复用,生成一个检测脉冲信号的逻辑功能的配置数据的第一芯片。其中,所述存储单元为存储有具有接收一个时钟信号;按照预设脉冲周期生成方式,对应该时钟信号生成一个预检测脉冲信号的逻辑功能的配置数据的第二芯片,其中该预检测脉冲信号即为检测脉冲信号。从上述的技术方案可以看出,本发明实施例通过所述PLD接收时钟信号,并依据所述时钟信号按照预期脉冲周期发出检测脉冲信号;主控制器接收该解析所述检测脉冲信号,得到其实际脉冲周期;通过比对该检测脉冲信号的预期脉冲周期与实际脉冲周期的差值来检测所述PLD是否被正确配置:若该差值在误差允许范围内,则判定所述PLD已被正确配置;反之则未被正确配置,相较于现有技术,本申请检测过程采集的检测脉冲信号中电平的逻辑值周期变化,避免了传输链路发生故障 时,因解析得到错误的固定电平信号而得到错误的检测结果,提高了检测方法的可靠性。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1a-1c为本发明实施例公开的一种可编程逻辑器件的检测方法流程图;图2a_2c为本发明实施例公开的一种可编程逻辑器件的检测系统结构示意图。
具体实施例方式为了引用和清楚起见,下文中使用的技术名词、简写或缩写总结如下:PLD:progra mmable logic device,可编程逻辑器件;EPROM:ErasabIe Programmable Read Only Memory,可擦除可编程只读存储器;PROM:ProgrammabIe Read-Only Memory,可编程只读存储器。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。如图1a-1c所示,本发明实施例公开了一种可编程逻辑器件的检测方法,能够实时获知所述传输链路是否故障,同时检测所述PLD当前是否被正确配置,提高检测方法的可靠性,包括(参见图1a):步骤101:所述PLD接收时钟信号,按照预设脉冲周期生成方式生成检测脉冲信号并输出;其中,所述PLD接收的时钟信号仅指的是参与本检测方法所涉及的时钟信号,而不包括所述PLD不参与本检测方法、仅仅参与其他逻辑控制而接收的时钟信号,此外,需要说明的是,参与本检测方法所涉及的时钟信号也可同时参与其他逻辑控制,并不局限。所述PLD外围的振荡电路作为时钟信号的发送端,为所述PLD提供时钟源,所述PLD接收所述时钟信号,作为本检测方法的输入信号。根据所述PLD接收的所述振荡电路产生的时钟信号的时钟周期和所述时钟信号对应的时基数,可计算得到以该时钟信号为时基发出的脉冲信号的脉冲周期,具体计算公式如下:时钟信号的时钟周期X时钟信号的时基数=脉冲信号的脉冲周期。其中,在所述振荡电路不变的情况下,其对应产生的时钟信号的时钟周期为固定不变的已知值,各时钟信号分别对应生成的所述脉冲信号的脉冲周期为所述PLD定义的预设值,由此可以确定各时钟信号分别对应的时基数。该预设值即为按照预设脉冲周期生成方式生成的检测脉冲信号的预设脉冲周期,其中所述预设值可以任意设定,并不局限。所述预设脉冲周期生成方式具体实施过程如下:所述PLD接收其外围振荡电路产生的时钟信号,以所述时钟信号为时基,按照已确定的各时钟信号分别对应的时基数,生成与之对应的具有预设脉冲周期的脉冲信号,根据所述时钟信号的个数,步骤101可分别细化为方案一和方案二,以根据所述脉冲信号获取所述检测脉冲信号。方案一(参见图1b):步骤11:所述PLD接收至少两个时钟信号;所述至少两个时钟信号分别由所述PLD的不同的外围振荡电路发出。步骤12:所述PLD按照第一预设脉冲周期生成方式,分别对应各时钟信号生成等数量的、具有同一预设脉冲周期的预检测脉冲信号;所述预检测脉冲信号即为上述公式中所述的脉冲信号;根据所述振荡电路各自的晶振频率,预先确定各振荡电路对应发出的时钟信号的时基数,以保证各时钟信号分别对应产生的预检测脉冲信号的脉冲周期的预设值一致,即所述预设脉冲周期一致;所述外围振荡电路的晶振频率的倒数即为其发出的时钟信号的时钟周期;如:设所述预设脉冲周期为lOOOus,所述时钟信号分别为第一时钟信号和第二时钟信号,若所述第一时钟信号的时钟周期为lus,那么通过前述计算公式可知,所述第一时钟信号的时基数应确定为1000us/lus=1000 ;若所述第二时钟信号的时钟周期为2us,那么所述第二时钟信号的时基数应确定为1000US/2US=500 ;由此分别对应得到预设脉冲周期均为lOOOus的预检测脉冲信号。步骤13:对上述预检测脉冲信号分时复用,生成一个检测脉冲信号。对各时钟信号分别对应生成的具有统一预设脉冲周期的所述至少两个预检测脉冲信号进行分时复用,得到一 个新的脉冲信号,即所述检测脉冲信号;由于所述预检测脉冲信号的预设脉冲周期一致,则对其进行分时复用产生的检测脉冲信号的预设脉冲周期等于所述预检测脉冲信号的预设脉冲周期。方案二 (参见图1c):步骤21:所述PLD接收一个时钟信号;步骤22:所述PLD按照第二预设脉冲周期生成方式,对应该时钟信号生成一个预检测脉冲信号;该预检测脉冲信号即为检测脉冲信号。所述预检测脉冲信号即为上述公式中所述的脉冲信号;所述PLD根据产生该时钟信号的外围振荡电路的晶振频率,预先确定该时钟信号对应的时基数,以保证该时钟信号对应生成的预检测脉冲信号的脉冲周期为预设值;即所述检测脉冲信号具有预设脉冲周期。步骤102:主控制器接收所述检测脉冲信号,解析得到所述检测脉冲信号的实际脉冲周期;步骤103:比对所述实际脉冲周期与所述预设脉冲周期的差值是否在预设误差范围内;若是,则判定所述PLD当前已被正确配置;反之,则判定所述PLD当前未被正确配置。步骤101中生成的所述检测脉冲信号具有已知的预设脉冲周期,但在所述PLD当前未被正确配置或因时钟漂移影响,所述检测脉冲信号的实际脉冲周期则会出现错误或偏差,其实际值还需所述主控制器通过解析获知。若所述PLD当前已被正确配置,则解析得到的所述时钟信号分别对应产生的预检测脉冲信号的实际脉冲周期一致且等于其对应的预设脉冲周期,那么在方案一中,对所述预检测脉冲信号分时复用产生的检测脉冲信号,其实际脉冲周期就应等于其预设脉冲周期;同样在方案二中,单一时钟信号产生的预检测脉冲信号即为所述检测脉冲信号,该检测脉冲信号的实际脉冲周期也应等于其预设脉冲周期。考虑到外围振荡电路产生的时钟信号在时钟漂移作用下可能会产生一定误差,从而导致各时钟信号对应产生的预检测脉冲信号的预设脉冲周期与其实际脉冲周期之间存在一定误差,那么对应得到的检测脉冲信号的预设脉冲周期与其实际脉冲周期也就可能存在误差,但是只要两者的差值在预设误差范围内,则认为所述PLD已被正确配置;反之,则认为所述PLD未被正确配置;所述预设误差范围为考虑时钟漂移后的脉冲周期的偏差范围。其次,本发明实施例还可用于检测所述PLD外围的振荡电路是否存在异常:当所述检测脉冲信号的预设脉冲周期与实际脉冲周期的差值在预设误差范围内时,说明所述PLD外围的振荡电路为所述PLD提供的时钟信号无误,可以保证所述PLD实现预期的逻辑功能,所述PLD外围的振荡电路处于正常运行状态。作为优选,所述PLD接收时钟信号前,还包括:所述PLD下载配置数据,所述配置数据包括具有根据时钟信号和预设脉冲周期生成方式,生成一个脉冲周期预设的脉冲信号的逻辑功能的数据。所述PLD执行所述配置数据,实现上述检测任务。所述PLD下载配置数据的过程在所述PLD配置模式下执行,待所述配置数据下载结束,则标识所述PLD器件开发完成;所述实现上述检测任务的过程在所述PLD用户模式下执行。如图2a_2c所示,本发明实施例还公开了一种可编程逻辑器件的检测系统,能够实时获知所述传输链路是否故障,同时检测所述PLD当前是否被正确配置,提高检测方法的可靠性,包括(参见图2a):可编程逻辑器件PLD100、主控制器200和传输链路300 ;所述PLD100接收时钟信号,按照预设脉冲周期生成方式生成检测脉冲信号并输出;所述主控制器200接收所述检测脉冲信号,解析得到所述检测脉冲信号的实际脉冲周期;并比对所述实际脉冲周期与所述预设脉冲周期的差值是否在预设误差范围内;若是,则判定所述PLD100当前已被正确配置;反之,则判定所述PLD100当前未被正确配置;所述主控制器200与所述PLD100通过传输链路300连接;所述传输链路300是所述PLD100与主控制器200之间在物理上存在的连接链路,如一根导线。其中,所述PLD100包括存储有具有根据时钟信号生成脉冲周期预设的脉冲信号的逻辑功能的配置数据的存储单元10。即所述存储单元10存储有指示所述PLD100根据时钟信号生成脉冲周期预设的脉冲信号的配置数据。其中,所述存储单元10可以为存储有具有接收至少两个时钟信号;按照同一预设脉冲周期生成方式,分别对应各时钟信号生成等数量的、具有同 一预设脉冲周期的预检测脉冲信号;对上述预检测脉冲信号分时复用,生成一个检测脉冲信号的逻辑功能的配置数据的第一芯片11 (参见图2b)。其中,参见所述存储单元10还可以为存储有具有接收一个时钟信号;按照预设脉冲周期生成方式,对应该时钟信号生成一个预检测脉冲信号的逻辑功能的配置数据的第二芯片12 (参见图2c),其中该预检测脉冲信号即为检测脉冲信号。所述存储单元10可以为EPROM或PROM等存储芯片,并不局限。综上所述,本发明实施例通过所述PLD接收时钟信号,并依据所述时钟信号按照预期脉冲周期发出检测脉冲信号;主控制器接收该解析所述检测脉冲信号,得到其实际脉冲周期;通过比对该检测脉冲信号的预期脉冲周期与实际脉冲周期的差值来检测所述PLD是否被正确配置:若该差值在误差允许范围内,则判定所述PLD已被正确配置;反之则未被正确配置,相较于现有技术,本申请检测过程采集的检测脉冲信号中电平的逻辑值周期变化,避免了传输链路发生故障时,因解析得到错误的固定电平信号而得到错误的检测结果,提高了检测方法的可靠性。对于系统实施例而言,由于其基本相应于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明实施例的精`神或范围的情况下,在其它实施例中实现。因此,本发明实施例将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
权利要求
1.一种可编程逻辑器件的检测方法,其特征在于,包括: 所述可编程逻辑器件PLD接收时钟信号,按照预设脉冲周期生成方式生成检测脉冲信号并输出; 主控制器接收所述检测脉冲信号,解析得到所述检测脉冲信号的实际脉冲周期; 比对所述实际脉冲周期与所述预设脉冲周期的差值是否在预设误差范围内;若是,则判定所述PLD当前已被正确配置;反之,则判定所述PLD当前未被正确配置。
2.根据权利要求1所述的检测方法,其特征在于,所述PLD接收时钟信号,按照预设脉冲周期生成方式生成检测脉冲信号,包括: 所述PLD接收至少两个时钟信号; 所述PLD按照第一预设脉冲周期生成方式,分别对应各时钟信号生成等数量的、具有同一预设脉冲周期的预检测脉冲信号; 对上述预检测脉冲信号分时复用,生成一个检测脉冲信号。
3.根据权利要求1所述的检测方法,其特征在于,所述PLD接收时钟信号,按照预设脉冲周期生成方式生成检测脉冲信号,包括: 所述PLD接收一个时钟信号; 所述PLD按照第二预设脉冲周期生成方式,对应该时钟信号生成一个预检测脉冲信号;该预检测脉冲信号即为所述检测脉冲信号。
4.根据权利要求1、2或3所述的检测方法,其特征在于,所述PLD接收时钟信号前,还包括: 所述PLD下载配置数据,所述配置数据包括具有根据时钟信号和预设脉冲周期生成方式,生成一个脉冲周期预设的脉冲信号的逻辑功能的数据。
5.一种可编程逻辑器件的检测系统,其特征在于,包括:可编程逻辑器件PLD、主控制器和传输链路; 所述PLD接收时钟信号,按照预设脉冲周期生成方式生成检测脉冲信号并输出; 所述主控制器接收所述检测脉冲信号,解析得到所述检测脉冲信号的实际脉冲周期;比对所述实际脉冲周期与所述预设脉冲周期的差值是否在预设误差范围内;若是,则判定所述PLD当前已被正确配置;反之,则判定所述PLD当前未被正确配置; 所述主控制器与所述PLD通过传输链路连接。
6.根据权利要求5所述的检测系统,其特征在于,所述PLD包括存储有具有 根据时钟信号生成脉冲周期预设的脉冲信号的逻辑功能 的配置数据的存储单元。
7.根据权利要求6所述的检测系统,其特征在于,所述存储单元为存储有具有 接收至少两个时钟信号;按照同一预设脉冲周期生成方式,分别对应各时钟信号生成等数量的、具有同一预设脉冲周期的预检测脉冲信号;对上述预检测脉冲信号分时复用,生成一个检测脉冲信号的逻辑功能 的配置数据的第一芯片。
8.根据权利要求6所述的检测系统,其特征在于,所述存储单元为存储有具有 接收一个时钟信号;按照预设脉冲周期生成方式,对应该时钟信号生成一个预检测脉冲信号的逻辑功能的配置数据的第二芯片 ,其中该预检测脉冲信号即为检测脉冲信号。
全文摘要
本发明实施例公开了一种可编程逻辑器件的检测方法和检测系统,该方法包括所述可编程逻辑器件PLD接收时钟信号,按照预设脉冲周期生成方式生成检测脉冲信号并输出;主控制器接收所述检测脉冲信号,解析得到所述检测脉冲信号的实际脉冲周期;比对所述实际脉冲周期与所述预设脉冲周期的差值是否在预设误差范围内;若是,则判定所述PLD当前已被正确配置;反之,则判定所述PLD当前未被正确配置,该检测过程采集的检测脉冲信号中电平的逻辑值周期变化,避免了传输链路发生故障时,因解析得到错误的固定电平信号而得到错误的检测结果,提高了检测方法的可靠性。
文档编号G01R31/317GK103235254SQ201310148990
公开日2013年8月7日 申请日期2013年4月25日 优先权日2013年4月25日
发明者胡小义, 刘康宁, 周有铮, 纪云锋, 魏福祥 申请人:杭州和利时自动化有限公司