计数器——Verilog HDL语言
生活随笔
收集整理的這篇文章主要介紹了
计数器——Verilog HDL语言
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
計數器
- 任務要求
- 相關知識
- 邏輯原理
- 同步16進制計數器真值表
- 編程要求
- 源代碼
任務要求
根據所學的時序邏輯及數字電路的知識完成計數器的設計,驗證同步16進制計數器的功能,進一步熟悉 Verilog HDL 文本設計流程, 掌握時序電路的設計仿真和測試方法。完善計數器電路的功能描述風格Verilog HDL 代碼。
相關知識
邏輯原理
計數器能記憶輸入脈沖的個數, 用于定時、分頻、產生節拍脈沖及進行數字運算等等。 加法計數器每輸入一個 CP 脈沖, 加法計數器的計數值加一。 十六進制計數即從 0000 一直計數到 1111;當計數到 1111 時,若再來一個 CP 脈沖,則回到 0000,同時產生進位 1。
同步 16 進制計數器設計采用 if-else 語句對計數器的輸出分別進行賦值,能實現對輸入脈沖的計數,并具有使能和異步清零功能。
同步16進制計數器真值表
編程要求
為了完成計數的任務,完善編程模塊設計代碼,編寫的程序要能根據不同的輸入得到滿足同步16進制計數器真值表的邏輯輸出。
源代碼
測試平臺:EduCoder
module count_test(en,clk,clr,cout,outy); input en,clk,clr; output [3:0]outy; output cout; reg [3:0]outy; always @ (posedge clk or posedge clr) // 請在下面添加代碼,完成16 進制計數器功能 /* Begin */begin if(clr) outy<=4'b0000;else if(en) begin if(outy==4'b1111) outy<=4'b0000;else outy<=outy+1'b1;endendassign cout=((outy==4'b1111)&en)?1:0; /* End */ endmodule覺得有幫助的可以點個贊再走哦!!
總結
以上是生活随笔為你收集整理的计数器——Verilog HDL语言的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Kubernetes—Pod
- 下一篇: 计算机网络有线通信媒体,传输媒体