structure in __global__

Hi Ihave a question.

When I use structure.

But the results are not what I want.

In the emulation mode, the results are true.
But running in GPU, the result is false.

This is source code.

global void executeRelData( GATHERING_DATASYMBOL* _frame, REALDATASYMBOL* _dataSymbol )
const int idx = blockIdx.x * blockDim.x + threadIdx.x;
const int idy = blockIdx.y * blockDim.y + threadIdx.y;

if( idx < 840 && idy < 16 )
	_dataSymbol->dataSymbol[idy].iData[idx] = _frame->dataSymbol[idy][idx].i;
	_dataSymbol->dataSymbol[idy].qData[idx] = _frame->dataSymbol[idy][idx].q;


Is not impossible to use structure??
Please help me~~~~

are you sure to have properly allocated the dynamical memory that is anchored in the structure ?