上升沿檢測電路
01
題目:對于8位向量中的每個位,檢測輸入信號何時從一個時鐘周期的0變為下一個時鐘周期的1(類似于上升沿檢測)。應在從0到1的跳變發生后的周期內設置輸出位。
以下為例子, 為了清楚起見,分別顯示了in [1]和pedge [1]。
module top_module(
input clk,
input [7:0] in,
output reg [7:0] pedge);
reg [7:0] d_last;
always @(posedge clk) begin
d_last <= in;
pedge <= in & ~d_last; // A positive edge occurred if input was 0 and is now 1.
end
endmodule
第九行 d_last <= in ; 是記錄信號in上一個cycle的狀態;
第十行 pedge <= in & ~d_last; 檢測上升沿,簡答來說就是檢測input由0變1。
雙邊沿檢測電路
02
題目:對于8位向量中的每個位,檢測輸入信號何時從一個時鐘周期更改為下一個時鐘周期(檢測任何邊沿)。應在從0到1的跳變發生后的周期內設置輸出位。
module top_module (
input clk,
input [7:0] in,
output [7:0] anyedge
);
reg [7:0] d_old;
always@(posedge clk)begin
d_old <= in;
anyedge <= d_old^in;
end
endmodule
第八行 d_old <= in ; 是記錄信號in上一個cycle的狀態;
第九行 anyedge <= d_old^ in ; 即現在的信號in與上一個狀態不一樣的話,輸出1(異或是兩個信號不一樣置1),這樣該電路就可以雙邊沿檢測。
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
檢測電路
+關注
關注
13文章
308瀏覽量
58185 -
Verilog
+關注
關注
28文章
1351瀏覽量
110134 -
狀態機
+關注
關注
2文章
492瀏覽量
27552 -
時鐘域
+關注
關注
0文章
52瀏覽量
9536
發布評論請先 登錄
相關推薦
FPGA設計中的邊沿檢測問題
在同步電路設計中,邊沿檢測是必不可少的!后一種方法所耗的資源要比前一種方法多(一個觸發器),但是就可以大大提高可靠性,這絕對是物有所值!!
發表于 02-01 10:53
?980次閱讀
FPGA學習系列:12. 邊沿檢測設計
設計背景: 在我們工程設計中,有時會需要到上升沿和下降沿這么一個說法,通過上升沿和下降沿來驅動一個電路,那么學習邊沿檢測就非常的重要了。 設計原理 : 在學習邊沿
Verilog系統函數和邊沿檢測
“ 本文主要分享了在Verilog設計過程中一些經驗與知識點,主要包括Verilog仿真時常用的系統任務、雙向端口的使用(inout)、邊沿檢測”
評論