
FPGA設(shè)計異步復(fù)位同步釋放有講究
發(fā)布時間:2017-01-23 責(zé)任編輯:susan
【導(dǎo)讀】異步復(fù)位同步釋放,首先要說一下同步復(fù)位與異步復(fù)位的區(qū)別。同步復(fù)位是指復(fù)位信號在時鐘的上升沿或者下降沿才能起作用,而異步復(fù)位則是即時生效,與時鐘無關(guān)。異步復(fù)位的好處是速度快。再來談一下為什么FPGA設(shè)計中要用異步復(fù)位同步釋放。
復(fù)位信號的釋放是有講究的:
我們知道,DFF的D端和clk端之間時序關(guān)系是有約束的,這種約束我們通過setup time和hold time來 check。即D端的data跳變的時刻要與clk端的時鐘上升沿(或者下降沿)跳變要錯開,如果這兩個跳變撞到一起,我們無法保證DFF能夠sample到正確的data,這時候不滿足setup/hold time要求,就會發(fā)生亞穩(wěn)態(tài),我們sample到的data可能是不穩(wěn)定的中間態(tài)的值,并不是我們原本想要的data。

與此類似,異步復(fù)位端與clk端之間也存在著類似的時序約束關(guān)系,為了準(zhǔn)確穩(wěn)定地sample到異步復(fù)位端的reset信號,我們要求reset信號在clk上升沿(或者下降沿)跳變的前后一段時間內(nèi)保持穩(wěn)定,不要跳變。clk跳變沿之前必須保持穩(wěn)定的最短時間叫做recovery time,clk跳變沿之后需要保持穩(wěn)定的最短時間叫做removal time。如果在此時間窗口內(nèi)reset信號發(fā)生跳變,不確定reset到底有沒有釋放成功(類似setup+hold時間窗口內(nèi),data跳變,發(fā)生亞穩(wěn)態(tài),sample到的值是不穩(wěn)定的中間態(tài)值)。
在IC設(shè)計過程中我們是會check recovery和removal time的,如果不滿足,我們會通過布局布線的調(diào)整(后端的調(diào)整)讓電路滿足這個條件(實質(zhì)就是讓reset跳變沿和clk跳變沿錯開);但是對于FPGA設(shè)計而言,我們一般不采用異步釋放的方法,因為FPGA的布局布線可以調(diào)整的空間不大,相對于IC設(shè)計,F(xiàn)PGA后端的布局布線基本上是tool自己搞定,所以我們很難調(diào)整布局布線以滿足這個條件,所以我們一般就會直接用異步復(fù)位同步釋放的方法來讓reset跳變沿和clk跳變沿錯開。
最后再說一下同步數(shù)字電路的setup/hold timing check的實質(zhì)。
同步數(shù)字電路的基本單元就是兩級DFF,中間是一堆組合邏輯,data就是在clk一拍一拍的控制下,逐漸向后面?zhèn)鬟f,當(dāng)然,在傳遞的過程中,通過組合邏輯實現(xiàn)數(shù)據(jù)的處理與轉(zhuǎn)換;但是物理世界里面,組合邏輯一定是有毛刺的,比如說data通過一系列的處理之后準(zhǔn)備通過DFF傳遞到下一個單元的時候,你怎么能保證第二級DFF采到的值是處理完畢穩(wěn)定可靠的data,而不是還處于中間態(tài)的data??。ㄅe個例子,假設(shè)我們這里的data是一個8bit的bus信號,處理之前是1111_0000,通過組合邏輯處理完之后我們期望變成1111_1111;我們知道后面4個bit由0變1是需要時間的,由于布局布線的緣故,這4bit不可能在同一個時刻齊刷刷的同時由0變1,肯定是有的bit先變1,有的bit后變1;也就是在由1111_0000變成1111_1111的過程中,可能會存在1111_1000/1111_1100/1111_1101/...等等這樣的中間態(tài)數(shù)據(jù),我們不能在data還處于中間態(tài)的時候就去sample它,否則得到的不是我們預(yù)期的值,會引起整個芯片的邏輯錯誤)。
我們實際上是通過setup/hold time來保證的,即:如果電路中所有DFF的setup/hold time都能夠滿足,表示data到達D端的時間比clk跳變沿時刻超過了setup時間(反之,如果data在setup+hold時間窗口內(nèi)還在變化,一定會有setup/hold timing vio),這樣,我們通過check 所有DFF的setup/hold timing來間接地保證所有DFF采到的值都是經(jīng)過組合邏輯處理并且處理完畢之后穩(wěn)定可靠的值。(更確切的說,通過hold timing check來保證sample到的值是經(jīng)過組合邏輯處理之后的值而不是上一筆的data,通過setup time來保證sample到的是經(jīng)過組合邏輯處理完畢之后并且穩(wěn)定下來的值)。
特別推薦
- 線繞電阻技術(shù)解析與選型策略
- 傳感器+AI+衛(wèi)星:貿(mào)澤電子農(nóng)業(yè)資源中心揭秘精準(zhǔn)農(nóng)業(yè)“黑科技”
- 一文讀懂運動控制驅(qū)動器的技術(shù)邏輯
- 金屬膜電阻技術(shù)解析與產(chǎn)業(yè)應(yīng)用指南
- 雙脈沖測試系統(tǒng)如何確保晶體管性能可比較性
- 薄膜電阻技術(shù)深度解析與產(chǎn)業(yè)應(yīng)用指南
- 供需博弈加??!Q1面板驅(qū)動IC均價跌1%-3%
技術(shù)文章更多>>
- 熱敏電阻技術(shù)全景解析:原理、應(yīng)用與供應(yīng)鏈戰(zhàn)略選擇
- 800V牽引逆變器:解鎖電動汽車?yán)m(xù)航與性能躍升的工程密鑰
- 展位預(yù)定倒計時!500+優(yōu)質(zhì)企業(yè)云集,西部地區(qū)不容錯過的電子行業(yè)盛會!
- EMC與成本雙優(yōu)解 車載燈光域控制器集成方案落地
- 激光雷達如何破解自動駕駛“視覺困境”?
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索
電腦OA
電腦電源
電腦自動斷電
電能表接線
電容觸控屏
電容器
電容器單位
電容器公式
電聲器件
電位器
電位器接法
電壓表
電壓傳感器
電壓互感器
電源變壓器
電源風(fēng)扇
電源管理
電源管理IC
電源連接器
電源濾波器
電源模塊
電源模塊
電源適配器
電子書
電阻測試儀
電阻觸控屏
電阻器
電阻作用
調(diào)速開關(guān)
調(diào)諧器