ATPG原理及實現——6.fault grading


一、functional pattern

測試覆蓋率不夠,用functional pattern做為補充。

functional pattern保存在EVCD文件里:

TEST-T> set_patterns  -external  -strobe .. filename.evcd

怎么生成EVCD文件?

 

 

 fault simulation after ATPG

##先進行ATPG過程
BUILD-T> run_build _model top_mod_name
DRC-T> run_drc atpg_related.spf
TEST-T> add_faults -all
TEST-T> run_atpg -auto
TEST-T> report_summaries
TEST-T> write patterns pat.bin  -f binary  -replace
TEST-T> write_faults atpg.flt  -all  -uncollapsed  -replace
##從ATPG運行中讀取故障列表,並保留故障分類、減少活動故障,以進行功能模式故障仿真
TEST-T> drc -force
DRC-T> remove_pi_constraints -all
DRC-T> remove_clocks -all
DRC-T> set_drc -nofile
DRC-T> test
TEST-T> set_patterns -external  -strobe . . . my_asic.evcd
TEST-T> read_faults atpg.flt  -force_retain
TEST-T> run_simulation -sequential   
TEST-T> run_fault_sim -seauential

二、test point分析

run_testpoint_analysis   [ -max_test_points <number>]   最多可寫入的測試點數,默認為1000

             [ -num_observe_points _per_cell <number>]  與掃描單元或PO異或的觀察點數,默認8

             [ -test _point_file <file_name>]

             [ -replace] 

             [ -class <sub-class>]  默認分析所有未檢測到的故障;可以選擇特定的故障子類別,可同時選擇多個子類別;  

             [ -dont_touch <instance>]  避免放置測試點

參考腳本:

run_build_model
run_drc
add_faults -all
run_atpg -auto
run_testpoint_analysis <options>
run_atpg -auto -observe <test_point_file>

 三、基於clock域的fault相關命令

launch與capture在同一時鍾域

add_faults -launch CLKA -capture CLKA
add_faults -launch CLKB -capture CLKB

launch與capture在不同時鍾域

add_faults -launch CLKA -capture CLKB

add_faults -launch CLKB -capture CLKA

 

 

四、clock grouping

  • 禁用所有inter-clock路徑

   set_delay -common_launch_capture_clock

  • 每次捕獲多個時鍾  ( 讓多個時鍾並行起來)

   系統時鍾啟動:set_delay -allow_multiple_common_clocks

    -common_launch_capture_clock選項在DRC之前發出

  • 啟用干擾時鍾分組  

   set_delay -disturbed(默認為開啟)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM