All About Circuits

Latest Volatile Technical Articles

Categories

The Initial State of Finite State Machines and the Memory Debate

The Initial State of Finite State Machines and the Memory Debate

This article discusses the use of finite state machines (or FSMs) in design, including the initial state and the way memory configuration affects FPGA design.


Using a Supervisory Circuit to Turn a Conventional SRAM into Fast Non-Volatile Memory

Using a Supervisory Circuit to Turn a Conventional SRAM into Fast Non-Volatile Memory

How can you build a fast non-volatile memory from a conventional SRAM? It turns out, you only need a back-up battery and some control circuitry.


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.


What Is Virtual Memory?

What Is Virtual Memory?

This article will explore what virtual memory is, why it exists, and how it works from a high level.


Executing Commands in Memory: DRAM Commands

Executing Commands in Memory: DRAM Commands

This article will take a closer look at the commands used to control and interact with DRAM.


Introduction to DRAM (Dynamic Random-Access Memory)

Introduction to DRAM (Dynamic Random-Access Memory)

This article will examine the basic operation of Dynamic Random Access Memory (DRAM), along with how a DRAM chip is organized.


Principles of Cache Design

Principles of Cache Design

This article will examine principles of CPU cache design including locality, logical organization, and management heuristics.


Mitigate Power Failure Programming Issues Using EERAM

Mitigate Power Failure Programming Issues Using EERAM

In this how-to article, we explore the use of I2C EERAM to save critical program variables when power fails and restore them when power returns to easily preserve program continuity.


A Microcontroller Enthusiast’s First Look at Programmable Logic

A Microcontroller Enthusiast’s First Look at Programmable Logic

The FPGA can be a great addition to your arsenal, but it requires some adjustments to the way a microcontroller jockey thinks.


MicroFAT: A File System for Microcontrollers

MicroFAT: A File System for Microcontrollers

File systems can be great for handling data and organizing memory, but most file systems require large amounts of memory. This is where MicroFAT comes in!


Using Interrupts on Arduino

Using Interrupts on Arduino

We've all been there - you've spent hours and hours trying to get that sketch working, but somehow, you're not reacting well to time critical events in your system. Maybe it's a wireless peripheral indicating when a packet is ready. Maybe it's an external Flash device signaling when data is ready to be read out. Maybe it's as simple as a button push that you need to react quickly to! But, try as you might, it seems the best way to see these sort of events is to just digitalRead() that pin over and over in your main loop() function until something interesting happens. ...or is it?