最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

D觸發(fā)器

2022-12-12 08:50 作者:明德?lián)P易老師  | 我要投稿

本節(jié)的文檔編號(hào):001100000062

需要看對(duì)應(yīng)的視頻,請(qǐng)點(diǎn)擊視頻編號(hào):001100000069

1、本節(jié)主要介紹,時(shí)序邏輯的代碼,一般有兩種:同步復(fù)位時(shí)序邏輯和異步復(fù)位時(shí)序邏輯(本教學(xué)統(tǒng)一采用異步時(shí)鐘邏輯);D型觸發(fā)器的介紹,包括:D觸發(fā)器的結(jié)構(gòu)、波形、代碼以及如何看FPGA波形;時(shí)鐘的介紹,時(shí)鐘的意義,時(shí)鐘頻率和時(shí)鐘周期的換算;時(shí)序邏輯代碼和硬件的關(guān)系,即評(píng)估verilog代碼好壞的最基本標(biāo)準(zhǔn),不是看代碼行數(shù)而是看硬件;阻塞賦值和非阻塞賦值,前者位順序賦值,后者位同時(shí)賦值。
2、這是ALTERA和VIVADO文檔

6.2 D觸發(fā)器

數(shù)字電路中介紹了多種觸發(fā)器,如JK觸發(fā)器、D觸發(fā)器、RS觸發(fā)器、T觸發(fā)器等。在FPGA中使用的是最簡(jiǎn)單的觸發(fā)器——D觸發(fā)器。


6.2.1D觸發(fā)器結(jié)構(gòu)

圖1.3- 37是D觸發(fā)器的結(jié)構(gòu)圖,讀者可以將其視為一個(gè)芯片,該芯片擁有4個(gè)管腳,其中3個(gè)是輸入管腳:時(shí)鐘clk、復(fù)位rst_n、信號(hào)d;1個(gè)是輸出管腳:q。

該芯片的功能如下:當(dāng)給管腳rst_n給低電平(復(fù)位有效),即賦值為0時(shí),輸出管腳q處于低電平狀態(tài)。如果管腳rst_n為高電平,則觀(guān)察管腳clk的狀態(tài),當(dāng)clk信號(hào)由0變1即處于上升沿的時(shí)候,將此時(shí)d的值賦給q。若d是低電平,則q也是低電平;若d是高電平,則q也是高電平。



6.2.2D觸發(fā)器波形

圖1.3- 38為D觸發(fā)器的功能波形圖,該波形圖反映了D觸發(fā)器各個(gè)信號(hào)的變化情況,從左到右表示時(shí)間的走勢(shì)。從圖中可以看到時(shí)鐘信號(hào)有規(guī)律地進(jìn)行高低變化。

按照從左向右的順序觀(guān)察波形圖可以發(fā)現(xiàn):

???開(kāi)始狀態(tài)下,rst_n等于1,d等于0,q等于1。

???隨后rst_n由1變0,此時(shí)輸出信號(hào)q立即變成0。對(duì)應(yīng)的功能是:當(dāng)給管腳rst_n低電平,也就是賦值為0時(shí),輸出管腳q處于低電平狀態(tài)。

???在rst_n為0期間,即使在有時(shí)鐘或信號(hào)d發(fā)生變化的情況下q仍然保持為低電平。

???在rst_n由0變成1撤消復(fù)位后,q沒(méi)有立刻發(fā)生變化。

???在第4個(gè)時(shí)鐘上升沿時(shí),此時(shí)rst_n等于1,而d等于1,因此q變成了1。

???第5個(gè)時(shí)鐘上升沿,仍然是同樣情況,rst_n=1,d=1,因此q=1。

???在第6個(gè)時(shí)鐘上升沿,rst_n=1,d=0,因此q=0。

???第7~10個(gè)時(shí)鐘沿也是按同樣方式判斷。對(duì)應(yīng)的功能是:如果管腳rst_n為高電平,則觀(guān)察管腳clk,在clk由0變1即上升沿的時(shí)候,將現(xiàn)在d的值賦給q。若d是低電平,q也是低電平;若d是高電平,q也是高電平。


6.2.3??D觸發(fā)器代碼

首先,觀(guān)察如下這段時(shí)序邏輯的代碼:


從語(yǔ)法上分析該段代碼的功能為:該段代碼總是在“時(shí)鐘clk上升沿或者復(fù)位rst_n下降沿”的時(shí)候執(zhí)行一次。具體執(zhí)行方式如下:

1.? ?? ?如果復(fù)位rst_n=0,則q的值為0;

2.? ?? ?如果復(fù)位rst_n=1,則將d的值賦給q(注意,前提條件是時(shí)鐘上升沿的時(shí)候)。


上例的功能與本案例的功能是相同的:當(dāng)給管腳rst_n給低電平,也就是賦值為0時(shí),輸出管腳q就處于低電平狀態(tài)。如果管腳rst_n為高電平則觀(guān)察管腳clk,在clk由0變1即上升沿的時(shí)候,將現(xiàn)在d的值賦給q,d是低電平,q也是低電平,d是高電平,q也是高電平。

因此可以看出這段代碼的功能與D觸發(fā)器的功能是一樣的,即該代碼其實(shí)就是在描述一個(gè)D觸發(fā)器,也就是D觸發(fā)器的代碼。


前文中已經(jīng)講過(guò)在FPGA設(shè)計(jì)中可以用原理圖的形式來(lái)設(shè)計(jì),也可以用硬件描述語(yǔ)言來(lái)設(shè)計(jì)。當(dāng)用原理圖來(lái)設(shè)計(jì)時(shí)幾個(gè)D觸發(fā)器還可以忍受,但如果出現(xiàn)幾千幾萬(wàn)個(gè)D觸發(fā)器則必定是頭暈眼花,而用硬件描述語(yǔ)言Verilog則不存在這一問(wèn)題。


6.2.4?怎么看FPGA波形

下面來(lái)討論如下圖所示的波形,先請(qǐng)讀者觀(guān)察在第4個(gè)時(shí)鐘上升沿的時(shí)刻,思考一下此時(shí)看到的信號(hào)q的值是多少?是0還是1?或者觀(guān)察到的是q的上升沿?

首先明確一點(diǎn):Verilog代碼對(duì)應(yīng)的是硬件,因此應(yīng)該從硬件的角度來(lái)分析這個(gè)問(wèn)題。再來(lái)理清一下代碼的因果關(guān)系:先有時(shí)鐘上升沿,此為因,然后再將d的值賦給q,這才是結(jié)果。這個(gè)因果是有先后關(guān)系的,對(duì)于硬件來(lái)說(shuō)這個(gè)“先后”無(wú)論是多么地迅速,也一定會(huì)占用一定時(shí)間,所以q的變化會(huì)稍后于clk的上升沿。例如下圖就是硬件的實(shí)際變化情況。

圖1.3- 40中就很容易看出,第4個(gè)時(shí)鐘上升沿時(shí)刻對(duì)應(yīng)的q值為0,也就是變化前的值。上面的波形雖然更將近于實(shí)際,但這樣畫(huà)圖使這一過(guò)程非常復(fù)雜,且非必要操作。因此筆者給出的建議是只需掌握這種看波形規(guī)則,即時(shí)鐘上升沿看信號(hào),是看到變化之前的值。

所以第4個(gè)時(shí)鐘上升沿時(shí),看到q值為0;在第6個(gè)時(shí)鐘上升沿時(shí),看到q值為1;在第7個(gè)時(shí)鐘上升沿時(shí),看到q值為0;在第8個(gè)時(shí)鐘上升沿時(shí),看到q值為1;在第10個(gè)時(shí)鐘上升沿時(shí),看到q值為0。注意一下,復(fù)位信號(hào)是在系統(tǒng)開(kāi)始時(shí)刻或者出現(xiàn)異常時(shí)才使用,一般上電后就不會(huì)再次進(jìn)行復(fù)位,也可以認(rèn)為復(fù)位是一種特殊情況。


下面考慮正常使用的情況:無(wú)論是從功能上還是波形上,都可以看到信號(hào)q只在時(shí)鐘上升沿才變化,而絕對(duì)不會(huì)在中間發(fā)生變化。在一般的數(shù)字系統(tǒng)中大部分信號(hào)之間的傳遞都是在同一個(gè)時(shí)鐘下進(jìn)行的,即大部分都是同步電路??鐣r(shí)鐘的電路占比非常小,屬于特殊的異步電路。在本教材中,如果沒(méi)有提前說(shuō)明所有的案例、練習(xí)都默認(rèn)為同步電路。


下面具體分析每個(gè)時(shí)鐘下q信號(hào)的情況:

在rst_n由1變0時(shí),q立刻變成0。

在第2個(gè)時(shí)鐘上升沿,看到rst_n為0。按代碼功能,q仍然為0。

在第3個(gè)時(shí)鐘上升沿,看到rst_n為0。按代碼功能,q仍然為0。

在第4個(gè)時(shí)鐘上升沿,看到rst_n為1,d值為1,q值為0。按代碼功能,q變成1。

在第5個(gè)時(shí)鐘上升沿,看到rst_n為1,d值為1,q值為1。按代碼功能,q變成1。

在第6個(gè)時(shí)鐘上升沿,看到rst_n為1,d值為0,q值為1。按代碼功能,q變成0。

在第7個(gè)時(shí)鐘上升沿,看到rst_n為1,d值為1,q值為0。按代碼功能,q變成1。

在第8個(gè)時(shí)鐘上升沿,看到rst_n為1,d值為0,q值為1。按代碼功能,q變成0。

在第9個(gè)時(shí)鐘上升沿,看到rst_n為1,d值為0,q值為0。按代碼功能,q變成0。

在第10個(gè)時(shí)鐘上升沿,看到rst_n為1,d值為1,q值為0。按代碼功能,q變成1。


相關(guān)視頻:https://www.bilibili.com/video/BV1yf4y1R7gH?p=23


D觸發(fā)器的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
长武县| 高邑县| 嘉黎县| 苗栗市| 朝阳区| 久治县| 颍上县| 雷波县| 巴林右旗| 独山县| 军事| 久治县| 温泉县| 漠河县| 安吉县| 淮安市| 图们市| 大兴区| 连山| 靖远县| 重庆市| 玉树县| 焦作市| 塔城市| 唐山市| 宝丰县| 常山县| 公主岭市| 娄烦县| 共和县| 柳江县| 茂名市| 颍上县| 大厂| 巫溪县| 甘南县| 濮阳县| 梧州市| 中超| 玉屏| 诸暨市|