Thanks fpgaguy for your suggestions.
I would skip the EBI unless you have free IP targeted to your fpga
I was looking for something already done but I can not find anything about it.
My favorite one is Kirkwood (marvell 6281), this is 32 bit ARM - then bring this out as PCIe to the FPGA
Use SPI as a boot device for low pin count
Use x16 pair of DDR2's
At first sight it is a very interesting SoC. I have searched for documentation (datasheet, manual, etc.) but without success for this device. Marvell always makes "precious" its own documentation, unfortunately. I can not even find a shred of price.
you can get a free PCIe endpoint and example code for your spartan6 from xilinx
the other peripherals you have, of course, you will need to code in RTL
I've never used PCIe, it would be the first time. I took a look and the documentation and examples should be sufficient. The rest of the FPGA structure is not a problem.
Since your I2S is streamed from the SAT - I would probably code that up in the spartan - but there should be something on opencores to get you started.
This part is already done, only the ARM <-> FPGA interface is missing.
I've gone away from spartan now to Artix - which is a bit more modern in resources - and also would not be bad choice
I would have to go to Artix / Spartan7 too but I have a lot of code written for ISE / EDK that I should convert to Vivado and I still do not have time to do it.
I keep looking for some documentation, if you have something to add I thank you in advance.
Moving stuff between chips seems like nothing but excess baggage and creates latency.
I'm thinking it's just as simple and low cost to do all of this with 16 ARMs, no FPGA.
The question is spontaneous: how import Transport Stream from Satellite input to ARM processor ?
debugasm