pll的ip核调用

摘要:
Quartusii的pllip核调用:1、先建立好工程。

Quartus ii的pll ip核调用:

1、先建立好工程。点击“Tools”,接着点击“Mega Wizard Plug-In Manager”。

2、创建一个新的ip核:

pll的ip核调用第1张

2、这里需要的是pll的ip核,所以就搜索“pll”,并选中“ALTPLL”,接着修改成fpga芯片型号,Verilog HDL,还有设置好pll ip核的路径和名称,这里的名称就相当于模块名。

pll的ip核调用第2张

3、pll的ip核是对时钟分频并且输出,所以这里设置一个时钟,比如50MHz。

pll的ip核调用第3张

4、设置输出的时钟:

有两种方式去改变频率:方式1:直接填写输出的频率;方式2:使用乘法因子和除法因子。

pll的ip核调用第4张

比如这里c0我设成50MHz,又把乘法因子设置成2,那么c0的时钟频率是100MHz:

pll的ip核调用第5张

在c0时钟的基础上反转180°得到c1:

pll的ip核调用第6张

c2把100MHz分成4份,不知道为什么实际输出12.5MHz:

pll的ip核调用第7张

c3直接输出一个50MHz的时钟频率:

pll的ip核调用第8张

5、设置完成后,一直next,直到finish,最后yes。

6、然后为了测试,需要建立一个顶层文件,例化这个pll ip核。仿真用到的文件:

pll的ip核调用第9张

综合代码:

modulepll_ip(
inputsys_clk,
inputsys_rst_n,
outputtest_c0,
outputtest_c1,
outputtest_c2,
outputtest_c3
);
wire rst_n;//作为其他模块的复位信号
wirelocked;

assign rst_n=sys_rst_n &locked;

pll_clk u_pll_clk(
.inclk0 (sys_clk),
.areset (~sys_rst_n),
.c0 (test_c0),
.c1 (test_c1),
.c2 (test_c2),
.c3 (test_c3),
.locked (locked)
);
endmodule 

仿真代码:

`timescale 1ns/1ns
modulepll_ip_tb;
regsys_clk;
regsys_rst_n;
wiretest_c0;
wiretest_c1;
wiretest_c2;
wiretest_c3;

initial beginsys_clk<=1'b0;
sys_rst_n<=1'b0;
#10 sys_rst_n<=1'b1;
end
always #10 sys_clk<=~sys_clk;

pll_ip u_pll_ip(
.sys_clk (sys_clk),
.sys_rst_n (sys_rst_n),
.test_c0 (test_c0),
.test_c1 (test_c1),
.test_c2 (test_c2),
.test_c3 (test_c3)
);
endmodule

7、仿真的时候,一个激励文件,一个顶层模块、例化模块pll_clk、一个altera_mf.v文件。其中altera_mf.v的位置需要打开Quartus ii软件的所在位置,搜索“altera_mf”,可以看到路径(...edasim_lib),复制到tb文件夹中与激励文件放一起。

pll的ip核调用第10张

结果检验正确!

免责声明:文章转载自《pll的ip核调用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇使用群晖作mineportalbox(3):在阿里云上单盘安装群晖skynasgitlab+jenkins自动化打包IOS-jenkins配置下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

FPGA--pll变频

Altera 的 Cyclone IV 器件 PLL 具有时钟倍频和分频、相位偏移、可编程占空比和外部时钟输出,进行系统级的时钟管理和偏移控制。 Altera 的 Quartus II 软件无需任何外部器件,就可以启用 Cyclone IV PLL 和相关功能。 下面演示如和调用 Altera 提供的 ALTPLL 核来产生 不同频率的时钟, 并把时钟输...

利用IP核设计高性能的计数器

利用Quartus II的LPM_counter IP核进行设计(利用IP核设计可以迅速高效的完成产品的设计)        新建工程 调用IP核 创建一个新的IP核   选择LMP_COUNTER,语言类型,输出路径。 选择希望输出的寄存器是多少位的,计数类型,   选择计数器类型(直接计数还是以模的形式计数),是否需要时钟使能和计数使能信号、进位...

FIFO IP核仿真

FIFO IP核仿真 1.FIFO IP核配置 2.FIFO测试逻辑代码 首先往FIFO里面写入512个数据(FIFO深度的一半),然后再开始同时往FIFO里面写入,读出数据。FIFO读和写的时钟域不同,对于不同时钟域的信号应该进行区分,状态机也应该分开来写。 `timescale 1ns /1ps //////////////////////////...

cpu IP核下载列表 (最新全集)

IP核下载列表 (最新全集) 下载必读:- n( R7 z! h: `/ D$ l/ V8 f* J1 c7 }2 e1 v$ |1 @3 V, q; i: B- Z, K& _1 G1. 绝大部分IP来自网络,缺乏足够的测试,仅供大家学习之用。, I: D% Y1 h2 u; R2. IP原作者版权所有,严禁商用。切记!1 }/ t+ b&...

RDA PQ工具使用 (屏参调整)

  使用客户规格书,制作屏参文件。   注意:,必填区和计算区,必填区根据屏参的SPEC填写,具体的屏参文件参数通过点击“Calc Sync”生成。 如:HV320WHB-N81的SPEC:    打开“ColorAdjustTool”   1、根据规格书的CLK/Hsync/Vsync/Horizontal Active/Vertical Active参...

[转] 用ModelSim仿真PLL模块

由于要对FPGA读写SDRAM的工程进行调试,第一步就是验证PLL模块的功能,故结合网上找的一些资料,进行了如下PLL仿真实验。 下面是仿真的全过程 首先,看一下Quartus中的PLL模块: 从上面图中可以看出:我的FPGA输入时钟是20MHZ,该PLL有三个输出,其中 C0:5倍频,100MHZ C1:1倍频,20MHZ C2:5倍频,100M...