实时数字信号处理计算单元课件.pptVIP

  • 2
  • 0
  • 约1.27万字
  • 约 48页
  • 2024-07-17 发布于四川
  • 举报

实时数字信号处理第2章计算单元

概述?每个内核都有6个计算单元–两个算术/逻辑单元(ALU)–两个乘/累加器(乘法器)单元–一个移位器–一套视频ALU?提供定点操作?处理不同类型的操作?数据移入和移出计算单元是通过数据寄存器文件的?数据总线?高级并行机制利用多功能指令?数据地址产生

寄存器文件?3个寄存器组–数据寄存器文件为计算单元从数据总线接收操作数并存储计算结果–指针寄存器文件含有寻址操作的指针–DAG寄存器是专用于管理DSP操作中的零开销循环缓冲的寄存器。数据寄存器数据地址产生器(DAG)R0R1R2R3R4R5R6R7R0.HR0.LR1.HR1.LR2.HR2.LR3.HR3.LR4.HR4.LR5.HR5.LR6.HR6.LR7.HR7.LI0L0B0M0P0I1L1B1M1P1I2L2B2M2P2I3L3B3M3P3P4P5SPFPA0A1A0.XA0.WA1.XA1.W

数据寄存器文件?包含8个寄存器–每个32位宽–一对独立的16位寄存器:低半部分和高半部分?3条独立总线连接寄存器文件和L1数据存储器–2条读、1条写–32位宽–每个周期内搬移多达4个16位的有效数据?32-bit和16-bit操作–R2=R1+R2;/*32-bitaddition*/–R2.L=R1.H*R0.L;/*16-bitmultiplication*/

累加寄存器?两个专有的40位的累加寄存器(A0和A1)的访问形式:–16位低半部分(An.L)、高半部分(An.H)–8位扩展(An.X)–低32位寄存器An.W–完全的40位结果寄存器(An)?指令操作–A0=A1;–A1.W=R7;/*40-bitmove*//*32-bitmove*/–A0.H=R5.H;/*16-bitmove*/–R6.H=A0.X;/*read8-bitvalueandsignextendto16bits*/

指针寄存器?通用地址指针寄存器,也称之为P寄存器–6个P寄存器文件P[5:0]?32位宽,主要用于地址计算?也可以在一组限定的算术操作集内用于一般的整数算术操作,譬如用作计数器,但不会影响到ASTAT寄存器的状态标志。–1个帧指针(FP)用于指向当前进程的活动记录–1个堆栈指针(SP)用来指向运行时堆栈中最近一次使用的位置

DAG寄存器组?DAG寄存器组用于寻址–I[3:0]包含索引地址–M[3:0]包含修改值–B[3:0]包含基地址–L[3:0]包含长度值–32位宽–I寄存器和B寄存器包含存储器8-bit字节地址–I寄存器含有一个有效地址,M寄存器含有用于在I寄存器上进行加或减的偏移值?任意的M寄存器可和任意的I寄存器关联,比如,I0可被M3修改–B寄存器和L寄存器定义循环缓冲,B寄存器存储缓冲的起始地址,L寄存器存储长度,按字节计。?L和B寄存器对是与对应的I寄存器相关联的,例如,L0和B0总是和I0相关联

寄存器文件指令汇总?符号的含义说明如下:–Allreg表示:R[7:0]、P[5:0]、SP、FP、I[3:0]、M[3:0]、B[3:0]、L[3:0]、A0.X、A0.W、A1.X、A1.W、ASTAT、RETS、RETI、RETX、RETN、RETE、LC[1:0]、LT[1:0]、LB[1:0]、USP、SEQSTAT、SYSCFG、CYCLES和CYCLES2–An表示ALU结果寄存器A0或A1之一–Dreg表示任一个数据寄存器文件寄存器–Sysreg表示系统寄存器ASTAT、SEQSTAT、SYSCFG、RETI、RETX、RETN、RETE或RETS、LC[1:0]、LT[1:0]、LB[1:0]、CYCLES和CYCLES2–Preg表示任一Pointer寄存器、FP或SP寄存器–Dreg_even表示R0、R2、R4或R6–Dreg_odd表示R1、R3、R5或R7

寄存器文件指令汇总?符号的含义说明如下:–DPreg表示任一数据寄存器文件寄存器或任一Pointer寄存器、FP或SP寄存器–Dreg_lo表示任一数据寄存器文件寄存器低16位–Dreg_hi表示任一数据寄存器文件寄存器高16位–An.L表示累加器An.W的低16位–An.H表示累加器An.W的高16位–Dreg_byte表示每一个数据寄存器的低8位–Option(X)表示符号扩展–Option(Z)表示零扩展–*指示这个标志可以置位或清零、依赖于指令的计算结果–**指示这个标志清零––指示无作用

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档