1 基本概念
在數字實現過程中,延遲一般有以下幾種:
分布式延遲(Distributed Delays)
一般用來指定模塊內部信號通過邏輯單元或者線網耗費的時間。
模塊路徑延遲(Module Path Delays)
模塊路徑一般指從源(輸入端口或者輸入輸出端口)到目的(輸出端口或者輸入輸出端口)的路徑,模塊路徑延遲是信號從源傳輸到目的地所耗費的時間,即模塊內部延遲。下圖為模塊路徑延遲為10的示意圖:
注意:模塊路徑延遲一般在“specify-endspecify”中指定。
互聯線延遲(Interconnect Delays)
當兩個模塊通過線網連接時,信號從一個模塊單元傳遞到另一個模塊單元會耗費一定的時間,數據模塊間的延遲,即互聯線延遲。下圖為互聯線延遲為10的示意圖:
2 延遲
在仿真過程中,經常會遇到傳輸延遲和慣性延遲,用來模擬實際的互聯線延遲和模塊間延遲。分布式延遲在仿真時一般都作為慣性延遲處理。
2.1 傳輸延遲
傳輸延遲一般為輸入信號變化到對應輸出信號變化經過的時間,不會對輸入信號進行濾除處理,所以傳輸延遲是一種絕對延遲,這種延遲類似于物理傳輸線的延遲,在仿真中用于模擬連線延遲。如下圖所示,輸入一般不會被濾除。
.2.2 慣性延遲
慣性延遲考慮了電路中存在大量的分布電容,信號在電路中傳輸存在對電容充放電效應,
當輸入較小寬度的脈沖將會被濾除,即不允許所有寬度小于指定延遲的脈沖通過電路單元,那么能夠讓對應輸出有變化的最小脈沖寬度即為慣性延遲,是所有的電子器件均存在的一種延遲特性,因此為了使器件對輸入信號的變化產生響應,信號變化后要維持足夠長的時間,在仿真過程中,該延遲用于模擬元件延遲。一般原語、門單元、開關單元、連續賦值等中的延遲在模擬時均為慣性延遲。
如下圖所示,輸入較小脈沖寬度的信號被濾除:
2.3 仿真延遲
在仿真中,如果在仿真的elaboration過程中沒有顯示指定延遲的類型,那么仿真器一般都會將代碼中指定的延遲作為慣性延遲處理,即此時小于指定延遲寬度的脈沖將被濾除。為了說明不同延遲的仿真效果,此處以模塊路徑延遲為例進行仿真說明。
【示例】
仿真結果如下:
此例中,在elaboration過程中沒有顯示指定仿真延遲類型,一般都默認為慣性延遲,代碼中標準門單元buf指定的延遲為5ns,根據慣性延遲的特點,當輸入信號寬度小于指定的延遲時,該信號將不能通過該電路單元,所以上圖中僅有信號寬度為5ns的信號有效通過了buf,其余信號均被屏蔽。
如果仿真過程中需要模擬傳輸延遲,需要在elaboration時指定相應的傳輸延遲參數,即使能傳輸延遲模擬功能,此時輸入信號原則上都能通過電路單元。
【示例】
在仿真elaboration時,增加如下仿真參數:“+transport_path_delays +pulse_r/<濾除百分比> +pulse_e/<濾除百分比>”等可在仿真階段實現傳輸延遲的模擬,并且配置不同的濾除百分比,輸出的結果也會有差異,一般輸出結果為三種情況:濾除、通過、不定態,如下圖所示:
其中“+pulse_r”和“+pulse_e”后指定的參數表示允許通過和濾除的信號的寬度占指定延遲的百分比。例如,如果指定延遲為5ns,參數為“+pulse_r/40”和“+pulse_e/80”(其中的40和80為百分比),那么小于2ns(5x(40%))的信號將被濾除,大于等于4ns(5x(80%))的信號將可以通過,介于兩者之間的信號將輸出不定太,如下例中data_in的第一個脈沖信號小于2ns被濾除,不能輸出至data_out。第二、三個脈沖信號寬度均大于或等于4ns,所以均有效輸出,第四個脈沖寬度為3ns,介于2ns和4ns之間,所以不能被有效輸出,此時輸出為不定態。
注意:如果僅使用“+transport_path_delays”而不使用對脈沖寬度約束的參數(“+pulse_r/e”),那么仿真器將按照慣性延遲處理方式對輸入信號進行處理,即小于指定延遲寬度的信號不能通過電路單元。同時在EDA工具中還有其他參數(“+pulse_r/e”與“+pulse_int__r/e”等),不同的參數將有不同的仿真效果,具體可參考相關EDA工具手冊。
-
EDA工具
+關注
關注
4文章
268瀏覽量
31964 -
仿真器
+關注
關注
14文章
1019瀏覽量
83973 -
傳輸線
+關注
關注
0文章
377瀏覽量
24145 -
脈沖信號
+關注
關注
6文章
400瀏覽量
37105
發布評論請先 登錄
相關推薦
延遲隊列的實現方式
在同步電路中影響性能都有哪些方面呢?傳輸延遲,慣性延遲怎么形成的呢?映射到硬件上怎么形成這種現象呢?
無線模塊通信中的數據延遲
使用通信中的無線模塊的數據延遲
使用通信中的無線模塊的數據延遲
手動插入的代碼段在MHC合并過程中不會出現延遲嗎?
為什么ADS1298在初始化過程中START引腳的建立時間會有延遲?
分析模擬延遲和數字延遲
allegro軟件的絕對傳輸延遲是什么,絕對傳輸延遲應該怎么設置呢?
基于Flash FPGA器件實現脈沖延遲控制系統的設計
![基于Flash FPGA器件<b class='flag-5'>實現</b>脈沖<b class='flag-5'>延遲</b>控制系統的設計](https://file.elecfans.com/web1/M00/C4/55/pIYBAF8yZcCATtQKAAAfZfjwVRU360.png)
評論