DSP复习重点
更新时间:2024-03-04 12:40:01 阅读量: 综合文库 文档下载
- dsp复位推荐度:
- 相关推荐
DSP复习总结
1.指令中各种寻址方式
’C54x芯片的寻址方式可以分为两类: ● 数据寻址 ● 程序寻址
’C54x有7种基本的数据寻址方式:
寻址方式 用 途 举 例 指令含义 立即寻址 主要用于初始化 LD #10,A 立即数10 给A
绝对寻址 利用16位地址寻址存储单元 STL A,*(y) 将AL内容存入y所在的存储单元
累加器寻址 将累加器中的内容作为地址 READA x 将A的内容作为地址读程序存储器,并存入x存储单元
直接寻址 利用数据页指针和堆栈指针寻址 LD @x,A (DP+x的低7位地址) 给A
间接寻址 利用辅助寄存器作为地址指针 LD *AR1,A ((AR1))给A 存储器映像
寄存器寻址 快速寻址存储器映象寄存器 LDM ST1,B (ST1) 给? B 堆栈寻址 压入/弹出数据存储器和存储器映像寄存器MMRPSHM AG (SP)-1 ? SP,(AG) ? (SP)
部分寻址缩略语
缩略语 含 义 Smem 16位单寻址操作数
Xmem 16位双寻址操作数,用于双操作数或部分单操作数指令,从DB数据总线上读取
Ymem 16位双寻址操作数,用于双操作数指令,从CB数据总线上读取 dmad 16位立即数:数据存储器地址(0~65 535) pmad 16位立即数:程序存储器地址(0~65 535) PA 16位立即数:I/O口地址(0~65 535) src 源累加器(A或B) dst 目的累加器(A或B) 1k 16位长立即数
2.DSP芯片的特点
1.采用哈佛结构
DSP芯片普遍采用数据总线和程序总线分离的哈佛结构或改进的哈佛结构,比传统处理器的冯·诺伊曼结构有更快的指令执行速度。 2.采用多总线结构
DSP芯片都采用多总线结构,可同时进行取指令和多个数据存取操作,并由辅助寄存器自动增减地址进行寻址,使CPU在一个机器周期内可多次对程序空间和
数据空间进行访问,大大地提高了DSP的运行速度。 3. 采用流水线技术
利用这种流水线结构,加上执行重复操作,就能保证在单指令周期内完成数字信号处理中用得最多的乘法—累加运算。 4. 配有专用的硬件乘法-累加器 为了适应数字信号处理的需要,当前的DSP芯片都配有专用的硬件乘法-累加器,可在一个周期内完成一次乘法和一次累加操作,从而可实现数据的乘法-累加操作。
5.具有特殊的DSP指令
为了满足数字信号处理的需要,在DSP的指令系统中,设计了一些完成特殊功能的指令。
6. 快速的指令周期
由于采用哈佛结构、流水线操作、专用的硬件乘法器、特殊的指令以及集成电路的优化设计,使指令周期可在20ns以下。 7. 硬件配置强
新一代的DSP芯片具有较强的接口功能,除了具有串行口、定时器、主机接口(HPI)、DMA控制器、软件可编程等待状态发生器等片内外设外,还配有中断处理器、PLL、片内存储器、测试接口等单元电路,可以方便地构成一个嵌入式自封闭控制的处理系统。 8. 支持多处理器结构
为了满足多处理器系统的设计,许多DSP芯片都采用支持多处理器的结构。如:TMS320C40提供了6个用于处理器间高速通信的32位专用通信接口,使处理器之间可直接对通,应用灵活、使用方便; 9. 省电管理和低功耗
DSP功耗一般为0.5~4W,若采用低功耗技术可使功耗降到0.25W,可用电池供电,适用于便携式数字终端设备。
3 .DSP为了降低功耗采取了哪些措施
1、减少外围电路 2、缩短指令周期 3、高度集成化
4、芯片内部采用多总线、多处理单元和多流水线结构
4.各种指令
1、ADD
操作码 源操作数 指令格式
ADD Smem,src Smem ADD Smem,TS,src ADD Smem,16,src[,dst] ADD Smem,[,SHIFT],src[,dst]
ADD Xmem,SHIFT,src Xmem ADD Xmem,Ymem,dst ADD
ADD #lk[,SHFT],src[,dst] #lk
ADD #lk,16,src[,dst]
Src ADD src,[,SHIFT][,dst] ADD src,ASM[,dst]
2.SUB指令就是将上述的ADD改为SUB即可 3.乘法指令 MPY Smem,dst Smem MPY Smem,#lk,dst
MPY Xmem MPY Xmem,Ymem,dst
#lk MPY #lk,dst
4. 乘法-累加和乘法-减法指令
Smem MAC Smem,src
MAC Smem,#lk,src[,dst]
MAC Xmem MAC Xmem,Ymem,src[,dst]
#lk MAC #lk,src[,dst]
5. 条件存储指令
CMPS src,Smem
功能:若src(31~16)> src(15~0),则Smem=src(31~16); 若src(31~16)?src(15~0),则Smem=src(15~0)。 即比较累加器的高、低位,并存储最大值。
6.LD指令 7. ST指令
ST T , Smem 功能:Smem = T 说明:累加器值存入长字存储单元
8. STL指令
STL src , Smem 功能:Smem = src(15-0) 说明:累加器低阶位存入存储单元
9. STH指令
STH src , Smem 功能:Smem = src(31-16) 说明:累加器高阶位存入存储单元 STH src ,ASM ,Smem 功能:Smem = src(31-16)<
STH src ,SHFT ,Xmem 功能:Xmem = src(31-16)< 10. STLM指令 STLM src , MMR :功能: MMR = src(15-0) 说明:累加器低阶位存入MMR 11. STM指令 STM #lk , MMR 功能:MMR = #lk 说明:长立即数存入MMR 12.MAX指令 MAX dst 功能:st = max(A,B) 说明:求A和B的最大值 13.MIN指令 MIN dst 功能:dst = min(A,B) 说明:求A和B的最小值 14.AND指令 AND Smem , src 功能:src = src&Smem 说明:源操作数与累加器与运算 AND #lk[,SHFT],src[,dst] 功能:dst = srclk< AND #lk,16,src[,dst] 功能:dst = srclk<<16 说明:长立即数左移16位与累加器与运算 AND src[,SHIFT][,dst] 功能:dst=dst &src< 15.B指令 B[D] pmad 功能说明:将pmad指定的程序存储器地址赋给PC,实现分支转移。 注 意: 若指令带后缀D,则为延迟方式,紧随该指令的两条单字指令或一条双字指令先被取出执行,然后程序再转移。该指令不能被循环执行。 16.BANZ指令 指令格式: BANZ[D] pmad,Sind 操 作 数: Sind——单间接寻址操作数,pmad——程序存储器地址 指令功能: If ((ARx) ≠ 0) Then pmad→PC Else (PC)+2→PC 功能说明: 若当前ARx≠0,则pmad的值赋给PC,否则,PC值加2。 注 意: 带后缀D为延迟方式。指令不能循环执行。 17.程序控制指令CALA[D] 指令格式: CALA[D] src 功能说明:若非延时,(SP)-1→SP (PC)+1→TOS (src(15~0))→PC 若延时, (SP)-1→SP (PC)+3→TOS (src(15~0))→PC 18.POPD指令 指令格式:POPD Smem 指令功能:(TOS)→Smem (SP)+1→SP 功能说明:由SP寻址的数据存储器单元中的内容复制到由Smem确定的数据存 储器单元中。然后SP加1。 19.POPM指令 指令格式: POPM MMR 操 作 数: MMR——存储器映像寄存器 指令功能: (TOS)→MMR (SP)+1→SP 功能说明:由SP寻址的数据存储器单元中的内容复制到MMR中,然后修改SP。 20.PSHD指令 指令格式: PSHD Smem 指令功能:(SP)-1→SP Smem →TOS 功能说明:SP减1操作后将存储单元Smem的内容压入SP指向的数据存储单元。 21.SSBX指令 指令格式: SSBX N,SBIT 操 作 数:N——指明被修改的状态寄存器, N=0时,为ST0;N=1时,为ST1 SBIT——表示状态寄存器被修改的位数,取值:0~15 指令功能: 1→STN(SBIT) 功能说明:对状态寄存器ST0和ST1的特定位置1。 22.RPT指令 指令格式:RPT #lk 功能说明:重复单次,RC = #lk,重复执行下条指令 #lk +1次 23.RPTB指令 指令格式:RPTB[D] pmad 功能说明:块重复,RSA = PC+2[4],REA = pmad - 1,重复执行以下程序块pmad – 1次 24.ROL指令 指令格式: ROL src 操作数src:累加器A或B 指令功能: 累加器src与进位位C循环左移一位。 执行过程:C → src(0) ; C的值移入src的最低位 src(30~0)→ src(31~1); src左移一位 src(31)→ C; src的最高位移入C 0 → src(39~32) ; src的保护位清0 25.PSHM指令 指令格式:PSHM MMR ;将MMR中的数据压入堆栈 指令功能:(SP)-1→SP MMR →TOS 功能说明:SP减1操作后,将MMR的内容压入SP指向的数据存储单元。 5.链接器中MEMORY和SECTIONS命令的作用 MEMORY伪指令——用来定义目标系统的存储器配置空间,包括对存储器各部分命名,以及规定它们的起始地址和长度。 SECTIONS伪指令——用来指定链接器将输入段组合成输出段方式,以及输出段在存储器中的位置,也可用于指定子段。 6.累加器的特点 累加器A和B ’C54x芯片有两个独立的40位累加器A和B,可以作为ALU或MAC的目标寄存器,存放运算结果,也可以作为ALU或MAC的一个输入。 在执行并行指令(LD||MAC)和一些特殊指令(MIN和MAX)时,两个累加器中的一个用于装载数据,而另一个用于完成运算。 累加器结构 7.DSP中数据的分类 根据芯片工作的数据格式,按其精度或动态范围,可将通用DSP划分为定点DSP和浮点DSP两类。 若数据以定点格式工作的——定点DSP芯片。 若数据以浮点格式工作的——浮点DSP芯片。 8.DSP总线的特点 内部总线结构 由一组程序总线、三组数据总线和四组地址总线组成,可在一个指令周期内产生两个数据存储地址,实现流水线并行数据处理。 TMS320C54x的结构是以8组16位总线为核心,形成了支持高速指令执行的硬件基础。 1组程序总线PB 总线结构 3组数据总线CB、DB、EB 4组地址总线PAB、CAB、DAB、EAB 9.C54 X DSP存储器的特点 ’C54x共有192K字的存储空间,分成3个相互独立可选择的存储空间: 程序存储空间:用来存放要执行的指令和指令执行中所需要的系数表(数学用表); 数据存储空间:用来存放执行指令所需要的数据; I/O存储空间:用来提供与外部存储器映射的接口,可以作为外部数据存储空间使用。 10.PC指针的特点和作用 程序计数器是一个16位计数器,用来保存某个内部或外部程序存储器的地址。 当进行复位操作时,将地址FF80H加载PC; 当程序是顺序执行时,则PC被增量加载,即PC=PC+1; 当分支转移发生时,用紧跟在分支转移指后面的16位立即数加载PC; 当执行块重复指令时,若PC+1等于块重复结束地址REA+1,则将块重复起始地址RSA加载PC; 当执行子程序调用时,将PC+2的值压入堆栈,然后将调用指令下一个长立即数加载至PC; 当执行返回指令时,将压入堆栈的值从栈顶取出,加载到PC,回到原来的程序处继续执行; 当进行硬件中断或软件中断时,将PC值压入堆栈,并将适当的中断向量地址加载PC; 当执行中断返回时,将压入堆栈的值从栈顶取出,加载到PC,继续执行被中断了的程序。
正在阅读:
DSP复习重点03-04
某市城市养老机构建设状况调研报告01-10
做年糕作文400字06-19
2019最新(沪教版)二年级数学上册教案乘一乘、填一填-精品教案03-12
21世纪的制造技术_梁福军07-21
实验报告5-数据处理2010(二)08-30
考评规则09-30
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 复习
- 重点
- DSP
- 聘任书格式
- 穴位养生 中医教你按穴小技巧
- 苏教版四年级数学下册《期末检测试卷》(附答案)
- 金陵科技学院物联网工程导论作业题集
- 某物业公司电梯安全运行管理制度
- 世界因你我而精彩
- 设备检修安全管理规定
- 党员演讲稿:党旗为我指方向 我为党旗争光辉
- 2008年小学毕业水平检测数学科模拟试卷(二)
- 牛津小学英语5B教学计划 - 0
- 浙江省杭州市2017-2018学年高三上学期期末物理试题(含答案)
- 环境学概论复习资料总结
- 人力资源管理师四级职业道德试题汇总
- 高三生不同阶段的心态变化及应对方法
- 高一数学必修1期末备考(集合)2010.1.7
- 江苏XXX公司《初步业务解决方案V1.0》
- 金融会计课后练习题答案
- 中班上学期角色游戏计划(2)
- 声波衰减系数测量实验报告 - 图文
- 代理服务器CCProxy客户端软件代理设置