Leakoo
marcoreps from patreon
marcoreps patreon

OSMU: Which controller?

🕑 Added 2018-07-07 16:06:55 +0000 UTC
OSMU: Which controller?

Comments

Vinicius Miguel

I know the post is old but I think a small processor in each one of the daughter cards is the best option, this way you can simply use an isolated I2C to set the parameters without delay worries. Second benefit is that you eliminate the FPGA, the bom cost will be much lower.

Marco Reps

Wonderful to have so many experts here, in case I run into problems ;) Is there anything better than Xilinx Vivado I should try?

Dillon Nichols

I've been using the Zynq devices at work and have learned to hate Vivado for the high speed interfaces (DDR3, Aurora, PCIE). I haven't used the ADCs or DACs to know if their IP is any easier. The ARM side is easy-ish but there's so much abstraction that it gets confusing sometimes. I agree with others that an FPGA sounds best for your design and you'll learn a lot, but I can assure you that you'll get frustrated with the tools during your design.

Volodymyr Babchuk

I also suggest to use FPGA. I had an experience with network of MCs. Albeit it is fun to flash one MC from another during startup, I can't say it is convenient to debug such setup. If you can do all your job using one package - do it.

TweakoZ

Vivado is free if you are targeting a device supported by the 'webpack' license. That includes most smaller consumer/prosumer grade FPGA's. Of course the smaller devices should be plenty big enough to make a soc with a basic video controller and sigma delta adc's and dac's.

Marco Reps

'pretty easily' sounds good! I've read some intriguing things about Xilinxes Vivado software, but it appears to be super expensive and even if I could get a license, it would probably not help the open source aspect much ?

TweakoZ

There are also the raw fpga's (cmod-a7, arty-a7, etc..). You can integrate a softcore into the FPGA pretty easily with open source tools using migen/misoc/litex. as a bonus, litex will even generate a gcc toolchain and runtime library for you. If you are making your own board you could just put the fpga on the board and save a few more bucks. assuming you can pull off <= 1mm pitch bga's. A link for you: <a href="https://www.bunniestudios.com/blog/?p=5018" rel="nofollow noopener" target="_blank">https://www.bunniestudios.com/blog/?p=5018</a>

Jan-Henrik Bruhn

unfortunately no. There is for Lattice devices, but not for Xilinx/Altera afaik.

Is there an open source toolchain for the xilinx fpgas? Im not sure that this is even important. At least there seams to be a linux installer for the SDK on there downloadpage.

Jan-Henrik Bruhn

Yes good call. But remember that (at least in the Xilinx universe), everything in the FPGA is connected via the AXI Bus, so that would obviously need some translation logic. But it easily is up to the high speed data handling. You then might also have a look at AXI Streams, which are usually used for transmitting signals like video for example.

Marco Reps

In case of FPGA I'd go for tens-of-MHz binary output ADCs to avoid the SPeye of the needle altogether

Jan-Henrik Bruhn

Might make more sense. Just using the FPGA part to connect the APU of the Zynq to the (SPI?) Buses of the ADC/DAC would be kind of wasteful I guess, as you can easily fit a bunch of MicroBlaze Processors inside of the FPGA Portion of the Zynq/Spartan and still add the AXI to SPI logic to it.

Jason Wilson

The Zynq looks like an elegant solution. Make sure the ARM side does what you want. Is the reference linux distro going to suit your needs and drive your UI without too much pain?

FPGA. For motivating community towards FPGA.

Marco Reps

That sounds pretty scary tbh 😳 But I have this: <a href="https://www.scarabhardware.com/minispartan6/" rel="nofollow noopener" target="_blank">https://www.scarabhardware.com/minispartan6/</a> It was abandoned by the developer but maybe I can give it a try ...

Jan-Henrik Bruhn

I'd suggest using the FPGA. I haven't really analyzed the requirements, but maybe a Spartan-6/7 FPGA is enough? It is just an FPGA, without APUs or similar, but you might get the same functionality using MicroBlaze Softcores running on the FPGAs in addition to the high speed control logic. Might make it way less pricey.


More Creators