dsp课件资料

上传人:101****457 文档编号:90602177 上传时间:2019-06-13 格式:PPT 页数:80 大小:1.74MB
返回 下载 相关 举报
dsp课件资料_第1页
第1页 / 共80页
dsp课件资料_第2页
第2页 / 共80页
dsp课件资料_第3页
第3页 / 共80页
dsp课件资料_第4页
第4页 / 共80页
dsp课件资料_第5页
第5页 / 共80页
点击查看更多>>
资源描述

《dsp课件资料》由会员分享,可在线阅读,更多相关《dsp课件资料(80页珍藏版)》请在金锄头文库上搜索。

1、信号与信息处理综合实验(DSP 部分),1,目录,DSP基本结构和特征 DSP存储资源 C6000 DSP简介及其硬件结构 外设及EMIF介绍 实验,2,参考文献,http:/ Code Composer Users guide, TI公司资料 TMS320C6000 Code Composer Studio Tutorial, TI公司资料 TMS320C6416 datasheet, TI 公司资料 TMS320C6000系列DSPs原理与应用,李方慧,王飞,何佩琨,电子工业出版社,2003年1月。 DSP芯片的原理与开发应用,张雄伟等,电子工业出版社,2009年3月。,3,DSP基本结构

2、和特征,4,DSP芯片的性能指标,MFLOPS (百万次浮点操作/秒) MOPS (百万次操作/秒) MIPS (百万条指令/秒) MBPS (百万位/秒),5,CPU的主要组成部分,指令解码部分 运算与逻辑部分 算术逻辑单元(ALU) 累加器ACC 桶形移位寄存器 乘累加单元(MAC) 寻址部分,6,CPU的主要组成部分,ALU:实现加减法运算、逻辑运算等大部分算术和逻辑功能 ALU中一般包括 一个进位比特:可用于判断条件,来进行跳转、调用子函数等操作 溢出保护单元:ALU计算溢出时,用最大值代替计算结果,7,CPU的主要组成部分,累加器 一种特殊的寄存器 存放ALU或其他运算逻辑单元的运算

3、结果 作为一些运算逻辑单元的输入 位宽一般大于内部数据总线的位宽 TMS320C6000使用寄存器堆来存放算术和逻辑运算结果,8,CPU的主要组成部分,乘累加单元: 包括1个乘法器和1个专用加法器 在一个流水线周期内可以完成1次乘法和1次加法运算,9,DSP的特点,DSP的目的和核心:大量的数据处理。 哈佛结构:更高指令执行速度 流水线技术 专用的硬件乘法器 特殊的DSP指令 多个DMA通道控制器 丰富的外设接口 低功耗,10,冯.诺依曼结构,冯.诺依曼结构处理器指令流的定时关系示意图,11,哈佛结构,将程序指令存储和数据存储分开的存储器结构: 程序和数据存储在不同的存储空间 每个存储器独立编

4、址、独立访问,12,流水线技术,使两个或更多不同的操作重叠执行 典型的指令流水线可分为三个阶段:取指令(F),译码(D),执行(E),13,流水线技术,一条指令的执行 可以分为几个子操作 子操作与子操作串联在一起 每个子操作由不同单元来完成 对于每个单元,每隔一个时钟周期可进入一条新指令。在同一时间内,在不同单元可以有多条指令在操作 指令流在流水线中以重叠方式执行,即流水线的工作方式,14,流水线技术,下图给出了4条指令的流水迭代图 每条指令分成5个节拍,在理想状态下,总共需要5+(4-1)=8个节拍。,15,专用硬件乘法器,针对滤波、相关、矩阵运算等特点,DSP配有专门的硬件来实现乘累加(M

5、AC)运算,使得在同一时钟周期内可以完成相乘和累加两个运算 一般计算机上,乘法由加法和移位来实现,运算速度慢,16,特殊的DSP指令,DSP芯片通常都有自己的一套指令系统,对于提高DSP效率非常有效: 例如:TMS320C64x中的LDDW指令可以实现一次取两个字(8个字节) ADD2可以同时实现两个16位加法,17,DSP设计过程,18,DSP设计过程,DSP选择 运算速度:指令周期、MAC时间、FFT执行时间、MIPS、MOPS、MFLOPS. 芯片价格 硬件资源:片内RAM、ROM数,总线接口,I/O接口 运算精度:字长有16位,24位,32位等 开发工具 功耗,19,DSP存储资源,2

6、0,DSP芯片的存储器,片内存储器 DSP芯片本身所固有的 ROM、RAM和Flash等类型 片外存储器 根据DSP系统需要在DSP芯片外部扩展的 外部存储器的速度低于片内存储器的速度,21,存储区的组织,程序空间 用于存储程序指令 片内的RAM及ROM都可映射到程序空间 数据空间 用于存储数据 片内的RAM及ROM都可映射到数据空间 I/O空间 用于对片外设备的访问,22,DSP中的代码存储结构,采用模块化结构存储 COFF目标文件格式,有利于模块化编程 目标文件中,代码块和数据块称为section,为最小单位 每个块都是独立的 一个块在存储器映像中占据连续空间的一块代码或数据 COFF文件

7、包括有三个默认块 .text块:通常包含可执行代码 .data块:通常包含已初始化的变量 .bss块:通常为未初始化的变量保留空间,23,DSP中的代码存储结构,链接器对块的处理 将COFF目标文件中的块用来建立程序块或数据块,将输入块组合起来 为输出块选择存储器地址 完成上述功能的命令:MEMORY和SECTIONS MEMORY:指定每一块的起始地址和长度 SECTIONS:告诉链接器如何组合输入块以及在存储器何处存放输出块 建立链接命令文件来完成:.cmd,24,DSP中的代码存储结构,链接命令文件例子 *.cmd MEMORY PAGE 0: PROG: origin=0x1000,

8、length=0xEFFF PAGE 1: DATA: origin=0x0300, length=0x0D00 SECTIONS .text: PAGE=0 .data: PAGE=1 .cinit: PAGE=0 .bss: PAGE=1 ,程序存储器的起始地址和长度,数据存储器的起始地址和长度,将.text分配到程序存储器中,将.data分配到数据存储器中,将.cinit分配到紧接着.text的程序存储器中,将.bss分配到紧接着.data的数据存储器中,25,C6000 DSP简介及其硬件结构,26,VelociTI 先进VLIW结构内核 8个独立的功能单元:6个ALU(32/40-b

9、it),2个乘法器(1616),浮点系列支持IEEE标准单精度和双精度浮点运算 可以每周期执行8条32-bit指令 专用存取结构,32/64个32-bit通用寄存器,C6000芯片特点(1),27,C6000芯片特点(2),片内集成大容量SRAM,最大可达8M-bit 16/32/64-bit 高性能外部存储器接口(EMIF),提供与SDRAM、SBSRAM、SRAM等同步/异步存储器的直接接口 内置高效率协处理器(C64x) Viterbi解码协处理器(VCP) Turbo编解码协处理器(TCP),28,C6000芯片特点(3),片内提供多种集成外设(不同芯片的资源不同) 多通道DMA/ED

10、MA控制器 多通道缓冲串口(McBSP) 多通道音频串口(McASP) 主机口(HPI),可以访问DSP的整个存储空间 32-bit扩展总线(xBUS) 32-bit /33MHz PCI 主/从模式接口 32-bit通用计数器(Timer) 通用输入/输出(GPIO) I2C总线主/从模式接口 等等。,29,C6000硬件结构,片上 集成 外设,CPU,片内存储器,片内总线,片外 存储器,30,31,C64X处理器,处理器由三部分组成 CPU内核: 有8个并行操作的功能单元,被分为类似的两套 有两组寄存器,每组包括16个32位寄存器 存储器:包括程序存储器和数据存储器 片内程序存储器总线宽度

11、为256bit 每个周期可取8条32位指令 外设: 直接存储器访问DMA、外部存储器接口EMIF、串口、扩展总线、定时器等,32,C64X处理器,CPU包括 程序取指单元、指令分配单元、指令译码单元 32个32位寄存器 两个数据通路,每个数据通路有4个功能单元 执行逻辑、位移、乘法、加法和数据寻址等操作 控制寄存器 控制逻辑 测试、仿真和中断逻辑,33,C64X处理器,功能单元 .M:执行所有乘法操作 .S, .L:通用的算术、逻辑、分支函数 .D:主要用于数据从存储器加载到寄存器组,或将寄存器组数据存到存储器 .L1, .S1, .D1, .M1:读/写入寄存器组A .L2, .S2, .D

12、2, .M2:读/写入寄存器组B 两个寄存器组通过1X和2X交叉通路与另一侧寄存器组的功能单元相连,34,CPU数据通路,数据通路包括: 2个通用寄存器组(A和B) 8个功能单元(.L1, .L2, .S1, .S2, .M1, .M2, .D1, .D2) 2个存储器读取通路(LD1和LD2) 2个存储器存储通路(ST1和ST2) 2个寄存器组交叉通路(1X和2X) 2个数据寻址通路(DA1和DA2),35,36,通用寄存器组 每个寄存器组包括16个32位寄存器 A0A15, B0B15 存放数据和数据地址指针 A1, A2, B0, B1, B2可用于条件寄存器 A4A7和B4B7可用于循

13、环寻址 支持32位和40位定点数据:40位跨放在两个寄存器内,37,存储器,片内存储器:程序存储区和数据存储区 一些存储区可作为高速缓冲区(cache) 片外存储器:C6000通过片外存储器接口(EMIF)可使用片外存储器 64X系列的存储器映射 内部存储器始终位于地址0 外部存储器起始地址:EMIFB为0x6000 0000,EMIFA为0x8000 0000,38,存储器,两级存储器结构 第一级程序cache:L1P 第一级数据cache:L1D 第二级存储器:L2。可配置为cache和SRAM,39,40,存储器,L1D:服务CPU的相关数据,16KB的cache L1P:服务CPU的程

14、序指令,16KB的cache L2:作为cache和SRAM的总的空间一定,C6416中为1024KB 服务来自L1D, L1P, EDMA的请求 复位时,L2映射为SRAM L2 cache空间:32KB256KB,取决于L2模式,41,存储器,部分内部存储器映射,42,第5章 外设及EMIF介绍,43,外设,EMIFA:64位总线宽度 EMIFB:16位总线宽度 EDMA:64个独立信道 HPI:32或16bit,用户可选 PCI:32bit McBSPs:3个 UTOPIA:8bit模式 32比特定时器:3个 通用I/O 0(GP0):16个,44,EMIF(External Memor

15、y Interface),外部存储器接口EMIF 片内RAM容量不能满足系统空间要求时,在片外进行存储器扩展,此时需利用EMIF 是外部存储器件和DSP的接口。DSP访问片外存储器件时一般通过EMIF接口。 EMIF接口具有很强的外设连接能力,可寻址空间一般都比较大,几乎可以与目前各种类型的存储器无缝连接,数据吞吐较快。,45,EMIF(External Memory Interface),EMIF接口支持的器件包括同步突发静态RAM (SBSRAM)、同步动态RAM(SDRAM)、各种异步设备(SRAM、ROM和FIFO)以及同步FIFO。 EMIF性能优良,跟外部SDRAM和异步器件连接时

16、,具有很大的方便性和灵活性。 EMIF分为4个空间:CE0-CE3,每个CE空间彼此独立,可进行不同的访问控制 TMS320C6416有两个EMIF接口,数据总线一个是64位的称为EMIFA,另一个为16位的称为EMIFB,46,存储器,EMIFA/EMIFB映射,47,EMIF寄存器,EMIF及其支持接口的控制通过寄存器完成:包括配置各个空间上的存储器类型,设置相应的接口时序等 GBLCTL:EMIF全局控制寄存器,完成对整个片外存储空间的公共参数的设置 CECTL0-3:EMIF CE空间控制寄存器,分别控制相应存储空间的接口参数 CESEC0-3:EMIF CE空间次控制寄存器,48,EMIF寄存器,以下EMIF控制寄存器负责控制所有属于SDRAM空间的存储接口情况 SDCTL:EMIF SDRAM控制寄存器 SDTIM:EMIF SDRAM刷新控制寄存器 SDEXT:EMIF SDRAM扩展寄存器 PDTCTL:EMIF外设传送控制寄存器,49,EMIF寄

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 其它中学文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号