On Feb 3, 4:34 am, "ujala" <ujala.qa...@gmail.com> wrote:
> Hi,
>
> I want to write a C++ code that will allow for the communication between a
> USRP board (a hardware device that is used for making Software Defined
> Radio. It captures the actual data on which modulation/demodulation in
> software on the PC has to be performed. The USRP does some processing on
> raw data such as analog to digital conversion, down-conversion and
> decimation of data and throws it on a USB 2.0 port)and a PC. All of the
> high-speed general purpose operations like digital up and down conversion,
> decimation and interpolation are done on the Altera Cyclone EP1C12 FPGA on
> the USRP board. The FPGA, in turn, connects to a USB2 interface chip, the
> Cypress FX2, and on to the computer.
>
> I want to interface the DSP board and USRP board through USB 2.0. For
> this, I am initially trying to write a code in Windows, which I will later
> on implement on the DSP board with necessary modifications. Please suggest
> me how I should go about writing this C++ code?
Have you heard of Google Search? It's a fabulous tool that comes free
with every gmail account.
With this "search" tool, you can find a number of web sites where
people are doing SDR with USB-2.0 and FPGA's. Most of them are very
willing to share their research with the world.
As for writing C++ code, I prefer 'VIM'. Emacs is good; I like it
too, but for C and C++, 'VIM' just works better for me. YMMV.
AL
Reply by ●February 3, 20092009-02-03
> I want to interface the DSP board and USRP board through USB 2.0. For
> this, I am initially trying to write a code in Windows, which I will later
> on implement on the DSP board with necessary modifications. Please suggest
> me how I should go about writing this C++ code?
You should read up on SLAVE FIFO mode, which is probably what you
want.
For this mode, you have to write FX12 firmware which configures the
chip and then basically goes to sleep. The FPGA treats the FX12 as
parallel slave and writes the data to it (respecting the Ready/Busy
signal). The FX12 automatically forwards the data to the host PC.
The firmware is to be created in 8051 C or assembler, and can be
loaded at runtime or be stored in an I2C EEPROM on your board. You
can find example firmware with source code in the EZUSB developer
download. The "a3_load" example will show you how to load firmware at
runtime.
You will also need a driver on the host PC, and functions that talk to
it. There is sourcecode in the developer download, for the ezusb
driver and EzMgr (?) application which shows you how to use it.
However, this driver is deprecated, and it does not support overlapped
IO. The alternative is to use the new Cypress driver (cyusb?) or a
3rd party driver, but I can't point you to any.
Let us know how everything turns out, once you've made progress!
Best regards
Marc
Reply by MK●February 3, 20092009-02-03
"ujala" <ujala.qasim@gmail.com> wrote in message
news:sJidnX1-d7hzpBXUnZ2dnUVZ_tPinZ2d@giganews.com...
> Hi,
>
> I want to write a C++ code that will allow for the communication between a
> USRP board (a hardware device that is used for making Software Defined
> Radio. It captures the actual data on which modulation/demodulation in
> software on the PC has to be performed. The USRP does some processing on
> raw data such as analog to digital conversion, down-conversion and
> decimation of data and throws it on a USB 2.0 port)and a PC. All of the
> high-speed general purpose operations like digital up and down conversion,
> decimation and interpolation are done on the Altera Cyclone EP1C12 FPGA on
> the USRP board. The FPGA, in turn, connects to a USB2 interface chip, the
> Cypress FX2, and on to the computer.
>
> I want to interface the DSP board and USRP board through USB 2.0. For
> this, I am initially trying to write a code in Windows, which I will later
> on implement on the DSP board with necessary modifications. Please suggest
> me how I should go about writing this C++ code?
>
>
If you look on the Cypress web site you will find example PC drivers and
applications which you can modify to make an app. of your own. It's a while
since I did this but it wasn't that hard to get something working.
Then you mention a DSP board talking to your radio through USB - this is
annother deal altogether and you would need to define the DSP board to get
any advice.
Michael Kellett
Reply by ujala●February 3, 20092009-02-03
Hi,
I want to write a C++ code that will allow for the communication between a
USRP board (a hardware device that is used for making Software Defined
Radio. It captures the actual data on which modulation/demodulation in
software on the PC has to be performed. The USRP does some processing on
raw data such as analog to digital conversion, down-conversion and
decimation of data and throws it on a USB 2.0 port)and a PC. All of the
high-speed general purpose operations like digital up and down conversion,
decimation and interpolation are done on the Altera Cyclone EP1C12 FPGA on
the USRP board. The FPGA, in turn, connects to a USB2 interface chip, the
Cypress FX2, and on to the computer.
I want to interface the DSP board and USRP board through USB 2.0. For
this, I am initially trying to write a code in Windows, which I will later
on implement on the DSP board with necessary modifications. Please suggest
me how I should go about writing this C++ code?