一種1553b總線程控故障注入裝置制造方法
【專利摘要】本發(fā)明公開了一種1553B總線程控故障注入裝置。其中該裝置包括:曼徹斯特編碼器、奇校驗故障編碼器、同步頭故障編碼器、過零故障編碼器、數據字長故障編碼器、消息長度故障及替換指令故障編碼器、數據間隔故障編碼器、響應延遲故障編碼器。本發(fā)明的程控故障注入裝置用于1553B總線通信設備及系統(tǒng)的有效性可靠性及可測試性驗證,解決了傳統(tǒng)方法在1553B總線故障注入測試過程中破壞總線通信過程的弊端問題,采用FPGA固件實現(xiàn),具有通用性。輸入端與1553B總線控制IP核或芯片連接,通過改變編碼方式產生各種故障,不干預1553B總線控制IP核或芯片通信功能。固件不調用鎖相環(huán)、存儲器等其它資源,硬件開銷小。
【專利說明】一種1553B總線程控故障注入裝置
【技術領域】
[0001]本發(fā)明涉及航空電子通信總線仿真測試【技術領域】,特別是涉及一種1553B總線程控故障注入裝置。
【背景技術】
[0002]1553B總線指遵從美國軍用標準MIL-STD-1553B的數字時分制指令/響應型多路傳輸總線,與之對應的我國軍用標準為GJB289A-97 (兩標準規(guī)定內容一致)。1553B總線的通信過程由總線控制器(BC, Bus Controller)發(fā)起并采用指令-響應的應答控制機制,提供了傳輸可靠性保障,被廣泛應用于軍事、工業(yè)及科研領域特別是軍用機載電子設備和航空航天電子設備的中低速率數據傳輸。
[0003]GJB5186是我國針對MIL_STD_1553B(GJB289A-97)總線制定的測試方法軍用標準,規(guī)定了檢驗總線控制器(BC)、遠程終端設備(RT, Remote Terminal)、總線監(jiān)控器(BM,Bus Monitor)、連接器及總線系統(tǒng)的有效性測試方法和生產測試方法,明確規(guī)定故障注入作為檢驗設備及系統(tǒng)協(xié)議遵從性的測試手段之一。同時,隨著以航空電子為代表的軍工和高技術裝備制造及應用對設備及系統(tǒng)的可測試性設計要求不斷提高,在設備研制、生產、調制、驗收及系統(tǒng)組建過程中,采用“硬件在環(huán)”故障注入的加速失效方法模擬未來系統(tǒng)應用過程中可能潛在的各種潛在風險,已經成為檢驗設備及系統(tǒng)可測試性設計有效性和完備性的必要措施。
[0004]1553B總線故障按類別可分為物理故障、電氣故障和協(xié)議故障,其中物理故障指差分信號線的斷路、短路、串行阻抗和并行阻抗變化等;電氣故障包括信號幅度、波形上升/下降時間和過零時間差錯等;協(xié)議故障指包括校驗錯誤、字長錯誤、消息長度錯誤、字間隔錯誤、延遲錯誤等數據位及定時關系的故障類型。
[0005]針對協(xié)議故障,目前,國內外科研單位及測試設備制造商針對不同類型的總線系統(tǒng)推出了一些專用故障注入器或帶有故障注入功能總線分析設備,如何在應用設備進行測試的同時避免或盡量減小對被測對象系統(tǒng)拓撲結構及數據傳輸過程產生的影響,成為關注的重點。針對單工/全雙工總線,在延遲可控狀態(tài)下,將故障注入器設備串接在單向傳輸總線并采用“接收一注入故障一轉發(fā)”的嵌入式設計,已經成為通行做法。但對于半雙工總線,特別是采用特殊指令-響應型控制方式的1553B總線,采用嵌入式串行注入設計尚存在很多弊端。單獨設計帶有故障注入功能的1553B總線模擬設備,替代1553B總線系統(tǒng)中的一個或多個非被測對象,完成半實物系統(tǒng)測試是一種次優(yōu)但有效的解決方法?,F(xiàn)有的1553B總線模擬設備中故障注入與總線仿真常作為兩種獨立應用模式,在故障注入模式下,通常需要預先確定特定故障類型下傳輸數據的內容及信號波形,再以觸發(fā)的方式將故障注入總線系統(tǒng),由此導致故障注入模式下不能實時改變傳輸內容,同時難以避免對總線通信過程造成干擾。
[0006]針對傳統(tǒng)方法在1553B總線故障注入測試過程中破壞總線通信過程的弊端問題,目前尚未提出有效的解決方案。
【發(fā)明內容】
[0007]針對傳統(tǒng)方法在1553B總線故障注入測試過程中破壞總線通信過程的弊端問題,本發(fā)明提供了一種1553B總線程控故障注入裝置,用以解決上述技術問題。
[0008]根據本發(fā)明的一個方面,本發(fā)明提供了一種1553B總線程控故障注入裝置,其中,該裝置包括:曼徹斯特編碼器,為曼徹斯特II型編碼器,形成20位曼徹斯特II型編碼;奇校驗故障編碼器,用于通過字序計數器計數值的判斷,選擇奇校驗模式或者偶校驗模式;同步頭故障編碼器,用于分別提供對指令字/響應字同步頭“10”和數據字同步頭“01”的6位同步頭編碼用戶自定義,覆蓋標準規(guī)定的“ 111100”、“ 110000”、“ 111001”、“011000”和“000111”5種無效同步頭編碼;過零故障編碼器,用于將1553B總線數據流中指定的一個指令字或數據字中,指定一位過零故障,通過寄存器配置恒定高模式或者恒定低模式;數據字長故障編碼器,用于將所述1553B總線數據流中指定的一個指令字或數據字的數據位,從末位刪減I位、2位,或在末位后增加2位、3位;其中,刪減或增加模式及增加位的內容,由用戶通過寄存器自定義配置;消息長度故障及替換指令故障編碼器,用于將所述1553B總線消息幀刪減1、2…31個數據字或增加I個數據字,產生消息長度故障;同時基于同一機制,在指定字4us間隔時間替換用戶自定義指令,產生替換指令故障;數據間隔故障編碼器,用于在所述1553B總線數據流中指定一個指令字或數據字后,插入用戶自定義間隔;響應延遲故障編碼器,用于將所述1553B總線數據流整體延遲用戶自定義時間。
[0009]進一步,所述曼徹斯特編碼器,為標準1553B偶校驗曼徹斯特II型編碼器,將輸入的16位待傳輸數據D[15:0]根據奇校驗規(guī)則產生第17位校驗位,根據輸入的同步頭類型信號SYNC增加3位同步頭編碼,形成20位曼徹斯特II型編碼。
[0010]進一步,所述奇校驗故障編碼器,用于將所述1553B總線數據流中指定的一個指令字或數據字的奇校驗模 式改為偶校驗模式,或者將偶校驗模式改為奇校驗模式,并保持其它字的校驗模式不變。
[0011]進一步,所述奇校驗故障編碼器,用于在所述曼徹斯特編碼器基礎上,增加一個7位故障字序號輸入信號err_seq[6:0],和一個7位字序計數器。在所述曼徹斯特編碼器的奇校驗環(huán)節(jié),通過字序計數器計數值的判斷,利用if-else分支程序,選擇奇校驗模式、偶校驗模式。
[0012]進一步,所述同步頭故障編碼器,用于在所述曼徹斯特編碼器基礎上,分別增加6位用戶自定義指令字/響應字同步頭SYNCl [5:0],和6位數據字同步頭SYNCO [5:0]輸入信號,在所述曼徹斯特編碼器添加3位同步頭環(huán)節(jié),分別在3位對應的6個位時內根據自定義同步同輸入,產生同步頭故障;其中,所述曼徹斯特碼每位數據映射為2個位時。
[0013]進一步,所述過零故障編碼器,用于在所述曼徹斯特編碼器的基礎上,增加一個7位故障字序信號err_seq[6:0]、一個6位位序信號bit_seq[5:0]、一位高/低標志信號low_high以及7位字序計數器和6位位序計數器;在所述曼徹斯特編碼過程中,當字序計數器和位序計數器的計數值達到通過信號輸入規(guī)定的字序和位序,定位故障位置,根據所述low_high利用兩個位時的恒高或恒低信號,替代正常曼徹斯特編碼,產生過零故障。
[0014]進一步,所述數據字長故障編碼器,用于在所述曼徹斯特編碼器的基礎上,增加一個7位字序信號err_seq[6:0]、一個2位錯誤子模式信號err_mode [1: O]和3位多余bit自定義信號bit_more[2:0]。根據自序計數器狀態(tài),對于指定字,根據所述err_mode [1: O]利用case分支程序,選擇刪除20位消息信號位的后I位、后2位或在其后增加2位或3位,增加位的內容通過所述bit_more[2:0]自定義。
[0015]進一步,所述消息長度故障及替換指令故障編碼器,由2個子編碼器組成,其中I個為帶有字計數器的曼徹斯特編碼器,另I個為帶有自定義延遲的單字曼徹斯特編碼器。
[0016]進一步,所述數據間隔故障編碼器,用于在所述曼徹斯特編碼器的基礎上,在編碼器狀態(tài)機的空閑態(tài)和發(fā)送狀態(tài)之間插入一個延遲狀態(tài),產生在規(guī)定數據字后插入間隔的故障現(xiàn)象;其中,所述延遲狀態(tài)的延遲時間通過6位輸入信號Interval [5:0]配置,規(guī)定數據字由7位字序信號err_seq[6:0]配置。
[0017]進一步,所述響應延遲故障編碼器,用于在狀態(tài)機中增加延遲狀態(tài),在編碼前直接增加延遲時間。
[0018]進一步,所述曼徹斯特編碼器、所述奇校驗故障編碼器、所述同步頭故障編碼器、所述過零故障編碼器、所述數據字長故障編碼器、所述消息長度故障及替換指令故障編碼器、所述數據間隔故障編碼器、所述響應延遲故障編碼器之間為并行關系,利用分支程序進行調用,構成所述程控故障注入裝置。
[0019]進一步,所述程控故障注入裝置的對外信號接口的輸入信號為:復位信號,16MHz時鐘信號,16位并行數據信號,I位同步頭信號和I位編碼器寫數據寫操作標志信號,以及4 個 16 位配置寄存器 FJ_MODE_REG、FJ_SEQ_REG FJ_DELAY_REG、FJ_USERDEFINE ;輸出信號為:1對差分1553B編碼信號,I位編碼器數據讀操作標志信號,I位編碼器忙信號;其中,所述對外信號接口的輸入端與1553B總線控制互聯(lián)網協(xié)議IP核或芯片連接,通過改變編碼方式產生各種故障。
[0020]本發(fā)明針對協(xié)議故障,提出的1553B總線程控故障注入裝置用于1553B總線通信設備及系統(tǒng)的有效性、可靠性及可測試性驗證,特別涉及一種可產生8個類別1553B總線通信協(xié)議故障的程控故障注入方法及編碼器裝置。解決了傳統(tǒng)方法在1553B總線故障注入測試過程中破壞總線通信過程的弊端問題,該裝置采用FPGA固件實現(xiàn),具有通用性。輸入端與1553B總線控制IP核或芯片連接,僅通過改變編碼方式產生各種故障,不干預1553B總線控制IP核或芯片通信功能。固件不調用鎖相環(huán)、存儲器等其它資源,硬件開銷小。
[0021]上述說明僅是本發(fā)明技術方案的概述,為了能夠更清楚了解本發(fā)明的技術手段,而可依照說明書的內容予以實施,并且為了讓本發(fā)明的上述和其它目的、特征和優(yōu)點能夠更明顯易懂,以下特舉本發(fā)明的【具體實施方式】。
【專利附圖】
【附圖說明】
[0022]圖1是根據本發(fā)明實施例的1553B總線程控故障注入裝置的結構框圖;
[0023]圖2是根據本發(fā)明實施例的曼徹斯特編碼器的結構示意圖;
[0024]圖3是根據本發(fā)明實施例的奇校驗故障編碼器的結構示意圖;
[0025]圖4是根據本發(fā)明實施例的同步頭故障編碼器的結構示意圖;
[0026]圖5是根據本發(fā)明實施例的過零故障編碼器的結構示意圖;
[0027]圖6是根據本發(fā)明實施例的數據字長故障編碼器的結構示意圖;
[0028]圖7是根據本發(fā)明實施例的消息長度故障及替換指令故障編碼器的結構示意圖。【具體實施方式】
[0029]為了解決傳統(tǒng)方法在1553B總線故障注入測試過程中破壞總線通信過程的弊端問題,本發(fā)明提供了一種1553B總線程控故障注入裝置,以下結合附圖以及實施例,對本發(fā)明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不限定本發(fā)明。
[0030]本發(fā)明為解決傳統(tǒng)方法在1553B總線故障注入測試過程中破壞總線通信過程的弊端,提出了一種帶程控故障注入功能的曼徹斯特編碼器,應用該編碼器裝置,可不改變1553B總線設備通信控制功能,即可實現(xiàn)GJB5186所規(guī)定的全部8個類別的協(xié)議故障注入,達到故障注入對于總線通信具有“透明性”,在總線仿真過程中同時完成故障注入測試,從而可更有效地擬合真實總線通信過程中的故障現(xiàn)象。
[0031]在正常的1553B總線通信中,數據利用曼徹斯特II型編碼傳輸。圖1是根據本發(fā)明實施例的1553B總線程控故障注入裝置的結構框圖,如圖1所示,本發(fā)明提出的1553B總線程控故障注入裝置由8個基本功能模塊組成:
[0032]曼徹斯特編碼器10,為曼徹斯特II型編碼器,形成20位曼徹斯特II型編碼。
[0033]具體地,曼徹斯特編碼器,為標準1553B偶校驗曼徹斯特II型編碼器,將輸入的16位待傳輸數據D[15:0]根據奇校驗規(guī)則產生第17位校驗位,根據輸入的同步頭類型信號SYNC增加3位同步頭編碼,形成20位曼徹斯特II型編碼。
[0034]奇校驗故障編碼器20,用于通過字序計數器計數值的判斷,選擇奇校驗模式或者偶校驗模式。
[0035]具體地,奇校驗故障編碼器,用于將1553B總線數據流中指定的一個指令字或數據字的奇校驗模式改為偶校驗模式,或者將偶校驗模式改為奇校驗模式,并保持其它字的校驗模式不變。
[0036]具體地,奇校驗故障編碼器,用于在曼徹斯特編碼器基礎上,增加一個7位故障字序號輸入信號err_Seq [6:0],和一個7位字序計數器。在曼徹斯特編碼器的奇校驗環(huán)節(jié),通過字序計數器計數值的判斷,利用if-else分支程序,選擇奇校驗模式、偶校驗模式。
[0037]同步頭故障編碼器30,用于分別提供對指令字/響應字同步頭“10”和數據字同步頭“01”的6位同步頭編碼用戶自定義,覆蓋標準規(guī)定的“111100”、“110000”、“111001”、“ 011000 ”和“ 000111 ” 5種無效同步頭編碼。
[0038]具體地,同步頭故障編碼器,用于在曼徹斯特編碼器基礎上,分別增加6位用戶自定義指令字/響應字同步頭SYNCl [5:0],和6位數據字同步頭SYNCO [5:0]輸入信號,在曼徹斯特編碼器添加3位同步頭環(huán)節(jié),分別在3位對應的6個位時內根據自定義同步同輸入,產生同步頭故障;其中,曼徹斯特碼每位數據映射為2個位時。
[0039]過零故障編碼器40,用于將1553B總線數據流中指定的一個指令字或數據字中,指定一位過零故障,通過寄存器配置恒定高模式或者恒定低模式。
[0040]具體地,過零故障編碼器,用于在曼徹斯特編碼器的基礎上,增加一個7位故障字序信號err_seq[6:0]、一個6位位序信號bit_seq[5:0]、一位高/低標志信號low_high以及7位字序計數器和6位位序計數器;在曼徹斯特編碼過程中,當字序計數器和位序計數器的計數值達到通過信號輸入規(guī)定的字序和位序,定位故障位置,根據low_high利用兩個位時的恒高或恒低信號,替代正常曼徹斯特編碼,產生過零故障。[0041]數據字長故障編碼器50,用于將1553B總線數據流中指定的一個指令字或數據字的數據位,從末位刪減I位、2位,或在末位后增加2位、3位;其中,刪減或增加模式及增加位的內容,由用戶通過寄存器自定義配置。
[0042]具體地,數據字長故障編碼器,用于在曼徹斯特編碼器的基礎上,增加一個7位字序信號err_seq[6:0]、一個2位錯誤子模式信號err_mode [1: O]和3位多余bit自定義信號bit_more[2:0]。根據自序計數器狀態(tài),對于指定字,根據err_mode [1: O]利用case分支程序,選擇刪除20位消息信號位的后I位、后2位或在其后增加2位或3位,增加位的內容通過bit_more [2:0]自定義。
[0043]消息長度故障及替換指令故障編碼器60,用于將1553B總線消息幀刪減1、2...31個數據字或增加I個數據字,產生消息長度故障;同時基于同一機制,在指定字4us間隔時間替換用戶自定義指令,產生替換指令故障。
[0044]具體地,消息長度故障及替換指令故障編碼器,由2個子編碼器組成,其中I個為帶有字計數器的曼徹斯特編碼器,另I個為帶有自定義延遲的單字曼徹斯特編碼器。
[0045]數據間隔故障編碼器70,用于在1553B總線數據流中指定一個指令字或數據字后,插入用戶自定義間隔。
[0046]具體地,數據間隔故障編碼器,用于在曼徹斯特編碼器的基礎上,在編碼器狀態(tài)機的空閑態(tài)和發(fā)送狀態(tài)之間插入一個延遲狀態(tài),產生在規(guī)定數據字后插入間隔的故障現(xiàn)象;其中,延遲狀態(tài)的延遲時間通過6位輸入信號Interval [5:0]配置,規(guī)定數據字由7位字序信號 err_seq[6:0]配置。
[0047]響應延遲故障編碼器80,用于將1553B總線數據流整體延遲用戶自定義時間。
[0048]具體地,響應延遲故障編碼器,用于在狀態(tài)機中增加延遲狀態(tài),在編碼前直接增加延遲時間。
[0049]在本實施例中,上述8個編碼器:曼徹斯特編碼器、奇校驗故障編碼器、同步頭故障編碼器、過零故障編碼器、數據字長故障編碼器、消息長度故障及替換指令故障編碼器、數據間隔故障編碼器、響應延遲故障編碼器之間為并行關系,利用分支程序進行調用,構成程控故障注入裝置。
[0050]在本實施例中,1553B總線程控故障注入裝置的對外信號接口的輸入信號為:復位信號,16MHz時鐘信號,16位并行數據信號,I位同步頭信號和I位編碼器寫數據寫操作標志信號,以及4個16位配置寄存器FJ_M0DE_REG、FJ_SEQ_REG FJ_DELAY_REG、FJ_USERDEFINE。輸出信號為:1對差分1553B編碼信號,I位編碼器數據讀操作標志信號,I位編碼器忙信號。其中,對外信號接口的輸入端與1553B總線控制互聯(lián)網協(xié)議IP核或芯片連接,通過改變編碼方式產生各種故障。
[0051]本實施例針對協(xié)議故障,提出的1553B總線程控故障注入裝置用于1553B總線通信設備及系統(tǒng)的有效性、可靠性及可測試性驗證,特別涉及一種可產生8個類別1553B總線通信協(xié)議故障的程控故障注入方法及編碼器裝置。解決了傳統(tǒng)方法在1553B總線故障注入測試過程中破壞總線通信過程的弊端問題,該裝置采用FPGA固件實現(xiàn),具有通用性。輸入端與1553B總線控制IP核或芯片連接,僅通過改變編碼方式產生各種故障,不干預1553B總線控制IP核或芯片通信功能。固件不調用鎖相環(huán)、存儲器等其它資源,硬件開銷小。
[0052]下面通過具體實施例和附圖,對本發(fā)明中的奇校驗故障編碼器、同步頭故障編碼器、過零故障編碼器、數據字長故障編碼器、消息長度故障及替換指令故障編碼器、數據間隔故障編碼器和響應延遲故障編碼器的功能原理進行介紹,闡述本發(fā)明技術方案的具體實施方法。
[0053]I)曼徹斯特編碼器
[0054]圖2是根據本發(fā)明實施例的曼徹斯特編碼器的結構示意圖,如圖2所示,曼徹斯特編碼器,即常規(guī)曼徹斯特II型編碼器,是標準1553B偶校驗曼徹斯特II型編碼器,其工作過程描述為首先將輸入的16位待傳輸數據D[15:0]根據奇校驗規(guī)則產生第17位校驗位,然后根據輸入的同步頭類型信號SYNC增加3位同步頭編碼,形成20位曼徹斯特II型編碼。
[0055]2)奇校驗故障編碼器
[0056]奇校驗故障編碼器,將1553B總線數據流中指定的一個指令字或數據字的奇校驗改為偶校驗,并保持其它字的校驗方式不變。
[0057]圖3是根據本發(fā)明實施例的奇校驗故障編碼器的結構示意圖,如圖3所示,奇校驗故障編碼器在曼徹斯特編碼器基礎上,增加一個7位故障字序號輸入信號err_Seq[6:0],和一個7位字序計數器。在曼徹斯特編碼器奇校驗環(huán)節(jié),通過字序計數器計數值的判斷,利用if-else分支程序,選擇奇、偶校驗模式。見附圖2。字序計數器在發(fā)送幀結束后復位。
[0058]3)同步頭故障編碼器
[0059]圖4是根據本發(fā)明實施例的同步頭故障編碼器的結構示意圖,如圖4所示,同步頭編碼器在曼徹斯特編碼器基礎上,分別增加6位用戶自定義指令字/響應字同步頭SYNCl [5:0]和6位數據字同步頭SYNCO [5:0]輸入信號,在曼徹斯特編碼器添加3位同步頭環(huán)節(jié),分別在3位對應的6個位時內(曼徹斯特碼每位數據映射為2個位時)根據自定義同步同輸入,產生同步頭故障。
[0060]同步頭故障編碼器,分別提供對指令字/響應字同步頭“10”和數據字同步頭“01”的6位同步頭編碼用戶自定義,覆蓋標準規(guī)定的“111100”、“110000”、“ 111001 ”、“011000”和“000111” 5種無效同步頭編碼。
[0061]4)過零故障編碼器
[0062]過零故障編碼器,將1553B總線數據流中指定的一個指令字或數據字中的指定一位的過零故障,可通過寄存器配置恒定高或恒定低模式。
[0063]圖5是根據本發(fā)明實施例的過零故障編碼器的結構示意圖,如圖5所示,過零故障編碼器在曼徹斯特編碼器基礎上,增加一個7位故障字序信號err_seq [6:0]、一個6位位序信號bit_seq[5:0]、一位高/低標志信號low_high以及7位字序計數器和6位位序計數器。在曼徹斯特編碼過程中,當字序計數器和位序計數器的計數值達到通過信號輸入規(guī)定的字序和位序,即可定位故障位置,而后根據low_high利用兩個位時的恒高或恒低信號替代正常曼徹斯特編碼,產生過零故障。
[0064]5)數據字長故障編碼器
[0065]數據字長故障編碼器,將1553B總線數據流中指定的一個指令字或數據字的數據位從末位刪減I位、2位或在末位后增加2位、3位,刪減或增加模式及增加位的內容由用戶通過寄存器自定義配置。
[0066]圖6是根據本發(fā)明實施例的數據字長故障編碼器的結構示意圖,如圖6所示,數據字長故障編碼器在曼徹斯特編碼器基礎上,增加一個7位字序信號err_seq [6:0]、一個2位錯誤子模式信號err_mode[l:0]和3位多余bit自定義信號bit_more [2:0]。同樣,根據自序計數器狀態(tài),對于指定字,根據err_mode[l:0]利用case分支程序,選擇刪除20位消息信號位的后I位、后2位或在其后增加2位或3位^加位的內容通過^、!!!^^〗^]自定義。
[0067]6)消息長度故障及替換指令故障編碼器
[0068]消息長度故障及替換指令故障編碼器,將1553B總線消息幀刪減1、2...31個數據字或增加I個數據字,產生消息長度故障;同時基于同一機制,可在指定字4us間隔時間替換用戶自定義指令,產生替換指令故障。
[0069]圖7是根據本發(fā)明實施例的消息長度故障及替換指令故障編碼器的結構示意圖,如圖7所示,消息長度故障及替換指令編碼器由2個子編碼器組成,其中I個為帶有字計數器的曼徹斯特編碼器,另I個為帶有自定義延遲的單字曼徹斯特編碼器。對于消息長度故障模式,令延遲單字曼徹斯特編碼器為O延遲,根據通過7位輸入信號word_num[6:0]給定的刪減消息長度,在字計數器達到規(guī)定值后切換成延遲單字曼徹斯特編碼器的空閑輸出,從而產生消息長度縮短故障,對于多I個字故障情況,令延遲單字曼徹斯特編碼器在延遲32字時間后替換輸出,即產生該故障;對于替換指令故障,則延遲單子曼徹斯特編碼器輸出根據自定義的故障字序和延遲間隔做延遲配置。
[0070]7)數據間隔故障編碼器
[0071]數據間隔故障編碼器,在1553B總線數據流中指定一個指令字或數據字后,插入用戶自定義間隔。
[0072]數據間隔故障編碼器是在曼徹斯特編碼器基礎上,在編碼器狀態(tài)機的空閑態(tài)和發(fā)送狀態(tài)之間插入一個新狀態(tài)即延遲狀態(tài),實現(xiàn)在規(guī)定數據字后插入間隔的故障現(xiàn)象。延遲狀態(tài)的延遲時間通過6位輸入信號Interval [5:0]配置,規(guī)定數據字則同樣由7位字序信號 err_seq[6:0]配置。
[0073]8)響應延遲故障編碼器
[0074]響應延遲故障編碼器,將1553B總線數據流整體延遲用戶自定義時間。
[0075]響應延遲故障編碼器與數據間隔故障編碼器原理相同,區(qū)別在于對整幀消息做整體延遲,其實現(xiàn)方法同樣是在狀態(tài)機中增加延遲狀態(tài),在編碼前直接增加延遲時間,不再判斷延遲插入位置。
[0076]上述各類故障編碼器之間為并行關系,利用分支程序進行調用,構成1553B通信協(xié)議故障注入編碼器。針對特定需要,每種故障編碼器可單獨使用。
[0077]本發(fā)明實施例提供的程控故障注入裝置,采用FPGA固件實現(xiàn),具有通用性。程控故障注入裝置(也可以稱為程控故障注入編碼器)對外信號接口為輸入信號:復位信號,16MHz時鐘信號,16位并行數據信號,I位同步頭信號和I位編碼器寫數據寫操作標志信號,以及 4 個 16 位配置寄存器 FJ_MODE_REG、FJ_SEQ_REG FJ_DELAY_REG、FJ_USERDEFINE ;輸出信號:1對差分1553B編碼信號,I位編碼器數據讀操作標志信號,I位編碼器忙信號。輸入端與1553B總線控制IP核或芯片連接,僅通過改變編碼方式產生各種故障,不干預1553B總線控制IP核或芯片通信功能。固件不調用鎖相環(huán)、存儲器等其它資源,硬件開銷小。
[0078]盡管為示例目的,已經公開了本發(fā)明的優(yōu)選實施例,本領域的技術人員將意識到各種改進、增加和取代也是可能的,因此,本發(fā)明的范圍應當不限于上述實施例。
【權利要求】
1.一種1553B總線程控故障注入裝置,其特征在于,所述裝置包括: 曼徹斯特編碼器,為曼徹斯特II型編碼器,形成20位曼徹斯特II型編碼; 奇校驗故障編碼器,用于通過字序計數器計數值的判斷,選擇奇校驗模式或者偶校驗模式; 同步頭故障編碼器,用于分別提供對指令字/響應字同步頭“10”和數據字同步頭“01”的6位同步頭編碼用戶自定義,覆蓋標準規(guī)定的“111100”、“ 110000”、“ 111001”、“011000”和“000111” 5種無效同步頭編碼; 過零故障編碼器,用于將1553B總線數據流中指定的一個指令字或數據字中,指定一位過零故障,通過寄存器配置恒定高模式或者恒定低模式; 數據字長故障編碼器,用于將所述1553B總線數據流中指定的一個指令字或數據字的數據位,從末位刪減I位、2位,或在末位后增加2位、3位;其中,刪減或增加模式及增加位的內容,由用戶通過寄存器自定義配置; 消息長度故障及替換指令故障編碼器,用于將所述1553B總線消息幀刪減1、2...31個數據字或增加I個數據字,產生消息長度故障;同時基于同一機制,在指定字4us間隔時間替換用戶自定義指令,產生替換指令故障; 數據間隔故障編碼器,用于在所述1553B總線數據流中指定一個指令字或數據字后,插入用戶自定義間隔; 響應延遲故障編碼器,用于將所述1553B總線數據流整體延遲用戶自定義時間。
2.如權利要求1所述的裝置,其特征在于,` 所述曼徹斯特編碼器,為標準1553B偶校驗曼徹斯特II型編碼器,將輸入的16位待傳輸數據D[15:0]根據奇校驗規(guī)則產生第17位校驗位,根據輸入的同步頭類型信號SYNC增加3位同步頭編碼,形成20位曼徹斯特II型編碼; 所述奇校驗故障編碼器,用于將所述1553B總線數據流中指定的一個指令字或數據字的奇校驗模式改為偶校驗模式,或者將偶校驗模式改為奇校驗模式,并保持其它字的校驗模式不變。
3.如權利要求1所述的裝置,其特征在于, 所述奇校驗故障編碼器,用于在所述曼徹斯特編碼器基礎上,增加一個7位故障字序號輸入信號err_Seq [6:0],和一個7位字序計數器。在所述曼徹斯特編碼器的奇校驗環(huán)節(jié),通過字序計數器計數值的判斷,利用if-else分支程序,選擇奇校驗模式、偶校驗模式。
4.如權利要求1所述的裝置,其特征在于, 所述同步頭故障編碼器,用于在所述曼徹斯特編碼器基礎上,分別增加6位用戶自定義指令字/響應字同步頭SYNCl [5:0],和6位數據字同步頭SYNCO [5:0]輸入信號,在所述曼徹斯特編碼器添加3位同步頭環(huán)節(jié),分別在3位對應的6個位時內根據自定義同步同輸入,產生同步頭故障;其中,所述曼徹斯特碼每位數據映射為2個位時。
5.如權利要求1所述的裝置,其特征在于, 所述過零故障編碼器,用于在所述曼徹斯特編碼器的基礎上,增加一個7位故障字序信號err_seq[6:0]、一個6位位序信號bit_seq[5:0]、一位高/低標志信號low_high以及7位字序計數器和6位位序計數器;在所述曼徹斯特編碼過程中,當字序計數器和位序計數器的計數值達到通過信號輸入規(guī)定的字序和位序,定位故障位置,根據所述low_high利用兩個位時的恒高或恒低信號,替代正常曼徹斯特編碼,產生過零故障。
6.如權利要求1所述的裝置,其特征在于, 所述數據字長故障編碼器,用于在所述曼徹斯特編碼器的基礎上,增加一個7位字序信號err_seq[6:0]、一個2位錯誤子模式信號err_mode [1:O]和3位多余bit自定義信號bit_more[2:0];根據自序計數器狀態(tài),對于指定字,根據所述err_mode [1: O]利用case分支程序,選擇刪除20位消息信號位的后I位、后2位或在其后增加2位或3位,增加位的內容通過所述bit_more[2:0]自定義。
7.如權利要求1所述的裝置,其特征在于, 所述消息長度故障及替換指令故障編碼器,由2個子編碼器組成,其中I個為帶有字計數器的曼徹斯特編碼器,另I個為帶有自定義延遲的單字曼徹斯特編碼器。
8.如權利要求1所述的裝置,其特征在于, 所述數據間隔故障編碼器,用于在所述曼徹斯特編碼器的基礎上,在編碼器狀態(tài)機的空閑態(tài)和發(fā)送狀態(tài)之間插入一個延遲狀態(tài),產生在規(guī)定數據字后插入間隔的故障現(xiàn)象;其中,所述延遲狀態(tài)的延遲時間通過6位輸入信號Interval [5:0]配置,規(guī)定數據字由7位字序信號err_seq[6:0]配置。
9.如權利要求1所述的裝置,其特征在于, 所述響應延遲故障編碼器,用于在狀態(tài)機中增加延遲狀態(tài),在編碼前直接增加延遲時間。
10.如權利要求1至9中任`一項所述的裝置,其特征在于,所述曼徹斯特編碼器、所述奇校驗故障編碼器、所述同步頭故障編碼器、所述過零故障編碼器、所述數據字長故障編碼器、所述消息長度故障及替換指令故障編碼器、所述數據間隔故障編碼器、所述響應延遲故障編碼器之間為并行關系,利用分支程序進行調用,構成所述程控故障注入裝置; 所述程控故障注入裝置的對外信號接口的輸入信號為:復位信號,16MHz時鐘信號,16位并行數據信號,I位同步頭信號和I位編碼器寫數據寫操作標志信號,以及4個16位配置寄存器 FJ_MODE_REG、FJ_SEQ_REGFJ_DELAY_REG、FJ_USERDEFINE ; 輸出信號為:1對差分1553B編碼信號,I位編碼器數據讀操作標志信號,I位編碼器忙信號;其中,所述對外信號接口的輸入端與1553B總線控制互聯(lián)網協(xié)議IP核或芯片連接,通過改變編碼方式產生各種故障。
【文檔編號】H04L1/00GK103701663SQ201310727144
【公開日】2014年4月2日 申請日期:2013年12月25日 優(yōu)先權日:2013年12月25日
【發(fā)明者】肇啟明, 周志波, 安佰岳, 王石記, 殷曄, 周慶飛 申請人:北京航天測控技術有限公司