一、 什么是核心板
核心板是将主控MCU及必要外围器件集成到一个名片大小的电路板上,将MCU的通信接口,GPIO,存储器接口等引到板外给用户使用。同时,完成MCU的片上外设的驱动或嵌入式操作系统的移植,并提供相关接口给用户调用。
嵌入式核心板又叫System-On-Module(SOM)板卡,是一种将CPU、内存(DDR)、存储(eMMC或FLASH)、电源管理(PMIC,负责CPU的上电时序及CPU需求各种不同电压的输出)等集成芯片封装到一起的高集成度板卡,一般采用板对板连接器、邮票孔焊接、金手指、COM Express等形式与底板连接,并且核心板通常将CPU的所有功能引脚或大部分功能引脚引出,用户在设计产品时只需进行功能接口的外围电路设计,从而降低硬件开发难度,节省开发时间。
在软件方面,嵌入式核心板(以下简称核心板)一般已完成Linux(Build Root)、Ubuntu、Android、WinCE等嵌入式操作系统的移植适配,在完善各个接口驱动的同时还会适配Uboot、文件系统以及QT图形界面的移植开发,这样最终呈现给用户的是一个带图形界面的完整操作系统,最大程度方便了用户进行二次开发。
核心板作为一种独特的嵌入式板卡形式,与一体板相比优势明显,不但可以降低产品设计难度,加快产品上市时间,同时还便于产品迭代升级,减少维护工作量,因此在嵌入式系统所涉及的产品领域得到广泛应用。对于一些经验丰富的软、硬件工程师来说,可能还不了解采用核心板的开发方式或者不信赖核心板的产品模式,所以每当遇到有新项目开发便重新开始设计一体板,软件上还要重新移植Uboot、操作系统、QT等。如果时间充足、经验丰富这种方法是可行的,但有很多公司在硬件与底层驱动上基础相对薄弱,一旦设计过程出现失误,很可能导致整个项目搁置,影响产品上市。在人力不足的情况下,这样的工作无疑是在“重复造轮子”,无形中消耗了大量的人力物力。
万象奥科嵌入式的核心板经过多年的技术发展与品质沉淀,在集成度、稳定性、专业性等方面已经非常成熟。接下来,让我们从产品开发角度来进一步了解。
二、为什么要做核心板?
• 帮用户把复杂的电路都做掉,减小客户的设计难度。
• 帮用户把难贴的器件先贴上,减小客户的加工难度。
• 给客户一个相对好加工的封装,加快客户的设计速度。
• 帮客户把硬件驱动都做好,加快客户的软件开发速度。
• 帮客户把多种协议栈调试好,进一步加快客户产品上市。
三、嵌入式ARM终端产品开发难点
嵌入式处理器应用已非常广泛,但在进行终端产品开发时,硬件设计、软件开发、和生产维护上却有一些无法规避的痛点。
01、硬件设计痛点
▲ 设计难度大:随着嵌入式技术的发展,嵌入式处理器的性能越来越高,与之相对的是开发难度也越来越大,已不是单片机工程师软硬通吃的时代了。从SDRAM到LPDDR4,内存速率越来越快,PCB层数也从早期4层就可以满足到现在动辄8-12层,对高速走线与硬件的仿真都有了很大的要求,开发投入隐性成本高。
▲设计周期长:从熟悉CPU的启动、内存选配到电源架构设计,动辄几百根连线,一般需要半年以上的时间完成硬件设计与测试;后互联网时代对产品上市效率的要求很高,可谓“时间就是金钱”,市场不会因为设计难度停下来等你。
▲ 稳定性测试复杂:高低温测试、压力测试、信号完整性测试、电源带载测试、长期运行稳定性测试、频繁断电、上电开关机测试等都需要有完备的测试设备与经验方能完成。任何一个环节测试不通过都有可能让设计重新来过,增加了工程师的压力。
02、软件设计的痛点
▲ 系统移植周期长:适配一个符合产品需求的操作系统,需要很长的开发周期。文件系统裁剪、文档解读、适配硬件、BUG调试,种种工作无疑加大了开发难度,也延长了开发周期;
▲ 重复开发:企业在有不同的产品研发项目时,会根据产品的特性选择不同品牌或型号的嵌入式处理器,这些处理器的性能和价格不同。如果使用同一款处理器开发不同产品可能会发生性能过剩或者性能不足的情况,但是如果每个项目都选择不同型号的处理器开发又会出现重复开发和精力不足的问题。重要的是,终端产品企业的软件研发精力更适合投入到应用程序的开发,与硬件相关的kernel层需要随着处理器的变化而更改;
03、生产与维护的痛点
▲ 生产良率的控制难:嵌入式处理器开发的产品PCB层数多,且多数是高速信号,对PCB材质、物料品质、焊接质量要求很高,如果达不到生产的一致性会直接导致良品率的下降甚至会造成板卡在现场不稳定的情况。
▲ 产品维护周期长:高速信号对PCB阻抗要求高,材质的细微变化都很可能会导致内存参数的调整。加之一些行业的产品生命周期很长,动辄十年以上,过程中任何一个芯片的停产或更新都需要软硬件驱动的修改,虽然难度不大但始终都要有人维护,分散精力。