第2章__TMS320C54x數(shù)字信號(hào)處理_[1]..._第1頁
第2章__TMS320C54x數(shù)字信號(hào)處理_[1]..._第2頁
第2章__TMS320C54x數(shù)字信號(hào)處理_[1]..._第3頁
第2章__TMS320C54x數(shù)字信號(hào)處理_[1]..._第4頁
第2章__TMS320C54x數(shù)字信號(hào)處理_[1]..._第5頁
已閱讀5頁,還剩135頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

本章重點(diǎn)介紹TMS320C54x的硬件結(jié)構(gòu) 了解DSP硬件結(jié)構(gòu)是設(shè)計(jì)DSP的第一步 第二章TMS320C54X硬件結(jié)構(gòu) 第2章TMS320C54x數(shù)字信號(hào)處理器硬件結(jié)構(gòu) 2 1TMS320C54x的特點(diǎn)和硬件組成框圖2 2TMS320C54x的總線結(jié)構(gòu) 重點(diǎn) 2 5中央處理單元 CPU 重點(diǎn) 2 4TMS320C54x的存儲(chǔ)器分配 重點(diǎn) 2 5TMS320C54x片內(nèi)外設(shè)簡(jiǎn)介2 6TMS320VC5402引腳及說明 要求 會(huì)看硬件功能塊的框圖 掌握相應(yīng)的處理機(jī)制 知道有哪些片上外設(shè) 怎樣使用 2 1DSP硬件 TMS320C54x組成框圖 TMS320C54xDSP的總線組成框圖1 54x結(jié)構(gòu)的建立主要圍繞著8條16位的總線展開的 這8條總線包括4條程序 數(shù)據(jù)總線和4條地址總線 它們的作用是 1 程序總線 PB 傳送由程序存儲(chǔ)器取出的指令操作碼及立即數(shù) 2 3條數(shù)據(jù)總線 CB DB和EB 與不同的單元相連 如CPU 數(shù)據(jù)地址發(fā)生邏輯 程序地址發(fā)生邏輯 片內(nèi)外圍部件及數(shù)據(jù)存儲(chǔ)器等 其中CB總線和DB總線傳送從數(shù)據(jù)存儲(chǔ)器讀的數(shù)據(jù) EB總線傳送被寫入存儲(chǔ)器的數(shù)據(jù) 2 2TMS320C54x的總線結(jié)構(gòu) BUS 4條地址總線 PAB CAB DAB EAB 傳送執(zhí)行指令所需地址 C54X總線結(jié)構(gòu) 續(xù) 圖2 1TMS320C54xDSP的內(nèi)部硬件組成框圖2 2 3中央處理單元 CPU 1 40位的算術(shù)邏輯單元 ALU 2 2個(gè)40位的累加器 A和B 3 桶形移位器 定標(biāo)移位器 4 17 17位乘法器 5 40位加法器 6 各種CPU寄存器 所有的 54x器件的CPU都相同 54x的CPU包括 7 比較 選擇和存儲(chǔ)單元 CSSU 8 指數(shù)編碼器 54x可通過一個(gè)40位算術(shù)邏輯單元 ALU 執(zhí)行二進(jìn)制補(bǔ)碼數(shù)學(xué)運(yùn)算 ALU也可執(zhí)行布爾運(yùn)算 其運(yùn)算結(jié)果通常被送入兩個(gè)40位累加器 累加器A和B ALU的輸入如下 1 16位立即數(shù) 2 來自數(shù)據(jù)存儲(chǔ)器的16位字 3 來自16位暫存寄存器T的16位字 4 來自數(shù)據(jù)存儲(chǔ)器的兩個(gè)16位字 在執(zhí)行算術(shù)運(yùn)算時(shí) 一個(gè)40位ALU也可同時(shí)作為兩個(gè)16位ALU 執(zhí)行兩個(gè)16位操作 5 來自數(shù)據(jù)存儲(chǔ)器的32位字 6 來自其中一個(gè)40位累加器的40位字 算術(shù)邏輯單元 ALU ALU功能框圖 3 ALU輸入數(shù)據(jù)的預(yù)處理 當(dāng)16位數(shù)據(jù)存儲(chǔ)器操作數(shù)通過數(shù)據(jù)總線DB或CB輸入時(shí) ALU將采用兩種方式對(duì)操作數(shù)進(jìn)行預(yù)處理 若數(shù)據(jù)存儲(chǔ)器的16位操作數(shù)在低16位時(shí) 則 當(dāng)SXM 0時(shí) 高24位 39 16位 用0填充 當(dāng)SXM 1時(shí) 高24位 39 16位 擴(kuò)展為符號(hào)位 若數(shù)據(jù)存儲(chǔ)器的16位操作數(shù)在高16位時(shí) 則 當(dāng)SXM 0時(shí) 39 32位和15 0位用0填充 當(dāng)SXM 1時(shí) 39 32位擴(kuò)展為符號(hào)位 15 0位置0 4 ALU的輸出ALU的輸出為40位運(yùn)算結(jié)果 通常被送至累加器A或B 1 當(dāng)SXM 0 進(jìn)行無符號(hào)數(shù)加載LD AR3 A Beforeinstruction Afterinstruction A SXM AR3 0 000000FEDC 0 0300 0300 0000000000 FEDC FEDC Datamemory0300h 舉例 2 當(dāng)SXM 1 進(jìn)行有符號(hào)數(shù)加載LD AR3 A Beforeinstruction Afterinstruction A SXM AR3 1 FFFFFFFEDC 1 0300 0300 0000000000 FEDC FEDC Datamemory0300h 溢出處理 ALU的飽和邏輯可以對(duì)運(yùn)算結(jié)果進(jìn)行溢出處理 當(dāng)發(fā)生溢出時(shí) 將運(yùn)算結(jié)果調(diào)整為最大正數(shù) 正向溢出 或最小負(fù)數(shù) 負(fù)向溢出 當(dāng)運(yùn)算結(jié)果發(fā)生溢出時(shí) 若OVM 0 則對(duì)ALU的運(yùn)算結(jié)果不作任何調(diào)整 直接送入累加器 若OVM 1 則對(duì)ALU的運(yùn)行結(jié)果進(jìn)行調(diào)整 當(dāng)正向溢出時(shí) 將32位最大正數(shù)007FFFFFFFH裝入累加器 當(dāng)負(fù)向溢出時(shí) 將32位最小負(fù)數(shù)FF80000000H裝入累加器 狀態(tài)寄存器ST0中與目標(biāo)累加器相關(guān)的溢出標(biāo)志OVA或OVB被置1 1 當(dāng)OVM 0 對(duì)溢出不進(jìn)行處理 僅通過OVM 1反映溢出LDA 4 B Beforeinstruction Afterinstruction A B OVB 000000FFFF 007FFF8000 07FFF80000 0 1 007FFF8000 0 0 舉例 OVM 2 當(dāng)OVM 1 對(duì)溢出進(jìn)行處理 LDA 4 B Beforeinstruction Afterinstruction A B OVB 000000FFFF 007FFF8000 007FFFFFFF 0 1 007FFF8000 1 1 OVM 進(jìn)位位C ALU有一個(gè)與運(yùn)算結(jié)果有關(guān)的進(jìn)位位C 位于ST0的11位 進(jìn)位位C受大多數(shù)ALU操作指令的影響 包括算術(shù)操作 循環(huán)操作和移位操作 進(jìn)位位C的功能 用來指明是否有進(jìn)位發(fā)生 用來支持?jǐn)U展精度的算術(shù)運(yùn)算 可作為分支 調(diào)用 返回和條件操作的執(zhí)行條件 注意 進(jìn)位位C不受裝載累加器操作 邏輯操作 非算術(shù)運(yùn)算和控制指令的影響 可通過寄存器操作指令RSBX和SSBX對(duì)其進(jìn)行置位和復(fù)位 雙16位算術(shù)運(yùn)算 若要將ST1中的C16置位 則ALU進(jìn)行雙16位算術(shù)運(yùn)算 即在一個(gè)機(jī)器周期內(nèi)完成兩個(gè)16位數(shù)的算術(shù)運(yùn)算 進(jìn)行兩次16位加法或兩次16位減法運(yùn)算 5 其他控制位 除SXM OVM C C16 OVA OVB外 ALU還有兩個(gè)控制位 TC 測(cè)試 控制標(biāo)志 位于ST0的12位 ZA ZB 累加器結(jié)果為0標(biāo)志位 累加器A和B ACCA ACCB 用于存儲(chǔ)ALU或乘法器 加法器塊的輸出 它們也可作為輸入數(shù)據(jù)輸出到ALU 或作為乘法器 加法器的輸入 AG AH AL BG BH BL都是存儲(chǔ)器映像寄存器 可以被訪問A與B的不同是A的高位可以作為乘法器的一個(gè)輸入 累加器 累加器A和B 1 累加器結(jié)構(gòu) 保護(hù)位 AG BG39 32 作為算術(shù)計(jì)算時(shí)的數(shù)據(jù)位余量 以防止迭代運(yùn)算中的溢出 高階位 AH BH31 16 低階位 AL BL15 0 累加器A和B 2 帶移位的累加器存儲(chǔ)操作 使用STH STL STLM SACCD等指令或并行存儲(chǔ)指令 可以把累加器中的內(nèi)容保存到數(shù)據(jù)存儲(chǔ)器中 使用STH SACCD和并行存儲(chǔ)指令存儲(chǔ)累加器內(nèi)容 先將累加器內(nèi)容移位 再將高16位存入存儲(chǔ)器 右移存儲(chǔ) AG BG 右移AH BH AH BH 存入存儲(chǔ)器 左移存儲(chǔ) AL BL 左移AH BH AH BH 存入存儲(chǔ)器 使用STL指令存儲(chǔ)累加器內(nèi)容 先將累加器內(nèi)容移位 再將低16位存入存儲(chǔ)器 右移存儲(chǔ) AH BH 右移AL BL AL BL 存入存儲(chǔ)器 左移存儲(chǔ) 用0左移AL BL AL BL 存入存儲(chǔ)器 注意 移位操作是在存儲(chǔ)累加器內(nèi)容的過程中同時(shí)完成的 移位操作是在移位寄存器中完成的 累加器的內(nèi)容保持不變 例1 累加器A FF01234567H 執(zhí)行帶移位的STH和STL指令后 求暫存器T和A的內(nèi)容 STHA 8 T A的內(nèi)容左移8位 AH存入T 01 23 45 67 00 2345 T 2345H A FF01234567H STHA 8 T A的內(nèi)容右移8位 AH存入T 45 23 01 FF FF FF01 T FF01H A FF01234567H STLA 8 T A的內(nèi)容左移8位 AL存入T 01 23 45 67 00 6700 T 6700H A FF01234567H STLA 8 T A的內(nèi)容右移8位 AL存入T 45 23 01 FF FF 2345 T 2345H A FF01234567H 40位的桶形移位器能將輸入的數(shù)據(jù)進(jìn)行向左或者向右的0 31位的移動(dòng) 向左31位 向右16位 桶形移位器 輸入 DB 16位 DB和CB 32位 A 40位 B 40位 輸出 ALU的一個(gè)輸入端EB總線 功能 1 在執(zhí)行ALU操作前預(yù)定好一個(gè)數(shù)據(jù)存儲(chǔ)器操作或累加器內(nèi)容2 對(duì)累加器內(nèi)容算術(shù)或邏輯移位3 對(duì)累加器歸一化4 在將累加器的值存入數(shù)據(jù)存儲(chǔ)器前定標(biāo) 桶形移位寄存器 1 指令中的一個(gè)4位或5位立即數(shù)為移位數(shù) 范圍為 16 15 ADDA 4 B 累加器A的內(nèi)容右移四位后加到B中 桶形移位寄存器的移位作用 3 T寄存器中的低6位 可以指定 16至31位范圍的移位數(shù)SUB AR2 TS A 2 用ASM的值代表范圍 16至15的移位 可用LD加載 ADDA ASM B 累加器移位ASM所指定的位數(shù)后加到B中 桶形移位寄存器的位數(shù)是一個(gè)有符號(hào)數(shù) 其正值對(duì)應(yīng)左移 負(fù)值對(duì)應(yīng)右移 指令中移位位數(shù)可為 3 乘法器 加法器單元C54xCPU有一個(gè)17 17位的硬件乘法器 與40位的專用加法器相連 可以在單周期內(nèi)完成一次乘法累加運(yùn)算 乘法器的輸出經(jīng)小數(shù) 整數(shù)乘法 FRCT 輸入控制后加到加法器的一個(gè)輸入端 加法器的另一個(gè)輸入端來自累加器A或B 加法器還包括零檢測(cè)器 舍入器 二進(jìn)制補(bǔ)碼 及溢出 飽和邏輯電路 乘法器 加法器 乘法器 加法器單元 乘法器的輸入 XM T寄存器DB總線A的32 16位 YM DB總線CB總線PB總線A的32 16位 乘法器輸出 Adder的XA Adder 40 17 17 YA A或B或0 硬件乘法器可以在一個(gè)單指令周期中完成17 17bit的二進(jìn)制補(bǔ)碼運(yùn)算 例 MPYa1 B 將a1這個(gè)存儲(chǔ)器單元中的數(shù)與 B中的數(shù)相乘并將結(jié)果放B中結(jié)合DSP的特殊的匯編指令 如MAC 54x可以在一個(gè)指令周期內(nèi)完成乘 累加運(yùn)算 例 LDx2 TMACa2 B a2 x2 B B 比較 選擇和存儲(chǔ)單元 CSSU 是專門為Viterbi算法設(shè)計(jì)的加法 比較 選擇 ACS 操作的硬件單元 指數(shù)編碼器用于支持單周期指令EXP的專用硬件 功能 求累加器中數(shù)據(jù)的指數(shù)值 比較 選擇和存儲(chǔ)單元CSSU 指數(shù)編碼器 CPU狀態(tài)和控制寄存器 TMS320C54X包括3個(gè)16位的寄存器作為狀態(tài)和控制寄存器 ST0 ST1 PMST 均為存儲(chǔ)器映像寄存器 可以方便的訪問 ST0 ST1包含各種工作條件和工作方式的狀態(tài)PMST包含存儲(chǔ)器的設(shè)置狀態(tài)和控制信息 ST0 反映處理器的尋址要求和計(jì)算機(jī)的中間運(yùn)行狀態(tài) ST1 主要反映處理器的尋址要求 計(jì)算初始狀態(tài)的設(shè)置 I O及中斷的控制等 狀態(tài)寄存器ST0的結(jié)構(gòu) 狀態(tài)寄存器ST1的結(jié)構(gòu) 處理器模式狀態(tài)寄存器 PMST 結(jié)構(gòu)如下 15 1312111098 0 1 151413121110987654 0 15 76543210 ST0 Status0 ST1 Status1 PMST ProcessormodeStatus 2 3TMS320C54x的存儲(chǔ)器分配 2 3 1存儲(chǔ)器空間2 3 2程序存儲(chǔ)器2 3 3數(shù)據(jù)存儲(chǔ)器2 3 4I O存儲(chǔ)器 返回首頁 組成框圖 2 3 C54x的存儲(chǔ)空間結(jié)構(gòu) C54x共有192K字的映射存儲(chǔ)器空間 分成3個(gè)相互獨(dú)立可選擇的存儲(chǔ)空間 64K字 16位 的程序存儲(chǔ)空間 64K字 16位 的數(shù)據(jù)存儲(chǔ)空間 64K字 16位 的I O空間 程序存儲(chǔ)空間 用來存放要執(zhí)行的指令和指令執(zhí)行中所需要的系數(shù)表 數(shù)學(xué)用表 數(shù)據(jù)存儲(chǔ)空間 用來存放執(zhí)行指令所需要的數(shù)據(jù) I O存儲(chǔ)空間 用來提供與外部存儲(chǔ)器映射的接口 可以作為外部數(shù)據(jù)存儲(chǔ)空間使用 所有 C54x芯片都含有片內(nèi)RAM和ROM 片內(nèi)RAM SARAM DARAM 單尋址RAM 雙尋址RAM DARAM 由存儲(chǔ)器內(nèi)的一些分塊組成 每個(gè)DARAM塊在單周期內(nèi)能被訪問2次 SARAM 由存儲(chǔ)器分塊組成 每個(gè)SARAM塊在單周期內(nèi)只能被訪問1次 2 3 1存儲(chǔ)器空間 片內(nèi)存儲(chǔ)器的優(yōu)點(diǎn) 不需要插入等待狀態(tài) 與外部存儲(chǔ)器相比 成本低 比外部存儲(chǔ)器功耗小 片內(nèi)物理存儲(chǔ)器必須被映射到映射存儲(chǔ)器上才能被訪問 例 程序存儲(chǔ)器 4K字ROM 起始地址為C00h 取名為ROM 數(shù)據(jù)存儲(chǔ)器 32字RAM 起始地址為60h 取名為SCR 512字RAM 起始地址為80h 取名為CHIP MEMORY PAGE0 ROM origin C00h length 1000hPAGE1 SCR origin 60h length 20hCHIP origin 80h length 200h 頁面名稱 區(qū)間名稱 起始地址 區(qū)間長(zhǎng)度 我的程序需要多少存儲(chǔ)空間 這些存儲(chǔ)空間分配合適嗎 Letgo C54x片內(nèi)存儲(chǔ)器資源配置 我們擁有的資源 還有 外部存儲(chǔ)器主要分為兩類 ROM RAM 包括EPROM E2PROM和FLASH等 分為靜態(tài)RAM SRAM 和動(dòng)態(tài)RAM DRAM ROM主要用于存儲(chǔ)用戶的程序和系統(tǒng)常數(shù)表 一般映射在程序存儲(chǔ)空間 RAM常選擇速度較高的快速RAM 既可以用作程序空間的存儲(chǔ)器 也可以用作數(shù)據(jù)空間的存儲(chǔ)器 TMS320VC5402存儲(chǔ)器配置結(jié)構(gòu) 內(nèi)容 程序空間用來存放要執(zhí)行的指令和常系數(shù)表格 程序空間配置通過設(shè)置MP MC OVLY和XPC來實(shí)現(xiàn)程序空間擴(kuò)展 1 程序存儲(chǔ)空間 影響程序空間后48k 影響程序空間前16k 影響程序空間擴(kuò)展空間 1 程序存儲(chǔ)空間的配置 程序存儲(chǔ)空間可通過PMST寄存器的MP MC和OVLY控制位來設(shè)置內(nèi)部存儲(chǔ)器的映射地址 當(dāng)MP MC 0時(shí) 稱為微計(jì)算機(jī)模式 4000H EFFFH程序存儲(chǔ)空間定義為外部存儲(chǔ)器 F000H FEFFH程序存儲(chǔ)空間定義為內(nèi)部ROM FF00H FFFFH程序存儲(chǔ)空間定義為內(nèi)部存儲(chǔ)器 當(dāng)MP MC 1時(shí) 稱為微處理器模式 4000H FFFFH程序存儲(chǔ)空間定義為外部存儲(chǔ)器 MP MC控制位用來決定程序存儲(chǔ)空間是否使用內(nèi)部存儲(chǔ)器 1 程序存儲(chǔ)空間的配置 當(dāng)OVLY 0時(shí) 程序存儲(chǔ)空間不使用內(nèi)部RAM 0000H 3FFFH全部定義為外部程序存儲(chǔ)空間 此時(shí)內(nèi)部RAM只作為數(shù)據(jù)存儲(chǔ)器使用 當(dāng)OVLY 1時(shí) 程序存儲(chǔ)空間使用內(nèi)部RAM 內(nèi)部RAM同時(shí)被映射到程序存儲(chǔ)空間和數(shù)據(jù)存儲(chǔ)空間 0000H 007FH保留 程序無法占用 0080H 3FFFH定義為內(nèi)部DARAM OVLY控制位用來決定程序存儲(chǔ)空間是否使用內(nèi)部RAM 微計(jì)算機(jī)模式 OVLY 1 0000H 007FH保留 0080H 3FFFH內(nèi)部DARAM 0000H EFFFH外部存儲(chǔ)器 4000H EFFFH外部存儲(chǔ)器 F000H FEFFH內(nèi)部ROM FF00H FF7FH保留 FF80H FFFFH中斷矢量表 FF00H FF7FH保留 F000H FEFFH內(nèi)部ROM OVLY 0 FF80H FFFFH中斷矢量表 常用方案 存儲(chǔ)器配置舉例 1 VC5416的存儲(chǔ)空間TMS320VC5416的地址空間是采用獨(dú)立空間編址的 即程序空間 數(shù)據(jù)空間 IO空間都由邏輯上的0 x0000單元起始至0 xffff VC5416基本的程序空間 數(shù)據(jù)空間 IO空間都是64K 外擴(kuò)時(shí)分別由PS DS IS線選通 詳細(xì)的存儲(chǔ)器分配請(qǐng)參考TI的技術(shù)手冊(cè)VC5416的Datasheet TI文件號(hào) Sprs095I pdf 下圖顯示了MP和MC模式下的程序和數(shù)據(jù)空間映射 圖1 5 1 圖1 5 1c5416MP和MC模式下的程序和數(shù)據(jù)空間映射 2 程序存儲(chǔ)空間的分頁擴(kuò)展 C54x系列芯片程序空間采用分頁擴(kuò)展的方法 多數(shù)芯片只有16條外部地址線 可擴(kuò)展64k字的外部存儲(chǔ)空間 稱為第0頁程序存儲(chǔ)器 而有的芯片可擴(kuò)展的范圍較大 如 C5409和 C5416有23條外部程序地址總線可擴(kuò)展到8M C5402有20條外部程序地址總線 其程序空間只能擴(kuò)展到1M 2 程序存儲(chǔ)空間的分頁擴(kuò)展 分頁擴(kuò)展技術(shù)的特點(diǎn) 有20或23條外部程序地址線 可尋址1M或8M存儲(chǔ)空間 有1個(gè)額外的存儲(chǔ)器映像寄存器 程序計(jì)數(shù)器擴(kuò)展寄存器XPC 有6條尋址擴(kuò)展程序空間的指令 用于尋址擴(kuò)展程序空間 C5402共有20條外部程序地址總線 可尋址程序存儲(chǔ)空間為1M 整個(gè)程序存儲(chǔ)空間分成16頁 每頁共計(jì)64K字 2 程序存儲(chǔ)空間的分頁擴(kuò)展 當(dāng)OVLY 0時(shí) 內(nèi)部RAM不允許映射到程序空間 頁與頁之間沒有重疊 擴(kuò)展后的程序空間分成16頁 每頁64K 2 程序存儲(chǔ)空間的分頁擴(kuò)展 當(dāng)OVLY 1時(shí) 片內(nèi)RAM允許映射到程序空間 程序存儲(chǔ)器的每一頁都由兩部分組成 32K字的公共塊和32K字的專用塊 公共塊可由所有頁共享 不需要使用XPC 專用塊只能按指定的頁號(hào)尋址 當(dāng)MP MC 0時(shí) 片內(nèi)ROM只能允許安排在第0頁的程序空間 不能映射到其它頁 第2章TMS320C54x的硬件結(jié)構(gòu) 2 程序存儲(chǔ)空間的分頁擴(kuò)展 公共塊 由所有頁共享專用塊 按指定的頁號(hào)尋址 TMS320VC5402擴(kuò)展程序存儲(chǔ)空間結(jié)構(gòu)圖 擴(kuò)展程序存儲(chǔ)器的頁號(hào)由XPC寄存器設(shè)定 XPC映射到數(shù)據(jù)存儲(chǔ)器的001EH單元 硬件復(fù)位時(shí) XPC被置0 為了便于軟件進(jìn)行頁切換 設(shè)置了6條影響XPC的專用指令 FB D 長(zhǎng)跳轉(zhuǎn)指令 FBACC D 長(zhǎng)跳轉(zhuǎn)到累加器A或B所指定的位置 FCALA D 長(zhǎng)調(diào)用累加器A或B所指定的位置 FCALL D 長(zhǎng)調(diào)用指令 FRET D 長(zhǎng)返回 FRETE D 帶中斷使能的長(zhǎng)返回指令 擴(kuò)展程序空間舉例 評(píng)估板使用AM29LV800芯片作為外部ROM使用 外部ROM一般用來固化程序 上電后 可以利用5416芯片的Bootloader功能從ROM中加載程序到存儲(chǔ)器中使用 此外 AM29LV800芯片還可以在線編程 保存使用中需要保留的數(shù)據(jù) C54x的地址總線有16 23條 芯片的型號(hào)不同其配置的地址總線也不同 C5402芯片共有20根地址線 最多可以擴(kuò)展1M字外部程序存儲(chǔ)空間 其中高4位地址線 A19 A16 是受XPC寄存器控制 擴(kuò)展程序存儲(chǔ)器時(shí) 除了考慮地址空間分配外 關(guān)鍵是存儲(chǔ)器讀寫控制和片選控制與DSP的外部地址總線 數(shù)據(jù)總線及控制總線的時(shí)序配合 了解一下哦 擴(kuò)展程序空間舉例 程序存儲(chǔ)器有三種工作方式 程序存儲(chǔ)器的擴(kuò)展 1 程序存儲(chǔ)器的工作方式 讀操作 程序存儲(chǔ)器只能進(jìn)行讀操作 維持操作 編程操作 當(dāng)編程電源加規(guī)定的電壓 片選和讀允許端加要求的電平 通過編程器可將數(shù)據(jù)固化到存儲(chǔ)器中 完成編程操作 程序存儲(chǔ)器的擴(kuò)展 2 擴(kuò)展程序存儲(chǔ)器 注意事項(xiàng) 根據(jù)應(yīng)用系統(tǒng)的容量選擇存儲(chǔ)芯片容量 根據(jù)CPU工作頻率 選取滿足最大讀取時(shí)間 電源容差 工作溫度等性能的芯片 選擇邏輯控制芯片 以滿足程序擴(kuò)展 數(shù)據(jù)擴(kuò)展和I O擴(kuò)展的兼容 與5V存儲(chǔ)器擴(kuò)展時(shí) 要考慮電平轉(zhuǎn)換 2 擴(kuò)展程序存儲(chǔ)器 FLASH存儲(chǔ)器 FLASH存儲(chǔ)器與EPROM相比 具有更高的性能價(jià)格比 而且體積小 功耗低 可電擦寫 使用方便 并且3 3V的FLASH可以直接與DSP芯片連接 AT29LV1024是1M位的FLASH存儲(chǔ)器 地址線 A0 A15 控制線 數(shù)據(jù)線 I O0 I O15 2 擴(kuò)展程序存儲(chǔ)器 存儲(chǔ)器擴(kuò)展 擴(kuò)展連接圖 16 16 原理 進(jìn)行讀操作 地址和數(shù)據(jù)線呈高阻 若只擴(kuò)展一片程序存儲(chǔ)器 可將CPU存儲(chǔ)器選通信號(hào)MSTRB與存儲(chǔ)器輸出使能OE連接 當(dāng)PS 0 MSTRB 0時(shí) 可對(duì)存儲(chǔ)器進(jìn)行讀操作 3 內(nèi)部ROM C5402共有4K字的內(nèi)部ROM F000H F7FFH 用戶專用程序 由TI公司固化 F800H FFFFH TI公司定義 3 內(nèi)部ROM TI公司定義的內(nèi)容 引導(dǎo)程序 從串行口 外部存儲(chǔ)器 I O口 主機(jī)接口進(jìn)行自動(dòng)加載引導(dǎo)程序 256字 律擴(kuò)展表 256字A律擴(kuò)展表 256字正弦函數(shù)值查找表 保留 中斷向量表 F800H FBFFHFC00H FCFFHFD00H FDFFHFE00H FEFFHFF00H FF7FHFF80H FFFFH 2 3 3數(shù)據(jù)存儲(chǔ)空間 1 數(shù)據(jù)存儲(chǔ)空間的配置受DROM影響2數(shù)據(jù)存儲(chǔ)器中的內(nèi)容存儲(chǔ)器映像寄存器MMR 用來存放執(zhí)行指令所使用的數(shù)據(jù) 包括需要處理的數(shù)據(jù)或數(shù)據(jù)處理的中間結(jié)果 2 3 3數(shù)據(jù)存儲(chǔ)空間 1 數(shù)據(jù)存儲(chǔ)空間的配置 C54x的數(shù)據(jù)存儲(chǔ)空間由內(nèi)部和外部存儲(chǔ)器構(gòu)成 共有64K字 采用內(nèi)部和外部存儲(chǔ)器統(tǒng)一編址 DROM 0 0000H 3FFFH 內(nèi)部RAM 4000H FFFFH 外部存儲(chǔ)器 DROM 1 0000H 3FFFH 內(nèi)部RAM 4000H EFFFH 外部存儲(chǔ)器 F000H FEFFH 片內(nèi)ROM FF00H FFFFH 保留 1 數(shù)據(jù)存儲(chǔ)空間的配置 當(dāng)CPU發(fā)生的數(shù)據(jù)地址處于內(nèi)部存儲(chǔ)器的范圍內(nèi)時(shí) 直接對(duì)內(nèi)部數(shù)據(jù)存儲(chǔ)器尋址 當(dāng)CPU發(fā)生的數(shù)據(jù)地址不在內(nèi)部存儲(chǔ)器的范圍內(nèi)時(shí) CPU自動(dòng)對(duì)外部數(shù)據(jù)存儲(chǔ)器尋址 C54x片內(nèi)數(shù)據(jù)存儲(chǔ)器容量 C5402數(shù)據(jù)存儲(chǔ)空間結(jié)構(gòu) 0000H 0050H存儲(chǔ)器映像寄存器 0060H 007FH暫存器SPRAM 0080H 3FFFH內(nèi)部DARAM 4000H EFFFH外部存儲(chǔ)器 DROM 1使用內(nèi)部ROM F000H FEFFH內(nèi)部ROM FF00H FFFFH保留 DROM 0不使用內(nèi)部ROM F000H FEFFH外部存儲(chǔ)器 3 已知ST0 2c00h ST1 0320h 分析ALU的當(dāng)前工作方式 是否有符號(hào)擴(kuò)展等 及當(dāng)前輸出記過狀態(tài) 是否溢出等 4 如果中斷矢量表位于片內(nèi)存儲(chǔ)器空間 片內(nèi)的ROM要映射到數(shù)據(jù)空間 片內(nèi)的RAM只作為數(shù)據(jù)空間 那么該如何設(shè)置有關(guān)寄存器 課堂練習(xí) 數(shù)據(jù)空間前1K的配置 存儲(chǔ)器映像的CPU寄存器 特殊功能寄存器 0000 001FH 特殊功能寄存器 存儲(chǔ)器映像的外設(shè)寄存器 0020 005FH 外設(shè)寄存器 暫存寄存器SPRAM 0060 007FH 暫存寄存器 0080 03FFH 7個(gè)DARAM數(shù)據(jù)塊 2 存儲(chǔ)器映像寄存器 在 C54x的數(shù)據(jù)存儲(chǔ)空間中 前80H個(gè)單元 數(shù)據(jù)頁0 包含有的CPU寄存器 片內(nèi)外設(shè)寄存器和暫存器 這些寄存器全部映射到數(shù)據(jù)存儲(chǔ)空間 稱作存儲(chǔ)器映像寄存器MMR 存儲(chǔ)器映像寄存器MMR CPU寄存器 特殊功能寄存器 片內(nèi)外設(shè)寄存器 暫存器SPRAM 2 存儲(chǔ)器映像寄存器 特殊功能寄存器功能 主要用于程序的運(yùn)算處理和尋址方式的選擇和設(shè)定 地址范圍 0000H 001FH C5402的CPU寄存器共有27個(gè) CPU訪問這些寄存器時(shí) 不需要插入等待時(shí)間 外設(shè)寄存器功能 用來控制片內(nèi)外設(shè)電路的狀態(tài)和存放數(shù)據(jù) 地址范圍 0020H 005FH 包括串行口通信控制寄存器組 定時(shí)器定時(shí)控制寄存器組 時(shí)鐘周期設(shè)定寄存器組等 由于CPU對(duì)片內(nèi)外設(shè)寄存器的訪問時(shí)通過片內(nèi)外設(shè)總線進(jìn)行 因此對(duì)它們的讀 寫操作至少需要2個(gè)時(shí)鐘周期 特殊功能寄存器 2 存儲(chǔ)器映像寄存器 片內(nèi)外設(shè)寄存器存在于一個(gè)專用的外設(shè)總線結(jié)構(gòu)中 它可以發(fā)送數(shù)據(jù)至外設(shè)總線或者從外設(shè)中接收數(shù)據(jù) 設(shè)置或清除寄存器的控制位可以激活 屏蔽或者重新配置外設(shè)狀態(tài) 不同型號(hào)的芯片具有不同的片內(nèi)外設(shè)寄存器 C549片內(nèi)外設(shè)寄存器 2 3 4I O空間 C54x除了程序和數(shù)據(jù)存儲(chǔ)空間外 還提供了一個(gè)具有64K字的I O空間 主要用于對(duì)片外設(shè)備的訪問 可以使用輸入指令PORTR和輸出指令PORTW對(duì)I O空間尋址 C54x的地址總線有16 23條 芯片的型號(hào)不同其配置的地址總線也不同 C5402芯片共有20根地址線 最多可以擴(kuò)展1M字外部程序存儲(chǔ)空間 其中高4位地址線 A19 A16 是受XPC寄存器控制 擴(kuò)展程序存儲(chǔ)器時(shí) 除了考慮地址空間分配外 關(guān)鍵是存儲(chǔ)器讀寫控制和片選控制與DSP的外部地址總線 數(shù)據(jù)總線及控制總線的時(shí)序配合 程序存儲(chǔ)器的擴(kuò)展 了解一下哦 程序存儲(chǔ)器有三種工作方式 程序存儲(chǔ)器的擴(kuò)展 1 程序存儲(chǔ)器的工作方式 讀操作 程序存儲(chǔ)器只能進(jìn)行讀操作 維持操作 編程操作 當(dāng)編程電源加規(guī)定的電壓 片選和讀允許端加要求的電平 通過編程器可將數(shù)據(jù)固化到存儲(chǔ)器中 完成編程操作 程序存儲(chǔ)器的擴(kuò)展 2 擴(kuò)展程序存儲(chǔ)器 注意事項(xiàng) 根據(jù)應(yīng)用系統(tǒng)的容量選擇存儲(chǔ)芯片容量 根據(jù)CPU工作頻率 選取滿足最大讀取時(shí)間 電源容差 工作溫度等性能的芯片 選擇邏輯控制芯片 以滿足程序擴(kuò)展 數(shù)據(jù)擴(kuò)展和I O擴(kuò)展的兼容 與5V存儲(chǔ)器擴(kuò)展時(shí) 要考慮電平轉(zhuǎn)換 2 擴(kuò)展程序存儲(chǔ)器 FLASH存儲(chǔ)器 FLASH存儲(chǔ)器與EPROM相比 具有更高的性能價(jià)格比 而且體積小 功耗低 可電擦寫 使用方便 并且3 3V的FLASH可以直接與DSP芯片連接 AT29LV1024是1M位的FLASH存儲(chǔ)器 地址線 A0 A15 控制線 數(shù)據(jù)線 I O0 I O15 2 擴(kuò)展程序存儲(chǔ)器 存儲(chǔ)器擴(kuò)展 擴(kuò)展連接圖 16 16 原理 進(jìn)行讀操作 地址和數(shù)據(jù)線呈高阻 若只擴(kuò)展一片程序存儲(chǔ)器 可將CPU存儲(chǔ)器選通信號(hào)MSTRB與存儲(chǔ)器輸出使能OE連接 當(dāng)PS 0 MSTRB 0時(shí) 可對(duì)存儲(chǔ)器進(jìn)行讀操作 1 數(shù)據(jù)存儲(chǔ)器ICSI64LV16 ICSI64LV16是一種高速數(shù)據(jù)存儲(chǔ)器 其容量64K字 16 地址線 A15 A0 控制線 數(shù)據(jù)線 I O15 I O0 CE 片選信號(hào) OE 讀選通信號(hào) WE 寫選通信號(hào) UB 高字節(jié)選通信號(hào) LB 低字節(jié)選通信號(hào) 1 數(shù)據(jù)存儲(chǔ)器ICSI64LV16 結(jié)構(gòu)圖 數(shù)據(jù)存儲(chǔ)器的擴(kuò)展 2 存儲(chǔ)器擴(kuò)展連接 第2章TMS320C54x的硬件結(jié)構(gòu) 3I O空間 C54x除了程序和數(shù)據(jù)存儲(chǔ)空間外 還提供了一個(gè)具有64K字的I O空間 主要用于對(duì)片外設(shè)備的訪問 可以使用輸入指令PORTR和輸出指令PORTW對(duì)I O空間尋址 在對(duì)I O空間訪問時(shí) 除了使用數(shù)據(jù)總線和地址總線外 還要用到IOTRB IS和I W控制線 IOTRB和IS 用于選通I O空間 I W 用于控制訪問方向 I O的擴(kuò)展應(yīng)用 在實(shí)際應(yīng)用中 許多DSP系統(tǒng)需要輸入和輸出接口 鍵盤和顯示器作為常用的輸入輸出設(shè)備 在便攜式儀器 手機(jī)等產(chǎn)品中得到了廣泛地應(yīng)用 使用液晶模塊和非編碼鍵盤可以很方便地作為I O設(shè)備與DSP芯片連接 1 顯示器連接與驅(qū)動(dòng) 復(fù)位端 低電平有效 1 液晶模塊TCM A0902的引腳 片選信號(hào) 低電平有效 RD 讀信號(hào)端 高電平有效 寫信號(hào)端 低電平有效 A0 寄存器選擇端 當(dāng)A0 0時(shí) 選擇命令寄存器 當(dāng)A0 1時(shí) 選擇數(shù)據(jù)寄存器 DB7 DB0 數(shù)據(jù)線 3I O的擴(kuò)展應(yīng)用 1 顯示器連接與驅(qū)動(dòng) 2 連接圖 命令端口地址 COMMP CFFFH 數(shù)據(jù)端口地址 DATAP EFFFH o LD AR3 A當(dāng)SXM 0 進(jìn)行無符號(hào)數(shù)加載 Beforeinstruction Afterinstruction A SXM AR3 0 000000FEDC 0 0300 0300 0000000000 FEDC FEDC Datamemory0300h LD AR3 A當(dāng)SXM 0 進(jìn)行有符號(hào)數(shù)加載 Beforeinstruction Afterinstruction A SXM AR3 1 FFFFFFFEDC 1 0300 0300 0000000000 FEDC FEDC Datamemory0300h 課堂練習(xí) LDA 4 B1 當(dāng)OVM 0 對(duì)溢出不進(jìn)行處理 僅通過OVB 1反映溢出 Beforeinstruction Afterinstruction A B OVB 000000FFFF 007FFF8000 07FFF80000 0 1 007FFF8000 0 0 OVM LDA 4 B Beforeinstruction Afterinstruction A B OVB 000000FFFF 007FFF8000 007FFFFFFF 0 1 007FFF8000 1 1 OVM 2 當(dāng)OVM 1 對(duì)溢出進(jìn)行處理 課堂練習(xí) 3 已知ST0 2c00h ST1 0320h 分析ALU的當(dāng)前工作方式 是否有符號(hào)擴(kuò)展等 及當(dāng)前輸出記過狀態(tài) 是否溢出等 4 如果中斷矢量表位于片內(nèi)存儲(chǔ)器空間 片內(nèi)的ROM要映射到數(shù)據(jù)空間 片內(nèi)的RAM只作為數(shù)據(jù)空間 那么該如何設(shè)置有關(guān)寄存器 5 上電復(fù)位后 第一條程序指令所在的地址是 課堂練習(xí) 2 4 C54x的片內(nèi)外設(shè)電路 C54x器件除了提供哈佛結(jié)構(gòu)的總線 功能強(qiáng)大的CPU以及大容量的存儲(chǔ)空間外 還提供了必要的片內(nèi)外部設(shè)備 不同型號(hào)的 C54x芯片 所配置的片內(nèi)外設(shè)有所不同 這些片內(nèi)外設(shè)主要包括 通用I O引腳 定時(shí)器 時(shí)鐘發(fā)生器 主機(jī)接口HPI 串行通信接口 軟件可編程等待狀態(tài)發(fā)生器 可編程分區(qū)轉(zhuǎn)換邏輯 1 通用I O引腳 C54x芯片為用戶提供了兩個(gè)通用的I O引腳 XF 用于程序向外設(shè)傳輸標(biāo)志信息 通過此引腳的置位或復(fù)位 可以控制外設(shè)的工作 2 定時(shí)器 C54x的定時(shí)器是一個(gè)帶有4位預(yù)分頻器的16位可軟件編程減法計(jì)數(shù)器 這個(gè)減法計(jì)數(shù)器每來1個(gè)時(shí)鐘周期自動(dòng)減1 當(dāng)計(jì)數(shù)器減到0時(shí)產(chǎn)生定時(shí)中斷 通過編程設(shè)置特定的狀態(tài)可使定時(shí)器停止 恢復(fù)運(yùn)行 復(fù)位或禁止 2 定時(shí)器 C54x的定時(shí)器主要包括3個(gè)存儲(chǔ)器映像寄存器 定時(shí)設(shè)定寄存器TIM定時(shí)周期寄存器PRD定時(shí)控制寄存器TCR 定時(shí)設(shè)定寄存器TIM它是一個(gè)16位減法計(jì)數(shù)器 映射到數(shù)據(jù)存儲(chǔ)空間的0024H單元 復(fù)位或定時(shí)器中斷 TINT 時(shí) TIM內(nèi)裝入PRD寄存器的值 定時(shí)時(shí)間 并進(jìn)行自動(dòng)減1操作 定時(shí)周期寄存器PRD16位的存儲(chǔ)器映像寄存器 位于數(shù)據(jù)存儲(chǔ)空間的0025H單元 用來存放定時(shí)時(shí)間常數(shù) 每次復(fù)位或TINT中斷時(shí) 將定時(shí)時(shí)間裝入TIM寄存器 2 定時(shí)器 定時(shí)控制寄存器TCR16位的存儲(chǔ)器映像寄存器 位于數(shù)據(jù)存儲(chǔ)空間的0026H單元 用來存儲(chǔ)定時(shí)器的控制位和狀態(tài)位 包括定時(shí)器分頻系數(shù)TDDR 預(yù)標(biāo)定計(jì)數(shù)器PSC 控制位TRB和TSS等 定時(shí)中斷的周期 CLKOUT TDDR 1 PRD 1 時(shí)鐘周期 分頻系數(shù) 時(shí)鐘周期 計(jì)算定時(shí)器初值 例如 定時(shí)周期 1ms 設(shè)時(shí)鐘周期CLKOUT 1 80M 12 5ns 求TDDR和PDR解 設(shè)定TDDR 9定時(shí)周期 CLKOUT TDDR 1 PRD 1 12 5 9 1 PRD 1 1ms得 PRD 7999 1F3Fh 4 主機(jī)接口HPI 主機(jī)接口HPI是 C54x芯片具有的一種8位或16位的并行接口部件 主要用于DSP與其他總線或主處理機(jī)進(jìn)行通信 HPI接口通過HPI控制寄存器 HPIC 地址寄存器 HPIA 數(shù)據(jù)鎖存器 HPID 和HPI內(nèi)存塊實(shí)現(xiàn)與主機(jī)通信 4 主機(jī)接口HPI 接口所需要的外部硬件少 HPI單元允許芯片直接利用一個(gè)或兩個(gè)數(shù)據(jù)選通信號(hào) 有一個(gè)獨(dú)立或復(fù)用的地址總線 一個(gè)獨(dú)立或復(fù)用的數(shù)據(jù)總線與微控制單元MCU連接 主機(jī)和DSP可獨(dú)立地對(duì)HPI接口操作 主機(jī)和DSP握手可通過中斷方式來完成 主機(jī)可以通過HPI直接訪問CPU的存儲(chǔ)空間 包括存儲(chǔ)器映像寄存器 主機(jī)還可以通過HPI接口裝載DSP的應(yīng)用程序 接收DSP運(yùn)行結(jié)果或診斷DSP運(yùn)行狀態(tài) 主要特點(diǎn) 5 串行通信接口 C54x內(nèi)部具有功能很強(qiáng)的高速 全雙工串行通信接口 可以和其他串行器件直接接口 四種串行口 標(biāo)準(zhǔn)同步串行口SP緩沖同步串行口BSP時(shí)分多路串行口TDM多路緩沖串行口McBSP 5 串行通信接口 1 標(biāo)準(zhǔn)同步串行口SPSP是一個(gè)高速 全雙工 雙緩沖的串行口 提供了與編碼器 A D轉(zhuǎn)換器等串行設(shè)備之間的通信 可實(shí)現(xiàn)數(shù)據(jù)的同步發(fā)送和接收 能完成8位字節(jié)或16位字的串行通信 每個(gè)串行口都含有發(fā)送數(shù)據(jù)寄存器DXR 發(fā)送移位寄存器XSR 接收數(shù)據(jù)寄存器DRR和接收移位寄存器RSR 并能以1 4機(jī)器周期頻率工作 在進(jìn)行數(shù)據(jù)的接收和發(fā)送時(shí) 串行口能產(chǎn)生可屏蔽的收 發(fā)中斷 RINT和XINT 通過軟件來管理數(shù)據(jù)的接收和發(fā)送 整個(gè)過程由串行口控制寄存器SPC控制 5 串行通信接口 2 緩沖同步串行口BSPBSP是一種增強(qiáng)型同步串行口 它是在同步串行口的基礎(chǔ)上增加了一個(gè)自動(dòng)緩沖單元ABU ABU的功能 利用專用總線 控制串行口直接與 C54x的內(nèi)部存儲(chǔ)器進(jìn)行數(shù)據(jù)交換 工作方式 非緩沖模式和自動(dòng)緩沖模式 非緩沖模式 即標(biāo)準(zhǔn)模式 與SP相同 自動(dòng)緩沖模式 在ABU的控制下 串行口直接與C54x的內(nèi)部存儲(chǔ)器進(jìn)行16位數(shù)據(jù)塊傳輸 當(dāng)傳輸?shù)臄?shù)據(jù)長(zhǎng)度是數(shù)據(jù)塊長(zhǎng)度的一半或整個(gè)長(zhǎng)度時(shí) 產(chǎn)生中斷 這兩種工作模式都提供了包括可編程控制的串口時(shí)鐘 幀同步信號(hào) 可選擇時(shí)鐘和幀同步信號(hào)的正負(fù)極性等增強(qiáng)功能 能以每幀8位 10位 12位和16位傳輸數(shù)據(jù) 最大操作頻率為CLKOUT 5 串行通信接口 3 時(shí)分多路串行口TDMTDM是一個(gè)允許數(shù)據(jù)時(shí)分多路的同步串行接口 既能工作在同步方式 也能工作在TDM方式 TDM可以與外部多個(gè)應(yīng)用接口實(shí)現(xiàn)方便靈活的數(shù)據(jù)交換 最多可與8個(gè)外部器件接口通信 這種接口在多處理器應(yīng)用中得到了廣泛的使用 工作方式 非TDM模式和TDM模式 非TDM模式 稱為標(biāo)準(zhǔn)方式 與SP相同 TDM模式 是將與多個(gè)不同器件的通訊按時(shí)間依次劃分成若干個(gè)時(shí)間段 信道 TDM周期地按時(shí)間順序與不同的信道設(shè)備進(jìn)行串行通信 第2章TMS320C54x的硬件結(jié)構(gòu) 5 串行通信接口 4 多路緩沖串行口McBSPMcBSP是一個(gè)高速 全雙工 多通道緩沖串行接口 可直接與其他 C54x 編碼器以及系統(tǒng)中的其他串口器件通信 McBSP提供了全雙工通信 連續(xù)數(shù)據(jù)流的雙緩沖數(shù)據(jù)寄存器 接收和發(fā)送獨(dú)立的幀和時(shí)鐘信號(hào) 可以直接與T1 E1幀接口 McBSP在外部通道選擇電路的控制下 采用分時(shí)的方式實(shí)現(xiàn)多通道串行通信 與以前的串行口相比 具有很大的靈活性 BIO XF用作異步通訊握手信號(hào)MCBSP作為通用IO口進(jìn)行數(shù)據(jù)傳輸 2 5 C54x的系統(tǒng)控制 C54x芯片的系統(tǒng)控制 程序計(jì)數(shù)器PC 硬件堆棧 PC相關(guān)的硬件 外部復(fù)位信號(hào) 中斷 狀態(tài)寄存器 循環(huán)計(jì)數(shù)器 2 5 C54x的系統(tǒng)控制 2 5 1程序地址的產(chǎn)生 C54x的程序存儲(chǔ)器用來存放應(yīng)用程序的代碼 系數(shù)表和立即數(shù) CPU取指操作時(shí) 首先 由程序地址生成器 PAGEN 產(chǎn)生地址 然后 將地址加載到程序地址總線PAB 最后 PAB尋址存放程序存儲(chǔ)器中的指令 系數(shù)表和立即數(shù) 2 7 1程序地址的產(chǎn)生 PAGEN的組成 程序計(jì)數(shù)器PC重復(fù)計(jì)數(shù)器RC塊重復(fù)計(jì)數(shù)器BRC塊重復(fù)起始地址寄存器RSA塊重復(fù)結(jié)束地址寄存器REA 1 程序存儲(chǔ)器地址生成器PAGEN 存儲(chǔ)器映像寄存器 1AH 1BH 1CH PAGEN的組成框圖 2 5 1程序地址的產(chǎn)生 2 程序計(jì)數(shù)器PC 程序計(jì)數(shù)器是一個(gè)16位計(jì)數(shù)器 用來保存某個(gè)內(nèi)部或外部程序存儲(chǔ)器的地址 對(duì)PC加載的方法 當(dāng)進(jìn)行復(fù)位操作時(shí) 將地址FF80H加載PC 當(dāng)程序是順序執(zhí)行時(shí) 則PC被增量加載 即PC PC 1 當(dāng)分支轉(zhuǎn)移發(fā)生時(shí) 用緊跟在分支轉(zhuǎn)移指后面的16位立即數(shù)加載PC 當(dāng)執(zhí)行塊重復(fù)指令時(shí) 若PC 1等于塊重復(fù)結(jié)束地址REA 1 則將塊重復(fù)起始地址RSA加載PC 2020年4月19日 DSP原理及應(yīng)用 121 2 7 C54x的系統(tǒng)控制 2 7 3系統(tǒng)的復(fù)位 復(fù)位期間 處理器將進(jìn)行如下操作 狀態(tài)寄存器ST0 1800H 將ST1中的INTM位置1 關(guān)閉所有可屏蔽中斷 2020年4月19日 DSP原理及應(yīng)用 122 2 7 3系統(tǒng)的復(fù)位 復(fù)位期間 處理器將進(jìn)行如下操作 2020年4月19日 DSP原理及應(yīng)用 123 復(fù)位期間 處理器將進(jìn)行如下操作 將下列狀態(tài)位置為初始值 注意 復(fù)位期間 不對(duì)其余的狀態(tài)位和堆棧指針SP初始化 ARP 0ASM 0AVIS 0BRAF 0C 1C16 0CLKOFF 0CMPT 0CPL 0DP 0DROM 0FRCT 0HM 0INTM 1OVA 0OVB 0OVLY 0OVM 0SXM 1TC 1XF 1 2020年4月19日 DSP原理及應(yīng)用 124 2 7 4中斷操作 中斷系統(tǒng)是為計(jì)算機(jī)系統(tǒng)提供實(shí)時(shí)操作 多任務(wù)和多進(jìn)程操作的關(guān)鍵部件 中斷信號(hào) 由外設(shè)向CPU傳送數(shù)據(jù)的硬件設(shè)備產(chǎn)生 由外設(shè)向CPU提取數(shù)據(jù)的硬件設(shè)備產(chǎn)生 由定時(shí)器產(chǎn)生 2020年4月19日 DSP原理及應(yīng)用 125 2 7 4中斷操作 當(dāng)CPU響應(yīng)中斷時(shí) 將暫時(shí)停止當(dāng)前程序的執(zhí)行 而去執(zhí)行中斷服務(wù)程序 中斷系統(tǒng) 軟件中斷 硬件中斷 由程序指令產(chǎn)生的中斷 如 INTR TRAP或RESET 由外圍設(shè)備信號(hào)產(chǎn)生的中斷 硬件中斷 受外部中斷口信號(hào)觸發(fā)的外部硬件中斷 受片內(nèi)外設(shè)電路信號(hào)觸發(fā)的內(nèi)部硬件中斷 2020年4月19日 DSP原理及應(yīng)用 126 2 7 4中斷操作 不論是軟件中斷還是硬件中斷 C

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論