Hi,
I'm a software engineer and this is a question involved hardware and software of ARM920T that I'm not sure yet.
The hardware group designed a development board of MC9328MXL for our software enginees to work on it. When I look at the schemetic and dig into ARM920T documents, I'm confused on following question.
The hardware board uses only 16 bits of the data bus, i.e. 0-15 bit, the bit 16-31 are not connected. So the all memory chips are 16 bit memory chips too. I asked the reason, the answer is the plan is to use the thumb mode only and the thumb mode is 16 bit.
In section 4.1.1 of ARM DUI OO56B "ARM Developer Suite", there are 4 reasons that might be ARM state.
- ARM processes always start in ARM state.
- Functionality: such as no enable/disable interrupt in thumb mode
- Exception handling, the first part of exception handler must be within ARM state.
- Standalone thumb program. I'm not clear what here is talk about
For my understanding, the ARM state is required some time, even most of time the cpu is running in the thumb mode.
If the ARM state is required, does the hardware has to be 32 bit data bus available? can we have 16 bit only data bus?
Thanks for any help.
xugg