观看"杜洋AD的讲解视频",杜洋着重强调了"模块分开"布线的好处。

-------------------------------------------------------------------------网上仅找到的资料------------------------------------------------------------------

元件布局原则
  首先划分区域。根据电路的功能单元,对电路的全部元器件进行整体考虑,将各个功能电路单元按照模块划分大体区域,使布局适合信号流通,并尽量保持方向一致。
  如上图所示,大体的功能模块比如电源部分,核心控制部分,信号输入处理部分,信号输出处理部分,接插件部分,人机交互部分等等。按照电路板的实际功能需要进行模块区域的划分。一般的原则是电源部分集中布局在板边(靠边长方形),核心控制部分在板中间信号输入部分位于核心控制部分的左边,而信号输出部分位于核心控制部分右边接插件部分尽量布置在板边,人机交互部分要考虑到人机工程的要求进行合理布局。在保证电气性能的前提下,各功能模块的元件应放置在栅格上且相互平行或垂直排列,以求整齐、美观
  然后以每个功能模块电路的核心元件为中心,围绕这个中心来进行布局。元器件应均匀、整体、紧凑的排列在PCB上,尽量减少和缩短各元器件之间的引线和连接以方便布线并减少电磁干扰。在PCB中,特殊的元件比如电源器件、可调器件、发热及热敏感器件、高频部分的关键元件、核心芯片、易受干扰的元件、体积或重量大的器件、带高压器件,以及一些异性元件,这些特殊元件的位置需要仔细分析,布局要合乎电路功能的要求及生产的需求。不合适的布局可能产生电路兼容问题、信号完整性问题,从而导致PCB设计的失败。特殊元器件的位置在布局时一般要遵守以下原则:
  DC/DC 变换器、开关元件和整流器应尽可能靠近变压器放置,整流二极管尽可能靠近调压元件和滤波电容器。以减小其线路长度。
  电磁干扰(EMI)滤波器要尽可能靠近 EMI 源。尽可能缩短高频元器件之间的连接,设法减少他们的分布参数及和相互间的电磁干扰。易受干扰的元器件不能相互离的太近,输入和输出应尽量远离。
  对于电位器、可调电感线圈、可变电容器、微动开关等可调元器件的布局应考虑整块扳子的结构要求,一些经常用到的开关,在结构允许的情况下,应放置到手容易接触到的地方。元器件的布局到均衡,疏密有度。
  发热元件应该布置在 PCB 的边缘,以利散热。如果 PCB 为垂直安装,发热元件应该布置在 PCB 的上方。热敏元件应远离发热元件。
  在电源布局时,尽量让器件布局方便电源线布线走向。布局时需要考虑减小输入电源回路的面积。满足流通的情况下,避免输入电源线满板跑,回路圈起来的面积过大。电源线与地线的位置良好配合,可降低电磁干扰的影响。如果电源线和地线配合不当,会出现很多环路,并可能产生噪声。
  高、低频电路由于频率不同,其干扰以及抑制干扰的方法也不相同。所以在元件布局时,应将数字电路、模拟电路以及电源电路按模块分开布局。将高频电路与低频电路有效隔离,或者分成小的子电路模块板,之间用接插件连接。
  此外,布局中还应特别注意强、弱信号的器件分布及信号传输方向路径等问题。为将干扰减轻到最小程度,模拟电路部分和数字电路部分分隔开之后,保持高、中、低速逻辑电路在 PCB 上也要用不同区域,PCB 板按频率和电流开关特性分区。噪声元件与非噪声元件要距离远一些。热敏元件与发热元件距离远一些。低电平信号通道远离高电平信号通道和无滤波的电源线。将低电平的模拟电路和数字电路分开,避免模拟电路、数字电路和电源公共回线产生公共阻抗耦合。

Altium Designer入门学习笔记3:关于各模块分开布线的理解( 1)的更多相关文章

  1. Altium Designer入门学习笔记2:使用原创客3D元件库

    请自行淘宝购买: 元件库列表(2018年11月27日): 问题一:在项目库或已安装的库中找不到? 将"原创客"提供的文件全部添加到libraries中!"原创客" ...

  2. Altium Designer入门学习笔记4:PCB设计中各层的含义

    阻焊层:solder mask,是指板子上要上绿油的部分:因为它是负片输出,所以实际上有solder mask的部分实际效果并不上绿油,而是镀锡,呈银白色! 助焊层:paste mask,是机器贴片时 ...

  3. Altium Designer入门学习笔记1.软件安装与资料收集

    一.软件安装 微信:http://url.cn/5Eudzt9 关注微信公众号"软件安装管家",点击"软件目录",弹出"软件目录",点击进入 ...

  4. Hadoop入门学习笔记---part4

    紧接着<Hadoop入门学习笔记---part3>中的继续了解如何用java在程序中操作HDFS. 众所周知,对文件的操作无非是创建,查看,下载,删除.下面我们就开始应用java程序进行操 ...

  5. Hadoop入门学习笔记---part3

    2015年元旦,好好学习,天天向上.良好的开端是成功的一半,任何学习都不能中断,只有坚持才会出结果.继续学习Hadoop.冰冻三尺,非一日之寒! 经过Hadoop的伪分布集群环境的搭建,基本对Hado ...

  6. PyQt4入门学习笔记(三)

    # PyQt4入门学习笔记(三) PyQt4内的布局 布局方式是我们控制我们的GUI页面内各个控件的排放位置的.我们可以通过两种基本方式来控制: 1.绝对位置 2.layout类 绝对位置 这种方式要 ...

  7. PyQt4入门学习笔记(一)

    PyQt4入门学习笔记(一) 一直没有找到什么好的pyqt4的教程,偶然在google上搜到一篇不错的入门文档,翻译过来,留以后再复习. 原始链接如下: http://zetcode.com/gui/ ...

  8. Hadoop入门学习笔记---part2

    在<Hadoop入门学习笔记---part1>中感觉自己虽然总结的比较详细,但是始终感觉有点凌乱.不够系统化,不够简洁.经过自己的推敲和总结,现在在此处概括性的总结一下,认为在准备搭建ha ...

  9. Hadoop入门学习笔记---part1

    随着毕业设计的进行,大学四年正式进入尾声.任你玩四年的大学的最后一次作业最后在激烈的选题中尘埃落定.无论选择了怎样的选题,无论最后的结果是怎样的,对于大学里面的这最后一份作业,也希望自己能够尽心尽力, ...

随机推荐

  1. Linux 解压压缩war包

    jar -xvf aaa.war   (jar只能解压war 包到当前目录下) unzip aaa.war -d aaa/   (解压war包到aaa目录下) 打包aaa 下的所有文件为aaa.war ...

  2. D - Simple String CSU - 1550

    http://acm.csu.edu.cn/csuoj/problemset/problem?pid=1550 很久都没补这题,最近想学网络流,就看看,队友以前用网络流过的,Orz, 但是这题只需要简 ...

  3. openstack安装newton版本Nova部署(三)

    一.控制节点安装部署Nova Nova 包含API(负责接收相应外部请求,支持OpenStackAPI,EC2API):cert:负责身份认证:schedule:用于云主机调度(虚拟机创建在哪台主机上 ...

  4. CQRS之旅——前言(翻译)

    探索CQRS和Event Sourcing 本项目聚焦在使用命令和查询分离模式和事件溯源(CQRS+Event Sourcing)构建一个具有高扩展,高可用和高维护性的应用程序. 本项目定位为一个学习 ...

  5. 洛谷P1057 传球游戏

    f[i][j]表示第i轮j拿到球的方案数 转移:f[i][j]=f[i-1][j+1] +f[i-1][j+-1].注意: 边界f[0][1]=1; 还有当j=1或N时 #include<ios ...

  6. Servlet--HttpServlet

    一.Servlet 接口(javax.servlet) 定义:     public interface Servlet      Implemented by: FacesServlet, Gene ...

  7. linux配置tomcat已service方式启动

    1. 在/etc/init.d目录下新建文件,命名为tomcat2. 对tomcat文件进行编辑,执行 # cd /etc/init.d/ # vi tomcat 将下面代码粘上去 注意:下面代码ja ...

  8. JMeter进行压力测试

    一.jmeter的安装 1.从    http://jmeter.apache.org/download_jmeter.cgi 下载jmeter(图1正中间的apache-jmeter-2.13.tg ...

  9. 在Windows Server 2012中搭建SQL Server 2012故障转移集群

    OK~ WSFC 2012 R2 年度盛宴开始~ 在本文中,老王将用一系列的场景,把动态仲裁,动态见证,票数调整,LowerQuorumPriorityNodeID,阻止仲裁等群集仲裁技术串起来,完成 ...

  10. html 获取和写入cookie的 方法

    //取Cookie的值            function getCookie(cookie_name) {     var allcookies = document.cookie;     v ...