首页 >  热点 >

vhdl分频器的作用原理(VHDL分频器的作用)

发布时间:2022-12-11 16:16:56来源:网络转载浏览量:0   
题简介:

内容:使用Verilog编写一个分频器;

来源:仿真得出,暂未实践;

作用:使用Verilog编写一个分频器;

仿真环境:Quartus 11.0;

日期:2019-03-15;

=====================分割线========================

立题详解:

对CPLD或FPGA而言,暂时接触过的开发语言只有VHDL和Verilog;

个人而言,见到很多同事喜欢使用Verilog,因此也随波逐流,开始复习Verilog,本次使用Verilog编写一个分频器;思路很简单,实现2个分频器及占空比控制;

网上资料很多,属于最基础的入门级代码,和学习C/C++时,学习输出“printf(“hello world”)”差不多,当然,后续我们还是需要不断进步,做到“printf(“\nhello world\n”)”、“cout<<“hello world”<

1、编写代码

对Verilog代码如下:

module tester(clk,rst_n,fm_1,fm_2);

input wire clk;//clock signal

input rst_n; // reset signal

output fm_1; //out signal for process 1

output fm_2; //out signal for process 2

reg [7:0]cnt_1;//cnt for process 1

reg [7:0]cnt_2;//cnt for process 2

always @(posedge clk or negedge rst_n)

if(!rst_n) cnt_1 <= 8’d0;

else if(cnt_1 <= 8’d255) cnt_1 <= cnt_1 + 1;

else cnt_1 <= 8’d0;

assign fm_1 = (cnt_1 <= 128)? 1’b1:1’b0;

always @(posedge clk or negedge rst_n)

if(!rst_n) cnt_2 <= 8’d0;

else if(cnt_2 <= 8’d49) cnt_2 <= cnt_2 + 1;

else cnt_2 <= 8’d0;

assign fm_2 = (cnt_2 <= 25)? 1’b1:1’b0;

endmodule

如上所示,通过代码构建2个分频计数器,见解如下:

i)、fm_1的分频系数为PSC1=255+1=256;占空比约为:128/256=50%;

ii)、fm_2的分频系数为PSC1=49+1=50;占空比约为:25/50=50%;

重点:可通过修改” if(cnt_2 <= 8’dxx)”的”xx”修改分频系数;修改cnt_1/cnt_2的值修改占空比;

需特别注意:前面定义“reg类型”时,已经确定了数据值范围,如上例中,使用为“reg [7:0]cnt_1;”,即其只有8bit数据,最大值为2^8=256;若分频系数超过十进制的256,将会出现数据溢出错误;

2、编译代码

编译结果如下所示:

vhdl分频器的作用原理

其中指示了使用的主控FPGA芯片、Logice Element使用比例等信息;

3、查看RTL级

构建而成的RTL视图如下所示:

vhdl分频器的作用原理

如上图所示,内部通过综合后,得出对应的RTL级连接图;

4、分配PIN管脚

然后分配FPGA-Pin管脚,此处随意分配,如下所示:

vhdl分频器的作用原理

5、再次编译

编译结果如下所示:

vhdl分频器的作用原理

6、再次查看RTL级

此步骤不为必要步骤,视个人习惯而定;构从的RTL视图如下所示:

vhdl分频器的作用原理

7、后续介绍:

至此,对简单的代码,可以直接使用下载器进行下载实测;正规方法,应该对其进行编写Test Bench进行仿真分析;此内容为后续介绍;



(责编: xingyun)

免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。

  • 公历1893年12月26日的年月日干支

    公历1893年12月26日是农历的癸已年,甲子月,丁酉日,这个命局,丁火生在子月身弱,有甲木贴身相生为佳, [详细]
  • 马士兵为何脱离尚学堂

    马士兵这个级别的讲师,不可能一直做一个一线讲师,转型 转行是必须的 所以大家不用期望他再出现在培训机 [详细]
  • 华为p6的配制参数

    HUAWEI Ascend P6采用直板设计,搭载4 7英寸全面屏设计机身长度为132 6毫米,宽度为65 5毫米,厚度为6 [详细]
  • 无花果治什么病最有效果

    无花果治什么病最有效果无花果,又称为女儿果、香榧果,是常见的水果之一,营养价值较高。在中医上,无花果具有清热解毒、润肠通便、止咳化 [详细]
  • 盐卤水的制作方法

    盐卤水的制作方法盐卤水是一种常见的调味汁,可以用于腌制、蘸食等多种用途。下面是盐卤水的制作方法:材料:清水食用盐白糖酱油大葱、姜片 [详细]