flash写保护原理_【干货分享】四种硬件版本管理实现原理及优劣势对比

本文详细介绍了硬件版本管理的重要性,并对比了通过GPIO上下拉、I2C扩展GPIO、AD采样电压和Flash记录四种方法的实现原理及优缺点,为设计者提供了选择依据。
摘要由CSDN通过智能技术生成

工程开发中,版本管理是必不可少的部分,软件的版本管理非常方便,在代码中插入版本信息,目标文件重新再命名一下就搞定了。但是硬件的版本管理就麻烦很多了,因此很多公司(主要是小公司)基本就忽略了硬件的版本管理。这给后续的升级和维护带来了极大的不方便。

一、 硬件版本管理的优点

产品进行硬件版本管理,有以下的优点:

1. 可以方便进行质量跟踪,历史问题追溯,从而更新换代,优化升级。

2. 软件可以针对性的升级,可以通过硬件的版本区分软件功能或者是不同的客户;

二、 四种硬件版本管理的实现原理

1. 通过上下拉电阻配置实现

如下图1 所示,CPU通过读取外部的配置电阻上拉还是下拉,决定当前的硬件版本(PCB和bom的版本可以分别配置),例如四个下拉电阻全部焊接,四个上拉电阻全部不焊接,CPU四个IO引脚读取到的值为0000. 当前的版本就是V0版本。

52c09e21dc28e306ce0707a72d4f4bd1.png

图1 :上下拉电阻模式

2. 通过I2C扩展GPIO实现

如下图2 所示,有时候设计者选用的CPU的GPIO引脚不够用,又有io扩展芯片的情况下下,可以使用以下的方法,通过I2C扩展GPIO引脚的方式,读取硬件的版本信息,实现的原理和方法1一样。

2f25e914a2f5f1bae626b39e4ebfe0dd.png

图2 :I2C扩展GPIO+上下拉电阻模式

3. 通过AD采样电压实现

如下图3 所示,有时候设计者选用的CPU的GPIO引脚不够用,但是AD引脚有多余的情形,这是就没有必要通过方法2的实现方式(扩展芯片约增加数元的成本)。通过配置R1和R2电阻的不同阻值,可以设置AD引脚不同的电压。例如可以设置0.5V为一个台阶,3.3V约可以设置6个不同的版本,举例:R1=1K,R2=2K。Vad=2.2V,对应的硬件版本为V04.

535e16c778128ac23a2ce3fe65b2e3a0.png

图3 :AD采样实现硬件版本管理

4. 通过烧写Flash实现

在Flash中,专门开辟一小段存储空间,在产品生产阶段,通过生产的工装设备将硬件的版本信息保存在该存储空间,这段存储空间设置成只读,不允许写,避免误操作导致硬件版本信息丢失。

a92a4b640be21106c8bfe4cc3eee9a70.png

图4 :Flash记录硬件版本管理

三、 四种硬件版本管理方法的优劣势

以下分别介绍四种硬件版本管理方法的优劣势,并将其进行对比。以供读者方便选择。

(1) GPIO上下拉方式

优点:

成本低廉,只需要数个电阻,成本不过几分钱。软件只需读取IO电平,实现简单。

缺点:

上下拉的 方式占用过多的GPIO引脚,如果PCB和bom同时都需要版本管理,数量将会更多,例如一个V00~V07的PCB和bom的版本管理,至少需要6个GPIO,严重浪费了的cpu的IO引脚。

(2) I2C扩展GPIO方式

优点:

解决了CPU的GPIO引脚数量不够的问题,软件实现也比较简单。

缺点:

I2C扩展芯片的成本约0.5~2元人民币,增加了整机的成本。

(3) AD电压采样的方式

优点:

最低只需要一个AD采样引脚就可以实现硬件版本的管理。如果CPU自带并且有多余的AD引脚,只需要2个电阻,成本非常低。

缺点:

AD引脚一般也是CPU的紧缺资源,部分CPU可能没有AD采样引脚,该方法通用性不高。

(4) Flash 保存的方法

优点:

Flash保存硬件版本的成本最低,硬件几乎没有成本,也不占用CPU的资源,版本信息 占用的存储空间几乎可以忽略不计。

缺点:

Flash保存可靠性是最大的问题,例如Flash损坏,软件升级擦写Flash,电磁干扰导致等原因,导致Flash中的数据丢失,则硬件版本的信息也会丢失

四、总结

通过介绍上述的四种硬件版本信息的管理方法,设计者应该从可靠性和成本方面考虑。第一优选,如果GPIO引脚够用,优先推荐通过GPIO上下拉配置的方法。第二优选,如果CPU有多余的AD引脚,则可以采用AD采用的方法。第三优选,可以通过I2C扩展GPIO的方式。最后再考虑通过Flash保存硬件版本信息的的方式。

afa49e205133e718f3abdde828d8fda1.png
ac7160a1bf947caa1a50624cb44164db.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值