我需要在一个系统上使用微控制器,该系统必须长时间(几十年)保持工作而无需进行重大更改。为确保始终有替换部件,我需要一个微控制器,该微控制器将由某些制造商以固件二进制和封装引脚兼容的方式长期生产或生产。我可以做些什么来确保我选择的微控制器符合这些标准?
该应用程序不需要太多的计算能力。其目的是控制电机和其他工业系统。一个 8 位的微控制器能够以 0.5-1 MHz 的频率改变大约 8-16 个 IO 引脚的状态是可以的。ADC 可能很有价值,但可以用一个简单的外部比较器代替。
我需要在一个系统上使用微控制器,该系统必须长时间(几十年)保持工作而无需进行重大更改。为确保始终有替换部件,我需要一个微控制器,该微控制器将由某些制造商以固件二进制和封装引脚兼容的方式长期生产或生产。我可以做些什么来确保我选择的微控制器符合这些标准?
该应用程序不需要太多的计算能力。其目的是控制电机和其他工业系统。一个 8 位的微控制器能够以 0.5-1 MHz 的频率改变大约 8-16 个 IO 引脚的状态是可以的。ADC 可能很有价值,但可以用一个简单的外部比较器代替。
FPGA 制造商说,如果您使用“软核”,即用 VHDL 编写的微控制器,那么 VHDL 设计可以在任何未来的可编程 FPGA 硬件上实现,从而使您摆脱任何特定硬件的可能性的生产。
要相信这个论点,您需要假设可编程硬件将在您的时间跨度内继续可用(这是可能的),并且将继续以适合您产品的芯片尺寸、成本和电压提供(我觉得更难)相信)。要使用这种方法,您必须接受您可能需要进行新的硬件设计才能接受新的包,这有点违背了您没有重大更改的目标。
我的方法和建议是,将您的控制处理与小板上的其余电路隔离开来,并定义您自己的接口,引脚越少越好。也许 SPI 提供了一个合适的接口,或者一个带有数据读/写和地址选通的 nybble 总线。然后,如果您选择的处理器在产品生命周期内过时,您只需重新设计和测试一块小板,而不是一块带有重要模拟产品功能的大板。
用 C 语言对控制处理器进行编程。将代码严格拆分为通用算法和硬件接口模块。然后,如果必须更改特定的硬件位,您已经将重写隔离到少数模块,并且不会爬遍您的代码。
选择合适的电压,例如,我更喜欢 3.3v 到 5v。
当您选择小型控制板时,您可能会比选择与可用的 Arduino 或 PIC 开发板相匹配的外形尺寸更糟糕。然后,您的开发和原型设计得到支持,您甚至可以在设计成本更低的替代品之前,使用购买的模块开始小批量生产。
不要忘记考虑编程工具链的可靠性。如果有专用的编程硬件,它也需要持续数十年,并且你必须能够与之交谈。想象一下,必须挖出一台 20-30 年的 DOS PC 并安装 ISA 卡——不要忘记手动选择 IRQ 和 DMA 线!或者,您可能必须购买提供向后兼容性的昂贵的利基产品。如果您可能需要修改软件,请记住编译器工具和库也会发生变化,通常比硬件快得多。
还要考虑 MCU 需要运行多长时间。如果您希望它有相当大的机会运行数十年,您需要考虑闪存保留和长期故障率等因素。如果您打算每 15 年更换一次芯片,那问题就不大了。制造商应该有这些信息。您可能会考虑为航空航天或汽车等安全关键型应用设计的 MCU,而不是便宜货。它们通常带有冗余硬件和更好的质量保证。
一种选择是存储您自己的备件。如果你买得足够多,你也许可以得到一个带有定制掩模 ROM 的 MCU,并完全避免编程/数据保留问题。
确保一切都有很好的记录。MCU本身、软件、内存分配、CPU指令集、所有电气接口、规格等。
认真考虑user44635的回答。如果您的替换零件供应在 30 年后枯竭,而任何合理的替换零件都具有 1.8V IO,会发生什么情况?或者你能找到的最古老的芯片都有 32 位 ARM CPU(它们开始吞噬 8 位市场)?如果最坏的情况发生,单独的电路板可以让您选择添加电压调节器、电平转换器和其他接口硬件。
虽然一些制造商的记录比其他制造商要好,但产品寿命长与关键组件的过时问题是在运营层面而不是电路设计层面解决的。
持续预测您需要的微控制器数量。监控供应链。当制造商宣布 NRND 状态时,您 - 或您的操作 - 应该刺耳。当制造商宣布即将淘汰时,他们会给您最后订购的权利。您采购您预测的数量,并存储在防火柜中。
这在医疗设备、航空电子设备、国防等经过认证的行业中并不少见。我见过人们这样做。例如,OEM 供应商 X 生产用于医疗设备领域的 WiFi 模块。该模块使用普通的民用香草 SoC 进行 WiFi。SoC 由 Broadcom 为消费者市场生产。预计 SoC 将仅生产一两年。OEM 供应商 X 意识到了这一动态。他们采购了价值 10 年的这些 SoC。OEM 供应商 X 对保证产品寿命长的零件收取溢价。OEM 的客户可以避免对其产品进行昂贵的重新认证。
通常,需要长期支持的设备的制造数量相对较少。
另一种方法是使用您能找到的最通用的部件,对于 MCU,它是 8051 及其变体。它有很多来源,甚至是开源软核克隆,开发工具可用于从 DOS 到 Windows 10 的任何平台。虽然 Microchip 的承诺值得称赞,但无法预测企业对并购的兴趣而其对产品线和PIC的影响只有一个来源。