当前位置: 首页 > news >正文

Marin说PCB之传输线损耗---趋肤效应和导体损耗01

    大家在做RF上的PCB走线或者是车载相机的上走线的时候经常会听那些硬件工程师们说你这个走线一定要保证50欧姆的阻抗匹配啊,还有就是记得加粗走做隔层参考。

有的公司的EE硬件同事会很贴心的把RF走线的注意事项给你备注在原理图上或者是layoutguide上,遇到这样的EE同事的画那就好好珍惜吧,毕竟这么负责人的好男人不多了。列如,江湖流传一个消息说某个芯片设计公司的项目组中有些EE说这个是最终的原理图的了,不会再去改了,结果投板前改了十几个版本,Layout工程师不得不使用996的工作时间去赶进度了。所以说以后大家遇到这样的EE同事说的话,你也就听听就好了,千万可别当真啊,毕竟男人的嘴,骗人的鬼。小编我也不是故意踩低我们这个行业的EE同事,毕竟还很多设计公司的EE还是做事情负责的居多一些,懒散的少一些吧。

好了,我们言归正传。本期小编我主要给大家分享我最近做项目的时候遇到的一个问题,小编我最近做了一个我们公司乌克兰分部的一个板子,他们那边的Layout工程师由于忙着参加战争,这个板子也就直接扔给我们上海这边做了。小编我要不是看在之前的乌克兰大胡子的面子上我就直接拒绝了,想想还是为了两国的与友谊吧咬咬牙就接了这个烂板子了,再加上今年整个行业又那么卷,能有新的项目做就不错了,哪能挑肥拣瘦啊,而且小编我没有能力去躺平。

问题的主要是板子上有一个RF接口,上面也有EE同事备注的一些走线的要求:

在射频天线接口的电路设计中,为了确保射频信号的良好性能与可靠性,在电路设计中建议遵循以下设计原则:

1、应使用阻抗模拟计算工具对射频信号线进行精确的50 Ω 阻抗控制。

2、与射频引脚相邻的地引脚不做热焊盘,要与地充分接触。

3、射频引脚到射频连接器之间的距离应尽量短,同时避免直角走线,建议走线夹角保持为135°。

4、建立连接器件的封装时,信号脚需与地保持距离。

5、射频信号线参考的地平面应完整;在信号线和参考地周边增加一定量的地孔可以帮助提升射频性能;地孔和信号线之间的距离应至少为2 倍线宽(2 × W)。

6、射频信号线必须远离干扰源,避免和相邻层的任何信号线交叉或平行。

这个RF走线的设计不同的项目可能会稍微有一些不同吧。还有一些布局之类的要求等。这次小编我主要分享是一个RF走线的观点就是:RF走线在满足50欧姆的阻抗匹配的前提下,是直接走线用表层微带线按照正常的线宽(5-6MIL左右,不过这个线宽还是具体看不同板子的板厚和层叠情况来定的)走还是加粗走线做隔层参考好一些呢?我也问了旁边的EE同事马萨佗罗夫斯基,他说按照他以往的设计经验的话,要是这个信号有电流消耗比较多的话,就加粗走线吧,做隔层参考的那种50欧姆阻抗匹配的做法;没有太多的电流损耗的话就按照正常的5-6MIL的线宽也是可以的,毕竟我们之前的项目中确实有走线没有加粗而且还是走线在内层了。

而且这个信号我们也是让仿真同事做了信号完整性能仿真,优化PCB设计后也是是满足要求的。

我之前也是这样认为的,不过我心中还是有个疑问就是加粗仅仅就是为了信号的载流吗?这个时候测试的同事吴亦凡说你之前的不是有看到过一篇高速先生写的文章,而且你当时还让我们帮忙转发朋友圈啥的,那个讲的不就是关于信号线加粗走线的一些问题吗?小编我在此推荐一波高速先生这个微信公众号,这个上面有很多的优质文章,尤其是我们做PCB设计的更加应该多去看看的。

文章的链接如下所示:

线宽变大,损耗变小;线宽无限大,损耗无限小?------高速先生icon-default.png?t=N7T8https://mp.weixin.qq.com/s/GM_-ppNzNRp_6bXEs3lMbg

主要讲解的就是在满足信号线阻抗的前提下,其他的条件都不变的情况下,传输线的线宽越宽,传输线的损耗会越小,而且会一直是这个趋势不变至于详细的讲解可以去阅读这个原文章。

 其实上面的文章牵扯到一个传输线的知识点就是传输线的损耗之一,导体损耗。大家都知道我们传输线并不是那种理想的零阶或者是一阶模型,因为正常的一阶模型是一个无损的理想模型,电感和电容是不消耗能量的,但是实际中我们的传输线是有损耗的,其主要的损耗来源为导体损耗的介质损耗。其中导体损耗顾名思义就是有导体本身的电阻产生的损耗,当电流流过导线的电阻的时候就会产生损耗的。在信号传输的时候,电流一般都会沿着电阻的最小路径走的。低速的信号的传输路径一般都是从source端传输到负载端口,然后沿着GND平面返回到驱动端口(source端)。返回电流一般会沿着最小电阻路径回去,而且它的的电流密度和和路径上的电导师相对应的

随着频率的升高,电感的感抗占据了主要地位了,这个时候电流就会找一个电感最小的路径回去了。关于趋肤深度的公式如下所示:

其中,δ表示为集肤深度(单位为μm),F表示为正弦波频率(单位为GHZ)

在这个趋肤效应下,信号能够感受到的电阻取决于导线传输电流的有效横截面积,这个真实的横截面积就是电流所流过的的面积,如果电流仅流过导线的下半部分,则导线的电阻近似可以看作:

其中,R表示的线电阻,(单位为Ω),P表示的是导线的体电阻率(单位为Ω·in),LEN表示的是线长(单位为in),δ表示为集肤深度(单位为in)。

那么问题就来了,我们应该如何减少电感呢?

     导线中的电流都尽可能地扩展开,以使得导线的自感最小。同时导线中的反向电流尽可能地挤进,这样就可以使得信号路径和返回路径之间的互感变的最大了。这个也是我们经常说的趋肤效应了。下图所示为10MHZ的正弦波在微带线和带状线中的电流分布

导体电阻带来的损耗就是电流电阻时候的损耗,由于电阻随着评率的增大而增大,所以说损耗也会随着评率的增大而增大。于F的1/2的次方正相关的。还有一个就是铜箔表面的粗糙度了,有STD,HVLP等不同类型的。

其实在其他条件都一样的的前提下,加宽走线就是为了改善PCB走线上的导体损耗,再去细分的话就是导体损耗分为改善去趋肤效应和铜箔粗糙度,而我们这个做法其实就是主要去改善PCB走线上的趋肤效应带来的损耗。

                                     (图片来自一博研讨会课件分享)

     总而言之,类似RF这样的射频走线我们在满足其阻抗匹配的前提下,PCB的走线还是加粗一些做50欧姆的这个做法比较好一些,这样就可以减少信号在传输路径上的一些损耗了。但是记得PCB走线也不是无限制的加粗就好,因为越往后面就改善的量级不多了,而且你的PCB的布线空间也是有限的。就按照隔层参考挖空就好了,当然这个也是看你的板厚层叠了,有的是需要挖空两层才满足相应的50欧姆的阻抗匹配的。以上就是本篇文章的所有分享了,记得点赞收藏加关注啊,帖子们。

相关文章:

Marin说PCB之传输线损耗---趋肤效应和导体损耗01

大家在做RF上的PCB走线或者是车载相机的上走线的时候经常会听那些硬件工程师们说你这个走线一定要保证50欧姆的阻抗匹配啊,还有就是记得加粗走做隔层参考。 有的公司的EE硬件同事会很贴心的把RF走线的注意事项给你备注在原理图上或者是layoutguide上,遇到…...

八:分布式锁

1、为什么要使用分布式锁 锁是多线程代码中的概念,只有多任务访问同一个互斥的共享资源时才需要锁。单机应用开发时一般使用synchronized或lock。多线程的运行都是在同一个JVM之下。应用是分布式集群,属于多JVM的工作环境,JVM之间已经无法通过…...

示例:php将文本内容写入一个文件(面向过程写法)

一、封装2个函数,读写文件 /*** desc 读取文件内容* param string $filename* return array*/ private function readContent(string $filename): array {$text file_get_contents($filename);if (!$text) {return [];}$result json_decode($text,true);return…...

Flutter开发进阶之并发操作数据库

Flutter开发进阶之并发操作数据库 尽管 Flutter 本身不包含任何数据库功能,但可以使用各种第三方库和插件来在 Flutter 应用程序中实现数据库功能; 以下将使用sqflite作为例子,sqflite允许在 Flutter 应用程序中执行 SQL 查询,创…...

docker应用:搭建uptime-kuma监控站点

简介:Uptime Kuma是一个易于使用的自托管监控工具,它的界面干净简洁,部署和使用都非常方便。 历史攻略: docker:可视化工具portainer docker-compose:搭建自动化运维平台Spug 开源地址: ht…...

在illustrator中按大小尺寸选择物体 <脚本 018>

在Illustrator中我们可以依据对象的属性 如:填充颜色、描边颜色或描边宽度来选择相同属性的对象,但是Illustrator中没有根据不同大小尺寸来选择对象的功能,下面介绍的就是根据大小尺寸选择对象的脚本。 1、下面是当前画板中的所有对象&#…...

leetcode - 934. Shortest Bridge

Description You are given an n x n binary matrix grid where 1 represents land and 0 represents water. An island is a 4-directionally connected group of 1’s not connected to any other 1’s. There are exactly two islands in grid. You may change 0’s to 1…...

k8s的存储卷、数据卷

容器内的目录和宿主机目录进行挂载。 容器在系统上的生命周期是短暂的。 k8s用控制器创建的pod。delete相当于重启。容器的状态也会恢复到初始状态。一旦恢复到初始状态,所有的后天编辑的文件都会消失 容器和节点之间创建一个可以持久化保存容器内文件的存储卷。…...

流星全自动网页生成系统重构版源码

流星全自动网页生成系统重构版源码分享,所有模板经过精心审核与修改,完美兼容小屏手机大屏手机,以及各种平板端、电脑端和360浏览器、谷歌浏览器、火狐浏览器等等各大浏览器显示。 为用户使用方便考虑,全自动网页制作系统无需繁琐…...

vscode打开c_cpp_properties.json文件的一种方式

步骤一 点击win32 步骤二 点击json 自动生成了...

发起人自选-钉钉审批

场景描述 配置一个审批流程,在某些审批节点,不能确定谁具体来审批,所以需要手工选择一个人或者多个人保证流程能得以顺利通过。有些审批流程的做法是,上一个节点来选择指定的人,而钉钉的做法是发起人来指定。 钉钉设…...

电脑DIY-显卡

显卡 英伟达(NVIDIA)RTX系列 英伟达(NVIDIA) 英伟达(NVIDIA)是一家知名的图形处理器制造商,其显卡产品系列众多。以下是英伟达显卡的主要系列: 系列面向客户说明产品GeForce系列个…...

vue3+vite+ts+pinia新建项目(略详细版)

1、新建项目 npm create vite@latest 2、安装依赖 yarn add vue-router yarn add -D @types/node vite-plugin-pages sass sass-loader 3、配置别名 //vite.config.ts import { defineConfig } from vite import path from node:path export default defineConfig({ plu…...

深入理解 Flink(五)Flink Standalone 集群启动源码剖析

前言 Flink 集群的逻辑概念: JobManager(StandaloneSessionClusterEntrypoint) TaskManager(TaskManagerRunner) Flink 集群的物理概念: ResourceManager(管理集群所有资源,管理集群所有从节点) TaskExecutor(管理从节点资源,接…...

SpringCloud Aliba-Nacos-从入门到学废【2】

🥚今日鸡汤🥚 比起不做而后悔,不如做了再后悔。 ——空白《游戏人生》 目录 🧈1.Nacos集群架构说明 🧂2.三种部署模式 🍿3.切换到mysql 1.在nacos-server-2.0.3\nacos\conf里找到nacos-mysql.sql 2.查…...

web前端算法简介之字典与哈希表

回顾 栈、队列 : 进、出 栈(Stack): 栈的操作主要包括: 队列(Queue): 队列的操作主要包括: 链表、数组 : 多个元素存储组成的 简述链表:数组&…...

【uview2.0】Keyboard 键盘 与 CodeInput 验证码输入 结合使用 uview

https://www.uviewui.com/components/codeInput.html &#xff08;CodeInput 验证码输入&#xff09; https://www.uviewui.com/components/keyboard.html &#xff08;Keyboard 键盘&#xff09; <u-keyboard mode"number" :dotDisabled"true" :show&q…...

解决chromebook kabylake安装linux没有声音问题

chromebook kabylake安装arch没有声音&#xff0c;好长时间没有解决&#xff0c;一直用的蓝牙耳机。 今天搜搜帖子解决了&#xff0c; 分享供参考 git clone https://github.com/eupnea-project/chromebook-linux-audiocd chromebook-linux-audio ./setup-audio提示 I Underst…...

Spring Boot - Application Events 的发布顺序_ApplicationContextInitializedEvent

文章目录 Pre概述Code源码分析 Pre Spring Boot - Application Events 的发布顺序_ApplicationEnvironmentPreparedEvent Spring Boot - Application Events 的发布顺序_ApplicationEnvironmentPreparedEvent 概述 Spring Boot 的广播机制是基于观察者模式实现的&#xff0c…...

由jar包冲突导致的logback日志不输出

最近接手一个厂商移交的项目&#xff0c;发现后管子系统不打印日志。 项目使用的logback 本地断点调试发现logback-classic jar冲突导致 打出的war中没有 相关的jar 解决方法&#xff1a; 去除pom 文件中多余的 logback-classic 应用&#xff0c;只保留最新版本的。 重新打…...

.Net框架,除了EF还有很多很多......

文章目录 1. 引言2. Dapper2.1 概述与设计原理2.2 核心功能与代码示例基本查询多映射查询存储过程调用 2.3 性能优化原理2.4 适用场景 3. NHibernate3.1 概述与架构设计3.2 映射配置示例Fluent映射XML映射 3.3 查询示例HQL查询Criteria APILINQ提供程序 3.4 高级特性3.5 适用场…...

【Java学习笔记】Arrays类

Arrays 类 1. 导入包&#xff1a;import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序&#xff08;自然排序和定制排序&#xff09;Arrays.binarySearch()通过二分搜索法进行查找&#xff08;前提&#xff1a;数组是…...

将对透视变换后的图像使用Otsu进行阈值化,来分离黑色和白色像素。这句话中的Otsu是什么意思?

Otsu 是一种自动阈值化方法&#xff0c;用于将图像分割为前景和背景。它通过最小化图像的类内方差或等价地最大化类间方差来选择最佳阈值。这种方法特别适用于图像的二值化处理&#xff0c;能够自动确定一个阈值&#xff0c;将图像中的像素分为黑色和白色两类。 Otsu 方法的原…...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...

自然语言处理——循环神经网络

自然语言处理——循环神经网络 循环神经网络应用到基于机器学习的自然语言处理任务序列到类别同步的序列到序列模式异步的序列到序列模式 参数学习和长程依赖问题基于门控的循环神经网络门控循环单元&#xff08;GRU&#xff09;长短期记忆神经网络&#xff08;LSTM&#xff09…...

论文笔记——相干体技术在裂缝预测中的应用研究

目录 相关地震知识补充地震数据的认识地震几何属性 相干体算法定义基本原理第一代相干体技术&#xff1a;基于互相关的相干体技术&#xff08;Correlation&#xff09;第二代相干体技术&#xff1a;基于相似的相干体技术&#xff08;Semblance&#xff09;基于多道相似的相干体…...

MFC 抛体运动模拟:常见问题解决与界面美化

在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...

【C++特殊工具与技术】优化内存分配(一):C++中的内存分配

目录 一、C 内存的基本概念​ 1.1 内存的物理与逻辑结构​ 1.2 C 程序的内存区域划分​ 二、栈内存分配​ 2.1 栈内存的特点​ 2.2 栈内存分配示例​ 三、堆内存分配​ 3.1 new和delete操作符​ 4.2 内存泄漏与悬空指针问题​ 4.3 new和delete的重载​ 四、智能指针…...

Ubuntu Cursor升级成v1.0

0. 当前版本低 使用当前 Cursor v0.50时 GitHub Copilot Chat 打不开&#xff0c;快捷键也不好用&#xff0c;当看到 Cursor 升级后&#xff0c;还是蛮高兴的 1. 下载 Cursor 下载地址&#xff1a;https://www.cursor.com/cn/downloads 点击下载 Linux (x64) &#xff0c;…...

go 里面的指针

指针 在 Go 中&#xff0c;指针&#xff08;pointer&#xff09;是一个变量的内存地址&#xff0c;就像 C 语言那样&#xff1a; a : 10 p : &a // p 是一个指向 a 的指针 fmt.Println(*p) // 输出 10&#xff0c;通过指针解引用• &a 表示获取变量 a 的地址 p 表示…...