Fastest possible computer created!

  • RockerM4NHUN
    2nd Sep 2022 Member 0 Permalink

    @zaicev9797 (View Post)

     There is an 8 frame cycle, first the next line of the program memory is read, the ALU and register selection signals prime the datalines. In that exact moment the register data and the data part of the program word is loaded onto the data lines reaching the ALU/memory/display. After the ALU took 8 frames doing the computation it dumps the result onto the result bus, perfectly timed to be received by the next computation/saved in memory/saved in register. Pipelining comes in as these parts of the computation happen simultaneously. Reading the program memory, executing the ALU, reading/writing of registers are coordinated to appear as linear from the program's point of view, but in fact they run in parallel.

     

    The only tricky part are the if and jump statements, they block the code execution to allow for reloading the pipeline starting at the jump location.