<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > FPGA設計中毛刺信號解析

FPGA設計中毛刺信號解析

作者: 時(shí)間:2011-08-08 來(lái)源:網(wǎng)絡(luò ) 收藏

  注意在新的計數器中,每次狀態(tài)發(fā)生改變時(shí)Q0,Q1,Q2 只有1位發(fā)生跳變,從根本上消除了。但計數器的輸出狀態(tài)沒(méi)有規律,不便于其他電路利用。如果希望計數器的輸出狀態(tài)有規律變化以便其他電路使用,可以考慮采用雙輸出電路,一路是單輸出,一路是正常計數輸出。這種方法從根本上消除了產(chǎn)生的根源,具有普遍的意義,對系統也不會(huì )產(chǎn)生影響,是最為可靠的方法,其不利之處是這種方法對VHDL語(yǔ)言要求比較高,必須對電路的工作狀態(tài)及其轉變有全面的分析和掌握,而隨著(zhù)電路的復雜度提高,產(chǎn)生的來(lái)源繁雜,實(shí)現起來(lái)比較困難。

  對于一般情況下產(chǎn)生的毛刺,可以嘗試用D觸發(fā)器來(lái)消除。但用D觸發(fā)器消除時(shí),有時(shí)會(huì )影響到時(shí)序,需要考慮很多問(wèn)題。所以應根據不同情況,仔細地分析毛刺產(chǎn)生的來(lái)源和毛刺的性質(zhì),結合系統資源選擇具體辦法,消除毛刺的影響。

  4具體實(shí)例

  在實(shí)際應用中要對一個(gè)周期同步脈沖進(jìn)行檢測,要求若在給定的時(shí)間內沒(méi)有檢測到同步則給出一定脈沖寬度的高電平,作為復位信號。思想是采用一個(gè)計數器,當有同步信號時(shí)對其清零,并同時(shí)開(kāi)始計數,根據給定時(shí)間和系統時(shí)鐘周期設定計數器的模數,經(jīng)過(guò)給定的時(shí)間后輸出高電平,滿(mǎn)足寬度后再置低。

  實(shí)際要求檢測時(shí)間大約1 s,脈沖寬度保持在20 ms左右,采用5片74161級聯(lián),第5片計數器的ROC接D觸發(fā)器的使能端。同步信號輸入后,清零并開(kāi)始計數,若不再出現同步脈沖,經(jīng)16^5 個(gè)時(shí)鐘周期后,第5片的RCO端輸出一個(gè)高電平,使觸發(fā)器的Q輸出D(高電平),再過(guò)16^3*2個(gè)時(shí)鐘周期后使第4片的QA,QB,QC,QD接組合門(mén)電路輸出低電平,接到D觸發(fā)器的計數器預制端,使Q輸出為零。這樣就實(shí)現經(jīng)一定延時(shí)后的一定寬度的脈沖。經(jīng)仿真結果如圖4所示。

  仿真平臺采用Max+PlusⅡ,時(shí)鐘周期設為10 ns,經(jīng)計算可以知道在10.485 928 2 ms處產(chǎn)生寬度為81.92μs的高電平,但由于存在數據建立時(shí)間和保持時(shí)間,仿真結果中的變化時(shí)刻并不是嚴格與計算相符的,其中 q0,q1,q2,q3是第5片74161的輸出,roc1是第4片的進(jìn)位輸出,roc是第5片的進(jìn)位輸出,roc1輸出16個(gè)高電平后,roc同時(shí)輸出一個(gè)高電平。圖4中復位信號reset卻在5.247 ms和10.485 297 9 ms處發(fā)生。第一個(gè)錯誤的原因是,由于計數器累加,內部走線(xiàn)造成的延時(shí),當第5片計數器從0111狀態(tài)跳變到1 000時(shí),輸入同時(shí)有3位變化,致使進(jìn)位輸出roc在roc1的第8個(gè)輸出時(shí)產(chǎn)生了一個(gè)尖脈沖,使觸發(fā)器的Q端提前發(fā)生電平轉變,導致了在5.247 ms處產(chǎn)生錯誤復位信號。同樣的原因,第4片的進(jìn)位輸出roc1在第14個(gè)輸出跳變到第15個(gè)輸出時(shí)發(fā)生毛刺,而該毛刺使第5片161進(jìn)入計數狀態(tài),在roc端也產(chǎn)生了毛刺,就出現了圖4中復位信號提前翻轉的結果。

  對于該電路中存在的毛刺問(wèn)題,可以采用2種方法修改電路。由于該電路對時(shí)間要求的不是很?chē)栏?,對?,5片74LS161取1110狀態(tài)做最后輸出,就避免了由延遲造成的假象全1狀態(tài),仿真結果證明這種方法是有效的。但這種方法增加了邏輯門(mén)數量,同時(shí)也增加了險象發(fā)生的可能性。

  另一種比較可靠且常用的方法是用帶使能端的D觸發(fā)器代替原來(lái)的觸發(fā)器,把計數器最后的輸出roc接到觸發(fā)器的使能端,時(shí)鐘用統一的計數時(shí)鐘,由于毛刺本身是尖脈沖,不能滿(mǎn)足數據的建立時(shí)間和保持時(shí)間,避免了產(chǎn)生的毛刺對Q的輸出的影響。從仿真結果(圖5)中可以看到,雖然這種方法并不能消除毛刺,但是毛刺已經(jīng)不具有危害性,故這是一種簡(jiǎn)單有效的方法。

  5結語(yǔ)

  毛刺問(wèn)題在中非常關(guān)鍵,只有深刻理解毛刺的本質(zhì),才有可能真正掌握的精髓,本文就設計中的毛刺問(wèn)題進(jìn)行了深入的探討,分析其產(chǎn)生的原因和條件,給出了幾種常用的消除方法,希望對設計者有一定的參考作用。

塵埃粒子計數器相關(guān)文章:塵埃粒子計數器原理

上一頁(yè) 1 2 下一頁(yè)

關(guān)鍵詞: 解析 信號 毛刺 設計 FPGA

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>