This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
FPGA design on ADC08D1520RB Virtex-4:
1. ADC08D1520RB board cannot be detected by Xilinx IMPACT
After debugging, the original design pass Implement Design and generate .bit file ready. However, impact returns that it cannot find cable. All Xilinx solutions I found are to uninstall/reintall usb driver or install a winusb drive coming with ISE installation package. I tried all of them but the issue remains, although I can see the device is recognized in Device Manager in windows 7. I run out of solutions. :(
2. I design new control logic and signal processing algorithm in FPGA. My design did not introduce new input or output, or any DCM change. However, during Implement Design Xilinx ISE fails Place&Route. In Design Summary, I am told that my design consumes 101% of IOB and 150% DCM_ADVs. How could this happen?
3. I change my signal processing algorithm which has less memory occupation. Interestingly, then my design pass Place&Route, although Design Summary returns the same consumption of IOB and DCM_ADVs. Why? How does memory consumption matter to IOB and DCM?
4. What is the exact all returns of WvBoardReadCaptureData? The DLL document does not give a clear description on it. Based on wvdll.h as following, I am unable to find the answer. I saw 3 returns in examples by using the function. What want to confirm what are they exactly.
WvBool Wv_API WvBoardReadCaptureData(
WvWord board_index,
WvWord dut_index,
WvWord* return_data,
WvWord sizeof_data_allocated_by_caller,
WvBool* return_data_valid
);
Thanks.
-Bridget
Hello Bridget,
This appears to be the same question posted here: FPGA Design Question about Virtex-4 on ADC08D1520RB - Data converters forum - Data converters - TI E2E...
For the follow up question #4, you can use the dll_help file to find specific information about a given function call. For example, the function WvBoardReadCaptureData has the following description:
Acquire the capture data.
board_index | Board index | |
dut_index | DUT index | |
return_data | Array where the DLL will place the captured data | |
sizeof_data_allocated_by_caller | Number of WvWords in the return_data array | |
return_data_valid | Set to true if the data is valid |
Additionally, I've attached the help file here.
Regards,
Luke LaPointe
High Speed Data Converters
Hello Bridget,
The first four parameters returned are a WvWord, which is typdef unsigned long or a 32 bit word.
Regards,
Luke LaPointe
High Speed Data Converters
Hi Luke,
1. Outputs, not Inputs.
Do you mean the 5 parameters, board_index, dut_index, return_data, sizeof_data_allocated_by_caller, and return_data_valid, are outputs returned by WvBoardReadCaptureData ?
WvBool __stdcall WvBoardReadCaptureData ( WvWord board_index,
WvWord dut_index,
WvWord * return_data,
WvWord sizeof_data_allocated_by_caller,
WvBool * return_data_valid
)
In my understanding, the 5 are input of WvBoardReadCaptureData , not return values. That is why we could call it in MATLAB as following.
[status,result1,result2] = calllib('wvdll','WvBoardReadCaptureData',...
board_index,...
dut_index,...
ptr1,... % return_data,
uint32(Samples),... % sizeof_data_allocated_by_caller,
ptr2); % return_data_valid
2. Meaning of each Output:
As above matlab code, I know result1 is the captured data returned. However, what is result2 then?
3. Return more info:
We knew the captured data was sent to Cypress register at 7'h38 and 7'h3a. However, 7'h39 and 7'h3b are simply put as 0(are they the result2 ?). Why is it? Could we use it for our return more data?
Thanks .
-Bridget
i am afraid i meet the same problem with you when i read the matlab code calling this functions, also i don't know how to get the address like "address= 53283" or "SPIACCESS = uint32(16777217);",why the address is 53283?