国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      驗證安全裝置的方法和由相同方法驗證的安全裝置的制作方法

      文檔序號:6279899閱讀:249來源:國知局
      專利名稱:驗證安全裝置的方法和由相同方法驗證的安全裝置的制作方法
      技術領域
      本發(fā)明涉及一種用于驗證安全裝置的方法和由該方法驗證的安全裝置,更具體的說,涉及用于驗證用于控制核電廠、熱電廠、化工廠等并需要確保高可靠性的安全裝置的方法以及由該方法驗證的安全裝置。
      背景技術
      核電廠包括安全裝置,用于當有可能會危害核電廠的安全的異常事件預期存在或異常事件發(fā)生時,防止異常事件的發(fā)生或降低異常事件發(fā)生的可能性。
      提供與安全保護系統(tǒng)相關的放射計數裝置(安全裝置)以用于計算放射量。如果因為某一原因,廠內的放射量增加,那么放射計數裝置向操作電路傳送信息,所述信息指示關閉放射量正在增加的區(qū)域的情況或啟動緊急氣體處理裝置的情況。
      在近來的核電廠中,這樣的與安全保護系統(tǒng)相關的放射計數裝置(安全裝置)進行數字信號處理,其中一個中央處理單元(CPU)執(zhí)行對多個信號的數字濾波或數字計算(例如參考日本專利No.2653522)。
      相反,美國專利No.5859884公開了一種使用通常所說的專用集成電路(ASIC)或現場可編程門陣列(FPGA)的硬件邏輯電路取代CPU的系統(tǒng)。在美國專利No.5859884描述的技術中,電路被配置為使用ASIC取代CPU來控制處理過程。該技術簡化了處理流。
      因為安全裝置很重要,所以一個單元的故障不能導致裝置的整體控制的失敗。因此,采用提供系統(tǒng)冗余的復用配置,或者裝置的每個組件被配置為獨立的。
      然而,在其中CPU執(zhí)行軟件的數字系統(tǒng)中,如果相同的軟件被用于冗余系統(tǒng)和主系統(tǒng),那么軟件的缺陷有可能影響冗余系統(tǒng)的功能性。
      此外,由于包括軟件處理的數字處理基本上是離散值處理,與模擬設備相比,更有可能因為軟件和硬件缺陷而執(zhí)行意外操作。例如,在數字處理中,當滿足某一特定條件時,會發(fā)生異常輸出。
      因此,在使用軟件的數字處理中,需要進行質量保證活動(qualityassurance activity)以確保從設計階段到生產階段的數字處理的高質量。同樣,對于由軟件缺陷或不受控制的設計改變引起的常見故障因素需要合適的保護。特別是,為了保護以防止由軟件缺陷引起的常見故障因素,實施“驗證(verification)和確認(validation)”活動(此后稱為“V &amp; V”)?!癡 &amp; V”是包括以下兩個過程的質量保證活動驗證過程,用于驗證對數字安全裝置的功能需求是從軟件設計過程到生產過程從較高級步驟到較低級步驟正確實現的;以及健全性(soundness)確定過程,用于確定通過驗證過程生產的系統(tǒng)中正確地實現了需求。
      相反,在使用ASIC或FPGA取代CPU的系統(tǒng)中,提供了硬線數字邏輯電路。不同于CPU執(zhí)行的軟件處理,該處理具有固定的處理流。同樣,處理時間由設計決定。因此,可以認為使用ASIC或FPGA的系統(tǒng)是數字邏輯電路的半導體硬件。
      結果,雖然在生產過程中FPGA等使用一些軟件,但是假設進行的處理與實際安裝的硬件的處理相同,就能夠驗證FPGA。例如,通過比較對應所有輸入和所有內部狀態(tài)的半導體器件的輸出與根據其規(guī)格說明書計算出的估計值,除了由定時問題(timing issue)引起的動態(tài)缺陷以外,可以完整地驗證靜態(tài)功能的輸入和輸出屬性。這種驗證方法被稱為“窮舉測試(exhaustive testing)”。
      然而,在實際的ASIC或FPGA中,器件的所有輸入位模式的數目和所有內部狀態(tài)模式的數目之和是巨大的。因此,一般而言,應當認識到,對與所有輸入和內部狀態(tài)模式相對應的輸出模式與估計值相比較是不切實際的。
      因此,評估能有效檢測缺陷的輸入模式串是很關鍵的。例如,通過評估器件內的邏輯模式,通過故障仿真計算出引起內部寄存器至少啟動一次的輸入模式組,或者計算出可以檢測特定故障模式的輸入模式組。
      然而,因為在上述技術中僅僅驗證一些模式,因此該技術不能檢測內部邏輯組合引起的缺陷以及在故障仿真中不考慮的缺陷。
      此外,為了以諸如FPGA這樣的硬件實現邏輯電路(數字電路),需要實用軟件工具(utility software tool),其包括用于創(chuàng)建硬件配置描述的軟件和用于將硬件配置描述轉化為FPGA上的實際的邏輯電路的邏輯綜合工具(logic synthesis tool)。然而,這種實用軟件工具本身會有缺陷,特別是如果這種實用軟件工具是新開發(fā)的。因此,必須確保從設計階段開始的整體可靠性包括實用軟件工具的可靠性。
      如果在性能驗證中可以進行上述的窮舉測試,那么可以發(fā)現靜態(tài)邏輯錯誤。然而,如果不能進行上述窮舉測試,那么對已知軟件需要V &amp; V驗證。
      然而,不同于由CPU執(zhí)行的軟件處理,使用FPGA的系統(tǒng)的處理是固定的,因此,一般而言,可以確定處理時間。因此,單個循環(huán)僅能夠執(zhí)行單個處理。因此,可以容易地滿足用于實現高可靠系統(tǒng)的設計條件。
      如上所述,使用諸如FPGA這樣的硬件邏輯電路來實現安全裝置,從驗證的觀點上看提供了很強的優(yōu)勢。然而,必須實際上在與上述窮舉測試一樣的級別高效地執(zhí)行功能驗證。也就是,需要開發(fā)一種驗證方法,其可以可靠地并快速地驗證相對于輸入,安全裝置的輸出屬性與設計定義的是否相同。
      除了靜態(tài)錯誤,也會發(fā)生由內部操作之間的定時問題引起的動態(tài)錯誤。例如,如果內部邏輯之間的延遲時間因為環(huán)境條件(例如,溫度)或電源條件而改變,那么裝置有可能因為大氣條件而錯誤地工作。為了防止定時問題引起的錯誤,在使用定時仿真的設計階段中應該提供足夠的容限(margin)。而且,如在期望出現的實際環(huán)境中所需要的,需要可以高度可靠地進行驗證的驗證方法。
      盡管已經參考核電廠描述了上述問題,但是開發(fā)可以在設計和生產階段中確保類似的數字裝置的可靠性的設計系統(tǒng)、并且特別是可以檢測隱藏缺陷的設計系統(tǒng),這在諸如煉油廠或化工廠這樣的需要高度可靠的控制系統(tǒng)的領域中也很重要。

      發(fā)明內容
      因此,本發(fā)明的目的是在例如核電廠中提供可以高效地和可靠地測試和驗證安全裝置的組件的驗證方法和由該驗證方法驗證的安全裝置。
      根據本發(fā)明的一個實施例,提供了用于驗證包括可編程邏輯器件的安全裝置的驗證方法。可編程邏輯器件包括多個功能元件(functional element)。該方法包括以下步驟預先在實際的硬件上窮舉地驗證邏輯模式的所有輸出都是響應于每個功能元件的邏輯模式的所有輸入而正常產生的;使用預定的硬件描述語言,生成與在實際的硬件上驗證過的功能元件之一相同的功能元件;將每個生成的功能元件獨立地邏輯綜合為多個第一網表(net list),其中每個第一網表對應于功能元件之一;使用預定的硬件描述語言生成功能元件之間的連接功能(connection function);將生成的連接功能邏輯綜合為對應于該連接功能的第二網表;將多個第一網表與該第二網表進行綜合以生成第三網表;基于第三網表將邏輯電路寫入可編程邏輯器件;以及在包括寫入的邏輯電路的實際的可編程邏輯器件上驗證該可編程邏輯器件的工作是正常的。
      根據本發(fā)明的另一個實施例,安全裝置包括可編程邏輯器件,該可編程邏輯器件包括多個功能元件。由一種驗證方法驗證該安全裝置,該驗證方法包括以下步驟預先在實際的硬件上窮舉地驗證邏輯模式的所有輸出都是響應于每個功能元件的邏輯模式的所有輸入而正常產生的;使用預定的硬件描述語言,生成與在實際的硬件上驗證過的功能元件之一相同的功能元件;將每個生成的功能元件獨立地邏輯綜合為多個第一網表,其中每個第一網表對應于功能元件之一;使用預定的硬件描述語言生成功能元件之間的連接功能;將生成的連接功能邏輯綜合為對應于該連接功能的第二網表;將多個第一網表與該第二網表進行綜合以生成第三網表;基于第三網表將邏輯電路寫入可編程邏輯器件;以及在包括寫入的邏輯電路的實際的可編程邏輯器件上驗證該可編程邏輯器件的工作是正常的。
      根據用于驗證安全裝置的方法和由本發(fā)明的方法驗證的安全裝置,可以高效地和可靠地測試并驗證安全裝置(例如,核電廠)的組件。


      圖1說明了根據本發(fā)明的一個實施例,安全裝置的結構模型;圖2說明了根據本發(fā)明的一個實施例,包括在安全裝置中的可編程邏輯器件的結構模型;圖3說明了根據本發(fā)明的一個實施例,用于驗證安全裝置的方法過程;圖4說明了驗證實際的可編程邏輯器件的功能元件的示例性過程;圖5說明了根據本發(fā)明的一個實施例,用于驗證安全裝置的方法的比較示例;圖6說明了根據本發(fā)明的一個實施例,在安全裝置的驗證方法中,第一連接驗證的示例性過程;圖7說明了根據本發(fā)明的一個實施例,在安全裝置的驗證方法中,第二連接驗證的示例性過程;圖8是說明了第二連接驗證的過程的特定示例的第一圖;圖9是說明了第二連接驗證的過程的特定示例的第二圖;圖10說明了根據本發(fā)明的一個實施例,在安全裝置的驗證方法中,基于仿真的驗證的示例性過程;圖11說明了根據本發(fā)明的一個實施例,在安全裝置的驗證方法中,基于仿真的驗證的詳細圖;圖12說明了根據本發(fā)明的一個實施例,在安全裝置的驗證方法中,驗證實際的裝置的示例性過程(翻轉覆蓋測試(toggle coverage testing);圖13是根據本發(fā)明的一個實施例,在安全裝置的驗證方法中,驗證實際的裝置的詳細過程(翻轉覆蓋測試)的第一圖;圖14是根據本發(fā)明的一個實施例,在安全裝置的驗證方法中,驗證實際的裝置的詳細過程(翻轉覆蓋測試)的第二圖;圖15說明了根據本發(fā)明的一個實施例,在安全裝置的驗證方法中,翻轉覆蓋測試的測試系統(tǒng)。
      具體實施例方式
      現在參考附圖,描述根據本發(fā)明的一個實施例的安全裝置的驗證方法和由該驗證方法驗證的安全裝置。
      (1)安全裝置的布置和系統(tǒng)體系結構圖1說明了根據本發(fā)明的一個實施例,安全裝置1的示例性基本配置。圖1也說明了連接到安全裝置1的示例性外部裝置。
      安全裝置1的示例包括一個裝置,其監(jiān)控安裝在核電廠100中的核反應堆101的內部狀態(tài),并且如果異常事件發(fā)生或者預期發(fā)生異常事件,那么輸出信號(例如,停堆信號(trip signal))以開始安全保護操作,該安全保護操作停止核反應堆101或從核反應堆101分離異常部件。
      安全裝置1的輸入終端接收傳感器2的輸出。傳感器2的示例包括安裝在核反應堆101內的放射傳感器。
      安全裝置1的輸出終端輸出停堆信號。當安全裝置1基于傳感器2的輸出檢查核反應堆101的安全并且當核反應堆101的異常事件發(fā)生或異常事件預期要發(fā)生時,從安全裝置1輸出該停堆信號。通過將停堆信號反饋到核電廠100,核電廠100例如停止核反應堆101或關閉異常部件以確保安全。
      安全裝置1包括模數(A/D)轉換器3,其在對從傳感器2輸入的信號的波形進行整形之后,將該輸入信號轉換為數字值。A/D轉換器3的輸出是向FPGA4a的輸入。
      術語“FPGA”指可編程大規(guī)模集成電路。通過從外部將數據寫入FPGA制造商提供的通用FPGA(也就是,其中還沒有寫數據的FPGA),用戶可以根據用戶定義的規(guī)格說明書實現多個功能。
      FPGA是一類可編程邏輯器件(PLD)。高度集成的PLD稱為FPGA,其已在近年來被廣泛使用。
      由寫入FPGA 4a的功能(例如,數字濾波功能)將傳感器2的輸出轉化為數字值,從而去除不必要的信號。接著,該數字值被輸出到FPGA 4b,這是FPGA 4a的后繼級。FPGA 4b提供例如用于將適當的設置值和傳感器2的輸出進行比較的功能,以便確定異常事件的發(fā)生。如果確定異常事件發(fā)生,FPGA 4b輸出停堆信號。
      圖1僅說明了在工業(yè)應用領域中根據本發(fā)明的一個實施例的安全裝置1的布置,并說明了安全裝置1的主要部件包括可編程邏輯器件,諸如FPGA,但不是安全裝置1的特定配置。
      因此,向安全裝置1輸入信號的傳感器的類型和數目可以是多個。同樣,FPGA的類型和數目和FPGA的安裝方法不局限于圖1所示的那些。
      為保證安全裝置1所需的高可靠性,驗證安全裝置1的每個可編程邏輯器件的可靠性是非常重要的。
      因此,這里現在描述用于驗證可編程邏輯器件的方法。雖然可編程邏輯器件的示例也包括ASIC、門陣列、和PLD,但是僅參考FPGA來描述該方法。
      如這里使用的,用于驗證安全裝置的方法指用于驗證每個可編程邏輯器件的方法。
      (2)用于驗證FPGA的方法的過程圖2說明了FPGA 4a的示例性內部配置,其是圖1中所示的一種類型的FPGA。雖然下面的描述特別指FPGA 4a,但是驗證FPGA的方法可以應用到提供任何類型功能的FPGA。
      近來,一些FPGA 4a已經包括多至數百萬的門電路。雖然FPGA4a可以被認為是為高度集成的大規(guī)模集成電路(LSI),但是內部結構包括多個功能性分離的元件。
      下文中,這些功能性分離的元件被稱為“功能元件”。在圖2中所示的FPGA 4a包括五種類型的功能元件5a、5b、5c、5d和5e。
      每個功能元件5a至5e都包括邏輯電路,諸如AND(邏輯與)電路、OR(邏輯或)電路、觸發(fā)器電路、加法器電路、和計數器電路。這些邏輯電路的組合提供每個功能元件5a至5e的預定功能。
      通過使用連接線互相連接功能元件5a至5e,提供整個FPGA 4a的功能。
      一般而言,以下列的步驟制造FPGA。
      在第一步,FPGA實現的功能被定義為規(guī)格說明書。
      在第二步,以被稱為硬件描述語言的程序語言編寫規(guī)格說明書所定義的功能。使用合適的文本編輯器以硬件描述語言編寫硬件描述。將生成的功能數據存在計算機中。硬件描述語言的示例包括VHDL語言、System-C、Verilog語言及其它。盡管參考VHDL語言描述了該實施例,但是也可以使用另一語言。
      在第三步中,使用被稱為邏輯綜合工具的通用軟件將用硬件描述語言寫成的功能數據轉化為被稱為網表的邏輯數據。這種轉換處理被稱為“邏輯綜合”。網表包括與邏輯電路配置相關的數據。數據表示邏輯電路(例如,AND電路、OR電路、觸發(fā)器電路、加法器電路、和計數器電路)的元件以及這些元件之間的連接。
      此外,網表不僅包括與邏輯電路的元件之間的連接關系相關的數據,而且包括與元件的物理位置相關的數據。
      實現在第二步中以硬件語言寫成的功能的邏輯電路不是必須的一個。多個邏輯電路可以提供相同功能。例如,根據最快處理速度或根據最小規(guī)模邏輯電路(也就是,邏輯電路的器件的最小數)可以優(yōu)化邏輯電路。因此,一般而言,作為選項,邏輯綜合工具允許用戶選擇優(yōu)化的執(zhí)行和優(yōu)化的類型。
      在第四步,基于網表中的邏輯數據進行操作的仿真,以便確定邏輯電路是否正常工作。然而,可以根據邏輯電路的規(guī)模,除去該仿真步驟。
      在第五步,基于網表數據將數據寫入FPGA。這樣,實現了可以實際工作的FPGA。此后,進行對實際的FPGA的測試和驗證。
      在上面的描述中,說明了用于生產廣泛使用的FPGA的基本步驟。然而,對于根據本發(fā)明這個實施例的驗證安全裝置1的方法,需要極端高可靠性。因此,在關注確??煽啃缘耐瑫r,提供步驟流程。
      圖3說明了根據本發(fā)明用于驗證包括在安全裝置1中的FPGA的方法過程的一個實施例。
      在步驟ST1中,使用VHDL語言生成與每個功能元件5a至5e對應的數據(此后稱為“功能元件(VHDL)”)。在預先在實際的FPGA中充分測試功能元件(VHDL)50a至50e之后,無需任何修改地生成功能元件(VHDL)50a至50e。圖4說明了步驟ST1的詳細過程。
      也就是說,圖4說明了生成一個功能元件(VHDL)(也就是,功能元件(VHDL)50a)的過程。
      首先,在步驟ST10,通過基于功能元件5a的規(guī)格說明書以VHDL語言書寫代碼而生成功能元件(VHDL)50a。
      隨后,在步驟ST11,使用通用邏輯綜合工具進行邏輯綜合,以便成生對應于功能元件(VHDL)50a的網表51a。此時,通過從邏輯綜合工具中提供的選項中選擇將電路規(guī)模降低到最小的優(yōu)化選項,可以生成實現功能元件5a的最小電路規(guī)模的邏輯電路數據。
      此后,在步驟ST12,將網表51a的數據寫入FPGA(用于測試的實際的FPGA)。在將數據寫入FPGA之前,按需要添加基于網表51a的數據來驗證工作的仿真步驟。
      在步驟ST13,在FPGA(用于測試的實際的FPGA)上進行窮舉測試。窮舉測試指的是用于通過將對于所有輸入和所有內部狀態(tài)的輸出與根據規(guī)格說明書計算出的估計值相比較來進行測試,以確保正常工作的方法。
      一般而言,對于大規(guī)模數字電路,諸如整個FPGA,窮舉測試實際上是不可能的,這是因為輸入模式的數目和內部狀態(tài)模式的數目以指數級增加。
      然而,對于作為FPGA的精細劃分的元件的功能元件5a,窮舉測試是可能的。此外,因為窮舉測試驗證所有位模式,因而可以提前驗證只有當輸入高度特定離散值時才發(fā)生的異常工作。因此,對于可靠性,窮舉測試是用于驗證FPGA的最有效方法。
      如果使用用于測試的實際的FPGA,根據窮舉測試確保了正常工作(在步驟ST14為是),那么保證了功能元件(VHDL)50a的高數據可靠性(步驟ST15)。
      相反,如果在窮舉測試中發(fā)現異常事件,則調查原因。隨后,修改功能元件(VHDL)50a(步驟ST16)。然后,處理返回到步驟ST11。
      此外,對每個其它功能元件(VHDL)50b至50e,進行類似的窮舉測試。
      因此,在圖3所示的步驟ST1,生成使用實際的FPGA驗證的功能元件(VHDL)50a至50e。
      在步驟ST2,使用邏輯綜合工具對每個功能元件(VHDL)獨立進行邏輯綜合,以便生成分別對應于功能元件(VHDL)50a至50e的網表51a至51e(也就是,多個第一網表)。因為在圖4中所示的流程中已經驗證了該過程,因而新的缺陷因素混合進該過程的可能性很小。此外,在圖4所示流程中也已經驗證了邏輯綜合工具的有效性。
      為了配置完整的FPGA,功能元件(VHDL)50a至50e互相連接。在步驟ST3和ST4中生成該連接所需的數據。
      在步驟ST3,基于定義功能元件5a至5e之間的連接的規(guī)格說明書,以VHDL語言描述連接功能。以與功能元件(VHDL)50a等相同的方式生成“連接功能(VHDL)”。
      在步驟ST4,使用邏輯綜合工具對連接功能(VHDL)進行邏輯綜合,以便生成只定義功能元件之間的連接的網表(第二網表)61。
      在步驟ST5,將指示功能元件5a至5e之間的連接關系的網表(第二網表)61與分別對應功能元件5a至5e的網表(第一網表)51a至51e進行綜合,以便生成第三網表70。第三網表70作為表示整個FPGA 4a的連接狀態(tài)的數據。
      在步驟ST6,基于第三網表70的數據來驗證邏輯電路的連接狀態(tài)。為了驗證連接狀態(tài),使用第三網表70輸出連接圖,并且首先進行諸如用眼睛檢查的人工驗證。
      此時,根據圖3所示的過程,因為在步驟ST1已驗證了對應于最復雜的功能元件的網表51a至51e,因此基本上消除了驗證網表51a至51e的需要。這里,僅需要關注對于功能元件之間的連接的驗證。結果,連接的驗證所需的時間顯著地減少了,因此允許高效的連接驗證。
      (3)與另一個實施例的比較圖5說明了與圖3的流程圖所示的實施例相比,用于生產和驗證同一個FPGA 4a的方法的另一個實施例。在圖5所示的過程中,與圖3所示的過程相比,除去了步驟ST2和ST3。圖5所示的過程看上去比圖3所示的過程更高效。然而,事實并不總是如此。原因描述如下。
      在圖5和3所示的兩個過程中,在步驟ST1,在實際的FPGA上進行驗證。
      在圖3所示的過程中,在對于每個功能元件(VHDL)獨立地生成網表之后,對網表進行綜合。因此,確保了該網表與在步驟ST1中在實際的FPGA上已驗證的網表一樣。
      相反,在圖5中所示的過程中,在步驟ST100一次利用連接功能對每個功能元件(VHDL)進行邏輯綜合。因此,雖然驗證已完成,但是不總是確保該網表與在步驟ST1中在實際的FPGA上已驗證的網表一樣。
      如果在步驟ST100的邏輯綜合的過程中,優(yōu)化(諸如電路規(guī)模的最小化)未被指定為邏輯綜合工具的選項,那么網表與在步驟ST1已驗證的網表非常類似。然而,不完全確保兩者是相同的。這樣,在步驟ST6a的連接驗證中,對每個功能元件內的部分需要驗證連接。結果,連接驗證是非常耗時的。
      此外,因為優(yōu)化被限制在步驟ST100的邏輯綜合中,因而電路的規(guī)模不利地變得很大。
      相反,根據圖3所示的驗證方法的實施例,在步驟ST2生成的網表(也就是,第一網表)與在步驟ST1中在實際的FPGA上已驗證的網表相同。因此,在步驟ST6不需要對每個功能元件內的部分的連接進行驗證。僅驗證功能元件之間的連接是足夠的。結果,減少了連接驗證所需的時間,并因此可以高效地進行連接驗證。
      此外,如果在步驟ST1中對于用于測試的實際的FPGA的邏輯綜合過程中設置了最小化電路規(guī)模的邏輯綜合選項,那么可以以相同的設置生成網表51a至51e。因此,可以在保持與在步驟ST1中在實際的FPGA上驗證的網表等效的同時,使電路規(guī)模最小化。
      (4)連接驗證在步驟ST6的連接驗證中,驗證了功能元件5a至5e之間的連接。根據該實施例,進行以下兩個連接驗證。
      圖6說明了第一連接驗證的過程。
      在步驟ST60,可視化并顯示對應于網表70(也就是,第三網表)的數據的邏輯電路圖。結果,例如,顯示或打印出圖2所示的邏輯電路圖。此時,為了增加電路圖的可視性,可以用顏色將功能元件5a至5e內的邏輯電路與功能元件5a至5e之間的連接部分區(qū)分開來。
      在步驟ST61,將可視化的邏輯電路與定義了功能元件之間的連接的規(guī)格說明書相比較。
      如果根據比較確保了功能元件之間的連接的有效性(在步驟ST62為是),那么完成第一連接驗證。
      如果發(fā)現在功能元件之間的實際連接與規(guī)格說明書的之間不匹配(在步驟ST62為否),那么調查原因以便適當地改正該不匹配(步驟ST63)。
      根據第一連接驗證,因為以可視化邏輯電路圖的形式提供網表(第三網表)70,所以可以高效地進行連接驗證。
      可以用人工系統(tǒng)執(zhí)行步驟ST61的比較。然而,當功能元件的數目增加時,可以使用不同的用于比較的驗證工具自動地執(zhí)行比較。
      圖7說明了第二連接驗證的過程。在第二連接驗證中,相對于網表(第三網表)70中的功能元件的連接,驗證根據規(guī)格說明書生成的連接功能(也就是,以VHDL語言寫的連接功能)中的功能元件之間的連接。
      首先,在步驟ST65,可視化并顯示從網表(第三網表)70導出的功能元件之間的連接電路。
      圖8說明了連接電路120的可視化的并顯示的電路圖,該連接電路120是網表(第三網表)70中包括功能元件5a和5b的組XX的連接電路。在圖8中,將每個功能元件5a和5b被看作是一個“黑盒”。只顯示了功能元件之間的連接。
      圖9說明了指示用于生成組XX的連接電路的連接功能的數據110。數據110是以VHDL語言寫的。
      在圖9中,第一至第三行定義了組“XX”。第四至第七行定義了功能元件“AA”(對應于功能元件5a)的輸入和輸出?!癆AI”表示功能元件“AA”的輸入而“AAO”表示功能元件“AA”的輸出。
      類似地,第八至第十一行定義了功能元件“BB”(對應于功能元件5b)的輸入和輸出。“BBI”表示功能元件“BB”的輸入而“BBO”表示功能元件“BB”的輸出。
      第十二行定義了功能元件之間的連接線L1、L2和L3。
      最后,第十三和第十四行定義了整個組XX的連接功能。特別是,第十三行定義了功能元件“AA”的輸入“AAI”連接到連接線L1,而輸出“AAO”連接到連接線L2。類似地,第十四行定義了功能元件“BB”的輸入“BBI”連接到連接線L2,而輸出“BBO”連接到連接線L3。
      通過將圖9所示的以VHDL語言寫成的數據110與圖8所示的連接電路120相比較(圖7所示的步驟ST67),驗證了在網表(第三網表)70中可靠地實現了功能元件之間的連接。
      要注意的是,根據預定規(guī)則改變了在圖8所示的連接電路120中的一些信號名稱。更具體地說,通過將前綴“XX”(其是更高級組的名稱)添加到以VHDL語言寫成的數據110中指定的名稱來確定信號的名稱。例如,將名稱“AAI”更改為名稱“XXAAI”。因此,在圖7中所示的步驟ST67的比較驗證之前,增加了改變以VHDL語言寫成的數據110的名稱的步驟(步驟ST66)。
      在該實施例中,因為在實際的FPGA上使用了窮舉測試來驗證每個功能元件的內部,所以即使在網表(第三網表)70的驗證中將功能元件看作黑盒,也不會影響可靠性。因此,通過充分地只驗證網表(第三網表)70上功能元件之間的連接,就能確保高可靠性。
      在本實施例中,第一連接驗證和第二連接驗證可以提供功能元件之間的高度可靠的連接驗證。
      (5)基于仿真的驗證雖然對實際的FPGA上的每個功能元件的進行的窮舉測試(圖3所示的步驟ST1)和連接驗證(圖3所示的步驟ST6)確保了靜態(tài)操作的功能性和性能,但是對于由輕微的定時改變引起的動態(tài)操作,諸如信號延遲時間的改變,這樣的測試并不總是令人滿意。
      因此,在根據本實施例的用于驗證安全裝置1的方法中,使用網表(第三網表)70的數據通過仿真來獲得延遲時間。通過確定延遲時間是否小于或等于預定值,進行對由定時改變引起的動態(tài)操作的驗證。
      圖10說明了基于仿真的驗證的過程。
      此外,圖11說明了用于更具體地描述基于仿真的驗證的邏輯電路。
      首先,在圖10所示的步驟ST10中,使用網表(第三網表)70的數據和用于計算延遲時間的數據庫通過仿真獲得預定部分中的延遲時間。
      在該實施例中,如圖11所示,網表(第三網表)70包括兩個功能元件5f和5g。每個功能元件5f和5g在其輸出級包括觸發(fā)器Q1和Q2。觸發(fā)器Q1和Q2與外部時鐘信號CLK同步地工作。
      這里,在功能元件5g中引起信號延遲最大化的路徑是通過AND電路A1和AND電路A2并通往觸發(fā)器Q2的路徑。
      為了正常操作功能元件5f和5g,需要觸發(fā)器Q1與外部時鐘信號CLK同步地輸出信號,并且需要與時鐘周期tc相比,輸出信號通過AND電路A1和A2到達觸發(fā)器Q2所需的時間Td足夠小。
      因此,在圖10所示的步驟ST70,通過仿真獲得了從觸發(fā)器Q1的輸出(圖11中所示的點(A))開始、經過AND電路A1和A2、并通往觸發(fā)器Q2的輸入(圖11所示的點(B))的路徑的延遲時間Td。
      此時,可以按需要使用存儲了AND電路A1和A2的延遲時間和在上述路徑中的連接線的延遲時間的數據庫。
      一般而言,器件的延遲時間根據環(huán)境溫度或電源電壓而改變。已知改變比率對于標準使用環(huán)境是大約1.3X至1.5X,所述標準使用環(huán)境也就是在室內溫度和額定的電源電壓下的狀態(tài)。
      因此,通過仿真獲得在標準使用環(huán)境中的延遲時間Td。如果延遲時間Td小于或等于一個時鐘周期tc的50%,那么即使當環(huán)境溫度或電源電壓改變到使延遲時間最大的環(huán)境溫度或電源電壓時,也可以避免由定時問題引起的錯誤動態(tài)操作。
      在圖10所示的步驟ST71進行該確定。
      如果通過仿真計算出的延遲時間Td小于或等于時鐘周期tc的50%(在步驟ST71為是),那么完成該基于仿真的驗證。
      相反,如果延遲時間Td大于時鐘周期tc的50%(步驟ST71為否),那么改變設計。更具體地說,增加時鐘周期或者在路徑上增加新的觸發(fā)器以便改變該設計,所述路徑例如在AND電路A1和A2之間。如果設計改變是可行的(步驟ST72為是),那么根據設計改變重新生成網表(第三網表)70。隨后,再次執(zhí)行仿真(步驟ST70)。如果例如因為另一限制導致設計改變不可行(步驟ST72為否),那么處理進行到步驟ST75。
      在步驟ST75,通過實際上將更嚴格的條件強加到實際的FPGA來驗證操作。即使當在標準環(huán)境下通過仿真計算出的延遲時間的容限小于50%,如果通過實際強加條件(例如,溫度和電源電壓)而保證了正常工作,那么也不削弱可靠性,其中所述條件在實際的FPGA上將延遲時間增加到最大。
      如果在步驟ST76,保證了實際的FPGA的正常工作,那么完成處理(步驟ST76為是)。然而,如果不能保證實際的FPGA的正常工作(步驟ST76為否),那么需要附加的對策和處理。
      另外,為了確保基于仿真的驗證的可靠性,希望預先驗證仿真自身。更具體地說,預先生成用于評估的合適的網表。使用網表數據和用于計算延遲時間的數據庫通過仿真來確定延遲時間。此后,將使用用于評估的網表制造的用于評估的實際的FPGA的所測量的延遲時間與通過仿真確定的延遲時間相比較。這樣,可以驗證仿真自身。
      (6)實際的FPGA的驗證(翻轉覆蓋測試)
      在圖3所示的驗證方法的過程中,在完成基于仿真的驗證后,將網表(第三網表)70的數據寫入實際的FPGA 4a(步驟ST8)。
      隨后,進行對實際的FPGA 4a的驗證(步驟ST9)。在實際的FPGA的驗證中,確定FPGA 4a是否提供了規(guī)格說明書所定義的功能性和性能。此外,進行被稱為翻轉覆蓋測試的驗證來增強可靠性。
      翻轉覆蓋測試是指這樣的測試,其被執(zhí)行以使得被稱為翻轉覆蓋的表示可靠性級別的標號變得大于或等于預定值,并且優(yōu)選的是,值的100%。
      如這里使用的,術語“翻轉”指的是邏輯器件的連接線的邏輯值中從“0”到“1”或從“1”到“0”的改變。同樣,術語“翻轉覆蓋”指的是FPGA 4a中邏輯器件之間翻轉的連接線的數目與連接線的總數的比率。當預定的邏輯模式在順序地發(fā)生改變的同時被輸入到FPGA 4a時,并且當FPGA 4a中邏輯器件之間的連接線被翻轉時,翻轉的連接線的數目加一。
      因此,“用100%翻轉覆蓋驗證”意味著完成驗證,其中FPGA 4a中邏輯器件之間的所有連接線都被翻轉。
      在根據該實施例的驗證方法中,在圖3所示的步驟ST1執(zhí)行功能元件5a至5e的窮舉測試。
      因此,在步驟ST9的翻轉覆蓋測試中,不需要每個功能元件內的翻轉覆蓋的驗證。只對功能元件之間的連接線的翻轉覆蓋測試是足夠的。這也減少了驗證時間。
      圖12說明了實際的FPGA的驗證過程(翻轉覆蓋測試)。
      首先,在步驟ST90,計算功能元件之間連接線的總數。例如,根據圖13所示的FPGA 4a的功能元件的連接圖可以計算出連接線的總數。如圖13所示,以圓形指定的點指示連接線(也稱為“節(jié)點”)。在圖13所示的示例中,節(jié)點的總數是10。
      在圖13中,以黑圓指定翻轉的節(jié)點,而以白圓指定未翻轉的節(jié)點。因為節(jié)點總數是10而翻轉的節(jié)點的數目是8,所以翻轉覆蓋是80%。
      應該注意,有一種情況,其中從設計的觀點上看,不論邏輯模式的類型怎樣,功能元件之間的一些連接點顯然不翻轉。例如,如果將連接線連接到包括地線或電源的功能元件,那么將永遠不翻轉連接線的邏輯值。如果從設計的觀點上看顯然不翻轉的連接線被進行計數以確定總數,那么會無意義地減少翻轉覆蓋。
      因此,在圖12所示的步驟ST91,從設計的觀點上看不翻轉的連接線被預先從連接線的總數中去除。
      例如,在圖14所示的連接圖中,電源連接到了功能元件5d,因此,很明顯功能元件5d的輸入和輸出不翻轉。通過去除這樣的連接線,用于翻轉覆蓋計算的連接線總數是8。在圖14所示的示例中,翻轉的節(jié)點的數目是8。因此,翻轉覆蓋是100%。
      在如上所述計算出連接線的總數之后,開始翻轉覆蓋測試。
      圖15說明了翻轉覆蓋測試的測試系統(tǒng)。在實際的FPGA 4a和FPGA 4a的仿真的FPGA 201之間連接了適當的信號發(fā)生器200??梢愿鶕缇W表(第三網表)70生成仿真的FPGA 201。
      實際的FPGA 4a的輸出連接到信號記錄器(2)203,而仿真的FPGA 201的輸出連接到信號記錄器(1)202。這樣,記錄了這些輸出。同時,比較器單元204確定這些輸出是否相等。
      在這樣的測試系統(tǒng)中,信號發(fā)生器200生成順序改變的邏輯模式(圖12中所示的步驟ST92)。將邏輯模式并行地輸入到實際的FPGA 4a和仿真的FPGA 201(步驟ST93)。
      在仿真的FPGA 201中,確定每個連接線的翻轉是否存在(步驟ST94),并自動計算翻轉覆蓋(步驟ST95)。
      隨后,確定翻轉覆蓋是否大于或等于預定值(步驟ST96)。如果確定翻轉覆蓋大于或等于預定值,那么停止測試。
      此后,檢查在信號記錄器(2)203中記錄的實際的FPGA 4a的輸出。如果所有的輸出都是正常的,那么完成翻轉覆蓋測試。
      另外,仿真的FPGA 201可以包括顯示單元,其顯示圖13中所示的電路圖和節(jié)點的翻轉狀態(tài)。此外,當邏輯模式順序地改變并被輸入時,仿真的FPGA 201可以顯示例如通過顏色區(qū)分的翻轉的節(jié)點。
      通過監(jiān)控仿真的FPGA 201的顯示屏,測試者可以容易地觀看和檢查未翻轉的連接線。另外,因為測試者可以實時檢查翻轉覆蓋,所以當翻轉覆蓋超出預定值時,測試者可以終止測試。因此,測試者可以高效地執(zhí)行測試。而且,當翻轉覆蓋超出預定值時,仿真的FPGA201可以將該信息反饋到信號發(fā)生器以便自動停止邏輯模式的生成。該配置允許自動測量,因此提供了高效的測試。
      此外,可以添加一個步驟,其中,指定FPGA 4a中的任一連接線,并從實際的FPGA 4a和仿真的FPGA 201中監(jiān)控該指定的連接線上的波形。當某一異常事件發(fā)生時,這有助于調查原因。
      雖然已參考指定的FPGA 4a描述了上述驗證方法,但是根據本發(fā)明的一個實施例的驗證方法并不限制于該指定的FPGA。該驗證方法廣泛應用于可編程邏輯器件。
      根據本發(fā)明的驗證方法和由該驗證方法驗證的安全裝置,在將安全裝置的可編程邏輯器件(FPGA)分割為功能元件之后,預先使用實際的FPGA對邏輯電路進行窮舉測試,其中該邏輯電路是對每個功能元件優(yōu)化過的。隨后,獨立地對驗證過的功能元件進行邏輯綜合。因此,維持了與實際的FPGA的測試的等效性。結果,優(yōu)化了邏輯電路并使邏輯電路的規(guī)模最小化。因此,可以提供確保高可靠性的驗證方法和由該驗證方法驗證的安全裝置。
      此外,根據本發(fā)明的驗證方法和由該驗證方法驗證的安全裝置,在綜合了功能元件之后,只需要進行功能元件之間的連接的驗證。結果,可以減少驗證時間。因此,可以提供高效的驗證方法和由該驗證方法驗證的安全裝置。
      此外,除了驗證靜態(tài)功能性和性能之外,通過預先仿真,通過提供用于驗證動態(tài)功能和性能的步驟,確保了足夠的容限,諸如定時電路的容限。因此,可以獲得高可靠性。
      進一步,根據本發(fā)明的驗證方法和由該驗證方法驗證的安全裝置,除了普通的規(guī)格說明書驗證之外,還提供了在實際的硬件設備上進行翻轉覆蓋測試的步驟。因此,像對功能元件內的窮舉測試一樣,可以驗證功能元件之間的連接線,而不忽視未驗證的連接線。結果,可以獲得高可靠性。此時,通過去除從設計的觀點上看不翻轉的連接線,可以減少驗證時間,因此提供高效的驗證。
      雖然結合優(yōu)選實施例描述了本發(fā)明,但是可以理解,這些優(yōu)選實施例并不是用于將本發(fā)明限制于這些實施例。相反,通過在如權利要求定義的本發(fā)明的精神和范圍內修改其組件,試圖實現本發(fā)明。另外,通過從本發(fā)明的優(yōu)選實施例中公開的多個組件中合并適當的組件,試圖實現本發(fā)明。例如,可以從優(yōu)選實施例中公開的所有組件去除一些組件。而且,多個優(yōu)選實施例中的組件能夠被適當地合并。
      權利要求
      1.一種用于驗證包括可編程邏輯器件的安全裝置的驗證方法,所述可編程邏輯器件包括多個功能元件,所述方法包括以下步驟預先在實際的硬件上窮舉地驗證邏輯模式的所有輸出是響應于每個功能元件的邏輯模式的所有輸入而正常產生的;使用預定的硬件描述語言,生成與在實際的硬件上驗證的所述功能元件之一相同的功能元件;將每個生成的功能元件獨立地邏輯綜合為多個第一網表,每個第一網表都對應于所述功能元件之一;使用所述預定的硬件描述語言,生成所述功能元件之間的連接功能;將所生成的連接功能邏輯綜合為對應于所述連接功能的第二網表;將所述多個第一網表與所述第二網表綜合以生成第三網表;以所述第三網表為基礎將邏輯電路寫入所述可編程邏輯器件;以及在包括所寫入的邏輯電路的所述實際的可編程邏輯器件上驗證所述可編程邏輯器件的工作是正常的。
      2.根據權利要求1所述的驗證方法,還包括以下步驟以所生成的第三網表為基礎驗證所述功能元件之間的連接。
      3.根據權利要求2所述的驗證方法,其中所述驗證所述功能元件之間的連接的步驟包括以下子步驟以所生成的第三網表的數據為基礎,對實現了所述功能元件和所述連接功能的邏輯電路進行可視化并顯示,以便以所顯示的邏輯電路和定義了所述連接功能的規(guī)格說明書為基礎,驗證所述功能元件之間的連接是正確的。
      4.根據權利要求2所述的驗證方法,其中所述驗證所述功能元件之間的連接的步驟包括以下子步驟對實現了所述連接功能的連接電路進行可視化并顯示,以便以所顯示的連接電路和用所述預定的硬件描述語言表示的連接功能為基礎,驗證所述功能元件之間的連接是正確的。
      5.根據權利要求1所述的驗證方法,還包括以下步驟以所生成的第三網表的數據為基礎,對所述可編程邏輯器件的工作進行仿真,以便驗證所述可編程邏輯器件的工作是正常的;其中所述對所述可編程邏輯器件的工作進行仿真的步驟包括以下子步驟通過仿真來評估處于以相同的時鐘同步地工作的觸發(fā)器器件之間的邏輯電路的延遲時間,以便驗證在標準使用環(huán)境中,所評估的延遲時間小于或等于所述時鐘的周期的50%。
      6.根據權利要求5所述的驗證方法,其中在所述對所述可編程邏輯器件的工作進行仿真的步驟中,對所述延遲時間的仿真包括一個仿真,該仿真的高效性被預先使用適當的用于評估的網表和以所述用于評估的網表為基礎寫入的可編程邏輯器件進行了驗證。
      7.根據權利要求1所述的驗證方法,其中所述在實際的硬件上進行驗證的步驟包括以下子步驟通過仿真來評估處于以相同的時鐘同步地工作的觸發(fā)器器件之間的邏輯電路的延遲時間;如果在標準使用環(huán)境中,所評估的延遲時間大于所述時鐘的周期的50%,那么在將使得所述延遲時間最大化的使用環(huán)境應用于所述可編程邏輯器件上的同時,在實際的硬件上驗證所述可編程邏輯器件,以便驗證所述可編程邏輯器件的工作是正常的。
      8.根據權利要求1所述的驗證方法,其中所述在實際的硬件上進行驗證的步驟包括翻轉覆蓋測試,所述翻轉覆蓋測試包括以下子步驟預先計算所述功能元件之間的連接線的總數;在預定的邏輯模式順序地發(fā)生改變的同時,將所述邏輯模式輸入到所述可編程邏輯器件中;根據所輸入的邏輯模式的改變,計算其邏輯值發(fā)生改變的連接線的數目;計算翻轉覆蓋,所述翻轉覆蓋是其邏輯值發(fā)生改變的連接線的數目與所述連接線的總數的比率;以及驗證所述翻轉覆蓋大于或等于預定值。
      9.根據權利要求8所述的驗證方法,其中所述翻轉覆蓋測試包括用于計算所述連接線的總數、同時從所述連接線的總數中去除接地的連接線和接到電源的連接線的測試。
      10.根據權利要求8所述的驗證方法,其中所述翻轉覆蓋測試包括用于計算所述連接線的總數、同時去除從設計的觀點來看不論輸入的邏輯值如何其輸出的邏輯值顯然是固定值的連接線的測試。
      11.根據權利要求8所述的驗證方法,其中所述翻轉覆蓋測試包括以下子步驟并行地將所述邏輯模式順序地輸入到所述實際的可編程邏輯器件和仿真的可編程邏輯器件,以便監(jiān)控所述實際的可編程邏輯器件的輸出是正常的,其中所述仿真的可編程邏輯器件對所述實際的可編程邏輯器件進行仿真;監(jiān)控所述仿真的可編程邏輯器件內的連接線的邏輯值的改變,以便計算其邏輯值發(fā)生改變的連接線的數目;響應于所述邏輯模式的輸入,順序地計算所述翻轉覆蓋;以及當所述翻轉覆蓋大于或等于預定值時終止所述測試。
      12.根據權利要求11所述的驗證方法,其中所述翻轉覆蓋測試包括以下子步驟選擇任意的連接線并監(jiān)控在所述實際的可編程邏輯器件和所述仿真的可編程邏輯器件中所選擇的連接線上的波形。
      13.一種安全裝置,包括包括多個功能元件的可編程邏輯器件;其中所述安全裝置由一種驗證方法進行驗證,所述驗證方法包括以下步驟預先在實際的硬件上窮舉地驗證邏輯模式的所有輸出是響應于每個功能元件的邏輯模式的所有輸入而正常產生的;使用預定的硬件描述語言,生成與在實際的硬件上驗證的所述功能元件之一相同的功能元件;將每個生成的功能元件獨立地邏輯綜合為多個第一網表,每個第一網表都對應于所述功能元件之一;使用所述預定的硬件描述語言,生成所述功能元件之間的連接功能;將所生成的連接功能邏輯綜合為對應于所述連接功能的第二網表;將所述多個第一網表與所述第二網表綜合以生成第三網表;以所述第三網表為基礎將邏輯電路寫入所述可編程邏輯器件;以及在包括所寫入的邏輯電路的所述實際的可編程邏輯器件上驗證所述可編程邏輯器件的工作是正常的。
      14.根據權利要求13所述的安全裝置,其中所述驗證方法還包括以下步驟以所生成的第三網表為基礎驗證所述功能元件之間的連接。
      15.根據權利要求14所述的安全裝置,其中所述驗證所述功能元件之間的連接的步驟包括以下子步驟以所生成的第三網表的數據為基礎,對實現了所述功能元件和所述連接功能的邏輯電路進行可視化并顯示,以便以所顯示的邏輯電路和定義了所述連接功能的規(guī)格說明書為基礎,驗證所述功能元件之間的連接是正確的。
      16.根據權利要求14所述的安全裝置,其中所述驗證所述功能元件之間的連接的步驟包括以下子步驟對實現了所述連接功能的連接電路進行可視化并顯示,以便以所顯示的連接電路和用所述預定的硬件描述語言實現的連接功能為基礎,驗證所述功能元件之間的連接是正確的。
      17.根據權利要求13所述的安全裝置,其中所述驗證方法還包括以下步驟以所生成的第三網表的數據為基礎,對所述可編程邏輯器件的工作進行仿真,以便驗證所述可編程邏輯器件的工作是正常的,并且其中所述對所述可編程邏輯器件的工作進行仿真的步驟包括以下子步驟通過仿真來評估處于以相同的時鐘同步地工作的觸發(fā)器器件之間的邏輯電路的延遲時間,以便驗證在標準使用環(huán)境中,所評估的延遲時間小于或等于所述時鐘的周期的50%。
      18.根據權利要求17所述的安全裝置,其中在所述對所述可編程邏輯器件的工作進行仿真的步驟中,對所述延遲時間的仿真包括一個仿真,該仿真的高效性被預先使用適當的用于評估的網表和以所述用于評估的網表為基礎寫入的可編程邏輯器件進行了驗證。
      19.根據權利要求13所述的安全裝置,其中所述在實際的硬件上進行驗證的步驟包括以下子步驟通過仿真來評估處于以相同的時鐘同步地工作的觸發(fā)器器件之間的邏輯電路的延遲時間;如果在標準使用環(huán)境中,所評估的延遲時間大于所述時鐘的周期的50%,那么在將使得所述延遲時間最大化的使用環(huán)境應用于所述可編程邏輯器件上的同時,在實際的硬件上驗證所述可編程邏輯器件,以便驗證所述可編程邏輯器件的工作是正常的。
      20.根據權利要求13所述的安全裝置,其中所述在實際的硬件上進行驗證的步驟包括翻轉覆蓋測試,所述翻轉覆蓋測試包括以下子步驟預先計算所述功能元件之間的連接線的總數;在預定的邏輯模式順序地發(fā)生改變的同時,將所述邏輯模式輸入到所述可編程邏輯器件中;根據所述邏輯模式的改變,計算其邏輯值發(fā)生改變的連接線的數目;計算翻轉覆蓋,所述翻轉覆蓋是其邏輯值發(fā)生改變的連接線的數目與所述連接線的總數的比率;以及驗證所述翻轉覆蓋大于或等于預定值。
      21.根據權利要求20所述的安全裝置,其中所述翻轉覆蓋測試包括用于計算所述連接線的總數、同時從所述連接線的總數中去除接地的連接線和接到電源的連接線的測試。
      22.根據權利要求20所述的安全裝置,其中所述翻轉覆蓋測試包括用于計算所述連接線的總數、同時去除從設計的觀點來看不論輸入的邏輯值如何其輸出的邏輯值顯然是固定值的連接線的測試。
      23.根據權利要求20所述的安全裝置,其中所述翻轉覆蓋測試包括以下子步驟并行地將所述邏輯模式順序地輸入到所述實際的可編程邏輯器件和仿真的可編程邏輯器件,以便監(jiān)控所述實際的可編程邏輯器件的輸出是正常的,其中所述仿真的可編程邏輯器件對所述實際的可編程邏輯器件進行仿真;監(jiān)控所述仿真的可編程邏輯器件內的連接線的邏輯值的改變,以便計算其邏輯值發(fā)生改變的連接線的數目;響應于所述邏輯模式的輸入,順序地計算所述翻轉覆蓋;以及當所述翻轉覆蓋大于或等于預定值時終止所述測試。
      24.根據權利要求23所述的安全裝置,其中所述翻轉覆蓋測試包括以下子步驟選擇任意的連接線并監(jiān)控在所述實際的可編程邏輯器件和所述仿真的可編程邏輯器件中所選擇的連接線上的波形。
      全文摘要
      提供了一種用于驗證安全裝置的驗證方法,該安全裝置包括具有多個功能元件的可編程邏輯器件。該驗證方法包括以下步驟在實際的硬件上窮舉地驗證多個功能元件;使用預定的硬件描述語言,生成與在實際的裝置上驗證過的功能元件之一相同的功能元件;將每個生成的功能元件獨立地邏輯綜合為多個第一網表;使用預定的硬件描述語言生成功能元件之間的連接功能;將生成的連接功能邏輯綜合為對應于該連接功能的第二網表;將第一網表和第二網表進行綜合以生成第三網表;基于第三網表將邏輯電路寫入可編程邏輯器件;以及驗證實際的可編程邏輯器件。
      文檔編號G05B23/00GK1900870SQ20061007397
      公開日2007年1月24日 申請日期2006年2月28日 優(yōu)先權日2005年2月28日
      發(fā)明者泉干雄, 林俊文, 小田中滋, 酒井宏隆, 小田直敬, 佐藤俊文, 伊藤敏明 申請人:株式會社東芝
      網友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1