学习资料摘要:一、TMS320C54X的指令集54X的指令可以分为四个大类:算术指令,逻辑指令,程序控制指令,读取和存储指令1.算术指令包括了加法指令(ADD...),减法指令(SUB...),乘法指令(MPY...),乘加指令(MAC...)和乘减指令(MAS...),32位操作数指令(DADD,DSUB...)和一些专用指令(ABDST,FIRS,SQDST...)。其中大部分指令都只需要一个指令周期,只有个别指令需要2-3个指令周期。2.逻辑指令包括了与指令(AND...),或指令(OR ...),异或指令(XOR...),移位指令(ROL...)和测试指令(BITF...)。根据操作数的不同,这些指令需要1-2个指令周期。3.程序控制指令包括了转移指令(B,BC...),调用指令(CALL...),中断指令(INTR,TRAP),返回指令(RET...),重复指令(RPT ...),堆栈操作指令(FRAME,POPD...)和其它程序控制指令(IDLE, NOP...)。这些指令根据情况不同分别需要1-6个指令周期。4.读取和存储指令包括了读取指令(LD...),存储指令(ST...),条件存储指令(CMPS, SACCD...),并行的读取和乘法指令(LD || MAC...),并行的读取和存储指令(ST || LD...),并行的存储和乘法指令(ST || MAC...),并行的读取和加减指令(LD || ADD,LD || SUB)以及其它读取类型和存储类型指令(MVDD,PORTW, READA...)。这些指令根据情况不同分别需要1-5个指令周期。二、TMS320C54X的体系结构1. C54X的结构特点多总线结构,三组16-bit数据总线和一组程序总线 40-bit算术逻辑单元(ALU),包括一个40-bit的桶形移位器和两个独立的40-bit累加器 17x17-bit并行乘法器,连接一个40-bit的专用加法器, 可用来进行非流水单周期乘/加(MAC)运算 比较、选择和存储单元(CSSU)用于Viterbi运算器的加/比较选择 指数编码器在一个周期里计算一个40-bit累加器值的指数值 两个地址发生器中有八个辅助寄存器和两个辅助寄存器算术单元(ARAUS) 数据总线具有总线保持特性 C548,549,5402,5410等具有扩展寻址方式,最大可寻址扩展程序空间为8Mx16-bit C54X可访问的存储器空间最大可为192Kx16-bit(64K程序存储器,64K数据存储器和64KI/O存储器) 支持单指令循环和块循环 存储块移动指令提供了更好的程序和数据管理 支持32-bit长操作数指令,支持两个或三个操作数读指令,支持并行存储和并行装入的算术指令,支持条件存储指令及中断快速返回指令 软件可编程等待状态发生器和可编程的存储单元转换 连接内部振荡器或外部时钟源的锁相环(PLL)发生器 支持8-或16-bit传送的全双工串口 时分多路(TDM)串口 缓冲串口(BSP) McBSPs串口 8/16-bit并行主机接口(HPI) 一个16-bit定时器 外部I/O(XIO)关闭控制,禁止外部数据、地址和控制信号 片内基于扫描的仿真逻辑,JTAG边界扫描逻辑(IEEE1149.1) 单周期定点指令执行时间10-25ns 三、TMS320C54X的指令系统C54x寻址方式 ‘C54x特殊寻址方式说明 ‘C54x指令集 ‘C54x特殊指令使用说明 ……