The answersDownload the PDF
Worksheet

A9.1 Hardware, software and the stored program

Computer architecture · A level · OCR H446 1.1.1, AQA 7517 4.6.1.1, Eduqas A500QS 2.1 · about 20 min

BugBotLab
NameClassDate

What this lesson is about

Internal components, the three buses and their widths, I/O controllers, the stored program concept, and von Neumann against Harvard.

Questions 6 marks in all

  1. [1 mark]Which bus is unidirectional, carrying signals only from the processor?

    1. AAddress bus
    2. BData bus
    3. CControl bus
    4. DAll three
  2. [1 mark]A processor has a 20-bit address bus. How many different memory addresses can it use?

  3. [1 mark]Which statement is the stored program concept?

    1. AMachine code instructions are stored in main memory and fetched and executed serially by the processor
    2. BPrograms are stored on secondary storage so they survive power loss
    3. CInstructions and data are kept in separate memories
    4. DA program is set up by wiring the processor for each job
  4. [1 mark]Where is the Harvard architecture typically used?

    1. AEmbedded systems and digital signal processors
    2. BDesktop PCs running many applications
    3. CWeb servers
    4. DSpreadsheet software
  5. [1 mark]What is the job of an I/O controller?

    1. ATo connect a device to the buses and translate between the processor's signals and the device's
    2. BTo store the program while it runs
    3. CTo decode instructions
    4. DTo add numbers for the processor
  6. [1 mark]How does hardware relate to software?

    1. ASoftware is instructions that only do something when run on hardware, and hardware needs software to tell it what to do
    2. BSoftware is the physical parts and hardware is the programs
    3. CHardware can do useful work without any software
    4. DSoftware is only the operating system

The task: bus widths

Work out what a bus of a given width can carry. - For each address bus width in [12, 16, 24, 32] bits, print how many different addresses it can make, as a whole number with no commas, in the form address bus 16 bits: 65536 addresses. - For each data bus width in [8, 16, 32] bits, print the smallest and largest unsigned whole number it can carry, in the form data bus 8 bits: 0 to 255. Print the seven lines in that order. The robot does not move.

# the two lines every program starts with: the commands, then the robot
from bugbot import *
connect()

address_widths = [12, 16, 24, 32]
data_widths = [8, 16, 32]

Plan your program here, then type it in and press Run.

QR code
Do it on the robot
www.bugbotlab.com/learn/a9-1-hardware-software-and-the-stored-program/
The simulator checks it and tells you when it passes. Nothing to install, no account.

Challenges

  1. A processor has a 20-bit address bus and each address holds one byte. How many MiB can it address?
  2. Give two reasons a washing machine controller would use Harvard architecture.
  3. Explain why the data bus must be bidirectional but the address bus need not be.