基于高速串行BCD码除法的数字频率计的设计

时间:2012-07-05来源:网络

BCD码减法运算采用行波进位方法,因此必须尽量减小进位逻辑上的延迟。ACEX 1K系列的每个LE中都提供了一个专用的进位链和级联链,充分利用这些资源可以提高多位串行BCD码减法的性能。根据ACEX1K系列周期约束,其延时为:

Tclk=Tco+B+Tsu-(E-C)

式中,Tco为clock-output的延时,Tsu为建立时间,两个时间均可达到1~2ns;B表示数据延时,为0.6ns;E-C)表示时钟倾斜[4]。因此,总时钟延时为4.6ns,即工作频率可以达到200MHz以上。本文采用100MHz的工作频率,提高了运算速度。为了减小延时、提高工作效率,在对布局布线进行精确控制以后,把BCD码减法运算做成模块,在除法运算过程反复调用,达到了模块复用效果,大大提高了资源的利用率。

在整个BCD码除法运算单元,首先通过输入数据决定信号是否超出测量范围。

·当ov1为1时,该信号的频率大于1Hz;

·当NSNX,该信号的频率大于100MHz;

·当NS=NX,该信号的频率为1Hz;

·当NS>NX,该信号频率在测量范围内。

根据输入的NS和NX计算输入信号的频率。



除法运算通过双状态机的设计控制一个BCD码减法运算。所有状态用同一时钟进行控制,实现了系统的同步设计,消除了异步逻辑中存在的种种险象。各个状态之间的关系如图5所示。当计数模块完成计数时,则将数输入除法模块,开始移位以确定输入的值;然后发clrs信号到BCD码减法运算单元开始运算,循环相减。当循环结束时,发回一个HNS信号,部分余数开始移位,进行下一轮的循环。最终输出FOUT,即运算单元结束。

本频率计设计采用8位的十进制计数器,随后应用状态机实现了高速串行BCD码除法运算,计算出频率值。对BCD码减法模块的复用,减小了资源的利用。

当今VLSI的发展日新月异,FPGA的容量和速度成倍地增长,而价格却逐年下降,这将使得基于FPGA设计的数字频率计优势更加明显。相信这一技术必将得到更加广泛的应用。

1 2 3

关键词: 频率测量 周期测量 FPGA VHDL 状态机

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版