Prévia do material em texto
Obafemi Awolowo University, Ile-Ife Course Title: Computer Architecture and Organization Course Code: CPE401 TUTORIAL 1 QUESTIONS FOR 2024/2025 SESSION ATTEMPT ALL QUESTIONS INSTRUCTION: (i) PLEASE NOTE THAT YOUR SOLUTION TO THIS TUTORIAL SHOULD BE HANDWRITTEN, NOT TYPED! (ii) THE HANDWRITTEN SOLUTION SHOULD BE ON A FOOLSCAP PAPER (iii) WRITE YOUR NAME AND REGISTRATION NUMBER ABOVE AND BELOW EACH PAGE OF THE FOOLSCAP SHEET. (iv) THERE SHOULD NOT BE A SIGNIFICANT CHANGE IN YOUR HANDWRITING, PLS DUE DATE: FRIDAY, 21/11/2025; TIME 09:00 Question #1 a. In your own words, explain why “computers are designed before they are built” and how this statement justifies the need to study computer architecture and organization. b. Summarize the historical evolution of computing from mechanical devices to AI and edge accelerators, highlighting what changed in the nature of computing systems over time. c. A new startup wants to build a low-cost POS (Point of Sale) terminal for small shops. Using the distinction between computer architecture and computer organization, describe two concrete decisions that belong to architecture and two that belong to organization in this project. Question #2 a. Describe what is meant by computer architecture as a “blueprint or design plan of a computer,” and explain why this description focuses on what the system can do rather than how it is built. b. Explain what computer organization means by referring to units like the ALU, registers, buses, and control signals, and show how it deals with “how the hardware works internally.” c. Given the design goals such as function, performance, reliability, cost, power, time-to-market, suggest an appropriate type of computer system (e.g., desktop, server, supercomputer, embedded system) for each of the following applications and justify briefly: i. Real-time engine control in a car ii. Climate modeling for a national meteorological agency iii. E-commerce web platform for a medium-sized company Question #3 a. Describe how examples like mainframe systems, desktop computers, servers, supercomputers, and embedded devices help you understand the wide range of hardware technologies used in computing. b. Explain why reliability is an important design goal in computer systems, using the ideas of permanent (hard) faults and temporary (transient) faults and their possible impact on real applications. c. A company is choosing between two processor designs for a cloud data centre: i. Design A: Very high single-thread performance, high power consumption, higher cost. ii. Design B: Moderate single-thread performance, many cores, lower power per core, lower cost. Based on the design goals, determine which design is better for (a) web servers and (b) scientific simulations, and explain your reasoning. Question #4 a. Summarize the main reasons why a Computer Engineering or Computer Science student should study computer architecture, emphasizing how this knowledge is useful beyond just this course. b. Describe how time to market and cost/manufacturability influence the way engineers think about designing a new processor or computer system. c. Assume you are to recommend a computing platform for a Nigerian bank installing hundreds of ATMs nationwide. Based on the characteristics of embedded systems, servers, and desktop systems, propose a suitable combination of system types and explain why. Question #5 a. In your own words, describe the role of a computer architect as someone who must balance trade-offs among performance, cost, power, and reliability, and explain why this balancing act is central to computer system design. b. Modern processor design involves trends such as AI acceleration, heterogeneous architectures, and 3D chip stacking. Choose any two of these trends and explain how they help you understand where current processors are heading. c. Consider the following two application domains: i. High-frequency trading system ii. Smart irrigation controller for agriculture For each, analyse the relative importance of performance, power, reliability, and cost, and explain how these differing priorities would shape the architecture and organization choices. Question #6 a. In your own words, explain why measurement is important in computer systems. What does it help engineers and designers to do? b. Describe the main areas in a computer system where measurements are commonly taken, and briefly state what each area is about. c. A web application is experiencing slow page loads. You are told the disk can deliver 3 GB/s throughput with 80 µs access latency. Explain how you would use these two metrics to decide whether the storage subsystem is likely to be the bottleneck. Question #7 a. Explain the relationship between Instructions Per Cycle (IPC) and Cycles Per Instruction (CPI) in simple terms. b. In your own words, describe the difference between FLOPS and TOPS and indicate the kinds of applications where each is most relevant. c. A mobile phone SoC designer must choose between: • Option A: higher clock speed with higher power consumption, • Option B: lower clock speed but better performance per Watt. Describe how you would apply energy and performance metrics to recommend one option for a battery-powered device. Question #8 a. Explain the difference between a bit and a byte and why both concepts are needed when dealing with data size. b. Describe the hierarchy of data size units from bits up to terabytes and explain why larger units are useful in practice. c. Compare how latency and throughput differently impact user experience for: i. video streaming, and ii. An online payment gateway. Analyse which metric is more critical in each case and why. Question #9 a. Explain the use of different time units in computing (ns, µs, ms) by giving an example of a type of operation typically measured in each. b. Explain the relationship between Instructions Per Cycle (IPC) and Cycles Per Instruction (CPI) in simple terms. c. Describe the difference between throughput and latency for an online service (such as a web application) and explain how each one affects user experience.