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

2023-11-16

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

今天我们开始读张志伟老师的《硬件系统工程师宝典》,这是一本非常好的入门书,对需求分析,电源、信号完整性,电源完整性,可制造性,原理图,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相关学习资料,还有针对大学生的资料包,后续还会有更多资料分享给大家,助力大家学习,成就梦想~

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

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

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

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

  • 【原创】第一个iOS应用程序

    摘要 第一个iOS应用程序 包括获取控件 绑定事件 设置属性等内容 iOS Objective C 目录 第一章 窗口与应用程序 第二章 添加视图 2 1 从nib文件初始化视图 2 2 使用脚本添加视图 第三章 添加子视图 3 1 通过x

随机推荐

  • 制作自己的 Kindle 电子书

    想象以下场景 你刚收到一台新的 Kindle Paperwhite 心中已然响起了轰轰烈烈的 我今年 或这个冬天 一定要阅读 100 本书 结果发现 想看的书 Amazon 上找不到 或者排版很糟糕 如何解决 自己动手做呗 准备工作 我使用
  • UE4 UI实现改键功能

    主要内容 本文主要讲解如何在UI中实现自定义按键的功能类似于游戏中的改键操作 用到的是UE4自带的第三人称案例 因为第三人称自带了小白人和几个按键绑定就不用再手动去设置 实现步骤 1 创建两个UMG用来展示UI效果 1 创建WBP Key
  • C++链表合并

    有l1和l2两个链表 这两个链表降序排列 把l2合并到l1中 并按降序排列 同时清空l2链表 例如l1 9 8 7 6 l2 12 11 10 5 4 3 2 1 合并后l1 12 11 10 9 8 7 6 5 4 3 2 1 l2 in
  • 【Android】利用intent启动浏览器

    文章目录 一 默认浏览器 二 指定浏览器 三 选择浏览器 一 默认浏览器 需要设置Action和Date属性 构造 Uri uri Uri parse https www baidu com Intent intent new Intent
  • SCADE Suite 状态机之变量隐式赋值

    SCADE Suite 状态机之变量隐式赋值 1 变量的隐式赋值 目的 简化模型设计 Last 只要没有显示赋值 便取上一周期的数值 Default 只要没有显示赋值 便取默认设置的数值 优先级更高 设置方法 2 定义变量的Last值 1
  • LeetCode 817:链表组件(计数)

    解法一 常规解法 建图 DFS 时间复杂度O n O n 空间复杂度因为需要存储图 所以是O n 这种方法是通解 对于所有图都适用 Definition for singly linked list struct ListNode int
  • lua元表以及元方法

    知微出凡 lua元表以及元方法 lua中的变量是没有数据类型的 值有类型 类型有八种nil number boolean string function thread userdata以及table Lua 中的每个值都可以有一个 元表 这
  • 62.[GIS基础]笛卡尔坐标系

    文章目录 笛卡尔坐标系 多坐标系 坐标系的嵌套 坐标变换 坐标系转换 转载请注明原始链接 http blog csdn net a464057216 article details 54578069 后续此博客不再更新 欢迎大家搜索关注微信
  • 基于粒子群算法(PSO)优化径向基神经网络(PSO-RBF)的分类预测。matlab代码,优化参数为扩散速度,采用交叉验证。多特征输入单输出的二分类及多分类模型。程序内注释详细,直接替换数据就

    清空环境变量 warning off 关闭报警信息 close all 关闭开启的图窗 clear 清空变量 clc 清空命令行 读取数据 res xlsread 数据集 xlsx 分析数据 num class length unique
  • 抛去容抗角度,从电容充放电角度理解RC低通滤波器

  • 和你一起从零开始写RISC-V处理器(2)

    RISC V加法指令的实现 文章目录 RISC V加法指令的实现 上期回顾 一 正片开始 编写各个模块 pc reg模块 if模块 rom模块 if id模块 id模块 regs模块 id ex模块 ex模块 二 顶层模块搭建 三 测试文件
  • 学懂最小生成树(克鲁斯卡尔算法)

    本节 小编将带大家了解最小生成树的第二种构成算法 克鲁斯卡尔算法 Kruskal algorithm 当然 对另一种算法感兴趣的朋友可以看看之前的这篇文章 学懂最小生成树 普里姆算法 目录 一 实现原理 二 代码实现 一 实现原理 克鲁斯卡
  • 后端开发——Flask框架从入门到入坟(中)

    前言 在上一篇文章中荔枝已经梳理了Flask的基础语法 但是想要靠这些东西来写一个项目是远远不够的噢 我们还需要一个更加清晰的项目逻辑来搭建一个Flask后端项目框架 在真实的项目开发中 我们还需要了解如何搭建数据库 如何管理高效管理代码
  • leetcode刷题——栈与队列

    队列 vs 栈 栈 从头进 从头出 只有头部一个进出口 队列 从尾进 从头处 头和尾分别负责出和进 适用于配对问题 20 有效的括号 运用栈尾进头出的思想实现配对 当我们遇到一个左括号时 我们会期望在后续的遍历中 有一个相同类型的右括号将其
  • js 判断数组是否有元素重复

    这里有一个js数组 判断数组是否有重复元素 具体代码 var vecotr for i 0 i
  • rdkafka线程过多_Kafka快速入门(十一)——RdKafka源码分析

    Kafka快速入门 十一 RdKafka源码分析 一 RdKafka C源码分析 1 Kafka OP队列 RdKafka将与Kafka Broke的交互 内部实现的操作都封装成Operator结构 然后放入OP处理队列里统一处理 Kafk
  • 计算机应用技术图像图形处理,计算机图像处理应用技术论文

    摘要 全息技术是物理学中的重大发现 近年来在各个行业得到广泛的应用 作为全息技术中的两个重要部分 CCD和计算机图像处理技术 在推动数字全息新一轮发展中起到至关重要的作用 本文将着重从计算机应用方面阐述图像处理技术在全息中的应用 关键词 计
  • 【机器学习经典算法】K近邻(KNN):核心与总结

    文章目录 1 初识K近邻 2 相知 2 1 K近邻三要素 2 2 KD树 2 2 1 kd树的构建 2 2 2 kd树的搜索 3 总结 1 初识K近邻 K 近邻 K Nearest Neighbors KNN 可以说是整个机器学习算法中最为
  • Python中的垃圾回收机制

    垃圾回收 Garbage Collection 以下简称GC 是一种自动的内存管理机制 有许多不同的实现算法 Python中的GC 以引用计数为主 标记 清除和分代回收为辅 1 GC 在程序中定义了一个变量 就是在内存中开辟了一段相应的空间
  • 硬件系统工程师宝典(1)-----硬件系统设计应该从哪里开始?

    系统设计举足轻重的一步 需求分析 今天我们开始读张志伟老师的 硬件系统工程师宝典 这是一本非常好的入门书 对需求分析 电源 信号完整性 电源完整性 可制造性 原理图 pcb的详细设计 常用软件等进行了介绍 可以帮助我们快速了解硬件工程师需要