首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
模拟电路
» 采用非对称双核 MCU 提高系统性能 – 基于 C2000 Concerto 系列
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
采用非对称双核 MCU 提高系统性能 – 基于 C2000 Concerto 系列
发短消息
加为好友
520503
当前离线
UID
872339
帖子
13270
精华
0
积分
6635
阅读权限
90
在线时间
361 小时
注册时间
2012-3-2
最后登录
2016-3-10
论坛元老
UID
872339
1
#
打印
字体大小:
t
T
520503
发表于 2013-12-29 22:44
|
只看该作者
采用非对称双核 MCU 提高系统性能 – 基于 C2000 Concerto 系列
太阳能
,
处理器
,
嵌入式
,
产品
,
工业
1、背景介绍
随着各个行业朝着智能化方向的发展,嵌入式产品对能耗和效率的要求越来越苛刻。特别是在智能电网、工业和医疗等领域,一个产品的核心 MCU 处理器面临多重挑战。比如,一个自动化的马达系统或者分布式工业系统,一方面需要更多的数字信号处理能力来更精确地控制马达,另一方面也需要更多和更高级的网络接口(CAN,Ethernet 或者 Wireless 等)来实现实时的分布式监控或控制功能。再比如图 1,一个太阳能逆变系统,一方面需要 DSP 引擎来实现 DC/AC 或者 DC/DC 的算法,另一方面也需要将多个逆变器通过 Wireless 或者以太网 Ethernet 组成网络,从而实现智能诊断和监控。
面对这些需求,有两种传统的方案可以解决。一种方案是采用两颗单独的 MCU/DSP,其中一颗 MCU或者 DSP 用于实现数字信号处理或者控制算法,另外一颗 MCU 实现网络协议栈或者图形显示界面等。这类方案的存在诸多缺点,首先两颗 MCU 增加了 PCB 的面积,而且双 MCU 之间的通讯的可靠性和数据吞吐率受到限制,另外,功耗也将显著增加,程序开发者甚至需要维护多个软硬件开发环境。另外一种方案是采用更高主频和更多片内资源的单核 MCU/DSP,分时地完成数据处理和辅助通信或显示功能,这种方案显著增加了系统成本和功耗,最致命的是,当客户的产品需要增加新的功能的时候,工程师需要重新计算 MCU 内核的资源和不同任务所需要的运行时间,需要更多的测试时间,因此不利于扩展和产品维护。
面对种种不足,异构双核架构应运而生,可以很好解决上述问题。事实上,非对称双核架构 MCU 可以将不同的系统任务分配于不同的 MCU 内核,分工精细,并且可以最佳地平衡性能、功耗和成本。两个MCU 内核间的通信可以通过不同的方式来实现,比如分享内存区和消息区,非常简单和易于实现。在下面的章节,本文将以 TI 最新的 Concerto 系列产品 TMS320F28M35H52C 为例,详细阐述非对称异构双核 MCU 的优势,及其为系统带来的性能提升。
2、C2000 Concerto 双核 MCU 的特点
C2000 Concerto 系列 MCU 是 TI 推出的创新性的异构双核产品。Concerto 混合架构通过将业界最好的实时控制功能和通讯功能集成在一个芯片内,提供高性能、高效率和可靠性,从而实现实时控制环路和低延时的快速通讯响应[1]。以下从内核、存储器架构、通讯外设等方面阐述其特点。Concerto 系列 TMS320F28M35H52C 功能框图如下图 2 所示。
首先是高性能的内核。Concerto 系列 MCU 包含 Cortex-M3 和 C28x 两个内核。Cortex-M3 内核是Concerto 的主系统 Master 子系统内核,主频最高可运行于 125 MHz。Cortex-M3 内核是 32 位的ARM 核,超高的性价比,已经被业界广泛使用,其性能和稳定性也已被用户所广泛接受,非常适用于通讯和事件控制。C28x 是新一代的 32 位 DSP 内核,是 TI 大多数现有的 C2000 产品的内核,最高可运行于 150 MHz,Concerto 中的 C28x 带浮点运算单元(Floating-Point Unit),VCU 协处理器等,性能超强,非常适用于大吞吐量的数据处理。C28x 作为 Control 子系统,宏观上受控于 Cortex-M3 Master 子系统。
其次是优化的存储器架构。如图 2 所示,TMS320F28M35H52C 的 C28x 可支配 512KB 带 ECC 校验的 Flash 存储器,64KB ROM,36KB 带 ECC 校验的 RAM;Cortex-M3 可支配 512KB 带 ECC 校验的Flash 存储器,64KB ROM,32KB 带 ECC 校验的 RAM [3]。在两个内核之间,是共享的外设和存储区。总共 64K 字节的共享 RAM,4K 的消息 RAM。
再次是外设。如图 2 所示,TMS320F28M35H52C 的 C28x 内核可支配 DMA、高速 ADC(3MSPS)、多路高精度的 PWM(24 路 PWM和 16 路高精度 HRPWM)、eCAP、eQEP 等为闭环控制所优化的控制外设;Cortex-M3 内核可支配多个串行接口、以太网、CAN 等工业通讯外设。同时,两个内核还可共享 ADC 等外设,增强整个系统的灵活性。
最后是软件架构。如图 3 所示,controlSUITE 是一个集成所有 C2000 MCU 的开发资源和软件包和开发平台,它为 TMS320F28M35H52C 的开发者提供了外设例程、DSP 库、文档、开发板资料。ControlSUITE 还提供免费的全功能实时操作系统 TI-RTOS 平台,如图 4 所示,TI-RTOS 是基于SYS/BIOS 实时内核,集成了稳定的中间件,例如 TCP/IP 协议栈、USB 协议栈、FAT 文件系统、IPC多核通讯组件等。
3、IPC 内核间通信
Cortex-M3 和 C28x 内核之间的通信主要完成两大功能,一是数据通信,二是传递状态和控制信息。IPC(内核间通讯)的数据通信需要较大的 RAM 来支持,而传递状态和控制等信息只需要一系列状态标志位即可。此外,Cortex-M3 侧的 UART4 与 C28x 侧的 SCIA;以及 Cortex-M3 侧的 SSI3 与 C28x侧的 SPIA 在 Concerto 内部实现互联,不需要在芯片外部硬件连接,而是否使能这类功能则有 CortexM3 系统配置。
3.1 Message RAM 内存区
TMS320F28M35H52C 使用 Message RAM 实现 IPC 的数据通信。如图 5 所示,2K 字节的 MTOC Message RAM 用于从 Master (Cortex-M3)子系统向 Control(C28x)子系统传递消息;2K 字节的CTOM Message RAM 用于从 Control 子系统向 Master 子系统传递消息。由于两个子系统都配有 DMA外设,因此,DMA 也可以读写 Message RAM,从而提高系统效率。Message RAM 区通过 RAM 内存的读写权限保证了 Message 的互斥访问,例如,C28x CPU 与 DMA 可以读写访问 CTOM Message RAM 区,而 Cortex-M3 CPU 和 uDMA 只能读访问 CTOM Message RAM。同样,两个内核对于MTOC Message RAM 区的读写访问权限则正好相反。
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议