專利名稱:一種可編程邏輯器件的檢測方法和檢測系統的制作方法
技術領域:
本發明涉及電子產品故障檢測技術領域,更具體地說,涉及一種可編程邏輯器件的檢測方法和檢測系統。
背景技術:
可編程邏輯器件(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日
發明者胡小義, 劉康寧, 周有錚, 紀云鋒, 魏福祥 申請人:杭州和利時自動化有限公司