首頁 > 要聞 >

          全球速看:09-寄存器

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


          (資料圖片)

          1.寄存器

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

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

          使用按鍵控制LED燈,按鍵輸入的信號輸入給輸出信號,假如在某個時鐘周期內輸入信號產生了毛刺:*對于組合邏輯,輸出也會有毛刺

          對于時序邏輯電路,寄存器在時鐘上升沿進行采樣,采樣之后,一個周期內都維持一樣的值,兩個上升沿之間的毛刺現象都可以被過濾掉,提高電路的可靠性時序邏輯延遲打拍組合邏輯電路,時鐘和數據對齊,時鐘上升沿采集到的是時鐘上升沿對應的值時序邏輯電路,時鐘和數據對齊,默認采集到的是上升沿對應數據前一時刻的值

          2.3 RTL

          時鐘,晶振輸入,50MHz復位信號,低電平有效,由板卡的復位按鍵輸入
          module filp_flop(  input wire sys_clk,  input wire sys_rst_n,  input wire key_in,    output reg led_out);      // 同步復位  always@(posedge sys_clk)    if(sys_rst_n == 1"b0)      let_out <= 1"b0;    else       let_out <= key_in;endmodule
          創建quartus項目,添加文件,進行全編譯
          module filp_flop(  input wire sys_clk,  input wire sys_rst_n,  input wire key_in,    output reg led_out);      // 異步復位  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

          推薦使用異步復位

          2.4 Testbench
          // 同步復位`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  // 模擬系統時鐘  always begin    #10;    sys_clk = ~sys_clk;  end  // 時鐘周期是20ns,保證每次數據變化小于時鐘周期,避免差生毛刺  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  
          加載仿真文件,進行仿真設置同步復位異步復位

          關鍵詞

          相關推薦

          亚洲人成色7777在线观看| 国产亚洲精品国产福利在线观看 | 亚洲AV无码日韩AV无码导航| 亚洲裸男gv网站| 亚洲一本大道无码av天堂| 亚洲6080yy久久无码产自国产| 亚洲人配人种jizz| 日韩亚洲产在线观看| 亚洲三级在线观看| 亚洲综合一区国产精品| 亚洲一区AV无码少妇电影| 一本色道久久综合亚洲精品蜜桃冫| 亚洲AV一二三区成人影片| 亚洲乱码一二三四区麻豆| 亚洲av极品无码专区在线观看| 亚洲不卡中文字幕| 亚洲卡一卡二卡乱码新区| 国产亚洲精aa在线看| 亚洲精品无码不卡在线播放| 亚洲乱码av中文一区二区| 亚洲精品乱码久久久久蜜桃| 亚洲aⅴ无码专区在线观看春色 | 亚洲AV一宅男色影视| 亚洲AV成人一区二区三区AV| 亚洲专区在线视频| 亚洲天堂中文字幕在线观看| jlzzjlzz亚洲jzjzjz| 亚洲欧美日韩综合久久久久| 国产AV无码专区亚洲AV蜜芽| 日本亚洲中午字幕乱码| 亚洲美女在线国产| 亚洲精品无码不卡在线播HE| 亚洲国产一区二区三区青草影视| 久久久久亚洲精品无码蜜桃| 亚洲中文无码av永久| 亚洲αⅴ无码乱码在线观看性色| 精品久久久久久亚洲综合网| 亚洲午夜国产片在线观看| 亚洲国产成人片在线观看| 亚洲系列国产精品制服丝袜第| 亚洲一区二区三区久久|