打印

自己写的内存控制器,4层板目前跑到了1.4G

[复制链接]
3146|20
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
drentsi|  楼主 | 2018-12-24 18:10 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
顶层和底层布线,中间两层电源和地,JLC做的样板,自己手动焊接,纯粹是好玩。

验证了很多东西啊,跟说明书上不一样,比如说等长、线间距、过孔、电源退耦等等。
除了时钟等长,其它等长不考虑,由自动调整的IODELAY来搞定,不用绕线了。
线宽0.12mm,线间距0.12mm,什么规则都没考虑,只是布通,刚开始还没考虑速度问题。
高速信号线上的过孔最多的有3个。
电源退耦,FPGA使用了2个bank,每个bank的供电2个0805的22uf和1个0603的0.1uf,VREF每个引脚一个0.1uf。
内存那边,一个芯片使用了6个0603的0.1uf退耦,旁边再加2个0805的22uf,比较零散,方便手动焊接。
先行验证的工程没有仔细调教IOSERDES,只是跑个功能,目前受制于BUFG速度,跑1.4G稳定了。
看IODELAY校准的参数,还有很大的提升空间。
高速啊内存的神秘面纱被揭开了。
下一步就使用IO的高级玩意,估计在K7上能跑到2.4G

相关帖子

沙发
zhangmangui| | 2018-12-24 22:16 | 只看该作者
没到一个值     比如设计不好   想从1.6G跑到1.7G那就很费劲了

使用特权

评论回复
板凳
zhangmangui| | 2018-12-24 22:17 | 只看该作者
作为一个多年的硬件工程师     还是要有一定的设计保证   比如设计规则  阻抗控制  特殊处理
叠层  板材选择  

使用特权

评论回复
地板
ococ| | 2018-12-25 09:59 | 只看该作者
又见楼主大神!
膜拜一下。网络货币赚翻了,不知道现在做哪个方向呢?

使用特权

评论回复
5
drentsi|  楼主 | 2019-1-4 21:30 | 只看该作者
现在进度,花了好几天修改,使用了高级IO部件,同时IO接口的时钟不再使用BUFG,目前稳定跑在1.6G,正在改进测试2.0G
来看我吐血的实验板,4层板,0.12mm线宽,最窄处内存芯片下面间距0.1mm,直接拉的排线,不考虑等长


使用特权

评论回复
6
为FPGA献身| | 2019-1-5 23:39 | 只看该作者
你这是 什么哦 跑到1.6G . DDR4?

使用特权

评论回复
7
drentsi|  楼主 | 2019-1-6 19:29 | 只看该作者
本帖最后由 drentsi 于 2019-1-6 22:12 编辑

今天进度,稳定跑2G了,尝试2.4G失败,看校准结果,信号的高低电平宽度不一样了,而且有的bit有飘忽不定现象。
另外再补充一些信息,阻抗我是故意焊成不对称不匹配的,这个实验板基本上验证了各种不稳定因素,总结如下:
1.等长问题,最长的与最短的线差距有25mm多,FPGA通过校准过程可以补偿好
2.线路串扰问题,0.12线宽0.1mm间距拉了一排线,在2G数据速度下似乎不存在,
3.阻抗匹配问题,两端人为造成不一样,一边60欧,一边40欧,加上设计时不考虑阻抗,在2G速率下可以稳定运行,所以低于2G的板子只要两边ODT相等即可,根本无需考虑PCB阻抗,因为我设计时就没考虑过
4.过孔问题,有的线路没有过孔,有的有3个过孔,这可以归结到等长问题,2G速度还稳定,所以可以放心的打孔了5.数据线分组问题,有的bank既有地址又有数据,同时控制信号还跨越了PLL和bank,有一定影响,校准过程中能看到bank之间有延时的区别
6.VREF问题,这个比较重要,不然会出现码字高电平低电平宽窄不一样的情况
7.时钟问题,时钟没有严格等长,一对线差距5mm也是可以的,在2G数据速度下没啥影响
8.PCB层数问题,增加更多的层数不是必须
9.电源退耦,摆一大堆小电容不是必要

使用特权

评论回复
8
zxq6| | 2019-1-6 20:32 | 只看该作者
drentsi 发表于 2019-1-6 19:29
今天进度,稳定跑2G了,尝试2.4G失败,看校准结果,信号的高低电平宽度不一样了,而且有的bit有飘忽不定现 ...

感谢楼主的经验。
目前我们布的ddr3,只能跑到200兆(目标是533),使用的4层板。只有一个还算完整的地。电源基本都不完整,线宽线距是4mil。考虑了等长,otd使用的40r,1.5和0.75v的线宽最窄只有2-3mm,
这种情况,您能否给点建议,谢谢!

使用特权

评论回复
9
drentsi|  楼主 | 2019-1-12 20:28 | 只看该作者
zxq6 发表于 2019-1-6 20:32
感谢楼主的经验。
目前我们布的ddr3,只能跑到200兆(目标是533),使用的4层板。只有一个还算完整的地。电 ...

四层板跑这速度管不管阻抗都不会有问题,取决于控制器

使用特权

评论回复
10
drentsi|  楼主 | 2019-1-12 20:30 | 只看该作者
本帖最后由 drentsi 于 2019-1-12 20:36 编辑

最新进展,为了测试FPGA的极限性能,通过一些手段把数据速率加到了4G,FPGA的PLL工作在2GHz,手册说最高只能1350M,这超频了50%。
IO部件工作正常,某组byte能够正确的读写,但是某些拉的较长的信号线出现了误码,通过调整延时也无法解决,应该是遇到了阻抗问题。

使用特权

评论回复
11
zhangmangui| | 2019-1-14 22:08 | 只看该作者
drentsi 发表于 2019-1-12 20:30
最新进展,为了测试FPGA的极限性能,通过一些手段把数据速率加到了4G,FPGA的PLL工作在2GHz,手册说最高只 ...

你是自己写的控制器吗    还是用的IP

使用特权

评论回复
12
drentsi|  楼主 | 2019-1-20 10:24 | 只看该作者
最新进度,K7上稳定速度2.2G,再往上冲刺就不稳定了。
测试最高速度BUFR跑到了640M,BUFIO跑到1.28G,IO还能辨识 每个bit,对数据进行分析发现拖尾现象,应该是阻抗不匹配或者供电不稳定造成的,改进PCB应该能解决。
另一设计发现K7的IO输入能支持4.4gbps的速率,输出只能2.6gbps。
内存控制器都是自己写,从1G到2.2G的任意频率都能完成自校准.
目前的设计能够支持单一K7芯片上3组32bit,2.2g的控制器,下一步改进目标是2.6g到3.2g的速度,单一芯片达到38GB/s的带宽,相当于3根DDR3-1600内存条

使用特权

评论回复
13
liuxiang5119| | 2019-2-20 12:18 | 只看该作者
膜拜下  

使用特权

评论回复
14
huangqi412| | 2019-2-23 13:17 | 只看该作者
还是用在挖矿上?

使用特权

评论回复
15
advantech86| | 2019-3-2 16:18 | 只看该作者
本帖最后由 advantech86 于 2019-3-2 16:24 编辑

我都跑到4G了,明年准备跑5G的。

使用特权

评论回复
16
drentsi|  楼主 | 2019-3-3 09:24 | 只看该作者
本帖最后由 drentsi 于 2019-3-3 09:30 编辑

最新进度,三通道核心部件实验成功,K325T,676或900封装,最核心部分大小为5cm*4cm,此面积包含了FPGA和三个5代显存通道,不包括电源等,六层板,每个显存通道为32bit,速率2.2G,合计就是32bit*3*2.2Gbps,26.4GB/s,容量上最大支持正反贴合计6片5代显存,6GB,所有这些都在5cm*4cm的面积之内。六层实验板做成功了,实测可用带宽达到了24GB/s。需要保密,暂时不上图。

使用特权

评论回复
17
LIU_XF| | 2019-3-3 10:11 | 只看该作者
为什么要自已写控制器呢

就是为了提高频率,和降低 layout成本?

使用特权

评论回复
18
drentsi|  楼主 | 2019-3-3 10:20 | 只看该作者
LIU_XF 发表于 2019-3-3 10:11
为什么要自已写控制器呢

就是为了提高频率,和降低 layout成本?

性能,成本,可靠性等等,5cm*4cm,相当于刚好半张名片大小的PCB面积上,放下一个K325T,再加6GB的显存,实用带宽达到24GB/s,甩官方参考设计几条街,可做的事情多着呢。

使用特权

评论回复
19
狼迹天涯| | 2019-3-6 10:02 | 只看该作者
膜拜

使用特权

评论回复
20
墨散痕| | 2019-3-6 22:10 | 只看该作者
膜拜

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:学习,思考。

144

主题

1720

帖子

43

粉丝