硬件系统工程师宝典(2)-----硬件电路的概要设计启动

news2024/12/28 5:24:15

今天我们继续来读这本书,硬件系统工程师宝典。作者提到,产品需求分析之后就进入概要设计阶段。在这个阶段,ID(Industrial Design)工业设计及结构工程师、软件系统开发工程师和硬件系统开发工程师等开始分头工作。

工业设计工程师负责使一件产品的功能设计和美学设计相结合,其实就是做到又好看又好用;软件系统开发工程师负责在确定的硬件开发平台上,根据用户的需求,实现具体功能,根据开发的层面和开发环境的需求,选择有操作系统和无操作系统开发。

我们主要来看下硬件系统概要设计中的主要任务:根据需求分析,选定硬件系统设计的核心芯片,设计系统架构框图、关键链路链接图和时钟分配框图等,并根据各部分功能电路的功耗情况,制定电源设计总体方案。具体的说就是对设计过程中的信号完整性(SI)、电源完整性(PI)、EMC/EMI的可行性、结构与散热设计的可行性、工艺的可行性、测试的可行性等环节做初步分析。

总的来说概要设计相比需求分析更加细节,可以提前发现设计问题,这样可以显著缩短开发周期,本人就曾在一个项目中没有考虑一个安规的初次级耐压问题,面临PCB要重新设计打板的悲惨命运。

信号完整性的可行性分析

1.明确PCB上需要特殊处理的高速信号的种类,并予以归纳分别进行分析。

2.搭建SI信号完整性分析的平台,如Cadence Allegro、Allegro Sigrity等。

3.在原理图设计阶段针对要评测的各个指标进行归类,从理论上进行SI分析指标的评测。

4.PCB布线阶段使用仿真工具量化信号的各项性能指标,从而对PCB Layout进行元器件布局5.布线结束后,对需要量化分析的信号进行各项性能指标的仿真验证。

电源完整性的可行性分析

1.根据BGA引脚的扇出、电源平面与地平面数量确定PCB的叠层结构。

2.根据设计的要求,确定去耦电容的类别。

​电容的分类

3.根据PCB上信号的工作频率及PCB的叠层结构确定平面进行谐振分析的频率。这里平面谐振是能量被夹在两个平行板之间,因原始信号与其反射信号同相而形成的共振腔效应。

4.确定各个电源平面的目标阻抗。电源平面的目标阻抗为:Zo=△V/△I,△V是电源平面电压的波动范围,△I是动态电流的波动范围。

5.分析直流压降,确定大电流路径。直流压降IR Drop的含义为直流工作时由直流电阻造成的电压降。

EMC的可行性分析

EMC设计的方法可以分为以下四点:接地、滤波、隔离和屏蔽。

接地能够有效将噪声导入GND平面;滤波能够将无效信号频段滤除;隔离能够阻挡噪声的传导,屏蔽能够有效阻断噪声的辐射干扰。

进行产品的EMC可行性分析时,先要确定产品定位,从而对应其标准进行测试。对于EMC的可行性分析,可以着重从三个方面入手:

1.保护受干扰的群体。

2.切断干扰噪声的传输路径。

3.隔离干扰源。

结构与散热设计的可行性分析

当器件工作时,器件功耗的绝大部分能量将以热能的方式散发出去。每个器件都有一个稳定工作的温度范围。

​散热风扇与散热导管

在结构与散热设计的可行性分析中,在满足结构可装配性的前提下,可以从以下几个方面来考虑:

1.器件自身的功耗情况。评估每个芯片的最大功耗,进行相应的散热处理

2.评估器件的散热对周边器件的影响对于一些热源器件,如DC/DC模块、LDO模块和高功耗的IC,在PCB布局时,应远离对温度敏感的器件,避免其性能降低。

3.评估PCB上的散热通道在利于PCB整体散热的情况下,把控整个PCB的布局。如:把热量高的器件布置在下风道,利于提高PCB整体的散热处理效果。

测试的可行性分析

测试可行性分析即是为了验证设计产品是否达到所设计的指标,那么就需要我们在设计中放置测试点,对测试点需要明确测试点的大小、间距、数量等设计参数。

1.设计的可测试性验证为了便于进行设计的可测试性验证,在设计时需要注意:对所有的关键信号都要添加测试点;在待测信号测试点附近都要合理添加测试用的地孔;为便于进行强度测试,要在合适的位置适当增加强度测试的输入点。

2.量产的可测试性验证自动光学检查、自动X射线检查、飞针测试、ICT、FCT和边界扫描适用于量产的可测试性分析,需要根据不同的量产情况选择合适的测试方案。

工艺的可行性分析

1.设计的PCB的叠层结构是否符合PCB生产的工艺要求。

2.PCB上的走线宽度和敷铜厚度是否符合PCB生产的工艺要求。

3.走线单端阻抗及差分阻抗有特定要求的走线,所设计的走线参数是否符合厂家生产阻抗控制板的要求。

4.确定PCB上所采用的孔的类别:机械钻孔或激光孔是否符合厂家的要求。

5.为满足量产要求,对于面积较小的PCB,在加工时,一般需要拼版处理,拼版前需要与PCB厂确认拼版工艺,合理添加拼版的MARK光学定位点。

6.根据设计需求,确定PCB表面的处理工艺。7.确定厂家加工生产所需的图纸文件格式。8.PCB SMT所需资料的确认。

设计系统框图及接口关键链路

在进行系统设计时,有时系统会比较复杂,理解系统的工作流程后,直接进行电路设计有一定难度,如果可以将系统的各个功能进行模块化分类,关注各个模块彼此之间的连接接口,并深入每个功能模块进行电路的设计会起到事半功倍的效果。如下图所示,是基于P2020的系统设计框图:

基于P2020的系统设计框图

从该图中可以读出一系列内容,从系统层面把控整个电路的基本功能。

电源设计总体方案

一般硬件系统设计中最常见的电源变换类型是直流转直流,LDO和DC/DC是常用的两种电源电路。

LDO具有输出电源纹波和噪声小、应用简单、成本低、电压输入与输出无延时的优点,但LDO的工作效率低,能耗消耗大,受自身散热条件限制只支持相对较小的电流输出。且LDO只能实现降压,其内部晶体管工作在线性区,所以无法实现电源输入端与输出端的有效隔离。

DC/DC采用MOSFET控制电源的输入与输出,通过控制MOSFET开关的时间来控制输入回路与输出回路的连通和断开的时间,进而输出不同的电压值。DC/DC自身消耗能量低,输入与输出电源的转换效率高,且支持升压、降压、反相等变换,输入的电流大,支持输入与输出的有效隔离,但DC/DC电路设计复杂,相应成本也高,电源输入和输出有一定的延迟,且输入电源的纹波和噪声较大。

通过系统框图的分析,就可以明确系统所具有的功能模块,根据各个关键功能模块的电源电压与电流值,计算能耗情况,就可以对应给出各个功能模块所需要的VRM。如下图所示是根据电流流向及各个功能模块所需要的供电模块组成的某个系统的电源总体架构。

某个系统的电源总体架构

通过系统电源的拓扑结构,不仅可以清楚地看出电流的流向,还可以实时核查出每一部分的功耗及系统总的功耗。

时钟分配图

时钟电路就如同汽车的发动机给汽车提供前行的动力一样,是驱动各个接口之间通讯,进行数据采样所必需的。在现代电子系统的设计中,用到的时钟频率越来越多(如IC内核工作的时钟等),需要在电路设计的初期理清楚电路的时钟分配,选定合适的时钟电路。

以上就是硬件电路的概要设计的相关论述,对硬件开发概要设计中的信号完整性的可行性、电源完整性的可行性、EMC的可行性、结构与散热的可行性、测试的可行性、工艺的可行性、硬件系统的框图设计、关键链路设计、硬件系统的电源设计方案和系统工作的时钟分配图进行了框架性的论述。

通过这些论述,我们可以知道概要设计需要考虑的设计问题,在电路设计初期考虑、搞定可行性分析,可以大大减少后期开发设计的问题,缩短开发周期。


另外,整理了一些电子工程类的资料,分享给大家,目前有模拟电路、单片机、C语言、PCB设计、电源相关、FPGA、EMC、物联网、Linux相关学习资料,还有针对大学生的资料包,后续还会有更多资料分享给大家,助力大家学习,成就梦想~

链接可在往期文章中找(在文章的最后有链接)~

模拟电路设计的九个级别,你是模电几段?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/140280.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

头条百科词条怎么编辑?送你一份超详细指南

头条百科其实就是之前的互动百科,后面被今日头条收购之后,改为头条百科,也叫快懂百科。 百度百科在百度上的权重很高,而头条百科在今日头条和抖音上的权重很高。 现在我们遇到什么问题或是不知道什么人物、品牌的时候&#xff0…

xxljob 的 阻塞处理策略的逻辑是什么(小白)

目录 1 需求2 单机串行3 丢弃后续调整4 覆盖之前的调整1 需求 每一个任务都有一个阻塞处理策略,我们在创建任务的时候可以自己设置,那么不同的设置,后端的逻辑是什么呢》 xxljob 调度中心项目 调度我们自己的项目,到了我们项目里面,最先到的文件是 就在首次到的这个文件的…

Springboot-数据库操作(Mybatis)-初级入门

一、Mybatis-plus介绍 官方文档&#xff1a;简介 | MyBatis-Plus (baomidou.com) 他只增强了单表查询&#xff0c;没增强多表查询等复杂的查询。 二、配置 引入依赖 <!-- MyBatisPlus依赖--><dependency><groupId>com.baomidou</groupId><a…

UBUNTU 22.04 使用 SUNSHINE 和 MOONLIGHT 进行串流

参考 【ubuntu22.04】sunshine安装使用总结&#xff0c;远程游戏。_哔哩哔哩_bilibili sunshine/README.md at master loki-47-6F-64/sunshine GitHub GitHub - LizardByte/Sunshine: Sunshine is a Gamestream host for Moonlight. Installation - Sunshine documentati…

基于Java+SpringBoot+vue实现图书借阅和销售商城一体化系统

基于JavaSpringBootvue实现图书借阅和销售商城一体化系统 &#x1f680; 博主介绍&#xff1a;5年java开发经验&#xff0c;专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 &#x1f345; 作者主页 超级帅帅吴 &#x1f345; 欢迎点赞 &#x1f…

2023年江苏专转本志愿填报辅导(22上岸南工程学长辅导手册)

文章目录公告链接一、23年专转本与22年的变化二、专转本志愿填报2.1、填报流程2.2、志愿填报院校顺序选择参考三、专转本考试分值及时间节点四、专转本录取投档原则及办法&#xff08;平行、征求平行志愿、服从志愿、降分录取&#xff09;五、考前冲刺辅导不同大类填报计算机大…

面试官问我TCP三次握手和四次挥手,我真的是

候选者&#xff1a;面试官你好&#xff0c;请问面试可以开始了吗 面试官&#xff1a;嗯&#xff0c;开始吧 面试官&#xff1a;今天来聊聊TCP吧&#xff0c;TCP的各个状态还有印象吗&#xff1f; 候选者&#xff1a;还有些许印象的&#xff0c;要不我就来简单说下TCP的三次握…

【Kotlin】函数 ⑤ ( 匿名函数变量类型推断 | 匿名函数参数类型自动推断 | 匿名函数又称为 Lambda 表达式 )

文章目录一、匿名函数变量类型推断二、匿名函数参数类型自动推断三、Lambda 表达式一、匿名函数变量类型推断 定义变量 时 , 如果将变量值 直接赋值给该变量 , 那么就可以 不用显示声明该变量的类型 ; 下面的代码中 , 定义 name 变量 , 为其 赋值 “Tom” 字符串 String 类型变…

2023年山东食品安全管理员模拟试题及答案

百分百题库提供食品安全管理员考试试题、食品安全管理员考试预测题、食品安全管理员考试真题、食品安全管理员证考试题库等&#xff0c;提供在线做题刷题&#xff0c;在线模拟考试&#xff0c;助你考试轻松过关。 一、单选题 1.餐饮具消毒的目的是: A.去除表面的污垢 B.杀灭…

【个人博客】Hexo个人博客搭建与配置详细教程 + Fluid主题 + Gitee发布

文章目录一、环境准备1.1 安装 NodeJs1.2 安装 Git1.3 安装 Hexo二、Gitee仓库搭建2.1 Gitee账号注册2.2 仓库搭建三、Hexo博客搭建3.1 基础环境搭建3.2 启动 Hexo3.3 更换 Fluid 主题四、自定义配置4.1 全局设置4.1.1 页面顶部大图4.1.2 博客标题4.1.3 导航菜单4.1.4 懒加载4.…

路由器连接实验

使用静态路由实现全网连通 R1 [r1]interface GigabitEthernet 0/0/0 [r1-GigabitEthernet0/0/0]ip address 12.1.1.1 24 [r1]interface GigabitEthernet 0/0/1 [r1-GigabitEthernet0/0/1]ip ad [r1-GigabitEthernet0/0/1]ip address 14.1.1.1 24 [r1]interface LoopBack 0 [r1…

搞懂MyBatis?这篇文章就够了~

哈喽呀~你好呀~欢迎呀~一起来看看这篇宝藏文章吧~ 目录 1.什么是MyBatis 2.配置MyBatis开发环境 3.使用MyBatis框架去操作数据库 3.1 实现MyBatis查询功能. 3.1.1 创建一个接口(该接口一定要加上Mapper注解): 3.1.2 创建上面接口对应的 xml 文件 (此文件会实现接口中的…

易基因|METTL3 通过调节m6A 修饰抑制口腔鳞状细胞癌安罗替尼敏感性| 肿瘤研究

大家好&#xff0c;这里是专注表观组学十余年&#xff0c;领跑多组学科研服务的易基因。2022年9月27日&#xff0c;中山大学附属第一医院口腔颌面外科王安训和何倩婷课题组在《Cancer Cell International》杂志发表了《METTL3 suppresses anlotinib sensitivity by regulating …

Tomcat弱口令+后端getshell漏洞

今天继续给大家介绍渗透测试相关知识&#xff0c;本文主要内容是Tomcat弱口令后端getshell漏洞。 免责声明&#xff1a; 本文所介绍的内容仅做学习交流使用&#xff0c;严禁利用文中技术进行非法行为&#xff0c;否则造成一切严重后果自负&#xff01; 再次强调&#xff1a;严禁…

指针进阶之数组指针和指针数组

文章目录一、指针数组1.概念2.用法&#xff08;1&#xff09;案例一&#xff08;2&#xff09;案例二二、数组指针1.概念&#xff08;1&#xff09;引子&#xff08;2&#xff09;写法&#xff08;3&#xff09;辨析&#xff08;4&#xff09;总结&#xff08;5&#xff09;案例…

ThreeJS—OrbitControls使其控制模型而不是场景

转载核心代码 项目场景&#xff1a; 来公司之前公司有一个地球组件&#xff0c;大概是张这个样子的⬇️&#xff0c;会转有飞线&#xff0c;有城市涟漪&#xff0c;很炫酷。可惜不是我做的。 一个大屏项目上需要额外增加一些需求 转动到某一城市&#xff0c;暂停转动&#…

K8S Pod 基本使用

K8S Pod 基本使用 Pod基本概念 Pods是在Kubernetes集群中创建和管理最小的部署单元&#xff0c;一个Pod内部可以运行一个或多个容器&#xff0c;多个容器之间具共享的存储和网络资源&#xff0c;共享运行上下文。Pod共享运行时上下文是通过linux 命名空间实现&#xff0c;不同…

项目管理工具dhtmlxGantt甘特图入门教程(五):甘特图实例特点

DHTMLX专注于JavaScript和HTML5 UI小部件和库&#xff0c;以帮助开发人员更快地构建功能丰富的、交互式的Web界面。 遵循现代网络开发的标准和做法&#xff0c;DHTMLX提供针对桌面和移动设备定制的顶级Web应用程序框架。 本文重点介绍使用Gantt Instance的主要功能。 DhtmlxG…

springBoot集成阿里云短信

第一步导入依赖 <dependencies><dependency><groupId>com.atguigu</groupId><artifactId>service-base</artifactId><version>0.0.1-SNAPSHOT</version></dependency><dependency><groupId>org.springfram…

【3】SCI易中期刊推荐——人工智能领域(中科院1区)

🚀🚀🚀NEW!!!SCI易中期刊推荐栏目来啦 ~ 📚🍀 SCI即《科学引文索引》(Science Citation Index, SCI),是1961年由美国科学信息研究所(Institute for Scientific Information, ISI)创办的文献检索工具,创始人是美国著名情报专家尤金加菲尔德(Eugene Garfield…