ARM Assembly Flashcards
(27 cards)
What makes a system useful in terms of I/O?
Input devices, output devices, and storage devices.
How can a CPU send data to an I/O device?
By using mechanisms like Memory-Mapped I/O (MMIO).
What is an exception in computing?
A special event that interrupts the normal execution of a program, allowing hardware to notify the CPU.
What is Memory-Mapped I/O (MMIO)?
A mechanism where hardware device registers are mapped to specific memory addresses, allowing the CPU to interact with devices using normal load (LDR) and store (STR) instructions.
How do CPU and hardware interact using MMIO?
By reading and writing to the memory locations mapped to hardware device registers.
What address range is typically used for MMIO operations?
0x40000000 to 0x60000000.
What does an interface define in a computer system?
How different hardware components communicate at the electrical or signal level.
What is a protocol in computing?
The exact form and meaning of signals exchanged between sender and receiver.
What are the two signal types in a protocol?
Command signals and data signals.
What is a handshake protocol?
A communication method where the receiver sends an acknowledgment or readiness signal to the sender.
What does the stack (SRAM) store?
Local variables and function arguments.
What does the heap store?
Data allocated during runtime.
What does the global data area store?
Global variables.
What does the text section store?
The machine language program.
What does a temperature sensor measure?
The die temperature over the device’s operating range.
What is the resolution of the temperature sensor?
0.25 degrees.
How is a temperature reading started?
By triggering the START register.
What event is generated when a temperature reading is ready?
The DATARDY event.
Where is the temperature reading available?
In the TEMP register.
How does polled I/O work?
The CPU continuously monitors a control/status register until a ‘data ready’ bit is set, then processes the data.
What is a disadvantage of polled I/O?
It keeps the CPU busy, preventing it from doing other tasks.
How does interrupt-driven I/O work?
Devices send asynchronous signals (interrupts) to the CPU when they have data to send, allowing the CPU to perform other tasks in the meantime.
What is an interrupt?
An asynchronous signal sent by a device to request CPU attention.
What is configurable about interrupt-driven I/O?
The granularity — whether to interrupt for every word or an entire batch.