SCC131: Digital Systems - Instruction Set Architecture (ISA)

0.0(0)
studied byStudied by 0 people
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/23

flashcard set

Earn XP

Description and Tags

Flashcards covering key concepts from the Instruction Set Architecture (ISA) lecture, including ISA types, MIPS instructions, the fetch-decode-execute cycle, registers, program counter, subroutines, and stack operations.

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

24 Terms

1
New cards

What are the components of the von Neumann architecture?

Arithmetic/Logic Unit, Control Unit, Main Memory (Instructions and Data), Input, Output

2
New cards

What is the ISA?

The interface between the hardware and software.

3
New cards

What is an instruction set architecture (ISA)?

A set of commands that a processor can understand and execute.

4
New cards

Name some examples of 'families' of ISAs.

Accumulator-based ISAs and General-purpose-registers ISAs.

5
New cards

What are the characteristics of Reduced Instruction Set Computers (RISC)?

Small number of instructions, common operand format, instructions operate on registers (load/store architecture), instructions typically take 1 clock cycle.

6
New cards

What are the characteristics of Stack-based ISAs?

Instructions can only access operands at the top of a stack. Special PUSH and POP instructions are used.

7
New cards

What categories of instructions does the MIPS 1 ISA have?

Has the following categories of instructions: Arithmetic and logic instructions, Data transfer instructions, Control transfer instructions.

8
New cards

What does the MIPS instruction 'addu $d, $s, $t' do?

$d = $s + $t; unsigned addition; ignore any overflow.

9
New cards

What does the MIPS instruction 'sll $d, $t, constant C' do?

Shift left logical immediate – shifts $t to the left by C bits and puts the result into $d (i.e., multiplies by 2C)

10
New cards

What does the MIPS instruction 'lw $t,C($s)' do?

Load the 32-bit unit (“word”) that starts at MEM[$s+C] into $t.

11
New cards

What does the MIPS instruction 'sw $t,C($s)' do?

Store the word in $t into MEM[$s+C] and the 3 bytes following.

12
New cards

What does the MIPS instruction 'beq $s, $t, C' do?

If ($s == $t) jump to the instruction at PC+4+(4*C)

13
New cards

What does the MIPS instruction 'j C' do?

Jump (unconditionally) to the instruction at the specified address.

14
New cards

What does the MIPS instruction 'jr $s' do?

Jump (unconditionally) to the address contained in register $s.

15
New cards

What are the three steps in the fetch-decode-execute cycle?

  1. Fetch the next instruction. 2. Decode It. 3. Execute it.
16
New cards

What are registers used for?

They are holding areas for data being worked on inside the CPU. They are much faster than main memory.

17
New cards

What are general purpose registers?

The registers used by the arithmetic and logic instructions.

18
New cards

What is the program counter (PC)?

A 'special register' that you can't load and store. It is a pointer to the next instruction to be executed.

19
New cards

What is a return address?

The address of the next instruction in the calling routine.

20
New cards

Which MIPS instruction stores the return address in $31 and jumps to the subroutine at address C?

jal C

21
New cards

Which MIPS instruction is used to return from a subroutine?

jr $31

22
New cards

What is a stack?

A Last In, First Out queue mapped to adjacent locations in memory (MEM[]).

23
New cards

What does the stack pointer (SP) remember?

The address of the top of the stack.

24
New cards

Why is it important to remember the return address when calling a subroutine?

A subroutine is called from many places, so we can’t simply “hard wire” a return address into the program – we must “remember” the return address each time we make each call.