Can anyone give me some information on cycle time vs clock rate relating to data paths/multicycle data paths? I also want to know on how to find latency and a cycle time of a pipeline? I have a final this week relating to these questions.
In a single cycle data path, there is a critical path. That is, the "longest" route in time will determine how long the enter path must take.
In a multicycle data path, everything is broken into stages. The longest stage determines how long each stage will have to be.
In a pipelined data path, it's the same as multicycle. In the PLDP, you can't skip stages (ie a J instr takes 3 stages in MCDP in comparison to PLDP), each instr must go through each stage in the pipeline. This is to keep everything synchronized in the pipeline.
So, you look at the how many cycles each TYPE of instr takes, and their percentage in an instr set. From there, you can calculate the average CPI, or cycles per instruction. (Cycles/Instr)
Clock rate is how many cycles can be done per second (Cycles/Second). The fast the clock rate, the more Cycles can be done per second, which means it will get through those instructions faster, as instructions are made up of multiple cycles.
Clock time is the amount of time it will take a processor to complete a set of instructions. This is just in seconds. It's the Clock Cycle Time * CPU Clock Cycles, or CPU Clock Cycles / Clock Rate (which makes sense, because it's the total number of clock cycles it needs to do, divided by how many it can do in a second).
Using these tools and the information given in problems, and doing a lot of unit matching, you should be able to solve practice problems easily.
Not sure about latency, I'm assuming you just compare the performance between two machines and that should be enough. You can do that just by comparing them as ratios.
Hope this helps, I have my final on it tomorrow too. Good luck dude!