CrazyBingo

都是门控时钟和亚稳态惹的祸

0
阅读(2714)

都是门控时钟和亚稳态惹的祸。。。我的VGA 真彩图片显示完美解决了。

事情发展到了今天, 终于突然脑子一亮,想当年纠结了那么久的问题,现在发现好崩溃好傻逼,如今完美解决掉了。

(1)由于我再vga驱动模块中,vs的时钟使用了hs作为驱动信号,某种某种程度上由于设计数据量之大,门控时钟带来的危害,是的数据传输效率上不得不考虑,因为传输的指令速度已经达到了125MHz,全局布局布线速率不得不考虑了。而且,另外的层面上,因为门控时钟的不准确,也可能数据缺失。以后得养成习惯,用使能时钟来完成一切操作(某些要求不高的场合或者必须这样干的除外)。

(2)亚稳态使得我读取sram的数据不是那么准确。因为我当时再给sram地址的同时,读取了sram 的值, 这不管从理论上还是实际上都是行不通的,因为读数据最好是在数据稳定的时刻,而我的设计中,由于读取希望sram的值再hold_time中,而此时恰恰 地址变化了,使得sram刚好开始变化,属于亚稳定,不在hold_time,因此,不理想的状况下是,每次读取的数据的时候都是输出数据刚要开始变化的 时刻,因为虽然读取到了其实还是又缺失的。由于sram(-10)能跑到100MHz,为了配合XGA 65MHz的频率,设计sram模块以130MHz的速度运行,读取的时候:第一状态给地址,第二状态读数据--整体速度 65MHz<130MHz,因此满足了时序要求,也能在保持时间读取数据,满没解决掉了。

如下三幅图片是我准备在VGA上显示的原图、未处理前显示的图片、处理后显示的图片,你可以看到其中的差别(第三张手机拍的,效果不好,但是已经完美解决了)

(1)


(2)


(3)


 

每一步都得非常的小心,即使是一个寄存器,也得优化到极限,这些原因驱使着我不得不去学好时许约束,sdc….