Design Name always "TE Series Name" + Design name, for example "TE0720 Test Board"
HTML
<!--
TemplateRevision 1.0
Basic Notes
- export PDF to download, if vivado revision is changed!
- Template is for different design and SDSoC and examples, remove unused or wrong description!
-->
Scroll Only (inline)
Online version of this manual and other related documents can be found at https://wiki.trenz-electronic.de/display/PD/Trenz+Electronic+Documentation
Scroll pdf ignore
Table of contents
Table of Contents
outline
true
Overview
HTML
<!--
General Design description
-->
ZynqMP PS Design with Linux Example and simple frequency counter to measure SI5338 Reference CLK with Vivado HW-Manager.
Key Features
HTML
<!--
Add Basic Key Features of the design (should be tested)
-->
Excerpt
PetaLinux
SD
ETH
USB
I2C
RTC
FMeter
User LED (PCB REV03 only)
Modified FSBL for SI5338 programming
Special FSBL for QSPI programming
Revision History
HTML
<!--
- Add changes from design
- Export PDF to download, if vivado revision is changed!
-->
tables have all same width (web max 1200px and pdf full page(640px), flexible width or fix width on menu for single column can be used as before) -->
<style>
.wrapped{
width: 100% !important;
max-width: 1200px !important;
}
</style>
Page properties
hidden
true
id
Comments
Important General Note:
Export PDF to download, if vivado revision is changed!
Designate all graphics and pictures with a number and a description, Use "Scroll Title" macro
Use "Scroll Title" macro for pictures and table labels. Figure number must be set manually at the moment (automatically enumeration is planned by scrollPDF)
Figure template (note: inner scroll ignore/only only with drawIO object):
Scroll Title
anchor
Figure_xyz
title
Text
Scroll Ignore
Create DrawIO object here: Attention if you copy from other page, use
Scroll Only
image link to the generate DrawIO PNG file of this page. This is a workaround until scroll pdf export bug is fixed
Table template:
Layout macro can be use for landscape of large tables
Set column width manually(can be used for small tables to fit over whole page) or leave empty (automatically)
ZynqMP PS Design with Linux Example and simple frequency counter to measure SI5338 Reference CLK with Vivado HW-Manager. Wiki Resources page: http://trenz.org/te0820-info
Key Features
Page properties
hidden
true
id
Comments
Notes :
Add basic key futures, which can be tested with the design
Excerpt
PetaLinux
SD
ETH
USB
I2C
RTC
FMeter
MAC from EEPROM
User LED (PCB REV03 only)
Modified FSBL for SI5338 programming
Special FSBL for QSPI programming
Revision History
Page properties
hidden
true
id
Comments
Notes :
add every update file on the download
add design changes on description
Scroll Title
anchor
Table_DRH
title
Design Revision History
Scroll Table Layout
orientation
portrait
sortDirection
ASC
repeatTableHeaders
default
style
widths
sortByColumn
1
sortEnabled
false
cellHighlighting
true
Date
Vivado
Project Built
Authors
Description
2019-02-21
2018.3
John Hartfiel
TE Script update
rework of the FSBLs
SI5338 CLKBuilder Pro Project
some additional Linux features
MAC from EEPROM
new assembly variants
remove special compiler flags, which was needed in 2018.2
Additional Software Template for SDK/HSI and apps_list.csv with settings for HSI
PetaLinux
<design name>/os/petalinux
PetaLinux template with current configuration
Additional Sources
Scroll Title
anchor
Table_ADS
title
Additional design sources
Scroll Table Layout
orientation
portrait
sortDirection
ASC
repeatTableHeaders
default
style
widths
sortByColumn
1
sortEnabled
false
cellHighlighting
true
Type
Location
Notes
SI5338
<design name>/misc/Si5338
SI5338 Project with current PLL Configuration
init.sh
<design name>/sd/
Additional Initialization Script for Linux
Prebuilt
Page properties
hidden
true
id
Comments
Notes :
prebuilt files
Template Table:
Scroll Title
anchor
Table_PF
title
Prebuilt files
Scroll Table Layout
orientation
portrait
sortDirection
ASC
repeatTableHeaders
default
style
widths
sortByColumn
1
sortEnabled
false
cellHighlighting
true
File
File-Extension
Description
BIF-File
*.bif
File with description to generate Bin-File
BIN-File
*.bin
Flash Configuration File with Boot-Image (Zynq-FPGAs)
BIT-File
*.bit
FPGA (PL Part) Configuration File
DebugProbes-File
*.ltx
Definition File for Vivado/Vivado Labtools Debugging Interface
Debian SD-Image
*.img
Debian Image for SD-Card
Diverse Reports
---
Report files in different formats
Hardware-Platform-Specification-Files
*.hdf
Exported Vivado Hardware Specification for SDK/HSI and PetaLinux
LabTools Project-File
*.lpr
Vivado Labtools Project File
MCS-File
*.mcs
Flash Configuration File with Boot-Image (MicroBlaze or FPGA part only)
MMI-File
*.mmi
File with BRAM-Location to generate MCS or BIT-File with *.elf content (MicroBlaze only)
OS-Image
*.ub
Image with Linux Kernel (On Petalinux optional with Devicetree and RAM-Disk)
Software-Application-File
*.elf
Software Application for Zynq or MicroBlaze Processor Systems
SREC-File
*.srec
Converted Software Application for MicroBlaze Processor Systems
Scroll Title
anchor
Table_PF
title
Prebuilt files (only on ZIP with prebult content)
Scroll Table Layout
orientation
portrait
sortDirection
ASC
repeatTableHeaders
default
style
widths
sortByColumn
1
sortEnabled
false
cellHighlighting
true
File
File-Extension
Description
BIF-File
*.bif
File with description to generate Bin-File
BIN-File
*.bin
Flash Configuration File with Boot-Image (Zynq-FPGAs)
BIT-File
*.bit
FPGA (PL Part) Configuration File
DebugProbes-File
*.ltx
Definition File for Vivado/Vivado Labtools Debugging Interface
Diverse Reports
---
Report files in different formats
Hardware-Platform-Specification-Files
*.hdf
Exported Vivado Hardware Specification for SDK/HSI and PetaLinux
LabTools Project-File
*.lpr
Vivado Labtools Project File
OS-Image
*.ub
Image with Linux Kernel (On Petalinux optional with Devicetree and RAM-Disk)
Software-Application-File
*.elf
Software Application for Zynq or MicroBlaze Processor Systems
Download
Reference Design is only usable with the specified Vivado/SDK/PetaLinux/SDx version. Do never use different Versions of Xilinx Software for the same Project.
Page properties
hidden
true
id
Comments
Important set new Vivado version link on every Design update of new vivado version!
The Trenz Electronic FPGA Reference Designs are TCL-script based project. Command files for execution will be generated with "_create_win_setup.cmd" on Windows OS and "_create_linux_setup.sh" on Linux OS.
TE Scripts are only needed to generate the vivado project, all other additional steps are optional and can also executed by Xilinx Vivado/SDK GUI. For currently Scripts limitations on Win and Linux OS see: Project Delivery Currently limitations of functionality
_create_win_setup.cmd/_create_linux_setup.sh and follow instructions on shell: Image Added
Press 0 and enter to start "Module Selection Guide"
(optional Win OS) Generate Virtual Drive or use short directory for the reference design (for example x:\<design name>)
Create Project (follow instruction of the product selection guide), settings file will be configured automatically during this process
(optional for manual changes) Select correct device and Xilinx install path on "design_basic_settings.cmd" and create Vivado project with "vivado_create_project_guimode.cmd" Note: Select correct one, see TE Board Part Files
Create HDF and export to prebuilt folder
Run on Vivado TCL: TE::hw_build_design -export_prebuilt Note: Script generate design and export files into \prebuilt\hardware\<short dir>. Use GUI is the same, except file export to prebuilt folder
Create Linux (bl31.elf, uboot.elf and image.ub) with exported HDF
HDF is exported to "prebuilt\hardware\<short name>" Note: HW Export from Vivado GUI create another path as default workspace.
Note: Depending on CPLD Firmware and Boot Mode settings, QSPI boot with Linux image on SD or complete SD Boot is possible.
QSPI
Optional for Boot.bin on QSPI Flash and image.ub on SD.
Connect JTAG and power on carrier with module
Open Vivado Project with "vivado_open_existing_project_guimode.cmd" or if not created, create with "vivado_create_project_guimode.cmd"
Type on Vivado TCL Console: TE::pr_program_flash_binfile -swapp u-boot Note: To program with SDK/Vivado GUI, use special FSBL (zynqmp_fsbl_flash) on setup optional "TE::pr_program_flash_binfile -swapp hello_te0820" possible
Copy image.ub on SD-Card
For correct prebuilt file location, see <design_name>/prebuilt/readme_file_location.txt
Insert SD-Card
SD
Use this description for CPLD Firmware with SD Boot selectable.
Copy image.ub and Boot.bin on SD-Card.
For correct prebuilt file location, see <design_name>/prebuilt/readme_file_location.txt
Select SD Card or QSPI as Boot Mode (Depends on used programming variant) Note: See TRM of the Carrier, which is used.
Power On PCB Note: 1. ZynqMP Boot ROM loads PMU Firmware and FSBL from SD/QSPI Flash into OCM, 2. FSBL loads ATF(bl31.elf) and U-boot from SD into DDR, 3. U-boot load Linux from SD into DDR
Linux
Open Serial Console (e.g. putty)
Speed: 115200
COM Port: Win OS, see device manager, Linux OS see dmesg |grep tty (UART is *USB1)
Linux Console: Note: Wait until Linux boot finished For Linux Login use:
User Name: root
Password: root
You can use Linux shell now.
I2C 0 Bus type: i2cdetect -y -r 0
RTC check: dmesg | grep rtc
ETH0 works with udhcpc
USB type "lsusb" or connect USB2.0 device
Option Features
Webserver to get access to Zynq
insert IP on web browser to start web interface
init.sh scripts
add init.sh script on SD, content will be load automatically on startup (template included in ./misc/SD)
Vivado HW Manager
Page properties
hidden
true
id
Comments
Note:
Add picture of HW Manager
add notes for the signal either groups or topics, for example:
Control:
add controllable IOs with short notes..
Monitoring:
add short notes for signals which will be monitored only
SI5338_CLK0 Counter:
Open Vivado HW-Manager and add VIO signal to dashboard (*.ltx located on prebuilt folder).Set radix from VIO signals to unsigned integer.Note: Frequency Counter is inaccurate and displayed unit is Hz
Additional HW Requirements:
...
Content
HTML
<!--
Remove unused content
-->
For general structure and of the reference design, see Project Delivery
Design Sources
...
Additional Sources
...
Prebuilt
HTML
<!--
<table width="100%">
<tr> <th>File </th> <th>File-Extension</th> <th>Description </th> </tr>
<tr> <td>BIF-File </td> <td>*.bif </td> <td>File with description to generate Bin-File </td> </tr>
<tr> <td>BIN-File </td> <td>*.bin </td> <td>Flash Configuration File with Boot-Image (Zynq-FPGAs) </td> </tr>
<tr> <td>BIT-File </td> <td>*.bit </td> <td>FPGA Configuration File </td> </tr>
<tr> <td>DebugProbes-File </td> <td>*.ltx </td> <td>Definition File for Vivado/Vivado Labtools Debugging Interface </td> </tr>
<tr> <td>Debian SD-Image </td> <td>*.img </td> <td>Debian Image for SD-Card </td> </tr>
<tr> <td>Diverse Reports </td> <td> --- </td> <td>Report files in different formats </td> </tr>
<tr> <td>Hardware-Platform-Specification-Files</td> <td>*.hdf </td> <td>Exported Vivado Hardware Specification for SDK/HSI </td> </tr>
<tr> <td>LabTools Project-File </td> <td>*.lpr </td> <td>Vivado Labtools Project File </td> </tr>
<tr> <td>MCS-File </td> <td>*.mcs </td> <td>Flash Configuration File with Boot-Image (MicroBlaze or FPGA part only) </td> </tr>
<tr> <td>MMI-File </td> <td>*.mmi </td> <td>File with BRAM-Location to generate MCS or BIT-File with *.elf content (MicroBlaze only) </td> </tr>
<tr> <td>OS-Image </td> <td>*.ub </td> <td>Image with Linux Kernel (On Petalinux optional with Devicetree and RAM-Disk) </td> </tr>
<tr> <td>Software-Application-File </td> <td>*.elf </td> <td>Software Application for Zynq or MicroBlaze Processor Systems </td> </tr>
<tr> <td>SREC-File </td> <td>*.srec </td> <td>Converted Software Application for MicroBlaze Processor Systems </td> </tr>
</table>
-->
...
File
...
File-Extension
...
Description
...
Download
Reference Design is only usable with the specified Vivado/SDK/PetaLinux/SDx version. Do never use different Versions of Xilinx Software for the same Project.
The Trenz Electronic FPGA Reference Designs are TCL-script based project. Command files for execution will be generated with "_create_win_setup.cmd" on Windows OS and "_create_linux_setup.sh" on Linux OS.
TE Scripts are only needed to generate the vivado project, all other additional steps are optional and can also executed by Xilinx Vivado/SDK GUI. For currently Scripts limitations on Win and Linux OS see: Project Delivery Currently limitations of functionality
_create_win_setup.cmd/_create_linux_setup.sh and follow instructions on shell: Image Removed
Press 0 and enter for minimum setup
(optional Win OS) Generate Virtual Drive or use short directory for the reference design (for example x:\<design name>)
Create Project
Select correct device and Xilinx install path on "design_basic_settings.cmd" and create Vivado project with "vivado_create_project_guimode.cmd" Note: Select correct one, see TE Board Part Files
Create HDF and export to prebuilt folder
Run on Vivado TCL: TE::hw_build_design -export_prebuilt Note: Script generate design and export files into \prebuilt\hardware\<short dir>. Use GUI is the same, except file export to prebuilt folder
Create Linux (bl31.elf, uboot.elf and image.ub) with exported HDF
HDF is exported to "prebuilt\hardware\<short name>" Note: HW Export from Vivado GUI create another path as default workspace.
Note: Depending on CPLD Firmware and Boot Mode settings, QSPI boot with Linux image on SD or complete SD Boot is possible.
QSPI
Optional for Boot.bin on QSPI Flash and image.ub on SD.
Connect JTAG and power on carrier with module
Open Vivado Project with "vivado_open_existing_project_guimode.cmd" or if not created, create with "vivado_create_project_guimode.cmd"
Type on Vivado TCL Console: TE::pr_program_flash_binfile -swapp u-boot Note: To program with SDK/Vivado GUI, use special FSBL (zynqmp_fsbl_flash) on setup optional "TE::pr_program_flash_binfile -swapp hello_te0820" possible
Copy image.ub on SD-Card
For correct prebuilt file location, see <design_name>/prebuilt/readme_file_location.txt
Insert SD-Card
SD
Use this description for CPLD Firmware with SD Boot selectable.
Copy image.ub and Boot.bin on SD-Card.
For correct prebuilt file location, see <design_name>/prebuilt/readme_file_location.txt
Select SD Card or QSPI as Boot Mode (Depends on used programming variant) Note: See TRM of the Carrier, which is used.
Power On PCB Note: 1. ZynqMP Boot ROM loads PMU Firmware and FSBL from SD/QSPI Flash into OCM, 2. FSBL loads ATF(bl31.elf) and U-boot from SD into DDR, 3. U-boot load Linux from SD into DDR
Linux
Open Serial Console (e.g. putty)
Speed: 115200
COM Port: Win OS, see device manager, Linux OS see dmesg |grep tty (UART is *USB1)
Linux Console: Note: Wait until Linux boot finished For Linux Login use:
User Name: root
Password: root
You can use Linux shell now.
I2C 0 Bus type: i2cdetect -y -r 0
RTC check: dmesg | grep rtc
ETH0 works with udhcpc
USB type "lsusb" or connect USB2.0 device
...
SI5338_CLK0 Counter:
Open Vivado HW-Manager and add VIO signal to dashboard (*.ltx located on prebuilt folder).
Set radix from VIO signals to unsigned integer. Note: Frequency Counter is inaccurate and displayed unit is Hz
General documentation how you work with these project will be available on Si5338
Appx. A: Change History and Legal Notices
Document Change History
To get content of older revision got to "Change History" of this page and select older document revision number.
Page properties
hidden
true
id
Comments
Note this list must be only updated, if the document is online on public doc!
It's semi automatically, so do following
Add new row below first
Copy "Page Information Macro(date)" Macro-Preview, Metadata Version number, Author Name and description to the empty row. Important Revision number must be the same as the Wiki document revision number Update Metadata = "Page Information Macro (current-version)" Preview+1 and add Author and change description. --> this point is will be deleted on newer pdf export template
Metadata is only used of compatibility of older exports
Scroll Title
anchor
Table_dch
title
Document change history.
Scroll Table Layout
orientation
portrait
sortDirection
ASC
repeatTableHeaders
default
style
widths
2*,*,3*,4*
sortByColumn
1
sortEnabled
false
cellHighlighting
true
HTML
<!--
Generate new entry:
1:add new row below first
2:Copy Page Information Macro(date+user) Preview, Page Information Macro Preview
3.Update Metadate =Page Information Macro Preview+1
-->