在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Verilog實現計數器在某個區間內循環計數,遞增遞減

鄒逸謙 ? 來源:鄒逸謙 ? 作者:鄒逸謙 ? 2022-04-07 17:33 ? 次閱讀

有時候在復雜系統設計的時候會用遇到讓“計數器在某個區間內來回不停遞增遞減”的問題。

話不多說,我們直接上代碼。

以0-10的循環計數為例。

工具:Modelsim, VScode

1.準備工作

首先在電腦上新建三個文件夾,SRC、TB以及SIM,用來放置源代碼、仿真文件以及仿真工程文件。

一定不要怕麻煩,特別是新手一定要注意代碼的分類工作!良好的分類能夠大大的提高工作效率。

剛接觸代碼量小,幾十行代碼一個文件就搞定了。但是隨著從業時間的增加,工作復雜度的提升,代碼的難度也會隨之提升,如果不做好分類管理,面對幾十個源代碼,十幾個仿真文件……崩潰是必然的。

請注意:一定不能有中文路徑!!

poYBAGJOrDmARXC8AAA2ZMhSnLM789.png這樣是錯誤的

pYYBAGJOrI6AVnMiAAA4VSHNhEg615.png應該這樣修改

2.工程建立

  • 在src文件中添加一個.v文件,名字自擬,最好能夠體現出文件的特性。
module test (
    input   sys_clk,
    input   rst_n,
   
);
    
    

    reg  flag;
    reg [7:0]  adc_data;
    
    always @(posedge sys_clk or negedge rst_n) begin
        if (~rst_n) 
            flag  <=  1'd0;
        else 
            case (flag)
                1'd0:
                    if (adc_data == 8'd9) // -1
                        flag  <=  1'd1;
                    else
                        flag  <=  1'd0;
                1'd1:
                    if (adc_data == 8'd1) // +1
                        flag  <=  1'd0;
                    else
                        flag  <=  1'd1;
                default: flag  <=  flag;
            endcase
    end

    always @(posedge sys_clk or negedge rst_n) begin
        if (~rst_n) begin
            adc_data  <=  8'd0;
        end
        else if (flag == 1'd0)
            adc_data  <=  adc_data + 8'd1;
        else if (flag == 1'd1)
            adc_data  <=  adc_data - 8'd1;
        else
            adc_data  <=  adc_data;
    end

    

endmodule 
  • 在tb文件夾中新建文件,給出仿真所需要的激勵。我們此次所需的只有時鐘和復位。時鐘設置為50Mhz,復位1000ns。
`timescale 1 ns /1 ps
module tb_test;
reg  sys_clk;
reg  rst_n;


test  u_tb_test(
    
    .sys_clk    (sys_clk),
    .rst_n      (rst_n)
    
);
  
   initial begin
   
     sys_clk  = 0;
   
     rst_n    = 0;
    #1000;
    rst_n  =  1;
    #20000;
   end
  always  #10  sys_clk = ~ sys_clk;

endmodule
  • 在sim文件夾中新建一個Modelsim仿真工程,添加src,tb中的文件,此過程不再展示。

3.仿真驗證

仿真1us,觀察波形。實現了0-10直接的循環計數,設計成功。

poYBAGJOr5qAFlL0AACTavGPYfo707.png

審核編輯:符乾江

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • FPGA
    +關注

    關注

    1643

    文章

    21983

    瀏覽量

    614672
  • 仿真分析
    +關注

    關注

    3

    文章

    106

    瀏覽量

    33892
收藏 人收藏

    評論

    相關推薦
    熱點推薦

    AN-831: 使用ADuC702x系列實現計數器

    電子發燒友網站提供《AN-831: 使用ADuC702x系列實現計數器.pdf》資料免費下載
    發表于 01-14 16:28 ?0次下載
    AN-831: 使用ADuC702x系列<b class='flag-5'>實現</b><b class='flag-5'>計數器</b>

    智能雷擊計數器的綜合行業解決方案

    智能雷擊計數器 是一種用于記錄雷擊事件發生次數的高科技裝置,廣泛應用于防雷系統中。與傳統的機械式雷擊計數器相比,智能雷擊計數器不僅能夠精確記錄雷擊次數,還能對雷電參數進行分析,并通過智能通信模塊
    的頭像 發表于 12-20 10:50 ?457次閱讀
    智能雷擊<b class='flag-5'>計數器</b>的綜合行業解決方案

    獲取通信事件計數器與獲取通信事件記錄

    11功能碼主要用于獲取從設備通信計數器中的狀態字和事件計數的值,本功能碼不支持廣播模式。通過通信報文之前和之后讀取通信事件計數值,可以確定從設備是否正常處理報文。
    的頭像 發表于 11-05 15:16 ?2550次閱讀

    雷擊計數器的概述與應用分析

    雷擊計數器 是一種用于監測和記錄電力系統、通信系統、建筑物等關鍵設施遭受雷擊次數的設備。它能夠有效地幫助管理人員掌握雷電活動的情況,以便進行預防性維護和風險評估。雷擊計數器根據工作原理可以分為無源
    的頭像 發表于 10-21 10:31 ?732次閱讀
    雷擊<b class='flag-5'>計數器</b>的概述與應用分析

    頻率計數器的技術原理和應用場景

    的不斷涌現,頻率計數器也將與這些技術相結合,實現更加智能化、網絡化的測量功能。例如,它可以通過與傳感、云計算等技術的結合,實現對遠程信號的實時監測和分析。綜上所述,頻率
    發表于 10-18 14:03

    74ls163是幾進制同步計數器

    到9,然后回到0,形成一個循環。 以下是關于74LS163的一些基本信息: 功能 :74LS163 是一個同步計數器,意味著所有的計數位同時更新。它通常用于需要精確控制計數序列的應用中
    的頭像 發表于 10-18 13:54 ?2647次閱讀

    臺式塵埃粒子計數器的優勢有哪些

    在當今精密制造與潔凈環境日益重要的背景下,臺式塵埃粒子計數器憑借其全面的監測與記錄能力,成為了眾多行業的質量控制工具。臺式塵埃粒子計數器不僅集成了溫濕度及大氣壓力測量功能,更是將智能化監測推向新高度。
    的頭像 發表于 10-17 13:25 ?459次閱讀

    激光塵埃粒子計數器如何使用能測出準確的數據

    激光塵埃粒子計數器如何使用能測出準確的數據
    的頭像 發表于 09-30 10:04 ?650次閱讀
    激光塵埃粒子<b class='flag-5'>計數器</b>如何使用能測出準確的數據

    臺式塵埃粒子計數器的功能優勢與應用

    一、臺式塵埃粒子計數器的工作原理 臺式塵埃粒子計數器是用于測量空氣中塵埃顆粒物濃度的儀器,它基于激光散射原理能夠連續采集并計算單位體積內空氣中不同粒徑的懸浮顆粒物個數,即顆粒物濃度分布,進而換算成為
    的頭像 發表于 09-14 16:41 ?755次閱讀

    智能防雷計數器行業應用解決方案

    雷擊災害作為一種常見的自然現象,會對建筑物、設備以及人類活動產生嚴重影響,特別是電子設備廣泛應用的今天,雷擊帶來的損失往往是巨大的。為了有效監測和統計雷電活動的頻率與強度,智能防雷計數器應運而生
    的頭像 發表于 09-12 10:46 ?609次閱讀
    智能防雷<b class='flag-5'>計數器</b>行業應用解決方案

    正交解碼計數器

    正交解碼計數器
    發表于 09-06 11:41 ?0次下載

    計數器的特點和參數

    計數器作為一種常用的電子元件,電子設備和系統中扮演著至關重要的角色。它們不僅用于存儲和增減數字值,還廣泛應用于時序和頻率測量、事件計數、控制步進電機和伺服系統、錯誤檢測和糾正以及計算機數據存儲和操作等領域。以下將詳細闡述
    的頭像 發表于 08-29 14:54 ?2596次閱讀

    計數器同步和異步怎么判斷

    計數器同步和異步是數字電路設計中的一個重要概念,它們很多應用場景中都扮演著關鍵角色。 一、計數器概述 計數器是一種常見的數字電路,它可以對輸入信號進行
    的頭像 發表于 07-23 11:14 ?2496次閱讀

    PLC計數器的工作原理與功能

    至關重要的角色。計數器能夠統計輸入信號的脈沖次數,實現某個事件的計數和監控,是控制系統實現精確控制的關鍵元件之一。本文將詳細闡述PLC中
    的頭像 發表于 06-18 11:51 ?3657次閱讀

    三菱PLC高速計數器的基本特點

    Controller,可編程邏輯控制)引入了高速計數器這一功能強大的軟元件,用于處理高速脈沖信號,實現精確計數。本文將詳細介紹三菱PLC高速計數
    的頭像 發表于 06-18 11:46 ?2280次閱讀
    主站蜘蛛池模板: 亚洲第一黄色网 | 日本三级网站在线线观看 | 国产成人在线网址 | 大尺度免费高清在线观看视频 | 国内露脸夫妇交换精品 | 国产午夜精品久久久久免费视 | 一级女人毛片人一女人 | 丁香六月激情婷婷 | 在线观看www日本免费网站 | 久久精品国产福利国产琪琪 | 久久国产精品永久免费网站 | 午夜久久免影院欧洲 | 色婷婷视频在线 | 波多野吉衣一区二区三区在线观看 | 你懂的在线观看视频 | 99在线热播精品免费 | 男女免费观看视频 | 日本三级最新中文字幕电影 | 四虎永久在线观看免费网站网址 | 亚洲国产精品热久久2022 | 成人a一级毛片免费看 | 你懂的欧美 | 国产精品久久久久久久免费大片 | 综合久久婷婷 | 国产免费一区二区三区最新 | 午夜三级理论在线观看视频 | 伊人久久大香线蕉影院95 | 天天干天天操天天操 | 欧美成人xxxx | 色wwww| 国产色婷婷精品综合在线观看 | tube日本xxxx69| 两性色午夜视频免费播放 | 女人张腿让男桶免费视频观看 | 一级特黄性生活大片免费观看 | 九色精品在线 | 国产成人小视频 | 日本与大黑人xxxx | 久久婷婷人人澡人人爱91 | 欧美性操| 你懂的网站在线观看 |