Chapter 1: Data & Memory Flashcards
Each binary digit is a
bit
A byte is
8 bits
A nibble is
4 bits
The PIC microcontroller instruction set information:
The PIC microcontroller that you will be using has 14-bit instruction words and 8-bit data words
The sequence of instructions executed by a chip is commonly known as a
program
Where is the program stored?
non-volitile memory
Data memory is split up into different areas such as
the stack, heap and general data area (GDA)
How is memory accessed by the instruction set?
Each piece of memory has a unique address that an instruction can use to access that byte of data
What is a microprocessors memory map?
- The memory map of a microprocessor gives you the addresses of different types of memory.
- Addresses are usually given in hexadecimal.
- Even inputs and outputs are shown as it is common to ‘memory map’ them for simplicity, i.e. give them an address to make them look like just another piece of memory.
What determines the speed at which a processor can execute the instruction set?
The speed at which the processor can execute a programme is determined mainly by the speed at which it can access data.
Different types of memory storage can be accessed at different speeds and can vary greatly in cost. Typically the faster memory is also the most costly.
Fast Memory speed details:
- Registers are the fastest type of memory and can be directly addressed by processor machine code instructions.
- The cache is the next fastest and is co-located with the processor and provides fast memory access to locations likely to be needed often.
Issues with main memory speed access?
Main memory requires a bus transaction to access. Typical access time is a few cycles. Storage systems (disk, flash etc.) require multiple bus accesses to configure the relevant I/O controller. Typical access time is hundreds of cycles.
Explain what a program counter does?
A special register called the programme counter marks the address of the current instruction being carried out and increments by one with each instruction.
You can change the linear flow of a programme by adjusting the programme counter.
What is needed for the programmers model?
- Description of all instructions: The Instruction Set
- Memory map
- Details of the registers
- Vector information, i.e. places to look for programs and when to execute them (e.g. on power-up/reset, interrupt vector)
How is timing controlled on a microprocessor?
The speed at which a microprocessor executes instructions is determined by the clock