« Back to home

GreenPak Programmable Matrix

I had a batch of PCBs arrive yesterday which included the boards for my ESP8266 based sensor system so I should be able to do a followup post on that project in the near future. This batch also included my breakout boards for GreenPak 3 mixed signal programmable logic chips.

These devices are small (in terms of size and number of cells) programmable logic chips similar to a PAL (Programmable Array Logic) with support for analog signals as well as digital. Each chip has a collection of configurable cells which can be connected together to implement a circuit.

There are a range of cell types available;

  • Reference voltage generator.
  • Input filter and delay generator.
  • Oscillators.
  • Counters.
  • Flip-Flops and Latches.
  • Analog Comparators.
  • Look up tables (logic gate replacements).

The connections and cell configuration are done through a graphical design tool (available for Windows, OS/X and Linux) - the design shown in the screenshot below is from the capacitive touch sensor application note provided by Silegro. With this circuit you can add reliable capacitive touch input to any project with a single GreenPak chip and a few resistors.

GreenPak Designer

The development kit is required to program the devices themselves. The GreenPak is a OTP (One Time Programmable) device but the development kit supports an emulation mode that allows you to test your design on the target chip without having to burn it in permanently. The development kit exposes all the pins with a large number of easily accessible pin headers making it easy to test and measure your design as well as integrating it with external circuitry with jumper cables.

GreenPak Footprint

The downside is that these chips are very small, 12 pins on a 1.6mm by 1.6mm device. I tried milling a suitable PCB for them but unfortunately my milling process is not quite up to the task of reliably milling pads for such a small pitch.

I created layouts for two variants of breakout board for the chip - one suitable for use on a breadboard and a square layout for using in milled prototype boards. I'm hoping that when going from prototype to fabricated layout I can simply swap component footprints.

Breakout Boards

Soldering these by hand is not going to be fun but it looks possible with a bit of practice. I already have a few projects that I can integrate these chips in - this should help reduce the board size and hopefully reduce power usage as well.

I'm really looking forward to playing with these, there are definitely a lot of potential uses for them.