wuyuehang 发表于 2013-1-26 10:41:27

Altera_Pll的“正常模式”探讨

本帖最后由 wuyuehang 于 2013-1-26 10:43 编辑

条件:(1)epc35f672c6--cycloneII驱动一个133MHz的SDRAM;
      (2)其他sdram时序不说,讨论一个参数Tcms(command set up time);

stp2测试:

   pll选择“正常模式”,分别将50MHz源时钟倍频达到相移为0度的266.6667MHz和133.6667MHz,
       266.6667M用于stp2采样时钟,133.6667sdram的全局时钟。采样的信号如下:
      
         sdram_write
         
         sdram_read
      分析:从采样到的133MHz信号来看,在正常模式下所有内部逻辑寄存器都是在其下降沿进行更新,而我的sdram模块写的都是在其上升沿改变,一开始以为是错,
   将pll频率降下来,分别为10M和5M时候册,发现sdram正常在骑上升沿更新。找来alt的pll看,按我的理解就是,以上不适逻辑的错误,pll本身在工作于“正常模式”下
   当频率比较高时候pll的输出c和时钟源有一定的相移,然而正常模式通过某种手段进行弥补,弥补的对象时内部网络模块(也就是le等)。而外部的时钟输出的相位就未知了。
   
   其次,sdram的时钟信号和数据、地址线、控制线之间等需要有个Tcms的延时。以上2图的sdram_clk作为io输出在“正常模式”下满足这个相位要求,估计是运气吧。如果不满足,
   想到的一个办法就是pll生成2个133MHz,第一个控制这个逻辑,第二个调整相移单独给sdram时钟使用。

页: [1]
查看完整版本: Altera_Pll的“正常模式”探讨