亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? cache.c

?? 此例程是基于ARMS3C44B0的經典例程 對于嵌入式開發而言很有用 需要硬件平臺
?? C
字號:
#include <string.h>
#include "..\common\44b.h"
#include "..\common\44blib.h"

void MarchCMinus32(int address,int unit,unsigned int pattern);
void MarchCMinusM_10(int address,int unit,unsigned int pattern,unsigned int mask);
void _MarchSub1(unsigned int *pt,int unit,unsigned int pattern,int incdec);
void _MarchSub1_10(unsigned int *pt,int unit,unsigned int pattern,int incdec,unsigned int mask);
int marchError;

void FlushCache(void)			   
{					   
    int i,saveSyscfg;
    
    saveSyscfg=rSYSCFG;

    rSYSCFG=SYSCFG_0KB; 		      
    for(i=0x10002000;i<0x10004800;i+=16)    
    {					   
		*((int *)i)=0x0;		   
    }
				  
    rSYSCFG=saveSyscfg; 			    
}					   

int Test_Cache(void)
{
    int saveSyscfg;
    Uart_Printf("Cache(Internal RAM) Cell Test by March C-\n");
	
    saveSyscfg=rSYSCFG;
    marchError=0;

    //00->01->11<->10

    rSYSCFG=SYSCFG_0KB;  //WB_off,Cache_off,I_RAM 8KB,stall disable
    //set0=0x10000000~0x100007ff	      
    //set1=0x10000800~0x10000fff	      
    //set2=0x10001000~0x100017ff	      
    //set3=0x10001800~0x10001fff	      
    
    MarchCMinus32(0x10000000,511,0x00000000); 
    MarchCMinus32(0x10000000,511,0x0f0f0f0f);
    MarchCMinus32(0x10000000,511,0x33333333);
    MarchCMinus32(0x10000000,511,0x55555555);
    MarchCMinus32(0x10000000,511,0xaaaaaaaa);
    Uart_Printf("Set0 is tested!\n");

    MarchCMinus32(0x10000800,511,0x00000000);
    MarchCMinus32(0x10000800,511,0x0f0f0f0f);
    MarchCMinus32(0x10000800,511,0x33333333);
    MarchCMinus32(0x10000800,511,0x55555555);
    MarchCMinus32(0x10000800,511,0xaaaaaaaa);
    Uart_Printf("Set1 is tested!\n");
	
    MarchCMinus32(0x10001000,511,0x00000000);
    MarchCMinus32(0x10001000,511,0x0f0f0f0f);
    MarchCMinus32(0x10001000,511,0x33333333);
    MarchCMinus32(0x10001000,511,0x55555555);
    MarchCMinus32(0x10001000,511,0xaaaaaaaa);
    Uart_Printf("Set2 is tested!\n");

    MarchCMinus32(0x10001800,511,0x00000000);
    MarchCMinus32(0x10001800,511,0x0f0f0f0f);
    MarchCMinus32(0x10001800,511,0x33333333);
    MarchCMinus32(0x10001800,511,0x55555555);
    MarchCMinus32(0x10001800,511,0xaaaaaaaa);
    Uart_Printf("Set3 is tested!\n");
	
    MarchCMinusM_10(0x10002000,127,0x00000000,0x1ffff);
    MarchCMinusM_10(0x10002000,127,0x0000ffff,0x1ffff);
    MarchCMinusM_10(0x10002000,127,0x00ff00ff,0x1ffff);
    MarchCMinusM_10(0x10002000,127,0x0f0f0f0f,0x1ffff);
    MarchCMinusM_10(0x10002000,127,0x33333333,0x1ffff);
    MarchCMinusM_10(0x10002000,127,0x55555555,0x1ffff);
    Uart_Printf("TagRAM0 is tested!\n");

    MarchCMinusM_10(0x10002800,127,0x00000000,0x1ffff);
    MarchCMinusM_10(0x10002800,127,0x0000ffff,0x1ffff);
    MarchCMinusM_10(0x10002800,127,0x00ff00ff,0x1ffff);
    MarchCMinusM_10(0x10002800,127,0x0f0f0f0f,0x1ffff);
    MarchCMinusM_10(0x10002800,127,0x33333333,0x1ffff);
    MarchCMinusM_10(0x10002800,127,0x55555555,0x1ffff);
    Uart_Printf("TagRAM1 is tested!\n");

    MarchCMinusM_10(0x10003000,127,0x00000000,0x1ffff);
    MarchCMinusM_10(0x10003000,127,0x0000ffff,0x1ffff);
    MarchCMinusM_10(0x10003000,127,0x00ff00ff,0x1ffff);
    MarchCMinusM_10(0x10003000,127,0x0f0f0f0f,0x1ffff);
    MarchCMinusM_10(0x10003000,127,0x33333333,0x1ffff);
    MarchCMinusM_10(0x10003000,127,0x55555555,0x1ffff);
    Uart_Printf("TagRAM2 is tested!\n");

    MarchCMinusM_10(0x10003800,127,0x00000000,0x1ffff);
    MarchCMinusM_10(0x10003800,127,0x0000ffff,0x1ffff);
    MarchCMinusM_10(0x10003800,127,0x00ff00ff,0x1ffff);
    MarchCMinusM_10(0x10003800,127,0x0f0f0f0f,0x1ffff);
    MarchCMinusM_10(0x10003800,127,0x33333333,0x1ffff);
    MarchCMinusM_10(0x10003800,127,0x55555555,0x1ffff);
    Uart_Printf("TagRAM3 is tested!\n");

    MarchCMinusM_10(0x10004000,127,0x00000000,0xf);	   
    MarchCMinusM_10(0x10004000,127,0x0000ffff,0xf);
    MarchCMinusM_10(0x10004000,127,0x00ff00ff,0xf);
    MarchCMinusM_10(0x10004000,127,0x0f0f0f0f,0xf);
    MarchCMinusM_10(0x10004000,127,0x33333333,0xf);
    MarchCMinusM_10(0x10004000,127,0x55555555,0xf);
    Uart_Printf("LRU is tested!\n");	    

    Uart_Printf("4KB internal SRAM test.\n");

    rSYSCFG=SYSCFG_4KB;
    MarchCMinus32(0x10001000,511,0x00000000);
    MarchCMinus32(0x10001000,511,0x0f0f0f0f);
    MarchCMinus32(0x10001000,511,0x33333333);
    MarchCMinus32(0x10001000,511,0x55555555);
    MarchCMinus32(0x10001000,511,0xaaaaaaaa);
    Uart_Printf("Set2 is tested at 4KB!\n");

    MarchCMinus32(0x10001800,511,0x00000000);
    MarchCMinus32(0x10001800,511,0x0f0f0f0f);
    MarchCMinus32(0x10001800,511,0x33333333);
    MarchCMinus32(0x10001800,511,0x55555555);
    MarchCMinus32(0x10001800,511,0xaaaaaaaa);
    Uart_Printf("Set3 is tested at 4KB!\n");

    rSYSCFG=saveSyscfg;     //wr_on,Cache 8KB+I_RAM 0KB,stall disable.

    //cache flush is needed....

    if(marchError==0)
		return 1; 
	else 
		return 0;
}

void MarchCMinus32(int address,int unit,unsigned int pattern)
{
    int i;
    unsigned int *tempPt;
    
    tempPt=(unsigned int *)address;
    
    for(i=0;i<=unit;i++)
    {
	//Uart_Printf("P=%x",pattern);
		*tempPt++=pattern;
	//Uart_Printf("A=%x,P=%x\n",tempPt,*tempPt);
    }
    
    _MarchSub1((unsigned int *)address,unit,~pattern,1);
    _MarchSub1((unsigned int *)address,unit,pattern,1);
    _MarchSub1((unsigned int *)address+unit,unit,~pattern,-1);
    _MarchSub1((unsigned int *)address+unit,unit,pattern,-1); 
    
    tempPt=(unsigned int *)address;
    for(i=0;i<=unit;i++)
    {
	if(*tempPt!=pattern)
	{
	    marchError=1;
	    Uart_Printf("ERROR0:%x\n",tempPt);
	}
	tempPt++;
    }
    //Uart_Printf("RP=%x,RA=%x\n",*tempPt,tempPt);
}

void MarchCMinusM_10(int address,int unit,unsigned int pattern,unsigned int mask)
{
    int i;
    unsigned int *tempPt;
    
    tempPt=(unsigned int *)address;
    
    for(i=0;i<=unit;i++)
    {
	//Uart_Printf("P=%x",pattern);
	//    *tempPt++=pattern;
	//Uart_Printf("A=%x,P=%x\n",tempPt,*tempPt);
	*tempPt=pattern;
	tempPt+=0x4;
    }
    
    _MarchSub1_10((unsigned int *)address,unit,~pattern,4,mask);
    _MarchSub1_10((unsigned int *)address,unit,pattern,4,mask);
    _MarchSub1_10((unsigned int *)address+(unit*4),unit,~pattern,-4,mask);
    _MarchSub1_10((unsigned int *)address+(unit*4),unit,pattern,-4,mask); 
    
    tempPt=(unsigned int *)address;
    for(i=0;i<=unit;i++)
    {
    
	if( *tempPt!=(pattern&mask) )
	{
	    marchError=1;
	    Uart_Printf("ERROR0:%x\n",tempPt);
	}
	tempPt+=0x4;
    }
    //Uart_Printf("RP=%x,RA=%x\n",*tempPt,tempPt);
}

void _MarchSub1(unsigned int *pt,int unit,unsigned int pattern,int incdec)
{
    unsigned int i,rp;

    for(i=0;i<=unit;i++)
    {
	rp=*pt;
	//Uart_Printf("RP=%x",*pt);
	*pt=pattern;
	//Uart_Printf("j=%x,p=%x,pt=%x\n",rp,(~pattern),pt);
	if(rp!=(~pattern))
	{
	    marchError=1;
	    Uart_Printf("ERROR1:A=%x,RP=%x,WP=%x \n",pt,rp,(~pattern));
	}
	pt+=incdec;
    }
}

void _MarchSub1_10(unsigned int *pt,int unit,unsigned int pattern,int incdec,unsigned int mask)
{
    unsigned int i,rp;
    unsigned int *pt2=pt;
    
    for(i=0;i<=unit;i++)
    {
	rp=*pt;
	//Uart_Printf("RP=%x",*pt);
	*pt=pattern;
	//Uart_Printf("j=%x,p=%x,pt=%x\n",rp,(~pattern),pt);
	
	if( rp!=(mask&(~pattern)) )
	{
	    marchError=1;
	    Uart_Printf("ERROR1:A=%x,RP=%x,WP=%x pt2=%x \n",pt,rp,(~pattern),pt2);
	}
	pt+=incdec;
    }
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91麻豆国产在线观看| 色综合天天综合网天天看片| 一个色综合av| 亚洲欧美另类久久久精品2019| 欧美高清在线一区二区| 久久精品日产第一区二区三区高清版| 久久这里只有精品6| 久久久精品国产99久久精品芒果| 久久久噜噜噜久久中文字幕色伊伊 | 亚洲乱码日产精品bd| 国产精品美女久久久久久| 国产精品网曝门| 中文字幕一区二区三区乱码在线| 中文字幕欧美一| 亚洲美女在线一区| 洋洋av久久久久久久一区| 午夜欧美在线一二页| 蜜臀久久99精品久久久久久9| 九九精品一区二区| 国产高清一区日本| 91老师片黄在线观看| 欧美乱妇15p| 337p粉嫩大胆色噜噜噜噜亚洲| 精品国产乱码久久久久久牛牛 | 日韩亚洲欧美中文三级| 69久久夜色精品国产69蝌蚪网| 欧美一区二区三区不卡| 久久久久综合网| 亚洲色图视频免费播放| 亚洲国产美国国产综合一区二区| 日韩不卡免费视频| 国产精品自在欧美一区| 一道本成人在线| 欧美久久高跟鞋激| 中文字幕国产一区二区| 水蜜桃久久夜色精品一区的特点| 三级在线观看一区二区| 不卡的av电影| 日韩精品一区二区在线观看| 国产精品剧情在线亚洲| 日韩av电影免费观看高清完整版在线观看 | 欧美三级一区二区| 久久久精品国产免大香伊 | 免费日本视频一区| 不卡av电影在线播放| 欧美一区二区三区婷婷月色| 国产精品全国免费观看高清| 日韩av网站免费在线| caoporn国产一区二区| 日韩一区二区三区免费看 | 日韩影院免费视频| 成人小视频在线观看| 日韩欧美国产wwwww| 17c精品麻豆一区二区免费| 久国产精品韩国三级视频| 91福利国产精品| 日本一区二区动态图| 日韩av高清在线观看| 欧美优质美女网站| 中文字幕中文乱码欧美一区二区 | 欧美mv日韩mv国产网站| 一区二区三区免费在线观看| jlzzjlzz欧美大全| 精品粉嫩aⅴ一区二区三区四区| 亚洲一区在线播放| a美女胸又www黄视频久久| 国产三级欧美三级日产三级99 | 精品国产三级电影在线观看| 日韩精品一二三| 91.com视频| 亚洲成人午夜电影| 欧美性受xxxx黑人xyx性爽| 日韩毛片在线免费观看| 91在线观看污| 中文字幕一区二区三| 成人高清免费观看| 中文字幕一区二区三中文字幕| 不卡高清视频专区| 亚洲三级理论片| 91极品视觉盛宴| 亚洲国产精品久久久久婷婷884| 在线免费观看成人短视频| 亚洲伦在线观看| 欧美色手机在线观看| 亚洲高清免费视频| 91精品国产全国免费观看| 全国精品久久少妇| 亚洲精品在线观看网站| 国模少妇一区二区三区| 国产视频在线观看一区二区三区| 成人午夜伦理影院| 亚洲激情成人在线| 欧美日韩中文字幕一区二区| 日本欧美一区二区三区| 欧美成人乱码一区二区三区| 国产一区二区三区电影在线观看 | 青椒成人免费视频| 精品久久久久av影院| 国产精品综合网| 国产精品色哟哟| 欧美日韩黄色一区二区| 蜜臀av性久久久久av蜜臀妖精| 久久久99精品免费观看| 波多野洁衣一区| 日韩在线观看一区二区| 国产无人区一区二区三区| 91麻豆6部合集magnet| 美女国产一区二区三区| 国产精品色一区二区三区| 欧美综合天天夜夜久久| 久久精品免费观看| 自拍偷拍国产精品| 欧美v亚洲v综合ⅴ国产v| 成人免费视频caoporn| 日韩在线a电影| 亚洲美女少妇撒尿| 在线播放国产精品二区一二区四区| 久久狠狠亚洲综合| 亚洲美女淫视频| 久久精品免费在线观看| 欧美四级电影在线观看| 成人午夜激情片| 蜜桃精品在线观看| 亚洲小说欧美激情另类| 日本一区二区三区四区| 91 com成人网| 在线精品视频一区二区| 国产精品99久久久久久久女警 | 午夜精品福利一区二区三区蜜桃| 国产性色一区二区| 日韩欧美在线网站| 91国产精品成人| 国产aⅴ综合色| 奇米在线7777在线精品| 亚洲电影一级黄| 亚洲视频图片小说| 国产精品乱人伦| 2020国产精品| 欧美在线一区二区| 91丨九色丨尤物| gogogo免费视频观看亚洲一| 国产一区中文字幕| 国产一区视频导航| 久久精品国产精品青草| 午夜av区久久| 亚洲线精品一区二区三区| 亚洲同性同志一二三专区| 欧美国产禁国产网站cc| 欧美精品一区二区在线观看| 欧美xxx久久| 欧美刺激脚交jootjob| 欧美成人官网二区| 日韩一区国产二区欧美三区| 欧美一区二区三区在| 欧美一区二区在线观看| 91麻豆精品国产91久久久使用方法| 欧美视频中文字幕| 在线播放国产精品二区一二区四区| 欧美在线观看一二区| 欧美日韩在线播放三区四区| 欧洲亚洲精品在线| 欧美精品一级二级三级| 69av一区二区三区| 精品久久久三级丝袜| 欧美tickling网站挠脚心| 久久婷婷综合激情| 国产精品成人一区二区艾草| 亚洲欧美另类图片小说| 亚洲成a天堂v人片| 秋霞成人午夜伦在线观看| 另类的小说在线视频另类成人小视频在线 | 色偷偷一区二区三区| 99国产精品一区| 欧美日韩一本到| 久久毛片高清国产| 亚洲少妇30p| 日韩成人一级大片| 国产一区二区网址| 日本韩国视频一区二区| 欧美久久久久久久久| 久久综合久久综合久久| 亚洲色图另类专区| 另类人妖一区二区av| 成人av网站在线观看| 欧美日韩在线播放| 久久久久久一二三区| 亚洲青青青在线视频| 免费在线看成人av| 99国产精品久久久久| 欧美精品亚洲一区二区在线播放| 欧美精品一区二区三区久久久| 国产精品天美传媒| 日本aⅴ免费视频一区二区三区| 懂色一区二区三区免费观看| 欧美视频在线一区二区三区| 久久久国产精华| 视频一区在线视频| zzijzzij亚洲日本少妇熟睡| 制服丝袜日韩国产| 日韩毛片精品高清免费|