ET创芯网论坛(EETOP)

找回密码

  登录   注册  

搜帖子
汽车电子资料大全(下载奖励300信元)
楼主: Timme

[讨论] 自己写的DDR2控制器(含PHY)在FPGA上跑到1066了【27楼更新手动PR/时钟树介绍】

[复制链接]
 楼主| 发表于 2012-8-13 09:58:32 | 显示全部楼层
[quote]回复  Timme


   还有一点不是很明白,也想请教一下楼主。我一直不是很明白,FPGA上怎么做P&R,我一直 ...
ysxiliu 发表于 2012-8-13 09:07 [url=

对数据路径,我们可以指定关键的CELL/DFF摆到指定的位置;对时钟路径,我们可以指定是否走全局时钟,可以让时钟通过特定的某点(通过RTL中加keep注释实现)
这年头所有eda软件都能自动跑,asic后端工具里也可以点几下就自动跑出版图,但手动干预总是更好的。。。Quartus对时钟路径的优化比较弱,手动做时钟树一般可以使时序优化1~2ns...
回复 支持 反对

使用道具 举报

发表于 2012-8-13 14:22:58 | 显示全部楼层
回复 11# Timme


   受教了,谢谢楼主~
回复 支持 反对

使用道具 举报

发表于 2012-8-14 16:24:59 | 显示全部楼层
回复 11# Timme


   我写过一个支持DDR2/3的控制器,在V6的FPGA上也只能跑300M多。不怎么会约束时钟,一般只是在综合时用synplify自动加约束,问下LZ手动的约束怎么加啊?
    我的PHY使用的XILINX和ALTERA的IP中的PHY,一般就是对PHY中的PLL输入输出的钟加周期的约束
回复 支持 反对

使用道具 举报

发表于 2012-8-14 16:43:13 | 显示全部楼层
你的控制器现在只是简单的协议解释,本身的时序就很好,不过要以后用的话加上客户接口,和请求的调度什么的,估计就跑不了这么高。那些请求调度算法还是比较复杂的,一般都是大公司的专利,不怎么好提高时序
回复 支持 反对

使用道具 举报

发表于 2012-8-14 16:54:09 | 显示全部楼层
LZ,你的ddr效率如何?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-8-14 19:32:08 | 显示全部楼层
本帖最后由 Timme 于 2012-8-14 19:56 编辑




对Altera的片子,在Quartus中你可以先在Timequest里用向导添加SDC约束,以此入门。DDR的话输入输出的端口肯定要设双沿约束。。。


Xilinx的时序约束比较弱,想自己写PHY跑上1066估计是个梦。。。

时序约束只是入门第一步而已;并不是写好一个完美的约束,工具就会输出一个满意的结果。。。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-8-14 19:34:06 | 显示全部楼层
本帖最后由 Timme 于 2012-8-14 19:54 编辑


   
你的控制器现在只是简单的协议解释,本身的时序就很好,不过要以后用的话加上客户接口,和请求的调度什么的 ...
wangyingwei 发表于 2012-8-14 16:43





调度算法一般损耗的是Command Rate,并不冲击接口时序。我现在在1066下跑的还是CR1,一般的商业控制器会延缓到CR2或CR3。。。


你可以理解为,将复杂的调度用流水线来做,就可以跑高频了

另:控制器的速度瓶颈主要在I/O,单纯片内跑上五六百兆根本谈不上难度。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-8-14 19:35:37 | 显示全部楼层
本帖最后由 Timme 于 2012-8-14 21:18 编辑


   
LZ,你的ddr效率如何?

benny46 发表于 2012-8-14 16:54




现在的Latency可以到26.25ns,全球最低。AIDA64中内存潜伏最低的也有47.5ns。

现在的应用只关心延时不关心带宽,所以没对带宽作优化。
回复 支持 反对

使用道具 举报

发表于 2012-8-15 00:09:49 | 显示全部楼层
回复 18# Timme


   额···你这个貌似还只是去验证你的时序命令有没有跑对而已吗?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2012-8-15 08:24:54 | 显示全部楼层
本帖最后由 Timme 于 2012-8-15 08:33 编辑


   
回复  Timme


   额···你这个貌似还只是去验证你的时序命令有没有跑对而已吗?
benny46 发表于 2012-8-15 00:09





现在验证了的有发命令、写校验码、PHY依次作5级偏移读回校验码、选择最佳PHY偏移后的长期数据读写。Latency是指控制器外部发出读请求到返回第一个数据的延时。

命令的Toggle Rate只有数据的一半,命令都跑不对就不用玩了。写数据是最难的,读数据有PHY支持感觉还好。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /3 下一条

关闭

小黑屋|关于我们|联系我们|ET创芯网 ( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2019-11-14 10:01 , Processed in 0.081776 second(s), 8 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表