Hello,
I am trying to run the rtl-kernel wizard example on the ultra96. Where the same example is running fine on zcu102 and zcu104.
I am using the predefined avnet platform on Vitis, which I downloaded from your repository and I am running smoothly Vadd application on kernel. But when I run the example the Output is wrong and TEST FAILS. Here is the log:
root@ultra96v2-2020-1:/mnt/sd-mmcblk0p1/Projects/hello# ./dilithium vector_addition.xclbin
source_a[0]+source_b[0]=source_results[0]
10+32=0
[ 219.740682] [drm] Pid 1124 opened device
[ 219.747835] [drm] Pid 1124 closed device
[ 219.752061] [drm] Pid 1124 opened device
[ 219.756033] [drm] Pid 1124 closed device
Found Platform
Platform Name: Xilinx
INFO: Reading vector_addition.xclbin
Loading: 'vector_addition.xclbin'
[ 220.010725] [drm] Pid 1124 opened device
Trying to program device[0]: edge
[ 220.030024] [drm] sched_reset_exec: stop scheduler
[ 220.030154] [drm] Finding IP_LAYOUT section header
[ 220.034968] [drm] Section IP_LAYOUT details:
[ 220.039765] [drm] offset = 0x54fcf0
[ 220.044023] [drm] size = 0x58
[ 220.047717] [drm] Finding DEBUG_IP_LAYOUT section header
[ 220.050862] [drm] AXLF section DEBUG_IP_LAYOUT header not found
[ 220.056177] [drm] Finding CONNECTIVITY section header
[ 220.062100] [drm] Section CONNECTIVITY details:
[ 220.067149] [drm] offset = 0x54fd48
[ 220.071667] [drm] size = 0x28
[ 220.075348] [drm] Finding MEM_TOPOLOGY section header
[ 220.078504] [drm] Section MEM_TOPOLOGY details:
[ 220.083552] [drm] offset = 0x54fbf8
[ 220.088073] [drm] size = 0xf8
[ 220.091763] [drm] Download new XCLBIN 6EA32464-41AE-4C49-8572-D4D2C86700B1 done.
[ 220.094915] [drm] zocl_xclbin_read_axlf 6ea32464-41ae-4c49-8572-d4d2c86700b1 ret: 0.
[ 220.104695] [drm] -> Hold xclbin 6EA32464-41AE-4C49-8572-D4D2C86700B1, from ref=0
[ 220.112452] [drm] <- Hold xclbin 6EA32464-41AE-4C49-8572-D4D2C86700B1, to ref=1
[ 220.119977] [drm] No ERT scheduler on MPSoC, using KDS
[ 220.132510] [drm] scheduler config ert(0)
[ 220.132511] [drm] cus(1)
[ 220.136511] [drm] slots(16)
[ 220.139210] [drm] num_cu_masks(1)
[ 220.142169] [drm] cu_shift(16)
[ 220.145648] [drm] cu_base(0xb0000000)
[ 220.148862] [drm] polling(0)
[ 220.152723] [drm] -> Release xclbin 6EA32464-41AE-4C49-8572-D4D2C86700B1, from ref=1
[ 220.155774] [drm] now xclbin can be changed
[ 220.163532] [drm] <- Release xclbin 6EA32464-41AE-4C49-8572-D4D2C86700B1, to ref=0
[ 220.167966] [drm] -> Hold xclbin 6EA32464-41AE-4C49-8572-D4D2C86700B1, from ref=0
Device[0]: program successful!
Result =
source_a[0]+source_b[0]=source_results[0]
10+10=0
Err[ 220.175552] [drm] <- Hold xclbin 6EA32464-41AE-4C49-8572-D4D2C86700B1, to ref=1
or: Result mismatch:
i = 0 CPU result = 20 Device result = 0
T[ 220.190145] [drm] -> Release xclbin 6EA32464-41AE-4C49-8572-D4D2C86700B1, from ref=1
EST FAILED
[ 220.201311] [drm] now xclbin can be changed
[ 220.214599] [drm] <- Release xclbin 6EA32464-41AE-4C49-8572-D4D2C86700B1, to ref=0
[ 220.223994] [drm] Pid 1124 closed device
I have concluded that probably there is an error with the BASE_ADDRESS of the board at non-hls-apps, as I am facing the same error on OpenCL Hello World example (where with HLS Hello World I don't have errors).
Has anyone faced the same error? Has anyone ran successfully the rtl-kernel wizard example?
Thanks,
AE