特权同学

PLL专用输出管脚带来的反思

0
阅读(2218)

这个视频采集的项目FPGA原型设计上还真是难不倒我,只不过硬件管脚分配上的粗心大意让我吃尽了苦头。掐指算算从5.1加班时拿到PCB,到今天也不到两周,已经排除基本故障,把AV视频信号像模像样的显示在了液晶屏上,只不过还有一些美中不足的BUG还需要下一阶段花上未知个单位时间来解决。图像信号是有了,只不过会时不时的闪一下屏,看样子很可能是帧同步检测部分产生了误码带来的。此外,对某些光反射较强的物体边缘色会特别突出。希望对视频芯片的寄存器做一些配置能够解决这个问题。

再来说排故过程中让我很是懊恼的几个BUG。特权同学自认为是千不该万不该错在这些很原则性的问题上。这两个BUG都是和时钟管脚的分配有关。其一是上篇博文点到的视频芯片同步时钟VCLK,前期硬件设计中没有充分的考虑到其在FPGA内部使用的会很频繁,在编译报告中它的扇出达到了238个,虽然在后期时序分析中好像也无大碍,但是感觉上如果确是出现帧检测误码问题,那么这个VCLK就会是首当其冲的罪魁祸首。这个VCLK在应用中一定要接在FPGA的专用输入管脚上,好让其分享FPGA内部的全局时钟网络,减少时钟网络延时。

其二,也就是标题所示的BUG:PLL专用输出管脚。这个问题在调试SDRAM的时候暴露无遗,如图1和图2所示,分别是PLL输出到FPGA外部连接到SDRAM的时钟管脚sdram_clk分配在非专用管脚和PLL输出专用管脚时的路径报告。很明显,分配在专用管脚的图2报告中的路径延时小很多。

图1

图2

对于特权同学使用的EP2C8Q208器件,如图3和图4所示,47脚和48脚分别为PLL1输出专用的正和负时钟管脚。在使用PLL1的输入时钟作为外部时钟时,建议设计者使用这两个管脚(器件手册里没有特别提到这两个管脚,但是依照特权同学的经验分析,它们应该是作为差分时钟管脚时同时使用的)连接外部器件,如果只是一个输出时钟,那么应该使用47脚而非48脚。当然,如果你尝试使用48脚,那么会得到和图1类似的路径报告。

图3

图4

特权同学也曾洋洋洒洒图文并茂的分享过《Cyclone器件全局时钟尽在掌握》一文,只不过理论分析得头头是道,却往往在实践中由于粗心犯下低级错误。仔细想想,确实不应该。年轻,没办法,总是要为自己的浮躁和粗心埋单。希望在最近这一系列的“飞线”项目中多有一些反思,不要总以为自己勤快能干过于自信,学会放慢一点节奏,再沉稳一些,再细致一些,对问题考虑得再全面一些。

Baidu
map