Building an Apollo Guidance Computer [message #9973] |
Sat, 18 June 2022 21:29  |
 |
Andrew B
Messages: 467 Registered: October 2015 Location: Near Redmond, WA
|
Senior Member Administrator |
|
|
As I'm sure many of noticed, I've been "out of the game" for the last ~2.5 years as far a projects - between being super busy at my prior job, the pandemic, changing jobs, moving across the country, and my spouse going through some challenging and still ongoing chronic illness stuff, there hasn't been a lot of time or energy.
However there is one project that's in the back of my mind, and this summer I am hoping to start making some progress on this - and that is to build a working Apollo Guidance Computer, implemented with 7400 series logic.
I will say - this is a huge undertaking, and I'll post updates here to share with the group, but I am unlikely to have a lot of spare energy to share Gerbers/support other builders/that sort of thing. Maybe when it's 'working', and I can publish a 'known good' configuration.
I first started thinking about this back in 2013, but at that point I had yet to even built a Zeta yet, so a project this daunting was out of my depth. Also, not all of the schematics were available at that point in time. And in 2013, the last time anyone booted up an AGC was probably the late 70s when they used them for a fly-by-wire research project using a modified F-8 fighter at NASA Edwards, or maybe when the last Deep Submergence Rescue Vehicle was retired (the DSRV used some AGG derived hardware to maintain precision positioning over seafloor while conducting rescue missions - although there is not a lot of public information on this system, just a couples sentences in books on the AGC).
But now, in 2022 I can stand on the shoulders of giants:
-Over the last few years a group of AGC enthusiasts has gone to the national archives and scanned and digitized an enormous amount of data on the AGC (1800+ pages). Gate level schematics are now available for the entire machine, along with several iterations of different AGC software. These can be seen at https://www.ibiblio.org/apollo/AgcDrawingIndex.html.
-One of those very smart people, Mike Stewart, created KiCAD schematics for the AGC. He also annotated those schematics with extra metadata such that the schematics could be directly converted into a FPGA of the same exact gates - allowing the schematics to be validated before making them as hardware. Those efforts are documented at https://github.com/virtualagc/agc_hardware and https://github.com/virtualagc/agc_simulation
-Following on from the work to create the KiCAD schematics and the FPGA AGC implementation validating those schematics - Mike and an 'A-Team' of vintage computer experts restored an actual AGC to functionality for the 50th anniversary of the Apollo 11 landing. There is an entire video series on that at this YouTube Playlist
--As part of that effort, code and FPGA interface hardware was created to interface a real AGC to a modern PC running the Orbiter Space Flight Simulator, so the actual Apollo 11 landing could be flown with the real AGC talking to the simulated Lunar Module.
So, these other wonderful people have done 95% of the work here in terms of creating the tools and documentation needed to build an AGC and hook it into Orbiter and use it to run simulated missions with real Apollo era software. All I had to do was wait for other people to do most of the work for me. I had a chance to meet and chat with them at the 2019 VCF West, where they gave a demo with an FPGA AGC.
Thing left to do:
-Get the KiCAD projects for the modules ported from KiCAD 4 to the new KiCAD 6 library standards
-Route and fabricate ~27 modules with ~1500 or so 7400 series chips
-Create KiCAD schematics, route and fabricate a backplane (no backplane schematics are in the currently available KiCAD projects)
-Replicate the FPGA interface board to allow the AGC to be interfaced to a modern PC, debugged
-Get the whole thing to work!
The main action I've taken thus far is to order a kit for building a reflow oven. My intent is to use surface mount components + reflow oven for these modules, mostly so that I can save myself time and learn a new fabrication skill.
The backplane is probably the hardest part - the AGC did not use any kind of bus, it was all point to point wiring between the different modules. The original was a crazy wire wrapped 1960s backplane. I have concerns about FreeRouting actually being able to route it, and it may have to be a 4 or 6 layer board. So I'm going to get all of the module KiCAD projects updated to KiCAD 6, so I can grab the backplane portions from each and drop all those into a backplane schematic and try to run that through FreeRouting.
[Updated on: Sat, 18 June 2022 21:31] Report message to a moderator
|
|
|
|
|
|
|