diff --git a/.zk/notebook.db b/.zk/notebook.db index 0824c38..b11d00c 100644 Binary files a/.zk/notebook.db and b/.zk/notebook.db differ diff --git a/zk/1726814727_LUWV.md b/zk/1726814727_LUWV.md new file mode 100644 index 0000000..88527f3 --- /dev/null +++ b/zk/1726814727_LUWV.md @@ -0,0 +1 @@ +# Turing Mach diff --git a/zk/Delay_line_memory.md b/zk/Delay_line_memory.md index 8b73bbf..e3d8c6f 100644 --- a/zk/Delay_line_memory.md +++ b/zk/Delay_line_memory.md @@ -17,6 +17,24 @@ created: Wednesday, September 18, 2024 - It worked as follows: - Imagine we have an 8-bit number. The number is input as a sequence of pulses where a pulse is 1 and the absence of a pulse is 0. - - The pulses are converted into sound waves (as with a speaker) and sent - through a mercury-filled tube. - - The length of the tube is calculated... + - The pulses are converted into sound waves (using a transducer, as with a + speaker) and sent through a mercury-filled tube. + - The length of the tube is calculated so that it takes exactly the time of + one machine cycle for a pulse to travel from one end to the other + - At the other end of the tube, another transducer converts the sound waves + back to electrical pulses + - This operates in a loop: the pulses go back into the input end of the tube + and the cycle runs again. + +To read the data, the computer would "listen" to the pulses coming out of the +receiving end. To write new data, the computer would inject new pulses at the +precise moment when it wants to change a '0' to a '1' or vice versa. + +For an 8-bit number there would be 8 pulses for each bit and it would be +necessary to keep track of 8 specific positions in the delay line where each bit +would be stored. + +The limitations were timing - difficult to keep track of each precise bit and +when it would arrive at the output. Also it was sequential rather than random +access. Not every bit could be accessed at once, you had to wait for its time +slot to come around to access it. diff --git a/zk/The_History_of_Computing_Swade.md b/zk/The_History_of_Computing_Swade.md index 4de14a2..a162158 100644 --- a/zk/The_History_of_Computing_Swade.md +++ b/zk/The_History_of_Computing_Swade.md @@ -370,8 +370,8 @@ the ABC to make ENIAC. ### Post-EDVAC devices There were several notable devices which attempted to implement the architecture -described in the _First Draft_ using vacuum tubes and other fully-electronic -methods for memory: +described in the _First Draft_ using vacuum tubes for logic operations and a +variety of different electronic methods for memory: - the Manchester "Baby" - the Cambridge EDSAC @@ -379,6 +379,8 @@ methods for memory: #### Manchester Baby (1948) +![The Manchester Baby Computer](../img/manchester_baby.png) + - An experimental computer intended to create the [von Neumann architecture](CPU_architecture.md) using [Williams_Tube_RAM](Williams_Tube_RAM.md) @@ -390,15 +392,17 @@ methods for memory: #### EDSAC (1949) J.Wilkes et al. +![EDSAC](../img/EDSAC.jpg) + - _Electronic Delay Storge Automatic Computer_ -- Constructed by Maurice Wilkes and others at the Mathematical Laboratory - Cambridge University. +- Constructed by Maurice Wilkes and others at the Mathematical Laboratory of the + University of Cambridge. - The second digital stored-program computer after the Manchester Baby. - It used vacuum-tubes for the arithmetical operations in the ALU and mercury - delay lines for the RAM. + [delay line memory](Delay_line_memory.md) for the RAM. - Designed to be used by relatively non-specialist practitioners from other university departments who were expected to program it themselves. To this @@ -410,6 +414,27 @@ methods for memory: operations) - diagnostics: techniques for verifying program code and its correctness +![Programming Digital Electronic Computer book](../img/programming_a_digital_electronic_computter.jpg) + - The key players wrote the first textbook on programming in 1951: _The Preparation of Programs for an Electronic Digital Computer_ (Wilkes, Wheeler, and Gill) + +#### The Automatic Computing Engine (ACE) (1946) Alan Turing + +- Technical design provided by Alan #Turing working at the Mathematics Division + of the National Physical Laboratory. The product of Turing's theoretical work + in "On Computable Numbers" where he proposes the concept of a + [Turing_machine](Turing_machines.md) and based on his experience with early + single-purpose computing devices at Bletchley. + +- Due to secrecy over wartime work, it was hard for get Turing to build a fully + electronic implementation since this would disclose advances made during the + War. Tommy Flowers was intended to be brought in to build it but again this + was scuppered over the classification of wartime technology. Had this not been + the case, it is likely it would've been seen as on par with the EDVAC in its + design, if not dwarfing it. + +- Turing proposed a stored program architecture with high-speed memory. It would + be more perfomant than the EDVAC as a result. It used punched cards for the + input of data and programs