Blog  /  FPGA Board: A Programmable Logic Device for Rapid Prototyping

FPGA Board: A Programmable Logic Device for Rapid Prototyping

Picture this. You want to create a customized digital circuit for your project but mess up the design. You can order a new integrated circuit chip, but this is expensive and not practical. However, FPGA gives you this customizable option, so there is no problem even if you make mistakes during the design process. To reprogram the unit, you can rewrite new code using Hardware Description Language (HDL). So, what is an FPGA board, and how do you choose one? Read on to learn more.

 

What Is An FPGA Board?

 

Logic gates are the basic building blocks of digital circuits and make up all integrated circuits. FPGA (Field Programmable Gate Array) is an integrated circuit that gives the designer or customer configuration flexibility after manufacturing.

It contains a matrix of programmable logic blocks and a hierarchy of reconfigurable interconnections for wiring the blocks.

 

FPGA architecture

FPGA architecture

Source: Wikimedia Commons

 

With this design, you can use the unit as a simple logic gate or program it to perform complex functions (logic and combinational).

 

A gate array logic

A gate array logic

Source: Wikimedia Commons

 

Some have logic cells, which might be complete memory blocks or the simple flip flop type.

In simple terms, an FPGA is a universal chip that you can use to implement any digital function.

 

Why Use FPGA?

 

Compared to a microcontroller, using an FPGA is more difficult due to its complex calculations, and it consumes more power. However, it has several advantages that give it an edge. These include:

 

Flexibility

 

Arguably the most significant advantage of FPGAs is their flexibility. Since you can reconfigure their computing function, it is possible to alter and reprogram the unit to run different logic functions.

Therefore, you can make changes to the circuit in your project without having to order new hardware like in Application-Specific Integrated Circuits (ASICs). Overall, you will incur low non-recurring engineering costs.

 

Performance & Efficiency

 

FPGA features off-load and acceleration functions for the CPU to enhance the system performance. Additionally, they have parallel execution, which allows them to process or control multiple input information channels simultaneously.

This design also makes the device more energy efficient. Instead of wasting time and energy waiting for data to transmit, the data only gets processed when there are updates or changes in values.

 

An FPGA with electronic components

An FPGA with electronic components

 

Security

 

Due to its flexibility, FPGA has a lower risk of malicious configuration either during programming or manufacturing. On top of that, most vendors provide various security solutions for the device, like bitstream encryption and authentication.

 

Time to Market

 

Time-saving is critical during product development, and the reprogrammable design of the FPGA makes it an ideal prototyping board. The parallel processing enables you to run the development steps simultaneously or change/upgrade the programming as required.

 

Latency

 

Parallel processing gives FPGAs a very low latency of about one microsecond. In comparison, CPUs have a turnaround time of about 50 microseconds, a significant difference.

 

Connectivity

 

You can connect multiple inputs directly to the board while still maintaining high data transfer speeds or no significant reduction in performance.

 

Architecture of FPGAs

Architecture of FPGAs

 

FPGA Boards Applications

 

  • Parallel processes
  • Digital Signal Processing (DSP)
  • Consumer electronics
  • Security systems (cryptography, network & cloud security, etc.)
  • Internet of Things (IoT)
  • Aerospace and defense

 

Combat aircraft

Combat aircraft

 

  • Scientific instruments
  • Data mining
  • Solar energy
  • Computer hardware emulation
  • Embedded vision

 

How To Choose An FPGA Board?

 

It is not easy choosing an FPGA board because you have to consider the device's features and capabilities. We will look at these in detail to make the selection process easier. Here's what you need to consider.

 

Peripherals

 

Board peripherals are auxiliary components that help enter information into or deliver data from the FPGA device.

Unlike microcontrollers, these devices have no print statements or breakpoints, so it is challenging to troubleshoot problems.

Therefore, it makes sense if the unit features user LEDs, LCD character displays, toggle switches, etc., to deliver signals and the status of the registers. Buttons will also come in handy for entering information.

 

An LCD character display and LEDs on an FPGA board

An LCD character display and LEDs on an FPGA board

Source: Wikimedia Commons

 

However, advanced developers need high-end peripherals for their projects, such as PCI Express, Gigabit Ethernet, USB 2.0 & 3.0, etc.

 

Connectors and Expansion I/Os Ports

 

While peripherals are vital for FPGA devices, expansion connectors and I/O ports give more possibilities. For instance, a VGA connector can help display the output on large screens.

FPGA connected to a screen via VGA cable connected to the VGA port

FPGA connected to a screen via VGA cable connected to the VGA port

Source: Wikimedia Commons

 

High-speed ports like HDMI, DisplayPort, SATA, and Ethernet connectors can be challenging to add to the board but are ideal for specific custom applications.

If you pick a board with few peripherals, ensure it features multiple connectors to extend the input/output functions to external devices.

 

Onboard Memory Interfaces

 

FPGA boards have a wide range of memory options, including SRAM and SDRAM. Depending on the project requirements, you might need DDR2, DDR3, DDR4, or LPDDR memory.

 

LPDDR memory

LPDDR memory

Source: Wikimedia Commons

 

SPI flash memory is also essential because you need non-volatile storage to hold the configuration bitstreams for booting the device. The capacity of the flash and its bits per clock are the key variables here, and the higher they are, the better.

Bits per clock is especially critical because it affects the data transfer speeds. Dual SPI (two bits per clock) is sufficient, but four is better.

 

Resource Count

 

Resource count refers to the number of programmable logic elements on the device. They include block RAMs, DSPs, I/O blocks, LUTs, etc., and fancier units might have video and audio cores. Consider these because they determine the types of projects you can work on using the board.

 

Ease of Use

 

Ease of use is a crucial factor to consider, especially if you are a beginner. Professional FPGA users also shun complex boards, so pick an easy-to-use device.

 

Documentation & Utilities

 

Detailed documentation is one of the items that can make an FPGA board easy to use. It should contain a user manual, constraint files, reference manual, schematics, sample code, 3D models, reference designs, and more.

Programming tools, system management software, and other utilities should also be easy to use and readily available to test the custom board features.

 

Reconfiguration of FPGA

Reconfiguration of FPGA

 

Time to Market

 

Two factors affect the time to market factor. The first is if the board has the features required for the customer's projects.

Each board is unique. Meeting the development & production requirements means the client can

get down to firmware, software, and RTL design immediately after getting the device.

The second factor is the development time for firmware, software, and RTL. Design tools and SDKs simplify the process of project development, leaving you with more time to focus on completing other aspects of the project.

 

Customization Options

 

Modifying the boards is not very easy. Since most clients lack hardware design teams, getting light customization options from the vendor at reasonable prices would be convenient.

These modifications include altering the bank voltages, using different pin-compatible parts on the device, varying the speed grade, etc.

 

Support

 

Customer support is critical, more so in the world of technology, because anything can go wrong.

Issues with board programming, driver installation, RTL design, or setting up might arise, and the documentation might not contain the solutions. The only option is to liaise with the support team to solve the issue as quickly as possible.

 

Price

 

Lastly, there is the cost factor. FPGA boards can be expensive, so you should get a unit that fits your budget and won't feel like a significant loss if you burn a pin after making a wrong connection.

 

Which Is The Best FPGA To Use?

 

With the multiple FPGA options available in the market, these are the best ones to use.

 

Xilinx Spartan-7

 

Falling under the Cost Optimized Portfolio, the Xilinx Spartan-7 is an affordable FPGA but still has the essential features for any project. These include the Q-grade analog to digital converter and multiple dedicated security features.

The unit also has a soft, flexible memory controller that reaches a peak bandwidth of 25.6GB/s on DDR3-800 RAM.

 

A Xilinx FPGA

A Xilinx FPGA

Source: Wikimedia Commons

 

Top-notch performance is also almost guaranteed. The board features increased speeds of up to 30% more than what is attainable in 45nm generation devices and up to 1.25GB/s LVDS.

 

Digilent Basys 3

 

Labeled as the ideal trainer board for introductory users, the Basys 3 features 33,280 logic cells arranged in 52 slices. Each slice contains eight flip flops and four 6-input LUTs, so there is a lot at your disposal.

The unit also features 1,800 Kbits of fast block RAM, an internal clock with speeds exceeding 450MHz, and 90 Digital Signal Processing tiles.

It has five pushbuttons arranged in a gamepad configuration for easy use, and a USB HID connector for hooking up a mouse, keyboard, or USB stick (for configuration purposes).

Although the board features a 4-digit seven-segment display, you can use the 12-bit VGA connector to display the output to a larger screen

 

Altera DE2

 

The Altera DE2 came into existence to help advance the design of multimedia, networking, and storage prototypes. It is ideal for multimedia project development when making DVDs, VCD, and MP3 players.

Features like a TV decoder with a TV-in connector and a 24-bit audio CODEC with mic in & line in/out make it the perfect board for the job.

 

An Altera DE2 FPGA board

An Altera DE2 FPGA board

Source: Wikimedia Commons

 

It also boasts of 8-Mb SDRAM, 512 KB SRAM, 4-Mbyte SPI flash memory, and a memory card slot for storage. A 40-pin header (expansion header) with diode protection, a USB host controller, and a VGA DAC with a high-speed connector also form part of the unit.

 

Nexys A7

 

Even though it is pretty expensive, the Nexys A7 is a powerful board highly recommended for the Electronic and Computer Engineering curriculum.

It contains a versatile selection of interfaces, such as 10/100 ethernet connectors, VGA, USB, UART, JTAG, and a micro SD socket.

The list doesn't end there. You also get multiple sensory devices, such as an accelerometer, temperature sensor, microphone, etc. Students can work on prototypes for different projects without needing external hardware with these features.

Nexys A7 has two variants: 50T and 100T. The free WebPACK edition supports both, but the 50T is inferior with fewer features.

 

Altera Cyclone IV

 

The Altera Cyclone IV is a family of low-power FPGAs with transceiver options manufactured by Intel. They are ideal for various applications, especially those requiring high-volume, low-cost production.

Phase-locked loops and I/O elements surround the logic and routing channels for efficient data transmission. The 60-nm low power process keeps the board energy-efficient and simplifies thermal management to reduce cooling costs.

Other notable FPGAs include the following:

  • Icebreaker FPGA
  • FPGA Spartan-6
  • Altera Cyclone VThe Altera Cyclone V

The Altera Cyclone V

Source: Wikimedia Commons

 

  • ULX35
  • Zybo Z7

 

Tips for Designing Your Own FPGA Board

 

  • Keep the schematic design simple.
  • Emphasize the attachment of clocks to the correct pins.
  • Perfect the configuration design and delete excess LEDs or buttons if uncertain.
  • Pay attention to the copper wire thickness (for components of various pitches) and layer stacks.
  • Place any uncommitted pins to the header (for diagnosis).
  • Design the power supply early. Begin with the small caps (under the FPGA or near the nails), then the large caps (outside the FPGA), then the power supply.

 

A power supply, clock generator, and other essential connections

A power supply, clock generator, and other essential connections

Source: Wikimedia Commons

 

  • Liaise with the PCB manufacturer early about the board layout, especially on impedance-controlled routing.
  • Don't reduce the PCB layers.
  • Don't remove the bypass capacitors.
  • Avoid making changes because reworking the BGA package is almost impossible.

 

Who Can Well Manufacture Your FPGA Boards

 

Since FPGA boards are complex circuits, you need to employ the services of an experienced PCB manufacturer to make on tailored for your project.

With over 15 years in the business, OurPCB is a leading one-stop circuit board assembly factory, and we have worked with various high-profile clients/companies over the years.

Our mission is to produce high-quality PCBs that meet your needs on time and with professional service. Prices are reasonable, and we aim to maximize your profit margins by giving you the best, authentic product for your project. Feel free to contact us today and get a free quote for your design.