Hi Mooneer

thanks for the input.

For not much extra money we can get the dual core XC7Z010 , and about 15% more fabric resources. Now, this is not  a free lunch, and I doubt we would have the dissipation capability to make this thing easy to get the heat away running two cores at 100%. I mean I like two cores , but the performance is not  2x due to cache managaement, and there is a bunch of extra dissipation to deal with. the cache coherency etc all consumes extra power, also...

But, I think we will use the single core- I think if we cannot do it with the single core (equiv to 7x STM32F4) + NEON v3 running at 667 MHz, and the FPGA fabric, with some cleanup / efficiency drives in the PC code, then we are probably not going to get a low complexity device.

I also see the code right now is written to be very readible and manageable, but , at least in the PC code there is very little optimization and rather wasteful use of resources.. (it's not a criticism! - it is an observation)-  I know not everyone is used to writing for constrained platforms.

Vivado is a free download for Xilinx, no issues to purchase anything there. The cores we use are all free .

Looking at Alliance Memory, which is what I'd buy :

https://www.alliancememory.com/products/lpddr2-mobile-ddr2/

128Mbytes is the minimum... we'd use a single x16 part.

-glen



On 19/07/2020 11:34, Mooneer Salem wrote:
Seems like there are still limits on the FPGA side if it's desired to use OSS toolchains for it. For instance, SymbiFlow is missing Xilinx DSP support per https://symbiflow.github.io/. Do we foresee that to be an issue?

Anyway, personally, I'd go with 128MB RAM/64-128MB flash to enable future expansion, but I also haven't quoted pricing recently. FPGA offload would potentially reduce requirements, too.

(BTW, I imagine actually building on the target would be rare. Cross compiling on a desktop or laptop PC will always be significantly faster, even taking transfer time into account.)

-Mooneer K6AQ

On Sat, Jul 18, 2020 at 4:27 PM glen english <[email protected] <mailto:[email protected]>> wrote:

    I am designing an SM3000, and now is the time for input from users.
    (input request below)

    *****
    Design Goals :

    High computational capability : So that our modems and codecs as they
    become more advanced, are less constrained by the STM32F4 platform.

    Platform to be Linux so that development, updates, debugging is very
    similar to the PC platform.

    To be low cost - so that the cost is not a barrier to entry. Not
    all of
    us live in wealthy western  countries.

    To be able to run advanced wideband modems and advanced speech codecs
    like LPCnet-Codec2.

    To have platform capability (but maybe not on the PCB) to provide
    advanced connectivity - to be able to provide features without
    having to
    learn new platforms.

    To Fit in the SM1000 box.

    To be both Audio/USB interface  (in the SM1000 package) ,

    - and when piggyback boards permit, a standalone full digital radio.

    To have an open ecosystem/environment

    No special cooling requirements.

    To have the ARM processor core do as much as possible, and only
    use the
    FPGA for what the ARM processor cannot do , or cannot do efficiently.
    This means 'normal' people can code in the linux GNU eco system,
    and the
    amount of specialized work in the FPGA  is reduced. The FPGA will be
    used for function blocks like accelerators and digital radio
    interfacing

    --------------

    I have chosen the Xilinx Zynq XC7007S   hybrid CortexA9 / FPGA . The
    single core will give us 7x the computational power of the STM32F4
    , and
    that is before we use the NEON instruction unit. The FPGA has
    1.8Mb of
    variable aspect dual port block RAMs and 66 DSP units that will
    run at
    350 MHz if pipelined.  The use of LPDDR2 will enable high power
    saving
    options.

    ***********The input I need from developers is :***********

    *** How much RAM do you think we need ? while linux will run in 16 MB
    (just!) I was thinking 64 or 128 MBytes. RAM costs money and
    power, so
    we cannot go overkill. W need enough room for verbose symbol tables,
    debugging and maybe  compilation on the target.

    How realistic is compile and linking large apps on the target with
    limited RAM ? I have run into memory limitations with recent GCC
    compilating on a constrained platform.  OR do we just cross compile ?

    We need some room for a 2nd FPGA image (~ 10 Mbits) , so that we can
    (partially or fully)  reconfigure the FPGA between TX/RX if we run
    out
    of configured fabric under some condition that I yet cannot think of.

    ***boot flash size: How much ? (linux image, FS) + FPGA images. flash
    will be QSPI.  16MB? 32MB ? 64 MB ? agani, memory costs money, and
    every
    dollar counts.  64 MBytes seems plenty to carry different options
    in the
    one image.

    In most cases, for RAM and boot flash larger parts can be fitted with
    same PCB design.

    ***

    The digital radio half (if used) will use a clean PLL+VCO synthesiser
    chip so that phase noise issues to not cause problems for other uses
    when operated at high power.  Most small single chip radios are
    designed
    for 100mW maximum and use at higher power, or large antennas pollutes
    radio spectrum.

    To keep costs down, the radio will use < 65 Msps ADC and DAC, and
    will
    notionally be a 28 MHz IF radio when used > 50 MHz. This is so it can
    use many of the $50 transverter kits and modules available.

    On aliases , the 28 MHz IF radio It will be capable of operation
    at 146
    MHz but if you want 'base station' quality, you will need to use a
    converter.

    -glen




    _______________________________________________
    Freetel-codec2 mailing list
    [email protected]
    <mailto:[email protected]>
    https://lists.sourceforge.net/lists/listinfo/freetel-codec2



_______________________________________________
Freetel-codec2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freetel-codec2

--
Glen English
RF Communications and Electronics Engineer

CORTEX RF
&
Pacific Media Technologies Pty Ltd

ABN 40 075 532 008

PO Box 5231 Lyneham ACT 2602, Australia.
au mobile : +61 (0)418 975077


_______________________________________________
Freetel-codec2 mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/freetel-codec2

Reply via email to