Altera器件設(shè)計(jì)中的時(shí)間匹配問題的研究
發(fā)布時(shí)間:2008/6/5 0:00:00 訪問次數(shù):617
美國altera公司生產(chǎn)的復(fù)雜可編程邏輯器件以其操作靈活、使用方便、開發(fā)迅速、投資風(fēng)險(xiǎn)低等特點(diǎn)成為集成電路設(shè)計(jì)的首選產(chǎn)品。altera的 max+plusⅱ可編程邏輯開發(fā)軟件,提供了一種與工作平臺(tái)、器件結(jié)構(gòu)無關(guān)的設(shè)計(jì)環(huán)境,深受廣大電子設(shè)計(jì)人員的喜愛。但設(shè)計(jì)人員都會(huì)遇到altera器件設(shè)計(jì)中的時(shí)間匹配問題,本文對(duì)這個(gè)問題展開了討論,對(duì)電路中短時(shí)脈沖波形失真的所謂"毛刺"現(xiàn)象進(jìn)行了研究,并提出了解決的辦法。
2 消除毛刺
某個(gè)事件成功的條件不分先后順序,只要滿足成功的組合需求,此事件就算成功,此種邏輯關(guān)系就是組合邏輯。我們?cè)谑褂胊ltera器件進(jìn)行組合邏輯的設(shè)計(jì)時(shí),常遇到短時(shí)脈沖波形失真,即毛刺問題(見圖1)。在組合電路中,兩輸入and門是最簡單的電路,從max+plusⅱ中的 timing analyzer的delay matrix 中可得知a=11.1ns,b=8. 1ns。假定and門內(nèi)部的延時(shí)時(shí)間為0.2ns,那么 a的延時(shí)+ and內(nèi)部的延時(shí)(0.2ns)=11.1ns,a的延時(shí)為10.9ns; b的延時(shí)+and內(nèi)部的延時(shí)(0.2ns)=8.1ns,b的延時(shí)為7.9ns。由于 a和b的延時(shí)時(shí)間不相等,所以當(dāng)a從1變?yōu)?,同時(shí)b從0變?yōu)?時(shí),輸出結(jié)果c產(chǎn)生了毛刺。
altera器件結(jié)構(gòu)有許多特點(diǎn),使你在設(shè)計(jì)時(shí)具有較大的靈活性,但是,它可能會(huì)引入附加的時(shí)間延時(shí)。另外,復(fù)雜可編程邏輯器件中具有稱作邏輯陣列塊(lab)的小型、高性能、靈活陣列模塊,還有稱作可編程連線陣列(pia)的專用可編程網(wǎng)絡(luò),max的結(jié)構(gòu)通過pia來連接lab,保證其100%的內(nèi)部連接布通率。每個(gè)lab中的邏輯擴(kuò)展項(xiàng)都提供附加的邏輯資源給lab中的任何一個(gè)宏單元。但是,所有來自宏單元和擴(kuò)展項(xiàng)的信號(hào)經(jīng)過pia時(shí)都必然引入時(shí)間延時(shí),從而可能在組合邏輯的輸出端產(chǎn)生毛刺。對(duì)于怎樣消除毛刺,我們作了以下探討。
2.1 軟件修改輸入端子的延時(shí)時(shí)間
一些軟件(如xilinx公司)提供的方法是通過修改輸入端子的延時(shí)時(shí)間,來解決毛刺問題的。如圖1中,我們用軟件把 b輸入端子的延時(shí)時(shí)間改為10.9ns,這樣a與 b的延時(shí)時(shí)間相等,就消除了輸出端c的毛刺。它的優(yōu)點(diǎn)是能快速解決問題,這是設(shè)計(jì)中最簡單實(shí)用的方法。
2.2 修改電路
通過修改定義時(shí)鐘信號(hào)的復(fù)雜邏輯,將其轉(zhuǎn)換成同步時(shí)鐘方式就可以避免毛刺出現(xiàn)。同步時(shí)鐘是采用單一的引腳驅(qū)動(dòng)的系統(tǒng)時(shí)鐘,而不是異步的(邏輯驅(qū)動(dòng)的)時(shí)鐘,見圖2。只要可能就應(yīng)盡量采用同步設(shè)計(jì),可以避免定時(shí)關(guān)系發(fā)生問題。另外,同步設(shè)計(jì)也可以改善電路的在線性能,減少調(diào)試時(shí)間和提高電路的可靠性。在同步時(shí)鐘方式中 c信號(hào)是d觸發(fā)器輸入的一部分,而且時(shí)鐘是由引腳驅(qū)動(dòng)。這個(gè)電路稱作寄存器使能電路, max+plusⅱttl宏功能庫中提供了一種可以實(shí)現(xiàn)這種類型電路的d觸發(fā)器dffe(見圖2)。
對(duì)于三到八譯碼器而言,用a、b、c表示輸入引腳,d0、d1、d2、d3、d4、d5、d6、d7 表示三到八譯碼器的輸出引腳。對(duì)該設(shè)計(jì)項(xiàng)目進(jìn)行編譯后模擬仿真,這時(shí)非常容易從模擬仿真出來的波形上看到出現(xiàn)了毛刺。如采用同步時(shí)鐘(引腳驅(qū)動(dòng))方式,就可以消除毛刺。要注意的一點(diǎn)是建立和保持時(shí)間(setup/hold time )是測試芯片對(duì)輸入信號(hào)和時(shí)鐘信號(hào)之間的時(shí)間要求。建立時(shí)間是指觸發(fā)器的時(shí)鐘信號(hào)上升沿到來以前,數(shù)據(jù)穩(wěn)定不變的時(shí)間。輸入信號(hào)應(yīng)提前時(shí)鐘上升沿(如上升沿有效)t時(shí)間到達(dá)芯片,這個(gè)t就是建立時(shí)間set up time。如不滿足setup time,這個(gè)數(shù)據(jù)就不能被這一時(shí)鐘打入觸發(fā)器,只有在下一個(gè)時(shí)鐘上升沿,數(shù)據(jù)才能被打入觸發(fā)器。保持時(shí)間是指觸發(fā)器的時(shí)鐘信號(hào)上升沿到來以后,數(shù)據(jù)穩(wěn)定不變的時(shí)間。hold time不夠,數(shù)據(jù)同樣不能被打入觸發(fā)器。我們選用a端的輸入脈沖寬度是時(shí)鐘脈沖的四倍,這樣d 觸發(fā)器就可以正常動(dòng)作,輸出結(jié)果是正確的,見圖3、圖4。如果我們一定要使輸入脈沖等于輸出脈沖的寬度,就要使輸入脈沖的高電平與時(shí)鐘脈沖的高電平錯(cuò)開,保證d觸發(fā)器能工作。
2.3 重新設(shè)計(jì)電路
毛刺是信號(hào)趨于穩(wěn)定前不必要的開關(guān)動(dòng)作,使每個(gè)時(shí)鐘沿改變了寄存器間組合邏輯的輸入。對(duì)每個(gè)節(jié)點(diǎn)而言,不同的輸入路徑有不同的延時(shí),這將多次改變
美國altera公司生產(chǎn)的復(fù)雜可編程邏輯器件以其操作靈活、使用方便、開發(fā)迅速、投資風(fēng)險(xiǎn)低等特點(diǎn)成為集成電路設(shè)計(jì)的首選產(chǎn)品。altera的 max+plusⅱ可編程邏輯開發(fā)軟件,提供了一種與工作平臺(tái)、器件結(jié)構(gòu)無關(guān)的設(shè)計(jì)環(huán)境,深受廣大電子設(shè)計(jì)人員的喜愛。但設(shè)計(jì)人員都會(huì)遇到altera器件設(shè)計(jì)中的時(shí)間匹配問題,本文對(duì)這個(gè)問題展開了討論,對(duì)電路中短時(shí)脈沖波形失真的所謂"毛刺"現(xiàn)象進(jìn)行了研究,并提出了解決的辦法。
2 消除毛刺
某個(gè)事件成功的條件不分先后順序,只要滿足成功的組合需求,此事件就算成功,此種邏輯關(guān)系就是組合邏輯。我們?cè)谑褂胊ltera器件進(jìn)行組合邏輯的設(shè)計(jì)時(shí),常遇到短時(shí)脈沖波形失真,即毛刺問題(見圖1)。在組合電路中,兩輸入and門是最簡單的電路,從max+plusⅱ中的 timing analyzer的delay matrix 中可得知a=11.1ns,b=8. 1ns。假定and門內(nèi)部的延時(shí)時(shí)間為0.2ns,那么 a的延時(shí)+ and內(nèi)部的延時(shí)(0.2ns)=11.1ns,a的延時(shí)為10.9ns; b的延時(shí)+and內(nèi)部的延時(shí)(0.2ns)=8.1ns,b的延時(shí)為7.9ns。由于 a和b的延時(shí)時(shí)間不相等,所以當(dāng)a從1變?yōu)?,同時(shí)b從0變?yōu)?時(shí),輸出結(jié)果c產(chǎn)生了毛刺。
altera器件結(jié)構(gòu)有許多特點(diǎn),使你在設(shè)計(jì)時(shí)具有較大的靈活性,但是,它可能會(huì)引入附加的時(shí)間延時(shí)。另外,復(fù)雜可編程邏輯器件中具有稱作邏輯陣列塊(lab)的小型、高性能、靈活陣列模塊,還有稱作可編程連線陣列(pia)的專用可編程網(wǎng)絡(luò),max的結(jié)構(gòu)通過pia來連接lab,保證其100%的內(nèi)部連接布通率。每個(gè)lab中的邏輯擴(kuò)展項(xiàng)都提供附加的邏輯資源給lab中的任何一個(gè)宏單元。但是,所有來自宏單元和擴(kuò)展項(xiàng)的信號(hào)經(jīng)過pia時(shí)都必然引入時(shí)間延時(shí),從而可能在組合邏輯的輸出端產(chǎn)生毛刺。對(duì)于怎樣消除毛刺,我們作了以下探討。
2.1 軟件修改輸入端子的延時(shí)時(shí)間
一些軟件(如xilinx公司)提供的方法是通過修改輸入端子的延時(shí)時(shí)間,來解決毛刺問題的。如圖1中,我們用軟件把 b輸入端子的延時(shí)時(shí)間改為10.9ns,這樣a與 b的延時(shí)時(shí)間相等,就消除了輸出端c的毛刺。它的優(yōu)點(diǎn)是能快速解決問題,這是設(shè)計(jì)中最簡單實(shí)用的方法。
2.2 修改電路
通過修改定義時(shí)鐘信號(hào)的復(fù)雜邏輯,將其轉(zhuǎn)換成同步時(shí)鐘方式就可以避免毛刺出現(xiàn)。同步時(shí)鐘是采用單一的引腳驅(qū)動(dòng)的系統(tǒng)時(shí)鐘,而不是異步的(邏輯驅(qū)動(dòng)的)時(shí)鐘,見圖2。只要可能就應(yīng)盡量采用同步設(shè)計(jì),可以避免定時(shí)關(guān)系發(fā)生問題。另外,同步設(shè)計(jì)也可以改善電路的在線性能,減少調(diào)試時(shí)間和提高電路的可靠性。在同步時(shí)鐘方式中 c信號(hào)是d觸發(fā)器輸入的一部分,而且時(shí)鐘是由引腳驅(qū)動(dòng)。這個(gè)電路稱作寄存器使能電路, max+plusⅱttl宏功能庫中提供了一種可以實(shí)現(xiàn)這種類型電路的d觸發(fā)器dffe(見圖2)。
對(duì)于三到八譯碼器而言,用a、b、c表示輸入引腳,d0、d1、d2、d3、d4、d5、d6、d7 表示三到八譯碼器的輸出引腳。對(duì)該設(shè)計(jì)項(xiàng)目進(jìn)行編譯后模擬仿真,這時(shí)非常容易從模擬仿真出來的波形上看到出現(xiàn)了毛刺。如采用同步時(shí)鐘(引腳驅(qū)動(dòng))方式,就可以消除毛刺。要注意的一點(diǎn)是建立和保持時(shí)間(setup/hold time )是測試芯片對(duì)輸入信號(hào)和時(shí)鐘信號(hào)之間的時(shí)間要求。建立時(shí)間是指觸發(fā)器的時(shí)鐘信號(hào)上升沿到來以前,數(shù)據(jù)穩(wěn)定不變的時(shí)間。輸入信號(hào)應(yīng)提前時(shí)鐘上升沿(如上升沿有效)t時(shí)間到達(dá)芯片,這個(gè)t就是建立時(shí)間set up time。如不滿足setup time,這個(gè)數(shù)據(jù)就不能被這一時(shí)鐘打入觸發(fā)器,只有在下一個(gè)時(shí)鐘上升沿,數(shù)據(jù)才能被打入觸發(fā)器。保持時(shí)間是指觸發(fā)器的時(shí)鐘信號(hào)上升沿到來以后,數(shù)據(jù)穩(wěn)定不變的時(shí)間。hold time不夠,數(shù)據(jù)同樣不能被打入觸發(fā)器。我們選用a端的輸入脈沖寬度是時(shí)鐘脈沖的四倍,這樣d 觸發(fā)器就可以正常動(dòng)作,輸出結(jié)果是正確的,見圖3、圖4。如果我們一定要使輸入脈沖等于輸出脈沖的寬度,就要使輸入脈沖的高電平與時(shí)鐘脈沖的高電平錯(cuò)開,保證d觸發(fā)器能工作。
2.3 重新設(shè)計(jì)電路
毛刺是信號(hào)趨于穩(wěn)定前不必要的開關(guān)動(dòng)作,使每個(gè)時(shí)鐘沿改變了寄存器間組合邏輯的輸入。對(duì)每個(gè)節(jié)點(diǎn)而言,不同的輸入路徑有不同的延時(shí),這將多次改變
熱門點(diǎn)擊
- 彩電屢燒行管的幾點(diǎn)問題討論
- 納米技術(shù)材料
- 真空斷路器的合閘彈跳與分閘彈振研究
- 電子羅盤
- Actel面向FPGA設(shè)計(jì)的新版IDE支持添
- PPP協(xié)議鏈路操作的軟件實(shí)現(xiàn)
- FCS在大容量滌綸短纖紡絲生產(chǎn)線中的應(yīng)用
- TI推出單芯片交錯(cuò)式功率因數(shù)校正控制電路UC
- 74HC04介紹
- 一種高精度超聲波測距系統(tǒng)的改進(jìn)
推薦技術(shù)資料
- 羅盤誤差及補(bǔ)償
- 造成羅盤誤差的主要因素有傳感器誤差、其他磁材料干擾等。... [詳細(xì)]
- 100A全集成電源模塊R
- Teseo-VIC6A GNSS車用精準(zhǔn)定位
- 高效先進(jìn)封裝工藝
- 模數(shù)轉(zhuǎn)換器 (Analog-to-Digit
- 集成模數(shù)轉(zhuǎn)換器(ADC)
- 128 通道20 位電流數(shù)字轉(zhuǎn)換器̴
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究