摘 要:介紹一種能與DSP速度相匹配的外擴高速存儲器的設(shè)計,外擴存儲器按地址分為2個模塊:一個是SRAM模塊,另外一個是FLASH模塊,一個作為數(shù)據(jù)存儲器,另一個作為地址存儲器。采用IS61LV25616作為SRAM,這種存儲芯片的存取時間快且功耗低,非常適合與高速的DSP 配合使用;FLASH采用的是三星公司生產(chǎn)的存儲器K9F1G08。各個模塊從元器件的選擇、硬件實現(xiàn)方面介紹了存儲器的實現(xiàn)過程。在FLASH模塊中還介紹了K9F1G08寫操作流程,并簡單描述了DSP的在線編程方法。該系統(tǒng)在現(xiàn)場實時采集系統(tǒng)中發(fā)揮了重要的作用,給后續(xù)數(shù)據(jù)的分析提供了寶貴的數(shù)據(jù)材料。
關(guān)鍵詞:SRAM;外擴存儲器;FLASH 高速;DSP
中圖分類號:TN707文獻標識碼:B
文章編號:1004-373X(2008)24-004-03
Design of High Speed Ex-patulous Memory of DSP
YAN Xiaoyan,ZHANG Hongliang
(Key Laboratory of Instrumentation Science Dynamic Measurement,Ministry of Education,Electronics and Computer Science
Technology College,North University of China,Taiyuan,030051,China)
Abstract:The design of high speed ex-patulous memory of DSP is introduced in the paper.The choice and analysis of parts of an apparatus are recommended.In the paper,the SRAM is used as data memory,the FLASH is used as address memory,and in the module of FLASH,the collectivity scheme of design and scheduling of K9F1G08 and the on-line programme is described in a nutshell.Then the system has been used and participated in many tests.Through these tests,the data is provided well and truly for the task.
Keywords:SRAM;ex-patulous memory;FLASH;DSP
隨著新軍事革命在全球范圍的形成與發(fā)展,人們已漸漸意識到這場深刻變革的核心就是信息化。為適應(yīng)這種變化的一個明顯趨勢就是數(shù)字化戰(zhàn)場概念的形成與發(fā)展。數(shù)字化戰(zhàn)場是以實時信息收集網(wǎng)絡(luò)為基礎(chǔ),而實時信息的收集一部分要依賴于存儲器的速度。對于DSP外擴存儲器,主要考慮的是存儲器的速度。目前大多數(shù)存儲器相對DSP而言是慢速器件,因此通常需要加入等待周期。這樣就降低了DSP的存取速度,也就是說信息的實時性會受到影響。文中設(shè)計的外擴存儲器能從速度上與高速DSP相匹配。
1 概 述
DSP是一種實時、快速、特別適合于實現(xiàn)各種數(shù)字信號處理運算的微處理器。由于它由具有豐富的硬件資源、改進的哈佛結(jié)構(gòu)、高速數(shù)據(jù)處理能力和強大的指令系統(tǒng),而在通信、航空、航天、雷達、工業(yè)控制、網(wǎng)絡(luò)及家用電器等各個領(lǐng)域得到廣泛應(yīng)用。DSP分為定點和浮點兩種,在此選用TI(Texas Instrument)公司的TMS320VC33,它是一款較新的浮點型數(shù)字信號處理器,采用高達120/150 MHz的主頻(通過內(nèi)部×5倍頻實現(xiàn)),有120/150 MFLOPS(百萬條浮點數(shù)操作指令)的峰值運算能力,片內(nèi)1 Mb RAM,程序代碼與先前的C3X完全兼容,采用3.3 V I/O電壓和1.8 V處理器核電壓使功耗降低到200 mW。
從TMS320VC33的存儲器映射圖中,我們可以看出在DSP內(nèi)部RAM共有3塊:RAM塊0、RAM塊1和RAM塊2。其中連續(xù)的內(nèi)存空間地址為:0X800000~0X807FFF,共為32 kWord,可見片內(nèi)內(nèi)存較緊張。這里可以采用外擴存儲器的辦法解決片內(nèi)內(nèi)存不足的缺陷。
TMS320VC33的尋址空間為0X0000000~0FFFFFF,共為16 MB,其中可擴展外部空間為0X001000~0X7FFFFF和0X80A000~0XFFF000。由于FLASH引導存儲空間分配在0X400000~0X7FFFFF,系統(tǒng)中DSP對外擴存儲器分配的2個外部地址為:
SRAM模塊地址:0X010000~0X04FFFF;
FLASHROM模塊地址:0X400000~0X4FFFFF。
這就完成了DSP到各個存儲空間的映射,即將數(shù)據(jù)空間0X010000~0X4FFFF映射到SRAM的0X00000~0X3FFFF,將地址空間0X400000~0X4FFFFF映射到FLASH的0X00000~0XFFFFF。
這些地址是由DSP的地址線A16~A23進行譯碼的。這樣,有些地址空間沒有用到,例如0X001000~0X00FFFF,但對系統(tǒng)設(shè)計而言存儲空間已經(jīng)足夠。
2 SRAM模塊
本系統(tǒng)采用TMS320VC33,既可以將SRAM作為程序存儲器,也可以用作數(shù)據(jù)存儲器。用FLASHROM存放程序,在系統(tǒng)運行時,為提高運行速度,需將程序從FLASH搬至快速SRAM中運行,此時SRAM地址映射在程序空間中;而當系統(tǒng)的數(shù)據(jù)存儲空間超過內(nèi)部RAM時,SRAM地址映射在數(shù)據(jù)空間中。
這里采用IS61LV25616作為SRAM,這種存儲芯片的存取時間為15 ns,COMS 工藝,3.3 V供電,輸入/輸出兼容TTL電平,且具有低功耗的優(yōu)良特點,非常適合與高速的DSP 配合使用。容量為256 k×16 b,兩片IS61LV25616即可構(gòu)成256 kB靜態(tài)RAM空間。圖1為2片IS61LV25616作為數(shù)據(jù)存儲器的接口方法。
圖1中,兩片IS61LV25616構(gòu)成256 k×32 b的數(shù)據(jù)存儲器。地址譯碼、片選和讀寫邏輯由CPLD 完成。SRAM分成程序和數(shù)據(jù)2部分。具體是數(shù)據(jù)空間0X010000~0X4FFFF映射到SRAM的0X00000~0X3FFFF。
3 FLASH ROM模塊
在高速DSP應(yīng)用系統(tǒng)中,為了充分發(fā)揮DSP性能,在加電后需要將用戶代碼裝載到高速RAM存儲器中運行。FLASH存儲器是一種高密度、非易失性的電可擦寫存儲器,存儲量大,使用方便,適用于低功耗、高性能的系統(tǒng)。本系統(tǒng)使用的是三星公司生產(chǎn)的FLASH存儲器K9F1G08。它是具有超大容量的FLASH存儲器,其中1片的存儲容量就達到了128 MB(1 Gb),由1 024個塊組成,每塊又由64個頁組成,一頁有(124+4)kB,該片的8位I/O總線是命令、地址、數(shù)據(jù)復(fù)用的。讀寫操作均以頁為單位,擦除操作則以塊為單位.
K9F1G08不需要后備電池,數(shù)據(jù)永遠不會丟失,而且可以在線編程、集成度高、使用方便。這種FLASH的讀寫速度與SRAM相差無幾,并且它的內(nèi)部開辟了一定容量的高速緩沖區(qū),將FLASH分成了若干個扇區(qū),對于這種扇區(qū)連續(xù)寫入的周期可達50 ns。邏輯控制用1片XILINX公司的FPGA-XC2S50,它擁有1 728個邏輯宏單元,176個用戶I/O口,而且供電電源是3.3 V和2.5 V,屬于低功耗集成芯片。
設(shè)計FLASH與DSP 的接口時,主要考慮以下幾點:
(1) 采用DSP的外部16位BOOT 方式;
(2) 通過DSP的仿真系統(tǒng)能夠?qū)⒊绦蚝蛿?shù)據(jù)寫入到Flash 中;
(3) 系統(tǒng)獨立運行時,能夠從FLASH中讀出程序裝入到內(nèi)部RAM中;
(4) 接口盡量簡單。
根據(jù)以上幾點所設(shè)計的FLASH接口如圖2所示。
FLASH的數(shù)據(jù)線和地址線分別和DSP的外部數(shù)據(jù)和地址總線相連,F(xiàn)LASH的控制信號分別接由CPLD譯碼產(chǎn)生的信號。接譯碼后的選通信號,在這個系統(tǒng)中,將FLASH映射到存儲空間的400000H~43FFFF地址段,以實現(xiàn)程序的引導。
FLASH支持軟件數(shù)據(jù)保護功能(Software Data Protection),當執(zhí)行3字節(jié)DSP寫指令時,保護功能將自動加上,任何后續(xù)的寫操作必須帶上3字節(jié)DSP寫指令。
由于FLASH分成相同的塊,每個塊又有相同的頁區(qū)(每頁128 kB)。寫入數(shù)據(jù)時,首先判斷第一塊是否是無效塊,是無效塊的話直接跳到下一塊,不是無效塊的時候,進行塊擦除,然后一個頁區(qū)一個頁區(qū)依次往下寫,直到一塊寫完以后,跳到下一塊,直到1 024個塊寫完,依次類推,實現(xiàn)高速連續(xù)寫入FLASH存儲器的功能。
FLASH頁面寫操作流程如圖3所示。
TMS320VC33的調(diào)試使用CC for C3x/4X(Code COmposer)集成編程環(huán)境,通過JTAG頭仿真用戶板,用戶代碼先放在外部RAM中調(diào)試,調(diào)試成功后,就可以將用戶程序代碼寫入FLASH。對TMS320VC33用戶系統(tǒng)外部FLASH使用在線編程,省去HEX轉(zhuǎn)換工具及EPROM編程器等工具,方便、易行。下面介紹在并行裝入BOOT2方式下的在線編程方法:
第一步:在CC下編譯后,裝入用戶.OUT文件,用戶程序代碼即被寫入EXRAM空間;
第二步:依據(jù)TMS320VC33的BOOT格式,并根據(jù)CC產(chǎn)生的用戶.MAP文件找出程序入口地址、各加載塊的入口地址以及長度,編寫FLASH燒寫文件;
第三步:修改.CMD文件SECTION段,將燒寫程序鏈接到內(nèi)部RAM區(qū);
第四步:運行燒寫程序,用戶代碼即被寫入FLASH中。復(fù)位DSP,利用CCS可以查看FLASH存儲器內(nèi)容是否與要燒寫的內(nèi)部一致,并脫機檢驗。
4 結(jié) 語
運用DSP外擴存儲器來實現(xiàn)高速存儲,在現(xiàn)場實時采集系統(tǒng)中發(fā)揮了重要的作用,給后續(xù)數(shù)據(jù)的分析提供了寶貴的數(shù)據(jù)材料。
參考文獻
[1]張雄偉,陳亮,徐光輝.DSP 芯片的原理與開發(fā)應(yīng)用[M].3版.北京: 電子工業(yè)出版社,2004.
[2]王超,張桂林,杜崢.TMS320VC33 DSP用戶程序加載方法.計算機與數(shù)學工程,2003,3(4):26-30.
[3]黎明也.DSP系統(tǒng)應(yīng)用中FLASH在線編程方法.電子技術(shù)應(yīng)用,2005,31(3):64-66,69.
[4]遲男,陸俊.TMS320C32浮點DSP存儲器接口設(shè)計.電子技術(shù)應(yīng)用,2000,26(11):70-72.
[5]向展,裴昌幸,易運暉.使用I2C總線實現(xiàn)TMS320VC5509A引導裝載設(shè)計.現(xiàn)代電子技術(shù),2006,29(18):80-82,85.
[6]張曉紅,韓瑩,楊雷,等.基于DSP的無刷直流電機舵機位置伺服系統(tǒng).現(xiàn)代電子技術(shù),2007,30(9):122-123,126.
作者簡介 閆曉燕 女,1977年出生,山西交城人。研究方向為測試計量技術(shù)及儀器。