【基本信息】

要求:调用PLL—IP核,50Mhz晶振输入,输出四路时钟不同信号:100Mhz,25Mhz,50Mhz(90°相位),50Mhz(20%占空比)。

芯片型号:cyclone Ⅳ EP4CE10F17C8

平台工具:Quartus II 15.0 (64-bit)、Modelsim SE-64 10.4

【PLL_IP核简介】

IP核:ASIC或FPGA中预先设计好具有某种功能的电路模块,参数可修改,目的在于提高开发效率。

QuartusII软件下IP核调用方式:Mega Wizard插件管理器(常用)、SOPC构造器、DSP构造器、Qsys设计系统例化。

PLL(Phase Lockded Loop,锁相环)常用IP核之一,可对输入时钟信号进行任意分频、倍频、相位、占空比调整。Altera 模拟锁相环,优点:信号稳定度高,相位连续可调,延时连续可调;缺点:受温度、电磁辐射影响,可能失锁。

【PLL_IP核配置】

进入QuartusII,直接打开Mega Wizard插件管理器或者打开工具菜单栏下IP—catalog,PLL-ALTPLL。

1、配置第一步进行参数/模式设置。

注意模式区别:

源同步:使用于高速数据接口,若数据和时钟同时到达输入管脚,那么在 I/O 单元输入寄存器的数据与时钟端口,数据与时钟之间的相位关系保持不变。

无补偿:PLL 不对任何时钟网络进行补偿 (允许延迟),相对 PLL 时钟输入,PLL 内部以及外部时钟输出均有相位偏移。

标准:内部时钟是与输入时钟管脚相位对齐 ,若连接外部时钟输出管脚,则外部时钟输出管脚会产生相对于时钟输入管脚的相位延迟 ,标准模式的时钟最好作用在寄存器上。

零延迟缓冲:外部时钟输出管脚与时钟输入管脚是相位对齐的,没有延迟,作用输出不建议作用寄存器。

2、配置信号输入和锁定输出设置:

3、Bandwidth/CSS和时钟切换这些高级属性配置跳过即可。

4、PLL Reconfiguration动态/动态相位重配置跳过。

5、输出时钟信号配置(重点),共可输出五路信号,输出勾选使能,按需配置频率、占空比、相位。

配置完成,继续下一步,如果采用modelsim外部仿真软件的话,可以看到所需的仿真库。

最后确认页面,左边图可看到PLL_IP产生了四路时钟信号和一路锁定信号,时钟信号参数类型很清楚。最后需要勾选inst.v实例化文件,方便后面调用IP核。

【PLL_IP核调用】

1、IP核调用

pll_ip_inst.v文件就是PLL_IP核实例模块,这里简单写个顶层文件调用即可,可以通过引脚配置上机测试下输出。

`module ip_pll(
input sys_clk,
output clk_100Mhz ,
output clk_25Mhz ,
output clk_50Mhz_90deg ,
output clk_50Mhz_20DC ,
output locked_sig
); pll_ip pll_ip_inst (
.inclk0 ( sys_clk ),
.c0 ( clk_100Mhz ),
.c1 ( clk_25Mhz ),
.c2 ( clk_50Mhz_90deg ),
.c3 ( clk_50Mhz_20DC ),
.locked ( locked_sig )
);
endmodule

对工程文件全编译,可以看到(下图),芯片资源的使用情况,EP4CE10F17C8有两个PLL,其他逻辑电路没有使用。

2、使用技巧

PLL_IP编辑好,后期修改有两种方式:第一种是在Quartus主页左上方Project Navigator-IP Components双击打开目标IP核,还有一种就是在Mega Wizard插件管理器,选择编辑现有IP核。

如果不小心把IP核删除了,只需重新添加目标IP核文件,后缀.qip(主文件)添加应用。需要复制现有IP核,只需打包IP核文件,后缀包括.v;inst.v;.qip;.ppf;greybox_tmp五个文件,然后添加应用到工程文件。

【PLL_IP核仿真】

在仿真结果中,首先可以观察到锁相环的锁定过程。在这个过程中,锁相环的输出信号(locked信号)会保持低电平状态,表示锁相环尚未锁定,各时钟信号输出会处于不定态,它们的值会随机变化或保持不变。稳定后,很明显看到频率、相位、占空比的调整情况。

Ps:如需要工程重要的文件,在个人博客首页Gitee仓库内可以得到。

QuartusII调用 PLL_IP核方法(Mega Wizard)的更多相关文章

  1. 高介分类:核方法与支持向量机(SVM)

        数据模型:并不是简单地二维数据,多个维度或者对象的数据聚合起来      {           persion1's attr1:value1,...,persion1's attrN:va ...

  2. SNF快速开发平台MVC-EasyUI3.9之-WebApi和MVC-controller层接收的json字符串的取值方法和调用后台服务方法

    最近项目组很多人问我,从前台页面传到后台controller控制层或者WebApi 时如何取值和运算操作. 今天就都大家一个在框架内一个取值技巧 前台JS调用代码: 1.下面是选中一行数据后右键点击时 ...

  3. js调用php和php调用js的方法举例

    js调用php和php调用js的方法举例1 JS方式调用PHP文件并取得php中的值 举一个简单的例子来说明: 如在页面a.html中用下面这句调用: <script type="te ...

  4. c# 调用c++DLL方法及注意事项

    引用命名空间 using System.Runtime.InteropServices 调用方法: 一.静态加载 用DllImprot方式来加载c++DLL.如下格式: //对应c++方法 //voi ...

  5. JavaScript调用函数的方法

    摘要:这篇文章详细的介绍了Javascript中各种函数调用的方法及其原理,对于理解JavaScript的函数有很大的帮助! 一次又一次的,我发现,那些有bug的Javascript代码是由于没有真正 ...

  6. WPF中实例化Com组件,调用组件的方法时报System.Windows.Forms.AxHost+InvalidActiveXStateException的异常

    WPF中实例化Com组件,调用组件的方法时报System.Windows.Forms.AxHost+InvalidActiveXStateException的异常 在wpf中封装Com组件时,调用组件 ...

  7. Android NDK 初探,生成so文件以及调用so文件方法

    因为最近业务上涉及安全的问题 然后有一些加密解密的方法和key的存储问题 本来想存储到手机里面,但是网上说一般敏感信息不要存储到手机Sdcard上 而且我这个如果从网络建立通信获取的话,又太耗时,所以 ...

  8. Office word 2013中直接调用MathType的方法

    Office word 2013中直接调用MathType的方法 | 浏览:4403 | 更新:2014-02-20 14:45 | 标签: word 使用Office word 2013的用户肯定早 ...

  9. Lua 调用 Opencv 的方法

    Lua 调用 Opencv 的方法 最近想用 Lua 调用 Opencv 进行相关像素级操作,如:bitwise_and 或者 bitwise_or,从而完成图像 IoU 的计算. 那么,怎么用 Lu ...

  10. asp.net 手工调用 WS(Get)方法:

    asp.net 手工调用 WS(Get)方法: 通过手工HttpWebRequest,HttpWebResponse来模拟调用.核心代码:string strurl="http://loca ...

随机推荐

  1. 重新整理.net core 计1400篇[五] (.net core 添加mvc 中间件 )

    前言 前面提过.net core web实际上是一个服务和若干个中间件组成. 现在我们有一个服务了,那么可想而知我们要完成mvc这种功能,我们需要的就是一个中间件. 好的,接下来,我们只要添加中间件即 ...

  2. three.js使用Instanced Draw+Frustum Cull+LOD来渲染大场景(开源)

    大家好,本文使用three.js实现了渲染大场景,在移动端也有较好的性能,并给出了代码,分析了关键点,感谢大家~ 关键词:three.js.Instanced Draw.大场景.LOD.Frustum ...

  3. 力扣595(MySQL)-大的国家(简单)

    题目: World 表: 如果一个国家满足下述两个条件之一,则认为该国是 大国 : 面积至少为 300 万平方公里(即,3000000 km2),或者人口至少为 2500 万(即 25000000)编 ...

  4. 千万商家的智能决策引擎--AnalyticDB如何助力生意参谋双十一

    作者:算法&健兮,阿里巴巴数据技术及产品部技术专家 生意参谋介绍 生意参谋是阿里官方打造的全渠道.全链路.一站式数据平台,致力于为用户提供经营分析.市场洞察.客群洞察等多样化数据服务,帮助用户 ...

  5. E百科 | 第2期 扒一扒能加速互联网的QUIC协议

    简介: 众所周知,QUIC(Quick UDP Internet Connection)是谷歌制定的一种互联网传输层协议,它基于UDP传输层协议,同时兼具TCP.TLS.HTTP/2等协议的可靠性与安 ...

  6. 6 张图带你彻底搞懂分布式事务 XA 模式

    简介: XA 协议是由 X/Open 组织提出的分布式事务处理规范,主要定义了事务管理器 TM 和局部资源管理器 RM 之间的接口.目前主流的数据库,比如 oracle.DB2 都是支持 XA 协议的 ...

  7. 【深度】阿里巴巴万级规模 K8s 集群全局高可用体系之美

    简介: 台湾作家林清玄在接受记者采访的时候,如此评价自己 30 多年写作生涯:"第一个十年我才华横溢,'贼光闪现',令周边黯然失色:第二个十年,我终于'宝光现形',不再去抢风头,反而与身边的 ...

  8. 如何基于MaxCompute快速打通数据仓库和数据湖的湖仓一体实践

    简介: MaxCompute 是面向分析的企业级 SaaS 模式云数据仓库,以 Serverless 架构提供快速.全托管的在线数据仓库服务,消除了传统数据平台在资源扩展性和弹性方面的限制,最小化用户 ...

  9. 官宣|Apache Flink 1.13.0 正式发布,流处理应用更加简单高效!

    简介: Flink 1.13.0 版本让流处理应用的使用像普通应用一样简单和自然,并且让用户可以更好地理解流作业的性能. ​翻译 | 高赟Review | 朱翥.马国维 Flink 1.13 发布了! ...

  10. PolarDB-X 2.0:使用一个透明的分布式数据库是一种什么体验

    简介: 透明分布式,是PolarDB-X即将发布的能力,它能让应用在使用PolarDB-X的过程中,犹如使用单机数据库一般的体验.与传统的中间件类型的"分布式数据库"相比,有了透明 ...