经常能看到论坛里有人在问蛇形线的问题。平时我们能看到蛇形线的地方大都是一些高速高密度板,好像带有蛇形线的板子就更高级,会画蛇形线就是高手了。网上关于蛇形线的文章也有很多,总感觉有些帖子的内容会误导新手,给人们带来困扰,人为制造一些障碍。那么我们来看看实际应用当中蛇形线到底有什么作用。

要弄懂蛇形线,我们先来说说PCB走线。这个概念似乎不用介绍,做硬件的工程师每天在做的不就是布线工作么。PCB上的每条走线都是硬件工程师辛苦的一条一条画出来的,这有什么可说的呢?其实就是这简单的走线也包含了很多我们平时会忽略的知识点。比如说,微带线和带状线的概念。简单地说微带线是走在PCB板表层的走线,带状线是走在PCB内层的走线。这两种线有什么区别呢?微带线的参考平面是PCB内层的地平面,走线的另一面是暴露在空气中的,这样就造成了走线四周的介电常数并不一致,比如我们常用的FR4基板介电常数是4.2左右,空气的介电常数是1。而带状线上下两面都有参考平面,整个走线是嵌入在PCB基材当中的,走线四周的介电常数是一致的。这也就造成了带状线上传输的是TEM波,而微带线传输的是准TEM波。为什么是准TEM波?那是由于在空气和PCB基材交界处的相位不匹配造成的。什么事TEM波?…………如果就这个问题深挖下去的话,讲上十天半个月也讲不完。长话短说,无论是微带线还是带状线,他们的作用无非就是用来承载信号,无论数字信号或者模拟信号。这些信号在走线里以电磁波的形式从一端传输到另一端。既然是波,那就要有速度。信号在PCB走线上的速度是多少呢?根据介电常数的区别,速度也不一样。电磁波在空气中的传播速度是大家都熟知的光速。在其他介质中的传播速度就要通过下面的公式来计算:

V=C/Er0.5

其中,V是在介质中的传播速度,C是光速,Er是介质的介电常数。通过这个公式我们就能轻松的计算出信号在PCB走线上的传输速度。比如我们把FR4基材的介电常数简单以4来带入公式计算,也就是信号在FR4基材中的传输速度是光速的一半。但是表层走线的微带线,由于一半在空气中,一半在基材中,介电常数会略有降低,这样传输速度会比带状线略快一些。常用的经验数据就是微带线的走线延时大约为140ps/inch,带状线的走线延时大约为166ps/inch。

前面说了这么多只有一个目的,那就是信号在PCB上的传输是有延时的!也就是说信号并不是在一个管脚发送出去以后,瞬间就通过走线传输到另一个管脚。虽然信号传输的速度很快,但是只要走线长度足够长,还是会对信号传输带来影响。比如说一个1GHz的信号,周期是1ns,上升沿或者下降沿的时间大约为周期的十分之一,那么就是100ps。如果我们的走线长度超过1inch(大约2.54厘米),那么传输的延迟就差出了一个上升沿还要多的时间,如果走线超过8inch(大约20厘米),那么延迟就能整整差出一个周期!原来PCB的影响这么大,我们板子上超过1inch的走线是很常见的。那么延迟会对板子正常工作有影响么?看看实际系统,如果只是一个信号,和其他信号不想关,那么延迟似乎不会有什么影响。但是在高速系统里,这个延迟是会实实在在的发生作用的。比如我们常见的内存颗粒,是以总线形式连接的,有数据线,有地址线,有时钟,有控制线。再看看我们的视频接口,HDMI或者DVI无论几个通道,都会包含数据通道和时钟通道。或者是一些总线协议,都是数据和时钟同步传输。那么,在实际的高速系统当中,这些时钟信号和数据信号都是同步的从主芯片中发送出来的,如果我们的PCB走线设计很差,时钟信号和数据信号的长度相差很大,那么很容易就能造成数据的错误采样,那么整个系统也就不会正常工作了。要解决这个问题怎么办呢?很自然的我们就会想到,把长度短的走线加长,让同组的走线长度差不多,那不就延迟一样了?那怎么把走线加长呢?绕呗!Bingo! 终于绕回主题了,真不容易。这就是蛇形线在高速系统中的主要作用。绕线,等长。就是这么简单。蛇形线就是用来绕等长的,通过画蛇形线,我们能让同组信号实现等长,这样在接收芯片接收到信号后就不会由于PCB走线上的不同延时造成数据的错采了。蛇形线和其他PCB板上的走线一样,都是用来连接信号的,只是走的长一些而已,无它。所以蛇形线并不高深,也没多复杂。既然和其他走线一样,那么一些常用的布线规则对蛇形线也是适用的,同时由于蛇形线的特殊结构,在布线时要注意到,比如尽量让蛇形线相互平行的部分远一点,短一点,也就是俗话说的绕大弯,不要在小范围内绕的太密太小。这都有助于减小信号干扰。蛇形线由于人工的增加了线长,对信号必然是有坏的影响的,所以在系统中只要能满足时序要求,能不用就不要用。有些工程师凡是用到DDR或者用到高速信号就会去做全组等长,蛇形线满板飞,似乎这样就是更好的布线,实际上这是偷懒不负责任的表现。很多不需要绕线的地方绕线了,浪费了板子的面积不说,也降低了信号质量。我们应该根据实际的信号速度要求计算延迟的冗余度,从而确定好板子的布线规则。

除了等长的作用以外,看到网络上的文章中经常提到蛇形线的其他几个作用,这里也简单说一下。

1、经常看到的一个说法是阻抗匹配的作用。这个说法很奇怪,PCB走线的阻抗和线宽有关,和介电常数有关,和参考平面的距离有关,什么时候和蛇形线有关了?走线的形状什么时候影响到阻抗了?不知道这个说法的源头是从哪来的。

2、还有说是滤波的作用。这个作用不能说没有,但是在数字电路里面应该没有滤波的作用或者说在数字电路里面我们是不需要用到这个功能的。在射频电路里蛇形的走线能形成一个LC电路,如果说对一定频率的信号有滤波作用那还是说的过去的。

3、接收天线。这个可以有。在有些手机或者收音机上我们都能看到这个作用。有些天线就是用PCB走线来做的。

4、电感。这个可以有。本来PCB上的所有走线都有寄生电感。要做一些PCB电感是可以实现的。

5、保险丝。这个作用让我百思不得其解。短而窄的蛇形线怎么起到保险丝的作用呢?电流一大就烧断?那板子不是废了,这个保险丝的代价太大了吧,实在想不明白会在什么样的应用中用到。

通过上面的介绍我们可以明确,在模拟或者射频电路当中,蛇形线有些特殊作用,这是微带线特性决定的。而在数字电路设计当中,蛇形线就是用来做等长实现时序匹配的作用。并且,蛇形线会对信号质量产生影响,所以在系统中应该明确系统需求,根据实际要求计算系统冗余,谨慎使用蛇形线。

编程中的蛇形填空问题_PCB—蛇形线的作用,这次真的是把你搞懂了相关推荐

  1. 编程中的蛇形填空问题_在线编程问题当中的蛇形矩阵问题

    源代码如下: #include#includeusing namespace std;int a[100][100];int jlcf[100][100];//bool jc[10000];int s ...

  2. 闲聊flask web编程中的cookie

    在web编程中,cookie和session的区别于联系并不是一个很容易搞清楚的事情.在我从事后端工作的很长时间里,对于他们的应用也并不多,因为大多数时间都是在编写API接口供其他系统调用,而cook ...

  3. python中gbk字符原因报错_不想再被鄙视?那就看进来! 一文搞懂 Python 2 字符编码...

    原标题:不想再被鄙视?那就看进来! 一文搞懂 Python 2 字符编码 程序员都自视清高,觉得自己是创造者,经常鄙视不太懂技术的产品或者QA.可悲的是,程序员之间也相互鄙视,程序员的鄙视链流传甚广, ...

  4. Attribute在.net编程中的应用

    作者:niwalker       出处:csdn SqlCommandGenerator类的设计 SqlCommandGEnerator类的设计思路就是通过反射得到方法的参数,使用被SqlComma ...

  5. c语言面向对象编程中的类_C ++中的面向对象编程

    c语言面向对象编程中的类 Object oriented programming, OOP for short, aims to implement real world entities like ...

  6. 网络编程中的关键问题总结

    网络编程中的关键问题总结 总结下网络编程中关键的细节问题,包含连接建立.连接断开.消息到达.发送消息等等: 连接建立 包括服务端接受 (accept) 新连接和客户端成功发起 (connect) 连接 ...

  7. 编程中new[]和delete[]应该如何使用?

    在平时资料中,我们常看到:new和delete,new[]和delete[]一定要配对使用!有时候不配对使用也不会出现问题.也许你也是只知其然,不知其所以然,然而我也有点懵了. 在平时资料中,我们常看 ...

  8. python的功能模块_Python的功能模块[1] - struct - struct 在网络编程中的使用

    struct模块/ struct Module 在网络编程中,利用 socket 进行通信时,常常会用到 struct 模块,在网络通信中,大多数传递的数据以二进制流(binary data)存在.传 ...

  9. c51语言的标准库函的头文件,C51编程中头文件的使用

    头文件在C51的编程中是不可缺少的部分.本文将对keil C中常用头文件予以说明,并就如何编写头文件进行初步介绍. 一.C51常见本征函数库 一些常见的头文件都是keil C自带的,在安装目录下的C5 ...

最新文章

  1. EasyWechat中代金券的发放总结
  2. win8 -telnet安装
  3. Turtlebot2 环境配置
  4. Eclipse+OpenCV3.1.0 的环境搭建
  5. 2022年 hust OJ 最新搭建方式
  6. 前端三大框架React、Vue、Angular简述
  7. 零拷贝原理详解(很多大厂面试题哦)
  8. 查看自己电脑连接过的WiFi密码
  9. MzTreeView节点树(梅花雪)
  10. 解决 win10 商店无法登录, win10 账号问题
  11. 美国习惯用语flip out的中英文翻译解释和例子
  12. FC总线基础知识(2)——光纤交换机
  13. Ubuntu启动错误——Kernel panic - not syncing VFS unable to mount root fs on unknown-block 0 0
  14. 基于motion视频捕捉软件的树莓派视频拍照系统(图像变化识别+拍照+邮件)
  15. php限定符实例,PHP正则表达式限定符说明
  16. EDKII实现bmp图片加载并显示的应用程序
  17. 网红萌宠“JUJU奇幻乐园”闪临龙德广场 五月活动玩转不停
  18. 使用hive做单词统计
  19. MGCP /H.248 鉴权认证
  20. 回车键换行符回车符 朦胧中!

热门文章

  1. 笔记:企业内部因素评价
  2. 【LeetCode】3月24日打卡-Day9
  3. 工业和信息化部办公厅关于公布2021年产业技术基础公共服务平台复核结果的通知
  4. 知识图谱最新权威综述论文解读:实体发现
  5. 5 计算机组成原理第四章 指令系统
  6. 关于字节对齐以及内存占用
  7. 计算机网络(一)-概述(补充)
  8. get,post请求的编码统一
  9. 如何用python做计算软件_如何用Python写一个计算器软件 附带效果图
  10. springboot导入项目依赖报错_最详细的 Spring Boot 多模块开发与排坑指南