fpga & firmware source tree description

This is merely a historical archive of years 2008-2021, before the migration to mailman3.

A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/UmTRX@lists.osmocom.org/.

Andrew Karpenkov andrew.karpenkov at gmail.com
Wed May 7 20:24:20 UTC 2014


 Alex, please see my comments below.

asking the question I mean how .rmi file translates in fpga bit file.
> After loading fpga, contents load  in ram and begin executing?

Fpga image already contain  ZPU bootloader image (bootloader.rmi or
bootloader_umtrx.rmi). After loading FPGA, ZPU automaticaly have bootloader
firmware in internal RAM.
This
<https://github.com/chemeris/UHD-Fairwaves/blob/fairwaves/umtrx/fpga/usrp2/top/N2x0/u2plus_core.v#L433>lines
in u2plus_core.v correspond for this.

Have you ise project file for umtrx_v2 without useless files?

I'm not sure that correctly understand you. What you mean under useless
files? Files that isn't connected with top module file or what?

How i can find which modules are unused?


​


 In this doc: https://code.google.com/p/umtrx/wiki/BootingAndSafeMode
> what means "FPGA image with built in ZPU bootloader" and "ZPU image" ?
> at  http://people.osmocom.org/ipse/umtrx-v2/current/
> we can found 3 files:
> u2plus_umtrx_v2.bin - ?
> u2plus_umtrx_v2.bit - FPGA image with built in ZPU bootloader?
> usrp2p_txrx_uhd.bin - ZPU image?


*u2plus_umtrx_v2.bin* - FPGA image with built in ZPU bootloader. You can
download this image into SPI flash over Ethernet by this command:
*./usrp_n2xx_net_burner.py --addr=<ip address> --fpga=u2plus_umtrx_v2.bin*
You can read more about UmTRX booting process at this
page<http://umtrx.org/hardware/booting/>
.

*u2plus_umtrx_v2.bit* - FPGA image with built in ZPU bootloader. This image
needed for you if you wish flash fpga by using programming cable (Xilinx
Platform Cable USB, Digilent JTAG HS1 Programming Cable, etc.)

*usrp2p_txrx_uhd.bin* - ZPU image. You can download this image into SPI
flash over Ethernet by this command:
*./usrp_n2xx_net_burner.py --addr=<ip address> --fw=usrp2p_txrx_uhd.bin*

after zpu toolchain we have usrp2p_txrx_uhd.bin, convert it to
> bootloader.rmi and include it to fpga project
>
 No,  usrp2p_txrx_uhd.bin is used only for programming ZPU firmware image
into flash. You need only bootloader.rmi file which you can find at this
directory firmware\zpu\build\usrp2p\bootloader\ after compiling ZPU
firmware.

after building  we have fpga image with built in zpu image?
>
Yes.


> How include in fpga only zpu loader, not zpu image?
>
Please, use this command after building ZPU firmware:


cp <UHD-dir>/firmware/zpu_build/usrp2p/bootloader/bootloader.rmi
<UHD-path>/fpga/usrp2/top/N2x0/bootloader_umtrx.rmi

And where i can see flash map?

bootloader_utils.h<https://github.com/chemeris/UHD-Fairwaves/blob/fairwaves/umtrx/firmware/zpu/usrp2p/bootloader_utils.h>-for
SPI flash which stores FPGA work and safe images and work ZPU image.

P.S. Please, use in further "Reply to all" to keep informed of all in
umtrx at lists.osmocom.org. This may be interesting for other people's.

Regards,
Andrew Karpenkov


2014-05-07 12:21 GMT+04:00 alex korolev <nik135 at mail.ru>:

> Andrew, thnx for your answer.
>
> I have no problems with the fpga assembly, but lack of understanding how
> this works.
>
> asking the question I mean how .rmi file translates in fpga bit file.
> After loading fpga, contents load  in ram and begin executing?
>
> Have you ise project file for umtrx_v2 without useless files?
>
> Because my ise project, generated from makefile has for example
> "sd_spi_wb.v " & "ram_loader.v".
> You say that these files are not needed, i try remove it, the project
> build without errors.
>
> How i can find which modules are unused?
>
> In this doc: https://code.google.com/p/umtrx/wiki/BootingAndSafeMode
>
> what means "*FPGA* image with built in ZPU bootloader" and "*ZPU* image" ?
>
> at  http://people.osmocom.org/ipse/umtrx-v2/current/
> we can found 3 files:
>
> u2plus_umtrx_v2.bin<http://people.osmocom.org/ipse/umtrx-v2/current/u2plus_umtrx_v2.bin>- ?
> u2plus_umtrx_v2.bit -
> <http://people.osmocom.org/ipse/umtrx-v2/current/u2plus_umtrx_v2.bit>
> *FPGA* image with built in ZPU bootloader?
> usrp2p_txrx_uhd.bin<http://people.osmocom.org/ipse/umtrx-v2/current/usrp2p_txrx_uhd.bin>-
> *ZPU* image?
>
>
> after zpu toolchain we have usrp2p_txrx_uhd.bin<http://people.osmocom.org/ipse/umtrx-v2/current/usrp2p_txrx_uhd.bin>,
> convert it to bootloader.rmi and include it to fpga project
> after building  we have fpga image with built in zpu image?
>
> How include in fpga only zpu loader, not zpu image?
>
> And where i can see flash map?
>
>
> thanks in advance!
>
>
> Wed, 7 May 2014 00:40:27 +0400 от Andrew Karpenkov <
> andrew.karpenkov at gmail.com>:
>
>   Alex, please see my comments below.
>
> I found this link:
> http://novelflash.com/wiki/index.php?title=USRP2_HDL_Primer
> Is this information is correct?
>
> Correct, but not for UmTRX. UmTRX architecture based on N2x0 USRP, wich
> haven't  ram_loader and sd card.
>
>  I don't understand, how .rmi code processed, and how this code executed.
>
> Build instructions for ZPU software (including bootloader.rmi) described
> here <https://code.google.com/p/umtrx/wiki/BuildingUHD>.
>
> mkdir <UHD-dir>/firmware/zpu_build
>
>
>
>
> cd <UHD-dir>/firmware/zpu_build
>
>
>
> export PATH=$PATH:<path-to-zpu-elf-gcc>
>
>
>
>
> cmake ../zpu
> make
>
> After this, you need to update the ZPU bootloader in fpga project:
>
> cp <UHD-dir>/firmware/zpu_build/usrp2p/bootloader/bootloader.rmi <UHD-path>/fpga/usrp2/top/N2x0/bootloader_umtrx.rmi
>
> And now, you can compile fpga project:
>
> cd <UHD-path>/fpga/usrp2/top/N2x0
>
>
>
>
> make UmTRX
>
> Where (*.v file)clock description i can found?
>
> All clocks are forming in u2plus.v<https://github.com/fairwaves/UHD-Fairwaves/blob/fairwaves/umtrx/fpga/usrp2/top/N2x0/u2plus.v>file (pll_clk.xco and pll_rx.xco).
>
>  For which purposes ram needed?
>
> RAM is needed to run programs by ZPU.
>
> Regards,
> Andrew Karpenkov
>
>
> 2014-05-06 10:45 GMT+04:00 alex korolev <nik135 at mail.ru<https://e.mail.ru/compose/?mailto=mailto%3anik135@mail.ru>
> >:
>
> Hello, Andrew!
>
> Thanks for links, i have it already.
>
> I needed for fpga project description(architecture & etc).
>
> I found this link:
> http://novelflash.com/wiki/index.php?title=USRP2_HDL_Primer
> Is this information is correct?
>
>  I don't understand, how .rmi code processed, and how this code executed.
>  Where (*.v file) clock description i can found?
>
>  For which purposes ram needed?
>
> Hopefully, not too many questions :)
>
> Thanks for your time!
>
>
> Mon, 5 May 2014 18:39:29 +0400 от Andrew Karpenkov <
> andrew.karpenkov at gmail.com<https://e.mail.ru/compose/?mailto=mailto%3aandrew.karpenkov@gmail.com>
> >:
>
>   Hello, Alex!
>
> All documentation is available on the following websites:
> https://code.google.com/p/umtrx/
> http://umtrx.org/
> https://fairwaves.co
>
> If you have any further questions, I'll be glad to answer your questions.
>
> Regards,
> Andrew Karpenkov
>
>
> 2014-05-05 16:38 GMT+04:00 alex korolev <nik135 at mail.ru<https://e.mail.ru/compose/?mailto=mailto%3anik135@mail.ru>
> >:
>
>
> Hello All!
>
> Where i can find information about fpga and firmware architecture?
>
> I will be grateful for any information :)
>
>
> С уважением,
> alex korolev
> nik135 at mail.ru <https://e.mail.ru/compose/?mailto=mailto%3anik135@mail.ru>
>
>
>
>
> С уважением,
> alex korolev
> nik135 at mail.ru <https://e.mail.ru/compose/?mailto=mailto%3anik135@mail.ru>
>
>
>
>
> С уважением,
> alex korolev
> nik135 at mail.ru
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/umtrx/attachments/20140508/e471eb04/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ISE_used_unused_files_in_project.png
Type: image/png
Size: 52532 bytes
Desc: not available
URL: <http://lists.osmocom.org/pipermail/umtrx/attachments/20140508/e471eb04/attachment.png>


More information about the UmTRX mailing list