chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Verilog邊沿檢測(cè)的基本原理和代碼實(shí)現(xiàn)

CHANBAEK ? 來源:FPGA入門到精通 ? 作者:未可知摩爾 ? 2023-05-12 17:05 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

本文將從Verilog和邊沿檢測(cè)的基本概念入手,介紹Verilog邊沿檢測(cè)的原理和應(yīng)用代碼示例。

一、什么是Verilog邊沿檢測(cè)?

Verilog邊沿檢測(cè)是數(shù)字電路設(shè)計(jì)中常用的方法之一。 它是一種檢測(cè)輸入信號(hào)邊沿變化的技術(shù),用于實(shí)現(xiàn)時(shí)序控制、數(shù)據(jù)采集和數(shù)字信號(hào)處理等功能。

Verilog邊沿檢測(cè)可以通過posedge、negedge和edge等敏感表達(dá)式來實(shí)現(xiàn),其基本原理是通過觸發(fā)器檢測(cè)輸入信號(hào)的狀態(tài)變化,并觸發(fā)相應(yīng)的邏輯操作。

二、Verilog邊沿檢測(cè)的實(shí)現(xiàn)原理

Verilog邊沿檢測(cè)的實(shí)現(xiàn)原理可以通過以下幾個(gè)步驟來說明:

1、定義輸入信號(hào)和輸出信號(hào)

在開始 Verilog 邊沿檢測(cè)的實(shí)現(xiàn)之前,首先需要定義輸入信號(hào)和輸出信號(hào)。 通常情況下,輸入信號(hào)是從外部輸入的數(shù)字信號(hào),而輸出信號(hào)是根據(jù)輸入信號(hào)經(jīng)過模塊處理后所得到的數(shù)字信號(hào)。

2、設(shè)計(jì)邊沿檢測(cè)模塊

定義好輸入信號(hào)和輸出信號(hào)后,接下來就需要設(shè)計(jì)邊沿檢測(cè)模塊。 這個(gè)模塊通常由一個(gè)或多個(gè)“always”塊組成。 這些語句塊會(huì)根據(jù)輸入信號(hào)的狀態(tài)變化以及敏感表達(dá)式的定義來執(zhí)行相應(yīng)的操作,從而實(shí)現(xiàn)邊沿檢測(cè)。

3、選擇敏感表達(dá)式類型

在設(shè)計(jì)邊沿檢測(cè)模塊時(shí),需要選擇使用哪種敏感表達(dá)式類型。 Verilog中提供了多種邊沿檢測(cè)的實(shí)現(xiàn)方式,如posedge、negedge等。 其中,posedge表示上升沿檢測(cè),negedge表示下降沿檢測(cè)。 用戶可以根據(jù)實(shí)際需求選擇適合的邊沿檢測(cè)方式。

三、Verilog邊沿檢測(cè)的代碼實(shí)現(xiàn)

下面是一個(gè)基于posedge敏感表達(dá)式的Verilog邊沿檢測(cè)實(shí)現(xiàn)的代碼示例。 該代碼實(shí)現(xiàn)了一個(gè)簡(jiǎn)單的計(jì)數(shù)器,用于在信號(hào)上升沿時(shí)自增并輸出計(jì)數(shù)值。

module edge_detect(
    input clk,
    input reset,
    input signal,
    output reg [31:0] period,
    output reg [31:0] duty_cycle
);

reg signal_delay;
wire signal_pos_edge;
wire signal_neg_edge;
reg [31:0] count;
reg [31:0] last_count;
reg [31:0] high_time;
reg [31:0] low_time;
reg [1:0] state;

//上升沿 上一個(gè)周期信號(hào)為低,當(dāng)前周期信號(hào)為高,即上升
assign signal_pos_edge = (~signal_delay )&signal;
//下降沿 上一個(gè)周期信號(hào)為高,當(dāng)前周期信號(hào)為低,即下降
assign signal_neg_edge = signal_delay&(~signal);  

always @(posedge clk or posedge reset) begin
    if (reset) begin
        signal_delay <= 'b0;
        count <= 0;
        last_count <= 0;
        high_time <= 0;
        low_time <= 0;
        state <= 2'b00;
        period <= 0;
        duty_cycle <= 0;
    end else begin
        signal_delay <= signal;
        count <= count + 1;
        case (state)
            default: begin // wait for rising edge
                if (signal) begin
                    last_count <= count - 1;
                    state <= 2'b01;
                end
            end
            2'b01: begin // wait for falling edge
                if (!signal) begin
                    high_time <= count - last_count - 1;
                    state <= 2'b10;
                end
            end
            2'b10: begin // wait for rising edge
                if (signal) begin
                    low_time <= count - last_count - high_time - 1;
                    period <= (low_time > 'b0)&&(high_time > 'b0) ? high_time + low_time : 'b0;
                    duty_cycle <= (period > 'b0) ? low_time * 100 / period : 'b0 ;
                    last_count <= count - 1;
                    state <= 2'b01;
                end
            end
        endcase
    end
end

endmodule

在這個(gè)代碼示例中,我們定義了一個(gè)邊沿檢測(cè)模塊,包括輸入信號(hào)clk、reset和signal,以及輸出信號(hào)period和duty_cycle。

注意:代碼中的除法,在正式工程中不能這么用哦,需要自己實(shí)現(xiàn)一個(gè)除法器才行。

這個(gè)模塊的設(shè)計(jì)原理是:在輸入信號(hào)上升沿時(shí)開始計(jì)時(shí),直到下降沿出現(xiàn),然后停止計(jì)時(shí)并計(jì)算周期和占空比。

三、Verilog邊沿檢測(cè)的應(yīng)用實(shí)例

我們可以使用上述代碼示例來實(shí)現(xiàn)一個(gè)簡(jiǎn)單的時(shí)序分析電路。 下面是一個(gè)測(cè)試應(yīng)用實(shí)例,該實(shí)例使用上述邊沿檢測(cè)模塊來計(jì)算輸入信號(hào)的周期和占空比。

module testbench;

reg clk;
reg reset;
reg signal;
wire [31:0] period;
wire [31:0] duty_cycle;

edge_detect uut(
    .clk(clk),
    .reset(reset),
    .signal(signal),
    .period(period),
    .duty_cycle(duty_cycle)
);

initial begin
    clk = 0;
    reset = 1;
    signal = 0;
    
    #10 reset = 0;
    #100 signal = 1;
    #100 signal = 0;
    #100 signal = 1;
    #100 signal = 0;
    #100 signal = 1;
    #100 signal = 0;
    #100 signal = 1;
    #100 signal = 0;
    
    #100 $finish;
end

always #5 clk = ~clk;

endmodule

在這個(gè)代碼示例中,我們定義了一個(gè)testbench,包括輸入信號(hào)clk、reset和signal,以及邊沿檢測(cè)模塊uut,編寫了測(cè)試邏輯,可以測(cè)試該模塊的性能和正確性。

仿真結(jié)果:

四、總結(jié)

Verilog邊沿檢測(cè)是一種常用的數(shù)字信號(hào)處理方法,可用于時(shí)序分析、數(shù)據(jù)采集和數(shù)字信號(hào)處理等領(lǐng)域。 本文介紹了Verilog邊沿檢測(cè)的基本原理和代碼實(shí)現(xiàn),并給出了一個(gè)簡(jiǎn)單的例子來說明其應(yīng)用。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Verilog
    +關(guān)注

    關(guān)注

    29

    文章

    1367

    瀏覽量

    112233
  • 數(shù)字信號(hào)
    +關(guān)注

    關(guān)注

    2

    文章

    997

    瀏覽量

    48331
  • 時(shí)序
    +關(guān)注

    關(guān)注

    5

    文章

    397

    瀏覽量

    37934
  • 輸出信號(hào)
    +關(guān)注

    關(guān)注

    0

    文章

    302

    瀏覽量

    12231
  • 邊沿檢測(cè)
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    7899
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    頻率設(shè)計(jì):頻率計(jì)基本原理

    本帖最后由 eehome 于 2013-1-5 10:04 編輯 這個(gè)資料主要是介紹用verilog語言寫頻率計(jì)的,介紹了頻率計(jì)基本原理
    發(fā)表于 11-29 18:20

    電流檢測(cè)電阻的基本原理

    電流檢測(cè)電阻的基本原理簡(jiǎn)單采樣電路的實(shí)現(xiàn)
    發(fā)表于 01-29 06:26

    串口通信基本原理是什么

    目錄華大單片機(jī)---串口通信1.串口通信基本原理(1)串口通信原理:(2)華大的串口通信:(3)簡(jiǎn)單介紹下:(4)多字符發(fā)送:2.初始化代碼3.發(fā)送代碼:4.接收中斷代碼華大單片機(jī)—串
    發(fā)表于 07-14 07:26

    反電動(dòng)勢(shì)過零檢測(cè)法的基本原理是什么?

    反電動(dòng)勢(shì)過零檢測(cè)法的基本原理是什么?反電動(dòng)勢(shì)過零檢測(cè)有哪些缺點(diǎn)?正向反電動(dòng)勢(shì)過零點(diǎn)有什么變化?
    發(fā)表于 07-21 06:11

    關(guān)于FPGA進(jìn)行外部邊沿檢測(cè),檢測(cè)不準(zhǔn)確問題?

    程序邊沿檢測(cè)下降沿并統(tǒng)計(jì)數(shù)量(數(shù)量到達(dá)2后重新計(jì)數(shù),并發(fā)送動(dòng)作信號(hào)),但是最終發(fā)現(xiàn)檢測(cè)結(jié)果不準(zhǔn)確,有時(shí)候能檢測(cè)到,有時(shí)候檢測(cè)不到。萬分感謝您
    發(fā)表于 08-21 12:58

    PWM控制的基本原理是什么

    PWM控制的基本原理是什么?如何讓逆變器輸出為等幅矩形波呢?如何實(shí)現(xiàn)低通濾波器呢?
    發(fā)表于 10-22 07:06

    PIC16F15323單片機(jī)的基本原理是什么

    PIC16F15323單片機(jī) (ADC+溫度傳感器)--匯編+C語言1 基本原理1.1 AD原理1.2 溫度儲(chǔ)傳感器原理1.3 FVR原理2 實(shí)現(xiàn)代碼1 基本原理1.1 AD原理見前面的文章1.2
    發(fā)表于 11-24 07:00

    PIC16F15323單片機(jī)的基本原理

    PIC16F15323單片機(jī) (ADC)1 基本原理1.1 寄存器介紹1.2 寄存器匯總1.3 ADC采集實(shí)現(xiàn)框圖2 實(shí)現(xiàn)代碼1 基本原理1.1 寄存器介紹1.2 寄存器匯總1.3 A
    發(fā)表于 11-24 07:05

    檢測(cè)油中氣體的基本原理

    檢測(cè)油中氣體的基本原理檢測(cè)原理上講,在線檢測(cè)氣體的氣敏元件大致可以劃分為三大類:氣敏傳感器、熱導(dǎo)池以及紅外光學(xué)傳感器。
    發(fā)表于 03-06 17:22 ?990次閱讀

    聲發(fā)射檢測(cè)基本原理

    聲發(fā)射檢測(cè)基本原理 聲發(fā)射檢測(cè)基本原理就是由外部條件(如力、熱、電、磁等)的作用而使物體產(chǎn)生并發(fā)射聲信號(hào),接收這些信
    發(fā)表于 10-22 14:13 ?5609次閱讀
    聲發(fā)射<b class='flag-5'>檢測(cè)</b>的<b class='flag-5'>基本原理</b>

    聲發(fā)射檢測(cè)基本原理

    聲發(fā)射檢測(cè)基本原理 聲發(fā)射檢測(cè)的原理如圖1.1所示,從聲發(fā)射源發(fā)射的彈性波最終傳播到達(dá)材料的表面,引起可以用聲發(fā)射傳感器
    發(fā)表于 11-15 12:20 ?5374次閱讀
    聲發(fā)射<b class='flag-5'>檢測(cè)</b>的<b class='flag-5'>基本原理</b>

    用移位寄存器實(shí)現(xiàn)邊沿檢測(cè)的技巧

    本文記錄一下關(guān)于用移位寄存器實(shí)現(xiàn)邊沿檢測(cè)的技巧。要學(xué)會(huì)硬件思維式的“模塊式”讀寫代碼,那么請(qǐng)多看別人的代碼,并用ISE或者VIVADO綜合出
    發(fā)表于 04-15 10:26 ?3510次閱讀

    Verilog系統(tǒng)函數(shù)和邊沿檢測(cè)

    “ 本文主要分享了在Verilog設(shè)計(jì)過程中一些經(jīng)驗(yàn)與知識(shí)點(diǎn),主要包括Verilog仿真時(shí)常用的系統(tǒng)任務(wù)、雙向端口的使用(inout)、邊沿檢測(cè)
    的頭像 發(fā)表于 03-15 13:34 ?2720次閱讀

    Verilog實(shí)現(xiàn)邊沿檢測(cè)的原理

    邊沿檢測(cè)大致分為:上升沿檢測(cè),下降沿檢測(cè)和,雙沿檢測(cè)。原理都是通過比輸入信號(hào)快很多的時(shí)鐘去采集信號(hào),當(dāng)出現(xiàn)兩個(gè)連續(xù)的采集值不等的時(shí)候就是
    的頭像 發(fā)表于 06-28 15:19 ?3890次閱讀
    <b class='flag-5'>Verilog</b><b class='flag-5'>實(shí)現(xiàn)</b><b class='flag-5'>邊沿</b><b class='flag-5'>檢測(cè)</b>的原理

    RNN的基本原理實(shí)現(xiàn)

    RNN,即循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network),是一種特殊類型的人工神經(jīng)網(wǎng)絡(luò),專門設(shè)計(jì)用于處理序列數(shù)據(jù),如文本、語音、視頻等。以下是對(duì)RNN基本原理實(shí)現(xiàn)的介紹: 一
    的頭像 發(fā)表于 11-15 09:49 ?1425次閱讀