欢迎来到天天文库
浏览记录
ID:40525630
大小:1.09 MB
页数:25页
时间:2019-08-04
《08.基础电路设计(八)数位电路设计盲点实例与对策》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、基礎電路設計(八)數位電路設計盲點實例與對策宇量內容標題導覽:|有關Tinning的設計盲點|有關資料傳輸的設計盲點|有關消耗電流的設計盲點|有關HDL編寫的盲點| 有關數位電路設計盲點的內容,將分別針對Tinning、資料傳輸、消耗電流、HDL編寫等項目,輔以實例進行現象、原因分析以及對策探討。首先要介紹的是二進位計數器(BinaryCounter)的設計。 有關Tinning的設計盲點【二進位計數器】二進位計數器經常被用來作外部輸入脈衝的同步化,此外計數器的輸出可負載(Load)到計數器本身,如果某種原因使得同步信號消失,可因為二進位計數器持續維持輸出Tinning,直到同步信號恢復正常
2、再度取得同步為止,而且二進位計數器具有抗噪訊特性,所以是種廣被使用的電路Block。※現象圖1-1是典型的二進位計數器電路,該電路是將0~5計數(Count),將6Counter,不過由於某種原因使得同步信號與計數器(Counter)的輸出Tinning產生偏差,就會像產生如圖1-2所示的電路輸出持續偏差現象。※原因分析FlipFlop可keep已負載於二進位計數器LD的信號,因此若是忘記將「FlipFlop」Reset就會發生上述現象。為了符合設計規格因此利用圖1-3的二進位計數器輸出,不過由於圖1-1的電路,負載之前已將Tinning解碼(Decoder),並用DFlipFlop將該信號
3、延遲一位元(Bit)作成LoadTinning,因此某種原因使得同步信號與後段FlipFlop判定(Assert)Tinning延遲一位元時,Tinning就會持續維持輸出偏差狀態。※對策根據電路Block的動作特性進行延遲計算,通常設計上不會有任何問題,因此採用如圖1-4所示的對策,如果因為負載信號的傳輸延遲造成延遲(delay),祇需在圖1-4後面的DFlipFlop作Load就可解決上述問題。圖1-1的電路原先是與圖1-3的電路相同,不過可能是進行BreadBoard評鑑測試時發生解碼錯誤(miss),或者是負載信號傳輸的LineDelay無法滿足SetUp與HoldTinning,因
4、此插入DFlipFlop作CarelessMiss對策。【夾雜延遲無法提高Clock頻率】※現象這是經常發生的典型失敗設計實例,主要原因是計數器的IllegalState對策不當造成Clock頻率無法提高。在理論合成階段理論壓縮的PLD,有許多情況雖然不致構成障礙,然而實際上卻潛伏許多無法釐清盲點。圖2-1是十進位計數器設計實例,圖中的3至8LineDecoder相當於74137的TTLMicro。※原因分析如上所述Clock頻率無法提高,主要原因是不當的IllegalState對策所造成。由於IllegalState對策上因為某種因,使得必要的Counter以外的值插入State,為了順利
5、回復原正常狀態因此設置IllegalState,不過該對策卻會壓迫動作性能,造成本末倒置的反效果。※對策將IllegalState對策降至最小範圍,根據StateMachine的情況充分檢討,設法使Clock數能回復原正常狀態,且不會產生其它問題。尤其是二進位計數器(BinaryCounter),可以應用過去DiscLeadIC設計手法,簡化IllegalState的Decoder。圖2-2是根據上述方式設計的電路圖,如圖所示IllegalState(此時為Ah以上)的Decoder是由負載條件決定,並刻意使FlipFlop的輸出變成1,再使負載條件能完全成立進行Decoder(此時為Bh,
6、Dh,Fh),進而使電路恢復正常狀態。【計數器切換造成分佈不均】※現象為製作時間分析儀因此在輸入端分別設置可儲存檢測中的資料的計數器,以及可將資料記憶至Memory的計數器(Counter),不過由於計數器產生分佈不均現象,所以無法正確檢測。時間分析儀又稱為「MultiChannelAnalyzer」,它的主要功能是將時間分割作信號分類。圖3-1是2頻時間分析儀的CounterChannel切換電路,圖中的InOSwitch是用來作初期化,圖中的下半段是產生頻道切換時間的電路,本電路圖是美國BeigeBagSoftware公司設計的SpiceA-D2000Version3.0.2。Sig主要
7、用意是希望用時間分析儀檢測的脈衝,Out1是區分成CounterU6脈衝,它是用信號Sel進行區分,當Sel為「H」時利用計數器(Counter)U4計數(Count),若是「L」時則利用計數器(Counter)U6計數(Count)。此外脈衝在區分成U4時會讀取U6的資料,脈衝在區分成U6(Out3)時會讀取U4(Out2)的資料(位圖示)。U9與U10在切換計數器(Counter)時會將U4與U6清除(C
此文档下载收益归作者所有