Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
reference:programmable-logic:eclypse-z7:start [2019/11/06 22:44]
Arthur Brown [Peripherals]
reference:programmable-logic:eclypse-z7:start [2020/04/22 16:22] (current)
James Colvin temporary fix to remove tooltips
Line 16: Line 16:
 | Bullet = 2 SYZYGY Standard Interfaces for high-speed data transfer in modular systems | Bullet = 2 SYZYGY Standard Interfaces for high-speed data transfer in modular systems
 | Bullet = 2 Pmod connectors for additional system modularity | Bullet = 2 Pmod connectors for additional system modularity
-| Bullet = 1 GB DDR3L with 32-bit bus @ 1066 Mhz+| Bullet = 1 GB DDR3L with 32-bit bus @ 1066 MT/s
 | Bullet = USB and Ethernet connectivity | Bullet = USB and Ethernet connectivity
-| Programmable from JTAG, Quad-SPI flash, and microSD card+Bullet = Programmable from JTAG, Quad-SPI flash, and microSD card
  
 | Header = Key FPGA Specifications | Header = Key FPGA Specifications
Line 27: Line 27:
 | Block RAM = 630 KB | Block RAM = 630 KB
 | DSP Slices = 220 | DSP Slices = 220
-| Clock Resources = Zynq PLL with 4 outputs \\ 4 PLLs \\ 4 MMCMs \\ 125 MHz external clock +| Clock Resources = Zynq PLL with 4 outputs \\ 4 PLLs \\ 4 MMCMs \\ 125 <​nowiki>​MHz</​nowiki> ​external clock 
-| Internal ADC = Dual-channel,​ 1 MSPS+| Internal ​<​nowiki>​ADC</​nowiki> ​= Dual-channel,​ 1 MSPS
  
 | Header = Connectivity | Header = Connectivity
Line 37: Line 37:
  
 | Header = Memories | Header = Memories
-| DDR3 = 1024 MB / 1066 Mbps +| DDR3 = 1024 <​nowiki>​MB</​nowiki> ​/ 1066 MT/s 
-| QSPI Flash = 16 MB+| QSPI Flash = 16 <​nowiki>​MB</​nowiki>​
 | SD = microSD card connector | SD = microSD card connector
  
Line 49: Line 49:
 | Pmod Connectors = 3.3V logic standard, 5V tolerant | Pmod Connectors = 3.3V logic standard, 5V tolerant
 | SYZYGY Connectors = 1.2V to 3.3V, 2A budget shared by both connectors \\ Automatically negotiated on board bring-up | SYZYGY Connectors = 1.2V to 3.3V, 2A budget shared by both connectors \\ Automatically negotiated on board bring-up
-| FPGA Fan = FIXMEManaged ​by Eclypse Platform MCU+| FPGA Fan = Managed ​by Eclypse Platform MCU
 | Header = Physical | Header = Physical
 | Width = 99 mm (3.9 in) | Width = 99 mm (3.9 in)
Line 61: Line 61:
   * [[getting-started-guide|Eclypse Z7 Getting Started Guide]]   * [[getting-started-guide|Eclypse Z7 Getting Started Guide]]
   * [[reference-manual]]   * [[reference-manual]]
 +  * [[git|Eclypse Z7 Git Repository Documentation]]
   * [[https://​www.xilinx.com/​support/​documentation/​data_sheets/​ds180_7Series_Overview.pdf|Xilinx 7 Series FPGAs Data Sheet: Overview]]   * [[https://​www.xilinx.com/​support/​documentation/​data_sheets/​ds180_7Series_Overview.pdf|Xilinx 7 Series FPGAs Data Sheet: Overview]]
-  * {{reference:​programmable-logic:​eclypse-z7:​eclypse_z7_sch.pdf|Eclypse Z7 Schematic}} 
   * [[https://​github.com/​Digilent/​digilent-xdc|Master XDC Files for Digilent Boards]]   * [[https://​github.com/​Digilent/​digilent-xdc|Master XDC Files for Digilent Boards]]
   * [[https://​github.com/​Digilent/​vivado-boards|Board Files for Digilent Boards]]   * [[https://​github.com/​Digilent/​vivado-boards|Board Files for Digilent Boards]]
 +  * {{reference:​programmable-logic:​eclypse-z7:​eclypse_z7_sch.pdf|Eclypse Z7 Schematic}}
   * {{https://​digilent.s3-us-west-2.amazonaws.com/​resources/​programmable-logic/​eclypse/​Eclypse-PMCU-Specification-Public.pdf|Eclypse Platform MCU Specification}}   * {{https://​digilent.s3-us-west-2.amazonaws.com/​resources/​programmable-logic/​eclypse/​Eclypse-PMCU-Specification-Public.pdf|Eclypse Platform MCU Specification}}
 +  * {{:​reference:​programmable-logic:​eclypse-z7:​decutil.1.pdf|Digilent Eclypse Utility (decutil) Manual}}
 +    * //The Digilent Eclypse Utility is a command line tool available within Digilent-provided Linux system images that allows the user to communicate with the Eclypse PMCU.//
 +  * {{ :​reference:​programmable-logic:​eclypse-z7:​eclypse_z7_enclosure_assembly_guide.pdf | Eclypse Z7 Enclosure Assembly Guide}}
  
 ---- ----
Line 71: Line 75:
 ===== Peripherals ===== ===== Peripherals =====
  
-  * The Eclypse Z7 is compatible with [[reference:​zmod:​start|Digilent Zmods]], as well as other modules that conform to Opal Kelly'​s [[https://​syzygyfpga.io|SYZYGY Standard Specification]].+  * The Eclypse Z7 is compatible with [[reference:​zmod:​start|Digilent Zmods]], as well as other modules that conform to Opal Kelly'​s [[https://​syzygyfpga.io|SYZYGY Standard Specification]]. A list of Digilent Zmods can be found through their start page, linked above. Digilent provides IP cores, hierarchical blocks, software libraries, and example projects to support the use of each Digilent Zmod. Guides and documentation on the use of these systems can be found below.
  
   * The Eclypse Z7 is compatible with modules that conform to Digilent'​s Pmod™ Specification,​ including Digilent'​s line of [[reference:​pmod:​start|Pmods]].   * The Eclypse Z7 is compatible with modules that conform to Digilent'​s Pmod™ Specification,​ including Digilent'​s line of [[reference:​pmod:​start|Pmods]].
Line 77: Line 81:
 ---- ----
  
-===== Tutorials ​=====+===== Development Environments ​===== 
 +**Important:​** //The Eclypse Z7's tutorials, projects, and system images target Vivado 2019.1, Xilinx SDK 2019.1, and Petalinux 2019.1, and are not officially supported in other versions of Vivado.// 
 +\\ \\ 
 +== Vivado and Xilinx SDK == 
 +  * [[:​vivado:​installing-vivado:​start]] covers first-time installation of Vivado, Xilinx SDK, and board files to support Vivado IPI flows for Digilent boards.
  
-**Important:​** //The Eclypse Z7's tutorials, projects, and system ​images ​target Vivado 2019.and Petalinux ​2019.1and are not officially supported in other versions ​of Vivado.//+== Petalinux == 
 +  ​Petalinux is a tool created by Xilinxused for the creation ​and modification of Linux images ​for Xilinx chips, including the Zynq-7000\\ Xilinx'​s [[https://​www.xilinx.com/​support/​documentation/​sw_manuals/​xilinx2019_1/​ug1144-petalinux-tools-reference-guide.pdf|Petalinux Tools Reference Guide (UG1144)]] covers installation ​and usage of Petalinux. ​Chapter 2 discusses the installation process. \\ **Note:** //For Windows usersDigilent recommends the use of either a dual-boot Linux setup or virtual machine that fits the requirements specified in UG1144, linked above.//
  
-== Setting Up Development Environments == +---- 
-  * [[:​vivado:​installing-vivado:​start]] +===== Example Projects =====
-    * //This tutorial covers first-time installation of Vivado, Xilinx SDK, and board files to support Vivado IPI flows for Digilent boards.// +
-  * [[installing-petalinux]] +
-    * //This tutorial covers first-time installation of Petalinux.//​+
  
-== Software == +There are three categories of example project available for the Eclypse Z7, //Petalinux Software Projects//, //Baremetal Software Projects//, and //​Standalone Hardware Projects//​. 
-  * [[developing-software]] + 
-    * //This tutorial covers using Xilinx SDK to develop and run applications ​on an Eclypse ​running Petalinux//+  * //Petalinux Software Projects// target an Eclypse running a Linux <​nowiki>​OS</​nowiki>​ from an SD card, and at minimum require Xilinx SDK and a prebuilt Linux image to be built and run on the board. Changes to the hardware design require the use of Vivado and Petalinux to build the hardware and reconfigure the <​nowiki>​OS</​nowiki>​ for the modifications. 
 +  * //Baremetal Software Projects// use the Zynq Processing System (PS) and Programmable Logic (PL), and at minimum require Xilinx SDK and a prebuilt hardware handoff file (HDF) to be built and run on the board. Changes to the hardware design require the use of Vivado to modify and build the new new hardware, and to export a new HDF. 
 +  * //​Standalone Hardware Projects// use only the Zynq Programmable Logic (PL), and require Vivado to be built and run on the board. 
 + 
 +The table below lists each demo available for the Eclypse Z7: 
 + 
 +^ Demo Name ^ Type of Project ^ Description ^ Setup Instructions ^ 
 +| Zmod <​nowiki>​ADC</​nowiki>​ Demo | Baremetal and Petalinux Software | Captures data from the <​nowiki>​ADC</​nowiki>​ and writes it out to a file and standard out. | Found in Section 3 of the [[reference:​zmod:​zmodbaselibraryuserguide]] | 
 +| Zmod <​nowiki>​DAC</​nowiki>​ Demo | Baremetal and Petalinux Software | Outputs a ramp waveform through one of the <​nowiki>​DAC</​nowiki>​ channels. | Found in Section 3 of the [[reference:​zmod:​zmodbaselibraryuserguide]] | 
 +| Out-of-Box Demo | Baremetal Software | Programmed into Flash during manufacturing. Can be used to ensure that the board is functional. | **Coming Soon** to the [[https://​github.com/​Digilent/​Eclypse-Z7-HW/​tree/​oob/​master|OOB Demo's Github README]] | 
 +| Low Level Zmod <​nowiki>​ADC</​nowiki>​ + <​nowiki>​DAC</​nowiki>​ Demo | Standalone Hardware | Captures data from the <​nowiki>​ADC</​nowiki>,​ and outputs the result of passing that signal through a FIR filter through the <​nowiki>​DAC</​nowiki>​. | [[reference:​programmable-logic:​eclypse-z7:​low_level_zmod_adc_dac]] | 
 + 
 +---- 
 +===== Tutorials, Guides, and Documentation for the Eclypse Platform ===== 
 + 
 +=== Software ==
 + 
 +  * [[reference:​zmod:​zmodbaselibraryuserguide]] 
 +    * The documentation of the Zmod Base Library includes the steps necessary to to run one of several Digilent-provided software examples ​on the Eclypse ​Platform. 
 + 
 +=== Hardware ===
  
-== Hardware == 
   * [[:​vivado:​getting-started-with-ipi:​start]]   * [[:​vivado:​getting-started-with-ipi:​start]]
-    * //This tutorial covers ​creating ​a basic baremetal application that blinks an LED using Vivado IPI to design the system and Xilinx SDK to develop the application.// +    * This tutorial covers ​the creation of a basic baremetal application that blinks an <​nowiki>​LED</​nowiki>​. ​Vivado IPI is used to design the system and Xilinx SDK is used to develop the application. 
-  * [[customizing-zmods|Customizing the Eclypse System'​s Zmods]] +  * [[learn:​programmable-logic:​tutorials:​vivado-hierarchical-blocks:​start]] 
-    * //This tutorial ​encapsulates "​Adding ​Hierarchical Block to Vivado ​IPI Design" ​and covers ​any steps necessary to modify or create ​Petalinux image that supports the added peripheral/​s// ​+    * This tutorial ​covers the addition of hierarchical block supporting ​specific peripheral, whether Pmod or Zmod, to an existing ​IPI design, adding required library source files to a baremetal Xilinx SDK application project, ​and running an example on the board. 
 +  * [[customizing-zmods-os|]] 
 +    * This tutorial ​covers ​the steps necessary to configure and build the Eclypse Z7 Petalinux project to support ​new Zmod configuration.
  
-== Additional Guides ==+---- 
 +=== Additional Guides ​===
   * [[:​vivado:​getting_started:​start]]   * [[:​vivado:​getting_started:​start]]
-    * //​Tutorial ​covers ​creating ​a basic design that blinks an LED in an RTL language. The processor is not used.//+    * This tutorial ​covers ​the creation of a basic design that blinks an <​nowiki>​LED</​nowiki>,​ written ​in an RTL language. The processor is not used.
   * [[learn:​programmable-logic:​tutorials:​pmod-ips:​start]]   * [[learn:​programmable-logic:​tutorials:​pmod-ips:​start]]
-    * //​Tutorial ​covers the basics of Pmod IPs, Creating a simple Vivado IPI design and Xilinx SDK application to run an example on the board.// +    * This tutorial ​covers the basics of Pmod IPs, Creating a simple Vivado IPI design and Xilinx SDK application to run an example on the board. Pmod IPs are not supported by default in Petalinux.
-  * [[learn:​programmable-logic:​tutorials:​vivado-hierarchical-blocks:​start]] +
-    * //Tutorial covers adding a hierarchical block supporting a specific peripheral, whether ​Pmod or Zmod, to an existing IPI design, adding required library source files to a baremetal Xilinx SDK application project, and running an example on the board.// +
-    * //This guide only describes adding Baremetal SDK support, and does not cover the steps necessary to add support for the selected peripheral into Petalinux.//+
  
 ---- ----
-===== Example Projects and System Images ​===== +===== Additional Resources ​===== 
-  * "​Narrow"​ User-Space Application Examples targeting the [[|Zmod ADC and DAC Petalinux Image]]. +  * [[https://​github.com/​Digilent/​Eclypse-Z7-OOB|Eclypse Z7 Out-of-Box Demo (GitHub)]] 
-  * [[|Base Petalinux Project]] +  * {{eclypsez7_pcbas_a5.pdf|Mechanical Diagrams for the Eclypse Z7}}
-  * [[|Base Vivado Project]] +
-  * [[|Zmod ADC and DAC Petalinux Image/​Overlay]] +
-  * [[|Zmod ADC and DAC Vivado Project]]+
  
----- 
-===== Additional Resources ===== 
 ---- ----