精品国产一区二区三区一级片,AAAAA日本无码人妻,天天一级毛片免费观看,一级毛片视频免费观看完整版,日韩无码一级二级,全程免费的特性一级毛片,久久久久国产一区二区三区,最一级黄片美国百花视频在现观看,国产一区精品在线免费看

首頁 > 要聞 >

全球速看:09-寄存器

2023-05-24 23:38:10 博客園


(資料圖片)

1.寄存器

組合邏輯存在一個(gè)最大的缺點(diǎn)就是存在競爭與冒險(xiǎn),系統(tǒng)會(huì)產(chǎn)生不定態(tài);使用時(shí)序邏輯電路就會(huì)極大的改善這種情況寄存器具有存儲(chǔ)功能,一般是由D觸發(fā)器構(gòu)成,由時(shí)鐘脈沖控制,每個(gè)D觸發(fā)器能夠存儲(chǔ)一位二進(jìn)制碼D觸發(fā)器工作原理:在一個(gè)脈沖信號(hào)(一般為晶振產(chǎn)生的時(shí)鐘脈沖)上升沿或者是下降沿作用下,將信號(hào)從輸入端D送到輸出端Q,如果時(shí)鐘脈沖的邊沿信號(hào)未出現(xiàn),即使輸入信號(hào)改變,輸出信號(hào)仍保持原來的值,且寄存器擁有復(fù)位清零功能,其復(fù)位又分為同步復(fù)位和異步復(fù)位.

2.FPGA設(shè)計(jì)KEY1控制LED6,按鍵按下,LED燈點(diǎn)亮;按鍵松開,LED燈熄滅2.1 框圖和波形圖時(shí)鐘和復(fù)位信號(hào)n-表示低電平有效2.2 同步復(fù)位的D觸發(fā)器和異步復(fù)位的D觸發(fā)器同步復(fù)位同步是工作時(shí)鐘同步復(fù)位的意思,當(dāng)時(shí)鐘的上升沿或者下降沿到來時(shí),檢測(cè)到按鍵的復(fù)位操作才是有效的同步復(fù)位理解:復(fù)位信號(hào)與時(shí)鐘上升沿不同步,此時(shí),輸出不會(huì)隨復(fù)位信號(hào)的變化立即變化,直到時(shí)鐘上升沿采樣到復(fù)位信號(hào),才發(fā)生變化異步復(fù)位異步復(fù)位就是工作時(shí)鐘不同步的意思,復(fù)位信號(hào)不關(guān)心時(shí)鐘信號(hào),當(dāng)寄存器收到復(fù)位信號(hào)的時(shí)候,立即執(zhí)行復(fù)位,不用管是不是時(shí)鐘上升沿時(shí)序邏輯過濾毛刺

使用按鍵控制LED燈,按鍵輸入的信號(hào)輸入給輸出信號(hào),假如在某個(gè)時(shí)鐘周期內(nèi)輸入信號(hào)產(chǎn)生了毛刺:*對(duì)于組合邏輯,輸出也會(huì)有毛刺

對(duì)于時(shí)序邏輯電路,寄存器在時(shí)鐘上升沿進(jìn)行采樣,采樣之后,一個(gè)周期內(nèi)都維持一樣的值,兩個(gè)上升沿之間的毛刺現(xiàn)象都可以被過濾掉,提高電路的可靠性時(shí)序邏輯延遲打拍組合邏輯電路,時(shí)鐘和數(shù)據(jù)對(duì)齊,時(shí)鐘上升沿采集到的是時(shí)鐘上升沿對(duì)應(yīng)的值時(shí)序邏輯電路,時(shí)鐘和數(shù)據(jù)對(duì)齊,默認(rèn)采集到的是上升沿對(duì)應(yīng)數(shù)據(jù)前一時(shí)刻的值

2.3 RTL

時(shí)鐘,晶振輸入,50MHz復(fù)位信號(hào),低電平有效,由板卡的復(fù)位按鍵輸入
module filp_flop(  input wire sys_clk,  input wire sys_rst_n,  input wire key_in,    output reg led_out);      // 同步復(fù)位  always@(posedge sys_clk)    if(sys_rst_n == 1"b0)      let_out <= 1"b0;    else       let_out <= key_in;endmodule
創(chuàng)建quartus項(xiàng)目,添加文件,進(jìn)行全編譯
module filp_flop(  input wire sys_clk,  input wire sys_rst_n,  input wire key_in,    output reg led_out);      // 異步復(fù)位  always@(posedge sys_clk or negedge sys_rst_n)    if(sys_rst_n == 1"b0)      let_out <= 1"b0;    else       let_out <= key_in;endmodule

推薦使用異步復(fù)位

2.4 Testbench
// 同步復(fù)位`timescale 1ns/1nsmodule tb_flip_flop();  reg sys_clk;  reg sys_rst_n;  reg key_in;  initial begin    sys_clk <= 1"b1;    sys_rst_n <= 1"b0;    key_in <= 1"b0;    #20;    sys_rst_n <=1"b1;    #210;    sys_rst_n <=1"b0;    #40;    sys_rst_n <=1"b1;  end  initial begin    $timeformat(-9,0,"ns",6);    $monitor("@time:%t:key_in=%b,led_out=%b",$time,key_in,led_out);  end  // 模擬系統(tǒng)時(shí)鐘  always begin    #10;    sys_clk = ~sys_clk;  end  // 時(shí)鐘周期是20ns,保證每次數(shù)據(jù)變化小于時(shí)鐘周期,避免差生毛刺  always #20 key_in <= {$random} % 2;    flip_flop flip_flop_inst(    .sys_clk (sys_clk),    .sys_rst_n (sys_rst_n),    .key_in (key_in),    .led_out (led_out)  );endmodule  
加載仿真文件,進(jìn)行仿真設(shè)置同步復(fù)位異步復(fù)位

關(guān)鍵詞

相關(guān)推薦