注意下面几点可以让您的设计减少错误和不确定性,而且方便移植:
1.时钟信号由专用时钟输入引脚引入驱动芯片内部全局时钟网络。(时钟信号接普通用户引脚也可以工作,但不一定能驱动内部全局时钟网络,即使能驱动全局时钟,引入的延迟也较大);
2.除了芯片内部PLL或者DCM产生的时钟外,不要在内部产生时候。(如分频时钟,用分频时钟可以工作,但用逻辑单元产生分频时钟经布线通道不一定能驱动全局时钟网络,即使能驱动全局时钟,引入的延迟也较大);
避免分频时钟的一个方法是采用产生一个原始时钟周期的跟分频时钟相同的频率的时钟使能信号(CLKen).
3.除了需要做DDR接口处理的时候,只用一个时钟沿来寄存数据;
4.不要在内部产生异步的控制信号,例如复位信号或者置位信号;
- 内部产生的异步控制信号会产生毛刺;
- 作为替代,可以产生一个同步的复位/置位信号;
5.不要使用的多个时钟;
- 如果不能避免,确定您异使用了适当的同步电路来跨越时候域;
6.不要使用内部锁存器(Latch);
- 用DFF;
简单的说来就是要求就是:对于一个纯同步设计电路,建议您在任何可能的情况下只使用一个时钟(全局时钟由专用时钟引脚输入,全局异步复位/置位信号由专用输入引脚或者用户引脚输入,时钟分频用时钟使能信号等等)
-end-