FPGA設(shè)計(jì)中的時(shí)序分析及異步設(shè)計(jì)注意事項(xiàng)_第1頁
FPGA設(shè)計(jì)中的時(shí)序分析及異步設(shè)計(jì)注意事項(xiàng)_第2頁
FPGA設(shè)計(jì)中的時(shí)序分析及異步設(shè)計(jì)注意事項(xiàng)_第3頁
FPGA設(shè)計(jì)中的時(shí)序分析及異步設(shè)計(jì)注意事項(xiàng)_第4頁
FPGA設(shè)計(jì)中的時(shí)序分析及異步設(shè)計(jì)注意事項(xiàng)_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、 Dragon WH team1FPGAFPGA設(shè)計(jì)中的時(shí)序分設(shè)計(jì)中的時(shí)序分析及異步設(shè)計(jì)注意事項(xiàng)析及異步設(shè)計(jì)注意事項(xiàng) Dragon WH team2什么是建立和保持時(shí)間什么是建立和保持時(shí)間建立時(shí)間和保持時(shí)間:建立時(shí)間和保持時(shí)間:建立時(shí)間(建立時(shí)間(setup time):):是指在觸發(fā)器的時(shí)鐘信號(hào)上升沿到來以前是指在觸發(fā)器的時(shí)鐘信號(hào)上升沿到來以前,數(shù)據(jù)穩(wěn)定不變的時(shí)間,如果建立時(shí)間不夠,數(shù)據(jù)將不能在這個(gè)時(shí),數(shù)據(jù)穩(wěn)定不變的時(shí)間,如果建立時(shí)間不夠,數(shù)據(jù)將不能在這個(gè)時(shí)鐘上升沿被打入觸發(fā)器;鐘上升沿被打入觸發(fā)器;保持時(shí)間(保持時(shí)間(hold time):):是指在觸發(fā)器的時(shí)鐘信號(hào)上升沿到來以后是指在觸發(fā)

2、器的時(shí)鐘信號(hào)上升沿到來以后,數(shù)據(jù)穩(wěn)定不變的時(shí)間,數(shù)據(jù)穩(wěn)定不變的時(shí)間, 如果保持時(shí)間不夠,數(shù)據(jù)同樣不能被打入如果保持時(shí)間不夠,數(shù)據(jù)同樣不能被打入觸發(fā)器。觸發(fā)器。 Dragon WH team3時(shí)序分析基礎(chǔ)時(shí)序分析基礎(chǔ)電路設(shè)計(jì)的難點(diǎn)在時(shí)電路設(shè)計(jì)的難點(diǎn)在時(shí)序設(shè)計(jì),而時(shí)序設(shè)計(jì)序設(shè)計(jì),而時(shí)序設(shè)計(jì)的實(shí)質(zhì)就是滿足每一的實(shí)質(zhì)就是滿足每一個(gè)觸發(fā)器的建立個(gè)觸發(fā)器的建立/ /保保持時(shí)間的要求。持時(shí)間的要求。 組合邏輯DQDQREG1REG2其它控制信號(hào)CLKCLKCREG1REG2(D)CLK(REG2)REG2(Q)T1T_cycleT1nTTsThTn+1nn+1 Dragon WH team4時(shí)序分析基礎(chǔ)續(xù)時(shí)

3、序分析基礎(chǔ)續(xù)如上圖所示,以如上圖所示,以REG2REG2為例,假定觸發(fā)器的建立時(shí)間要求為:為例,假定觸發(fā)器的建立時(shí)間要求為:T_setupT_setup,保保持時(shí)間要求為:持時(shí)間要求為:T_holdT_hold,路徑延時(shí)為:路徑延時(shí)為:T1T1,路徑延時(shí)為:路徑延時(shí)為:T2T2,路徑路徑延時(shí)為:延時(shí)為:T3T3,時(shí)鐘周期為:時(shí)鐘周期為:T_cycleT_cycle,Ts Ts (T_cycle T_cycle T T)T1T1,Th Th T1T1T T,令令 T T T3T3T2T2,則則條件條件1.1.如果如果T_setup Ts T_setup Ts ,即即 T_setup T_setu

4、p (T_cycle T_cycle T T)T1T1,這說這說明信號(hào)比時(shí)鐘有效沿超過明信號(hào)比時(shí)鐘有效沿超過T_setup T_setup 時(shí)間到達(dá)時(shí)間到達(dá)REG2REG2的的D D端,滿足建立時(shí)間要端,滿足建立時(shí)間要求。反之則不滿足;求。反之則不滿足;條件條件2.2.如果如果T_hold Th T_hold Th ,即即T_hold T1T_hold 0 T 0 時(shí),時(shí),T_holdT_hold受影響;當(dāng)受影響;當(dāng)T 0 T “110100110100”,由于電路延時(shí)的原因,中間會(huì)出現(xiàn),由于電路延時(shí)的原因,中間會(huì)出現(xiàn)“110101110101”狀態(tài),導(dǎo)致計(jì)數(shù)器誤狀態(tài),導(dǎo)致計(jì)數(shù)器誤清清0 0。

5、采用同步清采用同步清0 0的辦法,不僅可以有效地消除毛刺,而且能避免計(jì)數(shù)器的辦法,不僅可以有效地消除毛刺,而且能避免計(jì)數(shù)器誤清誤清0 0。電路如下圖所示。電路如下圖所示。 Dragon WH team10異步設(shè)計(jì)中常見問題及其解決方法異步設(shè)計(jì)中常見問題及其解決方法續(xù)續(xù)QDclk圖4.7+1=526位二進(jìn)制計(jì)數(shù)器Q5:0000000規(guī)則的計(jì)數(shù)器規(guī)則的計(jì)數(shù)器 Dragon WH team11異步設(shè)計(jì)中常見問題及其解決方法異步設(shè)計(jì)中常見問題及其解決方法續(xù)續(xù)4 4、對(duì)計(jì)數(shù)器的譯碼、對(duì)計(jì)數(shù)器的譯碼4位計(jì)數(shù)器譯碼outclkoutclk圖4.18對(duì)計(jì)數(shù)器譯碼,可能由于競(jìng)爭(zhēng)冒險(xiǎn)產(chǎn)生毛刺。如果后級(jí)采用了對(duì)計(jì)數(shù)

6、器譯碼,可能由于競(jìng)爭(zhēng)冒險(xiǎn)產(chǎn)生毛刺。如果后級(jí)采用了同步電路,我們完全可以對(duì)此不予理會(huì)。如果對(duì)毛刺要求較高,推同步電路,我們完全可以對(duì)此不予理會(huì)。如果對(duì)毛刺要求較高,推薦采用薦采用GrayGray編碼編碼( (PLD)PLD)或或One-hotOne-hot編碼編碼( (FPGA)FPGA)的計(jì)數(shù)器,一般不要的計(jì)數(shù)器,一般不要采用二進(jìn)制碼采用二進(jìn)制碼. .具體描述中,我們可以用狀態(tài)機(jī)來描述,而利用邏輯具體描述中,我們可以用狀態(tài)機(jī)來描述,而利用邏輯綜合工具來編碼,有經(jīng)驗(yàn)的選手可以自己強(qiáng)制定義狀態(tài)機(jī)的編碼。綜合工具來編碼,有經(jīng)驗(yàn)的選手可以自己強(qiáng)制定義狀態(tài)機(jī)的編碼。 Dragon WH team12異步

7、設(shè)計(jì)中常見問題及其解決方法異步設(shè)計(jì)中常見問題及其解決方法續(xù)續(xù)QDclk1QDclk2組合邏輯5 5、多時(shí)鐘的同步化、多時(shí)鐘的同步化兩個(gè)沒有相位關(guān)系的時(shí)鐘這樣使用,后級(jí)時(shí)鐘可能不能準(zhǔn)確采樣。兩個(gè)沒有相位關(guān)系的時(shí)鐘這樣使用,后級(jí)時(shí)鐘可能不能準(zhǔn)確采樣。QD圖 4.10QD組 合 邏 輯QDclk1clk2改進(jìn)后:用一個(gè)觸發(fā)器做同步化處理,保證后級(jí)時(shí)鐘準(zhǔn)確采樣。改進(jìn)后:用一個(gè)觸發(fā)器做同步化處理,保證后級(jí)時(shí)鐘準(zhǔn)確采樣。 Dragon WH team13異步設(shè)計(jì)中常見問題及其解決方法異步設(shè)計(jì)中常見問題及其解決方法續(xù)續(xù)QDDLELEQ6 6、鎖存器、鎖存器鎖存器是較危險(xiǎn)的電路,沒有確定的初始狀態(tài),輸出隨輸入

8、變化鎖存器是較危險(xiǎn)的電路,沒有確定的初始狀態(tài),輸出隨輸入變化,這意味著毛刺可以通過鎖存器。若該電路與其它,這意味著毛刺可以通過鎖存器。若該電路與其它D D觸發(fā)器電路相觸發(fā)器電路相連,則會(huì)影響這些觸發(fā)器的建立保持時(shí)間。除非有專用電路特別連,則會(huì)影響這些觸發(fā)器的建立保持時(shí)間。除非有專用電路特別需要(其實(shí)總線鎖存之類的功能用需要(其實(shí)總線鎖存之類的功能用373373之類的小規(guī)模之類的小規(guī)模ICIC更好),在更好),在設(shè)計(jì)內(nèi)部,不要使用鎖存器。設(shè)計(jì)內(nèi)部,不要使用鎖存器。QDENADLECLKQ Dragon WH team14不建議使用電路不建議使用電路1 、不建議使用組合邏輯時(shí)鐘或門控時(shí)鐘不建議使用

9、組合邏輯時(shí)鐘或門控時(shí)鐘組合邏輯和門控時(shí)鐘很容易產(chǎn)生毛刺,用組合邏輯的輸出作為時(shí)鐘很容易使系統(tǒng)產(chǎn)生誤動(dòng)作。2 2、 不建議使用行波時(shí)鐘不建議使用行波時(shí)鐘Q0QDQDQDclkQ1Q2行波記數(shù)器雖然原理簡(jiǎn)單,設(shè)計(jì)方便,但級(jí)連時(shí)鐘(行波時(shí)鐘)最容易造行波記數(shù)器雖然原理簡(jiǎn)單,設(shè)計(jì)方便,但級(jí)連時(shí)鐘(行波時(shí)鐘)最容易造成時(shí)鐘偏差(成時(shí)鐘偏差(T T),級(jí)數(shù)多了,很可能會(huì)影響其控制的觸發(fā)器的建立),級(jí)數(shù)多了,很可能會(huì)影響其控制的觸發(fā)器的建立/ /保保持時(shí)間,使設(shè)計(jì)難度加大。轉(zhuǎn)換的方法是采用同步記數(shù)器,同步計(jì)數(shù)器用持時(shí)間,使設(shè)計(jì)難度加大。轉(zhuǎn)換的方法是采用同步記數(shù)器,同步計(jì)數(shù)器用原理圖描述可能較難,但用原理圖描

10、述可能較難,但用HDLHDL語言很簡(jiǎn)單就可以描述一個(gè)語言很簡(jiǎn)單就可以描述一個(gè)4 4位計(jì)數(shù)器。位計(jì)數(shù)器。 Dragon WH team15不建議使用電路續(xù)不建議使用電路續(xù)3 3 、盡量避免采用多個(gè)時(shí)鐘,多使用觸發(fā)器的使能端來解決。、盡量避免采用多個(gè)時(shí)鐘,多使用觸發(fā)器的使能端來解決。在可編程邏輯器件設(shè)計(jì)時(shí),由于時(shí)鐘建立應(yīng)盡量避免采用多時(shí)鐘網(wǎng)絡(luò),或者采用適當(dāng)?shù)拇胧p少時(shí)鐘的個(gè)數(shù),使用頻率低的時(shí)鐘盡量簡(jiǎn)化消除。4 4、 觸發(fā)器的置觸發(fā)器的置/ /復(fù)位端盡量避免出現(xiàn)毛刺,及自我復(fù)位電路等,最復(fù)位端盡量避免出現(xiàn)毛刺,及自我復(fù)位電路等,最好只用一個(gè)全局復(fù)位信號(hào)。好只用一個(gè)全局復(fù)位信號(hào)。 5 5、 電路中盡量

11、避免電路中盡量避免“死循環(huán)死循環(huán)”電路,如電路,如RSRS觸發(fā)器等。觸發(fā)器等。6 6 、禁止時(shí)鐘在不同可編程器件中級(jí)連,盡量降低時(shí)鐘到各個(gè)器件、禁止時(shí)鐘在不同可編程器件中級(jí)連,盡量降低時(shí)鐘到各個(gè)器件時(shí)鐘偏差值。時(shí)鐘偏差值。 Dragon WH team16復(fù)位和置位信號(hào)處理復(fù)位和置位信號(hào)處理在設(shè)計(jì)時(shí)應(yīng)盡量保證有一全局復(fù)位信號(hào),或保證觸發(fā)器、計(jì)在設(shè)計(jì)時(shí)應(yīng)盡量保證有一全局復(fù)位信號(hào),或保證觸發(fā)器、計(jì)數(shù)器在使用前已經(jīng)正確清零和狀態(tài)機(jī)處于確知的狀態(tài)。數(shù)器在使用前已經(jīng)正確清零和狀態(tài)機(jī)處于確知的狀態(tài)。 寄存器的清除和置位信號(hào),對(duì)競(jìng)爭(zhēng)條件和冒險(xiǎn)也非常敏感。寄存器的清除和置位信號(hào),對(duì)競(jìng)爭(zhēng)條件和冒險(xiǎn)也非常敏感。在

12、設(shè)計(jì)時(shí),應(yīng)盡量直接從器件的專用引腳驅(qū)動(dòng)。另外,要考慮到在設(shè)計(jì)時(shí),應(yīng)盡量直接從器件的專用引腳驅(qū)動(dòng)。另外,要考慮到有些器件上電時(shí),觸發(fā)器處于一種不確定的狀態(tài),系統(tǒng)設(shè)計(jì)時(shí)應(yīng)有些器件上電時(shí),觸發(fā)器處于一種不確定的狀態(tài),系統(tǒng)設(shè)計(jì)時(shí)應(yīng)加入全局復(fù)位加入全局復(fù)位/ /ResetReset。這樣主復(fù)位引腳就可以給設(shè)計(jì)中的每一個(gè)這樣主復(fù)位引腳就可以給設(shè)計(jì)中的每一個(gè)觸發(fā)器饋送清除或置位信號(hào),保證系統(tǒng)處于一個(gè)確定的初始狀態(tài)觸發(fā)器饋送清除或置位信號(hào),保證系統(tǒng)處于一個(gè)確定的初始狀態(tài)。需要注意的一點(diǎn)是:不要對(duì)寄存器的置位和清除端同時(shí)施加不。需要注意的一點(diǎn)是:不要對(duì)寄存器的置位和清除端同時(shí)施加不同信號(hào)產(chǎn)生的控制,因?yàn)槿绻霈F(xiàn)

13、兩個(gè)信號(hào)同時(shí)有效的意外情況同信號(hào)產(chǎn)生的控制,因?yàn)槿绻霈F(xiàn)兩個(gè)信號(hào)同時(shí)有效的意外情況,會(huì)使寄存器進(jìn)入不定狀態(tài)。,會(huì)使寄存器進(jìn)入不定狀態(tài)。 Dragon WH team17時(shí)序設(shè)計(jì)的可靠性保障措施時(shí)序設(shè)計(jì)的可靠性保障措施 (1 1)時(shí)鐘偏差要加以控制)時(shí)鐘偏差要加以控制在同步電路里,時(shí)鐘信號(hào)要連接到所有的寄存器,觸發(fā)器以及在同步電路里,時(shí)鐘信號(hào)要連接到所有的寄存器,觸發(fā)器以及鎖存器等器件上。這些巨大的負(fù)載就象一個(gè)大電容加在時(shí)鐘線上,鎖存器等器件上。這些巨大的負(fù)載就象一個(gè)大電容加在時(shí)鐘線上,再加上時(shí)鐘線本身的分布電容和電阻,這樣時(shí)鐘線就象分布的再加上時(shí)鐘線本身的分布電容和電阻,這樣時(shí)鐘線就象分布的R

14、CRC線。由于線。由于RCRC線的延時(shí)是線長(zhǎng)的函數(shù),這樣就使得連到同一根時(shí)鐘線的延時(shí)是線長(zhǎng)的函數(shù),這樣就使得連到同一根時(shí)鐘線上的時(shí)鐘由于距離時(shí)鐘源的遠(yuǎn)近不一而產(chǎn)生不同的延時(shí)。因而造線上的時(shí)鐘由于距離時(shí)鐘源的遠(yuǎn)近不一而產(chǎn)生不同的延時(shí)。因而造成了同一時(shí)鐘到達(dá)各個(gè)器件的時(shí)間不一致,使得各個(gè)以時(shí)鐘為基準(zhǔn)成了同一時(shí)鐘到達(dá)各個(gè)器件的時(shí)間不一致,使得各個(gè)以時(shí)鐘為基準(zhǔn)器件的動(dòng)作也不一致,而造成時(shí)序上的混亂。這就是同步電路時(shí)鐘器件的動(dòng)作也不一致,而造成時(shí)序上的混亂。這就是同步電路時(shí)鐘偏差。(偏差。(skewskew) Dragon WH team18時(shí)序設(shè)計(jì)的可靠性保障措施時(shí)序設(shè)計(jì)的可靠性保障措施 要讓同步電路

15、可靠地運(yùn)行,就要對(duì)時(shí)鐘偏差進(jìn)行控制,以使要讓同步電路可靠地運(yùn)行,就要對(duì)時(shí)鐘偏差進(jìn)行控制,以使時(shí)鐘偏差減小到可用的范圍。影響時(shí)鐘偏差的主要有以下幾個(gè)因時(shí)鐘偏差減小到可用的范圍。影響時(shí)鐘偏差的主要有以下幾個(gè)因素:素:1 1、用于連接時(shí)鐘樹的連線、用于連接時(shí)鐘樹的連線2 2、時(shí)鐘樹的拓?fù)浣Y(jié)構(gòu)、時(shí)鐘樹的拓?fù)浣Y(jié)構(gòu)3 3、時(shí)鐘的驅(qū)動(dòng)、時(shí)鐘的驅(qū)動(dòng)4 4、時(shí)鐘線的負(fù)載、時(shí)鐘線的負(fù)載5 5、時(shí)鐘的上升及下降時(shí)間、時(shí)鐘的上升及下降時(shí)間 Dragon WH team19時(shí)序設(shè)計(jì)的可靠性保障措施時(shí)序設(shè)計(jì)的可靠性保障措施在通常的在通常的FPGAFPGA設(shè)計(jì)中對(duì)時(shí)鐘偏差的控制主要有以下幾種方法:設(shè)計(jì)中對(duì)時(shí)鐘偏差的控制主要

16、有以下幾種方法:1 1、控制時(shí)鐘信號(hào)盡量走可編程器件的的全局時(shí)鐘網(wǎng)絡(luò)。在可編程器件中、控制時(shí)鐘信號(hào)盡量走可編程器件的的全局時(shí)鐘網(wǎng)絡(luò)。在可編程器件中一般都有專門的時(shí)鐘驅(qū)動(dòng)器及全局時(shí)鐘網(wǎng)絡(luò),不同種類、型號(hào)的可編程器一般都有專門的時(shí)鐘驅(qū)動(dòng)器及全局時(shí)鐘網(wǎng)絡(luò),不同種類、型號(hào)的可編程器件,它們中的全局時(shí)鐘網(wǎng)絡(luò)數(shù)量不同,因此要根據(jù)不同的設(shè)計(jì)需要選擇含件,它們中的全局時(shí)鐘網(wǎng)絡(luò)數(shù)量不同,因此要根據(jù)不同的設(shè)計(jì)需要選擇含有合適數(shù)量全局時(shí)鐘網(wǎng)絡(luò)的可編程器件。一般來說,走全局時(shí)鐘網(wǎng)絡(luò)的時(shí)有合適數(shù)量全局時(shí)鐘網(wǎng)絡(luò)的可編程器件。一般來說,走全局時(shí)鐘網(wǎng)絡(luò)的時(shí)鐘信號(hào)到各使用端的延時(shí)小,時(shí)鐘偏差很小,基本可以忽略不計(jì)。鐘信號(hào)到各使

17、用端的延時(shí)小,時(shí)鐘偏差很小,基本可以忽略不計(jì)。2 2、若設(shè)計(jì)中時(shí)鐘信號(hào)數(shù)量很多,無法讓所有的信號(hào)都走全局時(shí)鐘網(wǎng)絡(luò),、若設(shè)計(jì)中時(shí)鐘信號(hào)數(shù)量很多,無法讓所有的信號(hào)都走全局時(shí)鐘網(wǎng)絡(luò),那么可以通過在設(shè)計(jì)中加約束的方法,控制不能走全局時(shí)鐘網(wǎng)絡(luò)的時(shí)鐘信那么可以通過在設(shè)計(jì)中加約束的方法,控制不能走全局時(shí)鐘網(wǎng)絡(luò)的時(shí)鐘信號(hào)的時(shí)鐘偏差。號(hào)的時(shí)鐘偏差。 Dragon WH team20時(shí)序設(shè)計(jì)的可靠性保障措施時(shí)序設(shè)計(jì)的可靠性保障措施(3 3)異步接口時(shí)序裕度要足夠大)異步接口時(shí)序裕度要足夠大局部同步電路之間接口都可以看成是異步接口,比較典型的是設(shè)計(jì)中的局部同步電路之間接口都可以看成是異步接口,比較典型的是設(shè)計(jì)中的高低頻電路接口、高低頻電路接口、I/OI/O接口,那么接口電路中后一級(jí)觸發(fā)器的建立接口,那

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論