DCM_BASE
基本数字时钟管理模块的缩写,是相伴和频率可配置的数字锁相环电路,常用于FPGA系统中复杂的时钟管理。
如需要频率和相位动态配置,则可以选用DCM_ADV原语,如需要相位动态偏移,可使用DCM_PS原语。
Eg. DCM_BASE #
(
.CLKDV_DIVIDE(2.0), //CLKDV分频比可以设置为1.5,2.5,3.0,3.5,14.0,15.0等
.CLKFX_DIVIDE(1), //can be any integer from 1 to 32 CLKFX信号的分配比
.CLKFX_MULTIPL(4), //CLKFX的倍频比,可为2到32之间的任意整数
.CLKIN_DIVIDE_BY_2("FALSE",) //输入信号2分频的使能信号,可设置为TRUE/FALSE
.CLKIN_PERIOD(10.0), //指定输入时钟的周期,单位为ns,数值范围为1.25~1000.00
.CLKOUT_PHASE_SHIFT("NONE"), //指定移相模式,可设置为NONE/FIXED
.CLK_FEEDBACK("1X"), //指定反馈时钟的频率,可设置为NONE/1X/2X,相应频率关系都是针对CLK0而言
.DCM_PERFORMANCE_MODE("MAX_SPEED"), //DCM模块性能模式,可设置为MAX_SPEED/MAX_RANGE
.DESKEW_ADJUST("SYSTEM_SYNCHRONOUS"), //抖动调整,可设置为源同步,系统同步或0-15之间能任意整数
.DFS_FREQUENCY_MODE("LOW"), //数字频率合成模式,可设置为LOW/HIGH两种模式
.DLL_FREQUENCY_MODE("LOW"), //DLL频率模式,可设置为LOW/HIGH/HIGH_SER
.DUTY_CYCLE_CORRECTION("TRUE"), //设置是否采用双周期校正,可设置为TRUE/FALSE
.FACTORY_JF(16'hf0f0), //16比特的JF因子参数
.PHASE_SHIFT(0), //固定相移数值,可设置为-255~1023之间任意整数
.STARTUP_WAIT("FALSE") //等DCM锁相后再延时配置DONF管脚,可设置为TRUE/FALSE
)
DCM_BASE_inst (
.CLK0(CLK0), //0度移相的DCM时钟输出
.CLK180(CLK180), //180度移相的DCM时钟输出
.CLK270( CLK270), //270度移相的DCM时钟输出
.CLK2X( CLK2X ), //dcm模块的2倍频输出
.CLK2X180( CLK2X180 ), //经过180度相移的DCM模块2倍频输出
.CLK90( CLK90 ), //90度移相的DCM时钟输出
.CLKDV ( CLKDV ), //DCM模块的分频输出,分频比为CLKDV_DIVIDE
.CLKFX( CLKFX ), //DCM合成时钟输出,分频比为(M/D)
.CLKFX180( CLKFX180 ), //180度移相的DCM合成时钟输出
.LOCKED ( LOCKED ), //DCM锁相状态输出信号
.CLKFB ( CLKFB ), //DCM模块的反馈时钟信号
.CLKIN ( CLKIN ), //DCM模块的时钟输入信号
.RST ( RST ) //DCM模块的异步复位信号
);

PLL_BASE xilinx低端FPGA中都用DCM,高级一点的都用PLL,使用PLL时,输出时钟
Clk_out=Clkin*Mult/DIVCLK_DIVIDE/CLKOUTx_DIVIDE;

Eg. PLL_BASE #
(
.BANDWIDTH("OPTIMIZED"), //HIGH/LOW/OPTIMIZED
.CLKFBOUT_MULT(2), //Multiplication factor for all output clocks
.CLKFBOUT_PHASE(0.0), //Phase shift degress of all output clocks
.CLKIN_PERIOD(0.000), //clock period(ns) of input clock on clkin
.CLKOUT0_DIVIDE(5), //Division factor for CLKOUT0 (1 to 28)
.CLKOUT0_DUTY_CYCLE(0.5), //duty cycle for CLKOUT0 (0.01 TO 0.99)
.CLKOUT0_PHASE(0.0), //phase shift degrees for CLK1UT0 (0.0 TO 360.0)
.CLKOUT1_DIVIDE(1), //Division factor for CLKOUT1 (1 to 28)
.CLKOUT1_DUTY_CYCLE(0.5), //duty cycle for CLKOUT1 (0.01 TO 0.99)
.CLKOUT1_PHASE(0.0), //phase shift degrees for CLKOUT2 (0.0 TO 360.0)
.CLKOUT2_DIVIDE(1), //Division factor for CLKOUT2 (1 to 28)
.CLKOUT2_DUTY_CYCLE(0.5), //duty cycle for CLKOUT2 (0.01 TO 0.99)
.CLKOUT2_PHASE(90), //phase shift degrees for CLKOUT2 (0.0 TO 360.0)
.CLKOUT3_DIVIDE(2), //Division factor for CLKOUT3 (1 to 28)
.CLKOUT3_DUTY_CYCLE(0.5), //duty cycle for CLKOUT3 (0.01 TO 0.99)
.CLKOUT3_PHASE(0.0), //phase shift degrees for CLKOUT3 (0.0 TO 360.0)
.CLKOUT4_DIVIDE(1), //Division factor for CLKOUT4 (1 to 28)
.CLKOUT4_DUTY_CYCLE(0.5), //duty cycle for CLKOUT4 (0.01 TO 0.99)
.CLKOUT4_PHASE(0.0), //phase shift degrees for CLKOUT4 (0.0 TO 360.0)
.CLKOUT5_DIVIDE(5), //Division factor for CLKOUT5 (1 to 28)
.CLKOUT5_DUTY_CYCLE(0.5), //duty cycle for CLKOUT5 (0.01 TO 0.99)
.CLKOUT5_PHASE(0.0), //phase shift degrees for CLKOUT5 (0.0 TO 360.0)
.COMPENSATION("SYSTEM_SYNCHRONOUS"), //SYSTEM_SYNCHRONOUS/SOURCE_SYNCHRONOUS/INTERNAL/EXTERNAL
//DCM2PLL/PLL2DCM
.DIVCLK_DIVIDE(1), //division factor for all clocks (1 to 52)
.REF_JITTER(0.100) //input reference jitter (0.000 to 0.999 U1%)
)
pll2_inst (
.CLKFBOUT ( CLKFBIN ),//General output feedback signall
.CLKOUT0 ( clk_100M ),
.CLKOUT1 (),
.CLKOUT2 (),
.CLKOUT3 (),
.CLKOUT4 (),
.CLKOUT5 (),
.LOCKED ( ),
.CLKFBIN ( CLKFBIN ), //CLOCK feedback input
.CLKIN ( clk ), //clock input
.RST ( ~rst_n ) //asynchronous pll reset
);

58.xilinx原语DCM,PLL的使用的更多相关文章

  1. Xilinx原语学习之时钟资源相关原语

    一直来,都是使用Vivado中自带的GMIItoRGMII IP核来完成GMII转RGMII的功能:尽管对GMII及RGMII协议都有一定的了解,但从没用代码实现过其功能.由于使用IP时,会涉及到MD ...

  2. Xilinx器件原语

    原语,其英文名为primitive,是FPGA厂商针对其器件特征开发的一系列常用模块的名称.原语是FPGA芯片中基本元件,代表FPGA中实际拥有的硬件逻辑单元,如LUT,D触发器,RAM等.相当于软件 ...

  3. Lattice系列FPGA入门相关0(Lattice与Altera、Xilinx对比及入门)

    需求说明:Lattice系统FPGA入门 内容       :Lattice与Altera.Xilinx对比 来自       :时间的诗 1.Lattice与Altera.Xilinx对比 latt ...

  4. Xilinx FPGA编程技巧之常用时序约束详解

    1.   基本的约束方法 为了保证成功的设计,所有路径的时序要求必须能够让执行工具获取.最普遍的三种路径为: 输入路径(Input Path),使用输入约束 寄存器到寄存器路径(Register-to ...

  5. xilinx仿真库的作用(原创)

    ① secureip库:硬核(HARD IP)仿真(功能仿真和时序仿真)模型(hard IP simulation model),比如PowerPC.PCIE.SRIO.DDR等.Simulation ...

  6. FPGA芯片内部硬件介绍

    FPGA芯片内部硬件介绍 FPGA(Filed programmable gate device):现场可编程逻辑器件 FPGA基于查找表加触发器的结构,采用SRAM工艺,也有采用flash或者反熔丝 ...

  7. Mdoelsim10.4怎么脚本单独仿真ISE14.7 IP核

    软件版本: Modelsim10.4SE ISE14.7 仿真IP:时钟管理IP(clock wizard)   流程: 1.对于Modelsim10.4SE,并不自带Xilinx家的仿真库,因此首先 ...

  8. GTX的生成(包括COMMON)

    GTX的生成(包括COMMON) 1.每一个GTX Quad需要一个GTX common,同时GTX common只包含有QPLL,不包含CPLL. 2.kintex-7设备只支持GTX 3.参考时钟 ...

  9. IC设计笔试面试小问题总结(随时更新)-IC设计笔记(三)

    都是一些细节性问题,放在一起记忆,一问一答的形式,有任何问题欢迎文章上方微博讨论,多思多想. 1.What makes the difference between Run time and CPU ...

随机推荐

  1. iface eth0 inet dhcp

  2. 十、Struts2结果集

      十.Struts2结果集                         1.Struts.xml配置文件 result元素:指定动作类的动作方法执行完后的结果视图. 属性: name:字符串,与 ...

  3. Cookie与Session的一些总结

    一.Cookie: Cookie主要存储一些不敏感的数据,只能存储字符串类型 执行过程: (1)第一次请求: 客户端将数据(比如用户名)以请求报文的形式请求服务器端响应, 服务器端得到数据(用户名), ...

  4. 代码分享:php对二维数组进行排序

    发布:net/PHP编程  编辑:thebaby   2013-06-28 13:12:54  [大 中 小] 转自:http://www.jbxue.com/article/9991.html本文介 ...

  5. SQL Server自增长列插入指定值 -- SET IDENTITY_INSERT ON|OFF(转)

    想要将值插入到自动编号(或者说是标识列,IDENTITY)中去,需要设定 SET IDENTITY_INSERT 示例: 1.首先建立一个有标识列的表:CREATE TABLE products (i ...

  6. Windows 8.1激活问题

    今天电脑开机,莫名的出现“你的Windows证书即将过期”. 系统本来用HEU_KMS_Activator 已激活成功,但查看系统激活状态时,结果如下图所示: 显示系统是已激活成功的.但还是有提示说系 ...

  7. Laravel 5 基础(七)- Eloquent (laravel 的ORM)

    我们来生成第一个模型 php artisan make:model Article #输出 Model created successfully. Created Migration: 2015_03 ...

  8. smarty第一天

    1.安装 安装Smarty发行版在/libs/目录里的库文件(就是解压了). 2.工作原理 美工人员 1. 写模板, HTML CSS JavaScript 2. 使用Smarty表现逻辑 放变量, ...

  9. asp.net mvc razor html encoding

    HTML Encoding 为了跨站点的脚本攻击,Razor 语法会直接将脚本代码编码输出. @{string message = "<script>alert('haacked ...

  10. static in C/C++

    最近经常碰到static,之前也使用过,但都是一知半解,所以下决心做个整理总结,搞搞灵清它到底用哪些作用. 一.static in C 1.默认初始化为0: 如果不显式地对静态变量进行初始化,它们将被 ...