scan chain的原理和實現——6.scan architecture


set_scan_configuration

此命令用於指定掃描屬性,例如: 掃描方式、掃描鏈數或掃描鏈長度、處理多個時鍾、lock-up、掃描鏈中省略的寄存器。

set_scan_configuration -style multiplexed_flip_flop I lssd l clocked_scan | aux_clock _lssd l combinational l none

            -clock_mixing no_mix l mix_edges l mix_clocks l mix_clocks_not_edges  指定掃描綜合是否將在同一鏈上建立具有不同時鍾域的掃描鏈,在同一鏈上混合時鍾域通常需要在域交叉處插入鎖存鎖存器。

            -chain_count integer_or_default*    指定要構建的掃描鏈數。 默認情況下,給定時鍾混合約束  

            -max_length integer_or_default*    insert_dft會在不超過指定長度的情況下構建掃描鏈

            -exact_length integer_or_default*     insert_dft構建, 盡可能掃描具有指定長度的鏈

            -create_dedicated_scan_ports true l false   尋找直接驅動輸出端口的觸發器,將此觸發器放在掃描鏈的尾端。

            -internal_clocks  none l single | multi

               -test_mode   <mode_name>       在一個insert_dft任務中可以支持多種掃描配置,其中每個掃描配置都具有唯一的test_mode名稱  

            -exclude_elements  <element_list>  掃描鏈中應排除的元素列表

           -add_lockup true l false    跨越不同的時鍾域時加入latch

           -insert_terminal_lockup true l false  如果為true,則insert_dft在掃描鏈的末尾插入lock-up,如果不是multiplexed_flip_flop,則忽略

           -lockup_type latch l flip_flop    指定是使用latch還是將FF用作lock-up synchronization

使用lock-up latch

lock-up latch(或flip-flops)用於允許掃描鏈跨越時鍾域,它們減輕了兩個時鍾域之間的偏斜,以確保在掃描鏈上可靠地轉移數據。

 

 插入lock-up latch規則

+edge(上升沿)   -edge(下降沿)

+edge to +edge ——Lock-up Latch OK

-edge to -edge ——Lock-up Latch OK

+edge to -edge ——不會在DFTC中發生

-edge to +edge ——無需添加lock-up latch,如果添加了會有潛在的hold time問題


-edge to -edge triggered devicesLock-up Latch OK
+edge to +edge triggered devices
Will never happen by default in DFTC since it willalways order later triggered devices earlier in thechain
-edge to +edge triggered devices口No Lock-up Latch needed
Potential hold time issue if added

 


免責聲明!

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



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