| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 嵌入式 -> Beaglebone black PCB源文件点评 -> 正文阅读 |
|
[嵌入式]Beaglebone black PCB源文件点评 |
目的BeagleBone black 已经出来很久了,算是一块比较老的板子了。网上有很多的文档,说明它的性能,开发过程步骤,开发案例等等, 内容非常丰富。但是几乎没有文章,单纯从PCB设计的角度对它进行点评。仔细参看它的PCB设计,里面还是有非常多值得学习的技术内容。所以在此做一下我个人的点评,主要目的也是通过参考beagleBone的设计来提高自身的PCB设计水平。特别声明一下:不像代码,可以通过运行测试来说明代码的质量, PCB的很多技术都是基于理论和经验的统一,不同的人会有不同的观点。文章中的观点只是基于我自己的知识和水平,欢迎大家留言讨论。 PCB源文件下载https://github.com/beagleboard/beaglebone-black/archive/master.zip PCB查看工具因为beaglebone是使用candence设计的,所以我下载了一个免费查看器 Cadence Allegro Viewer 虽然网上能够找到altium design的Beaglebone PCB版本,但是它是由cadence转化来的,有一些问题。例如有一些线没有连接好,板子外框之外还有未布局的器件。所以最好还是使用cadence查看源文件。因为我用的只是具有查看功能的viewer,功能受限。所以文章中的一些图片也会来自altium designer。 1,BeagleBone black的PCB叠层结构它有6层板,是一种比较常见的叠层结构。具体信息如图一所示:
????????????????????????????????图一,PCB的叠层结构 它的厚度信息在Allegro Viewer中没有查看到,所以这里是从altium designer中得到的厚度信息,如图2所示。如果和allegro源文件有误差,请私信我。 ????????????????????????????????图二?叠层结构的厚度信息 从叠层结构的厚度信息中,可以看到顶层TOP和第二层地平面只有3.6mil的高度,这是非常好的设计。信号层和参考层距离越薄越好,这样有利于减少信号的干扰,提高板子的EMC性能。关于板子和参考层的厚度的关系,可以参考我的读书笔记: 在笔记中,图16-18解释了为什么厚度薄能够提高EMC的性能。 第二层和第三层的距离4.6mil,也算是非常薄的设计。 注意第三层和第四层的间隔是36mil,这主要是有两个目的: (1),填充PCB内核,使得PCB总体厚度大约为1.6mm,这是最常见的PCB厚度值,能够满足大部分应用的机械要求。 (2),使得第三层和第四层的干扰最小化。因为第三四层距离比较远,所以第三层主要以第二层作为信号参考层,第四层主要以第五层作为信号参考层。这里的参考层,就是信号的回流层。 2, 电源信号布局布线Beaglebone使用一个PMIC(TPS65217CRSLR)来管理整个系统的供电,包括上电顺序,各个电源的使能等等。它在顶层的布局布线如下图三所示。 第一映像是它的布局布线非常紧凑。如图中的红圈所示,PMIC芯片的引出线都非常的短,和去耦电容的连接非常短。另外图中黄色方形的部分是5V的输入信号。可以看到这里使用了一个敷铜,敷铜慢慢变窄,然后引入到芯片的管脚上。这是很好的连接方式,可以尽可能保证电源走线足够宽。图中蓝色的部分是去耦电容的接地,使用了两个过孔,这也是值得推荐的方式。见我的读书笔记图11-25对去耦电容的过孔放置方式有详细解释。 电磁兼容工程(Electromagnetic compatibility engineering Herry Ott )读书笔记-- 章11 数字电路电源分布_dylanZheng的博客-CSDN博客 ????????????????????????????????图三 PMIC芯片顶层布局布线 再看地层的布局布线,电源芯片的去耦电容就布局在芯片地层,和芯片的连接很短。 ????????????????????????????????图四 PMIC芯片底层布局布线 因为AM335x的要求供电的电源种类比较多,例如有内核电压,MPU电压, 模拟电压,RTC电压,不同的IO电压等等。所以beagbone上的电源层被分割的比较破碎。如下图五是它的电源层的分割。电源层分割的越多,相邻的信号层的信号质量就会越差,因为有很多的信号都有意无意的跨越了各种分割线,造成信号回路路径比较大,信号对外辐射大,自身的抗干扰能力被减弱。因此高速信号线尽量避免走相邻层,即第四层和底层。可以看到的DDR走线就没有走第四层。 关于电源层的分割注意事项,可以参看我的读书笔记 https://blog.csdn.net/dylanZheng/article/details/123871130 ????????????????????????????????图五? 电源层的分割 ?其实上图中的电源分割已经被优化了(否则会更稀碎!)。优化的一个办法就是在信号层走电源线。以下几个图就是优化的方式: ????????????????????????????????图六 减少电源分割的方法 如果产品的成本不敏感的情况下,推荐使用8层板设计自己的产品。这样可以大大优化电源层的设计。Beaglebone本身定位就是比较便宜的单板,所以它的设计有时候是性能和成本的折中。 3,时钟信号时钟信号属于关键信号线,应该优先布局布线。Beaglebone的CPU上有两个时钟晶振,一个是给RTC使用的32.768KHz,一个是提供主时钟的24MHz。如图七,是RTC时钟的布局和布线: ????????????????????????????????图七 RTC时钟布局布线 从图中可以看到,晶振离CPU还是很近的,走线也比较短。其中GND_OSC1处在OSC1_IN和OSC1_OUT的中间,和她们的耦合非常的紧,同时这3根信号线距离其他信号比较远。这是非常棒的。因为GND_OSC1是OSC1OSC1_IN和OSC1_OUT的回流路径。它们之间的紧耦合能够减少时钟信号和其他信号的干扰,也能减少信号辐射。 在整个的晶振下面还放置了一块GND_OSC1的敷铜,这块敷铜的作用之一是能够防止有其他信号线穿过晶振下面。第二个作用是屏蔽晶振信号。第三个作用是减少了GND_OSC1上的阻抗,进一步减少辐射。 但是令人惊讶的是,上图中敷铜上有一个VDD_3V3B的过孔(上图中的黑圈),这是非常不好的地方。它会引起VDD_3V3B和时钟信号之间的干扰。 主时钟的24MHz的设计如图八所示: ????????????????????????????????图八,主时钟24MHz电路 图八中,设计上不足的地方是,将24MHz晶振放在了底层。这是我个人不推荐的布局布线方式。因为对于时钟信号,我们的要求是信号线尽可能的短,回路面积最小,尽量远离其他信号线。而一旦将晶振放置在底层,必然会使用过孔,而过孔会通过所有层,那么不经意就会使得其他信号离时钟信号线比较近,造成干扰。而且过孔也会加大时钟信号与所有层的耦合性,这都是不希望出现的。主时钟电路中, GND_OSC0没有在OSC0_IN和OSC0_OUT之间走线,使得 GND_OSC0和OSC0_IN的耦合不是那么紧密,如上图GND_OSC0在时钟信号的左边。 总的来说,24MHz电路没有RTC时钟的设计那么好。 图九是主时钟24MHz电路的顶层和底层走线设计: ????????????????????????????????九,主时钟24MHz的顶层和底层设计 4,复位信号一般,系统的复位信号也是属于关键信号。因为它在系统正常工作时,保持高电平,所以不算是高频信号,一般都是按照普通信号走线。这从对外辐射的角度看,是没有问题的。但是如果从抗干扰的角度看,需要保证它的走线环路面积尽可能的小,这样不容易接收到噪声,从而保证系统不会因为噪声引起复位。 ????????????????????????????????图十复位信号走线 Beaglebone 的CPU复位信号走线如图十所示,它在顶层,底层,第三层和第四层都有走线,也就意味着它的回流参考平面也一直在变化。所以它整个的回路面积会比较大,容易受到其他信号的干扰。最优的方法是保证复位信号在顶层和第三层走线,这样他们都是以第二次为参考层,能够最小化信号回路面积。另外复位信号线的线宽是4.75mil, 偏小,可以加宽复位信号线,进一步减少信号线的阻抗。 5,DDR走线和阻抗匹配Beaglebone的DDR走线非常优秀,也非常值得我们好好学习。这里先展示DDR每一层的信号走线图: ????????????????????????????????图十一? DDR 顶层走线 ????????????????????????????????图十二? DDR 第三层走线 ????????????????????????????????图十三? DDR 底层层走线 ???? ????????????????????????????????图十四? 电源层VDDS_DDR的分割 (1),DDR信号是经过阻抗匹配的,它满足单端阻抗50欧姆,差分阻抗100欧姆的要求,如图一所示。另外它也做了等长处理,这些都符合高速信号的常规设置。 (2),从上面的几个图中可以看到,设计师的PCB设计技巧是很高的。顶层和第三层的空间基本上全部布满了信号线,空间利用率非常高。而且线的密度也是相对均匀。看起来非常的美观。线与线的间距大约是15mil,第三层和第二层的距离是4.6mil,所以基本上符合3W的布线原则。 (3)大部分信号线都是布局在顶层和第三层,这也是非常合理的,因为这两层都是以第二层为参考层。信号通过过孔从顶层到第三层或者才能够第三层到顶层,信号线的参考平面没有变化,信号的阻抗变化平滑,信号的回路路径也没有发生改变,保证了信号回路最小。 (4),VDDS_DDR信号在电源层的分割如图十四所示。它保证了在整个DDR的布线区域电源层是完整的。不过仔细查看VDDS_DDR的平面,发现它并没有覆盖住DDR_A6的管脚,如果将VDDS_DDR的平面沿图十五的箭头方向扩大一点点就会非常好。当然这只是一个非常非常小的不算问题的问题,因为A6信号焊盘的上面就是VDDS_DDR的焊盘,所以信号基本不会影响。(只是一种强迫症而已) ????????????????????????????????图十五 VDDS_DDR 敷铜需要延伸到ADDR_A6德焊盘范围 (5),DDR芯片的去耦电容放置也非常漂亮,在每一根DDR电源线附近都有去耦电容。另外它的bulk电容放置也很有讲究,如图十六所示。它在DDR区域的三个角落放置了3个bulk电容,保证当信号需要大电流时,可以均衡在整个DDR区域获得额外电流。 ????????????????????????????????图十六,DDR的bulk电容的放置 6,模拟信号走线因为beaglebone的层数以及空间受限,所以它的模拟信号走线不是很完美。如图十七所示,是它在顶层的模拟信号线,图十八是在第四层的走线。可以看到因为第二层是没有分割的地层,所以在顶层的模拟信号线AIN0,AIN2,AIN3,AIN5和AIN6都是有完整参考平面的,因此他们的信号质量不容易受到干扰,会更好一些。而信号AIN1,AIN4和AIN7在第四层走线,因为它们的参考平面被分割得很厉害,所以它们会跨越多个电源区域,造成回流电源平面不连续,而且这几个平面都是数字信号电源平面,所以这几个模拟信号线容易受到干扰。 如果需要在自己的设计中直接使用beaglebone的模拟信号,优先选择顶层的信号线,即AIN0,AIN2,AIN3,AIN5和AIN6作为系统模拟信号的输入,尽量少用AIN1,AIN4和AIN7这三根模拟输入线。 ????????????????????????????????图十七, 模拟信号在顶层的走线 ????????????????????????????????图十八, 模拟信号在第四层的走线 7, 其他方面(1),在这个板子的周围放置了一圈Chasssis地,将整个班子包起来,一方面可以限制边缘信号的辐射,同时相当于屏蔽外部信号的干扰。但是具体它的优缺点的分析可能因人而异。 本人觉得如果将该板子放置在塑料外壳中,这整个地圈可能会引起问题,如不能通过ESD的测试。欢迎其他人留言讨论它的优缺点。 (2)L3层和L4层信号线垂直,如下图。 只是显示第三层和第四层,可以看到他们大部分的信号线的方向是垂直的。真心佩服设计时的布线能力。在这么受限的条件下能够保证第三层和第四层的走线方向是很难的。 ????????????????????????????????图十九, L3层和L4层信号线垂直 |
|
嵌入式 最新文章 |
基于高精度单片机开发红外测温仪方案 |
89C51单片机与DAC0832 |
基于51单片机宠物自动投料喂食器控制系统仿 |
《痞子衡嵌入式半月刊》 第 68 期 |
多思计组实验实验七 简单模型机实验 |
CSC7720 |
启明智显分享| ESP32学习笔记参考--PWM(脉冲 |
STM32初探 |
STM32 总结 |
【STM32】CubeMX例程四---定时器中断(附工 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 4:37:25- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |