版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1《DSP原理与运动控制系统》自动化所:李叶松东二楼2192参考文献:WWW.TI.COMSPRU018DTMS320C1x/C2x/C2xx/C5xAssemblyLanguageToolsUser'sGuideSPRU160CTMS320F/C24xDSPControllersCPUandInstructionSetSPRU357CTMS320LF/LC240xADSPControllersSystemandPeripheralsSPRU424CTMS320DSPAlgorithmStandardDeveloper'sGuideSPRA701ASoftwareModularityStrategyforDigitalControlSystemsSPRU024ETMS320C2xC2xxC5xOptimizingCCompilerUser’sGuide3第一章DSP概述
第一节什么是DSP?第二节DSP芯片的特征
第三节DSP芯片的发展
第四节TI公司DSP芯片的简介
4第一节什么是DSP?模拟信号(AnalogSignals):在时域中,时间和幅值连续变化的信号,例如:声音、温度、压力等等数字信号(DigitalSignals):对模拟信号按一定的时间间隔进行采样,并将采样值进行量化,也即时间和幅值均为离散的信号数字信号处理(DigitalSignalProcessing):用数学方法对上述的数字信号进行处理,对信号进行变化或提取相应的信息5实时处理(Real-Time):数字信号处理与信号的输入和输出保持同步非实时处理(NonReal-Time):先对信号进行采样并存储,然后再对其进行处理数字信号处理(DigitalSignalProcessing):
用数学方法处理数字化了的模拟信号数字信号处理的特点:ØΣAi×Xi:乘加操作Ø高速实时:快速运算分析数字信号处理器(DigitalSignalProcessor):用于实时完成上述数字信号处理的微处理器
DSP:特指数字信号处理器6模拟信号量化采样数字信号数字信号处理实时处理非实时处理数字信号处理器数字信号处理(Digitalsignalprocessing)789第二节DSP芯片的特征
1硬件结构特点2软件特点10硬件结构的特点多总线:片内多条数据、地址和控制总线流水线执行:多个控制和运算部件并行工作硬件乘法器特殊片上外设:Ø软件插入等待电路(便于与慢速设备接口)Ø数字锁相电路PLL(有利系统稳定)丰富片上存储器类型:RAM、ROM、Flash等丰富片上外部:定时器、异步串口、同步串口、DMA控制器、HPI接口、A/D和通用I/O口等JTAG(JointTestActionGroup)标准测试接口(IEEE1149标准接口):便于对DSP作片上的在线仿真111213软件的特点
特殊指令:ØMAC(连乘加指令,单周期同时完成乘法和加法运算)
特殊寻址方式:Ø位倒序寻址(实现FFT快速倒序)Ø循环寻址
14第三节DSP芯片的发展
世界上第一个单片DSP芯片:1978年AMI公司发布的S2811(内部都没有单周期乘法器)。1980年,日本NEC公司:μPD7720是第一个具有乘法器的商用DSP芯片。最成功的DSP芯片:TI公司在1982年成功推出其第一代DSP芯片TMS32010系列。第二代DSP芯片TMS32020,第三代DSP芯片TMS320C30,第四代DSP芯片TMS320C40/C44,第五代DSP芯片TMS320C5X/C54X,第二代DSP芯片的改进型TMS320C2XX,集多片DSP芯片于一体的高性能DSP芯片TMS320C8X以及目前速度最快的第六代DSP芯片TMS320C62X/C67X等。
15TI将常用的DSP芯片归纳为三大系列,即:TMS320C2000系列(包括TMS320C2X/C2XX)、TMS320C5000系列(包括TMS320C5X/C54X/C55X)、TMS320C6000系列(TMS320C62X/C67X)。TI公司DSP市场份额占全世界份额近50%。第一个采用CMOS工艺的浮点DSP:Hitachi公司于1982年推出。1983年Fujitsu公司推出的MB8764,其指令周期为120ns,且具有双内部总线,从而使处理吞吐量发生了一个大的飞跃。而第一个高性能浮点DSP芯片应是AT&T公司于1984年推出的DSP32。
16Motorola公司1986年推出了定点处理器MC56001。1990年,推出了与IEEE浮点格式兼容的浮点DSP芯片MC96002。美国模拟器件公司(AnalogDevices,简称AD)在DSP芯片市场上也占有一定的份额,相继推出了一系列具有自己特点的DSP芯片,其定点DSP芯片有ADSP2101/2103/2105、ASDP2111/2115、ADSP2161/2162/2164以及ADSP2171/2181,浮点DSP芯片有ADSP21000/21020、ADSP21060/21062等。
17第四节TI公司DSP芯片的简介
18C2000系列DSP子系列
C2xx子系列:16位定点DSP、20MIPSØ代表器件:TMS320F206PZ
C24x子系列:16位定点DSP、20MIPSØ代表器件:TMS320F240
LF240x子系列:16位定点DSP、40MIPSØ代表器件:TMS320LF2407F28x子系列:32位定点/浮点DSP、150/300MIPSØ代表器件:TMS320F2812、TMS320F283351920212223第二章TMS320X240X结构第一节结构概述
第二节TMS320X240X系统结构和配置寄存器
第三节TMS320LF2407CPU控制器
24第一节结构概述采用高性能静态CMOS技术,供电电压3.3V,40MIPS执行速度,具有较高的实时处理能力。基于TMS320C2XXDSP的CPU内核,保证代码兼容性。片内高达32K字的FLASH程序存储器,高达2.5K字的数据/程序RAM(544字双存取DARAM,2K字的单存取RAM:SARAM)两个事件管理器模块EVA和EVB:包括2个16位Gtimer;8个16位PWM通道;3个捕获单元;片内光电编码器接口电路;事件管理器适合控制交流感应电机、无刷直流电机、开关磁阻电机、交流永磁同步电机、UPS电源等。
25可扩展的外部存储器(LF2407)总共192K;64K程序存储器,64K数据存储器,64KI/O寻址空间。10位16通道高速A/D转换器,最小转换时间375ns,多事件类型触发动作,序列器灵活管理看门狗定时模块(WDT)控制器局域网络(CAN)2.0B模块串行通讯接口(SCI)16位串行外设接口模块(SPI)基于锁相环的时钟发生器高达40个可单独编程或复用的通用输入/输出引脚(GPIO)5个外部中断(电机驱动保护、复位和外部中断)电源管理包括3种低功耗模式2627第二节TMS320X240X系统结构和配置寄存器
2.1系统结构2.2配置寄存器282.1系统结构292.2配置寄存器3031第三节TMS320X2407CPU控制器
3.1总线结构3.2输入定标器3.3乘法器3.4中央处理器(CALU)3.5辅助寄存器算术单元(ARAU)3.6状态寄存器(ST)323.1总线结构33PAB:程序空间地址总线PRDB:程序代码数据读取总线DRAB:数据空间地址读总线DWAB:数据空间地址写总线DRDB:数据空间数据读取总线DWEB:数据空间地址写入总线3435CPU结构的基本组成:程序存储器存取部件数据存储器访问部件处理器计算资源的控制部件外部设备访问的控制部件从CPU结构可以看出控制CPU硬件运行的指令系统的基本体系和基本特点:多功能并行处理、“嵌入位”控制信息硬件处理模式和信息流向(存在单周期处理“字长资源”限制)36373.2输入定标器38输入(16位数据):1、DRDB:存储器数据2、PRDB:表格数据输出(32位结果):CALU操作:左移0~16位控制:SXM位393.3乘法器40硬件乘法器:输入:TREG和数据(DRDB或PRDB)输出:32位PREG乘积定标器:输入:PREG;输出:CALU;控制:ST1.PM(00:不移位;01:左移1位;10:左移4位;11:带符号位右移6位)413.4中央处理器423.4中央处理器1中央算术逻辑单元2累加器3输出定标器431中央算术逻辑单元输入:一个总是来自于累加器;另一个来自于输入定标器或乘积定标器的输出。输出:累加器(ACC)操作:16位加/减;二进制逻辑运算;位测试、移位、桶形移位(和累加器配合)控制:SXM442累加器执行单个的移位或循环操作将CALU结果的高字或低字送至输出定标器产生或受控状态位:进位位C0:减借位;1:加进位溢出模式位OVM0:溢出不控制;1:饱和限制溢出标志位OV1:32位溢出标志;测试/控制位TC:根据被测试位的值,TC位0或1453输出定标器输入:累加器的32位结果输出:16位结果和数据总线相连操作:左移0~7位,最高位丢掉,最低位添0,ACC的结果不受影响463.5辅助寄存器单元47功能:提供灵活的数据空间间接寻址能力,辅助寄存器中的16位地址可以访问64K数据存储空间的任意单元。特点:在CALU操作的同时执行8个辅助寄存器上的无符号16位算术运算。操作1辅助寄存器值加/减1或一个变址值2辅助寄存器值加/减一个常数(ADRK/SBRK)3比较AR0和当前AR的值,结果传送至ST1.TC辅助功能:比较条件(CMPR)、暂存寄存器(LAR/SAR)、软件计数器由ST0.ARP(3位)指定的当前操作的AR。483.6状态寄存器49状态寄存器ST0DP(0~8位):数据页指针INTM(9):中断屏蔽位,0使能;1禁止。OVM(11):溢出模式OV(12):溢出状态保持位(复位或指令清除)ARP:辅助寄存器指针50状态寄存器ST1PM(0~1):乘积移位模式(SPM/LST)XF(4):XF引脚状态(复位时为1)C(9):进位位SXM(10):符号扩展模式位(复位时位1)TC(11):测试/控制标志位(BIT/BITT)CNF:片内DARAM配置位决定B0数据块的归属ARB:辅助寄存器指针缓冲器,旧的ARPARB51相关操作指令LSTLDPBITBITTCLRCSETCSPMMARSSTSAR52第三章TMS320X2407DSP系统资源与管理
第一节存储器与I/O空间第二节系统中断第三节程序控制第四节时钟域和节电模式53第一节存储器与I/O空间基本特点1寻址空间192K(PMDMI/O)2多总线并行操作3片上存储器:544字DARAM(B0B1B2)2K字SARAM(PMDM)32K字FLASH(PM)4FLASH编程:JTAG、SPISCI(由240XA器件上的BOOTROM控制)541.1程序存储器64K寻址空间,包括片上的的DARAM和FLASHEEPROM/ROM程序空间构造控制CNF位:0:256字映射到片内DARAM1:DARAMB0块映射到PMMP/MC引脚:0:微控制器模式,前32K空间在片内(0~0x7fff);后32K空间在片外;1:微处理器模式, 整个64K空间均在片外PON位(构造寄存器):0:2K字SARAM不被PM使用 1:2K字SARAM可以被PM使用
55561.2数据存储器64K寻址空间,包括3个片上数据块(B0B1B2)和外设寄存器映射;前32K在片上,后32K由外部寻址。寻址方式:直接寻址和间接寻址,采用直接寻址时,只能在128字的数据块内操作,所以必须定义页指针(包含512个页,0~511,当前页由ST0.DP确定)采用间接寻址时,可以对64K空间内的任意单元进行访问。注意不能访问数据存储空间上的非法地址空间(ILLEGALSPACE),否则会产生非法地址操作错误5758591.3I/O空间
64K寻址空间ROM型器件无I/O空间601.4控制引脚信号名信号描述
A(0:15)外部16位单向地址总线.D(0:15)外部16位双向数据总线.PSDSIS程序、数据、I/O空间片选信号
STRB外部存储空间片选信号WERD写/读选通信号R/W读/写确认信号MP/MC微处理器/微控制器模式选择信VISOE外部寻址可视输出使能ENA144外部寻址使能控制(内部下拉)611.5读时序62写时序63DSP译码逻辑举例:输入信号
A2,/*A2*/A3,/*A3*/A15,/*A15*/Rw,/*R/W-*/!We,/*WE-*/!Rd,/*RD-*/!Ps,/*PS-*/!Ds,/*DS-*/!Is,/*IS-*/!Strb,/*STRB-*/!WR;/*WR-*/输出!Ramoe,/*SRAMOuputEnable*/!Buffen;/*I/OBufferEnable*/!Ramwe,/*SRAMWriteEnable*/!Dac,/*DACRegisterWrite*/!Xfer,/*DACOutputTransfer*/!Leds,/*LEDWriteStrobe*/!Switches;/*SwitchReadStrobe*/64/*DefineAddressRanges*/#defineDAC(Is&!A15&!A3&!A2)#defineXFER(Is&!A15&!A3&A2)#defineSWITCHES(Is&!A15&A3&!A2)#defineLEDS(Is&!A15&A3&A2)/*equations*/Ramoe=((Ds|Ps)&Rw&Strb);Ramwe=((Ds|Ps)&We);Dac=(DAC&We);Xfer=(XFER&We);Switches=(SWITCHES&Rw&Strb);Leds=(LEDS&We);Buffen=((DAC|LEDS|SWITCHES)&Strb);65等待状态控制寄存器PSWSDSWSISWS:加入0~7个等待状态BVIS:内部总线操作是否对外部可视0001:不可视;10:内部数据空间操作外部可视;11:内部程序空间操作外部可视;66第二节系统中断2.1中断结构2.2中断优先级和中断向量表2.3中断控制寄存器2.4中断响应流程672.1中断结构两级中断:内核中断和外设中断两种类型中断:不可屏蔽中断(RS,NMI),可屏蔽中断(外部中断以及其它外设中断等)中断管理:外设级管理和CPU级管理中断响应/确认硬件和中断服务软件均有两级级连68中断级联结构69中断申请流程702.2中断优先级和中断向量表内核中断:复位中断(RS)、不可屏蔽中断(NMI)、INT1~INT6,优先级顺序固定。外部中断:外部引脚事件、SPI、SCI、ADC、CAN连接INT1、5、6;事件管理器连接INT2、3、4。优先级顺序可编程。71727374752.3中断控制寄存器CPU中断控制寄存器1中断标志寄存器IFR标志位清除方式:写1、中断确认、系统复位(INTR指令产生的中断标志必须由软件清除)762中断屏蔽寄存器IMR77外设中断寄存器外设中断矢量寄存器PIVR外设中断请求寄存器PIRQR0,1,2外设中断确认寄存器PIACKR0.1.2(仅做测试用)78备注说明复位中断触发条件:外部复位引脚和看门狗定时器溢出不可屏蔽中断:非法地址访问,察看状态—SCSR1.0位(只能软件清除)外部事件中断控制寄存器XINT1,2CR:79中断响应流程硬件响应流程:外设中断事件—外设中断标志置位—外设中断请求—置位INTX—CPU中断申请--CPU中断标志置位—CPU确认中断—清除外设和CPU中断请求—加载外设中断矢量—响应中断。软件响应流程:取INTX矢量地址进入通用中断服务程序GISR—现场保护—读外设中断矢量寄存器PIVR—确认非伪中断—进入专用中断服务例程SISR—清除外设中断符号位和INTM位—中断响应—恢复现场—中断退出8081例程说明82第三节程序控制1程序地址产生:PCSTACKMSTACK2流水线操作3转移、调用和返回83841程序地址产生硬件机构:16位程序计数器PC、驱动程序地址总线PAB的程序地址寄存器PAR、8级16位宽度堆栈STACK、1级16位微堆栈MSTACK、重复计数器RPTC操作功能:顺序操作、空周期、子程序调用/跳转/返回、表移动或块移动返回、中断调用/返回、计算转移备注:堆栈:可用于保存地址或数据(POP/PUSH,POPD/PUSHD)微堆栈:用于数据或表格重复移动时存储下一条指令的地址对外不可见852流水线操作四级流水线取指、译码、取操作数、指令执行同步执行两段静态执行逻辑:执行换相和锁存结果863转移、调用和返回无条件:转移—B,BACC;调用—CALL,CALA;返回—RET;有条件:转移—BCND,BANZ(当前AR内容不为0);调用—CC;返回—RETC;多条件判断:使用两个或三个条件;重复单条指令:RPT—单条指令执行N+1次;878889第四节时钟域和节电模式4.1锁相环4.2看门狗4.3节电模式904.1锁相环引脚:时钟输入:XTAL1/CLKINXTAL2时钟输出:CLKOUT/IOPE0(SCSR1.14控制)滤波回路:PLLFPLLF2供电:PLLVccAVss控制:SCSR1.9~110.5~4倍频91924.2看门狗特点:1)8位WD计数器溢出时产生系统复位;2)计数器的时钟由预标定因子选择6种;3)WD键寄存器清除WD计数器;4)不正确的WD检查位会产生系统复位;5)WD计数器在系统复位后自动启动;6)保证系统崩溃或看门狗自身故障时产生可靠的系统复位;9394看门狗时钟:CLKOUT/512预标定因子:WDCR.0~2选择2~64分频(3.28ms~209.7ms/40MHz)看门狗复位条件:WDCNTR溢出;不正确的WD键寄存器写入(非55h,AAh顺序或值);WD检验位出错(非101)。看门狗清除条件:先向WD键寄存器写入55,再写入AAh。控制寄存器8位宽度,16位读写方式。在实时监控模式下,看门狗时钟被禁止。DSP复位上电后,看门狗将自动启动,通常需要软件在初始化时处理。95看门狗寄存器WD计数器WD键寄存器WD控制寄存器96974.3节电模式时钟域:两个,CPU时钟(用于CPU逻辑)和系统时钟(包括外设时钟和CPU中断逻辑时钟)节电模式描述(相应的唤醒外设中断必须使能,并保持足够的有效时间)9899第四章TMS320X240X的片上外设4.1数字I/O模块4.2A/D转换器4.3事件管理器1004.1数字I/O模块1011概述41个通用、双向的数字I/O引脚具备基本功能可编程和一般的I/O复用能力功能选择:3个控制寄存器MCRA,B,C决定I/O行为控制:6个数据和方向控制寄存器PA(B,C,D,E,F)DATDIR决定输出能力:GROUP1(PWM1~6,T1(2)PWM,CAP1~6,TCLKINA,IOPF6,IOPC1,XF,A0~15):+/-2mA;GROUP2(PS/DS/IS,CAN,SPI,T3(4)PWM,PWM7~12):+/-4mA;GROUP3(TDIRA(B),SCIXINT1(2),TCLKINB,CLKOUT):+/-8mA;1022I/O复用输出控制寄存器MCRA7090hMCRB7092h103MCRC7094h尽量不要改变保留位的值,以免产生不可预测的结果I/O端口的功能是可以动态改变的1043I/O数据和方向寄存器PADATDIR7098h:A端口PBDATDIR709Ah:B端口PCDATDIR709Ch:C端口PDDATDIR709Eh:D端口PEDATDIR7095h:E端口PFDATDIR7096h:F端口1051064.2A/D转换器带内置可编程时间窗口采样保持器的16通道10位ADC;转换时钟最快30MHz,精度+/-2LSB(差分和积分非线性误差)可编程16通道自动排序、自动转换;两个独立的最多可选择8个转换通道的排序器(SEQ1和SEQ2)可独立工作为双8位模式或级链的单16位模式;通道转换顺序可编程;可单独访问的16个转换结果寄存器;多种AD转换触发事件:软件立即启动、事件管理器EVA/EVB、外部引脚;灵活的中断控制允许单序列或间隔序列转换完成后申请中断启动/停止模式允许多个按时间排序的触发转换事件同步转换;EVA和EVB可分别独立触发两个排序器;内置的校验模式和自测试模式;1071081091排序器工作原理概述硬件机构:通道选择状态器(ChSel):用于存放需要转换的模拟输入通道号;状态指针:指示当前已经转换完成的状态号,选择转换结果通道;转换计数器:由最大转换通道数加载(MAXCONV1+1),减计数;工作机制:通过通道选择状态器和状态指针管理两个多路开关:模拟通道输入和转换结果输出;根据当前的转换状态和控制设置管理ADC的启动和停止。110特征排序器1SEQ1排序器2SEQ216通道级链排序器SEQ启动触发方式EVA、软件、外部引脚EVB、软件、外部引脚EVA、EVB、软件、外部引脚最大转换通道数8816转换完成后自动停止YesYesYes触发优先级高低不需要排序控制器位分配CONV0~7CONV8~15CONV0~15A/D转换结果寄存器Result0~7Result8~15Result0~15双排序器和单排序器工作比较111(1)连续的自动排序方式条件:CONTRUNbit=1;运行:SOC触发条件有效(上一次转换已经完成)加载自动排序状态寄存器(MAXCONV)启动ADC(排序状态寄存器自动减1)保存转换结果转换结束判断(排序状态寄存器=0?)置中断标志加载自动排序状态寄存器,复位状态指针为CONV00启动下一次转换;转换顺序:从通道选择0开始;说明:转换完成时,需要及时读取转换结果;适宜于通道的连续采样;112举例在双排序器模式下完成1、2、3、4、5、6、7等通道的连续转换。MAXCONV=6;113(2)排序器的启动/停止模式条件:CONTRUNbit=0;任何一个排序器(SEQ1,SEQ2,SEQ)均可工作在该模式下;运行:SOC触发条件有效(上一次转换已经完成)加载自动排序状态寄存器(MAXCONV)启动ADC(排序状态寄存器自动减1)保存转换结果转换结束判断(排序状态寄存器=0?)置中断标志转换结束(自动排序状态寄存器=0,状态指针指向当前转换完成的通道);说明:可实现在时间上独立的多个采样序列转换;所有序列转换完成后,需要手动复位排序器;具有自动返回的能力(MAXCONV=16)。114(3)转换结果输入模拟信号的数字转换结果为:
输入的模拟电压-VREFLODigitalValue=1023*VREFHI-VREFLO115(4)触发条件和中断触发条件:中断方式:每完成一次采样序列,中断信号产生一次(只有一个EOS信号);每完成两次采样序列,中断信号产生一次(已经有一个EOS信号)。116(5)校定模式和自测试模式校准模式:计算ADC模块的零、中点和最大值的偏移误差(BRGENA和HI/LO位控制),偏差结果存在校准寄存器内(可以通过软件干预),由硬件将该值加在转换结果上实现自动补偿。自测试模式:检测ADC引脚的短路/开路。240xA系列芯片不支持这两种工作模式。1172ADC时钟预标定可以调整器件的ADC采样和保持的时间来适应模拟信号的阻抗变化118119ADC转换时间:转换序列启动时间;采保时间;转换时间;转换结束时间;序列转换完成置标志位时间。最长时间(16个通道):15+13*14+14=211个周期(CPS=0,ACQ=0,第一次转换需要15个周期,最后一次转换需要14个周期,其他13个周期)1203ADC模块的寄存器功能:控制寄存器ADCTRL1,ADCTRL2行为:最大转换通道寄存器MAXCONV,通道选择排序控制寄存器CHSELSEQ1~4状态:自动排序状态寄存器AUTO_SEQ_SR结果:ADC结果寄存器RESULT0~15,
标准结果寄存器CALIBRATION121122备注说明240XA芯片不支持自标定模式,ADCTRL1的0~3位必须设置为0,ADCTRL2的14位只能作为序列器1的复位控制。序列器的BSY状态位只能在转换启动后四个状态周期才能正确检测。注意不要同时设置CPS=1和ACQ.PS=0(该设置只转换一个通道就会停止)1231241251264.3事件管理器1结构概述2通用定时器3PWM比较发生单元4事件捕获单元5QEP处理单元1271结构概述(1)特点:两套独立的EVM模块;每个EVM模块包括2个通用的16位定时器;三个比较单元;具有空间矢量状态机、死区发生器和输出逻辑控制的PWM回路;3个捕获单元、光电编码器输入的四倍频辨向处理电路(QEP);中断逻辑。在功能结构上与C24X相比有比较大的变化。(2)结构框图:128129130(3)事件管理器的引脚EVA:通用定时器比较输出T1CMP/T1PWM,T2CMP/T2PWM;PWM输出PWM1~6;外部时钟输入TCLKINA,TDIRA;捕获和QEP输入CAP1/QEP1,CAP2/QEP2,CAP3。EVB:通用定时器比较输出T3CMP/T3PWM,T4CMP/T4PWM;PWM输出PWM7~12;外部时钟输入TCLKINB,TDIRB;捕获和QEP输入CAP4/QEP3,CAP5/QEP4,CAP6。功率保护引脚:PDPINTA/B,低有效(保持6或者12个状态周期)封锁所有的PWM输出为高阻态(要求PDPINT中断使能,否则无效),该信号由内部时钟信号确认和同步,系统复位后即被使能。
131C240EV和240XAEV的比较取消了单调加和单调加减计数模式;取消了32位计数器模式取消了GP的驻留模式,在周期匹配、上溢和下溢使能自动反向计数捕获3事件可以触发ADC转换捕获单元可以使用T1或T2时基在捕获FIFO中有1个或2个事件均可产生捕获中断标志捕获FIFO的状态可随时访问QEP只能作为T2或T4的时基3个简单比较单元被取消,全比较模式只在PWM模式中使用132死区计数器减少为4位(8),预标定时间因子增加为5位(3)每个独立外设的中断控制逻辑被统一管理,外设只有产生中断标志的中断申请信号和相应的使能信号,中断交由外设中断扩展控制器PIE管理取消了外设中断响应自动清除相应标志的操作,中断标志位必须由软件写1清除PDPINTA/B在系统复位后被使能初始化写COMCONA/B只需一次(在C240中需要2次)133(4)事件管理器的中断管理和响应事件管理器的中断被分为3组,每一组分配1个CPU中断号(INT2,3,4),多中断源的管理和仲裁由PIE模块处理。中断源:中断事件发生后,EVM中断标志寄存器EVA(/B)IFRA(/B/C)对应位被置1,该标志位只能由软件强制写1清除。中断使能:由中断屏蔽寄存器EVA(B)IMRA,EVA(B)IMRB,EVA(B)IMRC三个16位寄存器管理所有的中断使能位。134中断请求:外设的中断标志位和中断屏蔽位置1,产生CPUINT中断申请。CPU响应:IFR标志位和IMR使能位有效,CPU向PIE发布中断确认,IFR标志位被自动清除,CPU结束当前指令执行,取中断向量,之后操作由软件管理。PIE响应:确认CPU响应,清除PIRQ标志位,刷新PIVR寄存器,等待下一次中断。中断软件:GISR—保护现场,读PIVR确定外设中断;SISR清除外设中断标志,中断返回前使能CPU的INTM位(清除)。1351361371381392通用定时器GPTimer1个可读写的16位计数器TxCNT(x=1~4)1个可读写的16位比较寄存器(双缓冲)TcCMPR(x=1~4)1个可读写的16位的周期寄存器(双缓冲)TxPR(x=1~4)可读写的定时器控制寄存器TxCON(x=1~4)输入时钟可编程预标定器控制和中断逻辑定时器比较输出输出控制逻辑定时器2(4)可以选择定时器1(3)的周期寄存器值作为自己的定时周期,可以实现同步140141(1)通用定时器的基本特点输入信号:内部的CPU时钟;外部时钟TCLKINA/BTDIRA/B(最大频率为CPU时钟的1/4);复位信号。输出信号:逻辑信号(定时器比较输出TxPWM;ADC模块的启动信号);事件信号(上溢、下溢、比较匹配、周期匹配等);计数方向指示位。双缓冲方式:比较寄存器和周期寄存器带有影子寄存器;比较寄存器在特定事件发生时才刷新加载,而周期寄存器仅当计数寄存器TxCNT为零时刷新。定时器的比较输出模式:高/低有效(输出随比较和周期匹配的事件而变化);强制高/低(一旦有效不再改变)142四种计数模式:停止/保持;连续增/减计数;连续增计数;定向增/减计数;定时器同步:定时器2/4,通过合适的寄存器构造可以和定时器1/3同步工作;事件可以在硬件上自动启动ADC模块的工作,无需CPU介入;中断事件:上溢—TxCNT=FFFFh;下溢--TxCNT=0h;;比较匹配--TxCNT=TxCMPR;周期匹配--TxCNT=TxPR;143(2)控制寄存器功能:144备注说明TMODE0,1,11~12位:计数模式选择,00-停止/保持,01-连续增/减,10-连续增,11-定向增/减TPS0~2:时钟预标定因子T2WT1/T4WT3:T2/T4使能选择,只在T2CON和T4CON内有效(T2/4和T1/3同步)SELT1PR/SELT3PR:周期寄存器选择,只在T2CON和T4CON内有效,在T1CON和T3CON内为保留位145行为/状态:146(3)通用定时器的计数运行停止/保持模式:GP定时器保持当前状态停止运行;连续加计数:GP定时器按照定标的输入时钟计数,直到计数器的值和周期寄存器的值匹配,之后的下一个时钟的上升沿,GP复位为0并开始下一个计数周期,同时外设周期匹配中断标志产生,并产生可以启动ADC模块的事件。在GP复位为0之后一个时钟周期,下溢中断标志产生,并产生可以启动ADC模块的事件。定时周期:(TxPR+1)*定标时钟说明:TxCON.TENABLE位控制定时器的启动计数,同时决定控制时钟输入预标定因子(为0时预标定器复位)。147编程方式及基本顺序:设置通用定时控制器GPTCONA设置周期寄存器TxPR设置比较寄存器TxCMPR清除计数器TxCNT设置定时器控制寄存器TxCON,使能定时器工作148连续增减计数:GP定时器按照定标的输入时钟加计数,直到计数器的值和周期寄存器的值匹配,之后的下一个时钟的上升沿,GP减计数直到计数器为0,并开始以加计数的方式开始下一个计数周期,其间外设周期匹配、下溢、上溢等中断事件标志位产生,并产生可以启动ADC模块的事件。定时周期:2*TxPR*定标时钟说明:TxCON.TENABLE位控制定时期的启动计数;GPTCONA/B中的状态位指示当前的计数方向;适合产生对称的PWM波形。149编程方式:设置通用定时控制器GPTCONA设置周期寄存器TxPR设置比较寄存器TxCMPR清除计数器TxCNT设置定时器控制寄存器TxCON,使能定时器工作150定向增减计数方式:根据定标的时钟(内部或外部)和TDIRA/B引脚的输入电平来增或减计数,当TDIRA/B为高时,定时器加计数直到周期匹配或上溢,之后定时器复位为0,并继续增计数;当TDIRA/B为低时,定时器减计数直到为0,定时器的计数器重新加载周期寄存器的值,开始新的减计数。其间外设周期匹配、下溢、上溢等中断事件产生并产生可以启动ADC模块的事件。
说明:TDIRA/B引脚变化后,计数方向的改变在当前计数完成一个时钟周期之后。在该方式下,第一个计数脉冲将会丢失。151该方式能够用于事件管理器模块的QEP脉冲计数或者作为外部脉冲计数。152LDP #DP_EVA ;指向7400h~7480h单元SPLK #41H,GPTCONA ;TCOMPOE=1允许定时器 ;比较输出SPLK #5H,T1PR ;设置周期寄存器SPLK #3H,T1CMPR ;设置比较寄存器SPLK #0H,T1CNT ;设置计数寄存器SPLK #0174EH,T1CON ;TMODE=10连续增计数模式,TPS=111预分频为128;TENABLE=1定时器计数使能,TCLKS=00内部时钟;TECMPR=1定时器1比较使能,SELT1PR=0SPLK #01F5EH,T2CON;TMODE=11定向增/减计数模式,TPS=111;预分频为128;TENABLE=1定时器计数使能,TCLKS=1外部时钟;TECMPR=1定时器1比较使能,SELT1PR=0SPLK #0F4EH,T1CON ;TMODE=01连续增/减计数模式,TPS=111;预分频为128;TENABLE=1定时器计数使能,TCLKS=00内部时钟;TECMPR=1定时器1比较使能,SELT1PR=0153(4)GPTimer的比较操作特点:由TxCMPR、GPTCONX.6(比较结果输出使能)、TPx(输出电平控制)和TxCON.1(比较器使能)控制TxPWM引脚输出,由计数方式控制产生对称或非对称的PWM波形。比较运行:比较匹配后,经过一个CPU时钟周期产生比较中断信号和启动ADC模块的信号(如果中断事件作为ADC的SOC触发条件),同时改变PWM的输出状态(由GPTCONA/B设置)。输出逻辑:高/低有效,强制高/低154非对称比较输出波形155对称比较输出波形156说明当比较寄存器为0时,TxPWM始终输出有效电平;当比较寄存器值大于周期寄存器值时,TxPWM始终输出无效电平;当比较寄存器值等于周期寄存器值时,TxPWM输出一个周期的有效电平(连续增模式);对于连续增减模式,输出无效电平。有效输出时间:连续增方式—TxPR-TxCMPR+1;连续增减方式—TxPR-TxCMPRup+TxPR-TxCMPRdn.PDPINTA/B有效或复位时,TxPWM位高阻态1571583全比较对称PWM输出单元特点:每个事件管理器模块包含3个全比较单元;3个16位比较结果寄存器CMPR1~3(双缓冲);1个比较控制功能寄存器COMCONA/B;1个16位行为控制寄存器ACTRA/B(双缓冲);6个3态PWM比较输出;控制和中断逻辑。159160(1)比较器部分输入信号:来自比较控制寄存器的控制信号(开启);定时器T1/3的计数信号和下溢与周期匹配信号(装载);复位信号。比较器运行模式:由COMCONx控制,比较器运行使能、比较器输出使能、比较寄存器刷新模式、SVPWM模式使能。比较器运行原理:和定时器的比较单元一致。编程处理:设置周期寄存器TxPR;设置行为控制寄存器ACTRAx;设置比较功能寄存器CMPRx;设置比较控制寄存器COMCONx;设置定时器控制寄存器TxCON(启动定时器等操作)161比较器单元寄存器功能:行为:162(2)PWM发生器163硬件机构:对称和非对称波形发生器;可编程死区逻辑;输出逻辑;SVPWM状态机;基本特点:16位寄存器;可编程死区范围0~12us;最小死区宽度25ns;可动态改变PWM载波频率;在每个PWM周期内和以后可以改变PWM脉冲宽度;可屏蔽功率器件保护中断PDPINT;可产称对称、非对称、空间矢量PWM波形;自动重装载机制;164(3)PWM死区发生器单元输入信号:3个全比较器的输出PH1~3;1个预标定输入时钟(x/1,x/2,x/4...x/32(101~111))。输出信号:DTPH1,DTPH1_,DTPH2,DTPH2_,DTPH3,DTPH3_死区控制功能寄存器:死区时间=m*p,m:死区定时器周期DBT0~3;p:预标定因子DBTS2~4165166(4)输出逻辑输入信号:DTPH1,DTPH1_,DTPH2,DTPH2_,DTPH3,DTPH3_;ACTRx的控制位;PDPINTx和RS.输出信号:PWMxx=1~6;PWMyy=7~12;控制行为:ACTRx控制位决定PWM输出的电平的变化形式(高/低有效、强制高/低、高阻);复位信号和PDPINTx决定是否强制PWM输出为高阻态。说明:复位信号和有效的PDPINTx信号将复位ACTRx相对应的PWM输出状态控制位。167168(5)PWM波形PWM发生的寄存器编程顺序:设置并加载ACTRx;如果应用死区控制,设置并加载DBTCONx;初始化CMPRx;设置并加载COMCONx;设置并加载T1CON(EVA)或T3CON(EVB),启动定时器;刷新CMPRx;169170LDP #DP_PF2 ;指向7080h~7100h区LACL MCRAOR #0FC0H ;IOPA,B被配置为基本功能方式:PWM[1~6]SACL MCRALDP #DP_EVA ;指向7400h~7480h区SPLK #0FFFFH,EVAIFRA ;清EVB全部中断标志SPLK #0555H,ACTRA ;PWM1~6低有效SPLK #05F0H,DBTCONB ;使能死区控制2USSPLK #10H,CMPR1 ;设置比较初值PWM1,2SPLK #20H,CMPR2 ;设置PWM3,4的比较寄存器SPLK #30H,CMPR3 ;设置PWM5,6的比较寄存器SPLK #60H,T1PR;设置定时器1周期寄存器,即PWM周期为60H个CPU时钟周期SPLK #0A600H,COMCONA ;使能比较操作SPLK #0,T1CNTSPLK #41H,GPTCONA ;TCOMPOE=1,T1PIN=01SPLK #080H,EVAIMRA ;通用定时器1中断使能SPLK #0174EH,T1CON ;TMODE=10连续增计数模式,TPS=111预分频为128;TENABLE=1定时器计数使能,TCLKS=00;内部时钟;TECMPR=1定时器1比较使能,SELT1PR=0CLRC INTM ;开总中断1714捕获单元特点:每个事件管理器模块(EVA和EVB)包含3个捕获单元;捕获单元可以锁存引脚变化事件的状态和时间;每个事件管理器模块的捕获单元中有:1个16位捕获控制功能(行为)寄存器CAPCONx、1个16位捕获FIFO状态寄存器CAPFIFOx、3个16位2级深度FIFO堆栈CAPxFIFO和CAPxFBOT(结果)、3个施密特触发捕获引脚(由器件时钟同步,状态变化需要保持2个周期);捕获单元的时基可以选择位T1/3或T2/4;捕获事件类型有:上升沿、下降沿、双边沿。中断触发条件:2次事件捕获或者捕获FIFO堆栈不空。172173运行原理捕获单元操作被使能后,相应输入引脚上定义的电平变化事件发生时,GP定时器的计数值将被锁存到相应的FIFO堆栈中,如果堆栈内已经有1个以上的有效捕获事件(CAPFIFOx状态位不为0),相应的中断标志被置位。CAPFIFOx状态位反映当前发生的捕获事件状态,引脚变化到计数值被锁存的延迟是2个时钟周期。174堆栈操作2级深度只读堆栈由CAPxFIFO(存放旧的计数值)和CAPxFBOT(存放新的计数值)组成,读取CAPxFIFO,CAPxFBOT被压栈到CAPxFIFO,同时状态位发生相应的变化。第一次捕获:定时器计数值被写入CAPxFIFO,如果堆栈为空,对应的状态位为01,此时在下次捕获事件到来之前读取FIFO堆栈,状态位变成0。第二次捕获:如果在前次捕获计数值被读取之前,新的捕获事件到来,则新的计数值被写入栈底CAPxFBOT,同时相应的状态位便位10,此时在下次捕获事件到来之前读取FIFO堆栈,旧的计数值被读走,新的计数值被压栈到CAPxFIFO,状态位变成01。如果中断没有被屏蔽,相应的捕获中断标志置位。175第三次捕获:如果在FIFO堆栈中已经捕获了两次计数值,当新的捕获事件到来时,FIFO栈顶CAPxFIFO的计数值被弹出堆栈丢掉,栈底计数值CAPxFBOT被压栈到栈顶CAPxFIFO,新的计数值被吸入栈底,相应的状态位变成11,表示有旧的数据被丢掉。在这种情形下,如果捕获中断没有被屏蔽,本次捕获叶将产生中断申请信号。说明:为了让一次捕获时间也可以产生中断,可以修改状态寄存器的响应位为01,表示已经有一个“假”事件被捕获,当新的事件到来时,就会产生中断信号。176控制和状态寄存器功能/行为:状态:177初始化:LDP #DP_PF2 ;指向7090h~7100hLACL MCRCOR #0380H ;IOPE7,IOPF0,IOPF1被配置为特殊功能方式:CAP[4~6]SACL MCRC SETC INTMLDP #DP_EVBSPLK #049H,GPTCONB ;TCOMPOE=1,T4PIN=10,T3PIN=01SPLK #0,T3CNTSPLK #01742H,T3CON ;TMODE=10连续向上计数模式,TPS=111;预分频为128TENABLE=1定时器计数使能,TCLKS=00内部时钟;TCLD=00,TECMPR=1定时器3比较使能,SELT3PR=0SPLK #0FFFFH,T3PR ;定时器周期比较寄存器设为最大SPLK #00H,EVBIMRASPLK #00H,EVBIMRBSPLK #0A240H,CAPCONB ;CAP4捕获允许,捕获上升沿SPLK #01H,EVBIMRC ;CAP4中断使能SPLK #0FFFFh,EVBIFRA ;清EVB全部中断标志SPLK #0FFFFh,EVBIFRBSPLK #0FFFFh,EVBIFRCCLRC INTM ;开总中断RET
178;中断程序程序GISR4: ;优先级INT4中断人口
;保护现场LDP #0E0HLACC PIVR,1 ;读取外设中断向量寄存器(PIVR),并左移一位ADD #PVECTORS ;加上外设中断人口地址BACC ;跳到相应的中断服务子程序CAP4_ISR: ;捕获单元4中断程序入口LDP #DP_EVBLACL CAP4FIFOLDP #5SACL CAP4TEMP ;读出捕获的值LDP #DP_EVBSPLK #4,EVBIFRC ;清中断标志GISR2_RET: ;中断返回 ;恢复现场CLRC INTM ;开总中断,因为一进中断就自动关闭总中断RET;假中断程序PHANTOM KICK_DOG ;复位看门狗RETEND1795正交编码脉冲(QEP)电路用于处理光电编码器的A、B相脉冲信号,以获得四倍频时钟和方向信号。引脚和捕获单元共用,由CAPCONx控制寄存器管理;QEP电路的输出为时钟脉冲信号和计数方向信号,作为定时器T2/4的时基(此时定时器2/4应工作在方向增减计数方式)。寄存器编程处理:根据需要设置定时器2/4的计数值寄存器、周期寄存器和比较寄存器构造定时器2/4为方向增减计数方式并以QEP回路作为时钟源—构造CAPCONx使能QEP回路。180181182编程处理:(1)设置周期寄存器T2(4)的计数、周期、比较寄存器;(2)设置T2(4)CON控制寄存器为定向增/减方式,并以正交编码QEP电路的时钟作为时钟源;(3)设置CAPCONA(B)寄存器以使能正交编码QEP电路。183第五章DSP指令系统和系统开发5.1寻址方式5.2TMS320X2407指令介绍
5.3汇编文件的表达与组织结构:常用伪指令
5.4汇编文件的结构:头文件及命令文件5.5集成开发环境简介
1845.1寻址方式1立即寻址方式:短立即数寻址:8、9(LDP指令)、13位(MPY指令)的常数作为操作数;RPT#99长立即数寻址:16位的常数作为操作数;ADD#16384,2采用立即寻址的RPT指令8位常数1011101101100011长立即数寻址的ADD指令左移2位1011111110010010操作数(16384)01000000000000001852直接寻址方式该方式下,数据存储器以128个字被分为若干块,每个块称作数据页,64K数据存储器包含512个数据页,当前的数据页由状态寄存器ST0的9位页指针DP决定,CPU访问的特定单元地址由数据页和指令包含的7位偏移量产生。指令格式:所有访问,均需要考虑初始化DP;指令类型直接/间接指示7位偏移量8MSBs07LSBs186LDP#4;设置数据页指针ADD1h;将当前数据页偏移量为1的单元内容加至累加器
单元地址:000000100(DP)0000001(OFFSET)=201hLDP#5;ADD9h,161873间接寻址方式利用8个辅助寄存器(AR0~AR7)提供间接寻址的16位地址,可以访问64K数据存储器的任意单元。当前的辅助寄存器由状态寄存器ST0的3位指针ARP选定,它可以由MAR、LST指令或任何支持间接寻址的指令装载。指令执行过程中,当前AR的内容用作被访问的数据存储器地址。188间接寻址选项选项操作数例子不增不减*LT*;(AR)—TREG,AR不变加1*+LT*+;(AR)—TREG,AR+1—AR减1*-LT*-;(AR)—TREG,AR–1—AR加索引值*0+LT*0+;(AR)—TREG,AR+AR0—AR减索引值*0-LT*0-;(AR)—TREG,AR–AR0--AR加索引值,反向进位*BR0+LT*BR0+;(AR)—TREG,AR-AR0—AR,反转进位加法减索引值,反向进位*BR0-LT*BR0-;(AR)—TREG,AR-AR0—AR,反转进位减法189在指令中更新辅助寄存器;MAR*,AR1;当前辅助寄存AR设为AR1LT*+,AR2;(AR1)装入TREG;;AR1+1—AR1;当前辅助寄存AR改为AR2MPY*+;TREG*(AR2)--PREG,AR2+1—AR2指令格式修改辅助寄存器内容:LARMARADRKSBRK指令类型间接寻址AR更新选项更新指示下一个辅助寄存器指针8MSBs1ARUNNAR1905.2TMS320X2407常用指令介绍指令特点:多义性,分析方法(功能F执行E表达D)指令分类(86条):1累加器、算术和逻辑指令2辅助寄存器和数据页指针指令3TREG、PREG和乘法指令4转移指令5控制指令6I/O和存储器操作指令说明:体系结构决定指令的运行特点1911921累加器、算术和逻辑指令(1)ABS功能:累加器取绝对值;句法:ABS执行:PC+1;|(ACC)|->ACC;0->C(正数不变;负数取反加1)状态位:执行受OVM影响,结果影响C和OV说明:当ACC为80000000h时,若没有设置溢出模式(OVM=0),则结果为80000000h,若OVM=1;则结果为7FFFFFFFh,两种情况OV均置位。193(2)ADD功能:加至累加器;句法:ADDdma[,shift] ;直接寻址,shift=0~16ADDind[,shift[,Arn]];间接寻址n=0~7ind:间接寻址操作选项ADD#k ;短立即数寻址k:8位短立即数ADD#lk[,shift] ;长立即数寻址lk:16位长立即数执行:PC+1;(ACC)+(dma)*2shift->ACC;or(ACC)+lk*2shift->ACC;or(ACC)+k->ACC状态位:执行受SXM(移位)和OVM(结果)影响,结果影响C和OV说明:若使用间接寻址并更新ARP,则必须声明一个移位操作(0~16);短立即数寻址不受SXM位影响,并且不可重复执行。举例:ADDdat1,1; ADD*+,0,AR0;ADD#1h; ADD#111h,1194(3)ADDC/ADDS功能:带进位加至累加器;句法:ADDCdma ;直接寻址ADDCind[,Arn];间接寻址n=0~7ind:间接寻址操作选项执行:PC+1;(ACC)+(dma)+C->ACC;状态位:执行受OVM(结果)影响,不受SXM影响,结果影响C和OV说明:符号扩展位被抑制;进位位按正常方式产生;无移位定标操作。举例:ADDCdat300; ADDC*-,AR;195(4)AND功能:和累加器逻辑“与”;句法:ANDdma ;直接寻址ANDind[,Arn];间接寻址n=0~7ind:间接寻址操作选项AND#lk[,shift];长立即数寻址lk:16位长立即数shift=0~16执行:PC+1;(ACC(15:0))AND(dma)->ACC(15:0)0->ACC(31:16);(ACC(31:0)ANDlk*2shift->ACC;状态位:无说明:若使用直接或间接寻址,累加器高字被清零;若使用长立即数寻址,移位时,32位结果未被填充的高/低位清零。举例:ANDdat16; AND*+,AR0;AND#1h,4; 196(5)CMPL功能:累加器求反;句法:CMPL执行:PC+1;(ACC)逐位取反->ACC状态位:无说明:累加器内容被其逻辑反所代替;举例:CMPL197(6)LACC功能:左移后装入累加器;句法:LACCdma[,shift] ;直接寻址,shift=0~16LACCind[,shift[,Arn]];间接寻址n=0~7ind:间接寻址操作选项LACC#lk[,shift] ;长立即数寻址lk:16位长立即数执行:PC+1;(dma)*2shift->ACC;orlk*2shift->ACC;状态位:执行受SXM(移位)影响说明:移位时,低位填0,高位由SXM位和符号位控制举例:LACCdat,4; LACC*+,4;LACC#F001h,1; 198(7)LACL功能:装载累加器低位并清除累加器高位;句法:LACL
dma ;直接寻址
LACLind[,Arn];间接寻址n=0~7ind:间接寻址操作选项LACL#k ;短立即数寻址
k:8位短立即数执行:PC+1;(dma)->ACC(15:0)0->ACC(31:16);ork->ACC(7:0)0->ACC(31:8);状态位:执行不受SXM影响说明:数据被当作无符号数处理举例:LACLdat; LACL*+,4;LACL#F0h; 199(8)NEG功能:累加器求负;句法:NEG执行:PC+1;ACC*-1->ACC;状态位:执行受OVM影响,结果影响C和OV说明:当ACC为80000000h时,若没有设置溢出模式(OVM=0),则结果为80000000h,若OVM=1;则结果为7FFFFFFFh,两种情况OV均置1;如果执行结果ACC=0,则C=1;否则C=0。200(9)OR功能:和累加器逻辑“或”;句法:ORdma ;直接寻址ORind[,Arn];间接寻址n=0~7ind:间接寻址操作选项OR#lk[,shift];长立即数寻址lk:16位长立即数shift=0~16执行:PC+1;(ACC(31:0))OR(dma)->ACC(31:0);(ACC(31:0)ORlk*2shift->ACC;状态位:无说明:若使用长立即数寻址,移位时,32位结果未被填充的高/低位清零。举例:ORdat16; OR*+,AR0;OR#1h,4; 201(10)SACH功能:移位并存储累加器高字;句法:SACHdma[,shift2];直接寻址,shift2=0~7SACHind[,shift2[,Arn]];间接寻址n=0~7ind:间接寻址操作选项执行:PC+1;(ACC*2shift)(高16位)->dma;状态位:不受SXM的影响说明:将整个32位累加器内容复制到输出定标器,无符号左移0~7位,再将高16位结果保存。举例:SACHdat16,1; SACH*+,0,AR0;202(11)SACL功能:移位并存储累加器低字;句法:SACLdma[,shift2];直接寻址,shift2=0~7SACLind[,shift2[,Arn]];间接寻址n=0~7ind:间接寻址操作选项执行:PC+1;(ACC*2shift)(低16位)->dma;状态位:不受SXM的影响说明:将整个32位累加器内容复制到输出定标器,无符号左移0~7位,在将低16位结果保存。举例:SACLdat16,1; SACL*+,0,AR0;203(12)SFL功能:累加器算术左移;句法:SFL执行:PC+1;ACC(31)->CACC(30:0)->ACC(31:1)0->ACC(0)状态位:执行不受OVM影响,结果影响C说明:无204(13)SFR功能:累加器算术右移;句法:SFR执行:PC+1;ACC(31:1)->ACC(30:0)ACC(0)->CifSXM=0,0->ACC(31)elseSXM=1ACC(31)->ACC(31);状态位:执行受SXM影响,结果影响C说明:无205(14)SUB功能:从累加器减;句法:SUBdma[,shift] ;直接寻址,shift=0~16SUBind[,shift[,Arn]];间接寻址n=0~7ind:间接寻址操作选项SUB#k ;短立即数寻址k:8位短立即数SUB#lk[,shift] ;长立即数寻址lk:16位长立即数执行:PC+1;(ACC)-(dma)*2shift->ACC;or(ACC)-lk*2shift->ACC;or(ACC)-k->ACC状态位:执行受SXM(移位)和OVM(结果)影响,结果影响C和OV说明:若未产生借位,C=1;若产生借位,C=0;举例:SUBdat,1; SUB*+,1,AR0;SUB#1h; SUB#111h,1206(15)SUBB/SUBS功能:累加器带借位减;句法:SUBBdma ;直接寻址SUBBind[,Arn];间接寻址n=0~7ind:间接寻址操作选项执行:PC+1;(ACC)-(dma)-C的逻辑反->ACC;状态位:执行受OVM(结果)影响,不受SXM影响,结果影响C和OV说明:符号扩展位被抑制;借位位按正常方式产生。举例:SUBBDAT300; SUBB*-,AR;207(16)SUBC功能:累加器条件减;句法:SUBCdma ;直接寻址SUBCind
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年电脑维修服务标准化协议模板
- 2024年综合版:多功能智能小区综合管理服务平台建设项目合同
- 2024年艺人演出推广协议
- 2025年度绿色节能型彩钢瓦屋顶安装及维护一体化服务合同3篇
- 互联网金融的技术创新
- 互联网营业员工作总结
- 《常见的功能关系》课件
- 医院感染护理工作总结
- 《归纳景物特点题》课件
- 2024建筑项目居间合同
- 心理健康对学生学习成绩的影响
- 食品生产企业员工食品安全培训
- 小学数学综合素质评价专项方案
- 模型预测控制现状与挑战
- MOOC创新创业与管理基础(东南大学)
- 中职课程思政说课比赛 课件
- 台大欧丽娟《红楼梦》公开课全部笔记
- 公司报价管理办法
- 农贸市场安全生产风险分级管控和隐患排查治理双体系方案全套资料2019-2020完整实施方案模板
- 人教版 五年级上册道德与法治全册各课及单元同步检测试卷【含答案】
- T梁湿接缝及横隔梁施工方案
评论
0/150
提交评论