版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、(6学时) DSP芯片组成? 中央处理器? 总线结构? 存储器? 片内外设和引脚? 中断系统?特点运算速度快组成CPU:存储器系统:片内外设:其他功能模块JTAG 测试/仿真接口McBSP1McBSP2McBSP3Clock PLL Generator HPI GP I/OS/W WaitstateGenerator64K RAM 单访问程序存储器 64K RAM 双访问程序/数据存储器 16K Program ROMCPUTimerPeripheral BusProgram/Data BusesDMA电源管理40位算术逻辑运算单元ALU40位累加器A和B桶形移位寄存器,支持-16至31移动范
2、围乘法/累加器16位暂存器T16位传输寄存器TRN比较、选择和存储单元CSSU指数编码器CPU状态和控制寄存器。系统控制接口程 序 地 址 产 生 器PAGEN数 据 地 址 产 生 器DAGEN存储器和外部接口D M A 控制器片内外设PABPBCABCBDABDBEABEB乘法/加法器算术逻辑单元ALU指 数 编 码器C P U 状 态控 制 寄 存器桶形移位寄存器比较、选择和存储单元累加器B累加器ACPU 40位ALU(Arithmetic Logic Unit)配合累加器A和B,执行算术、逻辑运算、布尔运算功能,绝大多数算术逻辑运算指令都在一个周期内完成。一个运算操作在ALU执行后,运
3、算的结果一般被送到累加器A或B中(执行存储操作指令ADDM、ANDM、ORM、XORM除外)算术逻辑运算单元ALU累加器A累加器B数据总线CB15-CB0数据总线DB15-DB0乘法/累加单元(MAC)输出符号控制符号控制转移输出(40)ALU的输入移位器输出(32位或16位数据存储器操作数或者移位后累加器的值)。数据总线DB的数据存储器操作数。Y端的输入来自下列3个方向中的一个:累加器A或B。数据总线CB的数据存储器操作数。T寄存器的数据ALU的输出ALU的输出为40位,被送入累加器A或B。 ALU溢出处理 和ST1中的OVM有关. 发生溢出时后,溢出标志位OVA或OVB置位,直到复位或执行
4、溢出条件指令时恢复。 ALU进位位 ALU的进位位C受大多数算术指令影响(包括循环和移位指令)。进位位可以用来支持扩展精度的算术运算。进位位不受累加器装载、逻辑运算、其他非算术指令或控制指令影响,所以它还可以用来进行溢出管理。 根据进位位的值,可以利用条件操作指令C和NC来进行分支转移、调用或返回操作。利用指令RSBX、SSBX或硬件复位来对进位位置位。 双16位算术运算 CPU状态寄存器ST1的C16如果处于置位状态,用户就可以让ALU在单周期内进行特殊的双16位算术运算,即进行两次16位加法或两次16位减法。 举例 ADD *AR1,A ;双字节指令,表示ALU的两个输入端分别累加器A和移
5、位器 ADD *AR2,*AR3,A ;双字节指令,表示ALU的两个输入端分别是DB和CB 累加器(accumulator)A和B都可以配置成乘法器/加法器或ALU的目的寄存器。在执行MIN和MAX指令或者并行指令LD|MAC时,一个累加器执行数据加载,另一个累加器执行运算 AG保护位39-32AH高位31-16AL低位15-0BG保护位39-32BH高位31-16BL低位15-0累加器A累加器B 累加器A和B都可以匹配成乘法器/加法器或ALU的目的寄存器 A,B;可用PSHM或POPM指令将它们压栈或出栈 AG AH AL BG BH BL 保存累加器的内容 累加器移位和循环移位 SFTA,
6、SFTL,SFTC,ROL,ROR,ROLTC 饱和处理累加器内容 专用指令 C54x的40位桶形移位寄存器主要用于累加器或数据区操作数的定标。 在ALU运算前,对来自数据存储器的操作数或者累加器的值进行预定标 执行累加器的值的一个逻辑或算术运算 对累加器的值进行归一化处理 对存储到数据存储器之前的累加器的值进行定标 它能将输入数据进行0-31位的左移和0-16位的右移。所移动的位数可由ST1中的ASM或被指定的暂存器T决定。 ADD A,-4,B ;累加器A右移4位后加到累加器B ADD A,ASM,B ;累加器A按ASM规定的移位数移位后加到累加器B NORM A ;按T寄存器中的数值对累
7、加器归一化MSW/LSW写选择数据总线DB15-DB0数据总线CB15-CB0数据总线EB15-EB0桶形移位(-16至31)符号控制T寄存器:1631ASM(4-0):-1615指令寄存器立即数:-16至15,或者0至15累加器A累加器B C54x的MAC是由乘法器、加法器、符号控制、小数控制、零检测器、舍入器、饱和逻辑和暂存器几个部分组成 。 MAC具有强大的乘法-累加运算功能,可在一个流水线周期内完成1次乘法运算和1次加法运算。在数字滤波以及自相关等运算中,使用MAC可以大大提高系统的运算速度。 举例 MPY #1234H,A ;XM来自于T,YM来自于DB MPYA B ;XM来自于T
8、,YM来自于A MACP *AR2,pmad,A ;XM来自于DB,YM来自于PBDSP Requires Multiply and Accumulate来自累加器A来自累加器BCB数据总线:CB15-CB0DB数据总线:DB15-DB0PB程序总线:PB15-PB0符号控制符号控制乘法器(1717)加法器(40)T寄存器去自累加器A和B C54x的选择、比较、存储单元(CSSU)是一个特殊用途的硬件电路,专门用来完成Viterbi算法中的加法/比较/选择(ACS)操作。 从累加器(32bit)选择出较大的字(16bit)并存储在数据存储器中 CCS单元由比较电路COMP、状态转移寄存器TRN
9、和状态比较寄存器TC组成。 举例 DADST Lmen,dst ;Lmem(31至16)+Tdst(39至16), ;Lmem(15至0)-Tdst(15至0)来自累加器B来自累加器A来自桶形移位器比较、选择和存储单元数据总线:EB15-EB0MSW/LSW选择器 指数编码器是一个在单周期内完成EXP指令的专用硬件,其结构如图2.8所示。该指令获得累加器中的指数值并以二进制补码的形式(-8至31)把它存储到T中。为消除多余符号位而将累加器中的数值左移,其左移的位数和累加器指数值冗于符号位-8有关,当累加器的值超过32位时,这个结果为负数。 举例 EXP A ; T把累加器A的指数T ST T,
10、EXPONENT ;保存指数(T)到数据存储区 NORM A ;归一化寄存器A,依靠T的值移动累加器A的值来自累加器A来自累加器B指数编码器(EXP encoder)到T寄存器状态寄存器0(ST0)状态寄存器1(ST1)处理器工作模式状态寄存器(PMST)ST0和ST1包含各种工作条件和模式的状态;PMST包含存储器设置状态和控制信息。由于三个寄存器都是存储器映射的,他们都能存储到数据存储器或从数据存储器中获得。它们也能用子程序或中断服务子程序(ISR)保存或恢复。 状态寄存器(ST0、ST1)寄存器ST0、ST1的每一位都可以使用SSBX、RSBX指令进行置位或者清零。例如,可以使用SSBX
11、1,SXM指令对符号扩展模式进行设置,或者使用RSBX 1,SXM指令进行复位等。ARP、DP和ASM位可以利用LD指令使用短立即操作数进行加载。ASM和DP也可以利用LD指令使用数据存储器的值进行加载。处理器工作模式状态寄存器(PMST)可以利用存储器映射寄存器指令如STM对PMST寄存器进行加载。 C54x系列DSP的总线结构是由8条16位总线构成(4条程序/数据总线和4条地址总线)。 程序总线PB:传送来自程序存储器的指令和立即数。 数据总线CB、DB、EB:连接各个功能单元,如CPU、数据地址产生逻辑、程序地址产生逻辑、片内外设和数据存储器。CB、DB传送来自数据存储器被读取的立即数,
12、EB传送被写到存储器去的数据。 地址总线PAB、CAB、DAB、EAB传送执行指令所需要的地址。 总线结构图:总线结构图:Program A/D Bus (P)Data Read A/D Bus (D)Data Read A/D Bus (C)Data Write A/D Bus (E)ExtlMemI/FADInternalMemoryExternalMemoryExternal: 1 access / cycleup to 8M words programInternal: Up to 4 accesses / cycle 2.3.1普通存储器的概念 ROM和RAM 存储器的计算 通常来说
13、,存储器的容量是和它的地址线和数据线有关的。在地址线、数据线不复用的情况下,比如10根地址线8根数据线组成的存储器,通常的存储容量就是8bit,即寻址空间为1024,存储容量为1K字节;又如16根地址线16根数据线组成的存储器,通常的存储容量就是16bit,即寻址空间为8K,存储容量为8K字 C54x共有192K字的可寻址存储空间。其存储空间可分为三部分 64*2K BYTE的程序存储器的程序存储器 64*2K BYTE的数据存储器的数据存储器 64*2K BYTE的的IO空间空间 片内存储器片内存储器,片外存储器片外存储器 所有所有C54X DSP片内都有随机存储器片内都有随机存储器RAM和
14、只读和只读存储器存储器ROM. SRAM,DARAM 在在C54x系列芯片中,不同型号的芯片其内部存储器的配置是不同的 大多数C54x系列器件对外部程序存储器的寻址范围可为64K字,片内ROM、双访问RAM(DRAM)、单访问RAM(SARAM)、双路分享RAM等都可以通过软件设置映射到程序存储空间。 当存储单元被映射到程序空间时,如果寻址范围在片内存储器中,C54x器件能自动对片内访问,如果程序地址产生单元(PAGEN)产生的地址在片外,C54x器件能自动对片外进行访问。 程序存储器的配置 MP/MC、OVLY位决定哪些片内存储器属于程序空间。 当复位时,MP/MC管脚的逻辑电平被传输至PM
15、ST寄存器中的MP/MC位。MP/MC的值决定片内ROM的设置: MP/MC=1,C54x器件被设置成微处理器模式,片内ROM不启动 MP/MC=0,C54x器件被设置成微计算机模式,片内ROM启动 MP/MC管脚的值仅仅在复位的时候被采样,用户可以通过软件的方式对PMST寄存器中MP/MC位进行置位和清零。地址第0页程序存储器地址第0页程序存储器地址数据存储器0000H007FH保留(OVLY=1)外部使用(OVLY=0)0000H007FH保留(OVLY=1)外部(OVLY=0)0000H005FH存储器映射寄存器0060H007FHScratch-PadRAM0080H7FFFH片内DA
16、AM0-3(OVLY=1)外部使用(OVLY=0)0080H7FFFH片内DARAM0-3(OVLY=1)外部使用(OVLY=0)0080H7FFFH片内DARAM0-3(32K16位)8000H0FF7FH外部使用8000H0BFFFH外部使用8000H0FFFFH片内DARAM4-7(DROM=1)或者片外(DROM=0)C000H0FEFFH片内ROM(4K16位)0FF80H0FFFFH中断(片外)0FF00H0FF7FH保留0FF80H0FFFFH中断(片内)MP/MC=1微处理器模式MP/MC=0微计算机模式 程序存储器的分页扩展 VC5416有64K字数据存储空间、64K程序存储
17、空间、64K的I/O存储空间,可以采用分页的方式扩展程序存储空间至8192K字。可以用CPU状态寄存器PMST中MP/MC、OVLY、DROM位对存储空间进行设置分配和分页复用。当采用分页复用时,需要用到一个额外的存储器映射寄存器(程序计数器扩展寄存器XPC)。 扩展的程序存储器映射 扩展的程序存储器映射(续) 片内ROM的组成 片内ROM是被分成块的形式来提高运行效率的。例如用户可以从ROM的一个块里去获取指令而不需要从整个ROM中去获取指令。 根据具体器件,ROM可以被组成成2K、4K、8K大小的块。对于2K-ROM,典型的ROM块为2K;对于4K-ROM、28K-ROM,典型的ROM块是
18、4K;对于16K-ROM,典型的ROM块大小为8K。 程序存储器地址映射 当器件复位时,复位和中断向量都被映射到程序存储空间起始地址为FF80H的128字页 片内ROM的128字空间是被芯片保留的,应用代码不可以写到程序空间FF00H-FF7FH的128字空间 片内ROM内容 C54x器件提供了各种ROM尺寸(2K字、4K字、16K字、28K字、48K字)。片内ROM引导区2K字(F800H-FFFFH)范围内一般包含下列内容,具体型号内容可以见相应芯片文档。 自举加载程序,可从串口、外部存储器、I/O端口、主机接口加载。 256字律扩展表 256字A律扩展表 256正弦函数查值表 中断向量表
19、用户代码保留中断向量表自举引导程序256字律扩展表256字A律扩展表256正弦函数查值表保留中断向量表 C54x的数据存储器容量可达64K字。除了双访问RAM(DARAM)、单访问RAM(SARAM)外,还可以通过软件设置把片内ROM映射到数据空间。 数据存储空间设置 数据存储空间可以设置成片内的也可以设置成片外的。片内DARAM都被映射到数据存储空间。对于一些C54x器件,用户可以通过由PMST寄存器中的DROM位把部分片内ROM映射到数据空间。这部分片内ROM既可以数据空间(DROM=1)也可以在程序空间(MP/MC=0)。复位时,处理器将DROM清零。 片内RAM组成 为了提高性能,片内
20、RAM也被分为块结构存储器映射寄存器64K字数据存储空间中包括芯片的存储器映射寄存器,存储器映射寄存器存放在数据0页(数据存储空间地址为0000H-0070H)。可无等待访问的CPU寄存器。 片内外设的控制和数据寄存器,这些寄存器存放在0020H-005FH中,并有双向外设总线连接 C54x DSP除了程序存储空间和数据存储空间外,还提供I/O存储空间。I/O存储空间64K字寻址范围(0000H-FFFFH),仅仅存在片外。芯片通过2条指令PORTR、PORTW来访问这个空间。访问时,读时序和读程序存储空间、数据存储空间不同,它是访问独立的I/O映射设备而不是存储器。 I/O空间还有两个专用I
21、/O管脚BIO和XF。分支转移控制输入引脚BIO用来监控外围设备,决定分支转移的去向,以替代中断,不干扰对时间要求苛刻的循环。外部标志输出引脚XF可以向外部设备发信号,以控制外部设备工作。软件可编程等待状态发生器可编程分区转换逻辑1个主机接口HPI3个多通道缓冲串行口McBSPs1个硬件定时器带锁相环的时钟发生器PLLDMA控制器 软件可编程等待状态发生器可以延长外部总线访问时间到14个机器周期。如果器件需要的总线延长时间超过14个机器周期,则可通过硬件外部接口的READY管脚来处理。当所有的外部访问被设置成0个等待状态时,连接到等待状态发生器的时钟被自动禁止。禁止等待状态发生的时钟可减少功耗
22、 可编程分区转换逻辑允许器件在外部存储器分区之间转换时不需要使用额外的等待状态。在程序空间或数据空间内,分区转换逻辑在访问通过32K字存储块边界时,自动插入一个周期。C54x系列DSP主机接口用来和其他主设备或处理器通信。通信在C54x DSP和主设备之间通过C54x DSP的片内存储器进行,片内存储器被主机和C54x DSP访问 HPI的工作模式 共用访问模式SAM:主机访问模式HOM:HPI的种类 8位标准HPI88位增强型HPI-816位增强型HPI-16 标准同步串口SP 带缓冲的串行口BSP 时分复用串口TDM 多通道缓冲串口McBSP多通道缓冲串口McBSP多通道缓冲串行口McBS
23、P是基于标准同步串行口的,允许直接与C54x/LC54x器件、编码设备或其他设备相连,它具有如下特点 全双工通信双缓冲数据寄存器,允许连续数据流独立的接收/发送时钟和帧信号支持T1/E1、MVIP、ST-BUS、IOM-2、AC97、IIS、SPI和一般的串行外设高达128个通道的多通道传输包括8、12、16、20、24、32位的宽范围数据位选择律和A律压缩对发送/接收数据时钟和帧同步信号极性可编程内部时钟和帧信号可编程C54x片内16位定时器是根据每个时钟自减,当定时器的计数器自减到0时,一个定时中断就产生了。定时器能被停止、重新启动、复位,或通过指定状态位进行禁止运行。 定时器寄存器组成定
24、时器寄存器TIM:此寄存器被PRD寄存器的值加载,并随计数减少。定时器周期寄存器PRD:此寄存器提供TIM数据加载。定时器控制寄存器TCR:此寄存器是定时器的控制和状态寄存器, 定时器公式 预标定器PSC根据CPU提供的时钟,每来一个时钟自减1,当PSC的值减少到0时,TDDR的内容加载到PSC(当系统复位(RESET输入信号有效)或定时器单独复位(TRB有效)时,TDDR的内容也加载到PSC);TIM根据预标定器PSC提供的时钟,每来一个预标定PSC的输出时钟减1,当TIM减数到0后,PRD中的内容自动加载到TIM(当系统复位或定时器单独复位时,PRD的内容也加载到TIM中),同时 TIM会
25、产生一个定时器中断TINE信号,该信号被送到CPU和定时器输出TOUT管脚。 由此,定时器的中断周期。 11PRDTDDRCLKTTT C54x时钟发生器由内部振荡器和锁相环电路构成,可通过晶振或外部时钟驱动。锁相环具有频率放大和时钟信号提纯的作用。利用PLL可以对时钟频率进行锁定、为芯片提供高稳定度的时钟信号,对外部时钟可以进行倍频,使外部时钟的周期低于CPU机器周期,以降低因高速开关时钟引起的高频噪声。 当前锁相环电路有两种不同的配置方式 一些器件使用硬件配置PLL电路, 另外一些采用软件编程的方式进行配置 硬件配置PLL模式选择管脚时钟模式CLKMD1CLKMD2CLKMD3选择1选择2
26、000外部时钟源,PLL3外部时钟源,PLL5110外部时钟源,PLL2外部时钟源,PLL4100内部振荡器,PLL3内部振荡器,PLL5010外部时钟源,PLL1.5外部时钟源,PLL4.5001外部时钟源,频率除以2外部时钟源,频率除以2111内部振荡器,频率除以2内部振荡器,频率除以2101外部时钟源,PLL1外部时钟源,PLL1011停止模式停止模式软件配置PLL软件可编程PLL非常灵活,它包括提供时钟的各种乘法系数,能够直接使能和禁止PLL。它可以锁定定时器,用来延迟转换PLL的时钟方式,直到锁定为止。软件可编程PLL可以通过两种模式来配置时钟输出PLL模式:输入时钟CLKIN以31个系数倍频,倍频范围为0.25至15。DIV模式:输入时钟被分频,分频范围为2或4。当采用DIV模式时,所有的模拟电路、包括PLL电路是被禁止的以达到减少功耗的目的。 器件直接内存访问(The device direct memory access,DMA)控制器可以不在CPU干涉的情况下直接进行存储器映射内的两点间的直接传输。DMA允许在CPU运行的情况下进行内部存储器、片内外设、外部器件之间进行数据移动。它有6个独立的可编程通道,允许6个不同的内容进行DMA操作。DMA控制器也提供来自主机接口(HPI-8、HPI-16
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026东方电气集团东方锅炉股份有限公司社会招聘6人(四川)笔试备考试题及答案解析
- 2026安徽宣城中学校园招聘7人考试备考题库及答案解析
- 2026第一季度四川雅安市属监管企业员工招聘11人考试备考试题及答案解析
- 2026中原科技学院许昌校区招聘240人笔试模拟试题及答案解析
- 2026春季江西新余二中招聘临聘教师1人考试备考题库及答案解析
- 清正廉洁演讲稿教学解析
- 2026年春季浙江衢州市属国企人力资源交流大会招聘76人考试备考题库及答案解析
- 2026年武汉轻工大学继续教育学院公开招聘非事业编制工作人员考试备考试题及答案解析
- 2026四川大学华西医院队列研究中心管理办公室项目制人员招聘3人考试备考试题及答案解析
- 通江县人民医院2026年公开招聘员额人员(31人)考试备考题库及答案解析
- 2025至2030中国智慧港口建设现状及自动化技术应用分析报告
- 世界最大的黄土堆积区-黄土高原
- 2025年软件项目经理岗位招聘面试参考试题及参考答案
- 2026年高考化学专项复习讲义:化学用语的正误判断(含详解)
- 餐饮店火灾事故
- 传染性疾病控制副高考试真题及答案
- 现场提升活动方案
- 混凝土环保管理制度
- 个人投资公司合同标准文本
- 医保管理工作制度96012
- 《南方油料饼粕田间液态生物发酵与施用技术规程》征求意见稿
评论
0/150
提交评论