Lesson 5--Registers and Memory Flashcards
Registers
Architecturally visible containers other than memory
Register files
a homogeneous register set
Cluster
A group of register files and functional units interconnected with an interconnection network.
VLIW communication
Most communication will be within the cluster.
Less communication inter-cluster.
Very little memory communication.
Two Types of Clustering
Architecturally Invisible
Architecturally Visible
Architecturally Invisible Clustering
- -Appears as one large register file to the compiler.
- -Hardware needs to copy between register files.
- -Detecting when copies of data are needed is hard.
- -All registers need to be exposed in one operand field.
- -Hardware stalls due to copying between registers
- -NOT scalable
Architecturally Visible
- -ISA must include a way to specify operations assigned each cluster
- -The copies between clusters are implicit copy or explicit copy
- -Directly copy registers to registers in a different cluster
Implicit copy
Operations may r/w operands in non-local registers. Complicated for scheduling and scalability issues
Explicit copy
Only a special operation can access a remote register under compiler control and must be inserted in a special place in the code. May increase instruction issue pressure and code size
Indexed register files
Go to a specific register in a file (base + offset)
Rotating register files
Rotate files using a round robin technique.
Frame
Area where the inputs, outputs and variables of a function call reside
Advantage of allocating the frame in a register file?
Eliminates register spills and restores at call boundaries
Register spill
When a function is called, all of the variables in the register file must be stored in memory before the new variables can be loaded into the file.
Restore
When the function is called again, the variables have to be called from memory and restored to the register file
True
True or False: Registers and memories are the most important part of computer architecture, especially for RISC processors.
RISC
Registers and memories are the most important part of computer architecture, especially for
CISC or RISC processors.
RISC
CISC or RISC: processors require all data be in registers before execution of instructions.
True
True or False: In VLIW there is no bypassing
VLIW
VLIW or RISC: There are specific instructions for moving data from register to register, this gives more flexibility to the programmer, but it means there can be no bypassing.
VLIW
When it comes to Clustering, there is a lot of pressure on register files in RISC or VLIW.
Groups
When it comes to Clustering, to reduce the pressure, the register files and functional units are clustered into _____?
interconnection
When it comes to Clustering, they are connected with an interconnection or intraconnection network.
True
True or False: there are multiple commands to the register files, so each must be able to act independently with functional units.
Scalability
There were large multiported register files, but scalability or unscalability was hindered by this method
VLIW
In VLIW or CISC intercluster communication is necessary.
Within
Most communication will be within or outside the cluster
Less and little
With the cluster, much less or more communication intercluster, and very little or more memory communication.