VelTeX——如何在HDL代码中实例化CLKDLL-Xilinx-AMD社区-FPGA CPLD-ChipDebug

VelTeX——如何在HDL代码中实例化CLKDLL

描述

这些应答记录描述了如何在VLTEX设计中使用CLKDLL。

解决方案

CLKDLL Verilog示例(此示例使用CLK2X输出):

模块USECLK(DIN,CLK,DOUT,锁定);

输入DIN,CLK;

输出输出,锁定;

Reg Dout;

线CKLIN,CKKY-BUFG,A,B,C,D,E,F,GD;

分配GD=1’B0;

BUFG U0(.I(CLKIN It),O(CKKY-BUFG));

CLKDLL U1(CLKIN(CLK),RST(GD),CLKFB(CLKY-BUFG),CLK0(a),.CLK90(b),CLK180(C))

CLK270(D),CLKDV(E),CLK2X(CKKY-IN),锁定(锁定)

总是@(PASEDGE CKYBUFG)

开始

DUT和DIN;

结束语

终端模块

CLKDLL VHDL示例(本示例使用CLK2X输出):

库IEEE;

使用IEEEStdLogLogIC1164。

实体USECLK是

端口(DIN,CLK):在STDYLogic中;

DUT,锁定:输出STDYLogic);

结束使用;

USELK的体系结构

组件BUFG端口(I:在STDYLogic中;O:OUT STDYLogic);

端元

组件CKDLL端口

CLKIN,CLKFB,RST:在STDYLogic中;

CKK0、CLK90、CLK180、CLK270、CLK2X、CLKDV、锁定:OUT STDYLogic;

端元

信号CKLIN,CKKY-BUFG,A,B,C,D,E,GD:STDYLogic;

开始

Gd & lt;=’0’;

U0:BUFG端口映射(I=& Gt;ClkIn It,O= & Gt;ClkU-Bufg);

UK1:CKDLL端口映射

Clk= & gt;

RST=& gd;

Clkfb=&;

Clk0= & gt;

Clk90= & gt;

Clk180= & gt;

Clk270=gt;d

Clkdv= & gt;

Clk2x= & gt;

锁定= & gt;锁定);

过程(CKLY-BUFG)

开始

如果(CkkU-Bufg’事件和CkkuBufg=‘1’),则

DUT和DIN;

结束如果;

结束过程;

结束语;

必须在HDL代码中实例化CLKDLL。目前还没有可以推断出它们的综合工具。当使用BUFGDLL组件时,分辨率1和2说明最简单的CKDLL使用。然而,BUFGDLL允许用户只访问CLK0输出引脚。如果需要使用任何其他的CKDLL输出引脚,则必须实例化CLKDLL组件。请参阅第3和4号决议。γ

BuffgDLL Verilog实例:

模块USECLK(DIN,CLK,DOUT);

输入DIN,CLK;

输出输出;

Reg Dout;

BUFGDLL U0(.I(CLK),O(CLKJIN));

总是@(PASEDGE CKLIN)

开始DoT & lt;= din;

端点模块

BUFGDLL VHDL实例:

库IEEE;

使用IEEE.STDYLogiCy1164.ALL;

实体USECLK是

端口(DIN,CLK):在STDYLogic中;

DOUT:输出STDYLogic);

结束使用;

USELK的体系结构

组件BUFGDLL端口(I:在STDYLogic中;O:OUT STDYLogic);

端元

信号CKLIN:STDYLogic;

开始

U0:BUFGDLL端口映射(i=& gt;CLK,O= & Gt;CLKJIN);

过程(CKKIN)

开始

如果(CkkItIn事件和CkkIn=‘1’),则

DUT和DIN;

结束如果;

结束过程;

结束语;

请登录后发表评论

    没有回复内容