零点起步:TMS320C6000系列DSP原理与应用系统设计
作 者: 韦金辰 等编著
出版时间: 2012
内容简介
《零点起步:TMS320C6000系列DSP原理与应用系统设计》面向应用TMS320C6000系列数字信号处理器(DSP)的初学者,以TMS320DM642芯片为主线,系统讲解了DSP的基础知识、硬件结构、片内资源、外设接口、软件开发环境及程序优化方法,并详细介绍了TMS320DM642芯片在视频处理、语音处理及网络通信3个典型应用环境的开发实例。本书注重理论与实践相结合,强调对重点知识的理解和实际应用系统的设计。《零点起步:TMS320C6000系列DSP原理与应用系统设计》可作为高等学校电子信息工程、通信工程及自动化控制等专业的高年级本科生和研究生教材,也适合作为DSP开发和应用行业的科技人员的参考资料。
目录
前言
第1章 DSP概述
1.1DSP的发展历程与特点
1.1.1DSP的发展历程
1.1.2DSP的特点
1.2DSP 的分类及主要厂商系列
1.2.1DSP的分类
1.2.2DSP的主要厂商系列
1.3DSP 的应用领域和芯片选型
1.3.1DSP的应用领域
1.3.2DSP应用系统的芯片选择
1.4DSP 的发展趋势
1.5思考与练习
第2章 硬件结构、指令和中断系统
2.1硬件结构
2.1.1CPU内核构架
2.1.2CPU数据通路
2.1.3控制寄存器组
2.2流水线
2.2.1流水线概述
2.2.2流水线操作
2.2.3指令对流水线性能的影响
2.2.4存储器对流水线性能的影响
2.3公共指令集
2.3.1寻址方式
2.3.2指令的分类
2.3.3指令编码
2.3.4条件操作
2.3.5并行操作
2.3.6资源限制
2.4DSP的中断系统
2.4.1中断的基础知识
2.4.2中断控制寄存器
2.4.3中断响应过程
2.4.4中断嵌套
2.4.5中断向量程序
2.5思考与练习
第3章 TMS320DM642的存储器扩展
3.1TMS320DM642的EMIF
3.1.1EMIF概述
3.1.2EMIF信号
3.1.3EMIF寄存器
3.1.4存储器宽度和字节定位
3.1.5EMIF与SDRAM接口
3.1.6EMIF与SBSRAM接口
3.1.7可编程序同步接口
3.1.8SDRAM扩展应用实例
3.1.9Flash扩展应用实例
3.2增强的直接存储器访问(EDMA)
3.2.1直接存储器访问(DMA)概述
3.2.2增强的直接存储器访问(EDMA)概述
3.2.3EDMA的启动
3.2.4传输计数和地址的更新
3.2.5EDMA的链接
3.2.6EDMA的中断
3.2.7EDMA的优先级
3.2.8EDMA的性能
3.2.9快速DMA(QDMA)
3.2.10EDMA传输请求递交
3.2.11EDMA控制器
3.2.12EDMA的应用实例
3.3思考与练习
第4章 主机接口与多通道缓冲串口
4.1主机接口(HPI)
4.1.1HPI概述
4.1.2HPI的结构
4.1.3HPI信号引脚与功能
4.1.4HPI的读/写时序
4.1.5HPI的操作
4.1.6HPI寄存器
4.1.7HPI的中断申请
4.1.8HPI应用实例
4.2多通道缓冲串口(McBSP)
4.2.1McBSP概述
4.2.2McBSP结构与对外接口
4.2.3McBSP寄存器
4.2.4McBSP的操作
4.2.5μ律和A律数据压缩和解压
4.2.6McBSP的SPI协议
4.2.7McBSP作为通用I/O口
4.2.8McBSP的应用
4.3思考与练习
第5章 通用目的输入/输出接口与定时器
5.1通用目的输入/输出接口(GPIO)
5.1.1GPIO接口概述
5.1.2GPIO功能
5.1.3中断和事件产生
5.1.4GPIO寄存器
5.1.5GPIO应用例程
5.232位定时器
5.2.1定时器结构
5.2.2定时器寄存器
5.2.3定时器的工作模式控制
5.2.4定时器例程
5.3思考与练习
第6章 TMS320DM642的多媒体片内外围设备
6.1以太网接口
6.1.1以太网媒体存取控制器(EMAC)
6.1.2EMAC控制寄存器
6.1.3EMAC统计寄存器
6.1.4网络通信应用举例
6.2视频接口(VP0~VP2)
6.2.1视频捕获模式
6.2.2视频显示模式
6.2.3视频端口寄存器
6.2.4视频端口的控制寄存器
6.2.5视频捕获寄存器
6.2.6视频显示模式
6.2.7视频显示寄存器
6.2.8视频引脚控制寄存器
6.2.9视频应用举例
6.3多声道音频串行端口(McASP)
6.3.1McASP框图
6.3.2McASP控制寄存器
6.3.3McASP数据寄存器
6.3.4音频应用举例
6.4思考与练习
第7章 TMS320DM642最小系统设计
7.1DSP应用系统的设计过程
7.2最小系统构成
7.3电源设计
7.3.1供电系统设计
7.3.2上电次序设计
7.4系统复位电路设计
7.4.1复位与电源监控电路设计
7.4.2“看门狗”电路设计
7.5时钟电路设计
7.5.1外部晶振输入电路
7.5.2锁相环(PLL)倍频
7.6JTAG 仿真接口的设计
7.7硬件设计与调试技巧
7.7.1提高系统可调试性能的技巧
7.7.2最小系统的调试
7.8思考与练习
第8章 软件开发环境及程序优化
8.1DSP集成开发环境
8.1.1CCS简介
8.1.2CCS的版本选择
8.1.3CCS软件安装
8.1.4仿真器的安装与配置
8.2CCS集成开发环境
8.2.1CCS仿真操作步骤
8.2.2建立工程文件
8.2.3工程中编写、添加/删除文件
8.2.4编译并运行程序
8.2.5程序运行控制
8.2.6使用断点及变量观察窗口
8.2.7为文件I/O添加探针
8.2.8图形窗口分析显示数据
8.2.9使用观察窗口观察structure变量
8.2.10评估代码性能
8.3DSP的C/C++语言程序设计
8.3.1面向DSP的C/C++语言程序设计流程
8.3.2DSP的C/C++语言程序说明
8.3.3直接嵌入汇编指令
8.3.4C/C++语言与汇编语言的混合编程方法
8.3.5C/C++语言程序使用内联的汇编语言函数
8.4C/C++语言程序的编写和优化
8.4.1软件流水
8.4.2使用内联函数(intrinsics)
8.4.3调整数据类型
8.4.4条件分支语句的优化
8.4.5线性汇编
8.4.6删除冗余代码
8.5思考与练习
第9章 视频处理应用实例
9.1DSP视频处理开发系统概述
9.2硬件电路设计
9.2.1视频解码芯片SAA7115介绍
9.2.2视频编码芯片SAA7121介绍
9.2.3视频输入解码电路设计
9.2.4视频输出编码电路设计
9.3视频高速PCB的设计要点
9.3.1电源设计
9.3.2地线设计
9.3.3时钟信号设计
9.4视频驱动设计
9.4.1类/微驱动模型
9.4.2TMS320DM642芯片视频端口的视频采集驱动程序
9.4.3基于双EDMA通道的视频数据传输
9.4.4EDMA链表在场合成中的使用
9.4.5视频采集驱动程序的调用实例
9.4.6视频驱动程序使用方法
9.5视频输入采集、输出显示程序设计
9.5.1视频输入采集程序设计
9.5.2视频输出显示程序设计
9.6数字图像处理算法
9.6.1图像边缘检测
9.6.2图像中值滤波
9.6.3图像傅里叶变换
9.6.4H.264编码器的移植和优化
9.7实践应用
9.8思考与练习
第10章 语音处理开发实例
10.1语音信号处理概述
10.1.1音频采样
10.1.2语音编码
10.1.3语音识别
10.1.4数字回声
10.2语音采集及处理系统设计要求
10.3硬件电路设计
10.3.1音频编/解码芯片TLV320 AIC23B介绍
10.3.2AIC23B的控制模式
10.3.3AIC23B的内部控制寄存器
10.3.4AIC23B的音频接口与采样率控制
10.3.5音频编/解码模块电路设计
10.4语音处理的软件实现
10.4.1音频采集功能的实现
10.4.2AIC23B 参数设置子程序
10.4.3McASP 的配置及使用
10.4.4数字回声的产生
10.4.5语音信号的FIR滤波
10.4.6驱动程序设计
10.5实践应用
10.6思考与练习
第11章 网络通信开发实例
11.1网络通信基础知识
11.1.1TCP/IP
11.1.2套接字
11.2系统总体设计方案
11.3硬件电路设计
11.3.1TMS320DM642的EMAC网络模块
11.3.2以太网控制器Intel LXT971A介绍
11.3.3网络传输模块设计
11.3.4高速网络设备PCB的设计要点
11.4网络开发工具包
11.4.1通信接口的软件框架
11.4.2NDK的初始化
11.5相关软件设计
11.5.1网络协议栈的主线程
11.5.2基于TCP的控制命令接收程序
11.5.3基于UDP的传输视频网络发送程序
11.5.4PC服务器端程序
11.6实践应用
11.7思考与练习
附录
附录ATMS320DM642存储器映像
附录BTMS320DM642寄存器映像
附录CTMS320C6000指令集
附录D基于DaVinciTM技术的DSP芯片主要技术参数
参考文献