本文介绍TI的嵌入式处理器平台,包括MSP430,C2000系列微控制器,Sitara系列ARM,ARM+DSP的Integra,Davinci DM系列,C6000系列DSP;然后给出这些处理器平台上的开发常用的文档和应用手册,参考书链接。
TI 嵌入式处理器系列
- MSP430超低功耗16位处理器,最高频率25MHz,片内集成Flash,ADC,USB控制器等;
- 32-bit实时处理器C2000系列,定点或者浮点控制器,最高频率300MHz,片内集成Flash,CAN,SPI,I2C总线;
- 32-bit ARM处理器,频率最高100MHz,片内集成Flash,ADC,USB控制器等;
- ARM9和Coretx-A8系列ARM芯片,高性能的GPP处理器,有MMU控制器,可以运行Linux、WinCE等操作系统;
- ARM+DSP的高性能处理器,C64x+的核,最高达4800MMACs,包含MMU和Cache控制器,还包含VPSS视频处理子系统,EMAC,MMC控制器等,可以运行Linux、WinCE等操作系统,还能进行视频,图像和多媒体处理;
- 高性能DSP,C647x,C64x+,C674x核,C55x核,可以支持多核,包含Cache控制器,SRIO,EMAC等;
图1. TI 嵌入式处理器系列
TI嵌入式DSP平台
- C2000控制器:低成本的控制系统
- C5000系列(C54x,C55x,OMAP),低功耗的处理器,用于手机和网络音频播放器等;
- C6000系列高性能DSP处理器,多声道、多功能的应用程序,视频图像处理;
图2. TI-DSP系列
C6000系列DSP的演进路线图roadmap
- C62x定点和C67x浮点:EDMA和L1/L2 cache控制器;
- C64x定点DSP,EDMA2和SIMD,两个寄存器组;
- C64x+定点DSP,EDMA3和SIMD,32x32乘法,增强指令集,多核以及ARM+DSP的非对称核;
- C674x定点/浮点处理器,低功耗,ARM+DSP,EDMA3;
- C66x 定点和浮点MACs,SIMD的浮点,多核;
图3. C6000系列DSP的演进路线图roadmap
定点和浮点处理
DSP核和属性
定点核
浮点核
DSP
DSP+DSP
(Multi-core)
ARM+DSP
(Integra, DaVinci)
C62x
C67x
C620x, C670x
C621x
C67x
C6211, C671x
C64x
C641x
DM642
C67x+
C672x
C64x+
DM643x
C645x
C647x
DM64xx, OMAP35x, DM37x
C674x
C6748
OMAP-L138*
C6A8168
C66x
Future
C6670
C667x
- 需要注意的是,所有的Integra/DaVinci系列处理器,只有OMAP-L13x系列DSP端能完全访问外设,其他的只能访问部分外设。
ARM+DSP的处理系统
图4. ARM+DSP系统的功能划分
- ARM端完成外设驱动,Linux/Android OS运行,用户控制,网络传输应用程序;
- DSP端完成音视频编解码等信号处理算法
TI可定制的系列处理器
图5. 可定制的处理器系统
- ARM Core:运行复杂的应用程序,如Linux、WinCE和Android系统应用;
- C6x DSP Core:运行供ARM端调用的算法,能进行实时的多媒体信号处理,还能包括视频加速器等;
- Graphics Accelerator:高质量图像处理,用户界面设计;
- Peripherals:各种外设提供无线,有线应用;
- Prog. Real-time Unit (PRU):扩展外设,定制系统;
- Display Subsystem:设计诸如iPhone的显示界面,如图像的重叠overlay和resize;
参考手册和开发指南www.ti.com/training
- 构建基于Linux的系统:DaVinci / OMAP / Sitara System Integration Workshop using Linux
- 构建基于DSP/BIOS的系统:System Integration Workshop using DSP/BIOS
- 开发基于C6x DSP的算法(如C64x+和C674x):C6000 Optimization Workshop
-
Online开发指南
- OMAP / Sitara / DaVinci Wiki:http://processors.wiki.ti.com
- TI Open-Source Projects:https://gforge.ti.com/gf/
- TI E2E Community (videos, forums, blogs):http://e2e.ti.com
- TI Registered Software:http://www.ti.com/myregisteredsoftware
- 开发文档
C64x/C64x+
C674
C66x
CPU Instruction Set Ref Guide
SPRU732
SPRUFE8
SPRUGH7
Megamodule/Corepac Ref Guide
SPRU871
SPRUFK5
SPRUGW0
Peripherals Overview Ref Guide
SPRUE52
SPRUFK9
N/A
Cache User's Guide
SPRU862
SPRUG82
SPRUGY8
Programmers Guide
SPRU198
SPRA198
SPRAB27
-
DSP/BIOS Real-Time Operating System
- SPRU423 - DSP/BIOS (v5) User's Guide
- SPRU403 - DSP/BIOS (v5) C6000 API Guide
- SPRUEX3 - SYS/BIOS (v6) User's Guide
-
Code Generation Tools
- SPRU186 - Assembly Language Tools User's Guide
- SPRU187 - Optimizing C Compiler User's Guide
-
参考书
- "A Simple Approach to Digital Signal Processing",by Craig Marven and Gillian Ewers; ISBN 0-4711-5243-9
- "DSP Primer (Primer Series)" by C. Britton Rorabaugh; ISBN 0-0705-4004-7
- "Understanding Digital Signal Processing" ,by Richard G. Lyons;Prentice Hall; 2nd edition (March 15, 2004) ISBN 0-1310-8989-7
- "DSP First : A Multimedia Approach",James H. McClellan, Ronald W. Schafer, and Mark A. Yoder; ISBN 0-1324-3171-8
- "Digital Signal Processing Implementation using the TMS320C6000TM DSP Platform" by Naim Dahnoun; ISBN 0201-61916-4
- "C6x-Based Digital Signal Processing",by Nasser Kehtarnavaz and Burc Simsek;ISBN 0-13-088310-7
- "Real-Time Digital Signal Processing: Based on the TMS320C6000" by Nasser Kehtarnavaz; Newnes; Book & CD-Rom (July 14, 2004) ISBN 0-7506-7830-5
- "Digital Signal Processing and Applications with the C6713 and C6416 DSK (Topics in Digital Signal Processing)" Wiley-Interscience; Book & CD-Rom (December 3, 2004 by Rulph Chassaing; ISBN 0-4716-9007-4
-
"Real-Time Digital Signal Processing from Matlab to C with the TMS320C6x DSK" by Thad B. Welch; Cameron Wright; Michael Morrow; Book & CD-Rom (2006) ISBN 0-8493-7382-4
本文介绍TI的嵌入式处理器平台,包括MSP430,C2000系列微控制器,Sitara系列ARM,ARM+DSP的Integra,Davinci DM系列,C6000系列DSP;然后给出这些处理器平台上的开发常用的文档和应用手册,参考书链接。