日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

《FPGA入门教程》看书随笔——数字电路设计入门

發(fā)布時(shí)間:2023/12/19 编程问答 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 《FPGA入门教程》看书随笔——数字电路设计入门 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
1、數(shù)字電路設(shè)計(jì)的核心是邏輯設(shè)計(jì)。數(shù)字電路的邏輯值只有‘1’和‘0’,表征的是模擬 電壓或電流的離散值,一般‘1’代表高電平,‘0’代表低電平。 2、當(dāng)前的數(shù)字電路的電平標(biāo)準(zhǔn)常見的有:TTL、CMOS、LVTTL、LVCMOS、 ECL、PECL、LVDS、HSTL、SSTL等。 3、數(shù)字電路設(shè)計(jì)大致可分為組合邏輯電路和時(shí)序邏輯電路。 組合邏輯電 路的輸出僅與當(dāng)前的輸入有關(guān),而時(shí)序邏輯電路的輸出不但與輸入有關(guān),還和系統(tǒng)上一個(gè) 狀態(tài)有關(guān)。 組合邏輯電路由任意數(shù)目的邏輯門電路組成,一般包括與門、或門、異或門、與非門、或非門等。 4、時(shí)序邏輯電路由時(shí)鐘的上升沿或下降沿驅(qū)動(dòng)工作,其實(shí)真正被時(shí)鐘沿驅(qū)動(dòng)的是電路中的觸發(fā)器(Register),也稱為寄存器。觸發(fā)器的工作原理和參數(shù)如下圖:
5、競(jìng)爭(zhēng)與冒險(xiǎn) 競(jìng)爭(zhēng):當(dāng)一個(gè)邏輯門的輸入有兩個(gè)或兩個(gè)以上的變量發(fā)生改變時(shí),由于這些變量時(shí)經(jīng)過不同路徑產(chǎn)生的,是它們狀態(tài)改變的時(shí)刻有先有后,這種時(shí)差引起的現(xiàn)象稱為競(jìng)爭(zhēng)(Race), 競(jìng)爭(zhēng)的結(jié)果將很可能導(dǎo)致冒險(xiǎn)(Hazard)發(fā)生(例如產(chǎn)生毛刺)。 組合邏輯電路的冒險(xiǎn)僅在信號(hào)狀態(tài)改變的時(shí)刻出現(xiàn)毛刺,這種冒險(xiǎn)是過渡性的,它不會(huì)是狀態(tài)值偏離正常值。但在時(shí)序電路中,冒險(xiǎn)是本質(zhì)的,可導(dǎo)致電路輸出值永遠(yuǎn)偏離正常值或發(fā)生震蕩。 ?避免冒險(xiǎn)的最簡(jiǎn)單的方法同一時(shí)刻只允許單個(gè)輸入變量發(fā)生變化,或使用寄存器采樣的辦法。 6、毛刺的產(chǎn)生 信號(hào)在器件中傳輸?shù)臅r(shí)候,所需要的時(shí)間是不能精確估計(jì)的,當(dāng)多路信號(hào)同時(shí)發(fā)生跳變的瞬間,就產(chǎn)生了“競(jìng)爭(zhēng)冒險(xiǎn)”。 這是,往往會(huì)出現(xiàn)一些不確定的尖峰信號(hào),即“毛刺”。 7、毛刺的危害: 毛刺是數(shù)字電路設(shè)計(jì)中的棘手問題,它的出現(xiàn)會(huì)影響電路工作的穩(wěn)定性、可靠性,嚴(yán)重 時(shí)會(huì)導(dǎo)致整個(gè)數(shù)字系統(tǒng)的誤動(dòng)作和邏輯紊亂。 8、毛刺的消除 (1)輸出加D觸發(fā)器 原理是用一個(gè)D觸發(fā)器去讀帶毛刺的信號(hào),利用D觸發(fā)器對(duì)輸入信號(hào)的毛刺不敏感的特點(diǎn),去除信號(hào)中的毛刺。? (2)信號(hào)同步法 設(shè)計(jì)數(shù)字電路的時(shí)候采用同步電路可以大大減少毛刺。做到真正的“同步”就是去除毛刺信號(hào)的關(guān)鍵問題。所以同步的關(guān)鍵就是保證在時(shí)鐘的跳變沿讀取的數(shù)據(jù)時(shí)穩(wěn)定的數(shù)據(jù)胃不是毛刺的數(shù)據(jù)。以下為兩種具體的信號(hào)同步方法: 1)信號(hào)延時(shí)同步法 原理就是在兩級(jí)信號(hào)傳遞的過程中加一個(gè)延時(shí)環(huán)節(jié),從而保證在下一 個(gè)模塊中讀取到的數(shù)據(jù)是穩(wěn)定后的數(shù)據(jù),即不包含毛刺信號(hào) 2)狀態(tài)機(jī)控制 ? ? ?由狀態(tài)機(jī)在特定的時(shí)刻分別發(fā)出控制特定模塊的時(shí)鐘信號(hào)或者模塊使能信號(hào),狀態(tài)機(jī)的循環(huán)控制就可以使得整個(gè)系統(tǒng)協(xié)調(diào)運(yùn)作,同時(shí)減少毛刺信號(hào)。 (3)格雷碼計(jì)數(shù)器 ? ? ?格雷碼計(jì)數(shù)器的輸出每次只有一位跳變
9、同步電路設(shè)計(jì) 同步電路設(shè)計(jì)是指所有電路在同一個(gè)公共時(shí)鐘的上升沿或下降沿的觸發(fā)下同步的工作。 同步電路的設(shè)計(jì)準(zhǔn)則: (1)盡可能在設(shè)計(jì)中使用同一時(shí)鐘,時(shí)鐘走全局時(shí)鐘網(wǎng)絡(luò)。走全局時(shí)鐘網(wǎng)絡(luò)的時(shí)鐘是最簡(jiǎn)單、最可預(yù)測(cè)的時(shí)鐘,并保證Clocke skew可以小到忽略的地步 (2)避免使用混合時(shí)鐘沿采樣數(shù)據(jù)。 (3)盡量少在模塊內(nèi)部使用計(jì)數(shù)器分頻所產(chǎn)生的時(shí)鐘。計(jì)數(shù)器分頻時(shí)鐘需完成的邏輯 功能完全可由PLL鎖相環(huán)或時(shí)鐘使能電路替代。計(jì)數(shù)器分頻時(shí)鐘的缺點(diǎn)是使得系統(tǒng)內(nèi)時(shí)鐘 不可控,并產(chǎn)生較大的Clock skew,還使靜態(tài)時(shí)序分析變得復(fù)雜。 (4)避免使用門控時(shí)鐘。因?yàn)榻?jīng)組合邏輯產(chǎn)生的門控時(shí)鐘極可能產(chǎn)生毛刺,且組合邏輯電路的Jitter和Skew比較大。 (5)當(dāng)整個(gè)電路需要多個(gè)時(shí)鐘來(lái)實(shí)現(xiàn),則可以將整個(gè)電路分成若干局部同步電路(盡可能以同一個(gè)時(shí)鐘為一個(gè)模塊),局部同步電路之間接口當(dāng)作異步接口考慮,而且每個(gè)時(shí)鐘信 號(hào)的時(shí)鐘偏差(△T)要嚴(yán)格控制。 (6)電路的實(shí)際最高工作頻率不應(yīng)大于理論最高工作頻率,留有設(shè)計(jì)余量,保證芯片 可靠工作。 (7)電路中所有寄存器、狀態(tài)機(jī)在系統(tǒng)被reset復(fù)位時(shí)應(yīng)處在一個(gè)已知的狀態(tài)。 10、時(shí)鐘的設(shè)計(jì)討論 時(shí)鐘類型包括: 全局時(shí)鐘、內(nèi)部邏輯時(shí)鐘和門控時(shí)鐘。 (1)全局時(shí)鐘 全局時(shí)鐘即同步時(shí)鐘,它通過 FPGA 芯片內(nèi)的全局時(shí)鐘布線網(wǎng)絡(luò)或區(qū)域時(shí)鐘網(wǎng)絡(luò)來(lái)驅(qū) 動(dòng)。 全局時(shí)鐘的設(shè)計(jì)方法: 1)由PLL鎖相環(huán)來(lái)產(chǎn)生全局時(shí)鐘。 2)將FPGA芯片內(nèi)部邏輯產(chǎn)生的時(shí)鐘分配至全局時(shí)鐘布線邏輯 3)將外部時(shí)鐘通過專用的全局時(shí)鐘輸入引腳引入FPGA。 (2)內(nèi)部邏輯時(shí)鐘(嚴(yán)格禁用) 內(nèi)部邏輯時(shí)鐘即指由芯片每部的組合邏輯或計(jì)數(shù)器分頻產(chǎn)生的時(shí)鐘。 (3)門控時(shí)鐘(避免使用門控時(shí)鐘最好只在頂層模塊中出現(xiàn),并將其分離到一個(gè)在頂層的獨(dú)立模塊中。 推薦的門控時(shí)鐘設(shè)計(jì)如下,該設(shè)計(jì)一般不會(huì)產(chǎn)生毛刺和亞穩(wěn)態(tài)的問題。 11、亞穩(wěn)態(tài) 在同步電路或異步電路中,如果觸發(fā)器的setup 時(shí)間或hold 時(shí)間不能得到滿足,就可 能產(chǎn)生亞穩(wěn)態(tài)。此時(shí)觸發(fā)器輸出端Q在有效時(shí)鐘沿之后比較長(zhǎng)的一段時(shí)間處于不確定的狀 態(tài),在這段時(shí)間里Q端將會(huì)產(chǎn)生毛刺并不斷振蕩、最終固定在某一電壓值上,此電壓值并 不一定等于原來(lái)數(shù)據(jù)輸入端D 的值。這段時(shí)間稱為決斷時(shí)間 (resolution time)。經(jīng)過決斷 時(shí)間之后,Q端將穩(wěn)定到0或 1上,但是究竟是0還是1, ?這是隨機(jī)的,與輸入沒有必然 的關(guān)系。 亞穩(wěn)態(tài)的危害: (1)導(dǎo)致邏輯誤判 (2)導(dǎo)致亞穩(wěn)態(tài)的傳播(嚴(yán)重情況下輸出0~1之間的中間電壓值還會(huì)使下一級(jí) 產(chǎn)生亞穩(wěn)態(tài)) 12、對(duì)跨時(shí)域數(shù)據(jù)的處理 ?核心就是要保證下級(jí)時(shí)鐘對(duì)上級(jí)數(shù)據(jù)采樣的setup時(shí)間或hold時(shí)間滿足要求,即盡量避免亞穩(wěn)態(tài)的發(fā)生和傳播。但是,只要系統(tǒng)中有異步元件,亞穩(wěn)態(tài)就無(wú)法避免。推薦下面的方法來(lái)解決異步時(shí)鐘域數(shù)據(jù)同步問題: (1)用觸發(fā)器打兩拍
(2)異步FIFO或DPRAM 因?yàn)楫惒紽IFO或DPRAM使用格雷碼計(jì)數(shù)器設(shè)計(jì)讀寫地址的指針,所以它可以很 好地避免亞穩(wěn)態(tài)的發(fā)生。 (3)調(diào)整時(shí)鐘相位(難度大,適用面有限)

總結(jié)

以上是生活随笔為你收集整理的《FPGA入门教程》看书随笔——数字电路设计入门的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。