 All right, it's my great pleasure to present a fellow Lestrian, how do we pronounce that? Lestrian? Yeah, for all the way from Leicester in the UK, Tony Abbey who's going to be talking about the 1949 EDSAC rebuild, which is awesome. Please welcome, Tony. Cheers everybody. Thanks. Thanks for coming because I know there's a lot of opposition in one of the other theatres So I did try to get this talk moved away from sex robots, but I wasn't successful. Anyway, EDSAC, EDSAC means electronic delay storage automatic computer, and it was the the first real programmable computer that was built in the UK and it provided the computing service at Cambridge University from 1949 to 1958. So has anybody heard of EDSAC before? I won't be able to see you anyway. Ah, good laws. That's fantastic. And how many of you used thermionic valves or tubes as our American cousins would call them? Oh, quite a few of them. That's fantastic. Okay, so EDSAC was the first practical general purpose stored program electronic digital computer. That's a mouthful, isn't it? And it provided the first computing service for Cambridge University. And it ran its first programs, which was the squares of the numbers from one to a hundred printed out on a teleprinter on the 6th of May 1949. And it used three and a half, nearly three and a half thousand valves and took 12 kilowatts. Now it actually transformed science because prior to that everybody was using mechanical calculators. And it was 1500 times faster than the sort of calculators it replaced. And it's used as one of three Nobel Prizes. People like Fred Hoyle were involved. Guys that were working out the molecular structure of hemoglobin. All these things, these sort of things required lots and lots of calculations, signs and cosines on the x-ray crystallography measurements that were being made. And the computer, they claim it was the one that invented software. And it was used in extensive library of subroutines. Now a subroutine was actually a small paper tape, which was held in a little box in a small filing cabinet. And when the person that wanted to run their program needed a subroutine, the operator would put the subroutine through a paper tape reader and it would be punched into the next part of the paper tape that the program had put in. So this was the subroutine. And it was the basis for Leo. And Leo was the first business computer designed by Lyons for their corner tea shops. And for a number of years, it was a commercial success in the UK. So how did it come about? Maurice Wilkes only died in 2010 at the age of 97. He had a BA in maths from Cambridge and he was in the Cavendish lab. He had got a PhD in physics. Now he was whisked off to wartime service. He was a radar boffin. He was also a quite a well-known radiometer. He appeared in various copies of the RSGB magazine as far as I remember. And he became the director of the University's Mathematical Laboratory. Now this came about because he went off in 1946 to the USA to the Moore School summer lectures. He only managed to catch the last two weeks of about a five or six week course because of problems with transport. Presumably Cambridge wasn't very keen to give him much money to get there so he had to go very slowly. But he went there and he looked to learn about their ENIAC computer. Now the ENIAC computer was actually used to generate the trajectories of artillery shells. And it was sort of, although it was in theory programmable, it was a fixed program which required lots of wiring and keyboard and switchboards like as used in telephone exchanges that set up the programs. And I understand it took something like two days to change from one program to another. But he came back saying to his mates at Cambridge University, look we've got to have one of these. And so this was 1946 and he recruited a dozen or so of his radar technicians and they set about building EDSAC with the valves that were available at the time. The biggest problem though was computer memory. In 1949 if they'd made it out of valves in sort of flip flops and things like that it would require five tubes or valves per bit. And he wanted something like 17-bit word, 1024 words. So that would have used 79,000 valves. And that they could not afford that sort of number of valves and that amount of power. The other possibilities were acoustic delay lines, cathode ray tubes where a plate was put on the front of the screen and the the electron beam addressed various areas and nought and wands were picked up by the charge coming through the screen. That was the Williams cathode ray tube. Very very very difficult with needing very careful screening. And then there were things like rotating magnetic drums which were subsequently used a lot. But at the time they were complex, expensive and very unreliable and they limited the speed of the computer. So they decided to use these acoustic delay lines, but the delay lines were mercury in five-foot steel tubes. So they made these banks and they were called storage tanks, each holding 16-36-bit words. And they were mounted in wooden boxes known as coffins. Now the problem with these was that transducers at each end of the pipes had to be aligned to better than a foul. And the mercury had to be distilled regularly to remove any contamination. And the speed of sound through the mercury was temperature sensitive. So the tanks had to be temperature controlled to maintain sync with the EDSAC clock. Now we get groups coming through the EDSAC display at the National Museum of Computing and the evolution of the valve transistor integrated circuits, etc. is explained. But the talk usually ends with the lecturer holding up a 32 gig SD card. And he says to the kids, anybody know how much it would cost if implemented with the mercury delay lines that you can see behind you rather than silicon. And I am told that the answer is, let me just look at this on my notes, it would cost £30 billion, it would weigh 10 million tonnes and it would fill 10 battleships. So that's what Moore's done in those 70 years since that early time. That's why you have all those gigabytes in your mobile phones. I mean it is incredible. So as with the mercury delay lines, and to keep down the number of valves, EDSAC uses serial computing. So it's got 16 or 17 bit words. I say 16 or 17 because one of the bits is a sort of guard band, a guard bit. But we pass on a single wire bus, main input and output buses, we pass a serial data stream running at 500 kilohertz. And these diagrams are from the original EDSAC report written in between 1946 and 1949 of how they were designing it. And it was divided into minor and major cycles, a minor cycle being the pulse train associated with one word and then a major cycle being the number of words that were in a memory tube. So you've got a repetition frequency of something like 870 words per second and that was typically the instruction rate of the computer, a bit under that. But it was had a 500 kilohertz clock and without doing it that way it would have used far more valves and far more power. But of course you can imagine it might be a bit of a problem. So we have the original EDSAC team, that's Morris Wilkes and his chief engineer, and you see the technicians there filling the racks, putting the shafts in the racks, building up the computer. And this is our reconstruction team in the last few years. This is a display at the National Museum of Computing which is on the Bletchley Park site. And we have tried to go from the original high resolution black and white photographs, identifying the positions of the valves, the name, the function of each chassis. And our leader there, the guy you can see on the front right in the base trousers, he runs the show. He was the European director of research for Microsoft. He used to take Bill Gates round on his lecture tours and things. And he has us all running around building the computer. So why build it? Of course, as with all things, it started in a pub in Cambridge. And it's Herman Hauser, the director of ARM Computers, met David Hartley, who was the former director of Cambridge University Computer Lab. And they asked Chris Burton of the Computer Preservation Society to do a feasibility study as to whether EDSAC could be recreated. The whole thing was destroyed, by the way, in 1948, sorry, 1958, when EDSAC 2 was built. Just one or two chassis were kept and appeared later. One was found in a garage in somewhere in America. And they did keep one of the, a very short mercury tank and one of the chassis that was used to put the bits into the tank and get them out of it again. So Chris Burton, he reviewed the documents and the availability of components and decided it was feasible, but it would cost a quarter of a million pounds. And that was to set up the new room at the museum and get all the parts and employ local contractors to build chassis and things like that. And he had already recreated the Manchester baby computer, which is in Manchester in sort of about the same sort of time of EDSAC. And that does exist. So let me, sorry, I meant to just say is there any other thing? Yeah, so we built it in order to celebrate the early triumphs of British computer technology and to sort of try and revive this expertise before it disappeared. And we wanted to learn about the challenges faced by those early computer pioneers. And I have to say they are challenges. So the charity was set up and the money has been raised. Now authenticity, authenticity, that's a difficult word. We didn't have a complete blueprint, but we aimed to be consistent with the photographs and the contemporary records and use period components and circuits when available and suitable. And otherwise use modern components if they looked right, but basically adhere to the principles that were laid down in that EDSAC report. Now we didn't have any circuit diagrams. Now that's a bit of a problem when you're trying to build something because you actually have to start from scratch just like the original pioneers did. Although we did have the photographs of the chassis and we knew they made it work. When they were building it, they didn't know whether they're going to make it work or not. But some way into the project in about 2014, a guy who'd worked at Cambridge was working on the EDSAC II computer. He remembered that he'd actually rescued these circuit diagrams. They were about to be thrown out. So he rescued them from landfill. And then he heard about this rebuild project. And he's presented the project with these circuit diagrams. And basically we found we're sort of on the right lines with what we're doing. So one or two of the original chassis existed. You can see the top picture there is one of the ones that's being rescued. And the bottom one has been created from computer AD design. Of course we had to work out where all the valves were going to be punched into the chassis where all the valve bases went. But that was from the knowledge of the sort of circuits it needed and the pictures. And we used a firm in Cambridge called Tevesham Engineering to make all these chassis. Then we needed to know how EDSAC works in detail. So we didn't have complete circuits. We had diagrams that weren't consistent. And there was evidence that they continually developed the project as they went along. So it was a continual changing computer we were trying to build. So a logic simulation was built which runs is available. It can be downloaded from the web. And this is one of the typical logic diagrams from the original report showing accumulators. It's the same von Neumann design that computers are today. They actually hadn't invented the index register there which apparently gave a few problems with writing programs. But anyway the logic simulation was built. It's available. It runs very slowly on a PC. It's already been translated into verilog and runs on an FPGA. So we can see the sort of serial waveforms we expect from the computer. And this logic simulation does actually work. Now it was built by radio and radar engineers. So it tends to use AC coupled circuits and analog waveforms. And it uses the valves that are available at the time which are things like EF54s and EF55 pentodes, EB34 double diodes and EF50 single diodes and a few others. But those are the main contents of that. Those are the main valves that are used. Now interestingly they're actually available. You can still buy them new old stock. But what you couldn't do is get things like the valve bases because they'd all been in chassis that were destroyed. We had to go to China to get the valve bases. Now also digital logic is expensive and Angate uses three pentodes and three diodes. So the original designers had lots of space saving shortcuts. So the circuits are actually imperfect and it turns out they don't work very well together. So we've had to do lots of experiments to see how to make it all work. And here is a typical diagram from that early document. And it says it's a circuit of a flip flop. Now you probably know that flip flop is a bistable. However the sharp eye ones amongst you will probably notice it's actually a monostable. There's a single CR time constant in the middle. So it actually times out. It just produces a pulse when triggered. So what they cleverly did is they added the reset pulse circuit which can actually reset the monostable early. Now that means you can actually use it as a set reset flip flop. Now that was a big mistake because that's given us so many problems. It turns out it's very sensitive to the strength of the pulses that it gets. Sometimes it'll reset. Sometimes it won't. Sometimes you set send a reset pulse to it and it sets it. And that's given us the most trouble and it caused a lot of setbacks in the actual commissioning of the machine. And this is the boot ROM. Now you probably remember some of you might remember that in the very early computers one actually toggled the input code in on switches. And of course subsequent to that computers have had a ROM that operates when you first switch on. Now these are post office telephone uniselectors electromechanical switches and they're the noughts and wands of the boot code which loads in the paper tape are actually wired up on these terminals. So when it starts it goes click, click, click, click, click and that data goes into the first memory zero of the tap or tank zero of the computer. So the mapping the logic to the chassis is this is these are the high resolution black and white pictures we had. And as we zoom in we can actually see the sort of valves that were there. We can identify the EF 55s and the EF 54s and the diodes and things. And we can zoom right in to the you should just about be able to see that that says coincidence unit something other three possibly. So we know that's the chassis that does coincidence. Coincidence being when the memory word in the tank matches the word you have in the selection register and you have to wait for it to come round. So the coincidence unit puts out a pulse when the word you want is in the tank has come round. So we had to get these parts. I say valves were available as new old stock B9G valve holders for the EF 55s and 54s had to be bought from China and they didn't actually make them very well. Somebody had to go along with a dentist drill and drill out some of the some of the pin the sockets to make them fit a bit better. We couldn't use the original type of components because they would have been too unreliable but we've got we've got components which look similar and we've handmade tank strips and we have to use delay delay lines in various places to to to make signals wait a little bit while something else catches up with them. So we've got lumped circuit delay lines and you can see those pancake coils at the bottom right there. They've been specially wound for us to make these various delay lines. Now it so happens that Milton Keynes is the home of Marshall Amps who specialise in valve based guitar amps. So a lot of the the 20 regeneration chassis that are associated with the memory tanks have been built by them but nearly all all the other chassis have been built in people's sheds garages and I love that picture of Ed Shack so that's one of the guys I work with James. He he built quite a few of the chassis it's amazing he's got a carpeted floor though isn't it very impressive. And there we have an original 1949 chassis and the equivalent 2013 version. That's I'm not sure that looks like it needs a few more components in it before before it was ready to go in but you can see we've tried to adhere to the same it's the same build standards. Now as we've said with these mercury tanks now health and safety said you can't have all these huge great tubes of mercury and it's going to cost too much and we've already established that temperature stability was going to an issue. So it was decided to emulate the mercury delay lines with nickel delay lines that's a nickel wire and you use them magnetostrictive effective in nickel to actually pass a pulse from one end of the wire to the other to give the necessary delays. But at the moment we're using pic microprocessors as shift registers because the the nickel delay lines have been running as a parallel project and haven't been actually installed in the system yet. And there we compare a long nickel delay line in the left hand picture you can see the spiral wound wire and it's got transducers at either end and it uses modern components actually but it eventually produces signals that go back into the valve tanks and then the little pickboard that is used for the to simulate that and that's what we're using at the moment. So there we have EDSAC as it was in 1949 and as it is now at the National Museum of Computing. Now my my job oops okay I'm being waived at so I've got to move on a bit faster so the timeline was started 2010 and I won't go through that but we raised the money we've we've done the design prototyping we've started construction and we're now in the commissioning phase and that's where I came in. I I had a series of lucky coincidences I retired from space science engineering at Leicester University in 2011. I helped run Leicester Hackspace and I joined the mailing list of Betsy Park and the National Museum of Cuting and one day I was invited to help repair BBC micro power suppliers so I got involved with the TNMOC then I went to an open source FPGA weekend at Wuthering Bytes at Hedburnen Bridge where we simulated EXAC on a black ice FPGA board so I was fascinated by this project we had various talks about the history of the the computer so I became a volunteer then at TNMOC and I naturally asked to join the EXAC rebuild project so nearly all the chassis have been built and tested of the 142 they're all sort of working on the bench they don't work too well when they're put all together and that's where I've come in. Our first instruction has been executed and we've actually had the thing running several automatic cycles on its own now these are the sort of circuit diagrams we we're working with obviously I won't go into detail but those of you will with knowledge of vowels will recognize the various they're all pentodes here with with diodes that are used for DC restoration where you've got AC coupled circuitry now the top line you can say see one of the DC coupled things flip-flop FF1 and underneath it the bottom one is we've still got one of the original monostables we're trying to decide at the moment whether we need to change that flip-flop from a monostable to a bistable circuit to make it a bit more reliable now just quickly want to flip through that this is a tribute to the maker community because one of my colleagues there is using a 3d printer with an Arduino which is used to as the solid-state injector unit where we inject op codes into the system and we've even 3d printed nuts which weren't available for some of the front panel switches so they make made them very looking very realistic I've done a lot of debugging with oscilloscopes and the top left you can see the sort of problems I've had to deal with that's the yellow trace is a pulse which is turns on the output from one of the memory tanks and that was a series of ones which should all be the same level now they actually decay in amplitude from left to right that's because of some DC bias problem I've had to tweak things in an amplifier so you see we've got imperfect logic circuits here and then the bottom right shows what happens when you pass a signal through an AND gate the pulse that we want use the one towards the right hand end of the screen but we've had to deal with a DC level that shifts up due to the imperfections of the various diodes that are used in the AND gate so we've got signals that are too high for a nought and they don't go as high as they should do it's ideal it should go up to 20 volts that one it's 5 volt for a centimeter scale so it's going to about 15 or 16 volts that's quite good compared with a lot of the things I've had to deal with then we had oscillating cathode followers this was software designed radio receiver apparently the post office went round to the EDSAT when it was first built and said you're interfering with local shortwave reception and I found that when you have a pair of cathode followers that was driven by a signal and its inverter the whole thing forms a cathode coupled multivibrator and that's the the frequency varying as I squeeze together the wires coming from those the inter chassis connecting wires and the frequency also that's the third on harmonic so it was oscillating about eight or nine megahertz so I also use LT spice for simulating the various circuits we have the valves available the valve characteristics available in LT spice and I show the effect there of loading of a of an amplifier by a simulation of the wires connecting one right to the other converting a squarish waveform to a triangular waveform okay I'm being told I better finish I've done a lot with logic analyzers Chinese very cheap Chinese circuits and in fact only this week I built a four pound logic analyzer 16 channel using a knockoff Cyprus USB evaluation module from China and we've actually been using that only only a couple of days ago you can see the sort of waveforms I'm looking at using this analyzer trying to understand how the coincidence circuit is working and finally okay into the memory of the computer while I press this button here we'll execute the first of those instructions z instruction we'll ring the bell and stop the machine perfect it worked