Hello all, I just wanted to ask a few quick questions.
Is there a barebones VDMA example out there? All the ones I see use the base overlay with HDMI, but I want to just process an image and write it back out to memory, no screen required. I did stumble across a video on youtube that did this, but he wasn’t using the pynq.lib.video.dma module, just the addresses, so it was a bit opaque.
I have read these two examples, both with HDMI:
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# Video Pipeline Details\n",
"\n",
"This notebook goes into detail about the stages of the video pipeline in the base overlay and is written for people who want to create and integrate their own video IP. For most regular input and output use cases the high level wrappers of `HDMIIn` and `HDMIOut` should be used.\n",
"\n",
"Both the input and output pipelines in the base overlay consist of four stages, an HDMI frontend, a colorspace converter, a pixel format converter, and the video DMA. For the input the stages are arranged Frontend -> Colorspace Converter -> Pixel Format -> VDMA with the order reversed for the output side. The aim of this notebook is to give you enough information to use each stage separately and be able to modify the pipeline for your own ends.\n",
"\n",
"Before exploring the pipeline we'll import the entire pynq.lib.video module where all classes relating to the pipelines live. We'll also load the base overlay to serve as an example.\n",
"\n",
"The following table shows the IP responsible for each stage in the base overlay which will be referenced throughout the rest of the notebook\n",
"\n",
"|Stage | Input IP | Output IP |\n",
"|------------------|:---------------------------------------|:-----------------------------------|\n",
"|Frontend (Timing) |`video/hdmi_in/frontend/vtc_in` |`video/hdmi_out/frontend/vtc_out` |\n",
"|Frontend (Other) |`video/hdmi_in/frontend/axi_gpio_hdmiin`|`video/hdmi_out/frontend/axi_dynclk`|\n",
This file has been truncated. show original
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# New Style HDMI input and Pixel Formatting\n",
"\n",
"This notebook introduces the new features of PYNQ 2.0 for interacting with the video pipeline. The API has been completely\n",
"redesigned with high performance image processing applications in mind.\n",
"\n",
"To start, download the base overlay and instantiate the HDMI input and output."
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {},
"outputs": [
{
This file has been truncated. show original
Here is a screenshot of my block diagram, I just want to read the image, resize it, and write it back:
My IP has an interrupt line on it, and I’m not sure why or what to do with it. Should I connect it to the peripheral reset on the processor reset block?