版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
TMS320C55x的指令系統(tǒng)
尋址方式TMS320C55x的指令系統(tǒng)
12/31/20221東華理工大學(xué)機械與電子工程學(xué)院TMS320C55x的指令系統(tǒng)12/指令中使用的語法元素符號如下: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)12/31/20222東華理工大學(xué)機械與電子工程學(xué)院指令中使用的語法元素符號如下:12/27/20222東華理工指令中涉及的寄存器如下:1.累加器(AC0-AC340bitACxG:ACxH:ACxL)2.擴展數(shù)據(jù)頁寄存器(XDP,DPH,DP)
XDP的高7位是DPH,DP是數(shù)據(jù)頁寄存器。DPH和DP都可作為存儲器映射寄存器(MMR)訪問,但是XDP不可作為MMR訪問。12/31/20223東華理工大學(xué)機械與電子工程學(xué)院指令中涉及的寄存器如下:12/27/20223東華理工大學(xué)機3.輔助寄存器(AR0-7)與擴展輔助寄存器(XAR0-7)ARn可作為存儲器映射寄存器(MMR)訪問;ARnH是擴展輔助寄存器的高位,不可單獨訪問,只能通過訪問XARn進行。XARn不是存儲器映射寄存器。12/31/20224東華理工大學(xué)機械與電子工程學(xué)院3.輔助寄存器(AR0-7)與擴展輔助寄存器(XAR0-7)地址寄存器名位域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)hT0-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)12/31/20225東華理工大學(xué)機械與電子工程學(xué)院地址寄存器名位域000000/1hIER地址寄存器名位域000010h-17hAR0-715-0000018h/4DhSP(數(shù)據(jù)堆棧指針)15-000002BhDPH擴展數(shù)據(jù)頁高字6-000002EhDP數(shù)據(jù)頁寄存器15-000002FhPDP外設(shè)數(shù)據(jù)頁寄存器8-000004ChSSP系統(tǒng)堆棧指針15-000004EhSPH擴展堆棧指針高字6-0000027hCDP系數(shù)數(shù)據(jù)指針15-000004FhCDPH系數(shù)數(shù)據(jù)指針高字6-0000019/30/47hBK03/BK47/BKC:CDP循環(huán)緩沖區(qū)大小寄存器15-000001A/39hBRC0/BRC1塊重復(fù)計數(shù)器0/115-000001B/1ChRSA0L/REA0L塊重復(fù)首/尾地址寄存器的低字15-00000/32h-35hBSA01/23/45/67:ARn循環(huán)緩沖區(qū)首地址寄存器(AR0-1,2-3,4-5,6-7)15-0000036hBSAC:CDP的循環(huán)緩沖區(qū)首地址寄存器15-000003C-3DhRSA0H(23-16)/RSA0L:塊重復(fù)首地址寄存器015-000003E-3FhREA0H(23-16)/REA0L:塊重復(fù)末地址寄存器015-012/31/20226東華理工大學(xué)機械與電子工程學(xué)院地址寄存器名位域000010h-17hAR尋址方式尋址方式是指如何指定指令和操作數(shù)所在存儲空間的地址。C55xDSP支持三種尋址模式絕對尋址:模式指令中的常數(shù)作為地址或部分地址完成尋址,共有三種方式:K16,K23,I/O;直接尋址模式:使用地址的偏移地址尋址,共有四種方式:DP(ST1-55CPL=0),SP(ST1-55CPL=1),寄存器位,PDP(外設(shè)數(shù)據(jù)頁指針);間接尋址模式:使用指針完成尋址,共有四種方式:AR,雙AR,CDP,系數(shù)間接尋址。12/31/20227東華理工大學(xué)機械與電子工程學(xué)院尋址方式尋址方式是指如何指定指令和操作數(shù)所在存儲空間的地址絕對尋址模式
k16絕對尋址其操作數(shù)為*abs16(#k16),[k16:16位的無符號常數(shù)]將7位的寄存器DPH和k16級聯(lián)形成一個23位的地址,用于對數(shù)據(jù)空間的訪問K16絕對尋址模式
12/31/20228東華理工大學(xué)機械與電子工程學(xué)院絕對尋址模式k16絕對尋址K12/27/20228東華理工k23絕對尋址操作數(shù)為*(#k23),[k23:23位的無符號常數(shù)]I/O絕對尋址操作數(shù)是*port(#k16),[k16:16位無符號常數(shù)]使用助記符指令,操作數(shù)是port(#k16)(操作數(shù)前沒有*)k23絕對尋址模式
I/O絕對尋址12/31/20229東華理工大學(xué)機械與電子工程學(xué)院k23絕對尋址k23絕對尋址模式I/O絕對尋址12/2直接尋址方式描述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。直接尋址模式
12/31/202210東華理工大學(xué)機械與電子工程學(xué)院直接尋址方式描述DP直接尋址用DPH和DP合高7位由DPH提供,用來確定主數(shù)據(jù)頁低16位由兩部分組成:DP7位偏移量(Doffset)DP直接尋址模式
DP直接尋址12/31/202211東華理工大學(xué)機械與電子工程學(xué)院高7位由DPH提供,用來確定主數(shù)據(jù)頁DP直接尋址模式DP
SP直接尋址
SPH確定高7位地址16位地址由SP和7位偏移量決定,偏移量范圍是0~127由SPH和SP構(gòu)成了擴展數(shù)據(jù)堆棧指針XSP
SP直接尋址模式12/31/202212東華理工大學(xué)機械與電子工程學(xué)院SP直接尋址SP直接尋址模式12/27/202212東寄存器位尋址
操作數(shù)是@bitoffset,為寄存器最低位開始的偏移值只有寄存器的位測試、置位、清零、取反指令支持這種尋址模式PDP直接尋址(64K×16位I/O空間,128字/512頁,PDP的9位)
PDP直接尋址模式
12/31/202213東華理工大學(xué)機械與電子工程學(xué)院寄存器位尋址P12/27/202213東華理工大學(xué)機械與電間接尋址方式尋址方式描述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)尋址12/31/202214東華理工大學(xué)機械與電子工程學(xué)院間接尋址方式尋址方式描述間接尋址模式AR間接尋址模式
通過一個輔助寄存器ARn(n=0~7)訪問數(shù)據(jù)空間ST2-55的ARMS位決定AR間接尋址的操作類型ARMS=0,DSP模式:CPU提供增強應(yīng)用的高效執(zhí)行功能ARMS=1,控制模式:CPU能夠優(yōu)化代碼的長度AR間接尋址DSP模式12/31/202215東華理工大學(xué)機械與電子工程學(xué)院間接尋址模式AR間接尋址模式AR間接尋址DSP模式12雙AR間接尋址模式通過輔助寄存器(AR0~AR7)同時訪問兩個數(shù)據(jù)存儲單元實現(xiàn)功能:執(zhí)行一條可完成兩個16位數(shù)據(jù)空間訪問的指令X/Ymen并行執(zhí)行兩條指令
,每條指令訪問一個存儲數(shù)據(jù)S/Lmen
雙AR間接尋址操作數(shù)
12/31/202216東華理工大學(xué)機械與電子工程學(xué)院雙AR間接尋址模式雙AR間接尋址操作數(shù)12/27/202CDP間接尋址模式使用系數(shù)數(shù)據(jù)指針(CDP)對數(shù)據(jù)空間、寄存器位和I/O空間進行訪問CDP間接尋址操作數(shù)12/31/202217東華理工大學(xué)機械與電子工程學(xué)院CDP間接尋址模式CDP間接尋址操作數(shù)12/27/2022系數(shù)間接尋址模式支持以下算術(shù)指令:FIR濾波乘法乘加乘減雙乘加或雙乘減
系數(shù)間接尋址操作數(shù)12/31/202218東華理工大學(xué)機械與電子工程學(xué)院系數(shù)間接尋址模式系數(shù)間接尋址操作數(shù)12/27/2022183.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)生單元、總線等資源沖突;其中一條指令必須有并行使能位或兩條指令符合軟-雙并行條件。12/31/202219東華理工大學(xué)機械與電子工程學(xué)院3.2.1C55x指令的并行執(zhí)行指令并行的特征12/不能使用并行方式的情況
使用立即數(shù)尋址方式例如:
*abs16(#k16);*(#k23);port(#k16);*ARn(K16);*+ARn(K16);*CDP(K16);*+CDP(K16)
條件跳轉(zhuǎn)、條件調(diào)用、中斷、復(fù)位等程序控制指令例如:
BCCP24,cond;CALLCCP24,cond; IDLE;INTRk5;RESET;TRAPk5
使用下列指令或者操作修飾符例如:
mmap();port();<instruction>.CR; <instruction>.LR12/31/202220東華理工大學(xué)機械與電子工程學(xué)院不能使用并行方式的情況12/27/202220東華理工大學(xué)資源沖突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ù)量的總線12/31/202221東華理工大學(xué)機械與電子工程學(xué)院資源沖突12/27/202221東華理工大學(xué)機械與電子工程學(xué)軟-雙并行條件
兩個存儲器操作數(shù)必須是雙AR間接尋址模式指令不能包含high_byte(Smem)和low_byte(Smem)
指令不能讀、寫同一個存儲器單元如果指令中的k4的值是0~8,就會改變XDP的值,所以,不能與加載DP的指令組成并行指令讀重復(fù)計數(shù)寄存器(RPTC)指令不能和如下的任何一個單重復(fù)指令組成并行指令
RPT,RPTADD,RPTSUB,RPTCC。12/31/202222東華理工大學(xué)機械與電子工程學(xué)院軟-雙并行條件12/27/202222東華理工大學(xué)機械與電3.2.2TMS320C55XDSP的匯編指令指令集中使用的術(shù)語、符號和縮寫12/31/202223東華理工大學(xué)機械與電子工程學(xué)院3.2.2TMS320C55XDSP的匯編指令指令指令集中使用的運算符12/31/202224東華理工大學(xué)機械與電子工程學(xué)院指令集中使用的運算符12/27/202224東華理工大學(xué)機TMS320C55x指令集按操作類型分類算術(shù)運算指令位操作指令擴展輔助寄存器操作指令邏輯運算指令移動指令程序控制指令注:一條指令的屬性包括:指令,執(zhí)行的操作,是否有并行使能位,長度,周期,在流水線上的執(zhí)行階段以及執(zhí)行的功能單元等。
12/31/202225東華理工大學(xué)機械與電子工程學(xué)院TMS320C55x指令集按操作類型分類算術(shù)運算指令注:一條算術(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,CARRY12/31/202226東華理工大學(xué)機械與電子工程學(xué)院算術(shù)運算指令12/27/202226東華理工大學(xué)機械與電子加法指令
12/31/202227東華理工大學(xué)機械與電子工程學(xué)院加法指令12/27/202227東華理工大學(xué)機械與電子工程舉例:ADD*AR3+,T0,T1;AR3間接尋址得到的內(nèi)容與T0的內(nèi)容相加,結(jié)果裝入T1,并將AR3增1。12/31/202228東華理工大學(xué)機械與電子工程學(xué)院舉例:12/27/202228東華理工大學(xué)機械與電子工程學(xué)院舉例:ADD*AR1<<T0,AC1,AC0;將由AR1尋址得到的內(nèi)容左移T0位與AC1相加,結(jié)果裝入AC0。12/31/202229東華理工大學(xué)機械與電子工程學(xué)院舉例:ADD*AR1<<T0,AC1,AC0;將由AR減法指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:CARRY,C54CM,M40,SATA,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY指令12/31/202230東華理工大學(xué)機械與電子工程學(xué)院減法指令12/27/202230東華理工大學(xué)機械與電子工程學(xué)減法指令
12/31/202231東華理工大學(xué)機械與電子工程學(xué)院減法指令12/27/202231東華理工大學(xué)機械與電子工程舉例:SUBuns(*AR1),BORROW,AC0,AC1將CARRY位求反,AC0減去由AR1尋址得到的內(nèi)容及CARRY的內(nèi)容,并將結(jié)果裝入AC1。
12/31/202232東華理工大學(xué)機械與電子工程學(xué)院舉例:SUBuns(*AR1),BORROW,AC0條件減法指令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,CARRY12/31/202233東華理工大學(xué)機械與電子工程學(xué)院條件減法12/27/202233東華理工大學(xué)機械與電子工程舉例:
SUBC*AR1,AC0,AC1 如果(AC0–(*AR1)<<#15)>=0,則AC1=(AC0–(*AR1)<<#15)<<#1+1,否則AC1=AC0<<#112/31/202234東華理工大學(xué)機械與電子工程學(xué)院舉例:SUBC*AR1,AC0,AC112/27條件加減法指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,SATD,SXMD,TC1,TC2。執(zhí)行指令后會受影響的狀態(tài)位:ACOVy,CARRY12/31/202235東華理工大學(xué)機械與電子工程學(xué)院條件加減法12/27/202235東華理工大學(xué)機械與電子工舉例:
ADDSUBCC*AR1,AC0,TC2,AC1 如果TC2=1,則AC1=AC0+(*AR1<<#16, 否則AC1=AC0-(*AR1)<<#1612/31/202236東華理工大學(xué)機械與電子工程學(xué)院舉例:ADDSUBCC*AR1,AC0,TC2,A乘法指令指令在D單元的MAC中完成操作狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,M40,RDM,SATD執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy12/31/202237東華理工大學(xué)機械與電子工程學(xué)院乘法指令12/27/202237東華理工大學(xué)機械與電子工程乘法指令
12/31/202238東華理工大學(xué)機械與電子工程學(xué)院乘法指令12/27/202238東華理工大學(xué)機械與電子工程舉例:
MPYAC1,AC0;AC1=AC0*AC112/31/202239東華理工大學(xué)機械與電子工程學(xué)院舉例:MPYAC1,AC0;AC1=AC0*AC1乘加指令指令在D單元的MAC中完成操作狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,M40,RDM,SATD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy12/31/202240東華理工大學(xué)機械與電子工程學(xué)院乘加指令12/27/202240東華理工大學(xué)機械與電子工程乘加指令12/31/202241東華理工大學(xué)機械與電子工程學(xué)院乘加指令12/27/202241東華理工大學(xué)機械與電子工程學(xué)舉例1:
MACMR*AR1,*CDP,AC2 AC2=AC2+(*AR1)*(*CDP)12/31/202242東華理工大學(xué)機械與電子工程學(xué)院舉例1:MACMR*AR1,*CDP,AC212/舉例2:
MACMRuns(*AR2+),uns(*AR3+),AC3 AC3=(*AR2)+(*AR3)+AC3,AR2=AR2+1,AR3=AR3+1
12/31/202243東華理工大學(xué)機械與電子工程學(xué)院舉例2:MACMRuns(*AR2+),uns(*AR乘減指令指令在D單元的MAC中完成操作狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,M40,RDM,SATD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy12/31/202244東華理工大學(xué)機械與電子工程學(xué)院乘減指令12/27/202244東華理工大學(xué)機械與電子工程乘減指令
12/31/202245東華理工大學(xué)機械與電子工程學(xué)院乘減指令12/27/202245東華理工大學(xué)機械與電子工程舉例:
MASRT1,AC0,AC1 AC1=AC1-AC0*T112/31/202246東華理工大學(xué)機械與電子工程學(xué)院舉例:MASRT1,AC0,AC112/27/20雙乘加/減指令指令—利用D單元的兩個MAC在一個周期內(nèi)同時執(zhí)行兩個乘法或乘加/減運算狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,M40,RDM,SATD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy12/31/202247東華理工大學(xué)機械與電子工程學(xué)院雙乘加/減指令12/27/202247東華理工大學(xué)機械與電舉例:
MASR40uns(*AR0),uns(*CDP),AC0 ::MACR40uns(*AR1),uns(*CDP),AC1 ;AC0=AC0-uns(*AR0)*uns(*CDP) ;AC1=AC1-uns(*AR1)*uns(*CDP)12/31/202248東華理工大學(xué)機械與電子工程學(xué)院舉例: MASR40uns(*AR0),uns(*CD雙16位算術(shù)指令指令—利用D單元中的ALU在一個周期內(nèi)完成兩個并行的算術(shù)運算,包括一加一減、一減一加、兩個加法或兩個減法狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY12/31/202249東華理工大學(xué)機械與電子工程學(xué)院雙16位算術(shù)指令12/27/202249東華理工大學(xué)機械與雙16位算術(shù)指令12/31/202250東華理工大學(xué)機械與電子工程學(xué)院雙16位算術(shù)指令12/27/202250東華理工大學(xué)機械與電舉例:
ADDSUBT1,*AR1,AC1 ;AC1(39-16)=(*AR1)+T1 ;||AC1(15-0)=(*AR1)-T112/31/202251東華理工大學(xué)機械與電子工程學(xué)院舉例:ADDSUBT1,*AR1,AC112/27比較和選擇極值指令指令—在D單元的ALU中完成兩個并行16位極值選擇操作和一個40位極值選擇操作狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,SATD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVw,CARRY12/31/202252東華理工大學(xué)機械與電子工程學(xué)院比較和選擇極值指令12/27/202252東華理工大學(xué)機械比較和選擇極值指令12/31/202253東華理工大學(xué)機械與電子工程學(xué)院比較和選擇極值指令12/27/202253東華理工大學(xué)機械與舉例:MAXDIFFAC0,AC1,AC2,AC112/31/202254東華理工大學(xué)機械與電子工程學(xué)院舉例:MAXDIFFAC0,AC1,AC2,AC1最大/最小值指令指令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)位:CARRY12/31/202255東華理工大學(xué)機械與電子工程學(xué)院最大/最小值指令12/27/202255東華理工大學(xué)機械與舉例1:
MAXAC2,AC1 ;由于(AC2)<(AC1),所以AC1保 持不變且CARRY狀態(tài)位置1舉例2:
MINAC1,T1;由于T1<AC1(15-0),所以T1的內(nèi)容保持不變且將CARRY狀態(tài)位置1
12/31/202256東華理工大學(xué)機械與電子工程學(xué)院舉例1:MAXAC2,AC1舉例2:MINAC1存儲器比較指令指令CMPSmem==K16,TCx ;IfSmem==K16thenTCx=1elseTCx=0狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:TCx舉例CMP*AR1+==#400h,TC112/31/202257東華理工大學(xué)機械與電子工程學(xué)院存儲器比較指令12/27/202257東華理工大學(xué)機械與電寄存器比較指令指令—在D單元和A單元的ALU中完成兩個累加器、輔助寄存器或臨時寄存器的比較,若累加器與輔助寄存器或臨時寄存器比較,在A單元將ACx(15-0)與TAx進行比較狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,TCy。執(zhí)行指令后會受影響的狀態(tài)位:TCx12/31/202258東華理工大學(xué)機械與電子工程學(xué)院寄存器比較指令12/27/202258東華理工大學(xué)機械與電舉例1:
CMPAC1==T1,TC1 ;由于AC1(15-0)=T1,所以將TC1置112/31/202259東華理工大學(xué)機械與電子工程學(xué)院舉例1:CMPAC1==T1,TC112/27條件移位指令指令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,TC112/31/202260東華理工大學(xué)機械與電子工程學(xué)院條件移位指令12/27/202260東華理工大學(xué)機械與電子帶符號移位指令指令—移位指令中的移位值由立即數(shù)、SHIFTW或Tx內(nèi)容確定狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,SATA,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY12/31/202261東華理工大學(xué)機械與電子工程學(xué)院帶符號移位指令12/27/202261東華理工大學(xué)機械與電舉例1:
SFTST2,#1;T2=T2<<#1舉例2:SFTSCAC0,#–5,AC1 ;AC1=AC0>>5,移出的位裝入CARRY
12/31/202262東華理工大學(xué)機械與電子工程學(xué)院舉例1:SFTST2,#1;T2=T2<<#1舉例修改輔助寄存器(MAR)指令指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:ST2-55執(zhí)行指令后會受影響的狀態(tài)位:無舉例AADD#255,T0;T0=T0+255AMOV#255,AR0;AR0=255AMAR*AR3+;AR3=AR3+112/31/202263東華理工大學(xué)機械與電子工程學(xué)院修改輔助寄存器(MAR)指令12/27/202263東華理修改堆棧指針指令指令
AADDK8,SP;SP=SP+K8
狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:無。舉例
AADD#127,SP;SP=SP+12712/31/202264東華理工大學(xué)機械與電子工程學(xué)院修改堆棧指針指令12/27/202264東華理工大學(xué)機械與電隱含并行指令指令加-存儲、乘加/減-存儲、加/減-存儲、裝載-存儲和乘加/減-裝載狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:FRCT,SMUL,C54CM,M40,RDM,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,ACOVy,CARRY12/31/202265東華理工大學(xué)機械與電子工程學(xué)院隱含并行指令12/27/202265東華理工大學(xué)機械與電子隱含并行指令
12/31/202266東華理工大學(xué)機械與電子工程學(xué)院隱含并行指令12/27/202266東華理工大學(xué)機械與電子舉例: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
12/31/202267東華理工大學(xué)機械與電子工程學(xué)院舉例:MPYMR*AR0+,T0,AC112/27絕對距離指令指令以并行方式完成兩個操作,一個在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,CARRY12/31/202268東華理工大學(xué)機械與電子工程學(xué)院絕對距離指令12/27/202268東華理工大學(xué)機械與電子舉例:
ABDST*AR0+,*AR1,AC0,AC1 ;AC1=AC1+|HI(AC0)| ;AC0=((*AR0)<<#16)–((*AR1)<<#16) ;AR0=AR0+112/31/202269東華理工大學(xué)機械與電子工程學(xué)院舉例:ABDST*AR0+,*AR1,AC0,AC11絕對值指令指令A(yù)BS[src,]dst;dst=|src|狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,SATA,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,CARRY舉例ABSAR1,AC1;AC1=|AR1|12/31/202270東華理工大學(xué)機械與電子工程學(xué)院絕對值指令12/27/202270東華理工大學(xué)機械與電子工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,CARRY12/31/202271東華理工大學(xué)機械與電子工程學(xué)院FIR濾波指令12/27/202271東華理工大學(xué)機械與電舉例:FIRSADD*AR0,*AR1,*CDP,AC0,AC1
;AC1=AC1+AC0(32-16)*(*CDP) ;AC0=((*AR0)<<#16)+((*AR1)<<#16)12/31/202272東華理工大學(xué)機械與電子工程學(xué)院舉例:FIRSADD*AR0,*AR1,*CDP,最小均方(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,CARRY12/31/202273東華理工大學(xué)機械與電子工程學(xué)院最小均方(LMS)指令12/27/202273東華理工大學(xué)舉例:
LMS*AR0,*AR1,AC0,AC1 ;AC1=AC1+(*AR0)*(*AR1) ;::AC0=rnd(AC0+((*AR0)<<#16))12/31/202274東華理工大學(xué)機械與電子工程學(xué)院舉例:LMS*AR0,*AR1,AC0,AC11補碼指令指令NEG[src,]dst;dst=–src狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:M40,SATA,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,CARRY舉例NEGAC1,AC0;AC0=-AC1
12/31/202275東華理工大學(xué)機械與電子工程學(xué)院補碼指令12/27/202275東華理工大學(xué)機械與電子工程歸一化指令指令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ù)值12/31/202276東華理工大學(xué)機械與電子工程學(xué)院歸一化指令12/27/202276東華理工大學(xué)機械與電子工飽和和舍入指令指令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)位:ACOVy12/31/202277東華理工大學(xué)機械與電子工程學(xué)院飽和和舍入指令12/27/202277東華理工大學(xué)機械與電舉例1:ROUNDAC0,AC1 ;AC1=AC0+8000h,且16個最低有效位清0舉例2:
SATAC0,AC1 ;將32位的AC0飽和,將飽和后的值FF80000000裝入AC1
12/31/202278東華理工大學(xué)機械與電子工程學(xué)院舉例1:ROUNDAC0,AC1舉例2:SATA平方差指令指令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,CARRY12/31/202279東華理工大學(xué)機械與電子工程學(xué)院平方差指令12/27/202279東華理工大學(xué)機械與電子工舉例:SQDST*AR0,*AR1,AC0,AC1
;AC1=AC1+(AC0(32-16))*(AC0(32-16)) ;AC0=((*AR0)<<16)-((*AR1<<16)12/31/202280東華理工大學(xué)機械與電子工程學(xué)院舉例:SQDST*AR0,*AR1,AC0,AC1位操作指令
位域比較指令指令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=012/31/202281東華理工大學(xué)機械與電子工程學(xué)院位操作指令12/27/202281東華理工大學(xué)機械與電子工位計數(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=112/31/202282東華理工大學(xué)機械與電子工程學(xué)院位計數(shù)12/27/202282東華理工大學(xué)機械與電子工程學(xué)位域擴展和抽取指令指令位域抽?。築FXTRk16,ACx,dst;從LSB到MSB將k16中非零位對應(yīng)的ACx中的位抽取出來,依次放到dst的LSB中位域擴展:BFXPAk16,ACx,dst;將ACx的LSB放到k16中非零位對應(yīng)的dst中的位置上,;ACx的LSB個數(shù)等于k16中1的個數(shù)狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:無12/31/202283東華理工大學(xué)機械與電子工程學(xué)院位域擴展和抽取指令12/27/202283東華理工大學(xué)機械舉例1:BFXTR#8024h,AC0,T2
;從最低位到最高位將(8024h)中非零位對應(yīng)的AC0中的位抽取出來依次放到T2的LSB中
舉例2:
BFXPA#8024h,AC0,T2
;將AC0的LSB放到#8024h中非零位對應(yīng)的T2中的位置上,AC0的LSB個數(shù)等于#8024h中1的個數(shù)
12/31/202284東華理工大學(xué)機械與電子工程學(xué)院舉例1:BFXTR#8024h,AC0,T2舉例2存儲器位操作指令指令測試、清零、置位和取反
狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:TCx
12/31/202285東華理工大學(xué)機械與電子工程學(xué)院存儲器位操作指令12/27/202285東華理工大學(xué)機械與舉例1:BTSTAC0,*AR0,TC1
;位地址AC0(3-0)=8,測試(*AR0)的位8,結(jié)果存入TC1舉例2:
BTSTNOT#12,*AR0,TC1
;測試(*AR0)的位12,結(jié)果存入TC1,并將(*AR0)的位12取反
12/31/202286東華理工大學(xué)機械與電子工程學(xué)院舉例1:BTSTAC0,*AR0,TC1舉例2:B寄存器位操作指令指令測試、置位、清零和取反操作狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:TCx12/31/202287東華理工大學(xué)機械與電子工程學(xué)院寄存器位操作指令12/27/202287東華理工大學(xué)機械與舉例1:
BTST@#12,T0,TC1
;測試T0的位12,將結(jié)果存入TC1
舉例2:
BNOTAR1,T0
;將T0中由AR1確定的位12取反
12/31/202288東華理工大學(xué)機械與電子工程學(xué)院舉例1:BTST@#12,T0,TC1舉例2:B舉例3:
BTSTPAR1(T0),AC0
;由基地址(AR1)和偏移地址T0確定的位地址為39,測試AC0中的第39位并存入TC1;測試AC0中的第40位并存入TC212/31/202289東華理工大學(xué)機械與電子工程學(xué)院舉例3:BTSTPAR1(T0),AC012/27/狀態(tài)位設(shè)置指令指令置位和清零狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:已經(jīng)選擇的狀態(tài)位12/31/202290東華理工大學(xué)機械與電子工程學(xué)院狀態(tài)位設(shè)置指令12/27/202290東華理工大學(xué)機械與電舉例1:
BCLRAR1LC,ST2_55
;由標號AR1LC確定位地址為1,將ST2-55的位2清零
舉例2:
BSETCARRY,ST0_55
;由標號CARRY確定位地址為11,將ST0-55的位11置位
舉例3:
BSETCARRY
;將ST0-55的CARRY(位11)置位
12/31/202291東華理工大學(xué)機械與電子工程學(xué)院舉例1:BCLRAR1LC,ST2_55舉例2:B擴展輔助寄存器操作指令
指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:ST2-55。執(zhí)行指令后會受影響的狀態(tài)位:無12/31/202292東華理工大學(xué)機械與電子工程學(xué)院擴展輔助寄存器操作指令12/27/202292東華理工大學(xué)舉例1:
AMAR*AR1+,XAR0;將(*AR1)的內(nèi)容裝入XAR0,且AR1增1AMOV#7FFFFFh;將23位的值(7FFFFFh)裝入XAR0MOVdbl(*AR3),XAR1;將(*AR3)低7位和(*(AR3+1))的16位裝入XAR112/31/202293東華理工大學(xué)機械與電子工程學(xué)院舉例1:12/27/202293東華理工大學(xué)機械與電子工程位操作指令
位域比較指令指令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=012/31/202294東華理工大學(xué)機械與電子工程學(xué)院位操作指令12/27/202294東華理工大學(xué)機械與電子工邏輯運算指令
按位與/或/異或/取反指令指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40。執(zhí)行指令后會受影響的狀態(tài)位:無12/31/202295東華理工大學(xué)機械與電子工程學(xué)院邏輯運算指令12/27/202295東華理工大學(xué)機械與電子舉例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=AC1XORAC012/31/202296東華理工大學(xué)機械與電子工程學(xué)院舉例1:NOTAC0,AC1;將AC0的內(nèi)容取反,結(jié)邏輯移位指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40。執(zhí)行指令后會受影響的狀態(tài)位:CARRY12/31/202297東華理工大學(xué)機械與電子工程學(xué)院邏輯移位12/27/202297東華理工大學(xué)機械與電子工程舉例1:
SFTLAC1,#1;AC1=AC1<<#1,由于M40=0,CARRY=位31,且位(39-32)清零
舉例2:
SFTLAC0,T0,AC1;AC1=AC0<<-6,由于M40=0,所以(39-32)清零
12/31/202298東華理工大學(xué)機械與電子工程學(xué)院舉例1:SFTLAC1,#1;AC1=AC1<<#1循環(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)清零12/31/202299東華理工大學(xué)機械與電子工程學(xué)院循環(huán)移位12/27/202299東華理工大學(xué)機械與電子工程移動指令
累加器、輔助寄存器或臨時寄存器裝載、存儲、移動和交換存儲單元間的移動及初始化入棧和出棧CPU寄存器裝載令、存儲和移動12/31/2022100東華理工大學(xué)機械與電子工程學(xué)院移動指令12/27/2022100東華理工大學(xué)機械與電子工累加器、輔助寄存器或臨時寄存器裝載、存儲、移動和交換指令指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:C54CM,M40,RDM,SATD,SXMD。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx舉例1:MOVAC0,*(#0E10h);將AC0(15-0)存入E10h單元12/31/2022101東華理工大學(xué)機械與電子工程學(xué)院累加器、輔助寄存器或臨時寄存器裝載、存儲、移動和交換指令舉例2:
MOVAC0,AC1;AC1=AC0,由于M40=0,在31位檢測到溢出,將ACOV1置位
舉例3:
MOV#248,AC1;AC1=#248舉例4:SWAPAR4,T0,將AR4的內(nèi)容和T0的內(nèi)容互換12/31/2022102東華理工大學(xué)機械與電子工程學(xué)院舉例2:MOVAC0,AC1;AC1=AC0,由于M存儲單元間的移動及初始化指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:無12/31/2022103東華理工大學(xué)機械與電子工程學(xué)院存儲單元間的移動及初始化12/27/2022103東華理舉例1:
DELAY*AR1+;*(AR3+1)=*(AR3),AR3=AR3+1
舉例2:
MOV*CDP,*(#0500h);將(*CDP)存入0500h處
12/31/2022104東華理工大學(xué)機械與電子工程學(xué)院舉例1:DELAY*AR1+;*(AR3+1)=*(A入棧和出棧指令指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:無12/31/2022105東華理工大學(xué)機械與電子工程學(xué)院入棧和出棧指令12/27/2022105東華理工大學(xué)機械與舉例1:
POPAC0,AC1 ;AC0(15-0)=(SP),AC1(15-0)=(SP+1)(39-16)不變,SP=SP+2
舉例2:
PSHAR0,AC1 ;SP=SP-2,(SP)=AR0,(SP+1)=AC1(15-0)
12/31/2022106東華理工大學(xué)機械與電子工程學(xué)院舉例1:POPAC0,AC1舉例2:PSHAR0CPU寄存器裝載、存儲和移動指令指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:無舉例1:MOVT1,BRC1;BRC1=BRS1=T1MOVSP,*AR1+;(*AR1)=(SP),AR1=AR1+112/31/2022107東華理工大學(xué)機械與電子工程學(xué)院CPU寄存器裝載、存儲和移動指令12/27/20221076.程序控制指令
跳轉(zhuǎn)指令調(diào)用與返回指令中斷與返回指令重復(fù)指令12/31/2022108東華理工大學(xué)機械與電子工程學(xué)院6.程序控制指令12/27/2022108東華理工大學(xué)跳轉(zhuǎn)指令指令—包括條件跳轉(zhuǎn)、無條件跳轉(zhuǎn)狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:ACOVx,CARRY,C54CM,M40,TCx。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx12/31/2022109東華理工大學(xué)機械與電子工程學(xué)院跳轉(zhuǎn)指令12/27/2022109東華理工大學(xué)機械與電子工跳轉(zhuǎn)指令
12/31/2022110東華理工大學(xué)機械與電子工程學(xué)院跳轉(zhuǎn)指令12/27/2022110東華理工大學(xué)機械與電子工舉例1:
BCCbranch,TC1
;TC1=1,程序跳轉(zhuǎn)到標號branch處執(zhí)行舉例2:
BAC0;PC=AC0(23-0)12/31/2022111東華理工大學(xué)機械與電子工程學(xué)院舉例1:BCCbranch,TC1;TC1=1調(diào)用與返回指令指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:ACOVx,CARRY,C54CM,M40,TCx。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx舉例CALLCC(subroutine),AC1>=#2000h;AC1>=#2000h,PC=子程序地址RETCCACOV0=#0;ACOV0=0,PC=調(diào)用子程序的返回地址12/31/2022112東華理工大學(xué)機械與電子工程學(xué)院調(diào)用與返回指令12/27/2022112東華理工大學(xué)機械與中斷與返回指令指令I(lǐng)NTRk5;程序執(zhí)行中斷服務(wù)子程序,中斷向量地址由中斷向量指針(IVPD)和5比TRAPk5;特無符號數(shù)確定RETI;PC=中斷任務(wù)的返回地址狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:無。執(zhí)行指令后會受影響的狀態(tài)位:INTM12/31/2022113東華理工大學(xué)機械與電子工程學(xué)院中斷與返回指令12/27/2022113東華理工大學(xué)機械與重復(fù)指令指令狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:ACOVx,CARRY,C54CM,M40,TCx。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx12/31/2022114東華理工大學(xué)機械與電子工程學(xué)院重復(fù)指令12/27/2022114東華理工大學(xué)機械與電子工舉例1:
RPTCSR;下一條指令執(zhí)行CSR+1次 MACM*AR3+,*AR4+,AC112/31/2022115東華理工大學(xué)機械與電子工程學(xué)院舉例1:RPTCSR;下一條指令執(zhí)行CSR+1次12其他程序控制指令指令XCC[label,]cond;當條件滿足時,執(zhí)行下面一條指令XCCPART[label,]cond;當條件滿足時,執(zhí)行下面兩條并行指令I(lǐng)DLE;空閑NOP;空操作,PC=PC+1NOP_16;空操作,PC=PC+2RESET;軟件復(fù)位狀態(tài)位影響指令執(zhí)行的狀態(tài)位有:ACOVx,CARRY,C54CM,M40,TCx,INTM。執(zhí)行指令后會受影響的狀態(tài)位:ACOVx,IFR0,IFR1,ST0-55,ST1-55,ST2-5512/31/2022116東華理工大學(xué)機械與電子工程學(xué)院其他程序控制指令12/27/2022116東華理工大學(xué)機械舉例1:
XCCbranch,*AR0!=#0;AR0不等于0,執(zhí)行下一條指令(ADD)
ADD*AR2+,AC0;AC0=AC0+(*AR2),AR2=AR2+112/31/2022117東華理工大學(xué)機械與電子工程學(xué)院舉例1:XCCbranch,*AR0!=#0;ATMS320C55x的指令系統(tǒng)
尋址方式TMS320C55x的指令系統(tǒng)
12/31/2022118東華理工大學(xué)機械與電子工程學(xué)院TMS320C55x的指令系統(tǒng)12/指令中使用的語法元素符號如下: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)12/31/2022119東華理工大學(xué)機械與電子工程學(xué)院指令中使用的語法元素符號如下:12/27/20222東華理工指令中涉及的寄存器如下:1.累加器(AC0-AC340bitACxG:ACxH:ACxL)2.擴展數(shù)據(jù)頁寄存器(XDP,DPH,DP)
XDP的高7位是DPH,DP是數(shù)據(jù)頁寄存器。DPH和DP都可作為存儲器映射寄存器(MMR)訪問,但是XDP不可作為MMR訪問。12/31/2022120東華理工大學(xué)機械與電子工程學(xué)院指令中涉及的寄存器如下:12/27/20223東華理工大學(xué)機3.輔助寄存器(AR0-7)與擴展輔助寄存器(XAR0-7)ARn可作為存儲器映射寄存器(MMR)訪問;ARnH是擴展輔助寄存器的高位,不可單獨訪問,只能通過訪問XARn進行。XARn不是存儲器映射寄存器。12/31/2022121東華理工大學(xué)機械與電子工程學(xué)院3.輔助寄存器(AR0-7)與擴展輔助寄存器(XAR0-7)地址寄存器名位域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)hT0-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)12/31/2022122東華理工大學(xué)機械與電子工程學(xué)院地址寄存器名位域000000/1hIER地址寄存器名位域000010h-17hAR0-715-0000018h/4DhSP(數(shù)據(jù)堆棧指針)15-000002BhDPH擴展數(shù)據(jù)頁高字6-000002EhDP數(shù)據(jù)頁寄存器15-000002FhPDP外設(shè)數(shù)據(jù)頁寄存器8-000004ChSSP系統(tǒng)堆棧指針15-000004EhSPH擴展堆棧指針高字6-0000027hCDP系數(shù)數(shù)據(jù)指針15-000004FhCDPH系數(shù)數(shù)據(jù)指針高字6-0000019/30/47hBK03/BK47/BKC:CDP循環(huán)緩沖區(qū)大小寄存器15-000001A/39hBRC0/BRC1塊重復(fù)計數(shù)器0/115-000001B/1ChRSA0L/REA0L塊重復(fù)首/尾地址寄存器的低字15-00000/32h-35hBSA01/23/45/67:ARn循環(huán)緩沖區(qū)首地址寄存器(AR0-1,2-3,4-5,6-7)15-0000036hBSAC:CDP的循環(huán)緩沖區(qū)首地址寄存器15-000003C-3DhRSA0H(23-16)/RSA0L:塊重復(fù)首地址寄存器015-000003E-3FhREA0H(23-16)/REA0L:塊重復(fù)末地址寄存器015-012/31/2022123東華理工大學(xué)機械與電子工程學(xué)院地址寄存器名位域000010h-17hAR尋址方式尋址方式是指如何指定指令和操作數(shù)所在存儲空間的地址。C55xDSP支持三種尋址模式絕對尋址:模式指令中的常數(shù)作為地址或部分地址完成尋址,共有三種方式:K16,K23,I/O;直接尋址模式:使用地址的偏移地址尋址,共有四種方式:DP(ST1-55CPL=0),SP(ST1-55CPL=1),寄存器位,PDP(外設(shè)數(shù)據(jù)頁指針);間接尋址模式:使用指針完成尋址,共有四種方式:AR,雙AR,CDP,系數(shù)間接尋址。12/31/2022124東華理工大學(xué)機械與電子工程學(xué)院尋址方式尋址方式是指如何指定指令和操作數(shù)所在存儲空間的地址絕對尋址模式
k16絕對尋址其操作數(shù)為*abs16(#k16),[k16:16位的無符號常數(shù)]將7位的寄存器DPH和k16級聯(lián)形成一個23位的地址,用于對數(shù)據(jù)空間的訪問K16絕對尋址模式
12/31/2022125東華理工大學(xué)機械與電子工程學(xué)院絕對尋址模式k16絕對尋址K12/27/20228東華理工k23絕對尋址操作數(shù)為*(#k23),[k23:23位的無符號常數(shù)]I/O絕對尋址操作數(shù)是*port(#k16),[k16:16位無符號常數(shù)]使用助記符指令,操作數(shù)是port(#k16)(操作數(shù)前沒有*)k23絕對尋址模式
I/O絕對尋址12/31/2022126東華理工大學(xué)機械與電子工程學(xué)院k23絕對尋址k23絕對尋址模式I/O絕對尋址12/2直接尋址方式描述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。直接尋址模式
12/31/2022127東華理工大學(xué)機械與電子工程學(xué)院直接尋址方式描述DP直接尋址用DPH和DP合高7位由DPH提供,用來確定主數(shù)據(jù)頁低16位由兩部分組成:DP7位偏移量(Doffset)DP直接尋址模式
DP直接尋址12/31/2022128東華理工大學(xué)機械與電子工程學(xué)院高7位由DPH提供,用來確定主數(shù)據(jù)頁DP直接尋址模式DP
SP直接尋址
SPH確定高7位地址16位地址由SP和7位偏移量決定,偏移量范圍是0~127由SPH和SP構(gòu)成了擴展數(shù)據(jù)堆棧指針XSP
SP直接尋址模式12/31/2022129東華理工大學(xué)機械與電子工程學(xué)院SP直接尋址SP直接尋址模式12/27/202212東寄存器位尋址
操作數(shù)是@bitoffset,為寄存器最低位開始的偏移值只有寄存器的位測試、置位、清零、取反指令支持這種尋址模式PDP直接尋址(64K×16位I/O空間,128字/512頁,PDP的9位)
PDP直接尋址模式
12/31/2022130東華理工大學(xué)機械與電子工程學(xué)院寄存器位尋址P12/27/202213東華理工大學(xué)機械與電間接尋址方式尋址方式描述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)尋址12/31/2022131東華理工大學(xué)機械與電子工程學(xué)院間接尋址方式尋址方式描述間接尋址模式A
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度現(xiàn)代農(nóng)業(yè)示范園區(qū)開發(fā)承包經(jīng)營合同范本3篇
- 2025年度智能穿戴設(shè)備開發(fā)框架授權(quán)許可合同3篇
- 2024面粉市場推廣與品牌代言合同3篇
- 2024版設(shè)備維修及日常保養(yǎng)合同合同一
- 2025年度床墊行業(yè)展會參展與合作協(xié)議3篇
- 2025年度玻璃行業(yè)研發(fā)成果轉(zhuǎn)化銷售合同3篇
- 2025年度新型城鎮(zhèn)化建設(shè)項目承包合同終止協(xié)議3篇
- 2025年度新能源汽車牌照租賃及充電樁建設(shè)合同4篇
- 2024年物業(yè)租賃合同標的調(diào)整協(xié)議
- 2025年度智能家居地板磚承包施工合同4篇
- 2025年湖北武漢工程大學(xué)招聘6人歷年高頻重點提升(共500題)附帶答案詳解
- 【數(shù) 學(xué)】2024-2025學(xué)年北師大版數(shù)學(xué)七年級上冊期末能力提升卷
- GB/T 26846-2024電動自行車用電動機和控制器的引出線及接插件
- 遼寧省沈陽市皇姑區(qū)2024-2025學(xué)年九年級上學(xué)期期末考試語文試題(含答案)
- 2024年國家工作人員學(xué)法用法考試題庫及參考答案
- 妊娠咳嗽的臨床特征
- 國家公務(wù)員考試(面試)試題及解答參考(2024年)
- 《阻燃材料與技術(shù)》課件 第6講 阻燃纖維及織物
- 2024年金融理財-擔保公司考試近5年真題附答案
- 泰山產(chǎn)業(yè)領(lǐng)軍人才申報書
- 高中語文古代文學(xué)課件:先秦文學(xué)
評論
0/150
提交評論