But How Do It Know? - The Basic Principles of Computers for Everyone by Scott J Clark
Author:Scott, J Clark [Scott, J Clark]
Language: eng
Format: epub, pdf
Publisher: John C Scott
Published: 2009-07-04T00:00:00+00:00
Below is the wiring within the Control Section that does the ‘fetch’ part of the instruction cycle. It uses the first three steps of the stepper and is the same for all types of instructions.
The stepper’s first three steps are shown here, and result in ‘fetching’ the next ‘instruction’ from RAM. Then the rest of the steps ‘execute’ the ‘instruction.’ Exactly what will be done in steps 4, 5 and 6, is determined by the contents of the instruction that was fetched. Then the stepper starts over, fetches the next instruction, and executes it.
The bottom of this diagram includes the Instruction Register. Notice that we have given numbers to the individual bits of the IR, 0 at the left through 7 on the right. We will be referring to the individual bits soon.
Here are the details of exactly how steps 1, 2 and 3 result in fetching an instruction in our little computer:
Step 1 is the most complicated because we actually accomplish two things at the same time. The main thing we want to do is to get the address in IAR over to MAR. This is the address of the next instruction that we want to fetch from RAM. If you look at the wire coming out of step 1 of the stepper, you can see that two of the places it is connected to are the ‘enable’ of IAR and the ‘set’ of MAR. Thus, the contents of IAR will be placed on the bus during ‘clk e’ and set into MAR during ‘clk s.’ Sometime during the instruction cycle, we need to add 1 to the value in IAR, and since IAR is already on the bus, we might as well do it now. If we don’t send anything to the ALU’s ‘op’ bits, they will all be zero, and since 000 is the code for ADD, the ALU will be doing an ADD operation on whatever is on its two inputs, and presenting the answer to ACC. One input comes from the bus, which has IAR on it during this time. If we also turn on the ‘bus 1’ bit during step 1, the other input to the ALU will be a byte with the binary value of 1. If we turn on the ‘set’ of ACC during ‘clk s,’ we will capture the sum of IAR plus 1 in ACC. This just happens to be the address of the instruction that we will want to fetch after we are done with the current one!
Step 2 enables the currently selected byte in RAM onto the bus, and sets it into IR. This is the instruction that we will ‘execute’ in steps 4, 5 and 6 of this instruction cycle. In the diagram, you can see that the wire coming from step 2 is connected to the ‘enable’ of RAM and the ‘set’ of IR.
In step 3, we need to finish updating IAR. We added 1 to it in step 1, but the answer is still in ACC.
Download
But How Do It Know? - The Basic Principles of Computers for Everyone by Scott J Clark.pdf
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.
Linux Device Driver Development Cookbook by Rodolfo Giometti(3932)
Embedded Programming with Modern C++ Cookbook by Igor Viarheichyk(3600)
Implementing Cellular IoT Solutions for Digital Transformation by Dennis McCain(3536)
Embedded Linux Development Using Yocto Project - Third Edition by Otavio Salvador & Daiane Angolini(3363)
TinyML Cookbook by Gian Marco Iodice(3303)
Simplifying 3D Printing with OpenSCAD by Colin Dow(2839)
TinyML Cookbook by Gian Marco Iodice & Ronan Naughton(2601)
Fusion 360 for Makers by Lydia Sloan Cline(2219)
Networking A Beginner's Guide by Bruce Hallberg(2209)
Hands-On Linux for Architects by Denis Salamanca(2051)
But How Do It Know? by J. Clark Scott(2030)
Computers For Seniors For Dummies by Nancy C. Muir(1995)
Raspberry Pi and MQTT Essentials by Dhairya Parikh(1951)
Arduino Project Handbook, Volume 2: 25 Simple Electronics Projects for Beginners by Geddes Mark(1947)
9781803246888-ENHANCING DEEP LEARNING WITH BAYESIAN INFERENCE by Unknown(1899)
Hack and HHVM by Owen Yamauchi(1884)
31 Days Before Your CompTIA A+ Exams (Shanette Luellen's Library) by Benjamin Patrick Conry(1860)
MicroPython Projects by Jacob Beningo(1731)
Hands-On Internet of Things with MQTT by Tim Pulver(1706)
