freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

dsp原理及應用第三章(編輯修改稿)

2025-05-23 12:54 本頁面
 

【文章內(nèi)容簡介】 READA x 將 A的內(nèi)容作為地址讀程序存儲器,并存入 x存儲單元 直接尋址 利用數(shù)據(jù)頁指針和堆棧指針尋址 LD @x, A (DP+x的低 7位地址 ) ? A 間接尋址 利用輔助寄存器作為地址指針 LD *AR1, A ((AR1)) ? A 存儲器映像 寄存器尋址 快速尋址存儲器映象寄存器 LDM ST1, B (ST1) ? B 堆棧尋址 壓入 /彈出數(shù)據(jù)存儲器和存儲器映像寄存器 MMR PSHM AG (SP)1 ? SP,(AG) ? (SP) 尋址方式總結(jié) 47 第二節(jié) 程序地址的生成 程序地址生成器( PAGEN)構(gòu)成 程序計數(shù)器 ( PC) 重復計數(shù)器 ( RC) 塊重復計數(shù)器 ( BRC) 塊重復起始地址寄存器 ( RSA) 塊重復結(jié)束地址寄存器 ( REA) 核心 16位程序計數(shù)器( PC)中保存某個內(nèi)部或外部程序存儲器的地址 。 地址 內(nèi)容為: 即將取指的某條指令 ; 某個 16位立即操作數(shù) ; 系數(shù)表 。 在程序存儲器中的地址 48 操作 加載到 PC的地址 復位 PC=FF80h。 順序執(zhí)行指令 PC=PC+1。 分支轉(zhuǎn)移 用緊跟在分支轉(zhuǎn)移指令后面的 16位立即數(shù)加載 PC。 由累加器分支轉(zhuǎn)移 用累加器 A或 B的低 16位立即數(shù)加載 PC。 塊重復循環(huán) 假如 ST1中的塊重復有效位 BRAF=1, 當 PC+1等于塊重復結(jié)束地址 ( REA) +1, 將塊重復起始地址 ( RSA) 加載 PC。 子程序調(diào)用 將 PC+2壓入堆棧 , 并用緊跟在調(diào)用指令后面的 16位立即數(shù)加載PC。 返回指令將棧頂彈出至 PC, 回到原先的程序處繼續(xù)執(zhí)行 。 從累加器調(diào)用子程序 將 PC+1壓入 堆 棧 , 用累加器 A或 B的低 16位加載 PC。 返回指令將棧頂彈出至 PC, 回到原先的程序處繼續(xù)執(zhí)行 。 硬件中斷或軟件中斷 將 PC壓入堆棧 , 用適當?shù)闹袛嘞蛄康刂芳虞d PC。 中斷返回時 , 將棧頂彈出至 PC, 繼續(xù)執(zhí)行被中斷了的子程序 。 將程序存儲器地址加載到程序計數(shù)器的途徑 49 1. 分支轉(zhuǎn)移操作 通過分支轉(zhuǎn)移指令改寫 PC,來改變程序的流向 。 可執(zhí)行 : 分支轉(zhuǎn)移 循環(huán)控制 子程序操作 功能 方法 50 條件 分支轉(zhuǎn)移 無條件分支轉(zhuǎn)移 B[D]用指令中所給出的地址加載 PC BACC[D] 用所指定的累加器的低 16位作為地址加載 PC。 帶延遲 不帶延遲操作 轉(zhuǎn)移種類 BC[D]如果指令中所規(guī)定的條件得到滿足 ,就用指令中所給出的地址加載 PC; BANZ[D]如果當前輔助寄存器不等于 0, 就用指令中所規(guī)定的地址加載 PC。 BC new, AOV BANZ loop,*AR2 B next BACC A 51 2. 調(diào)用和返回 轉(zhuǎn)移前 , 原程序的下條指令的地址被壓入堆棧 , 而在返回時則將這個地址彈出至 PC,使被中斷了的原程序能繼續(xù)執(zhí)行 。 當采用調(diào)用指令進行子程序或函數(shù)調(diào)用時, DSP中斷當前運行的程序,轉(zhuǎn)移到程序存儲器的其它地 址 繼續(xù)運行。 功能 方法 無條件調(diào)用與返回 有條件調(diào)用與返回 帶延遲 不帶延遲 52 RC cond CALL sub CALA src CC sub , cond RET RETE RETF 條件調(diào)用指令 無條件調(diào)用指令 無條件返回指令 條件返回指令 53 3. 條件指令中的條件判斷 54 多重條件判斷 BC pmad, cond[, cond[, cond]] 相與關(guān)系 相或關(guān)系 BC pmad, cond BC pmad, cond 第 1組 第 2組 A 類 B 類 A 類 B 類 C 類 EQ OV TC C BIO NEQ NOV NTC NC NBIO LT LEQ GT GEQ 55 第 1組 例如 可以從 A類中選一個條件 , 同時可以從 B類中選擇一個條件 。但是不能從同一類中選擇兩個條件 。 另外 , 兩種條件測試的累加器必須是同一個 。 可以同時測試 AGT和 AOV,但不能同時測試 AGT和 BGT。 BC pmad, AGT, AOV BC pmad, AGT, BOV 56 第 2組 例如 可以在 A、 B、 C三類中各選擇一個條件 , 但不能從同一類中選擇兩個條件 BC pmad, TC, C, BIO BC pmad, NTC, TC, NBIO 57 特 例 如果條件分支轉(zhuǎn)移出去的地方只有 1~ 2字的程序段 , 則可以用一條單周期條件執(zhí)行指令( XC) 來代替分支轉(zhuǎn)移指令: XC n, cond[, cond[, cond]] 當 n=1, 且條件得到滿足 , 就執(zhí)行緊隨此 條件指令后的1個字指令 。 當 n=2, 且條件得到滿足 , 就執(zhí)行緊隨此 指 令 后 的 1 個 雙 字 指 令 或 者 2 條單 字指令 。 當條件不滿足 , 就依 n的值執(zhí)行 1 條或 2條 NOP指令 。 58 例 33 編寫計算 的主要程序部分 。 .bss x,4 ;為 X建立 4個單元 , ;放置 X X X X4 .bss y,1 ;為 Y建立 1個單元 , 放置 Y STM x, AR1 ;將 X1的地址傳給 AR1 STM 3, AR2 ;將循環(huán)次數(shù) 3傳給 AR2 LD 0, A ;對 A清零 loop:ADD *AR1+, A ;對 X X X X4循環(huán) ;累加 , 結(jié)果放 A中 BANZ loop, *AR2 ;檢查循環(huán)是否應結(jié)束 STL A, y ;將累加結(jié)果存入 Y中 ???41iixy59 4. 單條指令的重復操作 利用 RPT和 RPTZ可重復執(zhí)行其后的一條指令。 重復的次數(shù)是指令操作數(shù)加 1,這個值保存在 16位的重復計數(shù)寄存器( RC)中。 實現(xiàn) 60 特點 1 RC內(nèi)容不能編程設置 ,只能由重復指令 ( RPT和RPTZ) 中的操作數(shù)加載 。操作數(shù) n的最大值為 65 535, 最大重復執(zhí)行次數(shù)為 65 535+1。 一旦重復指令被取指 、譯碼 , 直到重復循環(huán)完成以前 , 對所有的中斷( 包括 NMI, 但不包括RS) 均不響應 。 61 重復過程 當 RPT指令執(zhí)行時 : ①首先把循環(huán)的次數(shù)裝入循環(huán)計數(shù)器( RC), ②其循環(huán)次數(shù) n由一個 16位單數(shù)據(jù)存儲器操作數(shù) Smem或一個 8位或 16位常數(shù) k或 lk給定。這樣, 緊接著的下一條指令會循環(huán)執(zhí)行 n+1次。 ③循環(huán), RC在執(zhí)行減 1操作時不能被訪問。 注意: 該循環(huán)內(nèi)不能套用循環(huán)。 當 RPTZ指令執(zhí)行時 : 對目的累加器 dst清 0, 循環(huán)執(zhí)行下一條指令 n+1次。 62 例 35 利用單條指令的重復操作對數(shù)組 x[5]={0, 0,0, 0, 0}進行初始化 。 .bss x,5 ;為數(shù)組 x分配 5個存儲單元 STM x,AR1 ;將 x的首地址賦給 AR1 LD 0,A ;對 A清零 RPT 4 ;設置重復執(zhí)行下條指令 5次 STL A,*AR1+;對 x[5]各單元清零 或者 .bss x,5 STM x,AR1 RPTZ A,4;對 A清零并設置重復執(zhí)行下條指令 5次 STL A,*AR1+ 63 特點 5. 塊重復操作 利用 C54x內(nèi)部的塊重復計數(shù)器 ( BRC, 加載值可為 0~ 65 535) 、 塊重復起始地址寄存器( RSA) 、 塊重復結(jié)束地址寄存器 ( REA) 與程序塊重復指令 RPTB, 可對緊隨 RPTB、 由若干條指令構(gòu)成的程序塊進行重復操作 。 功能 使用 RPTB指令將重復操作的范圍擴大到 64K長度的循環(huán)回路 注意 ,不會停止操作,即使有中斷請求也不響應; ; 64 ?塊程序重復指令 RPTB的操作數(shù)是循環(huán)回路的結(jié)束地址; ?其下條指令就是重復操作的內(nèi)容; ?在使用 RPTB之前 必須先用 STM指令將所規(guī)定的迭代次數(shù)加載到塊重復計數(shù)器 ( BRC) 中 。 ?單條重復指令執(zhí)行時關(guān)閉所有可屏蔽中斷 , 而塊重復操作執(zhí)行期間可以響應中斷 。 說明 65 .bss x,5 start: LD 1,16,B STM 4,BRC STM x,AR4 RPTB next1 ADD *AR4,16,B,A STH A,*AR4+ next: LD 0,B 例 36 對數(shù)組 x[5]中的每個元素加 1。 66 對寄存器的占用 6. 循環(huán)的嵌套 執(zhí)行 RPT指令時 占用 RC寄存器 ( 重復計數(shù)器 ) ; 執(zhí)行 RPTB指令時要用到 BRC、 RSA和 RSE寄存器 。 只有一套塊重復寄存器 , 故 塊重復操作不能嵌套 。 由于 RPT與 RPTB兩者用了不同的寄存器 , 因此 RPT指令可以嵌套在 RPTB指令 的循環(huán) 中 , 實現(xiàn)循環(huán)的嵌套 。執(zhí)行 BANZ指令 只占用輔助寄存器 ARx。 不會與 RPT RPTB指令 相沖突 。 嵌套原則 參與嵌套循環(huán)的寄存器不能重復使用 67 圖 33 一個三重循環(huán)嵌套結(jié)構(gòu) 68 第四節(jié) 指令系統(tǒng)概述 TMS320C54x的指令系統(tǒng)分助記符形式和代數(shù)式形式兩種 。 共有指令 129條 , 由于操作數(shù)的尋址方式不同 , 派生至 205條 。 69 ’C54x的助記符指令是由操作碼和操作數(shù)兩部分組成。在進行匯編以前,操作碼和操作數(shù)都是用助記符表示。 例如: LD 0FFh, A 。將立即數(shù) 0FF傳送至 A 操作碼 源操作數(shù) 目的操作數(shù) 注釋 70 指令系統(tǒng)中的符號 序號 符 號 含 義 1 A 累加器 A 2 ALU 算術(shù)邏輯運算單元 3 AR 泛指通用輔助寄存器 4 ARx 指定某一輔助寄存器 AR0~AR7 5 ARP ST0中的 3位輔助寄存器指針 6 ASM ST1中的 5位累加器移位方式位 16~15 7 B 累加器 B 8 BRAF ST1中的塊重復操作標志 9 BRC 塊重復操作寄存器 10 BITC或 bit_code 用于測試指令 ,指定數(shù)據(jù)存儲器單元中的哪一位被測試 ,取指范圍 :0~15 71 序號 符 號 含 義 11 C16 ST1中的雙 16位 /雙精度算術(shù)運算方式位 12 C ST0中的進位位 13 CC 2位條件碼 (0?CC?3) 14 CMPT ST1中的 ARP修正方式位 15 CPL ST1中的直接尋址編輯標志位 16 cond 表示一種條件的操作數(shù),用于條件執(zhí)行指令 17 [d],[D] 延時選項 18 DAB D地址總線 19 DAR DAB地址寄存器 20 dmad 16位立即數(shù)數(shù)據(jù)存儲器地址 (0~65535) 72 序號 符 號 含 義 21 Dmem 數(shù)據(jù)存儲器操作數(shù) 22 DP ST0中的數(shù)據(jù)存儲器頁指針 (0?DP?511) 23 dst 目的累加器 (A和 B) 24 dst_ 與 dst相反的目的累加器 25 EAB E地址總線 26 EAR EAB地址總線 27 extpmad 23位立即程序存儲器地址 28 FRCT ST1中的小數(shù)方式位 29 hi(A) 累加器的高階位 (AH或 BH) 30 HM ST1中的保持方式位 73 序號 符 號 含 義 31 IFR 中斷標志寄存器 32 INTM ST1中的中斷屏蔽位 33 K 少于 9位的短立即數(shù) 34 k3 3位立即數(shù) (0?
點擊復制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1