All About Circuits

Latest FPGA Technical Articles

Categories

From VHDL Code to Real Hardware: Designing a Finite-State Machine

From VHDL Code to Real Hardware: Designing a Finite-State Machine

Learn how to implement finite-state machines in VHDL by creating a 4-bit binary counter. After compiling, it will run on an Altera CPLD development board connected to a custom PCB with input switches and an LED display.


Modifying the Operation of Digital Components in LTspice

Modifying the Operation of Digital Components in LTspice

Customizing the device parameters of LTspice's logic gates and flip-flops can help you more accurately simulate these components. This article walks through the specification process and provides some helpful tips.


An Introduction to Using Logic Gates in LTspice

An Introduction to Using Logic Gates in LTspice

This article explains how to successfully integrate logic gates into an LTspice simulation.


From VHDL Code to Real Hardware: Designing an 8-bit ALU

From VHDL Code to Real Hardware: Designing an 8-bit ALU

In this project we create an 8-bit arithmetic logic unit (ALU) in the VHDL language and run it on an Altera CPLD development board connected to a custom PCB with input switches and LED display.


What is an Application-specific Integrated Circuit (ASIC)?

What is an Application-specific Integrated Circuit (ASIC)?

Indispensable for modern electrical engineering, application-specific integrated circuits (ASICs) form a diverse group of integrated circuits (ICs) that help designers to optimize sophisticated electronic devices.


Which Encoding Type Should I Use? Example FPGA Applications

Which Encoding Type Should I Use? Example FPGA Applications

Follow three experiments that show the process of determining which kind of encoding suits a given FPGA.


Comparing Binary, Gray, and One-Hot Encoding

Comparing Binary, Gray, and One-Hot Encoding

This article shows a comparison of the implementations that result from using binary, Gray, and one-hot encodings to implement state machines in an FPGA. These encodings are often evaluated and applied by the synthesis and implementation tools, so it’s important to know why the software makes these decisions.


JTAG Implementation in Arm Core Devices

JTAG Implementation in Arm Core Devices

This article will teach you about the intersection between JTAG and Arm core devices, with special attention paid to the Arm Debug Interface or ADI.


JTAG Connectors and Interfaces

JTAG Connectors and Interfaces

Learn about the interfaces and connectors used to implement JTAG.


The JTAG Test Access Port (TAP) State Machine

The JTAG Test Access Port (TAP) State Machine

In this article, we’re going to look at the test access state machine in detail and even see some pseudocode for a simple JTAG interface.


Introduction to JTAG and the Test Access Port (TAP)

Introduction to JTAG and the Test Access Port (TAP)

In this article, we’re going to be talking about JTAG, the ubiquitous hardware tool used for testing, programming, and debugging.


What Is a Hardware Description Language (HDL)?

What Is a Hardware Description Language (HDL)?

This FEQ (or Frequent Engineering Question) covers the basics of a crucial topic: hardware description languages.


Watchdog Timers in Microcontrollers

Watchdog Timers in Microcontrollers

This article is the fourth of a series on microcontroller timers which discusses internal watchdogs.


 Real Time Clocks (RTCs) in Microcontroller Timers

Real Time Clocks (RTCs) in Microcontroller Timers

This article is the third of a series on microcontroller timers which describes the RTCs inside a microcontroller.


Introduction to Microcontroller Timers: Periodic Timers

Introduction to Microcontroller Timers: Periodic Timers

This article, the first in a series on “timer/counter” functions in microcontrollers, discusses periodic timers.


Concurrency and Interrupts in Microcontrollers and Embedded Systems

Concurrency and Interrupts in Microcontrollers and Embedded Systems

This article introduces the idea of concurrency and a mechanism that many computers provide for dealing with concurrency called interrupts.


Embedded Firmware Tips: How to Initialize Arrays in C with Signal Waveforms and Other File Data

Embedded Firmware Tips: How to Initialize Arrays in C with Signal Waveforms and Other File Data

This article shows how to initialize arrays in a C program with values from text files.


Embedded Firmware Tips and Tricks: Use Your Read Only Memory to Free Up RAM

Embedded Firmware Tips and Tricks: Use Your Read Only Memory to Free Up RAM

Learn how to use code memory to free up RAM on your MCU.


Understanding Verilog Shift Registers

Understanding Verilog Shift Registers

This article will discuss how to implement a shift register in Verilog. The register described can be synthesized and downloaded to an FPGA for test in actual hardware.


How to Interface the Mojo V3 FPGA Board with a 16x2 LCD Module: Block Diagram and Verilog Code

How to Interface the Mojo V3 FPGA Board with a 16x2 LCD Module: Block Diagram and Verilog Code

This article will discuss the details of interfacing a basic 16x2 LCD module with an FPGA.