资源描述:
《tmsfxx dsp中flash的应用研究(research on the application of flash in tmsfxx dsp)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、tms320f28xxdsp中flash的应用研究(Researchontheapplicationofflashintms320f28xxDSP)ApplicationofFlashTMS320F28xxinDSP2008-07-05internal22:22:54
2、classification:professionalknowledge
3、Tags:
4、fontinSmallsubscription1PrefaceTMS320F28xxDSPinthe128K*16bitwordFlashandtwopiecesof4
5、Kx16bitwordsinglecycleaccessRAM(SARAM)LOsinglecycleaccessandL1,a8Kxl6bitwordRAM(SARAM)singlecycleaccessHOandtwopiecesof1Kxl6bitwordRAM(SARAM)andM0M1.Becauseofthevarietyofmemoryandlargecapacity,itisnecessarytoconfigureeachmemoryfromthesystemheight,whichisusuallyr
6、elatedtotheon-chipFlash.Inaddition,TMS320F28xxDSPchipwatchdogtimermodule(WDT),ROM(ROMbootloader)module,codesecuritymodule(CSM),tomakereasonableuseofthesemodulesfortheentiresystemservice,alsomustuseFlashmust.FromthiswecanseethatthepositionandfunctionofFlasharequi
7、teobvious,sothispaperstudiesseveralusagesofFlash.2fromtheFlashcopysectiontotheRAM2.1copyinterruptvectorInTMS320F28xxdevices,theperipheralextendedinterrupt(PIE)modulemanagesinterruptrequests.Onpowerup,allinterruptvectorsmustbelocatedinnon-volatilememory(suchasFla
8、sh),butcopytheinterruptvectorintothePIEVECTRAM,whichispartofthedeviceinitializationprogramintheusercode.PIEVECTRAMisaspecificRAMblock,whichisa256*16blockinthecurrentTMS320F28xxdevice.ThestartingaddressinthedataspaceisOx000D00.ConnecttheinterruptvectortotheFlash,
9、andthencopytheinterruptvectortothePIEVECTRAMatruntime.Therearemanywaystoimplementit.OnewayistocreateaconstantCstructurethatcontainsfunctionpointers,whichconsistof12832-bitvectors.IfyouusethestructureofDSP281xorDSP280xperipherals,thisstructureiscalledPieVectTable
10、Init,whichhasbeencreatedinDSP281x_PieVect.corDSP280x_PieVect.c(seetheroutinesprovidedbyTI).Becausethisstructureusestheconsttypekeyword,itwillbeplacedinthe.Econstsectionbythecompiler.TheruntimesimplycopiesthestructureintothePIEVECTRAM.TheCcompilerruntimesupportli
11、brarycontainsamemorycopyfunctionnamedmemcpy,whichcanbeusedtoperformcopytasks,asfollows:#includeVoid,main(){//Initializethepie_ramPieCtrlRegs.PIECTRL.bit.ENP