DSP第二章DSP芯片的基本結構和特征_第1頁
DSP第二章DSP芯片的基本結構和特征_第2頁
DSP第二章DSP芯片的基本結構和特征_第3頁
DSP第二章DSP芯片的基本結構和特征_第4頁
DSP第二章DSP芯片的基本結構和特征_第5頁
已閱讀5頁,還剩101頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

第二章

DSP芯片的根本

結構和特征2.1引言 可編程DSP芯片是一種具有特殊結構的微處理器。 DSP芯片一般都具有程序和數據分開的總線結構、流水線操作功能、單周期完成乘法的硬件乘法器以及一套適合數字信號處理的指令集。 本章內容:DSP芯片的根本結構,TI公司的各種DSP芯片的特征及其他公司的DSP芯片的特點。2.2DSP芯片的根本結構DSP芯片采用特殊的軟硬件結構:快速地實現數字信號處理運算。TMS320系列DSP芯片的根本結構包括:〔1〕哈佛結構;〔2〕流水線操作;〔3〕專用的硬件乘法器;〔4〕特殊的DSP指令;〔5〕快速的指令周期。 DSP芯片可以實現快速的DSP運算,并使大局部運算〔例如乘法〕能夠在一個指令周期內完成。 TMS320系列DSP芯片是軟件可編程器件:具有通用微處理器具有的方便靈活的特點。2.2.1哈佛結構哈佛結構:不同于傳統的馮·諾曼〔VonNeuman〕結構的并行體系結構。 其主要特點:是將程序和數據存儲在不同的存儲空間中,即程序存儲器和數據存儲器是兩個相互獨立的存儲器,每個存儲器獨立編址,獨立訪問。與兩個存儲器相對應的是系統中設置了程序總線和數據總線兩條總線,從而使數據的吞吐率提高了一倍。馮·諾曼結構:那么是將指令、數據、地址存儲在同一存儲器中,統一編址,依靠指令計數器提供的地址來區分是指令、數據還是地址。取指令和取數據都訪問同一存儲器,數據吞吐率低。

在哈佛結構中:由于程序和數據存儲器在兩個分開的空間中,因此取指和執行能完全重疊運行。 TMS320系列DSP芯片在根本哈佛結構的根底上作了改進: 一是允許數據存放在程序存儲器中,并被算術運算指令直接使用,增強了芯片的靈活性; 二是指令存儲在高速緩沖器〔Cache〕中,當執行此指令時,不需要再從存儲器中讀取指令,節約了一個指令周期的時間。如TMS320C30具有64個字的Cache。進一步提高了運行速度和靈活性,2.2.2流水線DSP芯片廣泛采用流水線以減少指令執行時間,從而增強了處理器的處理能力。TMS320系列處理器的流水線深度從2~6級不等。第一代TMS320處理器采用二級流水線,第二代采用三級流水線,而第三代那么采用四級流水線。

TMS320C54X采用六級流水線: 在三級流水線操作中,取指、譯碼和執行操作可以獨立地處理,這可使指令執行能完全重疊。在每個指令周期內,三個不同的指令處于激活狀態,每個指令處于不同的階段。例如,在第N個指令取指時,前一個指令即第N-1個指令正在譯碼,而第N-2個指令那么正在執行。CLKOUT1執行譯碼取指NN-1N-2N+1N-1N+2NNN+1

2.2.3專用的硬件乘法器乘法是DSP的重要組成局部。濾波器常常做一次乘法和一次加法〔XY〕。乘法速度越快,DSP處理器的性能就越高。在通用的微處理器中,乘法指令是由一系列加法來實現的,故需許多個指令周期來完成。DSP芯片的特征就是有一個專用的硬件乘法器。 在TMS320系列中,由于具有專用的硬件乘法器,乘法可在一個指令周期內完成。

2.2.4特殊的DSP指令DSP芯片的另一個特征:特殊的指令。指令DMOV:它完成數據移位功能。在數字信號處理中,延遲操作非常重要,這個延遲就是由DMOV來實現的。指令LTD:它在一個指令周期內完成LT、DMOV和APAC〔將乘法結果加到ACC中〕三條指令。指令FIRS: 哈佛結構、流水線操作、專用的硬件乘法器、特殊的DSP指令再加上集成電路的優化設計,可使DSP芯片的指令周期在200ns以下。TMS320系列處理器的指令周期已經從第一代的200ns降低至現在的20ns以下。快速的指令周期使得DSP芯片能夠實時實現許多DSP應用。

2.3TI定點DSP芯片TI定點DSP芯片:經歷TMS32021〔1982〕DSP芯片TMS320C1X、TMS320C2X/C2XX、TMS320C5X、TMS320C54X、TMS320C62X等幾代產品,產品的性能價格比不斷提高,應用越來越廣泛。2.3.1TMS320C1X.1根本特點第一代TMS320系列DSP芯片包括:TMS32021、TMS32021、TMS320C10、TMS320C15/E15和TMS320C17/E17。這些芯片的典型工作頻率為20MHz。第一代DSP芯片的主要特點如下: 指令周期:160ns/200ns/280ns 片內RAM:144字/256字〔TMS320C15/E15/C17/E17〕 片內ROM:1.5K字/4K字〔TMS320C15/C17〕 4K字片內程序EPROM〔TMS320E15/E17〕 4K字外部全速存儲器擴展 并行乘法器:乘積為32位 桶形移位器:將數據從存儲器移到ALU進行計算時,0~16位左移。 并行移位器:用于小數結果的調整。 允許文本交換的4×12位堆棧 兩個間接尋址的輔助存放器 雙通道串行口〔TMS32021,TMS320C17/E17〕 協處理器接口〔TMS320C17/E17〕 器件封裝:40腳雙列直插〔DIP〕/44腳塑封〔PLCC〕

2.3.1.2TMS320C10 TMS32021采用改進的哈佛結構,即程序和數據空間相互獨立。程序存儲器可在片內〔1.5K字〕或片外〔4K字〕。片內數據RAM為144字。 有四個根本的算術單元:算術邏輯單元〔ALU〕、累加器〔ACC〕、乘法器和移位器。(1)ALU:32位數據操作的通用算術邏輯單元。ALU可進行加、減和邏輯運算;(2) ACC:它采用32位字長操作,分高16位和低16位兩局部。處理器提供高16位和低16位的專門指令:SACH〔高16位〕和SACL〔低16位〕; (3)乘法器:16×16位并行乘法器由三個單元組成:T存放器、P存放器和乘法器陣列。T存放器存儲被乘數,P存放器存儲32位乘積。 (4)移位器:有兩個移位器可用于數據移位。一個是桶形移位器,另一個是并行移位器。桶形移位器又稱定標移位器。當數據存儲器的數據送入累加器或與累加器中的數據進行運算時,先通過這個移位器進行0~16位左移,然后再進行運算。并行移位器即輸出移位器,其作用是將累加器中的數據左移0、1或4位后再送入數據存儲器中,以實現小數運算或小數乘積的調整。2.3.1.3TMS320C1X的其他芯片1.TMS320C15/E15 TMS320C15/E15與TMS32021的代碼和管腳全兼容,提供256字的片內RAM和4K字的片內ROM〔C15〕或EPROM〔E15〕。TMS320C15的指令周期有200ns和160ns〔TMS320C15-25〕兩種。2.TMS320C17/E17 TMS320C17/E17是一個專用的微處理器。它有4K字的片內程序ROM〔C17〕或EPROM〔E17〕,一個全雙工串行通信的雙通道串行口,片內硬件壓擴器〔律/A律〕,一個用于串行通信的串行口定時器,及一個協處理器接口。協處理器接口可以在處理器和4/8/16位微處理器之間提供直接接口。TMS320C17/E17與TMS32021目標代碼兼容,且可用相同的開發工具。該處理器是基于TMS320C10的CPU內核,外加片內的外設存儲器和I/O模塊。TMS320C17/E17可認為是半定制的DSP芯片。表2.1是TMS320第一代產品的比較表。

表2.1TMS320第一代處理器DSP芯片指令周期(ns)制造工藝片內程序ROM(字)片內程序EPROM(字)片內數據RAM(字)片外程序(字)TMS32010200NMOS1.5K1444KTMS32010-25160NMOS1.5K1444KTMS32010-14280NMOS1.5K1444KTMS32011200NMOS1.5K144TMS320C10200CMOS1.5K1444KTMS320C10-25160CMOS1.5K1444KTMS320C15200CMOS4K2564KTMS320C15-25160CMOS4K2564KTMS320E15200CMOS4K2564KTMS320C17200CMOS4K256TMS320C17-25160CMOS4K256TMS320E17200CMOS4K2562.3.2TMS320C2X第二代TMS320DSP芯片:包括TMS32021、TMS320C25/E25、TMS320C26及TMS320C28。TMS32021是一個過渡的產品,其指令周期為200ns,與TMS32021相當,而其硬件結構那么與TMS320C25一致。在第二代DSP芯片中,TMS320C25是一個典型的代表,其他芯片都是由TMS320C25派生出來的。其中TMS320E25將內部4K字的ROM改為EPROM;TMS320C26去掉了內部的4K字ROM,而將片內RAM增加到1.5K字;TMS320C28:那么將內部ROM增加到8K字。由于TMS320C25的典型性,下面就討論TMS320C25的根本特征和結構。2.3.2.1TMS320C25的根本特征指令周期:TMS320C25:100ns,TMS320C25-33:120ns,TMS320C25-50:80ns片內掩膜ROM:4K字片內RAM:544字,分B0、B1和B2三塊程序和數據空間均為64K字具有8級硬件堆棧、8個輔助存放器具有全靜態雙緩沖串行口,可與許多串行器件直接接口與低速片外存儲器通信的等待狀態插入采用HOLD操作的DMAFFT變換用的比特反轉尋址擴展精度算術和自適應濾波支持從外部存儲器全速執行的MAC/MACD指令具有在多處理器之間進行同步的能力,支持多處理器共享存儲器 1.8μmCMOS工藝,68腳PGA或PLCC封裝2.3.2.2TMS320C25的結構TMS320C25是第二代,指令執行速度是TMS32021的2倍,且增加了硬件和軟件資源。指令集是TMS32021和TMS32021的超集,在源代碼級與它們兼容。100ns的指令周期可提供較強的運算能力。由于大局部指令在一個指令周期內執行,處理器在1秒內可執行1000萬條指令〔10MIPS〕。運算能力的增加主要得益于乘累加指令〔MAC〕和帶數據移位的乘累加指令〔MACD〕、具有專用算術單元的8個輔助存放器、適合于自適應濾波和擴展精度運算的指令集支持、比特反轉尋址、快速的I/O支持等。指令集中提供在兩個存儲空間中進行數據移動的指令。在外部,程序和數據存儲空間在同一總線上復用,從而使得在盡量減少芯片引腳的情況下最大程度地擴大兩個空間的地址范圍。在內部,TMS320C25結構通過保持程序和數據總線結構別離以使指令全速執行來獲得最大的處理能力。 芯片內部的程序執行采用三級流水線形式。在某些情況下流水線可能被打斷〔如跳轉指令〕,在這種情況下,指令執行時間要考慮流水線必須清空和重新填充。 兩塊大的片內RAM在系統設計時提供了很大的靈活性,其中一塊既可配置為程序存儲器也可配置為數據存儲器。片外64K字的數據空間可直接尋址,從而使DSP算法實現更為方便。 片內4K字的掩膜ROM可用來降低系統本錢,假設程序不超過4K字,可使TMS320C25不用擴展片外程序存儲器。 剩下的64K字程序空間在片外,大量的程序可在片外存儲器中全速運行。程序也可從片外慢速EPROM中裝入到片內高速RAM中全速運行。此外,還有硬件定時器、串行口和數據塊搬移功能。1.存儲器分配TMS320C25具有4K字的片內程序ROM和544字的片內RAM。 RAM分為三塊:B0、B1、B2。其中,B0塊〔256字〕既可配置為數據存儲器〔用CNFD指令〕,也可配置為程序存儲器〔用CNFP指令〕。其余288字〔B1和B2塊〕只能是數據存儲器。544字的片內RAM可使C25能處理512字的數據陣列,如可進行256點復數FFT運算,且尚有32字用作中間結果的暫存。TMS320C25提供片外可直接尋址的程序和數據空間各64K字。存放器組包含8個輔助存放器〔AR0~AR7〕,它們可用作數據存儲器的間接尋址和暫存,從而增加芯片的靈活性和效率。這些存放器既可用指令直接尋址,也可用3比特的輔助存放器指針〔ARP〕間接尋址。輔助存放器和ARP既可從數據存儲器裝數,也可裝入立即數。存放器的內容也可存入數據存儲器中。輔助存放器組與輔助存放器算術單元〔ARAU〕相連接,用ARAU訪問信息表無需CALU參與地址操作,這樣可讓CALU進行其他操作。2.中央算術邏輯單元 CALU包含一個16位的定標移位器〔Scaling〕,一個16×16位的并行乘法器,一個32位的累加器和一個32位的算術邏輯單元〔ALU〕。移位器根據指令要求提供0到16位的數據左移。累加器和乘法器輸出端的移位器適合于數值的歸一化、比特提取、擴展精度算術和溢出保護。 典型的ALU指令實現包含以下三步: (1)數據在數據總線上從RAM中獲取; (2)數據移交給完成算術運算的定標移位器和ALU; (3)結果送回累加器。 32位累加器可分為2個16位以進行數據存儲:SACH〔高16位〕和ACCL〔低16位〕。累加器有一個進位位可方便加法和減法的多精度運算。3.硬件乘法器TMS320C25具有一個16×16位的硬件乘法器,它能在一個指令周期內計算一個32位乘積。有兩個存放器與乘法器相關:①16位暫存存放器TR,用于保存乘法器的一個操作數;②32位乘積存放器PR,用于保存乘積。乘積存放器的輸出可左移1位或4位,這對于實現小數算術運算或調整小數乘積很有用。PR的輸出也可右移6位,這樣可連續執行128次乘/加而無溢出。無符號乘〔MPYU〕指令可方便擴展精度乘法。4.I/O接口I/O空間由16個輸入口和16個輸出口組成。這些口可提供全16位并行I/O接口。輸入〔IN〕和輸出〔OUT〕操作典型的是2個周期,但假設用重復指令,可變成單周期指令。I/O器件映射到I/O地址空間,其方式與存儲器映射方式相同。與不同速度的存儲器或I/O器件接口采用READY線完成。TMS320C25也支持外部程序/數據存儲器的DMA,其他處理器通過置HOLD\為低后可完全控制TMS320C25的外部存儲器,使C25將其地址、數據和控制線呈高阻狀態。外部處理器和C25的通信可通過中斷來完成。TMS320C25芯片提供兩種DMA方式,一種是加上HOLD后停止執行;另一種是C25繼續執行,但執行是在片內ROM和RAM中進行,這可大大提高性能。2.3.2.3TMS320C25的軟件TMS320C25的指令總共有133條,其中97條是單周期指令。 在另外36條指令中,21條包括跳轉、調用、返回等,這些指令需重新裝入程序計數器,使執行流水線中斷。另外7條指令是雙字和長立即數指令。剩下的8條指令〔IN,OUT,BLKD,BLKP,TBLR,TBLW,MAC,MACD〕支持I/O操作、存儲器之間的數據交換或提供處理器內部額外的并行操作,而且這8條指令與重復計數器配合使用時可成為單周期指令。這主要利用了處理器的并行機制,使得復雜的計算可用很少的幾條指令來完成。

由于大多數指令用單16位字編碼,故可在一個周期內完成。存儲器尋址方式有三種:直接尋址、間接尋址和立即數尋址。直接尋址和間接尋址都用來訪問數據存儲器,立即數尋址利用由程序計數器確定的存儲器內容。 使用直接尋址方式時,指令字的7位和9位數據存儲器頁指針〔DP〕構成16位的數據存儲器地址。其中,每頁長128字,共有512頁,故可尋址64K的數據空間。 間接尋址借助于8個輔助存放器〔AR0~AR7〕。表2.2列出了7種間接尋址方式。其中的比特反轉尋址可大大提高FFT運算的I/O效率。其中,OP表示某種運算,NARP表示新的ARP。尋址方式操作OPA直接尋址OP*(,NARP)間接尋址;AR不變OP*+(,NARP)間接尋址;當前AR加1OP*-(,NARP)間接尋址;當前AR減1OP*0+(,NARP)間接尋址;AR0加到當前AROP*0-(,NARP)間接尋址;當前AR減去AR0OP*BR0+(,NARP)間接尋址;AR0加到AR()OP*BR0-(,NARP)間接尋址;當前AR減去AR0()2.3.3TMS320C5XTMS320C5X:第五代產品,是繼TMS320C1X和TMS320C2X之后的第三代定點DSP處理器。以TMS320C25的核心CPU為根底,增強型結構大幅度地提高了整體性能。 工作速度:是TMS320C25的2倍以上,對于TMS320C1X和TMS320C2X具有源代碼向上兼容特性。這種兼容性保存了過去開發的軟件,便于系統升級到更高性能的DSP系統。

TMS320C5X系列: 有TMS320C50/C51/C52/C53等多種產品,它們的主要區別是片內RAM、ROM等資源的多少,如 TMS320C50內部具有10K字RAM和2K字ROM,其中2K字ROM已經固化了引導程序; TMS320C51內部具有2K字RAM和8K字ROM; TMS320C52內部具有1K字RAM和4K字ROM,減少了一個串行口;TMS320C53內部那么有4K字RAM和16K字ROM。芯片的其他性能那么是完全相同的。2.3.3.1TMS320C50的根本特征TMS320C50的主要特點包括: 25/35/50ns的指令周期〔20~40MIPS〕 224K×16位最大可尋址外部存儲空間〔64K程序、64K數據、64KI/O、32K全局〕算術邏輯單元〔ALU〕,32位累加器〔ACC〕以及32位加法器的緩沖器〔ACCB〕并行邏輯單元〔PLU〕結果具有32位的16×16位并行乘法器單周期乘累加指令具有一個專用算術單元的8個輔助存放器,可用于間接尋址8級硬件堆棧:8級硬件堆棧用于在中斷及子程序調用時保存程序計數器的內容。中斷發生時,重要存放器〔ACC、ACCB、ARCR、INDX、PMST、PREG、ST0、ST1和TREG〕壓入堆棧,中斷返回時彈出,實現了無開銷的中斷文本切換。 0~16位數據左移和右移兩個間接尋址的循環緩沖器,用于循環尋址程序代碼的單指令重復和程序塊重復全雙工同步串行口,用于完成TMS320C5X與其他串行器件之間的直接通信時分多址訪問〔TDM〕串行口內部定時器,可用軟件控制 64K并行I/O口,其中16個有存儲器映像可軟件編程的等待狀態發生器擴展保持操作,用于并發外部DMA四級流水線操作,用于延遲跳轉、調用、返回指令比特反轉尋址方式,用于FFT運算 JTAG掃描仿真接口〔IEEE標準,P1149.1〕1.核心CPU TMS320C5XCPU的增強功能在提高性能和通用性的同時,保持了對TMS320C1X和TMS320C2X源代碼的兼容性。硬件的改進包括:一個32位累加器緩沖器,附加定標能力,利用附加硬件功能的新指令。新的控制功能包括:獨立的并行邏輯單元〔PLU〕和一組文本交換存放器。數據管理方面的改進包括:采用新的塊搬移指令和存儲器映像存放器指令。TMS320C50有28個存儲器映像存放器和16個存儲器映像的I/O口。2.片內ROM TMS320C50擁有2K×16位ROM,內部固化了引導程序。該存儲器把程序從外部ROM/EPROM、串行口或并行I/O口引導至運行速度較快的SRAM中。這塊引導ROM可通過PMST狀態存放器中的MP/MC\位從程序存儲空間去除。如果該ROM未選,那么TMS320C50由片外存儲器啟動執行。3.片內數據RAM TMS320C50具有1056字的片內RAM,這塊RAM可在每個機器周期內訪問兩次〔雙尋址RAM〕,只要兩次訪問不是“寫〞操作。這塊存儲空間主要用于存儲數據,但是如果需要也可用于存儲程序和數據。其配置有兩種方式:所有的1056字都作為數據存儲區,或者將其中的544字作為數據存儲器,512字作為程序存儲區。可通過狀態存放器ST1中的CNF位選擇設置。4.片內程序/數據RAM TMS320C50還具有9K字的片內RAM。這一存儲區可以由軟件設置映射到程序或數據存儲空間。程序從片外存儲器引導后,可裝入到該存儲區全速運行。5.片內存儲器平安 TMS320C50可以通過可屏蔽選擇來保護片內存儲器的內容。當相關比特置位時,外部無法訪問片內存儲空間。6.有地址映射的軟件等待狀態發生器 軟件等待狀態邏輯不需要任何外部硬件就可以實現TMS320C50與速度較慢的片外存儲器和I/O設備接口。該電路系統擁有16個等待狀態發生器,其中可由用戶編程操作的有0,1,2,3和7狀態。7.并行I/O口 TMS320C50共有64KI/O口,其中的16個可映射在數據存儲空間。這些口可由IN或OUT指令尋址。具有存儲器映像的I/O口可按存儲器的讀寫方式訪問。I/O口的訪問由IS\線選通。增加簡單的片外地址譯碼電路,就可實現TMS320C50的I/O口與外部I/O設備的簡單連接。8.串行I/O口 TMS320C50有兩個高速串行口。串行口最快可按1/4機器周期〔CLKOUT1〕操作。一個是同步全雙工串行口,發送和接收都有緩沖,分別由可屏蔽外部中斷信號控制,數據可按照8或16位方式傳輸;另一個串行口為全雙工串口,可設置為同步方式,也可設置為時分多址〔TDM〕方式,TDM串行口一般用于多處理機系統。9.16位硬件定時器 16位硬件定時器可由軟件進行控制,通過設置相應的狀態位,定時器可工作在停止、重啟動、復位或不工作等狀態。10.用戶可屏蔽中斷 TMS320C50有4個外部中斷線。片內的中斷鎖存電路可實現異步中斷操作。此外,還有5個內部中斷:1個定時器中斷和4個串行口中斷。11.JTAG掃描邏輯 JTAG掃描邏輯電路用于仿真和測試,采用JTAG可實現在線仿真。2.3.3.2TMS320C50的結構 TMS320C50采用了與TMS320C25類似的哈佛型總線結構,通過兩個獨立的數據總線和程序總線,最大限度地提高運算速度。指令支持在兩個存儲區之間的數據傳輸。 TMS320C50使用32位的ALU和累加器以實現2的補碼運算。 ALU是一個通用的算術單元,它所使用的運算數據〔16位〕來自數據RAM或來自立即數指令,也可以是乘積存放器中32位的乘積結果。除此之外,ALU還可以執行位操作。累加器保存ALU的輸出,也為ALU提供下一個輸入。 字長為32位的累加器分為高字節和低字節。指令提供對低字節和高字節的單獨存儲。32位的累加器緩沖器用于臨時快速地存儲累加器的內容。 并行邏輯單元〔PLU〕:可以在不影響累加器內容的情況下對數據進行邏輯操作。PLU提供了高速控制器需要的位處理能力,并簡化了控制和狀態存放器需要的置位、清零和測試操作。 乘法器:以單指令周期完成16×16位的乘法,結果為32位。乘法器由三局部組成,分別是乘法器陣列、PREG〔乘積存放器〕、TREG0〔臨時存放器〕。16位的TREG0存儲乘數,PREG保存32位的乘積結果。乘法器中的數值來自數據存儲器,當使用MAC/MACD/MADS/MADD指令時來自程序存儲器,或者來自乘立即數指令〔MPY#〕。片內快速乘法器對執行諸如卷積、相關和濾波等根本的DSP操作十分有效。

TMS320C50的定標移位器:有一個16位的輸入來自數據總線,32位的輸出連接到ALU。定標移位器依照指令的編程使輸入數據產生0到16位的左移。移位量取決于指令或移位計數存放器〔TREG1〕中的定義值。輸出的最低有效位〔LSB〕補零,最高有效位補0或符號擴展〔取決于狀態存放器ST1的符號擴展模式位SXM〕。附加的移位能力使處理器能執行數值定標、二進制位提取、符號擴展運算和溢出防止等功能。 8級硬件堆棧:用于在中斷及子程序調用時保存程序計數器的內容。中斷發生時,重要存放器〔ACC、ACCB、ARCR、INDX、PMST、PREG、ST0、ST1和TREG〕壓入堆棧,中斷返回時彈出,實現了無開銷的中斷文本切換。

2.3.4TMS320C2000主要包括TMS320C20X、TMS320C24X、TMS320C28X。TMS320C20X是繼TMS320C2X和TMS320C5X之后出現的一種低價格、高性能定點DSP芯片,TMS320C20X系列DSP芯片具有如下特點:(1)處理能力強。 指令周期最短為25ns,運算能力達40MIPS;(2)片內具有較大的閃爍存儲器。 TMS320C20X是最早使用閃爍存儲器的DSP芯片。閃爍存儲器具有比ROM靈活、比RAM廉價的特點。TMS320F206和TMS320F207片內具有32K字的閃爍存儲器和4.5K字的RAM。利用閃爍存儲器存儲程序,不僅降低了本錢,減小了體積,同時系統升級也比較方便;(3)功耗低。 TMS320C2XX系列DSP芯片在5V工作時每個MIPS消耗1.9mA,在3.3V工作時每個MIPS消耗1.1mA。使用DSP核的省電模式可進一步降低功耗;(4)資源配置靈活。 現有10多種具有不同資源配置的芯片。表2.3是TMS320C20X系列DSP芯片比較表。此外,TMS320C24X、28X系列芯片為數字控制系統的應用做了優化設計。表2.3TMS320C20X系列芯片的資源配置TMS320C2XX指令周期(ns)片內ROM(字)片內RAM(字)片內FLM(字)同步串行口異步串行口C20325/35/5054411C20425/35/504K54411C20525/35/504.5K11F20625/35/504.5K32K11F20725/35/504.5K32K21C20935/504K4.5KC2405016K54411F2405054416K11C241508K54411F241505448K11C242504K54411F243505448K112.3.5TMS320C54X TMS320C54X是為實現低功耗、高性能而專門設計的定點DSP芯片,其主要應用是無線通信系統等。該芯片的內部結構與TMS320C5X不同,因而指令系統與TMS320C5X和TMS320C2X等是互不兼容的。 TMS320C54X的主要特點包括:運算速度快。 指令周期為25/20/15/12.5/10ns,運算能力為40/50/66/80/100MIPS;(2)優化的CPU結構。 內部有1個40位的算術邏輯單元, 2個40位的累加器, 2個40位加法器, 1個17×17的乘法器和1個40位的桶形移位器。 有4條內部總線和2個地址產生器。 內部還集成了維特比加速器:用于提高維特比編譯碼的速度。先進的DSP結構可高效地實現無線通信系統中的各種功能。(3)低功耗方式。 TMS320C54X可以在3.3V或2.7V電壓下工作,三個低功耗方式〔IDLE1、IDLE2和IDLE3〕可以節省DSP的功耗,TMS320C54X特別適合于無線移動設備。(4)智能外設。 標準的串行口和時分復用〔TDM〕串行口,自動緩沖串行口BSP〔auto-BufferedSerialPort〕和與外部處理器通信的HPI〔HostPortInterface〕接口。 BSP:可提供2K字數據緩沖的讀寫能力,從而降低處理器的額外開銷,指令周期為20ns時,BSP的最大數據吞吐量為50Mbit/s,即使在IDLE方式下,BSP也可以全速工作。 HPI:可以與外部標準的微處理器直接接口。表2.4是TMS320C54X系列局部DSP芯片比較表。表2.4TMS320C54X的資源配置TMS320C54X指令周期(ns)工作電壓(V)片內RAM(字)片內ROM(字)串行口BSPHPIC54120/255/3.3/3.05K28K2個標準口C54220/255/3.3/3.010K2K1個TDM口11C54320/253.3/3.010K2K1個TDM口1C54520/253.3/3.06K48K1個標準口11C54620/253.3/3.06K48K1個標準口1C54815/20/253.3/3.032K2K1個TDM口21LC/VC54910/12.5/153.3/2.532K16K1個TDM口21VC5402103.3/1.816K4K212.3.6TMS320C62X一種新型定點DSP芯片,內部集成了多個功能單元,可同時執行8條指令,運算能力達1600MIPS。其主要特點有:(1)運行速度快。指令周期為5ns,運算能力為1600MIPS;(2)內部結構不同于一般DSP芯片。 內部同時集成了2個乘法器和6個算術運算單元,且它們之間是高度正交的,使得在一個指令周期內最大能支持8條32bit的指令;(3)指令集不同。 為充分發揮其內部集成的各執行單元的獨立運行能力,TI公司使用了VelociTT超長指令字〔VLIW〕結構。它在一條指令中組合了幾個執行單元,結合其獨特的內部結構,可在一個時鐘周期內并行執行幾個指令;(4)大容量的片內存儲器和大范圍的尋址能力。 片內集成了512K字程序存儲器和512K字數據存儲器,并擁有32bit的外部存儲器界面;(5)智能外設。內部集成了4個DMA接口,2個多通道緩存串口,2個32bit計時器;(6)低廉的使用本錢。 在一個無線基站的應用中,每片MS320C62X能同時完成30路的語音編解碼,每路本錢為3美元,而以前的DSP系列最大只能完成5路,每路的本錢為7美元。 這種芯片適合于無線基站、無線PDA〔掌上電腦〕、組合Modem、GPS導航等需要大運算能力的應用場合。2.4TI浮點DSP芯片2.4.1TMS320C3X TMS320C3X是TI的第三代產品,是第一代浮點DSP芯片。 TMS320C3X:有TMS320C30、TMS320C31和TMS320C32三種。 TMS320C31: 是TMS320C30的簡化和改進型,是一個性能價格比較高的浮點處理器,它在TMS320C30的根底上去掉了一般用戶不常用的一些資源,降低了本錢,在國內已得到了較廣泛的應用。 TMS320C32:是TMS320C31的進一步簡化和改進。表2.5示出了三種芯片的比較。TMS320C30的指令周期為50/60/74ns,TMS320C31的指令周期為33/40/50/60/74ns,TMS320C32的指令周期那么為33/40/50ns。表2.5三種TMS320C3X芯片的比較特征TMS320C30TMS320C31TMS320C32數據/程序總線主總線STRB:32位數據,24位地址擴展總線IOSTRB:32位數據,13位地址STRB:32位數據,24位地址STRB0:8/16/32位STRB1:8/16/32位IOSTRB:32位內部RAM2K字2K字512字串行I/O口2個串行口1個串行口1個串行口用戶程序、數據ROM4K字/16K字節無無DMA控制器單通道單通道雙通道程序和數據存儲器寬度32位32位程序16/32位可選數據8/16/32位可選外部中斷觸發電平觸發電平觸發電平/邊沿可選中斷矢量表地址固定固定用戶可重定位程序引導無用戶可選用戶可選2.4.1.1TMS320C3X的硬件資源TMS320C30的硬件資源: 2K×32位的快速RAM塊。 分開的程序總線、數據總線和DMA總線使得取指、讀寫數據和DMA操作可并行進行,如CPU可以在一個周期內完成以下操作:在一個RAM塊中存取兩個數據值,進行一次外部取指,DMA裝入到另一個RAM塊。 64×32位的指令Cache:用來存儲經常使用的代碼塊,這可大大減少片外訪問的次數,從而提高程序運行速度。 主總線的地址總線是24位:可以訪問多達16M的32位字的存儲器空間,程序、數據和I/O空間都包含在TMS320C30這個16M字的空間中。 一個40/32位的浮點/整數乘法器:可以在單周期內完成24位整數和32位浮點值的乘法,為了到達更高的性能,可以采用并行指令在單周期內完成一次乘法和ALU操作。當乘法器進行浮點乘法時,輸入是32位單精度浮點值,而輸出那么是40位的擴展精度浮點數。整數乘法時,輸入是24位,而輸出那么是32位。 整數/浮點算術邏輯運算單元ALU:可以進行單周期的32位整數、32位邏輯數和40位的浮點數操作,ALU的運算結果是32位整數或40位浮點數。內部的桶形移位器可以在單周期內進行高達32位的左移或右移。內部總線CPU1/CPU2和REG1/REG2可從存儲器中取兩個操作數和從存放器取兩個操作數,這就使得對四個操作數進行乘和加/減可以在單周期內完成。 兩個輔助存放器算術單元〔ARAU0和ARAU1〕: 它們可以在單周期內產生兩個地址。ARAU的操作是和乘法器及ALU的操作并行進行的。ARAU支持多種尋址方式。 28個存放器: 這些存放器可以由乘法器和ALU操作,可以用作通用的存放器。但是,它們也有一些特殊的功能,如8個擴展精度的存放器〔R0~R7〕可當累加器使用,特別適合用于存放擴展精度的浮點結果。8個輔助存放器〔AR0~AR7〕支持一系列間接尋址方式,并且可以用作通用的32位整數和邏輯存放器。其他存放器提供一些系統功能,如尋址、堆棧管理、處理器狀態、中斷和塊重復等。外設: 是通過存儲器映射的存放器對外設總線進行控制的,外設總線由32位數據總線和24位地址總線組成,允許與外設直接通信。兩個可支持8/16/24/32位數據交換的串行口和兩個32位定時器。 串行口的時鐘可以由內部產生也可由外部提供,串行口的引腳可以配置為通用的I/O引腳,特殊的握手方式可保證TMS320C30與串行口的同步。 定時器是通用的32位定時器或事件計數器,具有兩種信號方式,可由內部或外部提供時鐘,每個定時器對應有一個I/O引腳,可作為定時器的輸入時鐘或輸出時鐘,也可配置為通用的I/O引腳。 片內的DMA功能: 使得CPU與I/O操作可同時進行。DMA控制器可以在存儲器的任何地址進行讀寫操作而不干擾CPU的操作,可與外部的慢速存儲器或外設接口而不降低CPU的吞吐量。 兩個通用的外部引腳〔XF0,XF1〕: 可由軟件設置為輸入或輸出,這兩個引腳也用作TMS320C30的互鎖操作,用于多處理器之間的通信。主總線之外,TMS320C30還有一條擴展總線: 擴展總線的數據線為24位,地址線為13位,其操作可與主總線操作同時進行,也可獨立于主總線。擴展總線通常用于I/O操作,如A/D、D/A等。有4K字的ROM: 在微計算機方式下,程序由內部開始運行。TMS320C31: TMS320C30的簡化和改進型,它去掉了擴展總線、一個串行口和內部的4K字ROM,增加了程序的引導功能。TMS320C3X均提供HOLD功能和JTAG仿真功能。2.4.1.2TMS320C3X的軟件資源1.豐富的指令系統TMS320C3X的匯編語言指令集特別適合于數字信號處理:所有指令占一個機器字長,大局部指令是單周器的。六類:數據傳送類、二操作數算術/邏輯類、三操作數算術/邏輯類、程序控制類、互鎖操作類及并行操作類。12條數據傳送指令:可從存儲器中讀一個字裝入存放器,將一個字從存放器中存入存儲器中及進行堆棧操作。二操作數指令:有35條,提供整數、浮點、邏輯運算及多精度算術操作。17條三操作數指令:可以在一個指令周期內完成具有三個操作數的運算,其中兩個是源操作數,另一個是目的操作數。程序控制指令共16條:它們影響程序的流向,其中有塊重復指令RPTB和單指令重復指令RPTS。除了有標準跳轉指令外,還有延遲跳轉指令,有些指令具有條件運算功能。5條互鎖操作指令:主要用來進行多處理器之間的通信。并行操作指令:每條并行指令由兩條指令用符號“||〞連接,并行操作指令可使“||〞前后的兩條指令并行完成。需要注意的是,并不是任意兩條指令都可構成并行指令。2.靈活的程序控制軟件的程序控制:重復、跳轉、調用、陷阱及返回等。重復方式可以實現無開銷循環: 塊重復指令RPTB可以使一塊代碼重復執行指定的次數,而單指令重復指令RPTS使一條指令重復執行指定的次數,由于RPTS取指次數只有一次,因此減少了總線沖突的時機。這里需要特別注意的是,RPTS指令禁止中斷,而RPTB無此禁忌。因此在需要中斷的場合,建議采用RPTB指令代替RPTS指令。兩種類型的跳轉: 標準跳轉和延遲跳轉。標準跳轉首先將流水線清空然后執行跳轉,這可保證程序計數器的正確管理,但卻使跳轉指令需4個周期才能執行完畢。延遲跳轉那么相反,它并不將流水線清空,而是保證在程序跳轉之前執行它下面的3條指令,這樣使得跳轉指令本身僅需1個指令周期。當然有些指令〔如CALL、RPTB等〕不能出現在延遲跳轉指令下面的3條指令。延遲跳轉指令在它下面3條指令完成前禁止中斷。互鎖操作: 可用來實現多個TMS320C3X之間的通信。通過采用外部信號〔XF0,XF1〕,互鎖操作指令提供強有力的同步機制,可用來實現忙等待循環、兩個TMS320C3X之間的同步〔無需額外的硬件支撐〕和多個計數器控制等。3.流水線操作 流水線操作是TMS320C3X具有高性能的特性之一。5個功能單元控制TMS320C3X的操作:取指〔F〕、譯碼〔D〕、讀操作數〔R〕、執行〔E〕和DMA。流水線操作就是一個根本指令的取指、譯碼、讀操作數和執行的并行操作。流水線的結構如圖2.2所示。周期 F D R Em-3 W m-2 X W m-1 Y X W m Z Y X W←完全重疊m+1 Z Y Xm+2 Z Ym+3 Z注:W、X、Y、Z代表指令;F、D、R、E分別代表取指、譯碼、讀操作數和執行。圖中在m周期,流水線完全重疊,4個單元的操作同時進行。5個功能單元的優先級從高到低依次是E、R、D、F、DMA

圖2.2TMS320C3X的流水線結構 所謂的流水線沖突:當一條指令的處理已經準備好到流水線的下一級,但那一級還沒有準備好接收新的輸入時;在這種情況下,低優先級的單元處于等待狀態直到高優先級的單元完成它的當前操作。盡管DMA的優先級最低,但由于DMA控制器具有自己的數據和地址總線,因此,通過適宜的數據結構,DMA與CPU的沖突可以減少甚至消除。 流水線沖突可以分為以下三大類:跳轉沖突、存放器沖突和存儲器沖突。這三類沖突都可以采取相應的一些手段予以解決,如由于標準跳轉引起的跳轉沖突可以采用延遲跳轉的方法來克服。4.尋址方式多樣TMS320C3X支持5類尋址方式,在這些類中又可采用6種尋址類型。5類尋址方式是:①通用尋址方式;②三操作數尋址方式;③并行尋址方式;④長立即數尋址方式;⑤條件跳轉尋址方式。6種尋址類型是:①存放器尋址;②直接尋址;③間接尋址;④短立即數尋址;⑤長立即數尋址;⑥相對尋址。此外,TMS320C30還有兩種數字信號處理中非常有用的尋址方式,一種是圓周尋址方式,主要用于卷積和相關等運算中存儲器循環緩沖;另一種尋址方式是比特反轉尋址,主要用于FFT運算。2.4.2TMS320C4XTMS320C4X系列浮點處理器是專門為實現并行處理和滿足其他一些實時應用的需求而設計的。其主要性能包括275MOPS的驚人速度和320Mbyte/s的吞吐量。2.4.2.1TMS320C40的主要特征具有6個用于處理器間高速通信的通信口。 每個口的最大數據吞吐量可達20Mbyte/s的異步傳輸速率。處理器之間可直接對通,應用方便、靈活;(2)6個DMA通道實現了I/O操作與CPU操作的并行化。 每個DMA通道都具備自初始化的能力,無需CPU來完成初始化的工作,從而最大限度地保證了CPU的性能,數據可以在處理器內存映像的任意范圍內傳遞,具有高度的靈活性; (3)CPU的處理能力達275MOPS,數據吞吐量為320Mbyte/s。由于高度的并行化,TMS320C40的CPU在每個周期內可以完成11次操作。指令周期的時間為40ns和50ns。40/32位的單周期浮點/整數乘法為大運算量的算法提供了高性能。單周期IEEE浮點格式轉換為IEEE兼容的處理器提供了一個有效的界面。 硬件支持除法和平方根倒數運算。具有字節和半字長控制的能力,以實現快速數據壓縮和解壓。源代碼與TMS320C3X兼容,可移植性好。 支持線性、循環和比特反轉的尋址方式。單周期跳轉、調用和返回,以實現快速程序控制。0~31bit的單周期桶形循環左右移位;(4)兩條分開的外部數據、地址總線支持共享存儲器系統和高速數據速率、單周期傳輸。 端口數據傳輸速率高達100Mbyte/s。16G字連續的程序/數據/外設地址空間為系統設計帶來最大的靈活性。狀態管腳標明存儲器訪問類型,以在共享存儲器系統中實現快速、智能化的總線仲裁。別離的地址、數據和控制使能管腳可實現高速總線仲裁。4組存儲器控制信號支持硬件上不同速率的存儲器,使用者可以靈活有效地利用各種高、低速率存儲器; (5)片內分析模塊支持高效的并行處理調試。 為程序、數據和DMA訪問提供了別離的斷點比較器,為快速調試和開發提供了片內硬中斷的能力。為硬件追蹤設置了非連續棧,可方便快速地調試、開發。具有事件計數器。為標準系統連接留有JTAG界面;。(6)片內程序高速緩沖存儲器〔Cache〕和雙向存取/單周期RAM提高了存儲器訪問的性能。 片內存儲器包括:128字的指令高速緩沖存儲器;2K字的單周期雙向存取程序/數據RAM;ROM中的引導程序支持從8/16/32位中的任一種存儲器通過任一通信端口裝入程序;(7)分開的內部程序、數據和DMA總線使程序和數據的I/O操作高度并行化,最大限度地保證了CPU的性能2.4.2.2TMS320C40的結構TMS320C40的高性能是通過其高精度,大容量的片內存儲器,高度的并行化,以及6個DMA協處理器通道表達出來的。1.CPUTMS320C40有一個基于存放器的CPU,其組成局部如下:(1)浮點/整數乘法器 通過高度的并行化措施,TMS320C40可以在一個40ns的指令周期內對32位的整型數或40位的浮點數完成一次乘法操作。假設輸入為40位的浮點數,那么輸出也是40位的浮點數;假設輸入為32位的整型數,那么乘積為64位,輸出既可以是32個高有效位,也可以是32個低有效位。(2)算術邏輯單元〔ALU〕 ALU對32位的整型數、32位的邏輯數、40位的浮點數執行單周期操作,包括單周期的整型和浮點轉換。桶形移位存放器用來完成單周期的32位左右移位。 內部總線CPU1/CPU2和REG1/REG2分別連接存儲器和內部存放器,這樣就允許在單周期內對4個整型或浮點數并行進行加/減和乘法運算。(3)輔助存放器運算單元〔ARAU〕 2個輔助存放器運算單元〔ARAU0和ARAU1〕可在單周期內產生2個地址。ARAU與乘法器及ALU并行操作。它們支持帶有偏移的尋址、變址存放器〔IR0和IR1〕尋址、循環尋址和比特反轉尋址。(4)CPU主存放器組 TMS320C40具有32個主存放器: 其中包括12個40位的擴展精度存放器〔R0~R11〕,8個32位的輔助存放器〔AR0~AR7〕,1個32位的數據頁指針〔DP〕,32位變址存放器〔IR0和IR1〕,32位塊長存放器〔BK〕,32位的系統棧指針〔SP〕,狀態存放器〔ST〕,DMA中斷允許存放器〔DIE〕,CPU內部中斷允許存放器〔IIE〕,I/O標志存放器,32位的重復計數器〔RC〕及32位的重復起始地址存放器〔RS〕和重復終止地址存放器〔RE〕。程序計數器〔PC〕是一個32位存放器,裝有下一條要提取指令的地址。雖然PC不是CPU存放器組的成員,但用修改程序流的指令可對它進行修改。(5) CPU擴展存放器組 擴展存放器組包括2個特殊的指針存放器:IVTP指向中斷矢量表,TVTP指向陷阱矢量表。2.存儲器組織 TMS320C40總的存儲器空間可達4G×32位字。程序存儲器〔片內RAM或ROM和外部存儲器〕、定時器、通信口和DMA通道等都包含在這一空間內。這樣就使得系數、表、程序代碼或數據既可存儲在RAM中,亦可存儲在ROM中,從而使存儲器的利用率到達最高,存儲器空間可按要求分配地址。通過控制一個外部管腳〔ROMEN〕,存儲器起始的1M字節的地址空間〔00000000h到000FFFFFh〕既可以映射到局部地址總線的一局部,也可以在使用裝入程序時指向片內ROM。(1) RAM、ROM和高速緩沖存儲器 TMS320C40的片內包含2個4K字節〔1K×32位〕的RAM區。片內ROM區保存用作引導程序區。每一個RAM和ROM區都支持單周期內兩次存取。分開的程序總線、數據總線和DMA總線,使得指令的讀取、數據的讀寫及DMA操作可以并行進行。例如,在一個周期內CPU可在一個RAM塊上存取2個數據,執行一次外部指令的讀取,同時DMA可對另一個RAM塊作直接存儲器存取。

一個128×32位的指令高速緩沖存儲器用來存儲經常重復的代碼段,從而大大地減少了必要的片外存取次數。這樣就使代碼能存儲在較慢的、價格較低的片外存儲器。外部總線還可被釋放,以供DMA、外部存儲器操作或系統中的其他設備使用。(2)內部總線操作 TMS320C40的高性能在很大程度上歸功于其內部總線結構及由之帶來的并行性。分開的程序總線、數據總線和DMA總線使指令的讀取、數據的存取和DMA操作可以并行進行。這些總線連結C40支持的所有物理空間。 程序計數器〔PC〕與32位的程序地址總線相連,指令存放器〔IR〕與32位的程序數據總線相連,在每一個機器周期內可以讀取一個指令字。 32位的數據地址總線和32位的數據總線在每一個機器周期中支持兩次數據的存儲器操作:數據總線通過CPU1和CPU2總線傳送數據到CPU。CPU1和CPU2總線在每一機器周期可傳送2個數據存儲器操作數到乘法器、ALU及存放器組。在CPU內部還有2條存放器總線REG1和REG2,它們在每一機器周期內,可從存放器組傳送2個數據到乘法器。 DMA控制器由32位地址總線和32位數據總線支持。這些總線使DMA能與數據及程序總線并行地執行存儲器操作。(3)外部總線操作 TMS320C40具有2個外部接口:全局總線和局部總線。它們都包含1個32位的數據總線、1個31位的地址總線和2組控制信號。這些總線都可用來對外部程序/數據存儲器或I/O進行尋址。這些總線還有一個外部信號,用于等待狀態的產生。可在軟件控制下插入附加的等待狀態。(4)外設 TMS320C40的外設是通過存儲器映射存放器,由一專用的外設總線控制。這一外設總線可以直接與外部設備進行通信。TMS320C40的外設包括2個定時器和2個串行口。(5)直接存儲器訪問〔DMA〕 6個通道的片內DMA控制器可以讀寫存儲器中的任意單元,而不必涉及CPU的操作。因此TMS320C40可以與相對較慢的外部存儲器和外設接口而不降低CPU的處理能力。DMA控制器有自己的地址發生器、源地址和目的地址存放器及傳輸計數器。專用的DMA地址和數據總線使CPU與DMA控制器之間的沖突降到了最低的程度。一個DMA操作包括對存儲器做一塊或單個字的存取操作。DMA協處理器的一個關鍵特性就是它的每一個通道在進行一次數據傳輸之前都有自動重新初始化的功能。 總而言之,由于有一個功能強大的CPU、大規模的存儲器以及有足夠寬的總線來支持其速度,TMS320C40是一個功能強大的DSP芯片。3.CPU存放器、存儲器和高速緩沖存儲器 CPU主存放器組包括32個存放器,用來存放乘法器和ALU的操作數。這個存放器組包括輔助存放器、擴展精度存放器和變址存放器等。這些存放器支持尋址、浮點/整型操作、棧操作、處理器狀態記錄、塊重復、分支跳轉和中斷等功能。 CPU擴展存放器組包括中斷矢量表指針〔IVTP〕和陷阱矢量表〔TVTP〕。 TMS320C40能夠訪問的最大存儲器范圍為4G個32位字〔16G字節〕的程序、數據和I/O空間。2個片內RAM塊均為1K×32位。片內ROM塊包含有自引導程序,每塊都支持單周期內2次訪問操作。 1個128×32位的指令高速緩存可以裝入指令代碼中重復率高的局部。高速緩存大大減少了片外操作的次數,這樣就允許將指令代碼存放在片外的低速、廉價的存儲器中而又不降低系統的性能。同時由于高速緩存減少了總線上程序指令的讀取次數,使得在同一物理空間內進行的數據存取速度大大加快。CPU狀態存放器中的3個比特控制著高速緩沖存儲器的去除、允許和凍結。(1) CPU存放器 TMS320C40提供了32個CPU主存放器〔不包括程序計數器PC〕和2個擴展存放器。 主存放器都可以用作32位的通用存放器,存放乘法器及ALU的操作數。除此之外,還有一些更適合于這些存放器的特殊功能。例如12個擴展精度特別適用于存放擴展精度的浮點運算結果;8個輔助存放器支持各種間接尋址方式;其余存放器提供尋址、堆棧管理、處理器狀態、中斷和塊重復等系統功能。(2)存儲器分配 TMS320C40總的存儲器空間為4G字。有兩種地址編排方式,其區別僅在前1M字之內,由外部引腳ROMEN的值控制:ROMEN=1時,00000000h~00000FFFh為一個可訪問的片內ROM區〔保存用作引導程序〕,000001FFh~000FFFFFh保存;ROMEN=0時,片內ROM不在C40的存儲器空間中,00000000h~000FFFFFh被映射到局部總線上。(3)指令高速緩沖存儲器〔Cache〕 128×32位的指令高速緩存不但減少了片外取指的次數,同時也將外部總線從程序取指中解脫出來,從而可以被DMA或其他系統部件所采用。 Cache能以完全自動的方式工作而無需用戶的干預。它使用的是LRU〔Leastrecentlyused,最近最少使用〕算法。4.數據格式與浮點操作 在TMS320C40的體系結構中,數據有3種根本類型:整型、無符號整型和浮點型。 TMS320C40對有符號和無符號整型支持短格式和單精度格式,而對于浮點數那么支持短格式、單精度和擴展精度3種格式。 浮點操作具有迅速、簡單、正確和精度高的特點。特別是TMS320C40可以以整型運算的速度來執行浮點操作,同時還可以防止整型運算中的溢出等問題。5.尋址 TMS320C40有以下5種尋址類型: (1)存放器尋址:在一個CPU的存放器中包含有操作數; (2)直接尋址:數據地址由數據頁指針〔DP〕的16個低有效位和指令字中的16個低有效比特組成; (3)間接尋址:間接尋址是通過一個輔助存放器和變址存放器的內容來操作在存儲器中的地址。地址運算是由輔助存放器運算單元來完成的,并且是無符號的。〔輔助存放器和變址存放器的所有32位都在間接尋址中用到〕; (4)立即尋址:操作數是指令字中的16個低有效位構成的1個16位的立即數; (5) PC相對尋址:PC相對尋址用于分支轉移。它用指令字中的16或24個低有效比特來替換程序計數器〔PC〕的當前值。 TMS320C40的尋址方式包括:通用尋址方式、三操作數尋址方式、并行尋址方式、條件轉移尋址方式、圓周尋址方式和比特反轉尋址方式。2.4.3TMS320C67X這是TI公司繼定點DSP芯片TMS320C62X系列后開發的一種新型浮點DSP芯片。該芯片的內部結構在TMS320C62X的根底上加以改進,內部同樣集成了多個功能單元,可同時執行8條指令,其運算能力可達1GFLOPS。除了具有TMS320C62X系列的特點外,其主要特點還有:(1)運行速度快。指令周期為6ns,峰值運算能力為1336MIPS,對于單精度運算可達1GFLOPS,對于雙精度運算可達250MFLOPS;(2)硬件支持IEEE格式的32比特單精度與64比特雙精度浮點操作;(3)集成了32×32比特的乘法器,其結果可為32或64比特;(4)TMS320C67X的指令集在TMS320C62X的指令集根底上增加了浮點執行能力,可以看作是TMS320C62X指令集的超集。TMS320C62X指令能在TMS320C67X上運行,而無需任何改變。 與TMS320C62X系列芯片一樣,由于其出色的運算能力、高效的指令集、智能外設、大容量的片內存儲器和大范圍的尋址能力,這個系列的芯片適合于對運算能力和存儲量有高要求的應用場合。2.5多處理器DSP芯片TMS320C8XTI公司除了生產定點和浮點兩類DSP芯片之外,還推出了功能強大的多處理器DSP芯片TMS320C80。該芯片內部集成了5個微處理器,處理速度到達每秒20億次操作,與外部交換數據的速度為每秒400Mbyte,特別適合于會議電視等多媒體應用。

1.TMS320C80結構圖2.3所示為TMS320C80的內部結構。 從圖中可以看出,TMS320C80是一個多處理器芯片,它集4個可并行處理的高性能DSP芯片、1個RISC主處理器、1個傳輸控制器、1個視頻控制器和50K字節的SRAM等資源于一體,從而使其處理能力到達每秒20億次操作〔2BOPS〕。該芯片可實時實現新一代的視頻壓縮和解壓縮,可廣泛應用于會議電視、可視、高速電信、多媒體、圖像和視頻處理、二維和三維圖形加速、虛擬現實、保密、雷達和聲納處理等應用場合。2.并行DSP芯片 TMS320C80上集成了4個高性能的DSP芯片,這4個DSP芯片既可獨立運行,也可并行工作。采用64位的指令字,以便于在單個周期內進行多個并行操作。每個處理器具有專用的高速指令緩沖Cache和專用的數據RAM。 每個DSP芯片具有4個主要的功能單元,即1個程序控制器〔PFC〕、1個數據單元和2個地址單元。PFC處理所有的指令執行,包括程序計數器增量、跳轉和中斷。3組無開銷循環控制器跟蹤循環計數和循環的起始及結束地址,而不增加額外的開銷。循環控制器在1個公共的循環結束地址內可支持多至3個嵌套的循環。數據單元可使單周期乘法和算術邏輯單元〔ALU〕數據通路操作并行執行。32位的ALU可以分解為2個16位ALU或4個8位ALU,以便于對低精度的數據進行更多的并行操作。ALU數據通路內獨特的擴展器單元可復制1個1比特值32次、2個1比特值16次或4個8比特數8次以填滿1個32位字。這些特征對于減少圖像算法中的軟件開銷很有幫助。3.傳輸控制器 TMS320C80可以每秒400M字節的速度與外部交換數據,這個性能主要依賴于片內的傳輸控制器。在這里,傳輸控制器起智能DMA控制器的作用,進行對片外存儲器的訪問,使主處理器不增加任何負擔。傳輸控制器可對二維圖形進行線性和二維尋址,支持三維圖形緩沖。 直接存儲器接口提供了對多種存儲器的靈活操作,包括DRAM、SDRAM、VRAM和SRAM。此外,優先級任務管理器支持動態的總線寬度,可支持8至64位數據傳輸。靈活的總線寬度滿足了如會議電視等的寬帶應用,而不需專用的接口。4.RISC主處理器 RISC主處理器〔MP〕進行整個芯片的管理并協調與系統內其他處理器的通信。該處理器是一個32位的RISC處理器,內部具有一個運算能力為100MFLOPS并符合IEEE-754標準的浮點單元〔FPU〕,用以實現高效C語言和作為操作系統的平臺。該處理器主要是適應高級語言并協調片內的多處理器資源,可在單周期內完成1個64位數據的訪問和1個32位取指。與根本的RISC設計相比,其獨特之處在于MP具有完整的浮點指令和一組特殊的矢量浮點指令,這些功能對于圖像處理和三維圖形來說都是必需的。此外,MP還具有31個32位的存放器,為整數和浮點操作提供了極大的便利。5.存儲器Crossbar結構TMS320C80的一個重要特征是存儲器Crossbar結構。TMS320C80內部有50K字節的SRAM,這些存儲器被配置為較小的存儲器塊以便于通過這個獨特的Crossbar開關結構實現多個并行的存儲器訪問。Crossbar開關還便于片內處理器共享板上RAM。在TMS320C80中,Crossbar在每個時鐘周期內可進行5次取指和10次并行數據訪問,從而使傳輸速率到達每秒4.2G字節。硬件控制的優先級機制使得在同一個周期內僅有一個處理器訪問一個特定的RAM。存儲器Crossbar結構增強了系統的高速并行性能。6.視頻控制器 視頻控制器具有2個可編程的幀定時器,可按水平或縱向格式同時捕獲和顯示圖像。幀定時器可用于任何捕獲/顯示的組合中,對不同速率的圖像捕獲可按異步或同步方式工作。由于幀定時器是軟件可編程的,故可用作通用定時器。 在TMS320C80根底上,TI公司還推出了簡化型的多處理器芯片TMS320C82,其內部包含2個處理器、44K字節的SRAM,性能為每秒15億次操作,由于省略了2個處理器和視頻控制器,其價格約為TMS320C80的一半。表2.6所示為兩者的性能比較。表2.6TMS320C80/C82的主要性能比較芯片DSP數RISC主處理器視頻控制器傳輸控制器指令周期(ns)尋址空間(字節)片內RAM(字節)處理能力(BOPS)時鐘(MHz)C80411120,254G50K250,40C822101204G44K1.2502.6其他DSP芯片簡介2.6.1AD公司DSP芯片美國AD公司在DSP芯片市場上也占有一定的份額。與TI公司相比,AD公司的DSP芯片有自己的特點,如系統時鐘一般不經分頻直接使用,串行口帶有硬件壓擴,可從8位EPROM引導程序,可編程等待狀態發生器等。AD公司的DSP芯片可以分為定點DSP芯片和浮點DSP芯片兩大類。ADSP21XX系列為定點DSP芯片,ADSP21XXX系列為浮點DSP芯片。目前,定點DSP芯片主要有ADSP2101/2103/2105,ASDP2111/2115,ADSP2161/2162/2163/2164/2165/2166以及ADSP2171/2173/2181等。浮點DSP芯片主要有ADSP21000/21020,ADSP21060/21062等。AD公司的定點DSP芯片的程序字長為24位,數據字長為16位。運算速度較快,內部具有較為豐富的硬件資源,一般具有2個串行口、1個內部定時器和3個以上的外部中斷源,此外還提供8位EPROM程序引導方式。具有一套高效的指令集,如無開銷循環、多功能指令、條件執行等。ADSP2101的指令周期有80ns、60ns和50ns三種,內部有2K字的程序RAM和1K字的數據RAM。ADSP2103與ADSP2101相比,指令周期為100ns,工作電壓為3.3V。ADSP2105是ADSP2101的簡化,指令周期為72ns,內部的程序RAM為1K字,數據RAM為512字,串行口減為1個。ADSP216X系列的指令周期為50ns~100ns,與其他定點芯片相比,具有較大的內部程序ROM,如ADSP2161/2163內部提供了8K的程序ROM,ADSP2162/2164內部提供4K程序ROM,工作電壓為3.3V,這些芯片的內部數據RAM均為512字。而ADSP2165/2166除了具有1K字的程序ROM外,還提供了12K字的程序RAM和4K字的數據RAM,其中,ADSP2166的工作電壓為3.3V。ADSP2171的指令周期為30ns,速度達33.3MIPS,是AD公司DSP芯片中運算速度最快的定點芯片之一。內部具有2K字的程序RAM和2K字的數據

溫馨提示

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

評論

0/150

提交評論