特权同学

逻辑分析仪我也DIY(四)—神秘蓝点

0
阅读(2406)

今晚把各个显示的字符都DIY上去了,不过在某些 蓝色字符附近出现了许多意外的神秘蓝点,如下:

 

         上面一共四个Ch字符中,只有Ch2是完全没有问题的,特权同学就感觉很纳闷了,为什么同样的16个Ch字符,就这几个出现这些神秘的蓝点。家中的LCD专家还特地给分析 了,这个Cha前面的点那是四个像素的蓝点在一起,觉得不是坏点,那一定是认为打上去的。换我的话说,那是FPGA给送上去的点。所以回头来显示走读代码找问题,一通找,最后还是没发现什么不对的地方。因为时序约束 后还都有较大的余量,所以这个原因排除,而这个字模是存储在M4K配置的ROM里的,所以问题很可能和它有关系,ROM的配置后又一个可 选的输出数据是否要让输入时钟打一拍,默认是打一拍,我一直以为这里的打一拍不打一拍问题不是很大,不打一拍,送完地址的第二个时钟周期出数据,而打一拍 应该是送完地址的第三个时钟周期出数据,所以也没太在意。

无奈之下只能重新让ModelSim里帮忙找问题,再次进行后仿真,这次就抓住出问题的地方,本想找扫描到的点位置送出来的数据是否正 确。结果由于这个时间也太长了,咱等不起,索性就认真的就ROM的时序做起了文章, 这一看可不要紧,问题浮出水面。

 


第1条是ROM的输入时钟;

第2条是ROM1的地址(输出数据 没有用时钟打一拍);

第3条是ROM1的输出数据;

第4条是ROM2的地址(输出数据 打了一拍);

         第5条是ROM2的输出数据。

         ROM1里,地址001的数据是0710,地址002的数据是0808;ROM2里地址2d的数据是02000000。我想问题就出来了,对于ROM1在第一个时钟上升 沿送完地址后(延时一点到达),第二个时钟上升沿虽然数据出现了,但是我们的时钟是采不到的,它是在第二个时钟上升沿的建立保持时间后才出现在总线上的, 所以真正意思上读出数据的时间应该是时钟的第三个上升沿。ROM2也类似,由于内部 时钟打了一拍,所以它比ROM1要再慢一个时钟周期。这就是我的问题所在,换句话说,字模数据显示位置整个右移了一个坐标。

         随后,地址再早一个时钟周期置位,问题解决了。

 



         今晚过后,整个就下面的一个效果。

 


  

        

 采样模式显示。

 

 采样周期可调,从10ns到100us可调。

 

 

 三种采样模式显示。

Baidu
map