⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 module.asm

📁 通过visual DSP
💻 ASM
字号:
#include "def21161.h"
#include "asm_sprt.h"
#define N 2048

//.SEGMENT/DM             dm_data; 
//.VAR    redata[N]= "refft.dat"; /* input real array */
//.GLOBAL redata;
//.ENDSEG;

//.SEGMENT/PM             pm_data; 
//.VAR    imdata[N]= "imfft.dat"; /* input image array */
//.VAR result;
//.global result;
//.GLOBAL imdata;
//.ENDSEG;

.SEGMENT/PM             seg_pmco;
.GLOBAL _module;
.extern _result;


//.SEGMENT/PM             pm_rsti; /* program starts at the reset vector */
//	call module;
//stop:   idle;
//.ENDSEG;

//.section/pm modu;
//.global module;

//.SEGMENT/PM             pm_code;
/*_______________________________begin module__________________________________*/

_module:
     //  leaf_entry;
       i2=r4;m1=1;m0=0;
       i9=r8;m9=1;m10=0;
       i8=_result;m8=1;          		//结果放PM区,以便指令并行操作 
       f2 =dm(i2,m0);
       f3=pm(i9,m10); 
	   f6 =dm(i2,m1),f7=pm(i9,m9);
	   f13=f2*f6;	
       f11=3.0;f1=0.5;	   
	   l0=0;l8=0;l15=0;
	   lcntr=N-1,do loopz until lce;
	    f8=f3*f7,f13=f8+f13;//f13存平方和
	    f2=dm(i2,0);
	    f3=pm(i9,m10);
	    f4=rsqrts f13;   
             f12=f4*f4;
             f12=f12*f13;
             f4=f1*f4,f12=f11-f12;
             f4=f4*f12;                  //第一次迭代,相对误差为10-5
             f12=f4*f4;
             f12=f12*f13;
             f4=f1*f4,f12=f11-f12;
             f4=f4*f12;                  //第二次迭代,相对误差为10-7
             f12=f4*f4;
             f12=f12*f13;
             f4=f1*f4,f12=f11-f12;
             f4=f4*f12;						//第三次迭代,相对误差为10-7
             f4=f4*f13,  
             f6=dm(i2,m1),f7=pm(i9,m9);
loopz:   f13=f2*f6, pm(i8,m8)=f4;
        f8=f3*f7,f13=f8+f13;
        f4=rsqrts f13;
        f4=f4*f13;
        pm(i8,m8)=f4;
exit;        
//rts;   
.ENDSEG;     
        
//leaf_exit;

//module.END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -