Download Print this page

Avnet FMC-HDMI-CAM Tutorial

Frame buffer design tutorial

Advertisement

Quick Links

Overview
This reference design is the getting started design for the PYTHON-1300-C camera
module. The camera module features ON Semiconductor's PYTHON-1300 color image
sensor. The PYTHON-1300 is a 1/2 inch Super-eXtended Graphics Array (SXGA) CMOS
image sensor with a pixel array of 1280 by 1024 pixels. Designed to address the needs of
general purpose industrial image sensing applications, the new global shutter image
sensor combines flexibility in configuration and resolution with high speed and high
sensitivity for the industrial imaging market.
Objectives
This tutorial will guide the user how to:
 Retrieve the design files from the public Avnet git repository
 Build the reference design
 Execute the reference design on hardware
© 2015 Avnet. All rights reserved. All trademarks and registered trademarks are the property of their respective owners. All specifications
are subject to change without notice.
NOTICE OF DISCLAIMER: Avnet is providing this design, code, or information "as is." By providing the design, code, or information as
one possible implementation of this feature, application, or standard, Avnet makes no representation that this implementation is free from
any claims of infringement. You are responsible for obtaining any rights you may require for your implementation. Avnet expressly
disclaims any warranty whatsoever with respect to the adequacy of the implementation, including but not limited to any warranties or
representations that this implementation is free from claims of infringement and any implied warranties of merchantability or fitness for a
particular purpose.
FMC-HDMI-CAM + PYTHON-1300-C
Figure 1 – PYTHON-1300-C Camera Module
Frame Buffer Design Tutorial
23 February 2016
Version 2015_4

Advertisement

loading
Need help?

Need help?

Do you have a question about the FMC-HDMI-CAM and is the answer not in the manual?

Questions and answers

Summary of Contents for Avnet FMC-HDMI-CAM

  • Page 1 NOTICE OF DISCLAIMER: Avnet is providing this design, code, or information "as is." By providing the design, code, or information as one possible implementation of this feature, application, or standard, Avnet makes no representation that this implementation is free from any claims of infringement.
  • Page 2: Reference Design Overview

    Receiver VDMA Output AXI4S Video Figure 2 – FMC-HDMI-CAM + PYTHON-1300 Camera Reference Design – Hardware Block Diagram Valid licenses (hardware evaluation, or full license) are required for the following video IP cores:  Color Filter Array Interpolation (CFA) v7.0 ...
  • Page 3 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 Experiment Setup This tutorial makes use of Xilinx Vivado Design Suite in scripting mode in order to create a project. The resulting project can be opened with the graphical (GUI) version of the tools for further analysis and modification.
  • Page 4 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 Experiment 1: Licensing the Video and Image Processing Pack IP Cores This reference design uses several of the Xilinx Video and Image Processing Pack IP cores. In order to build the hardware design, valid licenses (hardware evaluation, or full license) are required for the following video IP cores: ...
  • Page 5 Frame Buffer Design Tutorial v2015_4 23 February 2016 Experiment 2: Retrieve the design files In this section, the design files for the reference design will be retrieved from the Avnet git repository. 1. Navigate to the following web site : https://github.com/Avnet/hdl 2.
  • Page 6 Figure 5 – Avnet GitHub repository – Download ZIP 7. Create an “Avnet” directory in your root C:\ drive 8. Save hdl-fmchc_python1300c_PZ7030_FMC2_20160223_221823.zip file to the C:\Avnet directory, and extract the contents of the zip file in this directory 9. Rename the “hdl-fmchc_python1300c_PZ7030_FMC2_20160223_221823” directory to “hdl”...
  • Page 7 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 The C:\Avnet\hdl repository contains the following sub-directories: Directory Content Description C:\Avnet\hdl\Boards contains board related files C:\Avnet\hdl\IP contains the IP cores used by the ref designs C:\Avnet\hdl\Projects contains project related files...
  • Page 8 MicroZed 7020 + FMC Carrier Card. 10. Edit the make_fmchc_python1300c.tcl script to only build for your FMC carrier. # Build FMC-HDMI-CAM + PYTHON-1300-C Getting Started design # for the MicroZed-7020 + FMC Carrier Card set argv [list board=MZ7020_FMCCC project=fmchc_python1300c sdk=yes...
  • Page 9 ** Copyright 1986-2015 Xilinx, Inc. All Rights Reserved. Vivado% cd C:/Avnet/hdl/Scripts Vivado% Figure 8 – Vivado 2015.4 TCL Shell – Changing to C:/Avnet/hdl/Scripts directory 3. Launch the build with the “source ./make_fmchc_python1300c.tcl” command Vivado% source ./make_fmchc_python1300c.tcl # set argv [list board=MZ7020_FMCCC project=fmchc_python1300c sdk=yes...
  • Page 10 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 As a convenience, before building the hardware design, the scripts will verify if valid licenses are installed for the video IP cores used in the design. ***** Check for Video IP core licenses...
  • Page 11 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 Experiment 4: Execute the reference design on hardware This section describes how to execute the reference design on the hardware. For instructions on how to setup the hardware, please refer to the FMC carrier’s User Guide.
  • Page 12 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 \fmchc_python1300c\{BOARD}\fmchc_python1300c.sdk Figure 11 – SDK – Specifying SDK workspace 4. Close the Welcome Window 5. In the SDK menu, select Xilinx Tools => Repositories 6. Verify that the following Local Repository is specified:...
  • Page 13 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 7. If the local repository is not specified, click on the New button, navigate to the following directory, then click OK. C:\Avnet\hdl\Projects\fmchc_python1300c\software\sw_repository 8. When done, click OK. Now that the SDK workspace is correctly configured, the hardware and software can be loaded and executed on the hardware.
  • Page 14 PYTHON-1300-C image sensor on the DVI/HDMI monitor. If you do not have a PYTHON-1300-C camera module, proceed to the next section for instruction on enabling the HDMI input data path. You have successfully executed the FMC-HDMI-CAM + PYTHON-1300-C reference design on hardware ! www.microzed.org...
  • Page 15 --------------------------------------------- FMCHC_PYTHON1300C> Figure 14 – FMC-HDMI-CAM Getting Started Design – Serial Console Output If you have a PYTHON-1300-C camera module, you will observe the content captured by the PYTHON-1300-C image sensor on the DVI/HDMI monitor. If you do not have a camera module, you will see green content, the default value of pixels in the camera frame buffer.
  • Page 16 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 Getting Help for commands At any time, you can type the “help” command to display the list of commands supported by the demonstration. FMCHC_PYTHON1300C>help ------------------------------------------------------ FMC-HDMI-CAM + PYTHON-1300-C Getting Started Design...
  • Page 17 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 Starting the HDMI video pipeline To enable the HDMI pipeline (HDMI input => HDMI output), press the “start hdmi” command. This will initialize the HDMI input interface, the corresponding Video DMA core, as well as configure the OSD core to display the HDMI video path.
  • Page 18 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 Starting the Camera video pipeline To enable the camera pipeline (HDMI input => HDMI output), press the “start cam” command. This will initialize the PYTHON camera, the corresponding Video DMA core, as well as configure the OSD core to display the PYTHON video path.
  • Page 19 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 VITA REMAPPER - Control = 0x00000001 VITA SPI Sequence 0 - Assert RESET_N pin VITA SPI Sequence 0 - Releasing RESET_N pin VITA_SPI[0x0000] => 0x50D0 VITA_SPI[0x0001] => 0x0000 PYTHON-1300 Sensor detected VITA SPI Sequence 1 - Enable Clock Management - Part 1 VITA_SPI[0x0002] <= 0x0001...
  • Page 20 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 VITA CRC - Asserting Reset VITA ISERDES - Releasing Reset VITA DECODER - Releasing Reset VITA CRC - Releasing Reset VITA ISERDES - Status = 0x61610100 VITA ISERDES - Status = 0x61610100...
  • Page 21 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 VITA_SPI[0x0190] <= 0xF001 VITA_SPI[0x0191] <= 0xF402 VITA_SPI[0x0192] <= 0xF001 VITA_SPI[0x0193] <= 0xF401 VITA_SPI[0x0194] <= 0xF007 VITA_SPI[0x0195] <= 0xF20F VITA_SPI[0x0196] <= 0xF20F VITA_SPI[0x0197] <= 0xF202 VITA_SPI[0x0198] <= 0xF006 VITA_SPI[0x0199] <= 0xEC02 VITA_SPI[0x019A] <= 0xE801...
  • Page 22 FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 VITA_SPI[0x01C5] <= 0x10BF VITA_SPI[0x01C6] <= 0x10B2 VITA_SPI[0x01C7] <= 0x10B4 VITA_SPI[0x01C8] <= 0x00B1 VITA_SPI[0x01C9] <= 0x0030 VITA_SPI[0x00DC] <= 0x3928 VITA_SPI[0x01CA] <= 0x0030 VITA_SPI[0x01CB] <= 0x20F3 VITA_SPI[0x01CC] <= 0x2071 VITA_SPI[0x01CD] <= 0x0071 VITA_SPI[0x01CE] <= 0x0179...
  • Page 23: Revision History

    FMC-HDMI-CAM + PYTHON-1300-C Frame Buffer Design Tutorial v2015_4 23 February 2016 Revision History Date Version Revision 7 Sep 2015 2014.4.01 First Version, supporting MicroZed FMC Carrier, ZedBoard, and ZC702 18 Nov 2015 2015.2.01 Update to Vivado 2015.2 9 Dec 2015 2015.2.02 Add support for PicoZed FMC Carrier V2 and ZC706...

This manual is also suitable for:

Python-1300-c