11-13-2016 02:19 AM
NE10 from github
Zynq library cookery and (dated) general guidance from http://www.wiki.xilinx.com/Zynq-7000+AP+SoC+Spectrum+Analyzer+part+2++-+Accelerating+Software+-+Building+ARM+NEON+Library+Tech+Tip
-mfloat-abi=softfp -mfpu=neon incantations from the internet : they "define" __ARM_NEON__ and effect the substantive inclusion of arm_neon.h, thence the neon types float32_t, float32x4_t etc
1) the NE10 library builds
2) linking to the NE10 library generates unresolved references to NE10s nooks and crannies e.g. ne10_mixed_radix_generic_butterfly_float32_neon_c
3) building a toy application, no more than #includes, with linked NE10 sources implodes as arm_neon.h fails to declare float32x4_t in "some" routines - the -m incantations have been made, also include paths have been provided
Is a current pre-built library or updated cookery instructions available ?
Are these issues finger trouble, SDK bugs or ...
Fixes anyone ?
VMTiA B
11-13-2016 08:29 AM
Hi @mjdbishop,,
May helps this wiki design:
Thanks,
Sarada
----------------------------------------------------------------------------------------------
Kindly note- Please mark the Answer as "Accept as solution" if information provided is helpful.
Give Kudos to a post which you think is helpful and reply oriented.
----------------------------------------------------------------------------------------------
11-14-2016 12:26 AM
saradapr
Thank you for your suggestion. However, that TechTip is the one I had already referenced in my post. Additionally, there are older TechTips, as additional noise. The TechTips last update was of course over two years ago.
For clarity, my to do list includes:
- code for a short FFT (1 ki pt) : FWIW a textbook implementation in C takes ~1.2 ms (CRO measurement). Scaled to 4 ki pt that is 5.3 ms, the 571 us of the NEON implementation is desirable.
- setting to work Ne10 on a bare metal / standalone Zynq (my priority)
- stw Ne10 on Linux / Zynq (the distros target environment)
Any further guidance or assistance towards these objectives would be appreciated. idc I shall re-attempt a (clean) workspace build of the Ne10 library, test suite and a simple example.
Best Regards B
11-28-2016 10:02 AM
OK : Ne10 runs on Zynq / Zybo, many tweaks missing from the apps notes later.
0) The BSP has to be built -mfloat-abi=softfp -mfpu=neon to effect compatibility between bsp (library) and application modules at link time.
1) Assembler, compiler and linker settings have to be -mcpu=cortex-a9 -mfloat-abi=softfp -mfpu=neon to ensure the instantiation of arm_neon.h and its payload of types.
2) A plethora of includes for the Ne10 modules require to be configured appropriately for assembler, compiler and build configuration.
3) On a bare metal c implementation some mixed radix cpp fft code does not find its targets : commented out - not currently required.
4) Stubs for _write _read and _close are required, possibly printfs in Ne10 or ...
To date testing has been limited C2C and R2C ffts of length 2^N.
My impression is that the test suite, not stw, has not been shimmed for use on bare metal / c.
Any greater wisdom would be welcome.
Martin
09-05-2017 06:34 AM
Hello sir,
Can u tell me if I can build it using 2013.2 SDK?
09-05-2017 11:24 AM
Hi mdvankar1990
* The narrow answer to your question is that I don't know
* A broader answer is that all I have provided is an existence theorem by elaboration : it works ...
* If you have to use SDK 2013.2 the only way forward is to work the problem
* A more recent SDK may have fewer issues, greater maturity wrt your target
* If you only require a few DSP routines extracting the source should work well
Finally, DIY Neon assembler will provide a solution (view NE10 as examples)
HtH Martin
11-07-2017 03:45 AM