大概要求:输入时钟为66.67MHz的正弦波,采用运放整形后得到100MHz送入FPGA 的全局时钟输入管脚。定时器将整形后的100MHz时钟在FPGA内8分频后得到12.5MHz作为其工作时钟,分频采用PLL内部的分频器。再由12.5MHz二分频和十六分频得到延时序列组合的工作时钟。为了保证FPGA内部时钟的质量,将输入的100MHz时钟进行FPGA片内的PLL对时钟占空比进行调节,使时钟的占空比精确到50%。
只能说这么多其他的就自行设计吧。
用VerilogHDL设计一个FPGA定时器!
答案:4 悬赏:10 手机版
解决时间 2021-02-28 15:33
- 提问者网友:我是女神我骄傲
- 2021-02-27 17:39
最佳答案
- 五星知识达人网友:长青诗
- 2021-02-27 17:59
首先说明:这很容易。
前面说了那么多正弦波整形、PLL什么的,和HDL代码无关啊~
这个设计无非就是个分频器。
从100M的时钟得到其8,16,128分频,占空比50%,用计数器实现即可。
你不会还要给你写好代码吧~没那么多时间~
前面说了那么多正弦波整形、PLL什么的,和HDL代码无关啊~
这个设计无非就是个分频器。
从100M的时钟得到其8,16,128分频,占空比50%,用计数器实现即可。
你不会还要给你写好代码吧~没那么多时间~
全部回答
- 1楼网友:空山清雨
- 2021-02-27 20:36
哥们,你这个太模糊了,功能没说清楚,但是就你的大致说明来看,很容易可以完成。
- 2楼网友:渊鱼
- 2021-02-27 19:26
首先PLL应用就不用说明了,这个直接调用内部软核来实现,没有涉及到代码。就分频代码我简单写个8分频的代码,其他的大同小异。
module div_8(clk_100M,rst,clk_125M);
input clk_100M,rst;
output reg clk_125M;//8分频输出12.5M
reg[3:0] temp;
always@(posedge clk_100M or negedge rst)
begin
if(!rst)
begin
temp<=4'b0000;
clk_125M<=1'b0;
end
else if(temp==4'd3)
begin
clk_125M<=~clk_125M;
temp<=4'b0000;
end
else
temp<=temp+1'b1;
end
endmodule
这个只是8分频代码,其他的16分频可参考这个来写,原理是一样的。
- 3楼网友:十年萤火照君眠
- 2021-02-27 19:01
建议多使用PLL,为了得到更稳定精确的时钟。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯