You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 13 Current »

 

This combination is WRONG because

  • data throughput is halved with regard to the correct combination and
  • the test will fail because it is not the way it is supposed to be used.
int TX_PACKET_LEN = 51200; //102400 for TE0320 and TE0630 modules;
int packetlen = TX_PACKET_LEN;
unsigned int packets = 600; //1200 for TE0320 and TE0630 modules;
unsigned long TIMEOUT = 1000;
byte * data;
byte * data_temp = NULL;
unsigned int total_cnt = 0;
unsigned int errors = 0;
double TheElapsedTime = 0;
PI_PipeNumber PipeNo = PI_EP8;
data = new byte [TX_PACKET_LEN*packets]; //allocate memory
ResetFX2FifoStatus(USBDeviceList);
bool bResultDataWrite = false;
byte PipeNoHex = 0x00;
unsigned int XferSizeRead=0;
unsigned int DeviceDriverBufferSize = 102400;
CCyBulkEndPoint *BulkOutEP = NULL;
TE_USB_FX2_SetData_InstanceDriverBuffer (USBDeviceList, &BulkOutEP, PipeNo, TIMEOUT, DeviceDriverBufferSize);
//StopWatch timer starts
ElapsedTime.Start();
total_cnt = 0;
for (unsigned int i = 0; i < packets; i++)
{
     long packetlen = TX_PACKET_LEN;
     data_temp = &data[total_cnt];

     //Write USB data test starts
     SendFPGAcommand(USBDeviceList, FX22MB_REG0_START_RX);
     if (TE_USB_FX2_SetData(&BulkOutEP, data_temp, packetlen))
     {
         cout << "ERROR" << endl;
         break;
     }

     //Write USB data test ends
     SendFPGAcommand(USBDeviceList, FX22MB_REG0_STOP);
     total_cnt += packetlen;
}
//StopWatch timer stops
TheElapsedTime = ElapsedTime.Stop(false);


  • No labels