All About Circuits

Latest Programmable Logic Technical Articles

Categories

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.


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.


An Overview of Software Languages for Programmable Logic Controllers (PLCs)

An Overview of Software Languages for Programmable Logic Controllers (PLCs)

What software languages are used with programmable logic controllers?


How to Choose Microcontroller Peripherals for Digital Signal Processing Applications

How to Choose Microcontroller Peripherals for Digital Signal Processing Applications

This article continues a discussion of microcontroller features and characteristics that are particularly important when you’re thinking in terms of DSP capabilities.


How to Choose a Microcontroller for Digital Signal Processing Applications

How to Choose a Microcontroller for Digital Signal Processing Applications

This article discusses the features that you should look for when you need an MCU to act as both a system controller and a digital signal processor.


How to Choose the Right Microcontroller for Your Application

How to Choose the Right Microcontroller for Your Application

This article continues the Introduction to Microcontrollers series with a discussion of the most important things to consider when you’re trying to find the best MCU for your next project.


Using Verilog to Describe a Sequential Circuit

Using Verilog to Describe a Sequential Circuit

This article focuses on using Verilog to describe synchronous sequential circuits.


Understanding ASCII in Embedded Firmware Development

Understanding ASCII in Embedded Firmware Development

This article, which serves as preparation for a discussion of C-language strings, introduces the concept of ASCII characters and explains two benefits of ASCII-based coding techniques.


Five Tips for Using Functions in C-Language Firmware

Five Tips for Using Functions in C-Language Firmware

In this article we’ll conclude our exploration of C functions with some additional information and a few useful implementation techniques.


What Are Functions in C Programming?

What Are Functions in C Programming?

This article will help you to understand what functions are, why they are used, and how they are implemented in embedded hardware.


Getting Started with the Verilog Hardware Description Language

Getting Started with the Verilog Hardware Description Language

In this article, we’ll study the basic structure of a Verilog module, look at some examples of using the Verilog “wire” data type and its vector form, and briefly touch on some differences between VHDL and Verilog.


Introduction to the C Programming Language for Embedded Applications

Introduction to the C Programming Language for Embedded Applications

This article discusses the basic characteristics of C, a straightforward language that is still widely used for programming microcontrollers.


Clock Signals in FPGA Design: Data Path Maximal Clock Rates and the Xilinx PERIOD Timing Constraint

Clock Signals in FPGA Design: Data Path Maximal Clock Rates and the Xilinx PERIOD Timing Constraint

This article will discuss the Xilinx Period timing constraint that allows us to describe the characteristics of the clock signal that will be used with an FPGA design.


Ladder Logic in Programmable Logic Controllers (PLCs)

Ladder Logic in Programmable Logic Controllers (PLCs)

This article describes the programming language ladder logic used to program PLCs and shows examples of how it functions.


How to Use Your Computer to Generate Complex Analog Waveforms

How to Use Your Computer to Generate Complex Analog Waveforms

This article presents Scilab code that allows you to generate I/Q, noise, and chirp signals from your PC’s headphone jack.


How to Use Your Computer as an Arbitrary Waveform Generator

How to Use Your Computer as an Arbitrary Waveform Generator

In this article, we’ll use Scilab to generate numerical signals that can be converted into analog waveforms by a computer’s audio hardware.


How to Process I/Q Signals in a Software-Defined RF Receiver

How to Process I/Q Signals in a Software-Defined RF Receiver

This article discusses the mathematical significance of I/Q signals and presents the final steps in the DSP algorithm for decoding frequency-shift-keying baseband signals.


How to Use I/Q Signals to Design a Robust FSK Decoder

How to Use I/Q Signals to Design a Robust FSK Decoder

An improved algorithm, in conjunction with quadrature modulation, can achieve FSK decoding that is not affected by phase misalignment.


Digital Signal Processing in Scilab: Understanding Phase Misalignment in FSK Decoding

Digital Signal Processing in Scilab: Understanding Phase Misalignment in FSK Decoding

In this article we’ll use Scilab to explore the effect of unpredictable phase variations in a demodulated frequency-shift-keying baseband signal.


Digital Signal Processing in Scilab: How to Decode an FSK Signal

Digital Signal Processing in Scilab: How to Decode an FSK Signal

Learn about a DSP technique that extracts the original digital data from a demodulated frequency-shift-keying baseband signal.