网上购物 货比三家
您现在的位置:快乐比价网 > 图书 > 计算机与网络 > 电子电路与微处理器 > 商品详情

DSP开发宝典

分享到:
DSP开发宝典

最 低 价:¥89.25

定 价:¥119.00

作 者:郑阿奇

出 版 社:电子工业出版社

出版时间:2012 年3月

I S B N:9787121150685

  • DSP开发宝典
  • 送货上门
  • 价格
    89.25元
    价格
    93.80元
    价格
    93.80元
    价格
    94.00元
    价格
    98.70元

    商品详情

    编辑推荐

    炫出TMS320C6000系列DSP精彩
      典藏DSP开发经验和成功案例
      见证DSP菜鸟变大师的奇迹

    内容简介

    《dsp开发宝典》以美国ti公司tms320c6000系列dsp为平台,介绍cpu硬件结构、指令系统(包括伪指令)、c/c++程序开发基础、c/c++程序开发、线性汇编代码优化、汇编语言工具、软件集成开发、程序调试与实例分析、外部存储器接口、中断系统、直接存储器访问(dma)、增强型直接存储器访问(edma)、多通道缓冲串口(mcbsp)、主机并行接口(hpi)、扩展总线、外围设备互联(pci)端口、定时器、通用输入/输出(i/o)等,是目前国内比较系统地介绍tms320c6000系列dsp的学习、开发应用指南。
      《dsp开发宝典》即可以作为tms320c6000系列dsp自学和应用开发人员的参考书,也可作为tms320c6000系列dsp的培训用书。

    作者简介

    目录

    《dsp开发宝典》
    第1章 tms320c6000系列dsp概述1
    1.1 dsp产生、特点及其应用1
    1.1.1 dsp的产生1
    1.1.2 dsp的特点2
    1.1.3 dsp的应用3
    1.2 tms320c6000系列dsp主要特点及其应用4
    第2章 tms320c6000系列cpu、指令系统、伪指令6
    2.1 tms320c6000系列cpu的结构6
    2.2 tms320c6000系列cpu的数据通路和控制8
    2.2.1 通用寄存器组10
    2.2.2 数据通路的功能单元12
    2.2.3 寄存器组交叉通路13
    2.2.4 存储器存取通路14
    2.2.5 数据地址通路14
    2.2.6 tms320c6000控制寄存器组14
    2.2.7 tms320c67x控制寄存器扩展18
    2.2.8 tms320c64x控制寄存器扩展22
    2.3 tms320c6000系列dsp的存储器24
    2.3.1 程序存储器24
    .2.3.2 内部数据存储器30
    2.3.3 二级内部存储器33
    2.4 tms320c6000系列dsp指令系统38
    2.4.1 tms320c6000系列dsp指令集39
    2.4.2 流水线51
    2.4.3 汇编伪指令64
    第3章 程序开发基础81
    3.1 软件开发工具概述81
    3.2 c/c++编译器概述83
    3.2.1 iso标准83
    3.2.2 输出文件83
    3.2.3 编译器接口84
    3.2.4 编译器操作84
    3.2.5 编译器工具84
    3.3 使用c/c++编译器85
    3.3.1 编译器85
    3.3.2 调用c/c++编译器85
    3.3.3 设置选项改变编译器的行为87
    3.3.4 常用选项91
    3.3.5 指定文件名93
    3.3.6 设置目录93
    3.3.7 设置默认的编译选项94
    3.4 优化代码95
    3.4.1 执行优化95
    3.4.2 优化软件流水97
    3.4.3 冗余循环100
    3.4.4 调试和剖析优化代码101
    3.4.5 基于价值的寄存器分配101
    3.4.6 别名消除102
    3.4.7 优化跳转和简化控制流102
    3.4.8 数据流优化102
    3.4.9 简化表达式102
    3.4.10 内联函数扩展103
    3.4.11 寄存器跟踪与分配104
    3.5 使用汇编优化器105
    3.5.1 增强性能的代码开发流程105
    3.5.2 线性汇编知识106
    第4章 c/c++程序开发112
    4.1 tms320c6000系列c/c++语言实现112
    4.1.1 tms320c6000系列c语言特点112
    4.1.2 tms320c6000系列c++语言特点114
    4.1.3 tms320c6000系列c/c++语言关键字114
    4.1.4 pragma伪指令119
    4.1.5 初始化静态变量和全局变量125
    4.2 运行时环境126
    4.2.1 存储器模型126
    4.2.2 对象的表示129
    4.2.3 中断处理134
    4.2.4 系统初始化135
    4.3 运行时支持函数139
    4.3.1 编译器包括的库139
    4.3.2 c语言的i/o函数140
    4.3.3 运行时支持库函数和宏的描述148
    4.4 tms320c6000系列c/c++代码优化151
    4.4.1 c/c++语言代码的编写151
    4.4.2 编译c/c++代码152
    4.4.3 优化c代码153
    4.5 c/c++语言和汇编的混合编程157
    4.5.1 在c/c++代码中调用汇编语言模块157
    4.5.2 用内嵌函数访问汇编语言158
    4.5.3 在c/c++语言中嵌入汇编语言159
    4.5.4 在c/c++语言中访问汇编语言变量159
    第5章 线性汇编优化代码165
    5.1 汇编优化器选项与伪指令165
    5.2 编写并行代码169
    5.2.1 点积的c代码169
    5.2.2 c代码转换为线性汇编170
    5.2.3 画相关性图171
    5.2.4 非并行汇编代码与并行汇编代码172
    5.2.5 使用字访问短型数据与使用双字访问176
    5.3 软件流水183
    5.3.1 模迭代间隔编排表185
    5.3.2 使用汇编优化器产生优化循环189
    5.3.3 最终汇编190
    5.4 多周期循环的模迭代204
    5.4.1 转换c代码为线性汇编204
    5.4.2 确定最小迭代间隔204
    5.4.3 画相关性图206
    5.4.4 线性汇编资源分配207
    5.4.5 模迭代间隔编排207
    5.4.6 使用汇编优化器产生加权矢量和214
    5.4.7 最终汇编215
    5.5 循环传递路径216
    5.5.1 将c代码的内核循环转换为线性汇编217
    5.5.2 画相关性图217
    5.5.3 确定最小迭代间隔218
    5.5.4 线性汇编资源分配220
    5.5.5 模迭代间隔安排220
    5.5.6 使用汇编优化器处理iir滤波器221
    5.5.7 最终汇编222
    5.6 循环中的if-then-else语句222
    5.6.1 if-then-else的c代码223
    5.6.2 转换c代码为线性汇编223
    5.6.3 画相关性图224
    5.6.4 确定最小迭代间隔224
    5.6.5 线性汇编资源分配225
    5.6.6 最终汇编226
    5.6.7 性能比较226
    5.7 循环展开227
    5.7.1 展开if-then-else的c代码228
    5.7.2 c代码转换为线性汇编228
    5.7.3 画相关性图229
    5.7.4 确定最小迭代间隔230
    5.7.5 线性汇编资源安排230
    5.7.6 最终汇编231
    5.8 生命太长问题232
    5.8.1 具有生命太长问题的c代码232
    5.8.2 c代码转换为线性汇编233
    5.8.3 画相关性图234
    5.8.4 确定最小迭代间隔234
    5.8.5 线性汇编资源安排235
    5.8.6 带mv指令的最后汇编236
    5.9 消除冗余取数238
    5.9.1 转换c代码为线性汇编239
    5.9.2 画相关性图240
    5.9.3 确定最小迭代间隔241
    5.9.4 线性汇编资源分配241
    5.9.5 最终汇编242
    5.10 存储体244
    5.10.1 fir滤波器的内核循环245
    5.10.2 展开的fir滤波器的c代码246
    5.10.3 将c代码转换为线性汇编247
    5.10.4 画相关性图248
    5.10.5 含有.mptr命令的展开后fir线性汇编249
    5.10.6 线性汇编资源分配250
    5.10.7 确定最小迭代间隔250
    5.10.8 最终汇编251
    5.11 软件流水外循环253
    5.11.1 展开fir滤波器的c代码253
    5.11.2 最终汇编254
    5.12 同内循环一起条件地执行外循环257
    5.12.1 展开fir滤波器的c代码257
    5.12.2 将内核循环的c代码转换为线性汇编258
    5.12.3 将外环的c代码转换为线性汇编258
    5.12.4 展开fir滤波器的c代码259
    5.12.5 c代码转换为线性汇编(内核循环)260
    5.12.6 确定最小迭代间隔262
    5.12.7 最终汇编262
    5.12.8 性能比较265
    5.13 通用目标文件格式265
    5.13.1 段265
    5.13.2 汇编器对段的处理266
    5.13.3 连接器对段的处理271
    第6章 汇编语言工具273
    6.1 宏语言273
    6.2 连接器描述274
    6.3 memory伪指令277
    6.4 sections伪指令279
    6.4.1 sections伪指令格式279
    6.4.2 绑定282
    6.4.3 指定存储器283
    6.4.4 指定输入段284
    6.4.5 使用多个存储器区域定位286
    6.4.6 在非连续的存储器区域自动分裂输出段286
    6.4.7 把文档库一个成员分配到输出段288
    6.5 指定段的运行地址289
    6.5.1 指定加载地址和运行地址289
    6.5.2 未初始化段290
    6.5.3 使用.label伪指令引用加载地址290
    第7章 软件集成开发296
    7.1 应用软件开发流程及工具296
    7.2 集成开发环境(ccs)298
    7.2.1 ccs概述298
    7.2.2 ccs开发环境的安装和配置299
    7.2.3 文本编辑器313
    7.2.4 调试工具317
    7.2.5 自动化(项目管理)320
    7.2.6 dsp/bios插件321
    7.3 开发应用程序324
    7.3.1 创建工程文件324
    7.3.2 向工程添加文件325
    7.3.3 查看源代码325
    7.3.4 编译和运行程序327
    7.3.5 修改程序选项和纠正语法错误328
    7.3.6 使用断点和观察窗口329
    7.3.7 测算源代码执行时间330
    7.4 开发dsp/bios程序331
    7.4.1 创建配置文件331
    7.4.2 创建用户模板332
    7.4.3 为模块设置全局属性333
    7.4.4 通过配置工具创建对象333
    7.4.5 层次树窗口334
    7.4.6 显式dsp/bios插件339
    7.4.7 内核/对象窗口调试341
    7.4.8 线程调度345
    7.4.9 利用执行图查看程序的执行346
    第8章 程序调试与实例分析348
    8.1 程序调试348
    8.1.1 建立调试环境348
    8.1.2 内存映射353
    8.1.3 仿真(simulation)355
    8.1.4 基础调试357
    8.1.5 高级调试特征367
    8.1.6 实时调试371
    8.1.7 复位芯片375
    8.2 实时分析376
    8.2.1 数据可视化376
    8.2.2 dsp/bios 实时分析(rta)工具377
    8.2.3 代码覆盖范围和多事件剖析工具379
    8.3 程序调试与分析实例379
    8.3.1 打开和查看工程380
    8.3.2 查看源程序380
    8.3.3 为i/o文件增加探针断点382
    8.3.4 显示图形383
    8.3.5 执行程序和绘制图形384
    8.3.6 调节增益385
    8.3.7 观察范围外变量386
    8.3.8 使用gel文件388
    8.3.9 调节和测试processing函数388
    8.3.10 打开和查看工程389
    8.3.11 查看源程序390
    8.3.12 修改配置文件392
    8.3.13 用execution graph查看任务执行情况394
    8.3.14 修改和查看load值395
    8.3.15 分析任务的统计数据397
    8.3.16 增加sts显式测试398
    8.3.17 观察显式测试统计数据399
    8.4 应用程序代码调整(act)400
    8.4.1 调整面板401
    8.4.2 高速缓存调整工具(cache tune)403
    第9章 外部存储器接口404
    9.1 概述404
    9.1.1 sdram接口405
    9.1.2 sbsram接口411
    9.1.3 异步接口413
    9.1.4 复位emif419
    9.1.5 hold接口420
    9.1.6 访问emif寄存器时的边界条件421
    9.1.7 时钟输出使能421
    9.2 tms320c620x/c670x dsp的emif422
    9.2.1 概述423
    9.2.2 emif接口信号423
    9.2.3 sdram接口426
    9.2.4 sbsram接口432
    9.2.5 rom访问模式434
    9.2.6 存储器请求优先级434
    9.3 tms320c621x/c671x dsp的emif435
    9.3.1 概述435
    9.3.2 emif接口信号435
    9.3.3 sdram接口438
    9.3.4 sbsram接口445
    9.3.5 存储器请求优先级446
    9.4 tms320c64x dsp的emif447
    9.4.1 概述447
    9.4.2 emif接口信号448
    9.4.3 sdram接口449
    9.4.4 可编程同步接口456
    9.4.5 外部设备传输(pdt)460
    9.5 tms320c6000 dsp的emif寄存器466
    9.6 时钟输出使能472
    第10章 中断系统474
    10.1 tms320c6000的中断概述474
    10.1.1 中断类型和中断信号474
    10.1.2 中断服务表(ist)476
    10.1.3 中断控制寄存器479
    10.2 中断控制481
    10.2.1 中断使能寄存器(ier)481
    10.2.2 设置和清除中断的状态(ifr﹑isr和icr)482
    10.2.3 中断返回服务485
    10.3 编程注意事项486
    10.3.1 单任务编程486
    10.3.2 嵌套中断486
    10.3.3 手动中断处理487
    10.3.4 陷阱487
    10.4 中断选择器与外部中断488
    10.4.1 可用中断源488
    10.4.2 中断选择寄存器489
    10.4.3 外部中断信号时序492
    10.5 中断应用实例492
    第11章 直接存储器访问(dma)512
    11.1 概述512
    11.2 dma控制寄存器514
    11.2.1 dma主控制寄存器(prictl)515
    11.2.2 dma从控制寄存器(secctl)517
    11.3 dma的初始化和启动519
    11.3.1 初始化一个dma块传输519
    11.3.2 dma自动初始化519
    11.3.3 dma信道重载寄存器520
    11.4 传输计数521
    11.5 同步传输521
    11.5.1 dma通道事件的锁定和清除522
    11.5.2 同步控制523
    11.6 地址的产生524
    11.7 通道的分裂操作525
    11.7.1 dma分裂操作525
    11.7.2 dma分裂地址产生526
    11.8 dma控制器526
    11.8.1 tms320c6201/c6701/c6202器件的dma结构526
    11.8.2 tms320c6202b/c6203b/c6204/c6205器件的dma结构527
    11.8.3 dma操作528
    11.8.4 dma性能528
    11.8.5 dma的外引脚528
    11.9 dma应用实例528
    第12章 增强型直接存储器访问(edma)547
    12.1 edma概述547
    12.2 edma的控制寄存器549
    12.2.1 事件寄存器(er,erl,erh)550
    12.2.2 事件使能寄存器(eer,eerl,eerh)550
    12.2.3 事件清除寄存器(ecr,ecrl,ecrh)551
    12.2.4 事件设置寄存器(esr,esrl,esrh)552
    12.2.5 事件编码器553
    12.3 参数ram553
    12.4 edma传输参数555
    12.5 edma传输556
    12.6 edma传输的分类558
    12.6.1 一维传输558
    12.6.2 二维传输560
    12.7 单元大小与对齐562
    12.8 传输计数与地址更新563
    12.9 edma传输参数的链接564
    12.10 终止edma传输565
    12.11 edma中断566
    12.12 事件链接edma通道567
    12.12.1 tms320c621x/c671x edma传输链568
    12.12.2 tms320c64x edma传输链569
    12.13 edma性能569
    12.14 快速dma(qdma)569
    12.14.1 qdma的控制569
    12.14.2 qdma的性能571
    12.14.3 qdma的优先级571
    12.15 传输请求递交571
    12.15.1 请求链571
    12.15.2 传输交叉开关572
    12.15.3 地址产生/传输逻辑573
    12.16 传输实例574
    12.16.1 块搬移实例574
    12.16.2 子帧提取实例575
    12.16.3 数据分类的实例577
    12.16.4 非猝发外设578
    12.17 edma应用实例585
    12.17.1 应用实例分析585
    12.17.2 完整的程序代码589
    第13章 多通道缓冲串口(mcbsp)616
    13.1 概述616
    13.2 mcbsp接口信号和控制寄存器617
    13.3 数据发送和接收619
    13.3.1 串口的复位620
    13.3.2 确定就绪状态621
    13.3.3 cpu中断621
    13.3.4 时钟和帧的配置622
    13.4 mcbsp的标准操作627
    13.4.1 数据接收627
    13.4.2 数据发送628
    13.4.3 最高帧频率628
    13.5 忽略帧同步的传输629
    13.5.1 帧同步忽略与非预期的帧同步脉冲629
    13.5.2 利用帧同步忽略位的数据打包630
    13.6 串行异常的情况631
    13.6.1 接收满:rfull631
    13.6.2 非预期的接收帧同步:rsyncerr632
    13.6.3 数据覆盖时的发送633
    13.6.4 发送空数据634
    13.6.5 非预期的发送帧同步635
    13.7 -律/a-律压扩硬件操作636
    13.8 可编程时钟与帧同步637
    13.8.1 采样率发生器638
    13.8.2 mcbsp初始化过程640
    13.9 多通道选择操作641
    13.9.1 多通道控制寄存器(mcr)641
    13.9.2 多通道选择的使能与屏蔽644
    13.9.3 增强型多通道选择模式(c64×)647
    13.9.4 dx使能器650
    13.10 spi协议:clkstp651
    13.10.1 mcbsp作为spi主设备652
    13.10.2 mcbsp作为spi从设备653
    13.10.3 spi初始化653
    13.11 mcbsp引脚作为通用i/o654
    13.12 mcbsp应用实例654
    第14章 主机并行接口(hpi)672
    14.1 概述672
    14.2 hpi外部接口674
    14.2.1 tms320c620x/c670x dsp的hpi674
    14.2.2 tms320c621x/c671x dsp的hpi675
    14.2.3 tms320c64x dsp的hpi16或hpi32676
    14.3 hpi接口信号677
    14.3.1 数据总线678
    14.3.2 访问控制选择信号678
    14.3.3 半字识别选择信号678
    14.3.4 地址选通输入信号679
    14.3.5 字节使能信号679
    14.3.6 读/写选择信号680
    14.3.7 选通信号680
    14.3.8 就绪信号681
    14.3.9 对主机的中断681
    14.4 hpi总线访问681
    14.4.1 tms320c620x/c670x hpi总线访问681
    14.4.2 tms320c621x/c671x hpi总线访问684
    14.4.3 tms320c64x hpi总线访问686
    14.5 主机访问顺序687
    14.5.1 hpic与hpia的初始化688
    14.5.2 固定地址模式下的hpid寄存器读访问689
    14.5.3 地址自增模式的hpid读访问690
    14.5.4 固定地址模式的hpid寄存器写访问692
    14.5.5 地址自增模式的hpid写访问694
    14.5.6 半字周期(仅适用于tms320c620x/c670x)696
    14.5.7 hpi传输优先级队列——tms320c621x/c671x/c64x697
    14.5.8 复位时通过hpi的存储器访问697
    14.6 hpi寄存器697
    14.6.1 hpi数据寄存器697
    14.6.2 hpi地址寄存器698
    14.6.3 hpi控制(hpic)寄存器698
    14.6.4 hpi传输请求控制(trctl)寄存器——仅c64xdsp701
    14.7 主机并行接口(hpi)应用实例702
    第15章 扩展总线722
    15.1 概述722
    15.2 扩展总线信号723
    15.3 扩展总线i/o端口724
    15.3.1 异步模式726
    15.3.2 同步fifo模式727
    15.4 扩展总线主接口操作729
    15.4.1 同步主机端口模式730
    15.4.2 异步主机端口模式735
    15.5 扩展总线仲裁737
    15.5.1 内部总线仲裁器使能737
    15.5.2 内部总线仲裁器禁止738
    15.5.3 扩展总线请求器优先级738
    15.6 通过扩展总线进行引导739
    15.7 扩展总线的寄存器739
    15.7.1 扩展总线全局控制(xbgc)寄存器740
    15.7.2 扩展总线xce空间控制寄存器741
    15.7.3 扩展总线主机接口控制(xbhc)寄存器742
    15.7.4 扩展总线内部主设备地址(xbima)寄存器743
    15.7.5 扩展总线外部地址(xbea)寄存器743
    15.7.6 扩展总线数据(xbd)寄存器744
    15.7.7 扩展总线内部从设备(xbisa)寄存器744
    第16章 外围设备互联端口(pci)746
    16.1 外围设备互联端口(pci)概述746
    16.2 pci端口结构749
    16.3 tms320c6000 pci存储器映射751
    16.4 pci存储器服务的特殊考虑752
    16.4.1 可预取的读操作752
    16.4.2 pci与程序存储器之间的数据传输(仅tms320c62x dsp)753
    16.5 从设备传输753
    16.5.1 dsp从设备写753
    16.5.2 dsp从设备读754
    16.6 主设备传输754
    16.6.1 dsp主设备写755
    16.6.2 dsp主设备读755
    16.7 复位756
    16.8 中断与状态报告757
    16.9 pci端口的启动配置757
    16.10 eeprom接口758
    16.10.1 由eeprom实现pci自动初始化759
    16.10.2 eeprom内存映射759
    16.10.3 eeprom校验和760
    16.10.4 dsp eeprom接口760
    16.11 错误处理761
    16.11.1 pci奇偶错误处理761
    16.11.2 pci系统错误处理762
    16.11.3 pci主设备终止协议762
    16.11.4 pci目标设备终止协议762
    16.12 电源管理(仅适用于tms320c62x)762
    16.12.1 pci电源管理762
    16.12.2 pci电源管理策略764
    16.12.3 dsp复位765
    16.13 pci寄存器765
    16.13.1 pci配置寄存器766
    16.13.2 i/o寄存器769
    16.13.3 内存映射寄存器771
    16.14 pci应用实例780
    第17章 定时器795
    17.1 概述795
    17.2 定时器的寄存器795
    17.3 定时器的启动和停止799
    17.4 定时器计数799
    17.5 定时器脉冲的产生799
    17.6 控制寄存器中的边界情况800
    17.7 定时器引脚配置为通用i/o端口801
    第18章 通用输入/输出(i/o)802
    18.1 概述802
    18.2 通用输入/输出(i/o)端口的功能803
    18.3 中断与事件产生803
    18.3.1 直通模式804
    18.3.2 逻辑模式805
    18.3.3 gpint与gp0和/或gpint0的复用805
    18.4 中断与事件806
    18.5 通用输入/输出(i/o)端口寄存器806

    商品评论(0条)

    暂无评论!

    您的浏览历史

    loading 内容加载中,请稍后...