第二步,定义一个状态机,假设计数器的计数值为num,简化后的状态转移图如图5所示。
状态RISE标记的时钟节拍是grl,处于此状态时,如果原始方波信号为高电平,便得到a点;如果原始方波信号为低电平,便得到b点。状态DOWN标记的时钟节拍是gda,处于此状态时,如果原始方波信号为低电平,便得到c点;如果原始方波信号为高电平,便得到d点。
第三步,定义一个随机变量random,random的变化范围是0~2 048,可通过11位m序列实现之。使用verilog语言的位拼接运算符[6],在a 点和d 点将送给DAC 的数据定义为10 240 加random,即“{3‘b101,random}”;在b 点和c 点将送给DAC 的数据定义为4 096 加random,即“{3’b010,random}”。
3 测试与总结
使用新的方波算法后,可得测试结果如图6所示。
对比图6和图1可以看出,方波重影的宽度从5 ns缩短至3 ns,并且上升沿呈实心状,不再由两条边沿组成。
另一方面,图6和图1中,方波的上升时间均为15 ns左右,这说明方波改进算法并没有导致上升时间的增加。
2/2 首页 上一页 1 2 |