新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > 在FPGA開發(fā)中盡量避免全局復位的使用?(1)

在FPGA開發(fā)中盡量避免全局復位的使用?(1)

作者: 時間:2017-10-13 來源:網(wǎng)絡 收藏

最近幾天讀了網(wǎng)站上一個很有意思的白皮書(white paper,wp272.pdf),名字叫《Get Smart About Reset:Think Local, Not Global》,在此分享一下心得,包括以前設計中很少注意到的一些細節(jié)。
在數(shù)字系統(tǒng)設計中,我們傳統(tǒng)上都認為,應該對所有的觸發(fā)器設置一個主復位,這樣將大大方便后續(xù)的測試工作。所以,在所有的程序中,我往往都在端口定義中使用同一個reset信號(其實好多時候根本就沒有用到)。所以,當看到文檔中提到,“不建議在FPGA設計中使用全局復位,或者說應該努力避免這種設計方式”時,許多設計人員(包括我)都會覺得非常難以理解,這種設計思想跟我們通常的認識是相沖突的!
繼續(xù)讀下去,不知不覺發(fā)現(xiàn)這個白皮書講的還真是在理。接下來把我的個人理解講述一下。
1.全局復位是不是關(guān)鍵時序?
全局復位信號一般由以下三種途徑獲得:
1. 第一種,最常見的,就是用一個復位按鈕產(chǎn)生一個復位信號接到FPGA的全局復位管腳上。它的速度顯然是非常慢的(因為是機械結(jié)構(gòu)),而且存在抖動的問題。
2. 第二種是上電的時候由電源芯片產(chǎn)生的,如TI的TPS76x系列的電源系統(tǒng)一般都可以產(chǎn)生復位信號,供主芯片上電復位使用。
3. 第三種是由控制芯片產(chǎn)生的復位脈沖,這個是我們設計人員可以方便使用程序控制的。
在這些情況下,復位信號的變化與FGPA芯片內(nèi)部信號相比看起來是及其緩慢的,例如,復位按鈕產(chǎn)生的復位信號的周期至少是在毫秒級別的,而我們FPGA內(nèi)部信號往往是納米或者微秒級別的。復位信號的頻率是如此之低,以至于我們?nèi)蝿账粚儆陉P(guān)鍵時序(not TIming-criTIcal)。即使是對此類信號進行時序約束,約束的周期也是非常長的。全局復位脈沖的周期遠大于時鐘周期,所以傳統(tǒng)意義上假設FPGA芯片中所有的觸發(fā)器都能夠得到有效的復位。
然而,隨著FPGA性能和工作頻率的快速提高,這種假設開始不再成立。此時,全局復位信號的產(chǎn)生開始成為時序關(guān)鍵的問題。

本文引用地址:http://www.butianyuan.cn/article/201710/365661.htm


關(guān)鍵詞: Xilinx 賽靈思

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉