




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
TMS320C55x的指令系統(tǒng)
尋址方式TMS320C55x的指令系統(tǒng)
7/29/20231東華理工大學機械與電子工程學院指令中使用的語法元素符號如下:Smem:來自數(shù)據(jù)、I/O空間或存儲器映射寄存器的16bit數(shù)據(jù);Lmem:來自數(shù)據(jù)空間或存儲器映射寄存器的32bit數(shù)據(jù);Xmem&Ymem:同時來自數(shù)據(jù)空間的兩個16bit數(shù)據(jù);Cmem:來自內(nèi)部數(shù)據(jù)空間的16bit數(shù)據(jù);Baddr:代表累加器AC0-AC3、輔助寄存器AR0-AR7、暫存器T0-T3的位域,對位域的置1、清0、測試、求補等位運算用到該元素。(Bit-Address)7/29/20232東華理工大學機械與電子工程學院指令中涉及的寄存器如下:1.累加器(AC0-AC340bitACxG:ACxH:ACxL)2.擴展數(shù)據(jù)頁寄存器(XDP,DPH,DP)
XDP的高7位是DPH,DP是數(shù)據(jù)頁寄存器。DPH和DP都可作為存儲器映射寄存器(MMR)訪問,但是XDP不可作為MMR訪問。7/29/20233東華理工大學機械與電子工程學院3.輔助寄存器(AR0-7)與擴展輔助寄存器(XAR0-7)
ARn可作為存儲器映射寄存器(MMR)訪問;
ARnH是擴展輔助寄存器的高位,不可單獨訪問,只能通過訪問XARn進行。
XARn不是存儲器映射寄存器。7/29/20234東華理工大學機械與電子工程學院地址寄存器名位域000000/1hIER0/IF46hIER1/IFR110-00000/02/4B/03/04hST0/1/2/3_5515-0000006/7hST0/ST1(C54)15-0000008/9/AhAC0L/H/G15-0/16-31/39-3200000B/C/DhAC1L/H/G15-0/16-31/39-32000024h-26hAC2L/H/G15-0/16-31/39-32000028h-2AhAC3L/H/G15-0/16-31/39-3200000F/38hTRN0/1(傳輸)15-000001Dh(C54兼容)PMST狀態(tài)寄存器315-000001Eh(C54兼容)
XPC擴展程序計數(shù)器7-0000020h-23(0E)h
T0-T3(T3第2地址)15-0000049h-4Ah
IVPD/IVPH:DSP/主機中斷向量指針15-0000044hRPTC:單循環(huán)計數(shù)器15-0000047-48DBIER0-1:調(diào)試中斷使能寄存器0-115-2/10-04.常用存儲器映射寄存器(MMR)地址表(00h-5Fh)7/29/20235東華理工大學機械與電子工程學院地址寄存器名位域000010h-17hAR0-715-0000018h/4Dh
SP(數(shù)據(jù)堆棧指針)15-000002Bh
DPH擴展數(shù)據(jù)頁高字6-000002Eh
DP數(shù)據(jù)頁寄存器15-000002Fh
PDP外設數(shù)據(jù)頁寄存器8-000004Ch
SSP系統(tǒng)堆棧指針15-000004Eh
SPH擴展堆棧指針高字6-0000027h
CDP系數(shù)數(shù)據(jù)指針15-000004Fh
CDPH系數(shù)數(shù)據(jù)指針高字6-0000019/30/47h
BK03/BK47/BKC:CDP循環(huán)緩沖區(qū)大小寄存器15-000001A/39h
BRC0/BRC1塊重復計數(shù)器0/115-000001B/1Ch
RSA0L/REA0L塊重復首/尾地址寄存器的低字15-00000/32h-35hBSA01/23/45/67:ARn循環(huán)緩沖區(qū)首地址寄存器(AR0-1,2-3,4-5,6-7)15-0000036h
BSAC:CDP的循環(huán)緩沖區(qū)首地址寄存器15-000003C-3DhRSA0H(23-16)/RSA0L:塊重復首地址寄存器015-000003E-3FhREA0H(23-16)/REA0L:塊重復末地址寄存器015-07/29/20236東華理工大學機械與電子工程學院尋址方式尋址方式是指如何指定指令和操作數(shù)所在存儲空間的地址。C55xDSP支持三種尋址模式絕對尋址:模式指令中的常數(shù)作為地址或部分地址完成尋址,共有三種方式:K16,K23,I/O;直接尋址模式:使用地址的偏移地址尋址,共有四種方式:DP(ST1-55CPL=0),SP(ST1-55CPL=1),寄存器位,PDP(外設數(shù)據(jù)頁指針);間接尋址模式:使用指針完成尋址,共有四種方式:AR,雙AR,CDP,系數(shù)間接尋址。7/29/20237東華理工大學機械與電子工程學院絕對尋址模式
k16絕對尋址其操作數(shù)為*abs16(#k16),[k16:16位的無符號常數(shù)]將7位的寄存器DPH和k16級聯(lián)形成一個23位的地址,用于對數(shù)據(jù)空間的訪問
K16絕對尋址模式
7/29/20238東華理工大學機械與電子工程學院k23絕對尋址操作數(shù)為*(#k23),[k23:23位的無符號常數(shù)]I/O絕對尋址操作數(shù)是*port(#k16),[k16:16位無符號常數(shù)]使用助記符指令,操作數(shù)是port(#k16)(操作數(shù)前沒有*)
k23絕對尋址模式
I/O絕對尋址7/29/20239東華理工大學機械與電子工程學院直接尋址方式描述DP直接尋址用DPH和DP合并的擴展數(shù)據(jù)頁指針尋址存儲空間和存儲器映射寄存器。
(ST1_55CPL=0)SP直接尋址用SPH和SP合并為擴展堆棧指針尋址存儲空間中的堆棧。
(ST1_55CPL=1)寄存器位直接尋址用偏移地址指定一個位地址,用于尋址特定寄存器中的一個或兩個相鄰的位,與CPL無關(guān)。PDP直接尋址用PDP和一個偏移地址尋址I/O空間,與CPL無關(guān)。DP:DataPagePointer
SP:dataStackPointer
PDP:
PeripheralDatapagePointer直接尋址方式需使用DP、SP、PDP、ARn。直接尋址模式
7/29/202310東華理工大學機械與電子工程學院高7位由DPH提供,用來確定主數(shù)據(jù)頁低16位由兩部分組成:DP7位偏移量(Doffset)DP直接尋址模式
DP直接尋址7/29/202311東華理工大學機械與電子工程學院
SP直接尋址
SPH確定高7位地址16位地址由SP和7位偏移量決定,偏移量范圍是0~127由SPH和SP構(gòu)成了擴展數(shù)據(jù)堆棧指針XSP
SP直接尋址模式7/29/202312東華理工大學機械與電子工程學院寄存器位尋址
操作數(shù)是@bitoffset,為寄存器最低位開始的偏移值只有寄存器的位測試、置位、清零、取反指令支持這種尋址模式PDP直接尋址(64K×16位I/O空間,128字/512頁,PDP的9位)
PDP直接尋址模式
7/29/202313東華理工大學機械與電子工程學院間接尋址方式尋址方式描述AR間接尋址(AuxiliaryRegister)
使用AR0-AR7中的任一寄存器訪問數(shù)據(jù)。CPU使用輔助寄存器產(chǎn)生地址的方式取決于訪問數(shù)據(jù)的來源:數(shù)據(jù)空間、存儲器映射寄存器(MMRs)、I/O空間或是獨立的寄存器位。雙AR間接尋址
與AR間接尋址相似,但借助兩個輔助寄存器,可同時訪問兩個或更多的數(shù)據(jù)。CDP間接尋址(CoefficientDataPointer)
使用系數(shù)數(shù)據(jù)指針(CDP)訪問數(shù)據(jù)。CPU使用CDP產(chǎn)生地址的方式取決于訪問數(shù)據(jù)的來源:數(shù)據(jù)空間,MMR,I/O或是獨立的寄存器位。系數(shù)間接尋址(coefficient)
與CDP間接尋址方式相似,它可以在訪問數(shù)據(jù)空間某一系數(shù)的同時,借助兩個輔助寄存器(雙AR)可在數(shù)據(jù)空間訪問另外兩個數(shù)據(jù)。CPU支持的間接尋址方式有4種,都支持線性/循環(huán)尋址7/29/202314東華理工大學機械與電子工程學院間接尋址模式AR間接尋址模式
通過一個輔助寄存器ARn(n=0~7)訪問數(shù)據(jù)空間ST2-55的ARMS位決定AR間接尋址的操作類型ARMS=0,DSP模式:CPU提供增強應用的高效執(zhí)行功能ARMS=1,控制模式:CPU能夠優(yōu)化代碼的長度AR間接尋址DSP模式7/29/202315東華理工大學機械與電子工程學院雙AR間接尋址模式通過輔助寄存器(AR0~AR7)同時訪問兩個數(shù)據(jù)存儲單元實現(xiàn)功能:執(zhí)行一條可完成兩個16位數(shù)據(jù)空間訪問的指令X/Ymen
并行執(zhí)行兩條指令
,每條指令訪問一個存儲數(shù)據(jù)S/Lmen
雙AR間接尋址操作數(shù)
7/29/202316東華理工大學機械與電子工程學院CDP間接尋址模式使用系數(shù)數(shù)據(jù)指針(CDP)對數(shù)據(jù)空間、寄存器位和I/O空間進行訪問CDP間接尋址操作數(shù)7/29/202317東華理工大學機械與電子工程學院系數(shù)間接尋址模式支持以下算術(shù)指令:FIR濾波乘法乘加乘減雙乘加或雙乘減
系數(shù)間接尋址操作數(shù)7/29/202318東華理工大學機械與電子工程學院3.2.1C55x指令的并行執(zhí)行指令并行的特征
單指令中內(nèi)置并行方式—隱含并行方式
例如:
MPY*AR0,*CDP,AC0::MPY*AR1,*CDP,AC1用戶自定義的兩條指令間的并行方式
例如:
MPYM*AR1–,*CDP,AC1||XORAR2,T1內(nèi)置與用戶自定義混合的并行方式例如:
MPYMT3=*AR3+,AC1,AC2||MOV#5,AR1
指令并行的規(guī)則兩條指令的總長度不能超過6個字節(jié);在指令的執(zhí)行過程中不存在操作器、地址產(chǎn)生單元、總線等資源沖突;其中一條指令必須有并行使能位或兩條指令符合軟-雙并行條件。7/29/202319東華理工大學機械與電子工程學院不能使用并行方式的情況
使用立即數(shù)尋址方式例如:
*abs16(#k16);*(#k23);port(#k16);*ARn(K16);*+ARn(K16);*CDP(K16);*+CDP(K16)
條件跳轉(zhuǎn)、條件調(diào)用、中斷、復位等程序控制指令例如:
BCCP24,cond;CALLCCP24,cond; IDLE;INTRk5;RESET;TRAPk5
使用下列指令或者操作修飾符例如:
mmap();port();<instruction>.CR; <instruction>.LR7/29/202320東華理工大學機械與電子工程學院資源沖突C55x的資源運算器可使用的操作器有:D單元的ALU、D單元的移位器、D單元的交換器、A單元的交換器、A單元的ALU和P單元。地址產(chǎn)生單元兩個數(shù)據(jù)地址(DA)產(chǎn)生單元、一個系數(shù)地址(CA)產(chǎn)生單元和一個堆棧地址(SA)產(chǎn)生單元。只能使用給定數(shù)量的數(shù)據(jù)地址產(chǎn)生單元??偩€兩個數(shù)據(jù)讀(DR)總線、一個系數(shù)讀(CA)總線、兩個數(shù)據(jù)寫(DW)總線、1個ACB總線(將D單元寄存器的內(nèi)容傳送給A單元和P單元的操作器)、一個KAB總線(立即數(shù)總線)和一個KDB總線(立即數(shù)總線)只能使用給定數(shù)量的總線7/29/202321東華理工大學機械與電子工程學院軟-雙并行條件
兩個存儲器操作數(shù)必須是雙AR間接尋址模式指令不能包含high_byte(Smem)和low_byte(Smem)
指令不能讀、寫同一個存儲器單元如果指令中的k4的值是0~8,就會改變XDP
的值,所以,不能與加載DP的指令組成并行指令讀重復計數(shù)寄存器(RPTC)指令不能和如下的任何一個單重復指令組成并行指令
RPT,RPTADD,RPTSUB,RPTCC。7/29/202322東華理工大學機械與電子工程學院3.2.2TMS320C55XDSP的匯編指令指令集中使用的術(shù)語、符號和縮寫7/29/202323東華理工大學機械與電子工程學院指令集中使用的運算符7/29/202324東華理工大學機械與電子工程學院TMS320C55x指令集按操作類型分類算術(shù)運算指令位操作指令擴展輔助寄存器操作指令邏輯運算指令移動指令程序控制指令注:一條指令的屬性包括:指令,執(zhí)行的操作,是否有并行使能位,長度,周期,在流水線上的執(zhí)行階段以及執(zhí)行的功能單元等。
7/29/202325東華理工大學機械與電子工程學院算術(shù)運算指令加法指令
加法指令有幾點說明:如果目的操作數(shù)是累加器ACx,在D單元的ALU中進行運算操作;如果目的操作數(shù)是輔助或臨時寄存器TAx,在A單元的ALU中進行運算操作;如果目的操作數(shù)是存儲器(Smem),在D單元的ALU中進行運算操作;如果是移位指令(16位立即數(shù)移位除外),在D單元移位器中進行運算操作狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:CARRY,C54CM,M40,SATA,SATD,SXMD執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY7/29/202326東華理工大學機械與電子工程學院加法指令
7/29/202327東華理工大學機械與電子工程學院舉例:
ADD*AR3+,T0,T1;AR3間接尋址得到的內(nèi)容與T0的內(nèi)容相加,結(jié)果裝入T1,并將AR3增1。7/29/202328東華理工大學機械與電子工程學院舉例:
ADD*AR1<<T0,AC1,AC0;將由AR1尋址得到的內(nèi)容左移T0位與AC1相加,結(jié)果裝入AC0。7/29/202329東華理工大學機械與電子工程學院減法指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:CARRY,C54CM,M40,SATA,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY指令7/29/202330東華理工大學機械與電子工程學院減法指令
7/29/202331東華理工大學機械與電子工程學院舉例:
SUBuns(*AR1),BORROW,AC0,AC1將CARRY位求反,AC0減去由AR1尋址得到的內(nèi)容及CARRY的內(nèi)容,并將結(jié)果裝入AC1。
7/29/202332東華理工大學機械與電子工程學院條件減法指令SUBCSmem,[ACx,]ACy if((ACx–(Smem<<#15))>=0)
ACy=(ACx–(Smem<<#15))<<#1+1 else
ACy=ACx<<#1狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVy,CARRY7/29/202333東華理工大學機械與電子工程學院舉例:
SUBC*AR1,AC0,AC1
如果(AC0–(*AR1)<<#15)>=0,則AC1=(AC0–(*AR1)<<#15)<<#1+1,否則AC1=AC0<<#17/29/202334東華理工大學機械與電子工程學院條件加減法指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,SATD,SXMD,TC1,TC2。執(zhí)行指令后會受影響的狀態(tài)位:ACOVy,CARRY7/29/202335東華理工大學機械與電子工程學院舉例:
ADDSUBCC*AR1,AC0,TC2,AC1
如果TC2=1,則AC1=AC0+(*AR1<<#16, 否則AC1=AC0-(*AR1)<<#167/29/202336東華理工大學機械與電子工程學院乘法指令指令在D單元的MAC中完成操作
狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,M40,RDM,SATD執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy7/29/202337東華理工大學機械與電子工程學院乘法指令
7/29/202338東華理工大學機械與電子工程學院舉例:
MPYAC1,AC0;AC1=AC0*AC17/29/202339東華理工大學機械與電子工程學院乘加指令指令在D單元的MAC中完成操作
狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,M40,RDM,SATD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy
7/29/202340東華理工大學機械與電子工程學院乘加指令7/29/202341東華理工大學機械與電子工程學院舉例1:
MACMR*AR1,*CDP,AC2 AC2=AC2+(*AR1)*(*CDP)7/29/202342東華理工大學機械與電子工程學院舉例2:
MACMRuns(*AR2+),uns(*AR3+),AC3 AC3=(*AR2)+(*AR3)+AC3,
AR2=AR2+1,AR3=AR3+1
7/29/202343東華理工大學機械與電子工程學院乘減指令指令在D單元的MAC中完成操作
狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,M40,RDM,SATD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy
7/29/202344東華理工大學機械與電子工程學院乘減指令
7/29/202345東華理工大學機械與電子工程學院舉例:
MASRT1,AC0,AC1 AC1=AC1-AC0*T17/29/202346東華理工大學機械與電子工程學院雙乘加/減指令指令—利用D單元的兩個MAC在一個周期內(nèi)同時執(zhí)行兩個乘法或乘加/減運算狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,M40,RDM,SATD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy
7/29/202347東華理工大學機械與電子工程學院舉例:
MASR40uns(*AR0),uns(*CDP),AC0 ::MACR40uns(*AR1),uns(*CDP),AC1
;AC0=AC0-uns(*AR0)*uns(*CDP) ;AC1=AC1-uns(*AR1)*uns(*CDP)7/29/202348東華理工大學機械與電子工程學院雙16位算術(shù)指令指令—利用D單元中的ALU在一個周期內(nèi)完成兩個并行的算術(shù)運算,包括一加一減、一減一加、兩個加法或兩個減法狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY7/29/202349東華理工大學機械與電子工程學院雙16位算術(shù)指令7/29/202350東華理工大學機械與電子工程學院舉例:
ADDSUBT1,*AR1,AC1
;AC1(39-16)=(*AR1)+T1
;||AC1(15-0)=(*AR1)-T17/29/202351東華理工大學機械與電子工程學院比較和選擇極值指令指令—在D單元的ALU中完成兩個并行16位極值選擇操作和一個40位極值選擇操作狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,SATD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVw,CARRY7/29/202352東華理工大學機械與電子工程學院比較和選擇極值指令7/29/202353東華理工大學機械與電子工程學院舉例:
MAXDIFFAC0,AC1,AC2,AC17/29/202354東華理工大學機械與電子工程學院最大/最小值指令指令MAX[src,]dst;dst=max(src,dst)MIN[src,]dst;dst=min(src,dst)狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:CARRY7/29/202355東華理工大學機械與電子工程學院舉例1:
MAXAC2,AC1
;由于(AC2)<(AC1),所以AC1保 持不變且CARRY狀態(tài)位置1舉例2:
MINAC1,T1;由于T1<AC1(15-0),所以T1的內(nèi)容保持不變且將CARRY狀態(tài)位置1
7/29/202356東華理工大學機械與電子工程學院存儲器比較指令指令CMPSmem==K16,TCx
;IfSmem==K16thenTCx=1elseTCx=0狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:TCx舉例CMP*AR1+==#400h,TC17/29/202357東華理工大學機械與電子工程學院寄存器比較指令指令—在D單元和A單元的ALU中完成兩個累加器、輔助寄存器或臨時寄存器的比較,若累加器與輔助寄存器或臨時寄存器比較,在A單元將ACx(15-0)與TAx進行比較狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,TCy。執(zhí)行指令后會受影響的狀態(tài)位:TCx
7/29/202358東華理工大學機械與電子工程學院舉例1:
CMPAC1==T1,TC1
;由于AC1(15-0)=T1,所以將TC1置17/29/202359東華理工大學機械與電子工程學院條件移位指令指令SFTCCACx,TCx
;IfACx(39–0)=0thenTCx=1;IfACx(31–0)hastwosignbitsthen;ACx=ACx(31–0)<<#1andTCx=0;elseTCx=1狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:TCx
舉例SFTCCAC0,TC17/29/202360東華理工大學機械與電子工程學院帶符號移位指令指令—移位指令中的移位值由立即數(shù)、SHIFTW或Tx內(nèi)容確定狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,SATA,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY7/29/202361東華理工大學機械與電子工程學院舉例1:
SFTST2,#1;T2=T2<<#1舉例2:
SFTSCAC0,#–5,AC1
;AC1=AC0>>5,移出的位裝入CARRY
7/29/202362東華理工大學機械與電子工程學院修改輔助寄存器(MAR)指令指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:ST2-55執(zhí)行指令后會受影響的狀態(tài)位:無舉例AADD#255,T0;T0=T0+255AMOV#255,AR0;AR0=255AMAR*AR3+;AR3=AR3+17/29/202363東華理工大學機械與電子工程學院修改堆棧指針指令指令
AADDK8,SP;SP=SP+K8
狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:無。舉例
AADD#127,SP;SP=SP+1277/29/202364東華理工大學機械與電子工程學院隱含并行指令指令加-存儲、乘加/減-存儲、加/減-存儲、裝載-存儲和乘加/減-裝載狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,C54CM,M40,RDM,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY7/29/202365東華理工大學機械與電子工程學院隱含并行指令
7/29/202366東華理工大學機械與電子工程學院舉例:
MPYMR*AR0+,T0,AC1 ::MOVHI(AC0<<T2),*AR1+
;AC1=(*AR0)*T0,因為FRCT=1,AC1=rnd(AC1*2), ;AC0=AC0<<T2,(*AR1)=AC0(31-16),AR1=AR1+1, ;AR0=AR0+1
7/29/202367東華理工大學機械與電子工程學院絕對距離指令指令以并行方式完成兩個操作,一個在D單元的MAC中,另一個在D單元的ALU中ABDSTXmem,Ymem,ACx,ACy
;ACy=ACy+|HI(ACx)|;ACx=(Xmem<<#16)–(Ymem<<#16)狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,C54CM,M40,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY7/29/202368東華理工大學機械與電子工程學院舉例:
ABDST*AR0+,*AR1,AC0,AC1
;AC1=AC1+|HI(AC0)|
;AC0=((*AR0)<<#16)–((*AR1)<<#16) ;AR0=AR0+17/29/202369東華理工大學機械與電子工程學院絕對值指令指令ABS[src,]dst
;dst=|src|狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,SATA,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,CARRY舉例
ABSAR1,AC1;AC1=|AR1|7/29/202370東華理工大學機械與電子工程學院FIR濾波指令指令FIRSADDXmem,Ymem,Cmem,ACx,ACy
;ACy=ACy+(ACx(32-16)*Cmem)
;ACx=(Xmem<<#16)+(Ymem<<#16)FIRSSUBXmem,Ymem,Cmem,ACx,ACy
;ACy=ACy+(ACx(32-16)*Cmem)
;ACx=(Xmem<<#16)–(Ymem<<#16)狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,C54CM,M40,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY7/29/202371東華理工大學機械與電子工程學院舉例:
FIRSADD*AR0,*AR1,*CDP,AC0,AC1
;AC1=AC1+AC0(32-16)*(*CDP)
;AC0=((*AR0)<<#16)+((*AR1)<<#16)7/29/202372東華理工大學機械與電子工程學院最小均方(LMS)指令指令LMSXmem,Ymem,ACx,ACy
;ACy=ACy+(Xmem*Ymem)
;::ACx=rnd(ACx+(Xmem<<#16))狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,C54CM,M40,RDM,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY7/29/202373東華理工大學機械與電子工程學院舉例:
LMS*AR0,*AR1,AC0,AC1
;AC1=AC1+(*AR0)*(*AR1)
;::AC0=rnd(AC0+((*AR0)<<#16))7/29/202374東華理工大學機械與電子工程學院補碼指令指令NEG[src,]dst
;dst=–src
狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:M40,SATA,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,CARRY舉例
NEGAC1,AC0;AC0=-AC1
7/29/202375東華理工大學機械與電子工程學院歸一化指令指令MANTACx,ACy
;ACy=mant(ACx),::NEXPACx,Tx
;Tx=–exp(ACx)EXPACx,Tx
;Tx=exp(ACx)狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:無舉例
MANTAC0,AC1;AC1等于AC0的尾數(shù),即將AC0右移與32位帶符號數(shù)對齊后的值;::NEXPAC0,T1;T1等于將AC0的MSB左移與32位帶符號數(shù)對齊所移位的次數(shù)值7/29/202376東華理工大學機械與電子工程學院飽和和舍入指令指令SAT[R][ACx,]ACy
;ACy=saturate(rnd(ACx))ROUND[ACx,]ACy
;ACy=rnd(ACx)狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,RDM,SATD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVy
7/29/202377東華理工大學機械與電子工程學院舉例1:
ROUNDAC0,AC1
;AC1=AC0+8000h,且16個最低有效位清0舉例2:
SATAC0,AC1
;將32位的AC0飽和,將飽和后的值FF80000000裝入AC1
7/29/202378東華理工大學機械與電子工程學院平方差指令指令SQDSTXmem,Ymem,ACx,ACy
;ACy=ACy+(ACx(32-16)*ACx(32-16))
;ACx=(Xmem<<#16)–(Ymem<<#16)狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,C54CM,M40,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY7/29/202379東華理工大學機械與電子工程學院舉例:
SQDST*AR0,*AR1,AC0,AC1
;AC1=AC1+(AC0(32-16))*(AC0(32-16)) ;AC0=((*AR0)<<16)-((*AR1<<16)7/29/202380東華理工大學機械與電子工程學院位操作指令
位域比較指令指令BANDSmem,k16,TCx
;If(((Smem)ANDk16)==0),TCx=0
;elseTCx=1狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:TCx
舉例:BAND*AR3,#00A0h,TC2
;由于(*AR3)ANDk16==0,TC2=07/29/202381東華理工大學機械與電子工程學院位計數(shù)指令BCNTACx,ACy,TCx,Tx
;Tx=(ACxANDACy)中1的個數(shù) ;若Tx為奇數(shù),則TCx=1,反之TCx=0狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:TCx
舉例:BCNTAC1,AC2,TC1,T1
;T1=(AC1與AC2)中1的個數(shù),個數(shù)是奇數(shù),TC1=17/29/202382東華理工大學機械與電子工程學院位域擴展和抽取指令指令位域抽?。築FXTRk16,ACx,dst
;從LSB到MSB將k16中非零位對應的ACx中的位抽取出來,依次放到dst的LSB中位域擴展:BFXPAk16,ACx,dst
;將ACx的LSB放到k16中非零位對應的dst中的位置上,;ACx的LSB個數(shù)等于k16中1的個數(shù)狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:無7/29/202383東華理工大學機械與電子工程學院舉例1:
BFXTR#8024h,AC0,T2
;從最低位到最高位將(8024h)中非零位對應的AC0中的位抽取出來依次放到T2的LSB中
舉例2:
BFXPA#8024h,AC0,T2
;將AC0的LSB放到#8024h中非零位對應的T2中的位置上,AC0的LSB個數(shù)等于#8024h中1的個數(shù)
7/29/202384東華理工大學機械與電子工程學院存儲器位操作指令指令測試、清零、置位和取反
狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:TCx
7/29/202385東華理工大學機械與電子工程學院舉例1:
BTSTAC0,*AR0,TC1
;位地址AC0(3-0)=8,測試(*AR0)的位8,結(jié)果存入TC1舉例2:
BTSTNOT#12,*AR0,TC1
;測試(*AR0)的位12,結(jié)果存入TC1,并將(*AR0)的位12取反
7/29/202386東華理工大學機械與電子工程學院寄存器位操作指令指令測試、置位、清零和取反操作狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:TCx
7/29/202387東華理工大學機械與電子工程學院舉例1:
BTST@#12,T0,TC1
;測試T0的位12,將結(jié)果存入TC1
舉例2:
BNOTAR1,T0
;將T0中由AR1確定的位12取反
7/29/202388東華理工大學機械與電子工程學院舉例3:
BTSTPAR1(T0),AC0
;由基地址(AR1)和偏移地址T0確定的位地址為39,測試AC0中的第39位并存入TC1;測試AC0中的第40位并存入TC27/29/202389東華理工大學機械與電子工程學院狀態(tài)位設置指令指令置位和清零狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:已經(jīng)選擇的狀態(tài)位7/29/202390東華理工大學機械與電子工程學院舉例1:
BCLRAR1LC,ST2_55
;由標號AR1LC確定位地址為1,將ST2-55的位2清零
舉例2:
BSETCARRY,ST0_55
;由標號CARRY確定位地址為11,將ST0-55的位11置位
舉例3:
BSETCARRY
;將ST0-55的CARRY(位11)置位
7/29/202391東華理工大學機械與電子工程學院擴展輔助寄存器操作指令
指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:ST2-55。執(zhí)行指令后會受影響的狀態(tài)位:無7/29/202392東華理工大學機械與電子工程學院舉例1:
AMAR*AR1+,XAR0;將(*AR1)的內(nèi)容裝入XAR0,且AR1增1AMOV#7FFFFFh;將23位的值(7FFFFFh)裝入XAR0MOVdbl(*AR3),XAR1;將(*AR3)低7位和(*(AR3+1))的16位裝入XAR17/29/202393東華理工大學機械與電子工程學院位操作指令
位域比較指令指令BANDSmem,k16,TCx
;If(((Smem)ANDk16)==0),TCx=0
;elseTCx=1狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:TCx
舉例:BAND*AR3,#00A0h,TC2
;由于(*AR3)ANDk16==0,TC2=07/29/202394東華理工大學機械與電子工程學院邏輯運算指令
按位與/或/異或/取反指令指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40。執(zhí)行指令后會受影響的狀態(tài)位:無7/29/202395東華理工大學機械與電子工程學院舉例1:
NOTAC0,AC1
;將AC0的內(nèi)容取反,結(jié)果存入AC1
舉例2:
ANDAC0,AC1;AC1=AC1ANDAC0
舉例3:AC0<<#4,AC1;將AC0邏輯左移4位后與AC1相或,結(jié)果存 入AC1舉例4:XORAC0,AC1;AC1=AC1XORAC07/29/202396東華理工大學機械與電子工程學院邏輯移位指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40。執(zhí)行指令后會受影響的狀態(tài)位:CARRY7/29/202397東華理工大學機械與電子工程學院舉例1:
SFTLAC1,#1;AC1=AC1<<#1,由于M40=0,CARRY=位31,且位(39-32)清零
舉例2:
SFTLAC0,T0,AC1;AC1=AC0<<-6,由于M40=0,所以(39-32)清零
7/29/202398東華理工大學機械與電子工程學院循環(huán)移位指令ROLBitOut,src,BitIn,dst
;將BitIn移進src的LSB,src被移出的位存放于BitOut,此時的結(jié)果放到dst中RORBitIn,src,BitOut,dst
;將BitIn移進src的MSB,src被移出的位存放于BitOut,此時的結(jié)果放到dst中狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:CARRY,M40,TC2。執(zhí)行指令后會受影響的狀態(tài)位:CARRY,TC2舉例:ROLCARRY,AC1,TC2,AC1;將TC2移入AC1的LSB,將AC1中位31移出放入CARRY,由于M40=0,將AC0(39-32)清零7/29/202399東華理工大學機械與電子工程學院移動指令
累加器、輔助寄存器或臨時寄存器裝載、存儲、移動和交換存儲單元間的移動及初始化入棧和出棧CPU寄存器裝載令、存儲和移動7/29/2023100東華理工大學機械與電子工程學院累加器、輔助寄存器或臨時寄存器裝載、存儲、移動和交換指令指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,RDM,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx
舉例1:MOVAC0,*(#0E10h);將AC0(15-0)存入E10h單元7/29/2023101東華理工大學機械與電子工程學院舉例2:
MOVAC0,AC1;AC1=AC0,由于M40=0,在31位檢測到溢出,將ACOV1置位
舉例3:
MOV#248,AC1;AC1=#248舉例4:SWAPAR4,T0,將AR4的內(nèi)容和T0的內(nèi)容互換7/29/2023102東華理工大學機械與電子工程學院存儲單元間的移動及初始化指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:無7/29/20231
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- DZ/T 0262-2014集鎮(zhèn)滑坡崩塌泥石流勘查規(guī)范
- DZ/T 0101.1-1994地質(zhì)儀器儀表制造時間定額車床
- CJ/T 51-2004城市污水水質(zhì)檢驗方法標準
- CJ/T 169-2018微濾水處理設備
- CJ/T 124-2004給水用鋼骨架聚乙烯塑料復合管件
- CJ/T 107-1999城市公共交通客運設施城市公共汽、電車候車亭
- 破解Msoffice考題的技巧與方法試題及答案
- 2025年網(wǎng)絡設計師考前錦囊及試題答案
- 系統(tǒng)集成領(lǐng)域發(fā)展動態(tài)試題及答案
- 數(shù)控技能測試試題及答案
- 2023年廣州中考政治試題及答案
- T-SCSTA001-2025《四川省好住房評價標準》
- 2025-2030全球及中國貨運保險行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 《MTP管理技能提升》課件
- 《探索微生物世界的奧秘》課件
- 隔離防護培訓課件
- 《機械基礎》課件 學習情境三 平面匯交力系
- 掘進工作面質(zhì)量標準化細化標準實施方案
- 2025年春統(tǒng)編版初中道德與法治八年級下冊(全冊)教學設計及反思(附教材目錄P210)
- 中國數(shù)據(jù)中心產(chǎn)業(yè)發(fā)展白皮書023年
- 隱形股份合同協(xié)議
評論
0/150
提交評論