硬件系统工程师宝典(1)-----硬件系统设计应该从哪里开始?

news2024/11/19 16:47:54

系统设计举足轻重的一步,需求分析

今天我们开始读张志伟老师的《硬件系统工程师宝典》,这是一本非常好的入门书,对需求分析,电源、信号完整性,电源完整性,可制造性,原理图,pcb的详细设计,常用软件等进行了介绍,可以帮助我们快速了解硬件工程师需要学习哪些方面的知识。让我们在开发过程中不再“无章可循”,通过本书我们可以按照硬件系统设计流程,对问题进行抽丝剥茧的分析、深入,不断提升自己。

下面我们进入第一章需求分析,作者说,硬件系统设计像修路一样,就要确定路的起点和终点、路的级别要求、修路需要的人力物力、路修好后带来的经济效应。那么在硬件系统设计中的“鹰眼蓝图”,就是所谓的需求分析。其实就是说,我们做需求分析的目的,要让设计的产品满足市场的需求。

功能需求

明确这个设计是做什么用的,就可以针对选择芯片来实现功能,一般的功能需求有:供电方式及防护、输入与输出信号类别及处理、无线通信功能等。

供电方式及防护

1.内置电源板用市电供电:需要单独设计开关电源板,设计需要满足不同的行业标准。2.外置直流稳压电源供电:能够简化系统电源部分设计,但需要一个外置的电源。

​作者提到了PoE(Power Over Ethernet)技术,PoE可以在现有的以太网Cat.5布线基础架构不变的情况下,为一些基于IP的终端(如IP电话、无线局域网接入点AP、网络摄像等)传输数据信号的同时,还能为设备提供直流供电。这就是一个确保现有布线安全和设备功能正常,最大限度降低成本的技术。在一些要求部分功能电路失效不影响整个硬件系统稳定的设备上,需要涉及彼此隔离的供电和输入/输出电路模块,可采用不同规格的电源隔离IC。这就是说,供电方式要从设备的供电形式、需要满足的行业标准,同时也要考虑适配现有技术的成本。

输入与输出信号类别

信号的处理要通过软硬件的交互来完成,俗话说,“硬件搭台,软件唱戏”。那么硬件搭什么样的台,需要根据需要处理的输入信号及输出信号来选定。

作者举了个例子,某医疗系统的中心控制器要求输入信号为外围的12种医疗设备采集的数据,中心控制器对输入信号进行处理后,把输出信号统一以Socket包形式通过RJ45以太网发送到中心服务器,外围医疗设备的接口有USB接口形式、TTL电平的UART口、RS232串口。那么,软件部分需要分析各接口协议的实现和有机组合,解释各输入/输出数据的类型,并说明其媒体、格式、数据范围、精度和编码方式;硬件系统设计则需要根据设备输入/输出信号的接口类型以及处理数据的能力来选定设计方案。

无线通信功能

根据设备的需要,在硬件系统设计时,确定系统是否需要具备无线通信功能。目前的无线通讯方式有:3G\4G\5G、GPRS、WiFi、ZigBee、Bluetooth、IrDA、NFC、UWB、CSS和RFID。产品设计方案选型时,需要根据硬件系统无线通讯方式进行设计选型。当然,每种无线通信方式都有各自的优劣,也需要根据产品定位来选择合适的无线通信方式。

整体性能要求

1.对输入/输出数据的处理能力,比如处理器处理数据的能力、能够处理数据的最高带宽、处理数据的实时性和采集数据的精度。

2.系统对温/湿度环境的要求,比如消费类的温度范围是0~70℃,工业级的温度范围是-40~85℃,军用级的温度范围是-55~150℃。对于湿度的性能要求,要从防护等级设计上考虑。

3.系统的无故障稳定运行性能要求,根据产品工作寿命的要求进行选型。

4.能效等级就是表示家用电器产品能效高低差别的一种分级方法,针对产品能量利用率要求,需要根据各行业的标准,不断优化各电路模块的设计。

5.系统的自身防护性能产品,要考虑过压保护、欠压保护、过流保护、短路保护和雷击防护等一系列的防护措施。所以,为保证产品的性能,以上问题需要在前期的需求分析中明确的产品性能指标,来有效合理地指导开发工作。

用户接口要求

用户接口要求需要确定产品硬件接口的种类及数量,比如电源接口、指示灯、开关类型、显示屏幕、传感器接口等。根据用户所需的接口种类及数量去综合选定设计方案,然后需要考虑日常使用对端口的使用频率,后期需要做压力试验。作者给出了小米TV的用户接口插拔试验和按压测试数据,如下表所示:

​小米TV用户接口插拔试验和按压测试数据

另外,不同设备根据供电方式不同,供电的接口也需要根据需要选型。其他的还有设备的开关按键、指示灯的设计、屏幕的种类要求等都需要综合考虑成本、性能的需求。

功耗要求

功耗是指设备单位时间内所消耗的能源数量。我们在设计过程中需要计算每一部分电路的最大功率,根据这些功率参数进行电源架构设计及电源元器件的选型。

作者举例了几种常用的功耗模式:热设计功耗(TDP)、CPU满负荷运行下最大功耗、待机功耗和关机功耗。

其中TDP就是处理器最大负荷工作时释放出的热量,这个其实是对散热系统提出的要求,要求散热系统能够把CPU发出的热量散掉。CPU的功率计算满足功率(W)=电流(A)*电压(V)。在进行硬件电源系统设计时,一般会预留20%的电源设计冗余,来保证系统的电源供电更加可靠、稳定。

成本要求

成本分析是需求分析至关重要的一部分,生产产品的目的是获取最大的利润。硬件工程师要保证每个元器件发挥重大的作用,避免无效元件存在,保证BOM(Bill of Material)价较低。

当然,对于BOM物料的选型也是一项烦琐的工作,芯片既要满足性能的要求,也要考虑供应商规模、技术支持程度、物料实验验证等因素。元器件在性能满足要求的条件下,遵循价格最优的原则。

IP和NEMA防护等级要求

这里说的IP(Ingress Protection)是防护等级的意思,是将电器依其防尘防湿气特性加以分级。IP防护等级由两个数字组成,第一个数字表示电器防尘、防止外物侵入的等级,第二个数字表示电器防湿气、防水侵入的密闭程度,数字越大表示其防护等级越高。IP68是GB/T 4208-2017外壳防护等级(IP代码)中,防尘防水等级标准的最高级别。

​NEMA的防护标准除了防尘、防水之外,还包括了防爆。那么,对防护等级有要求的产品,需要硬件工程师和结构工程师反复迭代,最终确认PCB的定位、安装及端子的位置信息。

以上就是系统设计举足轻重的一步,需求分析的全部内容,下篇我们来看看硬件系统设计在需求分析之后,要从哪里开始着手。


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

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

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

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

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

相关文章

风控特征变量如何命名

风控变量的命名相信是各位小伙伴,不管是策略还是模型开发的同学都会经常遇到的问题。如果变量不多,假设变量也就只有十几二十个左右,相信大家也不需要怎么处理,或许下面这样的简单命名方式就好了: 如VAR1~VARN&#x…

一套Abaqus常用子程序的二次开发和复杂应用攻略

当物体所受载荷是比较复杂的函数时(如与时间、位置等相关),通过界面输入的方式已经难以实现,通常便需要借助于DLOAD子程序来实现。下面将就ABAQUS软件的DLOAD子程序进行讲解和应用举例,希望通过此次讲解能够让更多的同…

01背包问题

01背包问题一、01背包问题1、问题描述2、问题性质分析3、动态规划思路(1)状态方程a.状态表示:b.状态转移:(2)循环的设计3、代码模板(1)朴素版(2)优化版一、01背包问题 1、问题描述 2、问题性质分析 这道题…

WEB接口测试之Jmeter接口测试自动化(初次接触)

软件测试自动化从不同的测试阶段分类,可从下层到上层依次分为单元测试-->接口测试-->界面自动化测试。 单元测试一般有开发人员自行完成,而界面自动化测试合适的测试条件又很难达到,测试人员在繁杂的手工界面测试之余, 更…

相信制造业品牌的实力:专访鸿雁全屋智能贵州总代理

作者 | 牧之 编辑 | 小沐 出品 | 智哪儿 zhinaer.cn长期以来,我们一直在讲智能家居市场的下沉,从一二线城市到三四线城市,从沿海到内陆。而事实上,印象中「欠发达」的内陆城市,对于智能家居的接受度可能比我们想象得要…

Qt中调用gRPC

RPC是Remote Procedure Call的简称,中文叫远程过程调用。 gRPC是由 google开发的一个高性能、通用的开源RPC框架,主要面向移动应用开发且基于HTTP/2协议标准而设计,同时支持大多数流行的编程语言。 一.编译gRPC 操作系统:window…

百亿级流量的系统架构该怎么设计,今天就来教会你!

V-xin:ruyuan0330 获得600页原创精品文章汇总PDF 目录 一、前情提示二、清晰划分系统边界三、引入消息中间件解耦四、利用消息中间件削峰填谷五、手动流量开关配合数据库运维六、支持多系统同时订阅数据七、系统解耦后的感受八、下集预告 一、前情提示 上一篇文章…

吊炸天的云原生,到底是个啥

云原生技术里有很多技术、概念和术语,不了解的人,往往弄不清楚而一头雾水,这些概念都是啥,之间是什么关系?本文要说的就是这些。本文更多是科普和扫盲,无意面面俱到,也无意深入细节。 本文适合一…

Allegro如何合并同名网络铜皮操作指导

Allegro如何合并同名网络铜皮操作指导 Allegro可以将同名网络的铜皮合并起来,如下图,需要把下面两块铜皮合并成一块铜皮 具体操作如下 选择Shape选择merge shapes

剑指Offer-面试题1:整数除法——你真的会用Math.abs吗?

整数除法 题目要求 输入2个int型整数,它们进行除法计算并返回商,要求不得使用乘号*、除号/及求余符号%。当发生溢出时,返回最大的整数值。假设除数不为0。例如,输入15和2,输出15/2的结果,即7。 有问题的…

使用OpenCV的函数polylines()绘制多条相连的线段和多边形;使用函数fillPoly()绘制带填充效果的多边形

函数polylines()可用来根据点集绘制多条相连的线段,也可用来绘制多边形。 函数polylines()有两种原型,这里只向大家介绍比较常用的那种原型。 函数polylines()的C原型如下: void cv::polylines(InputOutputArray img,const Point *const *…

Power BI 11个必学官方示例数据案例(附下载链接)

在开始学习Power BI时,最大的问题就是不知道哪里找数据,或者有数据却对搭建看板毫无头绪, 不知道该从哪里下手。 本文收集整理了官网上最值得学习的11个案例,包括不同行业和分析方法,方便大家按需学习。点击标题即可转…

安徽省建设工程监理人员从业水平能力证书

安徽省建设监理协会会员单位从业人员是指已通过安徽省建设监理协会组织的从业水平能力认定考试,取得《安徽省建设工程监理人员从业水平能力证书》,并在工程建设中从事监理工作的监理工程师和监理员(以下简称“监理工程师、监理员”&#xff0…

LLVM中矩阵Matrix的实现分析

1 背景说明 Clang提供了C/C语言对矩阵的扩展支持,以方便用户使用可变大小的二维数据类型来实现计算,目前该特性还是实验版,设计和实现都在变化中。LLVM目前设计为支持小型列矩阵(column major),其对矩阵的…

Java字节码介绍

Java字节码 概述 学习 Java 的都知道,我们所编写的 .java 代码文件通过编译将会生成 .class 文件,最初的方式就是通过 JDK 的 javac 指令来编译,再通过 java 命令执行 main 方法所在的类,从而执行我们的 Java 程序。而在这中间所…

【矩阵论】6. 矩阵理论——算子范数

6.2 算子范数 6.2.1 定义 CnC^nCn 上任一向量范数 ∥X∥V\Vert X\Vert_V∥X∥V​ 都产生一个矩阵范数 ∥A∥max⁡x≠0{∥AX∥V∥X∥V}\Vert A\Vert\max_{x\neq 0}\limits \{\frac{\Vert AX\Vert_V}{\Vert X\Vert_V}\}∥A∥x0max​{∥X∥V​∥AX∥V​​} ,X∈CnX\in C^nX∈Cn…

Linux 管理联网 测试网络连通性 -- Ping 命令详解 tracepath命令详解

测试网络的连通性 # 我们测试网络的连通性&#xff0c;一般就是使用的 PIng 命令 Ping &#xff1a; 一般格式 &#xff1a; ping [ 选项 ] < 目标主机名 或 IP 地址 > 常用选项 &#xff1a; - c 数字 &#xff1a; 用于 设定本命令发出的 ICMP 消息包的…

限量,Alibaba首发“Java成长笔记”,差距不止一点点

前言 本文是为了帮大家快速回顾了Java中知识点&#xff0c;这套面试手册涵盖了诸多Java技术栈的面试题和答案&#xff0c;相信可以帮助大家在最短的时间内用作面试复习&#xff0c;能达到事半功倍效果。 本来想将文件上传到github上&#xff0c;但由于文件太大有的都无法显示…

CentOS7使用yum安装Golang(超详细)

使用yum安装Golang前言一、go语言介绍二、yum安装golang1.安装go版本为1.19.41.1执行yum install go&#xff08;报错&#xff09;1.2配置go的安装源1.3执行yum install golang1.4查看go的安装版本2.安装go版本为 1.11rc2&#xff08;这个参考&#xff0c;不用操作&#xff09;…

Docker镜像的原理

centos7系统 包括2部分&#xff0c; linux内核&#xff0c;作用是提供操作系统的基本功能&#xff0c;和机器硬件交互&#xff0c;如何读取磁盘数据&#xff0c;管理网络&#xff0c;使用C编写的&#xff0c;由linus的开发团队&#xff0c;内核只提供操作系统的基本功能和特性…