Podcast: Play in new window | Download
Subscribe: Apple Podcasts | RSS
Welcome, Craig J Bishop!
- Craig designed and built the Gameslab, which is a custom gaming platform built with a Xilinx Zynq part (XC7Z035). (Update: Craig has been posting more about the Gameslab on his site here)
- Bought reballed chips on PCBs. They were actually a $1200 chip he got for $80.
- Episode with Ryan Cousins
- There is apparently a kit for counterfeiting Xilinx chips
- National lab has a pdf on how to detect counterfeits
- Digilent Zybo
- Craig built the board on the JLC 6 layer process at 210×100 for each board. $150 for 5 PCBs.
- DDR3 chip was .8mm pitch
- Using stack up to calculate impedance/prop delay
- Used an excel sheet to track delay and skew for nets, since KiCad can’t track delays between layers
- FPGA on chip delays are also stated in the datasheet and need to be accounted for.
- Running Rust on STM32L0, on kernel modules in A9, applications / games
- Sense resistors with instrumentation amps going to the ADC to measure each rail’s current draw.
- BQ24250 chip for charging with configurable registers
- Zynq doesn’t necessarily need the bitstream programmed first. Instead the A9s boot first and can load the bitstream.
- Every game brings its own hardware
- Can put the Gameboy hardware into the fabric!
- Craig doesn’t like verilog, so he uses a higher level language called SpinalHDL. It is a fork of Chisel, which is based on Scala.
- Each of the above languages are strongly typed. Loosely typed means you can convert between data types, like in C.
- “Verilog is becoming the assembly language of FPGAs”
- ZipCPU
- AXI bus
- Most designs need to reimplement different hardware blocks. But there are libraries in Chisel, which can implement things easier.
- Vex Risc V
- Created a frame buffer for the LCD and some 2d graphics acceleration on the Gameslab.
- Learned to program to make PC games. This was part of the idea behind the Gamesphere project as well.
- PIC18F452 in a 40 pin DIP
- Used AT91R4000 for the game sphere
- Andrei LaMothe wrote the book “The Black Art of video game console design”
- Cypress dual port SRAM
- Craig’s first “big boy job” was working for a a neighbor up the street starting a semiconductor packaging company (Tim Olson)
- Deca Technologies was opening a Wafer Level Chip Scale packaging fab in the Philippines.
- After iphone came out, there was a lot of demand for low profile complex chips.
- Raspberry Pi photon problem
- Added a “squishy” layer to the silicon, and then exposing certain parts of the silicon to the interconnect.
- The graphics problem was that they wanted to make the chip bigger but the silicon smaller
- EWLB from Infineon looks like a plastic wafer.
- Can put two chips next to each other
- There was a paper about the subject (has the image Chris and Craig were discussing during recording).
- Sometimes the parts are placed 30 microns to the left, which is not good for the substrate they are placed upon.
- Can get really expensive PnP machines but they go slow.
- The microscope would spit out X, Y and rotation, but it scales with chip complexity, such as when there are two chips.
- Needed to do traces between them
- Craig’s job was to take the output and do some autorouting between them.
- Feature sizes were 1 micron
- Package design looks like PCB design
- Cadence sells System in Package designer but is really Allegro with different plugins.
- Can people do their own SIP?
- Craig thinks that design will move towards more SIP
- Split die architecture
- Split it into a few pieces: This will help improve yield and flexibility, as well as modularity.
- Chris asked about Chiplets, a topic that is championed by Dr Subu (sp?)
- Chiplets are going to do interconnect in silicon, not plastic
- Example is BLE and micro
- Adaptive alignment
- Craig gave a talk at KiCon about how Autorouters work and how they have been improving.
- Not your grandpa’s autorouter
- Freerouting is nice and available but it’s not the latest
- TopoR
- Moving towards interactive design (P&R), but Craig thinks it should go the other way.
- Generative design would be better
- Dave Vandenbout’s SKiDL talk
- Craig was briefly interviewed by Piotr and Alvaro at KiCon
- Find Craig on his personal site where he is documenting his projects (craigjb.com) and also find him as @craig_jbishop on Twitter.
- Check out the Phoenix 3H (hardware happy hour) if you’re in the area!
Leigh says
Another fantastic podcast Chris; and Craig was another outstanding guest. Thanks both of you for a pleasure-and-resource-packed 90 minutes or so. Craig is definitely doing what I can only dream of. I really need to get my FPGA game on point!
Jon says
This was a very cool episode. Craig has created a real cool retro style FPGA game console . These seem to be all the rage these days; the MiSTer is another nice FPGA based retro game setup. Jeri Ellensworth can be tossed in that mix as well with the C-One she created some time back, so Craig is in good company.
Funny, I think Craig and I read some similar books back in the day. I too was a fan of Andre LaMothe and went through his Tricks of the Windows Game Programming Gurus book as well as others many moons ago, but, like Craig, decided to follow another path. I seen Andre’s Hydra Game Dev Kit that was based on the Parallax Propeller 1 chip at a Fry’s at one point and had to grab it. Although I don’t have his Black Art book, he does have a course on Udemy that is based on his book which is quite cool.
I wish Criag luck with his Gameslab device and hope it makes it to a consumer product.
Thanks Chris and Dave for producing these podcasts. They are awesome!
Matthew Suffidy says
It is not a very accurate portrayal of the effect of an asteroid hit, but just for fun you could check out the end of “These Final Hours”, which is an Australian Film.
Matt says
Quality episode, once again!