Topweaver Anydivider 1.1

用户手册

2006年12月

English Version

概述

使用方法

实现策略

版本历史

版权


概述

DLL/PLL资源为我们提供了很好的频率合成方法。但是一些时候人们依然通过编写HDL代码来实现时钟的分频,以实现特殊的分频系数,可调节的占空比和其它DLL/PLL不容易实现的功能。

Topweaver Anydivider(TAD)是一款图形界面的EDA工具软件,可以用来产生一个对输入时钟(频率为Fin)任意数分频后的输出时钟(频率为Fout),而并不需要DLL或PLL。输出时钟的波形既可以由TAD自动计算,也可以由用户可视化的手工调整。

Fout=Fin * M / N. (1<=M<=N, 1<=N<=32700)

虽然在没有DLL和PLL时使用精心的后端约束可以产生一个M>N的输出频率,但是这个版本的TAD并不支持M>N的情形。

您可能需要合适的后端约束,高性能的综合以及PAR工具以达到更好的性能。

实际上TAD可以被用于其它场合,比如作为任意时隙的指示信号。

Topweaver Anydivider是Topweaver工具家庭的成员。

 


 

使用方法

自动模式

在“输出频率”,“复位控制”,“占空比”以及“信号名称”项目中设置需要的值。

移动占空比轨迹条到合适的位置,同时观察图表的变化。

观察性能报告。

使用文件菜单或者工具条中的命令产生Verilog HDL源代码。

手动模式

确认“允许手动调整占空比”被选中。

在波形图的“Clock Out”部分,拖拽信号的边沿,脉冲或者任何选中的部分。 图表动态的反映了移动情况。

您还可以使用扫描命令扫描所有的可能情况。


实现策略

在使用时钟负沿的情况下,Topweaver Anydivider可以基于两种不同的实现方法来产生HDL代码。第一种方法是采用Gabor在讨论组中提出的双触发器异或结构(http://groups.google.com/group/comp.arch.fpga/browse_thread/thread/be0ac835e148bf29/);第二种方法是采用门控时钟。
下图显示了在产生短脉冲时两种实现方法的不同。

Figure: XOR and Gated Clock mehtods when generating a narrow pulse

在使用异或方法时,触发器H和L无法自动从错误状态中恢复,所以软件提供了一个可选的错误指示信号。


版本历史

The following table shows the revision history for Topweaver Anydivider.

Date
Version
Revision
Dec 2, 2006
1.0
Initial Topweaver Anydivider release.
Dec 17, 2006
1.1

Add XOR implementation method, provided by Gabor on the newsgroup article (http://groups.google.com/group/comp.arch.fpga/browse_thread/thread/be0ac835e148bf29/).
Add scale mark function.
Some small improvements.

 


版权

Topweaver Anydivider 1.1

Topweaver Tools Family

Copyright (c) 2002-2006, Topweaver

Website: http://www.topweaver.com

All rights reserved.