Microsemi DG0849 PolarFire 4K Dual Camera Video Kit User Guide
- June 9, 2024
- Microsemi
Table of Contents
DG0849
Demo Guide
PolarFire 4K Dual Camera Video Kit
Microsemi Headquarters
One Enterprise, Aliso Viejo,
CA 92656 USA
Within the USA: +1 800-713-4113
Outside the USA: +1 949-380-6100
Sales: +1 949-380-6136
Fax: +1 949-215-4996
Email: sales.support@microsemi.com
www.microsemi.com
©2021 Microsemi, a wholly owned subsidiary of Microchip Technology Inc. All rights reserved. Microsemi and the Microsemi logo are registered trademarks of Microsemi Corporation. All other trademarks and service marks are the property of their respective owners.
Microsemi makes no warranty, representation, or guarantee regarding the information contained herein or the suitability of its products and services for any particular purpose, nor does Microsemi assume any liability whatsoever arising out of the application or use of any product or circuit. The products sold hereunder and any other products sold by Microsemi have been subject to limited testing and should not be used in conjunction with mission-critical equipment or applications. Any performance specifications are believed to be reliable but are not verified, and Buyer must conduct and complete all performance and other testing of the products, alone and together with, or installed in, any end-products. Buyer shall not rely on any data and performance specifications or parameters provided by Microsemi. It is the Buyer’s responsibility to independently determine suitability of any products and to test and verify the same. The information provided by Microsemi hereunder is provided “as is, where is” and with all faults, and the entire risk associated with such information is entirely with the Buyer. Microsemi does not grant, explicitly or implicitly, to any party any patent rights, licenses, or any other IP rights, whether with regard to such information itself or anything described by such information. Information provided in this document is proprietary to Microsemi, and Microsemi reserves the right to make any changes to the information in this document or to any products and services at any time without notice.
About Microsemi
Microsemi, a wholly owned subsidiary of Microchip Technology Inc. (Nasdaq: MCHP), offers a comprehensive portfolio of semiconductor and system solutions for aerospace & defense, communications, data center and industrial markets. Products include high-performance and radiation-hardened analog mixed-signal integrated circuits, FPGAs, SoCs and ASICs; power management products; timing and synchronization devices and precise time solutions, setting the world’s standard for time; voice processing devices; RF solutions; discrete components; enterprise storage and communication solutions, security technologies and scalable anti-tamper products; Ethernet solutions; Power- over-Ethernet ICs and midspans; as well as custom design capabilities and services. Learn more at www.microsemi.com.
50200849. 5.0 7/21
1 Revision History
The revision history describes the changes that were implemented in the document. The changes are listed by revision, starting with the most current publication.
1.1 Revision 5.0
The following is a summary of the changes made in this revision.
- Added Gamma correction and Histogram plot feature to the design along with the GUI support.
- Updated section Running the Demo, page 8.
1.2 Revision 4.0
- Added clocking and reset structure, refer to Clocking Structure, page 5 and Reset Structure, page 6.
- The demo was updated to support 1080p video input through HDMI 2.0 Rx port.
1.3 Revision 3.0
The demo was updated to support 4K resolution HDMI output.
1.4 Revision 2.0
Added the image panning feature in Running the Demo, page 8.
1.5 Revision 1.0
The first publication of this document.
2 PolarFire 4K Dual Camera Video Kit
This document describes how to run the imaging and video demo using the PolarFire® Video Kit, Dual Camera sensor module, and a HDMI monitor. The demo design features a fully integrated solution developed using Microsemi Libero® System-on-Chip (SoC) software to help customers evaluate PolarFire in smart embedded vision applications and to build prototypes quickly. For more information, refer to Smart Embedded Vision page.
The demo demonstrates the following functions:
- MIPI CSI-2 RX to read the 4K dual camera input
- CFA (Color filter array) to RGB (Red, Green, Blue) conversion
- Display controller
- Picture in Picture (PIP)
- 4K image panning through 1920×1080 output via HDMI 1.4 TX port
- 1080p video input through HDMI 2.0 RX port
- 4K video output via HDMI 2.0 TX port
- Edge detection
- Image enhancements such as contrast, brightness, color balance, and gamma correction
- Histogram plot of live video
Note: The solution includes a user-friendly GUI to control these image/video settings.
The PolarFire Video Kit (DVP-102-000512-001) features:
- A 300K LE FPGA (MPF300T, FCG1152)
- HDMI 1.4 transmitter (ADV7511) chipset and corresponding connector
- HDMI 2.0 with rail clamps, ReDrivers and corresponding connectors
- Dual camera sensor featuring IMX334 Sony image sensor
- Image sensor interface to support up to two MIPI CSI-2 cameras
- DSI Interface
- NVIDIA Jetson Interface (MIPI CSI-2 TX connector)
- A High Pin Count (HPC) FMC connector to connect to high-speed interfaces (like 12G-SDI and USXGMII)
For more information about this video kit, refer to https://www.microsemi.com /existing-parts/parts/150747.
For more information about Histogram, refer to UG0944: Histogram User Guide.
The following figure highlights the PolarFire Video Kit features:
Figure 1 • PolarFire Video Kit (DVP-102-000512-001)
- DSI Display Connector
- SPI Flash
- MIPI CSI-2 TX Connector
- JTAG Programming Header
- Reset Switch
- HPC FMC Connector
- HDMI 1.4 TX
- Dual Camera Sensor
- MIPi CSI-2 RX Connector
- HDMI 2.0 RX
- HDMI 2.0 TX
- USB-UART Terminal
- 12 V Power Supply Input
2.1 Design Requirements
The following table lists the hardware and software required to run the demo.
Table 1 • Design Requirements
Design Requirement | Description |
---|
Hardware
-PolarFire VIDEO KIT| DVP-102-000512-001 REV 1.0
-Image Sensor module| LI-IMX334-MIPI-MICRO v1.0
-USB A to mini-B cable| Required for:
-FPGA programming
-UART interface with the Video Control GUI
-HDMI cable| HDMI A Male to Male cable
-HDMI monitor| 2 HDMI monitors are required:
-A 1920 x1080 60 Hz resolution monitor for the HDMI 1.4 TX port.-A 4K resolution monitor for the HDMI 2.0 TX port.
-Power Adapter| 12 V, 5 A
-Host PC| A host PC with USB port
Software
-Program_Debug_v12.6_win.exe| This executable file installs FlashPro Express, used to program the FPGA.
2.2 Prerequisites
Before you start:
-
Download the programming job file from:
http://soc.microsemi.com/download/rsc/?f=mpf_dg0849_liberosoc_jb -
Download the GUI from:
http://soc.microsemi.com/download/rsc/?f=mpf_dg0849_liberosoc_gui -
Download and install the Program and Debug software from:
https://soc.microsemi.com/portal/default.aspx?r=3&p=f=ProgramDebug_v12_6_WIN
Note: On this web page, download the Program_Debug_v12.6_win.exe binary file. Installation of this executable file installs FlashPro Express and SmartDebug used for FPGA programming and debugging. FlashPro Express is used in this demo.
Note: The Program and Debug Software also installs the drivers on the host PC to detect the COM port for running the demo. Install this software whenever the demo is run on a different host PC.
2.3 Demo Resources
The mpf_dg0849_liberosoc_jb folder contains the following resources:
- A job file (JOB file): This file includes the FPGA bitstream and the SPI Flash image to be programmed.
For programming the FPGA using the job file, refer to Programming the Device, page 8.
2.4 Clocking Structure
The clocks generated from the onboard oscillator are used in the demo design. Using the 27 MHz reference frequency from the onboard oscillator, PF_CCC_C0 generates a 150 MHz clock for the HDMI_RX, and a 50 MHz clock for the Mi-V processor subsystem and DDR Controller. Using the reference frequency of 200 MHz (DDR System clock), PF_CCC_C1 generates a 148.5 MHz clock for XCVR_ERM_C0 (HDMI) and Display Controller. Using the 148.5 MHz onboard oscillators, PF_XCVR_REF_CLK generates the following clocks:
- 148.5 MHz clock (LANE0_TX_CLK_R) for the 4K User Logic.
Using the reference frequency of 150 MHz, PF_CCC generates a 120 MHz clock for MIPI_RX_DECODER.
The following figure shows the clocking structure.
Figure 2 • Clocking Structure
2.5 Reset Structure
The Mi-V processor subsystem, XCVR, UART, ISP, and all other blocks are reset when the following signals are asserted:
- DEVICE_INIT_DONE from PF_INIT_MONITOR
- DDR_CTRL_RDY from DDR Controller
- DDR PLL_LOCK
- PLL_LOCK of PF_CCC_C0
The following figure shows the reset structure.
Figure 3 • Reset Structure
2.6 Installing the Demo GUI
To install the GUI:
-
Extract the contents of the mpf_dg0849_liberosoc_gui.rar file and run the setup.exe file.
-
Click Yes for any message from User Account Control.
The Video Control GUI installation wizard is displayed. -
Confirm the installation directory locations for the GUI and the National Instruments products and click Next.
-
Accept the license agreement and click Next.
-
Review the summary and click Next.
The installation proceeds with a progress bar. After the installation, a confirmation message is displayed. -
Click Next to exit the installation wizard.
-
Restart the host PC when prompted.
The Video_Control GUI is installed.
2.7 Setting Up the Demo
Setting up the demo involves the following steps:
- Setting Up the Hardware, page 7
- Programming the Device, page 8
2.7.1 Setting Up the Hardware
Setting up the hardware involves interfacing the dual camera sensor module and the HDMI monitor with the PolarFire Video Kit and verifying the jumper settings.
Follow these steps:
- Connect the J1 connector of the dual camera sensor module to J38 interface of the video kit.
- Connect the Full HD HDMI monitor to J2 (HDMI 1.4 TX port) of the video kit using the HDMI cable.
- Connect the 4K HDMI monitor to J1 (HDMI 2.0 TX port) of the video kit.
- Connect the host PC and the video kit through J12 of the video kit using the USB mini cable.
- Connect the power supply cable to J20 of the video kit.
- Ensure that the following jumper settings are set on the video kit.
Table 2 • Jumper and Switch Settings
Jumper | Default Position | Functionality |
---|---|---|
J15 | Open | SPI Slave and Master mode selection. By default, SPI master |
J17 | Open | 100K PD for TRSTn. By default,1K PD is connected |
J19 | Pin 1 and 2 | Default: XCVR_VREF is connected to GND |
J28 | Pin 1 and 2 | Default: Programming through the FTDI |
J24 | Pin 2 and 4 | Default: VDDAUX4 voltage is set to 3V3 |
J25 | Pin 5 and 6 | Default: Bank4 voltage is set to 1V8 |
J36 | Pin 1 and 2 | Default: Board power up through the SW4 |
SW6 | ON | User DIP switch |
SW4 | OFF | Power ON/OFF switch |
J20 | 12 Volts Input | 12 V input to the board |
7. Power-up the HDMI monitor.
8. Power-up the board using the SW4 slide switch.
The PolarFire dual camera video and imaging hardware is set up. Refer to the following section to program the PolarFire device.
9. Connect the HDMI port of a HDMI output device such as laptop to the HDMI
2.0 RX port J35 connector on the video kit through an additional HDMI male to
male cable. Make sure the HDMI output device uses a resolution of 1920 x1080p
60 Hz.
10. The video in the HDMI monitor is automatically switched to the video from
HDMI input source.
11. Disconnect the HDMI RX cable to switch back to camera video.
2.7.2 Programming the Device
To program the PolarFire device with the job file provided as part of the design files using FlashPro Express software, refer to Appendix: Programming the Device Using FlashPro Express, page 12.
2.8 Running the Demo
The demo features receiving the MIPI Rx data from the two cameras with 4K resolution at 30 Frames Per Second (FPS). The frames from camera are stored in DDR and passed on to the display as per the display controller timing parameters. The image processing pipeline on the display side uses bayer interpolation, gamma correction, histogram, and image enhancement IPs to enhance the raw image from the camera. Also, the demo uses automatic camera exposure control based on the lighting conditions.
The demo also features HDMI Rx input at a resolution of 1920 x1080p 60 Hz. The HDMI input video is displayed on the HDMI monitor upon connecting a HDMI source at the RX port.
In the demo design, two display controllers are used to provide two video outputs:
- Full HD output (1920×1080 60 Hz resolution)
- 4K output (3840×2160 30 Hz resolution)
The Full HD output supports PIP, panning, Edge Detection, and Image enhancements such as contrast, brightness, color balance, and alpha blending. The 4K output supports Image enhancements. The GUI control for image enhancements is common for both the video outputs.
Running the demo involves verifying the imaging and video settings using the Video_Control GUI and then observing the result on the HDMI monitor.
To use the demo GUI:
1. Start the Video_Control GUI from the installation directory.
The GUI is displayed as shown in the following figure.
Figure 4 • Video_Contol GUI
2. Select the second largest COM port on the GUI and select the Connect option.
Figure 5 • Connecting the GUI and Video kit
3. The Connect button turns green indicating a successful connection.
Figure 6 • Connection Successful
4. Use the Contrast and Brightness sliders to adjust the contrast and brightness and observe the change on the HDMI monitor. The sliders are highlighted in the following figure.
Figure 7 • Adjusting Contrast and Brightness
5. Similarly, adjust the color balance of the image using the color balance
sliders.
6. Adjust the Alpha slider. The alpha blending feature enables adjusting the
transparency of the PIP image. When the alpha value is adjusted to minimum
(0), the image disappears.
Note: Default image settings can be reverted by using the Reset option.
7. Switch to Edge Detection mode using the Edge option.
8. Select the PIP Menu to change the PIP settings.
9. Select the source of the PIP window between Camera 1 and Camera 2 using
PIP: Source Select.
The position of the PIP window can be moved anywhere within the screen by
dragging the pink Picture In Picture box. The Auto Mode Start option
moves the PIP window automatically. The speed of this movement can be
controlled using the Auto Mode Step slider.
Figure 8 • PIP Menu
10. Close the PIP Menu.
11. In the main video control GUI window, select the Panning option to
view a particular area of the main or the PIP image within a 4K image.
12. In the Panning Menu, use Image Select to select the image to be
panned (Main image or PIP image). Any area of the 4K camera feed can be viewed
by dragging the pink box horizontally or vertically. The Reset option sets
the view of the Main image and PIP image to its default center
position.
Figure 9 • Panning Menu
13. Close the Panning Menu to return to the main GUI.
14. In the main video control GUI window, select the Histogram option to
view the Histogram plot of the live video. The plot on the right side is the
intensity curve which can be modified to adjust the intensity of various pixel
values are as shown in the following figure.
Figure 10 • Histogram Plot
15. Close the Histogram window to return to the main GUI.
16. Close the GUI to exit from the demo.
This concludes the demo.
3 Appendix: Programming the Device Using FlashPro Express
This chapter describes how to program the PolarFire device with the job file using FlashPro Express. The job file is available at the following design files folder location:
<$Download_Directory>\mpf_dg0849_liberosoc_jb
Follow these steps:
1. On the host PC, start the FlashPro Express software from its installation
directory.
2. Select New or New Job Project from FlashPro Express Job from
Project menu to create a new job project, as shown in the following figure.
Figure 11 • FlashPro Express Job Project
3. Enter the following in the New Job Project from FlashPro Express Job dialog box:
- Programming job file: Click Browse and navigate to the location where the job file is located and select the file. The default location is: <$Download_Directory>\mpf_dg0849_liberosoc_jb
- FlashPro Express job project location: Select Browse and navigate to the location where you want to save the project.
Figure 12 • New Job Project from FlashPro Express Job
4. Click OK. The required programming file is selected and ready to be
programmed in the device.
5. The FlashPro Express window appears as shown in the following figure.
Confirm that a programmer number appears in the Programmer field. If it does
not, confirm the board connections and click Refresh/Rescan Programmers.
Figure 13 • Programming the Device
6. Click RUN to program the device. When the device is programmed successfully, a RUN PASSED status is displayed as shown in the following figure. Refer to Running the Demo, page 8.
Figure 14 • FlashPro Express—RUN PASSED
7. Close FlashPro Express ( Project > Exit).
The PolarFire device and SPI Flash are programmed.
Power cycle the board using switch SW4. After power cycling:
-
The Full HD HDMI monitor displays the camera feed from the 2 cameras as Picture in Picture.
-
The 4K HDMI monitor displays the camera feed from one of the cameras in 4K mode.
-
-
Microsemi Proprietary DG0849 Revision 5.0
References
- FPGA Documentation | Microchip Technology
- FPGA Documentation | Microchip Technology
- Microsemi | Semiconductor & System Solutions | Power Matters
- FPGA Documentation | Microchip Technology
- UG0944_Histogram.pdf
- MPF300-VIDEO-KIT | Microsemi
- Smart Embedded Vision for Industrial Applications | Microchip Technology
Read User Manual Online (PDF format)
Read User Manual Online (PDF format) >>