usrp-users@lists.ettus.com

Discussion and technical support related to USRP, UHD, RFNoC

View all threads

Trying to learn FPGA programming in USRP E 110

NI
Nazmul Islam
Thu, Apr 26, 2012 3:01 AM

Hello,

My supervisors are want to conduct channel sounding experiments using
embedded USRP's. They plan to put some USRP E110 in the field and these
USRP's should perform inter-node channel estimation on their own. They
asked me to learn FPGA programming in USRP.

I don't have VHDL/Verilog programming experience. Therefore, I am planning
to use the simulink software to run the USRP E110's? Can I directly program
in the FPGA board of E 110 just by using Simulink?

Considering that I have made the proper choice, I am also wondering how I
should start. I have not done FPGA programming but I have worked with
Matlab + Simulink frequently. Do I need to learn Xilinx System Generator
before diving into this?

Any feedback will be very appreciated.

Thanks,

Nazmul

--
Muhammad Nazmul Islam

Graduate Student
Electrical & Computer Engineering
Wireless Information & Networking Laboratory
Rutgers, USA.

Hello, My supervisors are want to conduct channel sounding experiments using embedded USRP's. They plan to put some USRP E110 in the field and these USRP's should perform inter-node channel estimation on their own. They asked me to learn FPGA programming in USRP. I don't have VHDL/Verilog programming experience. Therefore, I am planning to use the simulink software to run the USRP E110's? Can I directly program in the FPGA board of E 110 just by using Simulink? Considering that I have made the proper choice, I am also wondering how I should start. I have not done FPGA programming but I have worked with Matlab + Simulink frequently. Do I need to learn Xilinx System Generator before diving into this? Any feedback will be very appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical & Computer Engineering Wireless Information & Networking Laboratory Rutgers, USA.
NF
Nick Foster
Thu, Apr 26, 2012 1:28 PM

On Wed, Apr 25, 2012 at 8:01 PM, Nazmul Islam mnislam@winlab.rutgers.eduwrote:

Hello,

My supervisors are want to conduct channel sounding experiments using
embedded USRP's. They plan to put some USRP E110 in the field and these
USRP's should perform inter-node channel estimation on their own. They
asked me to learn FPGA programming in USRP.

I don't have VHDL/Verilog programming experience. Therefore, I am planning
to use the simulink software to run the USRP E110's? Can I directly program
in the FPGA board of E 110 just by using Simulink?

No. Because the rest of the USRP E110 FPGA image is written in Verilog, you
will have to modify the existing Verilog.

Considering that I have made the proper choice, I am also wondering how I
should start. I have not done FPGA programming but I have worked with
Matlab + Simulink frequently. Do I need to learn Xilinx System Generator
before diving into this?

The best place to start is to compile your own FPGA image without making
changes, and verify that it works. You will need a full copy (not the
Webpack version) of ISE. You can just use the Makefile.E110 located in
usrp2/top/E1x0 to compile it, no System Generator necessary. After you have
verified that your image is OK, take a look at the custom plugins located
in the usrp2/custom directory. The custom plugins provide a convenient way
to interface with the existing signal path in the E110 FPGA image and
modify data before sending it on to the host.

We're happy to answer additional questions from there.

Best,
Nick

Any feedback will be very appreciated.

Thanks,

Nazmul

--
Muhammad Nazmul Islam

Graduate Student
Electrical & Computer Engineering
Wireless Information & Networking Laboratory
Rutgers, USA.


USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

On Wed, Apr 25, 2012 at 8:01 PM, Nazmul Islam <mnislam@winlab.rutgers.edu>wrote: > Hello, > > My supervisors are want to conduct channel sounding experiments using > embedded USRP's. They plan to put some USRP E110 in the field and these > USRP's should perform inter-node channel estimation on their own. They > asked me to learn FPGA programming in USRP. > > I don't have VHDL/Verilog programming experience. Therefore, I am planning > to use the simulink software to run the USRP E110's? Can I directly program > in the FPGA board of E 110 just by using Simulink? > No. Because the rest of the USRP E110 FPGA image is written in Verilog, you will have to modify the existing Verilog. > > Considering that I have made the proper choice, I am also wondering how I > should start. I have not done FPGA programming but I have worked with > Matlab + Simulink frequently. Do I need to learn Xilinx System Generator > before diving into this? > The best place to start is to compile your own FPGA image without making changes, and verify that it works. You will need a full copy (not the Webpack version) of ISE. You can just use the Makefile.E110 located in usrp2/top/E1x0 to compile it, no System Generator necessary. After you have verified that your image is OK, take a look at the custom plugins located in the usrp2/custom directory. The custom plugins provide a convenient way to interface with the existing signal path in the E110 FPGA image and modify data before sending it on to the host. We're happy to answer additional questions from there. Best, Nick > > Any feedback will be very appreciated. > > Thanks, > > Nazmul > > > -- > Muhammad Nazmul Islam > > Graduate Student > Electrical & Computer Engineering > Wireless Information & Networking Laboratory > Rutgers, USA. > > > _______________________________________________ > USRP-users mailing list > USRP-users@lists.ettus.com > http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com > >
NS
Nowlan, Sean
Thu, Apr 26, 2012 10:54 PM

FYI - If you're doing academic research but don't have a copy of the non-Webpack Xilinx ISE, you should have your advisor put in a request with the Xilinx University Program: www.xilinx.com/universityhttp://www.xilinx.com/university

  • Sean

From: usrp-users-bounces@lists.ettus.com [usrp-users-bounces@lists.ettus.com] on behalf of Nick Foster [nick@ettus.com]
Sent: Thursday, April 26, 2012 9:28 AM
To: Nazmul Islam
Cc: usrp-users@lists.ettus.com
Subject: Re: [USRP-users] Trying to learn FPGA programming in USRP E 110

On Wed, Apr 25, 2012 at 8:01 PM, Nazmul Islam <mnislam@winlab.rutgers.edumailto:mnislam@winlab.rutgers.edu> wrote:
Hello,

My supervisors are want to conduct channel sounding experiments using embedded USRP's. They plan to put some USRP E110 in the field and these USRP's should perform inter-node channel estimation on their own. They asked me to learn FPGA programming in USRP.

I don't have VHDL/Verilog programming experience. Therefore, I am planning to use the simulink software to run the USRP E110's? Can I directly program in the FPGA board of E 110 just by using Simulink?

No. Because the rest of the USRP E110 FPGA image is written in Verilog, you will have to modify the existing Verilog.

Considering that I have made the proper choice, I am also wondering how I should start. I have not done FPGA programming but I have worked with Matlab + Simulink frequently. Do I need to learn Xilinx System Generator before diving into this?

The best place to start is to compile your own FPGA image without making changes, and verify that it works. You will need a full copy (not the Webpack version) of ISE. You can just use the Makefile.E110 located in usrp2/top/E1x0 to compile it, no System Generator necessary. After you have verified that your image is OK, take a look at the custom plugins located in the usrp2/custom directory. The custom plugins provide a convenient way to interface with the existing signal path in the E110 FPGA image and modify data before sending it on to the host.

We're happy to answer additional questions from there.

Best,
Nick

Any feedback will be very appreciated.

Thanks,

Nazmul

--
Muhammad Nazmul Islam

Graduate Student
Electrical & Computer Engineering
Wireless Information & Networking Laboratory
Rutgers, USA.


USRP-users mailing list
USRP-users@lists.ettus.commailto:USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

FYI - If you're doing academic research but don't have a copy of the non-Webpack Xilinx ISE, you should have your advisor put in a request with the Xilinx University Program: www.xilinx.com/university<http://www.xilinx.com/university> - Sean ________________________________ From: usrp-users-bounces@lists.ettus.com [usrp-users-bounces@lists.ettus.com] on behalf of Nick Foster [nick@ettus.com] Sent: Thursday, April 26, 2012 9:28 AM To: Nazmul Islam Cc: usrp-users@lists.ettus.com Subject: Re: [USRP-users] Trying to learn FPGA programming in USRP E 110 On Wed, Apr 25, 2012 at 8:01 PM, Nazmul Islam <mnislam@winlab.rutgers.edu<mailto:mnislam@winlab.rutgers.edu>> wrote: Hello, My supervisors are want to conduct channel sounding experiments using embedded USRP's. They plan to put some USRP E110 in the field and these USRP's should perform inter-node channel estimation on their own. They asked me to learn FPGA programming in USRP. I don't have VHDL/Verilog programming experience. Therefore, I am planning to use the simulink software to run the USRP E110's? Can I directly program in the FPGA board of E 110 just by using Simulink? No. Because the rest of the USRP E110 FPGA image is written in Verilog, you will have to modify the existing Verilog. Considering that I have made the proper choice, I am also wondering how I should start. I have not done FPGA programming but I have worked with Matlab + Simulink frequently. Do I need to learn Xilinx System Generator before diving into this? The best place to start is to compile your own FPGA image without making changes, and verify that it works. You will need a full copy (not the Webpack version) of ISE. You can just use the Makefile.E110 located in usrp2/top/E1x0 to compile it, no System Generator necessary. After you have verified that your image is OK, take a look at the custom plugins located in the usrp2/custom directory. The custom plugins provide a convenient way to interface with the existing signal path in the E110 FPGA image and modify data before sending it on to the host. We're happy to answer additional questions from there. Best, Nick Any feedback will be very appreciated. Thanks, Nazmul -- Muhammad Nazmul Islam Graduate Student Electrical & Computer Engineering Wireless Information & Networking Laboratory Rutgers, USA. _______________________________________________ USRP-users mailing list USRP-users@lists.ettus.com<mailto:USRP-users@lists.ettus.com> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com
FS
Florian Schlembach
Tue, Oct 9, 2012 11:38 AM

Hi there,

I am also now starting to dive into FPGA programming and have a general
question.
As mentioned by Nick, i have just recompiled the source code via the
/top/N2x0/Makefile.N210R4 (its obviously an N210R4 in my case). After the
compiling process has finished, it ended up in the the newly created
build-N210R4 directory, comprising only the u2plus.bin as a .bin file.
I tried to upload this file (after the fw image) via the net_burner but it
said the following:

File "./usrp_n2xx_net_burner.py", line 293, in burn_fw
raise Exception("Error: incorrect FPGA image version. Please use the
correct image for device %s" % n2xx_revs[hw_rev][0])
Exception: Error: incorrect FPGA image version. Please use the correct
image for device n210_r4

Obviously, it doesnt seem to be the correct image version. Whats wrong? Do
I have to apply the ISE Project Navigator although I havent made any
changes? How is the general process in modifying the FPGA code?
Unfortunately, the documentation is quite sparse.

Would appreciate any kind of help! Thanks!

Cheers, Florian

On Thu, 26 Apr 2012 15:28:16 +0200, Nick Foster
nick@ettus.com wrote:

On Wed, Apr 25, 2012 at 8:01 PM, Nazmul Islam
mnislam@winlab.rutgers.eduwrote:

Hello,

My supervisors are want to conduct channel sounding experiments using
embedded USRP's. They plan to put some USRP E110 in the field and these
USRP's should perform inter-node channel estimation on their own. They
asked me to learn FPGA programming in USRP.

I don't have VHDL/Verilog programming experience. Therefore, I am
planning
to use the simulink software to run the USRP E110's? Can I directly
program
in the FPGA board of E 110 just by using Simulink?

No. Because the rest of the USRP E110 FPGA image is written in Verilog,
you
will have to modify the existing Verilog.

Considering that I have made the proper choice, I am also wondering how
I
should start. I have not done FPGA programming but I have worked with
Matlab + Simulink frequently. Do I need to learn Xilinx System Generator
before diving into this?

The best place to start is to compile your own FPGA image without making
changes, and verify that it works. You will need a full copy (not the
Webpack version) of ISE. You can just use the Makefile.E110 located in
usrp2/top/E1x0 to compile it, no System Generator necessary. After you
have
verified that your image is OK, take a look at the custom plugins located
in the usrp2/custom directory. The custom plugins provide a convenient
way
to interface with the existing signal path in the E110 FPGA image and
modify data before sending it on to the host.

We're happy to answer additional questions from there.

Best,
Nick

Any feedback will be very appreciated.

Thanks,

Nazmul

--
Muhammad Nazmul Islam

Graduate Student
Electrical & Computer Engineering
Wireless Information & Networking Laboratory
Rutgers, USA.


USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Hi there, I am also now starting to dive into FPGA programming and have a general question. As mentioned by Nick, i have just recompiled the source code via the /top/N2x0/Makefile.N210R4 (its obviously an N210R4 in my case). After the compiling process has finished, it ended up in the the newly created build-N210R4 directory, comprising only the u2plus.bin as a .bin file. I tried to upload this file (after the fw image) via the net_burner but it said the following: File "./usrp_n2xx_net_burner.py", line 293, in burn_fw raise Exception("Error: incorrect FPGA image version. Please use the correct image for device %s" % n2xx_revs[hw_rev][0]) Exception: Error: incorrect FPGA image version. Please use the correct image for device n210_r4 Obviously, it doesnt seem to be the correct image version. Whats wrong? Do I have to apply the ISE Project Navigator although I havent made any changes? How is the general process in modifying the FPGA code? Unfortunately, the documentation is quite sparse. Would appreciate any kind of help! Thanks! Cheers, Florian On Thu, 26 Apr 2012 15:28:16 +0200, Nick Foster <nick@ettus.com> wrote: > On Wed, Apr 25, 2012 at 8:01 PM, Nazmul Islam > <mnislam@winlab.rutgers.edu>wrote: > >> Hello, >> >> My supervisors are want to conduct channel sounding experiments using >> embedded USRP's. They plan to put some USRP E110 in the field and these >> USRP's should perform inter-node channel estimation on their own. They >> asked me to learn FPGA programming in USRP. >> >> I don't have VHDL/Verilog programming experience. Therefore, I am >> planning >> to use the simulink software to run the USRP E110's? Can I directly >> program >> in the FPGA board of E 110 just by using Simulink? >> > > No. Because the rest of the USRP E110 FPGA image is written in Verilog, > you > will have to modify the existing Verilog. > > >> >> Considering that I have made the proper choice, I am also wondering how >> I >> should start. I have not done FPGA programming but I have worked with >> Matlab + Simulink frequently. Do I need to learn Xilinx System Generator >> before diving into this? >> > > The best place to start is to compile your own FPGA image without making > changes, and verify that it works. You will need a full copy (not the > Webpack version) of ISE. You can just use the Makefile.E110 located in > usrp2/top/E1x0 to compile it, no System Generator necessary. After you > have > verified that your image is OK, take a look at the custom plugins located > in the usrp2/custom directory. The custom plugins provide a convenient > way > to interface with the existing signal path in the E110 FPGA image and > modify data before sending it on to the host. > > We're happy to answer additional questions from there. > > Best, > Nick > > >> >> Any feedback will be very appreciated. >> >> Thanks, >> >> Nazmul >> >> >> -- >> Muhammad Nazmul Islam >> >> Graduate Student >> Electrical & Computer Engineering >> Wireless Information & Networking Laboratory >> Rutgers, USA. >> >> >> _______________________________________________ >> USRP-users mailing list >> USRP-users@lists.ettus.com >> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com >>
FS
Florian Schlembach
Tue, Oct 9, 2012 11:58 AM

Allright, I have been searching for this problem for a couple of hours by
now and just found the solution here on the mailing list (thanks Josh!):
When uploading any fpga image to the USRP the fpga firmware name must
consist of the specific string, e.g. n210_r4.

Anyway, does anybody has some good resources to read up for getting into
the fpga programming, especially regarding the development with the ISE
suite?

On Tue, 09 Oct 2012 13:38:25 +0200, Florian Schlembach
florian.schlembach@tu-ilmenau.de wrote:

Hi there,

I am also now starting to dive into FPGA programming and have a general
question.
As mentioned by Nick, i have just recompiled the source code via the
/top/N2x0/Makefile.N210R4 (its obviously an N210R4 in my case). After
the compiling process has finished, it ended up in the the newly created
build-N210R4 directory, comprising only the u2plus.bin as a .bin file.
I tried to upload this file (after the fw image) via the net_burner but
it said the following:

File "./usrp_n2xx_net_burner.py", line 293, in burn_fw
  raise Exception("Error: incorrect FPGA image version. Please use  

the correct image for device %s" % n2xx_revs[hw_rev][0])
Exception: Error: incorrect FPGA image version. Please use the correct
image for device n210_r4

Obviously, it doesnt seem to be the correct image version. Whats wrong?
Do I have to apply the ISE Project Navigator although I havent made any
changes? How is the general process in modifying the FPGA code?
Unfortunately, the documentation is quite sparse.

Would appreciate any kind of help! Thanks!

Cheers, Florian

On Thu, 26 Apr 2012 15:28:16 +0200, Nick Foster
nick@ettus.com wrote:

On Wed, Apr 25, 2012 at 8:01 PM, Nazmul Islam
mnislam@winlab.rutgers.eduwrote:

Hello,

My supervisors are want to conduct channel sounding experiments using
embedded USRP's. They plan to put some USRP E110 in the field and these
USRP's should perform inter-node channel estimation on their own. They
asked me to learn FPGA programming in USRP.

I don't have VHDL/Verilog programming experience. Therefore, I am
planning
to use the simulink software to run the USRP E110's? Can I directly
program
in the FPGA board of E 110 just by using Simulink?

No. Because the rest of the USRP E110 FPGA image is written in Verilog,
you
will have to modify the existing Verilog.

Considering that I have made the proper choice, I am also wondering
how I
should start. I have not done FPGA programming but I have worked with
Matlab + Simulink frequently. Do I need to learn Xilinx System
Generator
before diving into this?

The best place to start is to compile your own FPGA image without making
changes, and verify that it works. You will need a full copy (not the
Webpack version) of ISE. You can just use the Makefile.E110 located in
usrp2/top/E1x0 to compile it, no System Generator necessary. After you
have
verified that your image is OK, take a look at the custom plugins
located
in the usrp2/custom directory. The custom plugins provide a convenient
way
to interface with the existing signal path in the E110 FPGA image and
modify data before sending it on to the host.

We're happy to answer additional questions from there.

Best,
Nick

Any feedback will be very appreciated.

Thanks,

Nazmul

--
Muhammad Nazmul Islam

Graduate Student
Electrical & Computer Engineering
Wireless Information & Networking Laboratory
Rutgers, USA.


USRP-users mailing list
USRP-users@lists.ettus.com
http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com

Allright, I have been searching for this problem for a couple of hours by now and just found the solution here on the mailing list (thanks Josh!): When uploading any fpga image to the USRP the fpga firmware name must consist of the specific string, e.g. n210_r4. Anyway, does anybody has some good resources to read up for getting into the fpga programming, especially regarding the development with the ISE suite? On Tue, 09 Oct 2012 13:38:25 +0200, Florian Schlembach <florian.schlembach@tu-ilmenau.de> wrote: > Hi there, > > I am also now starting to dive into FPGA programming and have a general > question. > As mentioned by Nick, i have just recompiled the source code via the > /top/N2x0/Makefile.N210R4 (its obviously an N210R4 in my case). After > the compiling process has finished, it ended up in the the newly created > build-N210R4 directory, comprising only the u2plus.bin as a .bin file. > I tried to upload this file (after the fw image) via the net_burner but > it said the following: > > File "./usrp_n2xx_net_burner.py", line 293, in burn_fw > raise Exception("Error: incorrect FPGA image version. Please use > the correct image for device %s" % n2xx_revs[hw_rev][0]) > Exception: Error: incorrect FPGA image version. Please use the correct > image for device n210_r4 > > Obviously, it doesnt seem to be the correct image version. Whats wrong? > Do I have to apply the ISE Project Navigator although I havent made any > changes? How is the general process in modifying the FPGA code? > Unfortunately, the documentation is quite sparse. > > Would appreciate any kind of help! Thanks! > > Cheers, Florian > > > On Thu, 26 Apr 2012 15:28:16 +0200, Nick Foster > <nick@ettus.com> wrote: > >> On Wed, Apr 25, 2012 at 8:01 PM, Nazmul Islam >> <mnislam@winlab.rutgers.edu>wrote: >> >>> Hello, >>> >>> My supervisors are want to conduct channel sounding experiments using >>> embedded USRP's. They plan to put some USRP E110 in the field and these >>> USRP's should perform inter-node channel estimation on their own. They >>> asked me to learn FPGA programming in USRP. >>> >>> I don't have VHDL/Verilog programming experience. Therefore, I am >>> planning >>> to use the simulink software to run the USRP E110's? Can I directly >>> program >>> in the FPGA board of E 110 just by using Simulink? >>> >> >> No. Because the rest of the USRP E110 FPGA image is written in Verilog, >> you >> will have to modify the existing Verilog. >> >> >>> >>> Considering that I have made the proper choice, I am also wondering >>> how I >>> should start. I have not done FPGA programming but I have worked with >>> Matlab + Simulink frequently. Do I need to learn Xilinx System >>> Generator >>> before diving into this? >>> >> >> The best place to start is to compile your own FPGA image without making >> changes, and verify that it works. You will need a full copy (not the >> Webpack version) of ISE. You can just use the Makefile.E110 located in >> usrp2/top/E1x0 to compile it, no System Generator necessary. After you >> have >> verified that your image is OK, take a look at the custom plugins >> located >> in the usrp2/custom directory. The custom plugins provide a convenient >> way >> to interface with the existing signal path in the E110 FPGA image and >> modify data before sending it on to the host. >> >> We're happy to answer additional questions from there. >> >> Best, >> Nick >> >> >>> >>> Any feedback will be very appreciated. >>> >>> Thanks, >>> >>> Nazmul >>> >>> >>> -- >>> Muhammad Nazmul Islam >>> >>> Graduate Student >>> Electrical & Computer Engineering >>> Wireless Information & Networking Laboratory >>> Rutgers, USA. >>> >>> >>> _______________________________________________ >>> USRP-users mailing list >>> USRP-users@lists.ettus.com >>> http://lists.ettus.com/mailman/listinfo/usrp-users_lists.ettus.com