使用基于业界标准、带有片上记忆体和各种产业标准介面的ARM处理器,再加上面向特定应用逻辑和非标准介面的金属可编程设计模组((MP模组),构成的可定制微控制器是切实可行的SoC开发方法,能够解决上述问题,这个开发方法的特点是:
◆采用经过验证的软/硬体模组、较短的金属布局布线的设计阶段,以及并行的软/硬体开发,再加上业界标准ARM架构所提供的广泛支援,可以缩短设计阶段。
◆采用预先已经准备好的基础晶圆,仅针对定制部分添加金属层,可以缩短器件生产制造的时间。
◆大大减少整合特定应用逻辑方面的设计费用,并减少制备制程中所需的光罩数目,可以降低开发成本。
◆模拟板包括了处理器、记忆体、周边设备和标准介面,并用FPGA来代替MP模组,实现了软/硬体全速并行测试,提高了器件生产制造和软体开发的首次成功率。
可定制微控制器架构
如图1所示,可定制微控制器的基础为产业标准的ARM7或ARM9处理器内核,以及连接片上SRAM和ROM、外部汇流排介面和系统周边设备的多层AHB汇流排矩阵,并可桥接针对系统控制器和低速周边设备的高能效APB。该架构的主要特点是分布式DMA,这种DMA加上由AHB汇流排矩阵提供的并行数据通道,能为器件提供极高的内部数据频宽。由周边设备到记忆体的数据传输仅需极少的处理器干预,因此器件能支援多个高速内部介面,而不会降低处理器的性能。器件中的MP模组具有多个DMA埠,因此由它实现的专用IP也能受益于这种高速内部频宽。
《图一 建基于ARM9的可定制微控制器架构》
|
该架构具有齐备的标准周边设备和介面,能满足大多数应用对使用者介面、联网/连接和储存的要求。此外,在MP模组中还可以实现各种周边设备实例或其它周边设备/介面。
如此一来,该架构实现了复杂的系统控制器,整合了所有的系统和功率管理功能,可以控制系统的启动和关闭。该控制器具有多个时钟源和周边设备开关控制线,使每个功能构件都能以支援应用的最小时钟频率运行,也可在不需要时进入闲置模式。因此能尽量降低器件的功耗。
金属可编程模组
如图2所示,金属可编程设计模组 (MP模组) 的闸密度与实现器件固定功能部分的标准单元密度接近。 MP模组需要足够的容量来实现第二个ARM处理器内核、一个数位讯号处理器 (DSP)、额外的介面以及复杂逻辑模组,如GPS相关器 (correlator)。它还需要一些内部功能和专门的外部连接,以提高其实现特定应用逻辑的效率。 MP模组还需要多个分布式單埠及双埠RAM,并与需要他们的逻辑单元紧密耦合。
《图二 金属可编程设计模组》
|
可定制微控制器设计/制备流程
如图3所示,可定制微控制器设计流程的目标是要在最短时间内,以合理的成本和极高的首次矽和软体成功率,开发针对特定应用的系统级晶片(SoC),并包含软体和硬体。
《图三 可定制微控制器设计流程》
|
软/硬体并行开发:
设计流程调整为适合软/硬体并行开发,克服了系统级晶片开发的主要障碍之一。
迅速地把针对特定应用的硬体整合在微控制器平台上:
专为特定应用而设的硬体以RTL语言设计;这些RTL模组可以整合到已经包含了AHB介面、DMA通道、I/O通道等单元的MP模组代码范本中。
迅速整合针对特定应用的软体/作业系统与介面/周边设备驱动程式:
平台上所有介面/周边设备均有驱动程式。这些驱动程式也可作为MP模组中相同介面/周边设备的驱动程式范本。目前已经有很多业界领先的作业系统被移植到微控制器架构上。将这些软体模组与应用代码模组和使用者介面整合起来的工作,可与硬体开发一同进行。
在物理设计/掩膜光刻之前进行软/硬体即时模拟:
仿真板利用一个标准晶片实现了MCU平台,利用FPGA作为MP模组。这样就可以用接近真实的运行速度来仿真特定应用的硬体和底层软体,而且无需任何成本就可修正错误。
迅速完成布线布局,只需针对金属层:
采用成熟的布局方案快速完成MP模组的金属层布线布局。
高效、低成本的掩膜光刻:
只需要对器件金属层进行掩模。
快速的制造过程,只需针对金属层:
各特定应用器件的光刻制备以预制的微控制器平台为起点,只需添加金属层。
以FPGA为基础的仿真板
设计流程的一个关键步骤是在仿真板 (见图4) 对硬体以及至少底层软体进行模拟。该仿真板包括完整的记忆体、标准介面和网路连接,以及可按应用要求配置的其他附加连接。具体包括:
◆器件固定功能部分用带外接FPGA介面的单晶片来实现。
◆使用高密度的FPGA模拟MP模组,包括内嵌记忆体和外部I/O。
◆采用FPGA配置记忆体为MP模组保存编译好的HDL代码。
◆外部汇流排界面 (EBI) 和FPGA的外接I/O连接到扩展板上不同类型的记忆体,如SDRAM、行动DDRAM、NOR快闪记忆体、NAND快闪记忆体等。这些记忆体将载入应用的软体和参考数据集。
◆所有标准介面(CAN、USB、Ethernet、I2S、AC97、ADC、MCI等) 都通过收发器/实体层/编解码协议层与外部连接,因此可以对器件的外部介面和联网/通信链路进行全方位的测试和调试。
◆图像化使用者介面 (GUI) 的所有部件都连接到相应的板上器件或介面,比如LCD、键盘、触控式萤幕介面等。这样就可在板上完成GUI基本介面的测试。
◆仿真板提供外部并行I/O (PIO) 和FPGA I/O,用于连接特定应用的外接器件,以及实现非标介面。剩余的FPGA I/O也可用于验证。
◆仿真板配有JTAG模拟器 (ICE) 埠;通过该埠可用带有JTAG-to-USB的介面和标准开发工具对ARM内核及其周边设备进行验证。
◆仿真板还配有FPGA JTAG埠;通过该埠可用FPGA厂家提供的工具对FPGA的内部讯号进行跟踪和分析。
《图四 可定制微控制器的仿真板架构》
|
这种MCU/FPGA组合可以接近最终器件的工作频率运行。这样就能完成器件的即时性测试,包括平台中的MCU和各种标准介面、MP模组中实现的各种功能,以及到目前为止已开发的所有软体。这种测试至少涵盖了如下测试物件:设备驱动程式、作业系统埠,以及用于控制MP模组各种功能的应用代码模组。而更改器件的软/硬体单元无需任何额外成本。
结论
可定制微控制器是特定应用系统级晶片的高效开发平台。其设计流程能够解决系统级晶片设计的大多数问题,而且开发成本较低、风险较小,并能提高硬体制备和软体发展的首次成功率。