TMS320C31和80C196雙CPU構(gòu)成的高速實時控制系統(tǒng)研究
出處:電子技術應用 發(fā)布于:2011-06-18 12:29:26
DSP(digital signal processor)是一種獨特的微處理器,是以數(shù)字信號來處理大量信息的器件。TMS320C31是TI公司的第三DSP芯片,它的基本結(jié)構(gòu)包括:(1)程序文憑間與數(shù)據(jù)空間分開的總線結(jié)構(gòu),可以對程序存儲器和數(shù)據(jù)存儲器這兩個獨立的存儲器進行獨立編址、獨立訪問;(2)流水線結(jié)構(gòu),以三級流水線操作為例,在每個指令周期內(nèi),三條不同的指令都處于激活狀態(tài),但處于不同的階段,分別為取指、譯碼和執(zhí)行;(3)專用的硬件乘法器,使乘法可以在單周期內(nèi)完成;(4)特殊的DSP指令;(5)快速的指令周期,可以達到33.3ns,即每秒能執(zhí)行60M條指令。
由一片TMS320C31加上存儲器、模/數(shù)轉(zhuǎn)換單元和外設接口就可以構(gòu)成一個完整的控制系統(tǒng),但這種方案若要達到高速實時控制則是不可行的。這里采用TMS320C31和一個通用微處理器80C196一起來作為這個高速實時控制系統(tǒng)的CPU.其中80C196作為主機,負責數(shù)據(jù)的采集處理、外部系統(tǒng)中執(zhí)行機構(gòu)的控制和驅(qū)動以及人機接口等功能;TMS320C31作為從機,負責復雜算法的實現(xiàn)。這樣可以使TMS320C31專注于算法的計算,充分利用它高速數(shù)據(jù)處理的能力。TMS320C31與80C196之間通過雙口RAM進行高速數(shù)據(jù)通信,之所以采用雙口RAM是因為這種通信方式數(shù)據(jù)傳輸?shù)乃俾屎芨?,并且抗干擾性能較好。
1 系統(tǒng)構(gòu)成
系統(tǒng)主要由兩大模塊組成:算法模塊和輸入輸出控制模塊。算法模塊以TMS320C31為構(gòu)成,是整個系統(tǒng)的計算中心,負責復雜算法的實現(xiàn);輸入輸出控制模塊以80196為中心構(gòu)成,負責數(shù)據(jù)的采集處理、外部系統(tǒng)中執(zhí)行機構(gòu)的控制和驅(qū)動以及人機接口等功能。算法模塊與輸入輸出控制模塊之間通過雙口RAM IDT7140進行高速數(shù)據(jù)通信。算法通過從輸入輸出控制模塊處獲得算法所需的輸入數(shù)據(jù)(即實時采樣到的數(shù)據(jù)),然后將計算結(jié)果送給輸入輸出控制模塊,再由輸入輸出控制模塊控制各執(zhí)行機構(gòu)。
TMS320C31是TI公司TMS320系列數(shù)字信號處理器中的第三代產(chǎn)品TMS320C3X中的一種。它是32位浮點運算DSP,具有60ns的單周期指令執(zhí)行時間。內(nèi)部的總線結(jié)構(gòu)和特殊的數(shù)字信號處理指令集,保證了它的運行高速度和使用靈活性。TMS320C31是一種Harvard結(jié)構(gòu)的計算機芯片,它采用流水線方式執(zhí)行指令,即在同一個機器周期內(nèi),分別完成不同指令的執(zhí)行、譯碼、取指令和地址,保證了單周期的指令執(zhí)行時間。該處理器還設置了通用寄存器堆、高速程序緩存器(Cache)、專用輔助寄存器算術單元(ARAu)、支持并行I/0 口的DMA通道等。和一般的微處理器比較,典型的特點就是采用了多總線結(jié)構(gòu),使得并行處理成為可能。
TMS320C31主要結(jié)構(gòu)特征如下:
●片內(nèi)含有2個lkX 32bits單周期內(nèi)可訪問兩次的RAM.64X 32bits指令Cache;指令及數(shù)據(jù)字長32bits,地址寬度24bits;
●多總線結(jié)構(gòu);40/32bits浮點/整數(shù)乘法器及ALU;8個以40blts擴展寄存器為基礎的Acc;32bits桶形移位器;
●8個輔助寄存器和兩個輔助寄存器計算單元;片內(nèi)DMA控制器,使I/0與CPU并行工作;單周期內(nèi)并行的ALU及乘法指令;
●程序塊循環(huán)能力即支持循環(huán)尋址;零開銷循環(huán),單周期分支;條件調(diào)用及返回;互鎖指令支持多處理器操作;
●兩個定時/計數(shù)器;1個串行口支持8/ 16/32bits數(shù)據(jù)傳送;0.8NnCMOS,132腳PO.FP封裝。
2 TMS320C31、80C196與雙口RAM IDT7140之間的接口電路
如圖1所示,IDT7140有兩組完全對稱的地址線數(shù)據(jù)線和控制線,TMS320C31與左邊這組線相連,80C196與右邊的那組線相連。TMS320C31給IDT7140分配的地址空間為0x20000H~0x1003ffH.通過GAL16V8對A[20,23]和外部存取選通信號/STRB進行譯碼,給出IDT7140的片選信號/CEL.IDT7140通過/BUSYL和/BUSYR引腳接高電平,工作在中斷方式。80C196給IDT7140分配地地址空間為0xA000H~0xA3ffH.通過GAL16V8對AD[12,15]和外部存儲器讀信號/RD進行譯碼,給出IDT7140的片選信號/CER.80C196的/WE在寫周期為低電平,讀周期為高電平,與IDT7140的R/WR定義一致,所以/WE可直接與R/WE可直接與R/WR相連,作為IDT7140右邊的讀之所以控制信號。IDT7140的中斷引腳/INTR接到80C196的外部中斷。

3 雙口RAM IDT7130/40的中斷邏輯設計
雙口RAM必須采用一定的機制來協(xié)調(diào)左右兩邊CPU對它的讀寫操作。IDT公司的雙口RAM系列用口斷、硬件、令牌和軟件這四種方式來協(xié)調(diào)雙方。在TMS320C31和80C196雙CPU構(gòu)成的高速實時控制系統(tǒng)中,IDT7140采用的是中斷方式。下面介紹IDT雙口RAM系列的中斷邏輯設計。
如圖2所示,IDT雙口RAM的中斷邏輯實際上是由與非門組成的兩個基本RS觸發(fā)器所構(gòu)成。在所有的IDT雙口RAM芯片中,內(nèi)存的兩個單元被用作為左右兩邊CPU的中斷信箱。各CPU只能讀自己的中斷信箱,寫對方的中斷信箱;而不能寫自己的中斷信箱,讀對方的斷信箱。當左邊CPU中右邊CPU的中斷信箱3FFH單元寫入數(shù)據(jù)時,圖2中/WR置0,IRn+1置1,指向右邊CPU的中斷信號有效;當右邊CPU從自己中斷信箱3FFH單元讀數(shù)據(jù)時,圖2中/RR置0,則IRn+1置0,指向右邊CPU的中斷信號被清除。同樣地,右邊CPU對左邊CPU中斷信號的設置和清除也是如此,只不過把上面的3FFH單元換為3FFH單元。其真值表如表1所示。
表1 雙口RAM中斷邏輯真值表

從圖2和表1不難看出,指向右邊CPU的中斷信號從被置為低電平那一刻起一直有效至右邊CPU來讀3FFH單元。TMS320C31要求一個外部中斷必須至少持續(xù)一個H1周期保持為低電平,以便讓TMS320C31來確認。如果外部中斷信號在一到三個H1周期之內(nèi)保持為低,那么只有一個中斷被確認;如果在三個或更多個周期內(nèi)保持為低,則可以確認多于一個中斷。所以IDT7140提供的中斷信號的有效時間可以滿足TMS320C31的要求,這樣IDT7140的/INTL引腳就可以和TMS320C31的INT1直接相連。但與此同時也要求TMS320C31盡快地服務IDT7140的中斷申請,以免一個中斷申請被誤認為多個中斷申請。
4 TMS320C31與80C196之間采用雙口RAM進行高速數(shù)據(jù)通信的軟件實現(xiàn)
從圖2得知,左邊CPU寫右邊CPU的中斷信箱3FFH單元時,雙口RAM會給右邊CPU發(fā)一中斷信號;同樣,右邊CPU在寫左邊CPU的中斷信箱3FFH單元時,雙口RAM也會給左邊CPU發(fā)一中斷信號。以左邊的TMS320C31為例,在它獲得外部中斷信號INT1后,它并不知道右邊的80C196是剛開始占用雙口RAM還是用完了要釋放使用權。所以雙方事先應有一個簡單的協(xié)議,例如右邊CPU在3FEH單元中寫"FFH"代表右(左)邊正占用雙口RAM,定"11H"代表要釋放使用權,或者還可以有更多的數(shù)據(jù)含義的定義,視兩邊CPU通信內(nèi)容的復雜程度而定。下面以TMS320C31為例來說明數(shù)據(jù)通信的軟件實現(xiàn),程序流程如圖3和圖4所示。


隨著各種復雜算法的應用越來越廣泛,DSP的應用也會越來越普及,各種不同的多CPU系統(tǒng)不斷涌現(xiàn)。在這些系統(tǒng)中,雙口RAM以它方便、快速的特點將成為很多多CPU系統(tǒng)中的通信途徑。
版權與免責聲明
凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://m.58mhw.cn,違反者本網(wǎng)將追究相關法律責任。
本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔此類作品侵權行為的直接責任及連帶責任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負版權等法律責任。
如涉及作品內(nèi)容、版權等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關權利。
- 掌握 DSP:原理剖析與應用實踐2025/5/8 14:03:24
- 模糊邏輯在 DSP 上實時執(zhí)行2023/7/25 17:13:30
- 多速率DSP及其在數(shù)模轉(zhuǎn)換中的應用2023/6/12 15:28:52
- 使用 DSP 加速 CORDIC 算法2023/3/29 15:46:30
- 高速DSP系統(tǒng)的信號完整性2022/9/26 16:45:38









