Just in Time Logic

Similar projects worth following
A development kit centered around the Greenpak programmable logic chips, making it easy to create your own ICs!

Greenpaks are lightweight, low cost programmable logic devices from Dialog Semiconductor. They're perfect for glue logic and for designing that logic IC you wish existed but doesn't, but they have one major caveat: they're only available in a tiny 0.5mm pitch QFN package.

Fabric8 aims to take the awesome-but-inaccessible greenpak device and make it easily available to hobbyists by providing cheap breakout boards and a development and programming board for them. It's your very own breadboard-based IC fab!

  • Now soliciting alpha testers for Fabric8!

    Nick Johnson07/04/2015 at 20:21 2 comments

    Are you interested in testing out the Fabric8, Arachnid Labs' next product?

    We're now looking for a very limited number of alpha testers to try the fabric8 breakouts. Testers will be sent a selection of fabric8 breakout boards, and an adapter for the official Greenpak development kit that permits their use. In order to participate, you will need to buy an official Greenpak3 development kit from Dialog Semiconductor.

    Interested? Email me at nick@arachnidlabs with a short description of what you'd like to do with the Fabric8 to apply.

  • First programmer prototype design

    Nick Johnson05/14/2015 at 18:20 2 comments

    The first programmer prototype is designed! You can see the layout here.

    It's a fairly straightforward design, with an Arm Cortex microcontroller with USB doing the heavy lifting. The whole programmer board can be plugged into a breadboard for easy testing of new designs.

    A capacitative voltage doubler and zener shunt regulator generates the 7.5V needed to program the greenpak, while a couple of analog switches prevent the programming signals from reaching the breadboarded device.

    Here's the schematic in all its glory:

    I'm holding off producing any samples until we've got a reasonable design and attachment method for the programming clip/socket discussed in the previous post.

  • First breakouts and adapter PCB ready!

    Nick Johnson05/14/2015 at 18:16 0 comments

    I've ordered and received the first prototype breakout boards for the Fabric8, and they work perfectly! I've also got an adapter PCB that allows for programming a Fabric8 from the official dev kit, which is perfect until we're done developing the Fabric8 dev kit.

    You can see the design of the breakout boards here and the design of the adapter here. They're standard DIP 0.3" pitch and 0.1" spacing. VCC and GND pins match the standard used for 7400-series logic, with VCC in the top right and GND in the lower left. The bottom rows can be broken off to make ICs with fewer than 20 pins. Other than that I've tried to keep the native Greenpak pin numbering as much as possible I'll be shipping out breakouts and adapters to a few select Alpha testers soon.

    Aside from being an opportunity to solicit feedback on the breakouts and development process, the adapter board serves as an opportunity to work on the design of the retaining clip for attaching the breakouts to the programmers. The goal is to be able to insert the breakout boards into the programmer without headers soldered on, using a row of spring pins to make contact with the pads. Once the device is programmed, it can be removed from the programmer and have headers - or wires - soldered in.

    This requires a custom clip or socket of some sort. I'm not yet certain how it will look - some experimentation will be required. It's likely that it will be 3d printed or (eventually) injection moulded; I'm hoping for a single piece design for simplicity.

View all 3 project logs

Enjoy this project?



Nick Johnson wrote 07/05/2015 at 07:38 point

Inputs for what sort of configuration? How would you interface with them?

I'm not quite sure I see how moving the jumpers to the main part of the board would provide for that possibility; at the very least you'd need a 2-way jumper to disconnect the IO pad as well as connecting GND, and I don't think there's room for that. 

  Are you sure? yes | no

Hacker404 wrote 07/05/2015 at 09:30 point

OK, Perhaps I need to go read the spec before wasting any more of your time. I did give it a quick look but that was all. I am assuming that the pins can be used as GPIO and routed internally. 

As for 2-way jumper - the input is isolated when the end of the board is snapped off so you only need one split pad (jumper) just like the TTL format GND pin in your design.

As for what purpose it would have - perhaps set the gain of an amp or pre-scale a comparator, invert some output ??? whatever is possible to allow some flexibility to the OTP design so that you don't have to throw it in the bin and program another.

  Are you sure? yes | no

Nick Johnson wrote 07/05/2015 at 11:04 point

Please don't consider it a waste of time - feedback is hugely appreciated, particularly at this stage of the design.

I see what you mean now. It would require running two traces for each pin to the snap-off section, however, which would be a tight fit given the routing constraints around the mousebites.

I'll give it some thought, but I'm not certain it can be made to work with the routing constraints.

Have you looked at the description of the programmer, though? The intention is that you can test your designs in-circuit without having to commit the design permanently, before you program the device for good.

  Are you sure? yes | no

Hacker404 wrote 07/05/2015 at 01:40 point

I looked at the breakout board and saw the solder links on pins 7, 8, 9 and thought they may be jumpers for setting an address or something. Then I thought it's a shame that the jumper pads break off with the extra pins. Then I read about your TTL chip format and realised they are for shifting the ground pin. 

Anyway, if you want to to have break off pins then it would be great if you could use the broken off pins for jumpers instead so that the loss of the extra pins doesn't render the associated gpio useless. ie move the chip up higher on the PCB and have jumpers below on the main part of the PCB that doesn't break off. Maybe V2.0

I work with VHDL/CPLD/FPGA and I normally like these development kits but I just can't think of any use for OPT chips and I don't have any clue about the IDE and what language is used (if any). I am very curious and watching from a distance wondering what these could be good for. 

As for connections ... I would be looking at a way to have simple connections on the edges of the breakout PCB so that it slides into a DIP adaptor and that DIP could probably go into a normal ZIF for programming. Perhaps castellations? The less there is to throw away the better not just from the point of view of cost but also time. Takes time to solder headers but a pre-made DIP adaptor could just have a new chip carrier slide in. 

Anyway some thoughts.

  Are you sure? yes | no

Nick Johnson wrote 07/05/2015 at 06:49 point

I'm not sure I follow about the jumpers, can you clarify? When shortening a breakout, the ground pin has to be moved in order to keep the convention of the lower left pin being ground on 7400 series ICs.

Regarding socketing, the plan is to make a socket that accepts the breakout board unsoldered, so you program and test it before you have to solder on headers.

  Are you sure? yes | no

Hacker404 wrote 07/05/2015 at 07:35 point

I was calling the solder-able spit pad that you use for shifting the GND a jumper. 

What I was suggesting was that (for example) when you break off all the extra pins and move the GND, that the other GPIO's on the chip that previously went to the removed DIP pins can now be used as configuration inputs instead, just with the solder-able split pads like the GND. 

I don't know if this chip has input pullup resistors but they could be used and split pads can go to ground when soldered. These inputs could be one bit input to a LUT or something like that. Better than wasteing them all together.

  Are you sure? yes | no

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates