📄 test_sad16.c
字号:
/*******************************************************************************
文件名 : test_sad16.c
功能描述 : 该模块的功能是测试sad16() 的运行
******************************************************************************/
#include<stdio.h>
#include "sad16.h"
#include "out.h"
///////////////////////////////////////////////////////////////////////
#include <cplb.h>
int __cplb_ctrl = CPLB_ENABLE_ICPLBS|CPLB_ENABLE_DCPLBS |CPLB_ENABLE_ICACHE|CPLB_ENABLE_DCACHE|CPLB_ENABLE_DCACHE2;
///////////////////////////////////////////////////////////////////////
int error_flag = 0;
void (*f1)();
int cycle_count[10];
void _sad16();
main()
{
int i,j;
int w,h,stride;
int x,y;
// w = 28;
w = 352;
// h = 28;
h = 288;
// stride = 36;
stride = 416;
x = 12;
y = 6;
f1 = _sad16;
//Test case 1
#if 0
for(i=0;i<36;i++)
{
for(j=0;j<36;j++)
{
ptr[i*36+j]= 100;
if((j>15&&j<32)&&(i>9&&i<26))
{
ptr[i*36+j]= 3;
}
}
}
for(i=0;i<16;i++)
{
for(j=0;j<16;j++)
{
cur[i*16+j]= 125;
}
}
#endif
for(i = 0;i<288;i++)
{
for(j = 0;j<416;j++)
{
if((j>15&&j<32)&&(i>9&&i<26))
{
ptr[i*416+j] = 3;
}
}
}
for(i = 0;i<288;i++)
{
for(j = 0;j<416;j++)
{
if((j>15&&j<32)&&(i>9&&i<26))
{
cur[i*416+j] = 125;
}
}
}
// cycle_count[0] = Compute_Cycle_Count(&cur,&ptr[148],x,y,w,h,stride,&sad);
//该函数的功能是调用sad16
cycle_count[0] = Compute_Cycle_Count(&cur[4176],&ptr[4176],stride,&sad);
if(abs(sad-31232) > MAX_PERMISSIBLE_ERROR)
{
error_flag = error_flag | 1;
}
#ifdef PRINTF_SUPPORT
if(error_flag & 1)
printf("Test Case 1 failed\n");
else
printf("Test Case 1 passed\n");
#endif
printf("cycle_count[0]=%d\n",cycle_count[0]);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -