Chinaunix首页 | 论坛 | 博客
  • 博客访问: 988677
  • 博文数量: 102
  • 博客积分: 10120
  • 博客等级: 上将
  • 技术积分: 2754
  • 用 户 组: 普通用户
  • 注册时间: 2006-09-13 23:00
文章分类

全部博文(102)

文章存档

2011年(6)

2010年(55)

2009年(16)

2008年(25)

分类: 嵌入式

2011-02-10 23:32:49

最近在做一个SOHO路由器项目的时候发现,同样的PCB板,同样的分立元件,同样的供电电源,同样的Flash器件,同样的软件固件,采用ESMT的DDR芯片,不丢包条件下的网络吞吐率非常低,100Mbps的网络接口,竟然可以低到仅仅1Mbps左右,而如果采用winbond或者hynix的DDR芯片,不丢包条件下就能跑到70Mbps的水平。援引硬件部门的同事的话说,按照他们的经验,hynix的DDR芯片品质最佳,winbond其次,EMST最后,但价钱也不相同,只是没想到在性能表现上会有这么大的差异。

需要说明的是,上述数据都是用Spirent公司的网络性能分析仪Smartbits测出来的结果。当然,Smartbis设定的不丢包条件比较苛刻,如果用chariot或者iperf等常规的工具测试的话,是测不出这样的差异来的。

在追踪这个问题的过程中,之前一直没有怀疑会是DDR器件的问题,一直认为是软件存在缺陷。逐项排查之后,疑点落到了DDR上,但没想到问题真是出在它身上。看来,作为一个嵌入式软件开发人员,在系统出现性能问题的时候,不能光把眼光局限在软件上,也许硬件也是潜在的元凶呐。
阅读(1405) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~