I haven’t posted in a while since signing up for literally every course the SBA offers through http://sbaworkshops.stoverteam.com. I highly recommend them if you can get in. I think the only reason I was notified about these courses is because my company is a HUBZone business. These courses are pretty much like having an instructor right over your shoulder talking about the finer points of government contracting. Between these courses and making a functional prototype for a kickstarter campaign it’s been difficult to write about the technical projects I do just for fun, as I keep very busy.
Most recently I’ve been playing around with FPGAs again. Just the idea that you can dynamically create hardware on the fly is super exciting, but even as fun as this is I often times I find myself just going back to regular old ICs when I need specific functionality. I’ve got 5 development platforms on hand right now, and I’ve probably given away another 3 boards.
I’m not going to lie. I hate the large development environments that come with Alterra (Intel), Xilinx, and Lattice development boards. They’re extremely heavy weight, and they would make sense if I were designing digital hardware on an FPGA before sending it to fabrication, which is exactly how SiFive makes their RISC V cores. But Volunteer Labs isn’t SiFive, and I’m not designing ICs on FPGAs… yet.
So in all the searching and experimenting that I’ve done, I’ve finally found a couple of solutions that I really like. Alchitry Labs IDE (formerly Mojo IDE), and APIO-IDE for ATOM (with the TinyFPGA). Both of these development environments really get out of the way and let you focus on writing and testing hardware definition language (HDL).
More interestingly, TinyFPGA comes with an optional open source tool chain. This is truly unique since anything related to the manufacture and sale of FPGAs is under close scrutiny by the US. The Trump administration even went as far as blocking the sale of Lattice Semiconductors to a Chinese State run investment firm citing national security concerns.
It would be interesting to see if FPGAs have use in Diminishing Manufacturing Source and Material Shortages (DMSMS) and Obsolescence mitigation. opencores.org has long been a resource for emulated digital designs, and it’s truly amazing the kind of hardware available. By using IP cores in the first place, a manufacturer potentially could eliminate the need fore lifetime buys. There would be some tradeoffs to this approach (FPGAs typically consume more power than dedicated ICs), but for non-portable systems this might be acceptable.