Avnet Zynq Mini Module Plus Embedded Design

Similar documents
Figure 1 TCL Used to Initialize PS

ZC706 Built-In Self Test Flash Application April 2015

UltraZed -EV Starter Kit Getting Started Version 1.3

MAXREFDES44# MicroZed Quick Start Guide

Santa Fe (MAXREFDES5#) MicroZed Quick Start Guide

MicroZed: Hello World. Overview. Objectives. 23 August 2013 Version 2013_2.01

MAXREFDES43# ZedBoard Quick Start Guide

Spartan -6 LX9 MicroBoard Web Connectivity On Ramp Tutorial

Fresno (MAXREFDES11#) ZedBoard Quick Start Guide

Introduction to Zynq

Use Vivado to build an Embedded System

Use Vivado to build an Embedded System

Carmel (MAXREFDES18#) LX9 MicroBoard Quick Start Guide

MicroZed Getting Started Guide Version 1.1

10/02/2015 PetaLinux Linux Image Network Connection

MicroZed Open Source Linux In System QSPI Programming Tutorial

AC701 Built-In Self Test Flash Application April 2015

10/02/2015 Vivado Linux Basic System

Getting Started with TargetOS on the ZedBoard 1 Introduction

Alameda (MAXREFDES24#) ZedBoard Quick Start Guide

POWERLINK Slave Xilinx Getting Started User's Manual

PicoZed SDR Development Kit Getting Started Guide Version 1.4

ChipScope Inserter flow. To see the Chipscope added from XPS flow, please skip to page 21. For ChipScope within Planahead, please skip to page 23.

Creating a base Zynq design with Vivado IPI

Estimating Accelerator Performance and Events

NXP i.mx 6 UltraLite Evaluation Kit Edge MicroServer Installation and Setup Guide. Version 1.0

QSPI Flash Memory Bootloading In Standard SPI Mode with KC705 Platform

Zynq-7000 All Programmable SoC: Embedded Design Tutorial. A Hands-On Guide to Effective Embedded System Design

KCU GBASE-KR Ethernet TRD User Guide

Copyright 2014 Xilinx

ZC702 Si570 Programming June 2012

This guide is used as an entry point into the Petalinux tool. This demo shows the following:

10/02/2015 PetaLinux Image with Custom Application

SP605 Standalone Applications

Spartan-6 LX9 MicroBoard Embedded Tutorial. Lab 6 Creating a MicroBlaze SPI Flash Bootloader

SP605 Built-In Self Test Flash Application

SATA Storage Duplicator Instruction on KC705 Rev Sep-13

Avnet S6LX16 Evaluation Board and Maxim DAC/ADC FMC Module Reference Design

Lab Exercise 4 System on chip Implementation of a system on chip system on the Zynq

Building an Embedded Processor System on a Xilinx Zync FPGA (Profiling): A Tutorial

ZedBoard: Zynq-7000 AP SoC Concepts, Tools, and Techniques

Get Started SUPPORT WARRANTY. Visit the i.mx community at

NVMe-IP Demo Instruction Rev Nov-17

SATA-IP Host Demo Instruction on SP605 Rev Jan-10

R. Assiro. WP1- Documentation Booting Petalinux from QSPI on UUB

MYD-C7Z010/20 Development Board

ML605 Built-In Self Test Flash Application

TOE1G-IP FTP Server Demo Instruction

Creating the AVS6LX9MBHP211 MicroBlaze Hardware Platform for the Spartan-6 LX9 MicroBoard Version

S2C K7 Prodigy Logic Module Series

SP601 Standalone Applications

Introduction to Embedded System Design using Zynq

MYC-C7Z010/20 CPU Module

Corona (MAXREFDES12#) ZedBoard Quick Start Guide

Quick Start Guide Multisensory Enablement Kit i.mx 8QuadXPlus MEK CPU Board. Based on i.mx 8QuadXPlus Applications Processor

Wind River Pulsar Linux Quick Start For Avnet Zynq Version 7.0

SATA Host-IP Demo Instruction Rev Jan-18

Fremont (MAXREFDES6#) Nexys 3 Quick Start Guide

SABRE Board for Smart Devices

MeshConnect ISP / WNA (ZIC2410USB-WNA-1) User Guide

ML605 Built-In Self Test Flash Application

Campbell (MAXREFDES4#) Nexys 3 Quick Start Guide

Requirement ZYNQ SOC Development Board: Z-Turn by MYiR ZYNQ-7020 (XC7Z020-1CLG400C) Vivado and Xilinx SDK TF Card Reader (Micro SD) Windows 7

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University. Laboratory Exercise #1 Using the Vivado

PicoZed FPGA Mezzanine Connector (FMC) Carrier Card Getting Started Guide Version 2.1

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University

i.mx 6UltraLite Evaluation Kit Quick Start Guide s datasheet has been downloaded from at this pag

DPM Demo Kit User s Manual Version: dpm_dk_um_1_0_1.doc

FMC-IMAGEON VITA Pass-Through Tutorial

Matrix-605 WinCE ARM9 Industry Box Computer User Guide

Writing Basic Software Application

Using Serial Flash on the Xilinx Spartan-3E Starter Board. Overview. Objectives. Version 8.1 February 23, 2006 Bryan H. Fletcher

Spartan-6 LX9 MicroBoard Embedded Tutorial. Tutorial 1 Creating an AXI-based Embedded System

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University

Configuring the Xilinx Spartan-6 LX9 MicroBoard

ECEN 449: Microprocessor System Design Department of Electrical and Computer Engineering Texas A&M University. Laboratory Exercise #1 Using the Vivado

Creating a Processor System Lab

Integrating LogiCORE SEM IP in Zynq UltraScale+ Devices

SATA-IP Bridge Demo Instruction on AC701 Rev1.0 9-May-14

Lab 1 - Zynq RTL Design Flow

LPC1788 Mio Board. The functional details of the board are as follows-

Porting VME-Based Optical-Link Remote I/O Module to a PLC Platform - an Approach to Maximize Cross-Platform Portability Using SoC

NVMe-IP DDR Demo Instruction Rev Apr-18

Campbell (MAXREFDES4#) Nexys 3 Quick Start Guide

TUNA NVM-H2 NVRAM Emulation. Board. User Guide. Version

Xilinx Vivado/SDK Tutorial

ZCRMZNICE01ZEMG Crimzon In-Circuit Emulator

TOE1G-IP Two-Port Demo Instruction

Getting Started with FreeRTOS BSP for i.mx 7Dual

SABRE Board for Smart Devices

USB3D-IP (USB3.0-Device function IP) demo manual Rev 1.3E / 15 May, 2015

Copyright 2016 Xilinx

TP : System on Chip (SoC) 1

Kinetis SDK Freescale Freedom FRDM-KL03Z Platform User s Guide

ZedBoard: Zynq-7000 AP SoC Concepts, Tools, and Techniques

USB3H-IP(USB3.0 Host function IP) demo manual Rev 1.4 E / 2 May, 2017

SENSOR-PMD S ENSOR PERIPHERAL MODULE USER S GUIDE. 1. Introduction Features Si7020 Relative Humidity and Temperature Sensor

KC705 Si570 Programming

ML410 VxWorks BSP and System Image Creation for the BSB Design Using EDK 8.2i SP1. April

Description: Write VHDL code for full_adder.vhd with inputs from switches and outputs to LEDs.

Transcription:

Avnet Zynq Mini Module Plus Embedded Design Version 1.0 May 2014

1 Introduction This document describes a Zynq standalone OS embedded design implemented and tested on the Avnet Zynq Mini Module Plus. 2 Reference Design Requirements This reference design will require the following software and hardware setups. 2.1 Software The software requirements for this reference design are: Xilinx Vivado 2014.1 2.2 Hardware The hardware setup for this reference design is: Computer with 4 GB RAM and 1 GB virtual memory (recommended) Avnet Zynq Mini Module Plus Avnet Mini Module Plus Baseboard 2 Power supply Module 12V power supply Ethernet cable USB A-mini-B cables (3) 1

3 Reference Design Block Diagram The following figure shows a high-level block diagram of the reference design. The design consists of: ARM Cortex-A9 Processor 1GB of DDR3 SDRAM 128MB of Parallel Flash 32MB of QSPI Flash 1KB I2C EEPROM Real-Time Clock microsd Card Interface Gigabit Ethernet Interface USB 2.0 Interface USB-UART Port 8-position DIP Switch Three Push Switches Five User LEDs USB 2.0 Connector RJ45 Connector USB Connector Reset Switches USB 2.0 ULPI PHY Ethernet PHY 32MB QSPI 1GB DDR3 1KB EEPROM Real-Time Clock USB- UART PS Reset Processing System PS Clock @33.333MHz AXI Micro SD Card Socket Programmable Logic Zynq XC7Z045 128MB Flash Push Switches DIP Switches LEDs Figure 1 Reference Design Block Diagram 2

4 Setting up the Board and the PC Please perform the following steps to setup the Zynq Mini Module Plus kit. 1. Install a jumper on the MMP baseboard JP2 pins 2-3. 2. Install a jumper on the MMP baseboard JP4. 3. Install a jumper on the MMP JP11 pins 1-2. 4. Install a jumper on the MMP JP10 pins 2-3. 5. Slide the SW13 and SW14 switches to position 3 (marked as K7) on the MMP baseboard (Rev B board only). 6. Slide the SW15 switch to position 1 (all the way down) on the MMP baseboard. 7. Connect the USB A-mini-B cable to the U1 USB port (on the MMP baseboard, under the Zynq Mini Module Plus) and the USB port of the PC (JTAG Port). 8. Plug the Zynq MMP onto the baseboard via JX1/JX2 connectors. 9. Connect the USB A-mini-B cable to J4 on the MMP and the USB port of the PC (USB-UART connection). 10. Connect the USB A-mini-B cable to J3 on the MMP and the USB port of the PC (USB 2.0 connection). 11. Install the power module onto the MMP baseboard via J6, J7, and J15 connectors. 12. Connect 12V power supply to J4 on the MMP baseboard. 13. Connect an Ethernet cable to the J2 RJ45 connector on the MMP and the Gigabit Ethernet port of the PC. 14. Slide the SW5 power switch to the ON position on the MMP baseboard. 15. Start a Tera Term session and set the serial port parameters to 115200 baud rate, 8 bits, 1 stop bit, no parity and no flow control (please refer to the Setting up the Host PC section at the end of this document for installing the software driver for the USB-UART port and setting up the UART). 16. Set the IP address of your PC to 192.168.1.1 with subnet mask of 255.255.255.0. Note: Please make sure SW13, SW14, and SW15 switches are set as stated above prior to powering the board or you could damage the Zynq device. This is for Rev B boards only as the SW13 and SW24 have been removed on the later revision of the board. 3

5 Reference Design Vivado IPI Project Start the Vivado tool via Start > All Programs > Xilinx Design Tools > Vivado 2014.1 > Vivado 2014.1 Open the Vivado IPI zynq_mmp_embedded_design project (the archived project file is located in the root directory of the reference design folder). Click on the Open Block Design (under the IP Integrator) and select zynq_design_1.bd file. The Vivado IPI GUI should look as shown in the following figure. Note: If you are using a Windows PC and encounter Windows 260 character path limit issue when trying to rebuild the hardware platform in Vivado, please refer to the Xilinx Answer Record #52787 to resolve the issue. http://www.xilinx.com/support/answers/52787.htm In addition to the above Answer Record, you could set your Temp environment variable to a short path. To do this, create a folder on your C drive and call it MyTemp. Set the Temp environment variable to C:\MyTemp. 4

6 Reference Design SDK Project Start the SDK tool via All Programs > Xilinx Design Tools > Vivado 2014.1 > SDK > Xilinx SDK 2014.1 When the following dialog box appears, browse to the \zynq_mmp_embedded_design\embedded_design.sdk\sdk\sdk_export folder of the reference design and click OK to continue. The SDK GUI should look as shown in the following figure. 5

7 Booting from JTAG Prior to booting from JTAG, the PS boot mode switch must be set for the Cascaded JTAG. Please set the boot mode switch (SW5, positions 1-5) on the MMP to 00000. 7.1 Configuring the Programmable Logic (PL) Since this reference design uses peripheral and memory devices connected to the Zynq PL, the PL must be configured prior to testing the devices connected to it. From the SDK GUI, select Xilinx Tools > Program FPGA as shown in the following figure. In the Program FPGA dialog box, set the Bitstream to \zynq_mmp_embedded_design\embedded_design.sdk\sdk\sdk_export\h w_platform_0\zynq_design_1_wrapper.bit and click on the Program to configure the Zynq PL as shown in the following figure (make sure upon PL configuration completion the blue DONE LED is illuminated on the MMP baseboard). Note: Your path to the zynq_mmp_embedded_design folder may be different than the one shown in the above figure. Please use the browse button to point to the location of the zynq_design_1_wrapper.bit file on your hard drive. 6

7.2 Setting up the Run Configurations From the SDK toolbar, select Run > Run Configurations, the following dialog box will appear. In the Run Configuration dialog box, click on the zynq_mmp_flash_test.elf to highlight it and set the Initialization file to \zynq_mmp_embedded_design\embedded_design.sdk\sdk\sdk_export\h w_platform_0\ps7_init.tcl on your hard drive and click Apply. o Repeat the above step for the remainder of the elf files (begin by single clicking on zynq_mmp_i2c_test.elf file and setting the Initialization file to the ps7_init.tcl file on your hard drive). Please do not forget to click on Apply after setting the ps7_init.tcl path for each elf file). o zynq_mmp_i2c_test.elf o zynq_mmp_lwip_echo_server.elf o zynq_mmp_mem_test.elf o zynq_mmp_peripheral_test.elf o zynq_mmp_usb_test.elf When the above step is completed, click on Close to close the Run Configurations GUI. 7

7.3 Running the Memory Test From the SDK GUI, right-click on the zynq_mmp_mem_test software project and select Run As > Launch on Hardware (GDB) to load the memory test to the board and run it. You should see the following on the Tera Term terminal. 7.4 Running the Peripheral Test In the SDK GUI, if a Run session is currently running, click on the Red square to terminate the Run as shown in the following figure before running another test. 8

From the SDK GUI, right-click on the zynq_mmp_peripheral_test software project and select Run As > Launch on Hardware (GDB) to load the Peripheral test to the board and run it. You should see the following on the Tera Term terminal. 9

7.5 Running the USB 2.0 Demo (Zynq used as a USB device) From the SDK GUI, right-click on the zynq_mmp_usb_test software project and select Run As > Launch on Hardware (GDB) to load the USB test to the board and run it. You should see the following on the Tera Term terminal. Open Windows Explore to see the device being displayed as a Removable Disk. You might also see the following dialog box once you run the USB test. In this case click Cancel and go to the next step and continue. 10

Double-click on the Removable Disk in the Windows Explore. The PC prompts a message The disk in drive is not formatted. Do you want to format it now? This procedure will format a disk drive Make sure you are formatting the Zynq MMP USB Flash and not your PC s hard drive Verify the USB drive letter before formatting Avnet cannot take responsibility for lost data or damaged hard drives Click YES to format the device for the FAT file system. Once the formatting is complete, a new window opens with the Removable Disk directory path. Copy a file from any of the drives and paste it under the Removable Disk directory. Open the copied file from the Removable Disk directory and make modifications and save the file. Now, copy the file from the Removable Disk directory and paste it in any other directory. In the SDK GUI, if a Run session is currently running, click on the Red square to terminate the Run as shown in the following figure before running another test. 11

7.6 Running the Flash Test From the SDK GUI, right-click on the zynq_mmp_flash_test software project and select Run As > Launch on Hardware (GDB) to load the Flash test to the board and run it. You should see the following on the Tera Term terminal. 12

7.7 Running the I2C Test From the SDK GUI, right-click on the zynq_mmp_i2c_test software project and select Run As > Launch on Hardware (GDB) to load the I2C test to the board and run it. You should see the following on the Tera Term terminal. 13

7.8 Running the Echo Server Demo From the SDK GUI, right-click on the zynq_mmp_lwip_echo_server software project and select Run As > Launch on Hardware (GDB) to load the Echo Server program to the board and run it. You should see the following on the Tera Term terminal. Open a command window and ping the board as shown below. If the Ethernet connection is working, you should see 4 replies back as shown. 14

To connect to the echo server, use the telnet utility program. Type the following telnet command as shown below and hit the return key. If the echo server works properly, any data sent to the board is echoed in response. Some telnet clients immediately send the character to the server and echo the received data back instead of waiting for the carriage return. Simply type a few characters and see them echoed back on the terminal. In the SDK GUI, if a Run session is currently running, click on the Red square to terminate the Run as shown in the following figure before running another test. 15

8 Booting from the microsd Card Prior to booting from the microsd card, the PS boot mode switch must be set for the SD Card Boot. Please set the boot mode switch (SW5, positions 1-5) on the MMP to 00110. 8.1 Generating the microsd card boot image The microsd card image can be generated using the SDK tool or a batch file. For this example we will be using a batch file to generate the microsd card boot.bin image. The Peripheral Test, which we previously ran on the board using the JTAG port, will be used to generate the microsd card boot.bin image. Please go to the make_mcs_and_bin_files folder of the reference design and double-click on make_mcs_file.bat and make_bin_file.bat file to generate the microsd card boot.bin image as well as an MCS file (the MCS file will be used in the next section to boot from the QSPI device on the Zynq MMP). Note: The boot.bin and MCS files for the Peripheral Test design are already generated for you and are located in the ready_to_download folder of the reference design, should you have any issues with the boot.bin and MCS files generations using the above batch file. Copy the content of your microsd card to your hard drive so that you can restore the microsd card content that was shipped with your Zynq MMP. Delete the content of the microsd card. Use your PC to copy the make_mcs_and_bin_files\boot.bin file to the root directory of the microsd card. Make sure the board is powered down and the boot mode switch (SW5, positions 1-5) on the MMP is set to 00110. 16

Insert the microsd card into the microsd card socket located on the Zynq MMP under the USB connectors (please do not use the microsd card connector on the MMP baseboard for this reference design) and power up the board. The blue DONE LED will be illuminated and you should see the Peripheral Test results on the Tera Term terminal. 17

9 Booting from the QSPI Flash Prior to booting from the QSPI Flash, the QSPI device must be programmed using the SDK Flash programming utility. Power down the board and set the boot mode switch (SW5, positions 1-5) on the MMP to 00000 (Cascaded JTAG mode). Power up the board. Select Xilinx Tools > Program Flash from the SDK toolbar as shown in the following figure. In the following figure, use the browse button to set the Image File to the make_mcs_and_bin_files\zynq_mmp_peripheral_test.mcs file generated in the previous section. Set the Offset to 0, Flash Type to qspi_single, and click Program. It will take a few minutes to program the QSPI Flash on the Zynq MMP 7Z045 module (set the Flash Type to qspi_dual_parallel when using the Zynq MMP 7Z100 version). 18

Upon successful programming of the QSPI Flash, you should see the following in the SDK GUI. Note: The Zynq MMP QSPI Flash is programmed with the PCIe reference design when the MMP is shipped. To restore the content of the QSPI Flash please download the PCIe MCS file from the PCIe reference design posted to the http://www.em.avnet.com/mmp-7z045-g web site. Power down the MMP baseboard and set the boot mode switch (SW5, positions 1-5) on the MMP to 00010 (QSPI boot mode). Power up the board, the blue DONE LED will be illuminated and you should see the Peripheral Test results on the Tera Term terminal. 19

10 Setting up the Host PC This section describes how to install the USB drivers on the host PC for the USB- UART connection to the Zynq MMP. 10.1 Install the USB UART Drivers Download and install the Silicon Laboratories CP210x VCP drivers on the host computer. The drivers are available for download at http://www.silabs.com/products/mcu/pages/usbtouartbridgevcpdrivers.aspx 10.2 Configure the Host Computer COM Port The Reference design uses a terminal program to communicate between the host computer and the Zynq MMP. To configure the host computer COM port for this purpose: 1. Connect the Zynq MMP to the host computer via the J4 USB-UART port on the Zynq MMP and power up the board. 2. Open the host computer Device Manage as shown in the following figure. In the Windows task bar, click Start, click Control Panel, and then click Device Manager. 3. Open UART properties. Expand Ports (COM & LPT), right-click Silicon Labs CP210x USB to UART Bridge, and then click Properties. 20

4. In the properties window, select the Port Settings tab, verify the settings match the values shown in the following figure. Click on the Advanced button to continue. 115200 8 None 1 None 5. Select an unused COM Port Number and then click OK. The following figure shows COM1 as the selected COM port number. 6. Click OK in the properties window, close the Device Manager and the Control Panel. 21

10.3 Install the Terminal Program Download and install the TeraTerm Pro terminal program on the host computer. TeraTerm Pro is available for download at http://ttssh2.sourceforge.jp/index.html.en. To communicate with the Zynq MMP, configure the New Connection and Serial Port settings as shown in the following figure. These settings must match the host computer COM port settings shown in the previous section. 22