Harrison, On option is to start with Nutaq's software package for the Zedboard (http://nutaq.com/en/products/zeptosdr).
This software package includes GNU Radio sink/source blocks on PC to get your samples from the ADC through your Zynq into your user land on the PC. It also includes those same GNU Radio sink/source blocks, but for a GNU Radio running on the ARM processor (includes image with Linux, GNU Radio, Nutaq drivers, etc.. for ARM). The FPGA image with comprehensive source files and documentation, and the matching host and ARM drivers (with source code) as well as the GNU Radio user land interface are provided, which should kick-start your work on the Zedboard as far as streaming from GNU Radio on the Zedboard is concerned. Additionally, when using the FMC Radio420x RF daughter card, software package contains GNU Radio blocks to expose your hardware controls practically. Our software package includes an FPGA IP Core for the Radio420x that aims at abstracting the list of the AXI-lite Registers through the use of this user friendly Radio420x FPGA core, as well as the corresponding GNU Radio blocks so that you can avoid pulling signals in the user logic to control the Radio420x and rather call functions on the host computer to control the radio parameters (clk freq, Tx freq, Rx freq, filters, gains, auto-calibration of DC offset and IQ imbalance, etc...). When using an FMC daughter card from a 3rd party vendor with the Zedboard, you may use generic AXI-lite Registers read and write functions in the Nutaq API to control the AXI-lite FMC IP core provided with the FMC card and easily integrate the new card with your existing GNU Radio application. The package also includes GNU Radio blocks to read and write to Zynq FPGA registers. It should kick-start your work on the Zedboard as far as controlling registers from GNU Radio on the Zedboard is concerned. This software package is available online but password protected until we find the most comprehensive way to decouple what's specific to Zedboard from what's specific to the FMC Radio420x. But you can request access for a free evaluation. Good luck. Tristan [email protected] -----Message d'origine----- De : [email protected] [mailto:[email protected]] De la part de Marcus Müller Envoyé : 16 octobre 2014 15:29 À : [email protected] Objet : Re: [Discuss-gnuradio] Writing a Radio Driver Hi Harrison, There's no "driver architecture" in GNU Radio; you just write sink/source blocks. If you have a few minutes to spare, start with the GNU Radio tutorials [1] from start to hardware; that should give you a solid primer on how things work with GNU Radio. If you then know how you get your samples from the ADC through your Zynq into your userland, you're basically set :D well, aside from minor things like figuring out how to expose your hardware controls most practically to GNU Radio, and how to avoid overhead. Again, there's no standard for hardware control in GNU Radio[1]. UHD is quite specific to Ettus devices, so I don't think screwing your stuff onto that seems very wise (though I've seen parts similar to yours in Ettus products ;) [2]). UHD, though, is open source, including the FPGA image and the matching drivers as well as the userland interface, and I don't think the developers mind you looking at the code they produced to tackle the FPGA-userland interface. Greetings, Marcus [1] maybe there should be. I think we should wrap this up in clean interface specifications, and define CORBA objects for that :D j/k. [2] There is an upcoming embedded USRP, employing a Zynq, the E300. Ettus presented some information on grcon 2014: http://www.trondeau.com/storage/grcon14/presentations/Sep16_05_Ettus_Updates.pdf On 16.10.2014 20:21, Harrison Caudill wrote: > Hello Everyone, > > I have a custom PCB to power an SDR, and I'm going to need to provide > a gnuradio driver for it. > > We are using: > * Xilinx Zynq 7020 SoC > * Analog Devices AD9364 ADC > * AvNet ZedBoard for prototyping > > I can only imagine that we will ultimately use a tweaked version of > the Ettus Research UHD driver. I have found a couple of other drivers > that people have written, as well. > > Short of old-fashioned source-diving, I am unsure of where to begin. > Can anyone recommend some good reading on the gnuradio architecture > and/or driver layer? I'm guessing I'll have to write a source block > for the radio, leaving the issue of running the flow graph on the PL > of the Zynq and interfacing properly with the AXI bus. > > Thanks, > Harrison > _______________________________________________ Discuss-gnuradio mailing list [email protected] https://lists.gnu.org/mailman/listinfo/discuss-gnuradio _______________________________________________ Discuss-gnuradio mailing list [email protected] https://lists.gnu.org/mailman/listinfo/discuss-gnuradio
