一、引言
Xilinx公司从Virtex II的DCM数字时钟管理到Virtex5及其后续芯片的CMT模块 (2个DCM和1个PLL构成) , DCM数字时钟管理在FPGA设计中的功能越来越重要。如何有效监控时钟也成为一个越来越重要的问题。
二、DCM的内部结构和控制信号的作用
DCM提供了如下的功能:延迟锁定 (DLL) 、数字频率合成 (DFS) 、移相 (PS) 和逻辑状态 (SL) 。部功能框图如图1所示。DCM的控制信号包括复位信号RST、LOCKED输出信号和8位STATUS[7:0]输出信号。
当复号为高时, 表示DCM电路被锁定, DCM功能正常。STATUS低三位 (2, 1, 0) 状态位可以指示DCM的工作状态。三个状态位信号异常 (高电平) 定义为:STATUS (0) 为高时, 表示DCM相移溢出;STATUS (1) 为高时, 表示无时钟信号 (CLKIN) 输入;STATUS (2) 为1时, 表示无分频时钟信号 (CLIKFX) 输出。
若LOCKED信号输出为高时, 则认为DCM时钟输出有效。但是在环境恶劣 (低温工作) 的情况下, 虽然LOCKED信号输出持续为高, 实际上DCM并没有时钟输出。进一步通过Chip Scope软件观察LOCKED和STATUS[2:0]信号, 发现此时FPGA中DCM的STATUS状态位信号上报为010, 根据状态指示信号的定义, 说明DCM无时钟信号输入, DCM已经失锁, 不能正常工作。
所以不能完全通过LOCKED信号了解DCM的工作状态, 需同时监控DCM的STATUS信号状态, 以提高系统时钟的稳定性。
三、DCM的监控策略
使用DCM产生系统时钟, 需要一个稳定的外部输入时钟对DCM的LOCKED输出信号和STATUS输出信号同时进行监控, 当LOCKED输出信号和STATUS输出信号工作异常时, 产生一个高复位信号复位DCM, 使其重新锁定电路并输出正确的时钟信号。
(一) DCM的异常工作的判定
DCM的状态可以由LOCKED输出信号和3位STATUS[2:0]状态观测, 当LOCKED输出信号为低电平, STATUS[2]、STATUS[1]、STATUS[0]信号为高电平时, 认定DCM工作异常。
(二) DCM的监控信号的设计
选用稳定时钟输入作为DCM监控的信号的时钟, 复位信号采用高复位信号。DCM复位信号设计的软件流程图如图2所示。
程序描述如下:
监控状态位, 如果状态位为1, 程序会产生复位脉冲, 对DCM复位;确保程序处于正常的工作状态。
四、DCM的仿真数据及试验
在修改程序后实物测试结果见图3所示。观测同时复位LOCKED信号和STATUS[2:0]的程序, STATUS[2:0]三位显示为低电平 (0) , mlvds_a_locked (LOCKED) 为高电平 (1) , DCM工作正常。所以使用DCM, 必须同时监控LOCKED信号和STATUS[2:0]信号。
五、结论
本文针对DCM在环境恶劣的情况下对DCM的故障进行了分析, 并根据故障原因提出了DCM监控技术, 并且对监控的结果进行了验证。由于DCM在FPGA设计中的重要地位, 故详细阐释了DCM的监控原理和监控的程序的设计及其实物验证的结果。不但有效的解决了问题, 同时提高了系统时钟的可靠性。
摘要:FPGA设计中常使用DCM产生所需的系统时钟, 但是需要进一步监控DCM的STATUS状态位.当DCM由于异常而失锁后, 程序产生一个高复位信号复位DCM使其重新锁定, 提高了系统时钟的可靠性。
关键词:FPGA,DCM,状态位
参考文献
[1] 李丙玉等.FPGA设计中DCM的原理分析及应用研究[J].微计算机信息, 2009 (4) .
[2] 张振.FPGA内数字时钟管理模块的研究与设计[J].西安电子科技大学硕士学位论文, 2014 (8) .
[3] Virtex-II Platform FPGA User Guide.xilinx, Inc.UG002 (v2.2) , November, 5, 2007
【FPGA设计中DCM状态位监控的工程应用】相关文章:
探究供配电设计中电力监控系统的实际应用12-30
3G视频监控系统在工程施工管理中的应用09-10
计算机监控系统在泉河杨桥枢纽工程中的应用10-12
FPGA实现曼彻斯特通信在测井中的应用02-20
状态检修中带电检测诊断技术的应用02-27
设备状态信息在压缩机维修中的应用09-12
物联网技术在电力设备状态检修中的应用01-16
状态检修在输煤设备工作中的应用分析09-11
人机工程在煤矿机械设计中的应用09-10