Differences

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

Link to this comparison view

Both sides previous revisionPrevious revision
programmable-logic:cora-z7:demos:pmod-vga [2022/09/12 12:58] – changed forum.digilentinc.com to forum.digilent.com Jeffreyprogrammable-logic:cora-z7:demos:pmod-vga [2023/08/24 22:42] (current) – Move to direct file links for downloads Arthur Brown
Line 1: Line 1:
 +====== Cora Z7 Pmod VGA Demo ======
 +
 +{{:reference:programmable-logic:cora-z7:demos:cora_pmod.jpg?400|}}
 +
 +----
 +===== Description =====
 +
 +This simple VGA Demo project demonstrates usage of a Pmod VGA connected to the Cora Z7's Pmod ports. The behavior is as follows:
 + 
 +  * A bouncing box and black, white, and multiple colors of bars are displayed on a connected VGA monitor.
 +  * The Pmod VGA is controlled by the Cora Z7 through Pmod ports JA and JB.
 +  * The screen resolution is configurable through HDL code.
 +
 +----
 +===== Inventory =====
 +
 +  * Cora Z7 with a MicroUSB Programming Cable
 +  * Vivado installation compatible with the latest release of this demo (2022.1)
 +    * //See [[programmable-logic:guides:installing-vivado-and-vitis|Installing Vivado, Vitis, and Digilent Board Files]] for installation instructions.//
 +  * Pmod VGA
 +  * VGA monitor and cable 
 +
 +----
 +===== Download and Usage Instructions =====
 +
 +First and foremost, releases - consisting of a set of files for download - are only compatible with a specific version of the Xilinx tools, as specified in the name of the release (referred to as a //release tag//). In addition, releases are only compatible with the specified variant of the board. For example, a release tagged "20/DMA/2020.1" for the Zybo Z7 is only to be used with the -20 variant of the board and Vivado 2020.1.
 +
 +The latest release version for this demo is highlighted in green.
 +
 +**Note:** //Releases for FPGA demos from before 2020.1 used a different git structure and used a different release tag naming scheme.//
 +
 +^ Board Variant  ^ Release Tag                      ^ Release Downloads                                                                                     ^ Setup Instructions                                  ^
 +| Cora Z7-07S    | @#C0EEBD: 07S/Pmod-VGA/2022.1-1  | {{https://github.com/Digilent/Cora-Z7/releases/download/07S/Pmod-VGA/2022.1-1/Cora-Z7-07S-Pmod-VGA-hw.xpr.zip}}  | See //Using the Latest Release//, below  |
 +| Cora Z7-10     | @#C0EEBD: 10/Pmod-VGA/2022.1-1   | {{https://github.com/Digilent/Cora-Z7/releases/download/10/Pmod-VGA/2022.1-1/Cora-Z7-10-Pmod-VGA-hw.xpr.zip}}    | See //Using the Latest Release//, below  |
 +| Cora Z7-07S    | 07S/Pmod-VGA/2021.1-1            | {{https://github.com/Digilent/Cora-Z7/releases/download/07S/Pmod-VGA/2021.1-1/Cora-Z7-07S-Pmod-VGA-hw.xpr.zip}}  | See //Using the Latest Release//, below  |
 +| Cora Z7-10     | 10/Pmod-VGA/2021.1-1             | {{https://github.com/Digilent/Cora-Z7/releases/download/10/Pmod-VGA/2021.1-1/Cora-Z7-10-Pmod-VGA-hw.xpr.zip}}    | See //Using the Latest Release//, below  |
 +| Cora Z7-07S    | 07S/Pmod-VGA/2020.1-1            | {{https://github.com/Digilent/Cora-Z7/releases/download/07S/Pmod-VGA/2020.1-1/Cora-Z7-07S-Pmod-VGA-hw.xpr.zip}}  | See //Using the Latest Release//, below  |
 +| Cora Z7-10     | 10/Pmod-VGA/2020.1-1             | {{https://github.com/Digilent/Cora-Z7/releases/download/10/Pmod-VGA/2020.1-1/Cora-Z7-10-Pmod-VGA-hw.xpr.zip}}    | See //Using the Latest Release//, below  |
 +| Cora Z7-07S    | v2018.2-1                        | [[https://github.com/Digilent/Cora-Z7-07S-Pmod-VGA/releases/tag/v2018.2-1|Release ZIP downloads]]     | [[https://github.com/Digilent/Cora-Z7-07S-Pmod-VGA/tree/v2018.2-1| v2018.2-1 Github README]]  |
 +| Cora Z7-10     | v2018.2-1                        | [[https://github.com/Digilent/Cora-Z7-10-Pmod-VGA/releases/tag/v2018.2-1|Release ZIP downloads]]      | [[https://github.com/Digilent/Cora-Z7-10-Pmod-VGA/tree/v2018.2-1| v2018.2-1 Github README]]   |
 +| Cora Z7-07S    | 2017.4-1                         | [[https://github.com/Digilent/Cora-Z7-07S-Pmod-VGA/releases/tag/2017.4-1|Release ZIP downloads]]      | [[https://github.com/Digilent/Cora-Z7-07S-Pmod-VGA/tree/2017.4-1| 2017.4-1 Github README]]    |
 +| Cora Z7-10     | 2017.4-1                         | [[https://github.com/Digilent/Cora-Z7-10-Pmod-VGA/releases/tag/2017.4-1|Release ZIP downloads]]       | [[https://github.com/Digilent/Cora-Z7-10-Pmod-VGA/tree/2017.4-1| 2017.4-1 Github README]]     |
 +
 +**Note for Advanced Users:** //GitHub sources for this demo can be found in the [[https://github.com/digilent/cora-z7/tree/07S/Pmod-VGA/master|07S/Pmod-VGA/master]] and [[https://github.com/digilent/cora-z7/tree/10/Pmod-VGA/master|10/Pmod-VGA/master]] branches of the Cora-Z7 repository. Further documentation on the structure of this repository can be found on this wiki's [[programmable-logic:documents:git]] page.//
 +----
 +Instructions on the use of the latest release can be found in this dropdown:
 +
 +--> Using the Latest Release #^
 +
 +<WRAP group>
 +
 +{{page>programmable-logic:guides:using-github-releases#hardware_only_release_before_programming&noheader}}
 +
 +--> Set up the Cora Z7 #
 +
 +{{:reference:programmable-logic:cora-z7:demos:cora_pmod.jpg?400|}}
 +
 +Plug the Cora Z7 into the computer via the microUSB programming cable.
 +Plug the Pmod VGA into the two Pmod ports as seen in the photo.
 +Plug the VGA Monitor into the Pmod VGA through a VGA cable.
 +
 +----
 +<--
 +
 +{{page>programmable-logic:guides:using-github-releases#hardware_only_release_programming&noheader}}
 +
 +At this point, the demo is now running on your board. Refer to the [[#description|Description]] and [[#functionality|Functionality]] sections of this document for more information on what it does.
 +</WRAP>
 +
 +<--
 +----
 +
 +===== Functionality =====
 +
 +==== 1. View Results ====
 +
 +>The VGA monitor will display a set of colored, black, and white bars, along with a moving box, as shown below. You may need to adjust the settings of your monitor to properly align the demo image.
 +>
 +>{{:learn:programmable-logic:tutorials:arty-pmod-vga-demo:arty-pmod-vga-test-pattern.png?direct&500|}}
 +
 +==== 2. Changing the Resolution ====
 +
 +>You may want to change the display resolution if your VGA monitor does not support 1080p, or you want to modify the demo for a specific application.
 +>
 +>To select a different display resolution, select the appropriate set of Sync Generation constants for your target resolution from the list starting at line 47 of **top.vhd**. Uncomment the ten corresponding constants, **FRAME_WIDTH** through **V_POL**, and comment the default versions of those same constants. The default resolution is 1920x1080 @ 60Hz.
 +>
 +>Next select **Project Manager** in the Flow Navigator. In the **Hierarchy** tab of the Sources box, expand **top.vhd** under Design Sources and double click on **clk_div_inst**. Change the clk_out1 Requested frequency - circled in red below - to the required pxl_clk frequency specified in the selected resolution's Sync Generation comment block. Select **Ok**, then **Generate** in the Generate Output Products dialog that pops up. Once the bitstream has been generated, reprogram your board with the new hardware.
 +>
 +>{{:learn:programmable-logic:tutorials:zybo-z7-pmod-vga-demo:pmod-vga-change-clock.png?500|}}
 +
 +----
 +
 +===== Additional Resources =====
 +
 +All materials related to the use of the Cora Z7 can be found on its [[..:start|Resource Center]].
 +
 +All materials related to the use of the list other products here can be found on their resource centers, linked below: 
 +
 +  * Pmod VGA [[pmod:pmodvga:start| Resource Center]]
 +
 +For a walkthrough of the process of creating a simple HDL project in Vivado, see [[programmable-logic:guides:getting-started-with-vivado]]. Information on important parts of the GUI, and indirect discussion of the steps required to modify, rebuild, and run this demo in hardware can also be found here.
 +
 +For technical support, please visit the [[https://forum.digilent.com/forum/4-fpga/|FPGA]] section of the Digilent Forum.