久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

第二章 FPGA知識(shí)大串講02_知識(shí)串聯(lián)

 啟云_9137 2022-03-25

作者:潘文明

本文為明德?lián)P原創(chuàng)文章,,轉(zhuǎn)載請(qǐng)注明出處!

在上一篇文章中,,我們概括地講述了FPGA的一些學(xué)習(xí)誤區(qū),。本文我們將FPGA的關(guān)鍵知識(shí)串聯(lián)起來,系統(tǒng)地介紹各個(gè)知識(shí)點(diǎn)所處的層次和位置,,為后面幾仿篇文章的詳細(xì)講解做好鋪墊,。

第1節(jié) FPGA的基本電路結(jié)構(gòu)

文章圖片1

首先,我們來講解一下FPGA的基本電路結(jié)構(gòu),。請(qǐng)看上圖中左邊紅色方框,,該方框內(nèi)包含了組合邏輯電路以及一個(gè)D觸發(fā)器。組合邏輯里可能是加法器,、減法器,、選擇器,甚至是什么都沒有,,就是連線,;組合邏輯的輸出將連接到D觸發(fā)器的輸入端;D觸發(fā)器在時(shí)鐘的驅(qū)動(dòng)下,,將組合邏輯的運(yùn)算結(jié)構(gòu),,輸出到D觸發(fā)器的輸出端。

這就是一個(gè)FPGA的基本電路結(jié)構(gòu),,而這個(gè)電路結(jié)構(gòu)則與VERILOG中的一個(gè)ALWAYS對(duì)應(yīng),,如下面的代碼

文章圖片2

上面代碼在綜合器的作用下,其綜合的FPGA電路結(jié)構(gòu),,也是組合邏輯+D觸發(fā)器的形式。其中組合邏輯由比較器(cnt==0,、cnt==1,、cnt==2就是比較器)、選擇器(從1,、2,、3或者保持不變中選擇)等組成;D觸發(fā)器的時(shí)鐘就是代碼中的clk,,輸入則是組合邏輯的結(jié)果,,輸出則是信號(hào)cnt。

有讀者可能會(huì)對(duì)基本電路結(jié)構(gòu)有疑問,,難道所有代碼都這樣結(jié)構(gòu)嗎,?例如下面代碼中的add_cnt0和end_cnt0信號(hào),它是由assign設(shè)計(jì)的,它們就沒有D觸發(fā)器,。

文章圖片3

單純只看add_cnt0和end_cnt0的代碼,,貌似是沒有D觸發(fā)器,但仔細(xì)看第5行和第6行,,這個(gè)兩個(gè)信號(hào)是參與了判斷(事實(shí)就是選擇器),,決定了D觸發(fā)器的輸出cnt0。即從add_cnt0到cnt0之間,,就是組合邏輯+D觸發(fā)器的結(jié)構(gòu),。

FPGA代碼是由一個(gè)又一個(gè)ALWAYS代碼組成的,這說明FPGA的絕大部分電路,,就是由一個(gè)又一個(gè)“組合邏輯+D觸發(fā)器”的電路組合起來的,,如下圖

文章圖片4

上面這種結(jié)構(gòu)是我們?cè)O(shè)計(jì)的基本單位。這種結(jié)構(gòu)還有一種隱含的意思:組合邏輯決定電路的運(yùn)算及功能,,D觸發(fā)器就像一個(gè)節(jié)點(diǎn),,將運(yùn)算結(jié)果保存下來,為下一級(jí)運(yùn)算作準(zhǔn)備,。FPGA代碼設(shè)計(jì)過程,,就像是設(shè)計(jì)一個(gè)功能,保存一下,,設(shè)計(jì)下一個(gè)功能,,保存一下,。文字難以描述,,請(qǐng)讀者認(rèn)真體會(huì)體會(huì),。

還有注意的是,,上面推薦的是“組合邏輯+D觸發(fā)器”結(jié)構(gòu)思維,,不要使用“D觸發(fā)器+組合邏輯”思維,,這種思維是不正確的。

文章圖片5

再看上圖,,為什么說FPGA代碼里,,各個(gè)ALWAYS是并行的呢?從上圖就很容易理解了,。圖中可以看到,,三個(gè)D觸發(fā)器都連接時(shí)鐘CLK,。當(dāng)時(shí)鐘CLK的上升沿的時(shí)候,,這三個(gè)D觸發(fā)器將同時(shí)受到此信息,,同時(shí)將D觸發(fā)器的輸入值給到輸出,。這些電路都是同時(shí)工作的,,不存在誰先誰后的,。沒有所謂說這個(gè)電路在工作,,另一個(gè)不在工作的情況,。

這個(gè)就是FPGA 的基本電路結(jié)構(gòu),,讀者務(wù)必做到非常清楚這個(gè)電路結(jié)構(gòu),,這是我們后面描述的一個(gè)重要基礎(chǔ),。

第2節(jié) FPGA的知識(shí)點(diǎn)

我們?cè)贔PGA基礎(chǔ)電路結(jié)構(gòu)圖的基礎(chǔ),,將FPGA的所有知識(shí)點(diǎn)串聯(lián)起來,然后通過4篇文章,,逐一進(jìn)行詳細(xì)的講解,。

文章圖片6

1. 先講述組合邏輯部分,。組合邏輯是由加法器,、減法器,、比較器,、選擇器等電路組成的,所以一開始我們要理解組合邏輯的電路有哪些類型,;然后據(jù)此掌握這些類型的VERILOG代碼的寫法;接下來討論這些組合邏輯的時(shí)序,,引出組合邏輯才有的競爭和冒險(xiǎn)現(xiàn)象,最后提出競爭和冒險(xiǎn)的解決方法。

文章圖片7

2. 完成組合邏輯的講述后,我們將討論D觸發(fā)器,。首先會(huì)講解D觸發(fā)器的結(jié)構(gòu),,進(jìn)而會(huì)講述D觸發(fā)器的時(shí)序,討論D觸發(fā)器時(shí)序與組合邏輯的異同,。從D觸發(fā)器時(shí)序中,,有一個(gè)非常重要的概念:建立時(shí)間和保持時(shí)間。如果建立時(shí)間和保持時(shí)間不滿足,,就會(huì)有一個(gè)叫亞穩(wěn)態(tài)的情況,。亞穩(wěn)態(tài)有什么危害,亞穩(wěn)態(tài)出現(xiàn)的場合有哪些,。在明確了出現(xiàn)的場合后,,就要想辦法解決亞穩(wěn)態(tài)問題,提出了亞穩(wěn)態(tài)的解決方法,。其解決方法分兩種:一種是單一信號(hào),,也就是一比特信號(hào)的解決方法;還有一種是多比特信號(hào)的解決方法,。

文章圖片8

3. 講完了D觸發(fā)器之后,,我們將把組合邏輯和D觸發(fā)器聯(lián)合起來,。前面已經(jīng)講魔神,,組合邏輯+D觸發(fā)器是一個(gè)正確的的電路結(jié)構(gòu)。有正確,,那么就不正確,根據(jù)收集讀者的反饋情況,,我們列出了一些經(jīng)常會(huì)犯的、不合理的結(jié)構(gòu),。之后將討論這個(gè)基本結(jié)構(gòu)的時(shí)序,;接下來是講述如何用VERILOG來實(shí)現(xiàn),。實(shí)現(xiàn)的話,,就有行為描述以及狀態(tài)機(jī)的實(shí)現(xiàn)這幾種方法了,。

文章圖片9

4. 最后一部分,我們將單獨(dú)對(duì)時(shí)鐘進(jìn)行講解,。時(shí)鐘是FPGA的一個(gè)基礎(chǔ),是一個(gè)很重要的概念,,是FPGA設(shè)計(jì)的重點(diǎn)和難點(diǎn)。首先我們將講述時(shí)鐘的概念,;然后是時(shí)鐘抖動(dòng)SKEW和時(shí)鐘頻率。經(jīng)常有被問到:我這個(gè)電腦CPU能跑1G,,他那個(gè)電腦CPU能跑2G,這就是使用頻率,。那這個(gè)頻率取決于什么因素,為什么有些跑得快,,有些跑得慢,?這個(gè)問題將引出關(guān)鍵路徑的概念。為了提高時(shí)鐘頻率,,我們可以怎么做,?流水線的設(shè)計(jì)!?。?/p>

以上就是我們FPGA 的所有知識(shí)點(diǎn),,將其展示到一張圖,方便讀者使用,。

文章圖片10 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,,謹(jǐn)防詐騙,。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào),。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多