
- •V. Ya. Krakovsky, m. B. Fesenko
- •In Computer Systems and Networks
- •Contents
- •Preface
- •Introduction
- •Module I. Basic Components of Digital Computers
- •1. The Structure of a Digital Computer
- •1.1. Introduction to Digital Computers
- •Questions for Self-Testing
- •1.2. The Computer Work Stages Implementation Sequence
- •Questions for Self-Testing
- •1.3. Register Gating and Timing of Data Transfers
- •Questions for Self-Testing
- •1.4. Computer Interface Organization
- •Questions for Self-Testing
- •1.5. Computer Control Organization
- •Questions for Self-Testing
- •1.6. Function and Construction of Computer Memory
- •Questions for Self-Testing
- •1.7. Architecturally-Structural Memory Organization Features
- •Questions for Self-Testing
- •2. Data processing fundamentals in digital computers
- •2.1. Element Base Development Influence on Data Processing
- •Questions for Self-Testing
- •2.2. Computer Arithmetic
- •Questions for Self-Testing
- •2.3. Operands Multiplication Operation
- •Questions for Self-Testing
- •2.4. Integer Division
- •Questions for Self-Testing
- •2.5. Floating-Point Numbers and Operations
- •Questions for Self-Testing
- •Questions for Self-Testing on Module I
- •Problems for Self-Testing on Module I
- •Module II. Digital computer organization
- •3. Processors, Memory, and the Evolution System of Instructions
- •3.1. Cisc and risc Microprocessors
- •Questions for Self-Testing
- •3.2. Pipelining
- •Questions for Self-Testing
- •3.3. Interrupts
- •Questions for Self-Testing
- •3.4. Superscalar Processing
- •Questions for Self-Testing
- •3.5. Designing Instruction Formats
- •Questions for Self-Testing
- •3.6. Building a Stack Frame
- •Questions for Self-Testing
- •4. The Structures of Digital Computers
- •4.1. Microprocessors, Microcontrollers, and Systems
- •Questions for Self-Testing
- •4.2. Stack Computers
- •Questions for Self-Testing
- •Questions for Self-Testing
- •4.4. Features of Organization Structure of the Pentium Processors
- •Questions for Self-Testing
- •4.5. Computers Systems on a Chip
- •Multicore Microprocessors.
- •Questions for Self-Testing
- •4.6. Principles of Constructing Reconfigurable Computing Systems
- •Questions for Self-Testing
- •4.7. Types of Digital Computers
- •Questions for Self-Testing
- •Questions for Self-Testing on Module II
- •Problems for Self-Testing on Module II
- •Module III. Parallelism and Scalability
- •5. Super Scalar Processors
- •5.1. The sparc Architecture
- •Questions for Self-Testing
- •5.2. Sparc Addressing Modes and Instruction Set
- •Questions for Self-Testing
- •5.3. Floating-Point on the sparc
- •Questions for Self-Testing
- •5.4. The sparc Computers Family
- •Questions for Self-Testing
- •6. Cluster Superscalar Processors
- •6.1. The Power Architecture
- •Questions for Self-Testing
- •6.2. Multithreading
- •Questions for Self-Testing
- •6.3. Power Microprocessors
- •Questions for Self-Testing
- •6.4. Microarchitecture Level Power-Performance Fundamentals
- •Questions for Self-Testing
- •6.5. The Design Space of Register Renaming Techniques
- •Questions for Self-Testing
- •Questions for Self-Testing on Module III
- •Problems for Self-Testing on Module III
- •Module IV. Explicitly Parallel Instruction Computing
- •7. The itanium processors
- •7.1. Parallel Instruction Computing and Instruction Level Parallelism
- •Questions for Self-Testing
- •7.2. Predication
- •Questions for Self-Testing
- •Questions for Self-Testing
- •7.4. The Itanium Processor Microarchitecture
- •Questions for Self-Testing
- •7.5. Deep Pipelining (10 stages)
- •Questions for Self-Testing
- •7.6. Efficient Instruction and Operand Delivery
- •Instruction bundles capable of full-bandwidth dispersal
- •Questions for Self-Testing
- •7.7. High ilp Execution Core
- •Questions for Self-Testing
- •7.8. The Itanium Organization
- •Implementation of cache hints
- •Questions for Self-Testing
- •7.9. Instruction-Level Parallelism
- •Questions for Self-Testing
- •7.10. Global Code Scheduler and Register Allocation
- •Questions for Self-Testing
- •8. Digital computers on the basic of vliw
- •Questions for Self-Testing
- •8.2. Synthesis of Parallelism and Scalability
- •Questions for Self-Testing
- •8.3. The majc Architecture
- •Questions for Self-Testing
- •8.4. Scit – Ukrainian Supercomputer Project
- •Questions for Self-Testing
- •8.5. Components of Cluster Supercomputer Architecture
- •Questions for Self-Testing
- •Questions for Self-Testing on Module IV
- •Problems for Self-Testing on Module IV
- •Conclusion
- •List of literature
- •Index and Used Abbreviations
- •03680. Київ-680, проспект Космонавта Комарова, 1.
Questions for Self-Testing
1. What is the purpose of register renaming techniques?
2. What are the types of data dependencies?
3. What are there four main dimensions of register renaming?
4. What is the essence of the basic principle of register renaming?
5. Describe the evolution of register renaming techniques.
6. What is the essence of the Tomasulo’s Algorithm?
7. What are the four fundamentally different ways to implement rename buffers?
8. In which of four possible states may each physical register of the merged architectural and rename register file be at any time?
9. How can we determine possible changes in the states of the physical registers during instruction processing with the help of allowed transitions indicated in the state transition diagram?
10. What is the essence of the instruction shelving principle?
11. What are two revolving pointers in the ROB used for?
12. When does the ROB allow instructions to complete?
13. What actions are performed in the ROB-techniques after an instruction has completed?
14. What is the essence of the operand fetch policies?
15. When does the processor employ the split-register principle?
16. What is the function of rename buffers?
17. How to determine the maximal number of instructions that may have been issued but not yet completed in the processor (npmax)?
18. Why do a few high-performance processors implement two copies of particular register files?
19. What three components of the design space are related to register mapping?
20. What impedes realization of the maximal number of renames?
21. In what case can the renamed buffer be cleared?
22. In what cases do processors use mapping tables?
23. What is searched in all entries with the use of the associative lookup?
Questions for Self-Testing on Module III
1. What is a superscalar processor?
2. What is the SPARC architecture?
3. What is the IU register set?
4. What are register windows?
5. How to manage the register file?
6. How to use register windows?
7. What are the SPARC addressing modes?
8. What is the SPARC instruction set?
9. What are the general and call instruction formats?
10. What are the load and store instructions?
11. What are arithmetical and logical instructions?
12. What are the conditional branch instructions?
13. What is the floating-point on the SPARC?
14. What is the HyperSPARC II processor chips set ?
15. What is the UltraSPARC II system pipeline?
16. What is the power architecture?
17. What is the power-performance efficiency?
18. What is the base microarchitecture model?
19. What are the power-efficient microarchitecture design ideas and trends?
20. What are multicluster superscalar processors?
21. What is multithreading?
22. What are compiler support and energy-efficient cache architectures?
23. What is the microprocessor Power 3?
24. What is the microprocessor Power 4?
25. What are the microarchitecture level power-performance fundamentals?
26. What is the design space of register renaming techniques?
27. What is register renaming?
28. What is the scope of register renaming?
29. What are the register mapping methods?
30. What is the main feature of the NUMA architecture?
31. Why is the NUMA architecture considered as a hybrid architecture?
32. What is the condition for cache to be coherent?
33. What is the main peculiarity of the SMP architecture?
34. What class do conveyor systems belong to?
35. What is the bus scalability limited by?
36. What is the bus throughput limited by?
37. What architecture solutions is the SPARC system based on?
38. What is the role of software in scaling of computer systems?
39. What is the need in scaling of computer systems?