DSP动力 发表于 2007-4-18 15:14

DSP2812的开发经历(酸甜苦辣)

最近做了块2812的开发板,辛酸苦辣个中体会,说说我的感受吧。<br />1)为什么2812的开发难度稍高一些,主要是由于外频较高,SRAM读写周期75M;信号完整性要求较高;如果PCB板处理不好,SRAM读写数据不稳定,容易出错。这个环节就要在PCB版图设计中考虑走线的阻抗;同时还要和厂家确认PCB板工艺能否达到。<br />2)模拟电路和电源的设计。&nbsp;最头痛的是这个,电源纹波要求低于7mV;想想12位的AD,采样值变化为1,对应的电压是:3V/4096&nbsp;=&nbsp;0.7mV;如果固定输入,而采样跳变为+-5,则对应电压为&nbsp;7mV。&nbsp;网上所说的模拟地和数字地加磁珠隔离,模拟电源和数字电源也用磁珠隔离,你可以试试效果,纹波能不能到7mV,那是开发板的设计,绝对不是产品的设计呀。<br /><br />今天写到这儿吧,明天逐渐深入讨论高速信号的开发过程,和大家共同探讨。

sushangwen 发表于 2007-4-18 15:38

期待楼主继续。

2812高速外部SRAM走线确实有些麻烦。一些高速的SRAM(10纳秒以内)的跑起来还要加些阻抗匹配。<br /><br />对于12位模拟电路和AD应用,电源走线和接地是关键。

DSP动力 发表于 2007-4-19 10:21

多谢楼上的支持

今天说说高速数字电路的设计。<br />单板是否涉及成功,关键在于两点:<br />1)信号走线延时,目的是确保时序的可靠性。<br />2)信号阻抗匹配,目的在于防止信号震荡,来回调变,调试中的表现就是SRAM写数据有时对,有时不对随机性较强。<br /><br />需要改变观念中最重要的一点就是:单板的质量绝对是设计出来的,不是调试出来的,特别是高速信号处理电路,大家不要走入误区。<br /><br />往往讨论到高速信号电路,就设计到蛇形线的问题,感觉谈到这个好像提高了单板的技术含量一样。要了解一下走蛇形线的目的是为了控制每根数据地址总线,从DSP到目的地之间的延时在一个可以接收的范围,不至于误动作。是否要用到蛇形线,取决于单板的外频。<br />说明:蛇形线不会改善信号质量,只会影响信号质量。<br /><br />这些都是理论上东西,具体到2812该如何设计?&nbsp;简单说说我的经历。<br />太长了,见下面,另起一贴吧。<br />

DSP动力 发表于 2007-4-19 10:33

续上

DSP系统时钟是150MHz,最快的外部读写访问需要2个时钟周期,也就是75MHz&nbsp;=&nbsp;13.3ns。所以在SRAM的选择上,&nbsp;12ns速度的SRAM就可以满足要求。<br /><br />2812走线延时的分析:(只考虑最极端的情况)<br />1)150MHz的外频&nbsp;=&nbsp;6.7ns<br />2)说明读写信号,或者地址数据信号在传输线上的有效时间也就是6.7ns&nbsp;(这是极端的情况)<br />3)这个时候再分析走线延时就很清楚了,一般情况不要操过该时间的&nbsp;20%,也就是&nbsp;6.7ns&nbsp;*&nbsp;0.2&nbsp;=&nbsp;1.3ns。<br /><br />总结一下就是对于2812,外部走线延时不要大于1.2ns,这是可靠读写的保证。<br />如果是外部的慢速设备接口,可以不考虑。<br /><br />今天就到这儿吧,明天继续和大讨论如何保证在PCB设计中达到上述目的,如有不妥,欢迎大家指正:)

DSP动力 发表于 2007-4-20 13:02

楼上的牛人看来是这方面的高手啊!

我原来有一个计算机,装操作系统,WINXP有时候莫名其妙的说内存读写错误,现在才了解可能是主板买的不太好,刚配的计算机,计算机DDR&nbsp;800,运行都很稳定,看来配机还是要买可靠品牌。<br /><br />今天心情有点闷,昨天测了一下单板波形,对DSP2812&nbsp;CLKOUT没有加匹配的情况测试,示波器为TDS2022B。<br /><br />DSP&nbsp;CLKOUT&nbsp;(75MHz)发送端波形竟然是正弦波,峰值有5V,过冲也有1V,接收端(8cm长吧)悬空,波形也是正弦波,峰值竟然达到8V。&nbsp;恐怖啊!!!<br /><br />我用40M的模拟示波器,峰值也就是3.5V左右,但是波形完全看不出来。<br /><br />不清楚到底是示波器的原因,还是其他方面的原因?<br />

knight_don 发表于 2007-4-20 20:26

你的示波器带宽不够

你的示波器带宽不够,要想看方波信号,带宽要到基频的9~11倍以上。100M左右的数字信号的阻抗匹配没有你说的那么严重,注意一般的布线技巧就可以了,地、线宽和走线长度保持一致。

knight_don 发表于 2007-4-20 20:29

示波器探头的质量,和测试点的选取也有影响

DSP动力 发表于 2007-4-21 22:26

示波器有点贵呀,多谢楼上的!

如果按照9倍的带宽,100M的信号也要900M带宽的示波器吧,价格比较高吧。<br />不过目前的200M示波器带宽确实较小,但是采样可是&nbsp;2G/s,此次测量的波形幅值感觉不太可信,目前单板运行很稳定,数据线和地址线测试还没有出过错。<br />信号完整性测试,后面坐专题讨论吧。<br /><br />言归正传,继续讨论一下如何实现走线延时,明天讨论阻抗设计吧。<br /><br />1)DSP2812实际测试结果是:不需要蛇形走线(增加了不少的布线难度)<br />2)走线延时控制在1.2ns,就可以保证单板的稳定<br /><br />上面两点是经过实践验证的,过两天再show一下单板吧。<br /><br />完成上面的工作需要的下面的软件支撑:<br />1)&nbsp;SI8000&nbsp;&nbsp;---&nbsp;阻抗分析计算工具<br />2)Allegro&nbsp;---&nbsp;PCB板布线和延时拓扑分析工具,如果有IBIS模型,可以进行信号完整性分析<br /><br />太长了,下面重启一帖吧。<br />

DSP动力 发表于 2007-4-21 22:34

作告诉信号处理板,要有高带宽的示波器作质量保证啊。

Allegro在分析和设计告诉信号板是比较理想的工具。借助该工具可以实现下面的功能:<br />1)可以设置4层板的每层的厚度和介电常数<br />2)可以对信号设置属性,同时设置阻抗和延时<br />3)Allegro会根据介电常数、厚度和阻抗,自动计算走线线宽<br />4)如果延时和阻抗不符合设定,会有告警提示<br /><br />详细实现,可以看Allegro的文档。<br /><br />推荐大家使用,布线非常好用,还有就是走差分线也很好,自动控制等长走线。<br /><br />明天继续讨论2812阻抗设计方面的问题和对策吧。<br /><br />

wh111wh 发表于 2007-4-22 20:51

质量要求那么高么

感觉大侠们说的很玄啊。<br />小弟是新手,刚画了块2812的板子,连了个高速SRAM和USB芯片,线走的很乱,铺地也不太好,可是工作挺正常啊。只是感觉外部中断接收不是特别稳定,有时会丢几个,但大部分时候很正常。难道这会是板子走线问题么?

雪山飞鸽 发表于 2007-4-22 22:19

简直是书呆子

简直是书呆子,估计你上面的说的那些东西也是从书上抄的,最高150M的系统,那有你说的那么悬乎,

DSP动力 发表于 2007-4-23 10:00

算了,不继续讨论了!!!

我实在是不明白,作为实际开发的经历,写出来应该是对大家有一些帮助的;<br />原来以为这个论坛的学习的气氛会比较好,也可能是高手比较多吧,不屑于这种设计。<br /><br />一块硬件单板,要让他跑起来可能是比较容易的;但是要稳定可靠,有过开发实践经验的,可以说说你们的看法。<br /><br />高速信号处理板,按照作坊的开发方式,事先没有分析透,盲目的投板;会导致一个循环:那就是莫名其妙的出问题,你可能大部分时间都放在找硬件问题上。<br /><br />带来的结果就是开发进度不可控,项目进展后延,推向市场的产品,疲于奔命的维护。<br /><br />既然大家不愿意,那就算了,不继续讨论阻抗方面的设计了。&nbsp;<br /><br />下面是我们刚开发出来的2812单板,另起一帖吧。

DSP动力 发表于 2007-4-23 10:03

明天帖上吧

今天是在很很忙,很多事情要处理呀,明天贴上吧。

iversonma 发表于 2007-4-23 10:19

lz很认真~

说的是全对,不过150m的还要用那么多的检查工具似乎多了点,项目时间肯定完成不了了~<br /><br /><br />Allegro在分析和设计告诉信号板是比较理想的工具。借助该工具可以实现下面的功能:<br />1)可以设置4层板的每层的厚度和介电常数<br />2)可以对信号设置属性,同时设置阻抗和延时<br />3)Allegro会根据介电常数、厚度和阻抗,自动计算走线线宽<br />4)如果延时和阻抗不符合设定,会有告警提示<br /><br />最高做过600m的也没有使用过~

xwj 发表于 2007-4-23 10:26

支持LZ!!!

DSP动力 发表于 2007-4-25 23:00

这几天太忙,上传一下产品单板的图片。

这几天太忙了,下面是正在调试中的产品板,上面的经验可是经过实践总结出来的呀。<br /><br />今天示波器到了,350M的,&nbsp;2G/s&nbsp;(2G实时采样)。<br />重点测了一下前几天测试的CLKOUT&nbsp;150MHz的情况,在没有匹配的情况下,正弦波:&nbsp;幅值&nbsp;+4.68V,&nbsp;地弹过冲-1.3V&nbsp;;没有上次测试中的7V&nbsp;现象。&nbsp;还是稍微有点高吧,电源可是&nbsp;3.3V的。<br /><br />看来还是要个高带宽的示波器呀&nbsp;:)<br /><br />目前仿真个方面稳定,下载程序仿真基本没有异常的情况。<br /><br />对数据线,经过匹配后,信号质量非常的好,方波信号非常完整;&nbsp;但是没有匹配的片选信号,方波信号就不太完整。<br /><br />如果大家感兴趣,我顺便说说高带宽示波器选型中的注意事项,其中有几个指标很关键。https://bbs.21ic.com/upfiles/img/20074/2007425224930253.jpg

wyd_hua 发表于 2007-4-26 08:38

受教了~~~

nxy825715 发表于 2007-4-28 15:53

个人见解:

受益匪浅呀!!!

DSP动力 发表于 2007-4-29 18:28

测试单板是否稳定的办法

这几天忙了。<br />说了很多,简单讲一下单板是否稳定,以及DSP外频是否发挥到极致的测试方法。<br /><br />要使DSP的性能发挥到极致,最关键的是外部SRAM要达到最大的操作频率(75MHz),单板是否稳定使用下面的测试方法。<br /><br />设置DSP2812&nbsp;的Zone2&nbsp;的xintf寄存器:<br />X2TIMING&nbsp;=&nbsp;0;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br />XRDLEAD&nbsp;&nbsp;=&nbsp;1;&nbsp;必须是1&nbsp;&nbsp;//&nbsp;最大速度读<br />XRACTIVE&nbsp;=&nbsp;0;<br />XRTAIL&nbsp;&nbsp;&nbsp;=&nbsp;0;<br /><br />XWDLEAD&nbsp;&nbsp;=&nbsp;1;&nbsp;必须是1&nbsp;&nbsp;//&nbsp;最大速度写<br />XWACTIVE&nbsp;=&nbsp;0;<br />XWTAIL&nbsp;&nbsp;&nbsp;=&nbsp;0;<br /><br />如果单板在上面的设置情况下,可以稳定的长时间运行,并且读写数据是正确的,说明布板是成功的。<br /><br />如果把外频设置为&nbsp;30M&nbsp;或者更低;&nbsp;那么本篇讨论的高速信号布板就没有任何意义。<br /><br />按照上面的设计方法,基本上可以一次布板成功,仿真等各个方面稳定。

iversonma 发表于 2007-4-29 22:31

受教了~

lz够认真<br />
页: [1] 2 3 4
查看完整版本: DSP2812的开发经历(酸甜苦辣)