描述
使用ViTEX-II DCM的负模式、固定模式相移需要对时钟Mu邢进行较小的修改。
具体而言,当DCM处于复位状态(当RST信号保持高或在配置之后的启动序列期间)时,必须使用CLKIN来驱动CKFFB。
下面的图表和示例Verilog和VHDL代码说明了这种简单修改的实现。
对于任何正相移或任何可变模式相移,不需要进行这种修改。
注:
该要求适用于使用固定模式相位的任何ViTEXI/ViTEX-II PR-DCM,而不管DCM的RST是否连接到用户信号。
RST必须保持高至少三个时钟周期。
这个问题适用于所有的ViTEX II器件。
这不适用于ViTEX-4DCM。关于此警告和ViTeX-4DCM的更多信息,请参见(赛灵思解答22095).
这个问题固定在下面列出的VelTEXII专业器件中:
解决方案
下图说明了时钟复用的修改:
注释PAR可能会报告一个警告:iBFG(CLKIN)到BUFGMUX连接不是最佳连接,不会使用两个组件之间的快速连接。
你可以安全地忽略这个警告。在这种情况下,专用连接对于IGBFG-BUFGMUX连接来说是不必要的。
Verilog示例
//DCM实例化
DCM UE-DCM(CLKIN(CLKIN),.CKKFB(CLK0X新),.RST(RST),.CKK0(CLK0),.C锁定(锁定));
//BuffGMUX实例化
BufgMUX uBufgMUX(o(CLK0x新),I0(CLK0),I1(CLKIN),S(RST));
VHDL实例
——DCM实例化——
UE-DCM:DCM端口映射(ClKIN & Gt;ClKIN,
Clkfb= & gt;
DS森=& 0;
PSCK=& 0;
pSISDEC=& 0;
RST=>RST;
Clk0= & gt;
锁定= & gt;锁定;
——BuffgMUX实例化
UBUFGMUX:BUFGMUX(I0= & Gt;Clk0)
I1= & gt;
O= & Gt;Clk0x新;
使用正相移的替代性工作
你也可以通过使用等效正相移值来解决这个问题。给定FieNeSwittStRead=10 ns的当前数据表规范,该限制开始对低于100 MHz(大于10 ns的输入周期)的输入频率产生影响。
给定方程:
相移=(ps/256)* PeriodCLKIN
对于10 ns的输入时钟周期:
可变模式:-128和lt=ps & lt;=128
固定模式:0和lt=PS & lt;=255(全范围)
对于20 ns的输入时钟周期:
可变模式:-64和lt=ps & lt;=64
固定模式:0和lt=PS & lt;=128
对于40 ns的输入时钟周期:
可变模式:-32和lt=ps & lt;=32
固定模式:0和lt=PS & lt;=64
在固定模式或可变模式下,可以通过选择以下一种来扩展范围:
-CKK90、CLK180或CLK270,而不是CLK0
-CLK2X180而不是CLK2X
-CKFFX180而不是CKFFX
即使在25 MHz(40 ns的周期),与这些CLK *相位耦合的固定模式允许在整个输入时钟周期范围内移位。请参阅下图:
此外,在DCM中的相移(DPS)功能需要用于延迟调整的CLKFB。有关更多信息,请参见ViTEX-II或ViTEX-II Pro用户指南:设计考虑-使用数字时钟管理器(DCM)& GT;相移:
病毒二号
HTTP://www. xLimx.COM/XLNX/XWeb/XILIPu外宣SyDePas.jSP?类别= /用户+指南/ FPGA +器件+家庭/ ViTEX I//ILANGANGID=1
VIETEXⅡPRO
1。去:
HTTP://www. xLimx.COM/XLNX/XWeb/XILIPu外宣sIdx.jSP?类别=用户+指南
2。选择“FPGA器件家族”下的ViTEX II PRO。
三。选择ViTeXII专业平台FPGA用户指南。
由于CLKFB必须来自CLK0或CLK2X,所以使用DLL输出。因此,DPS函数的最小CLKIN频率为24 MHz。
注:为了确保正确设置/保持时间,请参阅(赛灵思解答18668).
使用可变相移的替代工作
配置具有可变相移的DCM如下:
1。将CKOUTUXPASEXHIFT属性设置为变量。
2。将PrimeSHIFT属性设置为所需的值。建议在正范围内的正值和相移。见(赛灵思解答15130).
三。将PSCK连接到时钟信号。
4。连接PSEN到GND,如果你不打算增加或减少相移。
5。连接pSnDEC到一个信号,GND,或VCC。
注:为了获得最好的结果,使用5.1i Service PACK 3或更高版本。下面的工作会导致较早的软件版本中的映射错误,如下所述:
ISE 4.1I
MAP报告以下错误:
错误:MPLIB:如果CKOUTUXPHINA移相设置为变量,则必须对DCM符号“298”的PSNDEC、PSEN、PSCK和PSDO进行路由。
为了解决这个问题,您可以修改HDL文件,使PSNDEC和PSEN连接到虚拟输入信号。
ISE 5.1I
报告如下错误:
5.1I:错误:DCCM符号“StIdIdCMCMVARYDCMYNST”(输出信号=IntIdDCMCMVARLCK00BUF)必须由有源信号驱动,如果CKOUTULL PASSHIVE SHIFT移位设置为变量,则DCEM符号PSNDEC、PSEN、PSCK和PSDON。
您可以安全地忽略此错误。若要绕过映射中的此错误,请使用以下环境变量关闭DRC检查:
个人计算机:
设置XILIMAPSKIPSIPLogiLogyDRC=1
UNIX:
StEnv.XILIMAPKSKIPLogLogic DRC
ISE 5.1i服务包3
5.1i Service PACK 3中的修复防止了映射错误的发生。5.1i Service PACK 3可在:
没有回复内容