[原创][FPGA]时钟分频之奇分频(5分频)
2024-09-04 06:08:58
0. 简介
有时在基本模块的设计中常常会使用到时钟分频,时钟的偶分频相对与奇分频比较简单,但是奇分频的理念想透彻后也是十分简单的,这里就把奇分频做一个记录。
1. 奇分频
其实现很简单,主要为使用两个计数模块分别计数,得到两个波形进行基本与或操作完成。直接贴出代码部分如下。
module div_freq( iCLK, iRST_n, oCLK ); input wire iCLK; input wire iRST_n; output oCLK; 'd5; reg clk_p; :] cnt_p; always @ (posedge iCLK or negedge iRST_n) begin if (!iRST_n) cnt_p <= 'd0; ) cnt_p <= 'd0; else cnt_p <= cnt_p + 'b1; end always @ (posedge iCLK or negedge iRST_n) begin if (!iRST_n) clk_p <= 'b0; ) / ) clk_p <= ~clk_p; ) clk_p <= ~clk_p; else clk_p <= clk_p; end reg clk_n; :] cnt_n; always @ (negedge iCLK or negedge iRST_n) begin if (!iRST_n) cnt_n <= 'd0; ) cnt_n <= 'd0; else cnt_n <= cnt_n + 'b1; end always @ (negedge iCLK or negedge iRST_n) begin if (!iRST_n) clk_n <= 'b0; ) / ) clk_n <= ~clk_n; ) clk_n <= ~clk_n; else clk_n <= clk_n; end assign oCLK = clk_p | clk_n; endmodule
modelsim仿真结果如下图
最新文章
- Android总结篇系列:Android开发环境搭建
- 让Session失效的三种方法
- js对象的两种写法
- hdu 1733 分层网络流 ****
- android之Chronometer
- 前端不为人知的一面–前端冷知识集锦 原文地址(http://web.jobbole.com/83473/);
- Linux常用命令大杂烩(持续更新)
- BestRW团队项目创意以及NABCD
- lintcode:插入区间
- Android PagerAdapter
- Golang下通过syscall调用win32的dll(calling Windows DLLs from Go )
- TypeScript教程3
- PHP面向对象和面向过程
- [Swift]LeetCode779. 第K个语法符号 | K-th Symbol in Grammar
- 4 Values whose Sum is 0 [POJ2785] [折半搜索]
- Big Txt File(一)
- Mac下的Jenkins安装
- Fluent UDF【8】:编译型UDF
- 吴裕雄 python深度学习与实践(5)
- 附件十四面3D模型的自动化生成