资源描述:
《dsp2数据存储器和程序存储器实验》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、数据存储器和程序存储器实验电子073高******27一、实验目的了解DSP内部数据存储器和程序存储器的结构。了解DSP指令的几种寻址方式。二、实验要求主要是对外扩数据存储器和程序存储器金星数据的存储和移动。该实验所需要的硬件主要是DSP、CPLD和DRAM。实验过程是:让学生通过CCSC5000的DSP仿真器对DSP进行仿真、向DSP外扩DRAM写入数据、读数据、数据块的移动,其操作结果通过CCSC5000仿真器界面进行观察或通过发光二极管观察其正确性。三、实验程序.title"ex2".glo
2、balreset,_main.mmregs.def_mainDAT0.set00HDAT1.set01HDAT2.set02HDAT3.set03HDDAT0.set2004HDDAT1.set2005HDDAT2.set2006HDDAT3.set2007HPDAT0.set1f00HPDAT1.set1f01HPDAT2.set1f02HPDAT3.set1f03H.sect".vectors";中断向量表reset:B_main;复位向量NOPNOP.space4*126circle.use
3、ct"circle",4.bssy,8.datatable.word1,2,3,4.textDELAY.macroCOUNT5STMCOUNT,BRCRPTBdelay?NOPNOPNOPNOPdelay?:NOP.endm_main:LD#40h,DP;置数据页为2000h~207FhSTM#3000h,SP;置堆栈指针SSBXINTM;禁止中断STM#07FFFh,SWWSR;置外部等待时间bk0:SSBXXF;置XF以实现二极管闪烁D3(EXPIII+)DELAY#0FFFFhRSBXXFD
4、ELAY#0FFFFhSSBXXFDELAY#0FFFFh;Bbk0bk1:ST#1234h,DAT0;立即数寻址,D(2000H)=1234H,ST#5678h,*(DDAT1);D(2005H)=5678HNOPNOPNOPbk2:MVDKDAT0,DDAT0;绝对地址(dmad)寻址MVKDDDAT1,DAT1;D(2004H)=D(2004H)=1234HNOP;D(2005H)=D(2001H)=5678HNOPNOPbk3:MVDPDAT0,PDAT0;绝对地址(pmad)寻址MVDP
5、DAT1,PDAT1;D(1f00H)=D(2000H)=1234HNOP;D(1f00H)=D(2001H)=5678HNOPNOPbk4:LD#PDAT1,A;累加器寻址A=1f01HREADADAT2;D(1f01H)=D(2002H)=5678HNOP5NOPNOPbk5:ST#3210h,DAT3;直接寻址(DP指针);D(2003H)=3210HNOPNOPNOPbk6:SSBXCPL;置位CPL=1NOPNOPNOPST#9876h,DAT3;直接寻址(SP指针)NOPNOPNOPR
6、SBXCPL;复位CPL=0NOPNOPNOPbk7:STM#DDAT3,AR0;间接寻址ST#9876h,*AR0;AR0=2007HNOP;D(2007H)=9876HNOPNOPbk8:STM#8888h,T;存储器映射寄存器寻址T=8888HNOPNOPNOPbk9:PSHMT;堆栈寻址POPMTNOPNOPNOPbk10:NOPSTM1000h,ar1;设置访问数据空间的地址,AR1寄存器间接寻址RPT#07h;下面的指令重复执行0x07h+1次ST0aaaah,*ar1+;将数据"0A
7、AAAH"存放到以地址1000H~1007H的八个存储单元中NOP;---------------------------------------------------------------5STM7h,ar3;AR3=0x07hSTM1000h,ar1;设置访问数据空间的地址,AR1寄存器间接寻址STM1008h,ar2;设置访问数据空间的地址,AR2寄存器间接寻址loop:;循环的将1000H~1007H的八个单元中的数据复制到1008H~100F的;八个存储单元中,用T寄存器暂存LD*a
8、r1+,t;*AR1-->T,AR1=AR1+1STt,*ar2+;T-->*AR2,AR2=AR2+1BANZloop,*ar3-;AR3=AR3-1,AR3=0?NOPbk11:STM#1,AR0STM#table,AR4STM#circle,AR2STM#4,BKSTM#y,AR3RPT#3MVDD*AR4+,*AR2+0%;间接寻址(双操作数寻址、循环寻址)RPT#7MVDD*AR2+0%,*AR3+;间接寻址(双操作数寻址、循环寻址)bk12:STM#8,AR0;程序存储