DSP实验报告
电子111班 刘卓 112099
同组人:张顺 112108
指令实验
一、实验目的
1、了解DSP的结构及引脚功能; 2、掌握DSP的基本指令。 二、实验要求
了解怎样对DSP进行简单的编程操作、运算控制等基本汇编语言及算术语言、实验测试及除错验证。 三、实验步骤 见教材342页。 四、实验结果 1、直观结果
.title \ .mmregs
.def _c_int00 DAT0 .SET 60H DAT1 .SET 61H
DAT2 .SET 62H DAT3 .SET 63H .text
ADD3 .MACRO P1,P2,P3,ADDRP LD P1,A ADD P2,A ADD P3,A STL A,ADDRP .ENDM _c_int00:B start
start: LD #004h,DP ;DP=0004,ST0=1804 STM #1000h,SP ;SP=1000 SSBX INTM ;INTM=1
bk0: ST #0012h,DAT0 ;D(0x0260)=0x0012 LD #0023h,A ;A=0000000023 ADD DAT0,A ;A=0000000035,ST0=1004,C=0 NOP NOP
bk1: ST #0054h,DAT0 ;D(0x0260)= 0x0054 LD #0002h,A ;A=0000000002 SUB DAT0,A ;A=FFFFFFFFAE NOP NOP
bk2: ST #0345h,DAT0 ;D(0x0260)=0x0345 STM #0002h,T ;T=0002
MPY DAT0,A ;A=000000068A NOP NOP
bk3: ST #1000h,DAT0 ;D(0x0260)=0x1000 ST #0041h,DAT1 ;D(0x0261)=0x0041 RSBX SXM ;ST1=2800,SXM=0 LD DAT0,A ;A=0000001000 RPT #15
SUBC DAT1,A ;A=000001003F,C=1 STL A,DAT2 ;D(0x0262)=0x003F STH A,DAT3 ;D(0x0263)=0x0001 NOP NOP
bk4: ST #0333h,DAT0 ;D(0x0260)=0x0333 SQUR DAT0,A ;A=00000A3C29 NOP NOP
bk5: ST #0034h,DAT0 ;D(0x0260)=0x0034 ST #0243h,DAT1 ;D(0x0261)=0x0243 ST #1230h,DAT2 ;D(0x0262)=0x1230
ADD3 DAT0,DAT1,DAT2,DAT3 ;D(0x0263)=0x14A7 ,A=00000014A7,C=0
NOP NOP
bk6: B bk0 ;循环执行 .end 2、非直观结果 .title \ .mmregs
.def _c_int00 DAT0 .SET 60H DAT1 .SET 61H DAT2 .SET 62H DAT3 .SET 63H .text
ADD3 .MACRO P1,P2,P3,ADDRP LD P1,A ADD P2,A ADD P3,A STL A,ADDRP .ENDM _c_int00:B start
start: LD #004h,DP ;DP=4h STM #1000h,SP ;SP=1000h SSBX INTM ;INTM=1
bk0: ST #0012h,DAT0 LD #0023h,A ADD DAT0,A ;加法操作:12h和23h相加结果赋给A,A=35h NOP NOP
bk1: ST #0054h,DAT0 LD #0002h,A SUB DAT0,A ;减法操作:02h和54h相减结果赋给A,A=FAEh NOP NOP
bk2: ST #0345h,DAT0 STM #0002h,T MPY DAT0,A ;乘法操作:345h和02h相乘结果赋给A,A=68Ah NOP NOP
bk3: ST #1000h,DAT0 ST #0041h,DAT1 RSBX SXM LD DAT0,A RPT #15
SUBC DAT1,A STL A,DAT2 ;除法操作:1000h和41h相除,商赋给DAT2,余数赋给DAT3 STH A,DAT3 ;D(0262)=3Fh,D(0263)=01h NOP NOP
bk4: ST #0333h,DAT0
SQUR DAT0,A ;平方操作:333h进行平方操作结果赋给A,A=0A3C29h NOP NOP
bk5: ST #0034h,DAT0 ST #0243h,DAT1
ST #1230h,DAT2
ADD3 DAT0,DAT1,DAT2,DAT3 ;三数相加操作:34h、243h和1230h三个数 相加结果赋给DAT3,D(0263)=14A7h
NOP NOP
bk6: B bk0 ;循环执行 .end 五、思考题
无命令文件,链接器对存储器模型及输出段的配置是怎么处理的? 答:链接器对存储器模型及输出段的配置采用默认算法进行处理。
存储器试验
一、实验目的
1、了解DSP内部数据存储器和程序存储器的结构; 2、了解DSP指令的几种寻址方式。 二、实验要求
通过CCSC5000的DSP仿真器对DSP进行仿真,向DSP外扩DRAM写入数据、读数据、数据块的移动,其操作结果通过CCSC5000仿真界面进行观察。 三、实验步骤 见教材344页。 四、实验结果 1、直观结果 .title \ .global reset .mmregs
.def _c_int00 DAT0 .set 00H DAT1 .set 01H DAT2 .set 02H DAT3 .set 03H DDAT0 .set 2004H DDAT1 .set 2005H DDAT2 .set 2006H DDAT3 .set 2007H PDAT0 .set 1f00H PDAT1 .set 1f01H PDAT2 .set 1f02H PDAT3 .set 1f03H
.sect \reset: B _c_int00 NOP NOP
.space 4*126 circle .usect \ .bss y,8 .data
table .word 1,2,3,4
.text
DELAY .macro COUNT STM COUNT,BRC RPTB delay? NOP NOP NOP NOP delay?: NOP