edastudy:verdi:vc_apps_npi
差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录前一修订版后一修订版 | 前一修订版 | ||
edastudy:verdi:vc_apps_npi [2023/03/15 09:34] – [4.1 使用举例] zhangguo | edastudy:verdi:vc_apps_npi [2023/07/23 07:50] (当前版本) – [9.1 trace driver] zhangguo | ||
---|---|---|---|
行 80: | 行 80: | ||
resultList ::= { {srcHdl scopeHdl isPassThrough numSigUse useHdl sigHdlList}* } | resultList ::= { {srcHdl scopeHdl isPassThrough numSigUse useHdl sigHdlList}* } | ||
srcHdl : The tracing source handle of this use handle. | srcHdl : The tracing source handle of this use handle. | ||
- | scopeHdl: The scope handle of this use handle. | + | scopeHdl: The scope handle of this use handle. |
isPassThrough: | isPassThrough: | ||
numSigUse: Indicate how many times of source handle be traced in this use handle. | numSigUse: Indicate how many times of source handle be traced in this use handle. | ||
- | | + | |
- | useHdl: Target use handle. The definition of use handle, refer to Use and Vh Use. | + | useHdl: Target use handle. The definition of use handle, refer to Use and Vh Use. |
- | sigHdlList: The driver signal handles of this use handle. | + | sigHdlList: The driver signal handles of this use handle. |
| | ||
行 125: | 行 125: | ||
- | '' | + | '' |
行 282: | 行 282: | ||
connection. \\ | connection. \\ | ||
3. npiLowConn will indicate the lower (further from the top module) port connection.</ | 3. npiLowConn will indicate the lower (further from the top module) port connection.</ | ||
+ | |||
+ | ===== - 实例 ===== | ||
+ | |||
+ | ==== - trace driver ==== | ||
+ | |||
+ | <code tcl [enable_line_numbers=" | ||
+ | #source $env(NPIL1_PATH)/ | ||
+ | |||
+ | proc prepare_Netlist_setting {} { | ||
+ | schSetPreference -detailRTL on -detailMux on -recogFSM off -expandGenBlock on -detailLevel 101 -InferenceLibCell on | ||
+ | } | ||
+ | |||
+ | proc dump_res_list { resList targetFileHdl } { | ||
+ | set size [ llength $resList ] | ||
+ | for { set i 0 } { $i < $size } { incr i } { | ||
+ | set dlStruct [lindex $resList $i] | ||
+ | puts $targetFileHdl " $i source: [ npi_util_get_hdl_info [lindex $dlStruct 0] | ||
+ | ]" | ||
+ | puts $targetFileHdl " | ||
+ | puts $targetFileHdl " | ||
+ | puts $targetFileHdl " | ||
+ | puts $targetFileHdl " | ||
+ | ]" | ||
+ | set sigList [lindex $dlStruct 5] | ||
+ | set sigSize [llength $sigList] | ||
+ | for { set l 0 } { $l < $sigSize } { incr l } { | ||
+ | puts $targetFileHdl " | ||
+ | } | ||
+ | |||
+ | |||
+ | set hdl [lindex $dlStruct 4] | ||
+ | set tmp [npi_get_str -property npiType -object $hdl] | ||
+ | puts $targetFileHdl " | ||
+ | set tmpStr [ npi_util_decompile_t:: | ||
+ | puts $targetFileHdl " | ||
+ | } | ||
+ | } | ||
+ | |||
+ | |||
+ | proc main { output_log } { | ||
+ | prepare_Netlist_setting | ||
+ | set LOG [open $output_log " | ||
+ | |||
+ | puts $LOG " | ||
+ | puts $LOG "" | ||
+ | |||
+ | # | ||
+ | :: | ||
+ | puts $LOG "" | ||
+ | puts $LOG "" | ||
+ | puts $LOG "" | ||
+ | |||
+ | |||
+ | set resList {} | ||
+ | set sigHdl [ npi_handle_by_name -name {top.a2} -scope "" | ||
+ | :: | ||
+ | dump_res_list $resList $LOG | ||
+ | |||
+ | |||
+ | close $LOG | ||
+ | } | ||
+ | </ | ||
+ | |||
+ | trace log如下: | ||
+ | < | ||
+ | ================================================================================ | ||
+ | |||
+ | npiNet, top.a2, {/ | ||
+ | Need pass through | ||
+ | <1> source: a2, scope: top | ||
+ | <D> npiContAssign, | ||
+ | npiConstant, | ||
+ | npiNet, top.a1, {/ | ||
+ | |||
+ | |||
+ | |||
+ | 0 source: npiNet, top.a2, {/ | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | npiConstant, | ||
+ | npiNet, top.a1, {/ | ||
+ | t: | ||
+ | tmpStr: | ||
+ | </ | ||
edastudy/verdi/vc_apps_npi.1678844067.txt.gz · 最后更改: 2023/03/17 10:12 (外部编辑)