本书是一本面向普通地方院校的本科生教材,针对目前广泛应用的DSP系统设计,以TI公司的C6000数字信号处理器为硬件平台,详细介绍了DSP系统设计及算法实现。全书共分9章,内容包括DSP系统概述、DSP的硬件结构、DSP指令系统、DSP流水线及中断、集成开发环境及软件开发过程、DSP/BIOS实时操作系统、C6000系列编程及代码优化、存储器接口及其访问控制器以及其他外设及芯片引导和程序烧写。?? 本书内容全面、实用,讲解通俗易懂,书中的有些案例略作修改即可在工程中直接应用。本书可作为高等院校电子工程、通信工程、计算机、电气工程、自动控制、电力电子等专业的高年级本科生和研究生学习DSP的参考教材,也可供从事DSP应用系统设计开发的技术人员参考。 第1章DSP系统概述1 1.1实时数字信号处理1 1.1.1什么是DSP1 1.1.2信号处理芯片的发展2 1.2DSP嵌入式系统介绍3 1.2.1为什么要使用DSP3 1.2.2DSP系统的构成4 1.2.3DSP系统应用领域5 1.3DSP器件的特点6 1.3.1DSP芯片的发展历史、现状和趋势6 1.3.2DSP芯片的特点8 1.3.3DSP芯片的分类9 1.3.4选择DSP芯片考虑的因素10 1.3.5DSP芯片的性能评价11 1.4DSP芯片产品简介12 1.4.1TI公司的DSP芯片概况12 1.4.2AD公司的DSP芯片16 1.4.3ATT公司的DSP芯片18 1.4.4Motorola公司的DSP芯片18 1.5本章小结19 1.6为进一步深入学习推荐的参考书目19 1.7习题20第2章TMS320C6000系列的硬件结构21 2.1C6000系列芯片中央处理器内核结构21 2.1.1基本结构21 2.1.2通用寄存器30 2.1.3控制寄存器31[1][2]2.2CPU数据通路和控制33 2.2.1数据通路的功能单元33 2.2.2寄存器交叉通路34 2.2.3存储器存取通路36 2.2.4数据地址通路36 2.3片内存储器36 2.3.1存储器空间分配37 2.3.2程序存储器控制器38 2.3.3内部程序存储器38 2.3.4数据存储器控制器41 2.3.5内部数据存储器41 2.4二级内部存储器44 2.4.1片内一级程序(L1P)高速缓存的结构45 2.4.2片内一级数据(L1D)高速缓存的结构46 2.4.3片内二级(L2)高速缓存的结构47 2.4.4片内高速缓存的控制47 2.5本章小结50 2.6为进一步深入学习推荐的参考书目50 2.7习题50第3章TMS320C6000系列的指令系统52 3.1TMS320C6000公共指令集概述52 3.1.1指令和功能单元之间的映射52 3.1.2延迟间隙52 3.1.3指令操作码映射图53 3.1.4并行操作53 3.1.5条件操作55 3.1.6寻址方式55 3.2C6000公共指令集57 3.2.1读取/存储类指令57 3.2.2算术运算类指令60 3.2.3乘法运算指令62 3.2.4逻辑及位域操作指令62 3.2.5搬移类指令64 3.2.6程序转移类指令64 3.2.7资源对公共指令集的限制65 3.2.8浮点运算指令集68 3.3汇编、线性汇编和伪指令68 3.3.1汇编代码结构68 3.3.2线性汇编语言结构70 3.3.3汇编优化器伪指令71 3.3.4汇编优化器73 3.4C语言和线性汇编语言的混合编程74 3.4.1在C/C++代码中调用汇编语言模块74 3.4.2用内嵌函数访问汇编语言76 3.4.3C/C++语言中嵌入汇编语言76 3.4.4C/C++语言中访问汇编语言变量77 3.5本章小结78 3.6为进一步深入学习推荐的参考书目78 3.7习题79第4章TMS320C6000系列流水线与中断80 4.1流水线概述80 4.1.1C6000流水线概念80 4.1.2流水线运行时序82 4.1.3VelociTI与标准VLIW85 4.2TMS320C6000流水线操作86 4.2.1C6000指令流水线执行级类型86 4.2.2C6000流水线运行的几个问题90 4.3中断控制系统94 4.3.1中断类型和中断信号95 4.3.2中断服务表96 4.3.3中断服务取指包96 4.3.4中断控制寄存器99 4.3.5中断选择器和外部中断102 4.4中断处理及其编程注意事项103 4.4.1中断捕获和处理103 4.4.2中断编程注意事项105 4.5本章小结108 4.6为进一步深入学习推荐的参考书目108 4.7习题109第5章集成开发环境与软件开发过程110 5.1集成开发环境110 5.1.1概述110 5.1.2代码生成工具112 5.1.3CCS集成开发环境116 5.1.4DSP/BIOS插件117 5.1.5硬件仿真和实时数据交换119 5.2开发一个简单的应用程序121 5.2.1创建工程文件121 5.2.2向工程添加文件121 5.2.3查看源代码122 5.2.4编译和运行程序122 5.2.5修改程序选项和纠正语法错误123 5.2.6使用断点和观察窗口124 5.2.7使用观察窗口观察structure变量125 5.2.8测算源代码执行时间126 5.3C6000代码开发的基础知识127 5.3.1DSP程序仿真模式127 5.3.2C6000程序基本结构128 5.3.3连接器编写的3个基础128 5.3.4连接器命令文件132 5.4C语言编程常见问题135 5.4.1变量存取方式及far关键字135 5.4.2中断服务程序和interrupt关键字136 5.4.3优化级别和volatile关键字137 5.4.4软件流水对中断的影响138 5.4.5IST(中断服务表)的编写与devlib函数库138 5.5本章小结141 5.6为进一步深入学习推荐的参考书目141 5.7习题142第6章DSP/BIOS实时操作系统143 6.1实时操作系统基本概念143 6.2DSP/BIOS概述145 6.2.1DSP/BIOS的特色和优势145 6.2.2DSP/BIOS的组成146 6.3DSP/BIOS程序开发148 6.3.1DSP/BIOS开发过程148 6.3.2使用配置工具149 6.3.3程序的编译和链接153 6.3.4在DSP/BIOS中使用运行支持库153 6.3.5DSP/BIOS启动序列154 6.3.6在DSP/BIOS中使用C++155 6.3.7在main函数中调用DSP/BIOS API155 6.4监测155 6.4.1实时分析155 6.4.2监测性能156 6.4.3监测API156 6.4.4隐式DSP/BIOS监测160 6.4.5内核/对象视图161 6.4.6实时数据交换161 6.5线程调度164 6.5.1线程概述和线程类型164 6.5.2硬件中断167 6.5.3软件中断168 6.5.4任务173 6.5.5空闲
阅读更多
漫游鲸二手书店
微信扫码去买书
扫码访问微信小程序