今晚把各个显现的字符都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可调。
三种采样形式显现。