The Arty Board Showcases Just What the Xilinx Artix-7 Can Do for Your Audio-Visual Applications!

The FPGA media player from UltraEmbedded is an audio-visual application example for the Artix-7-based FPGA application board.

I remember what the state of 'plug-and-plug' hardware was when I was a kid.

Transistor based radios from Tandy — the UK equivalent of Radio Shack, or sometimes, perhaps a spring-loaded peg board of point-to-point, plastic coated, pre-cut wires, and a pretty limited project list... Yeah, they were simpler times.

Makers these days have much, much more to make use of when it comes to prototyping their latest project or product.

Far gone are the days of fiddling with spring-ridden, folded cardboard faceplates, and the fairly simple circuits one could form from by following the family friendly instructions — fitting jumper wires from point A to point B, (etc...) finally resulting in a flashing LED!

While you can't argue the importance of starting with the basics — I remember my first peg board project kit — most of us will agree on that spring contacts, and a maze of unshielded air-wires are something of a limiting factor when it comes to signal integrity.

These starter kits are a solid base for any budding engineer, but kids these days want to play with DMA, HDMI, and DDR memory interfaces!

Fast forward a few years (oh alright, decades), and we are now fortunate to have FPGA boards of various origin for the price of a few beers. There's still some effort needed in getting them to function as a fully generic dev board, and good luck getting the design sources, let alone vendor support! If you've got the time to invest in some reverse engineering, perhaps you can justify the rediculously low prices.

Recently, it seemed that even the FPGA vendors themselves have noticed that there's a bit of a market for people — such as makers and other likeminded individuals, for example — who maybe can't afford the POA price tag listed for a large number of PLD (Programmable logic device) prototype boards.

Perhaps if not for the prohibitive pricing of these products, many more would likely start to play with these parts — they just aren't going to want to take out a finance plan to have some fun with an FPGA board.

Familiarizing folks with FPGAs is more than flashing a bitstream!

Thanks to the various relationships that have been fostered over the years — formed between vendors and distributors alike, sometimes, the right people get together and form a plan to get future designers friendly with the forthcoming, feature-filled FPGA (and other such) devices seeking customer-facing familiarity.

The greater the access you can afford to your aspiring user base, the greater the annual return on the accounting books, right? That's a business model that benefits everyone involved — the vendors, the fabricators, the distributors, and of course, the previously inaccessible user base — these newly enabled engineers and all the incredible projects they can now create from all of this collaboratively contributed IP.

Diligent have decided this business model is a decent one. Rather than just focusing on joining components together at the electrical circuit board level, we see connections between vendors on the executive board level — leading to benefits for all involved.

Networking and board meetings leading to netlists and PCB silkscreens!

UltraEmbedded over on Twitter shows us just how far thing have come from those days of fiddling with spring ridden peg boards, with his recent foray into FPGA filled fun — a Motion JPEG decoder enabled media player — made entirely from development modules.

I think the above image has finely illustrated the contrast I've been leading up to with the initial opening context of this articles suggestion of what a development kit used to look like.

Comprised of little more than a Diligent Arty Artix-7 development board, paired with a few choice peripheral Pmod modules, this collection of PCBs comes together to showcase the possibilities that are placed within reach, thanks to the plug-and-play pin header Pmod pinout.

Let's take a look at the BoM loadout. Shouldn't take us too long — there's not a lot to it. 😂

The host system is the Digilent Arty A7 board — a Pmod-pinned, Arduino header-compatible application board designed to showcase for the Artix-7 FPGA offering from Xilinx. It's a cost-efficient way of getting to grips with the features offered by this FPGA part, and comes loaded out with a decent set of peripherals to get your application interfaced to the real world.

Accurate audio approximations

Although the FPGA itself is a formidable field of silicon, with features freely defined to it by the gate ware flashed into it, there are still a few functional blocks that don't often make it into the fabrication spec for such flexibly defend devices.

Audio, and its analog nature, is probably the first thing one might think of when figuring out what functions to keep far away enough from the high-frequency digital noise of the FPGA to avoid auditable artifacts that would sour the sonic fidelity of your audio-visual experience.

Passing that part of the device function off to the first Pmod in our list — the PmodI2S2 — provides the Artix-7 with access to not only a Cirrus CS4344 Stereo D/A Converter, but also Cirrus CS5343 Multi-Bit Audio A/D Converter, should there ever be any future application scope, for voice feedback perhaps?

How to handle the video, though?

While the first hit for any internet search engine results for "video interface" will almost undoubtedly highlight HDMI as the current state of things, it's pretty heavy to handle from a resource and hardware management perspective.

For that reason perhaps, UltraEmbedded opted to enlist a viable alternative for his video output, the not at all (yet) vintage VGA connector system.

Available as a dual-PMOD interfaced connecter board, this intermediary board makes use of a pair SN74ALVC245 octal bus transceivers, in order to form the discrete R2R based DACs, that are in turn sequenced to generate the analog signals that the VGA interface requires!

We should note that UltraEmbedded indicates that HDMI is far from impossible, but the hardware as handed to us — as it was sent through our inbox — shows the VGA output implemented.

Storage? An SD card sounds pretty suitable?

FPGAs might be fairly large functional devices, filled with features galore, but the one thing they often don't design in to the tape out is memory. Not to worry, with that many I/O made available on even the smallest of of FPGA devices, it's a trivial matter to implement some off-board mass storage with a microSD card.

Things are made even easier when that SD Card can just pop into a PCB-mounted MicroSD Pmod peripheral pod. Plug-and-play has never been so possible.

What's under the hood?

With all the hardware aptly handled by these handy Pmod peripheral helper boards, UltraEmbedded turns his attention to the internal architecture of the Artix at the heart of the Arty board.

We can see a high-level conceptual block diagram below, that gives us some hugely insightful hints as to the hardware defined within the gates of this highly-integrated device.

But, as is the well-known phrase "a picture is worth a thousand words", well, when it comes to video, a GIF is worth.... however many frames it contains... or something like that? Anyway, my point remains — the GIF below demonstrates the system far more capably than the block diagram shown above.

The GitHub project put together by UltraEmbedded is a concise collection, containing all the prerequisite project sources, pieces and parts you'll need to put together your own Artix-based AV media player, letting you pull off this project without the associated pulling of hair that can often be a predominant feature of developing with FPGAs.

tomfleet

Hi, I'm Tom!I create content for Hackster News, allowing us to showcase your latest and greatest projects for the world to see!

Latest Articles