Can anyone tell me if there are any good documents out there that show a simple example of memory mapping an external RAM (or even an LCD) on the QE128 or other S08 with an MMU? I'm assuming this would be a banked mode setting, but I can't even figure out how the address and data lines would be arranged on the QE128 - and whether I need any additional decode logic. I have seen many examples in Freescale docs showing the internal page register manipulation and pointer control, but nothing that gives a nice hardware+software example of maybe adding a simple 8-bit memory mapped external part - and how to work with it.
Thanks much!
Hi tonyp.
Thanks for response.
As this is the first "banked" part in the S08 line, what does the banked paging scheme really buy you in this part? Is it the only way you can access the internal flash memory beyond the base 64K? The data sheet (page 63 on the MMU) kind of threw me because it indicated access of up to 4MB of program/data space. I also noticed that several of the port pins are dual labeled sequentially from ADP0 to ADP23 - like an external address bus. But there is no mention of it in the data sheet. Finally, you can see they connected a large 256kx16 MRAM in on the QE128 in the blood pressure monitor design, but I don't see a lot of details beyonds the schematics.
I figured that was external, but now its sounds like its just covering the internal stuff up to 128K?
Thanks again
The QE128 has more than 64K and a paging scheme was needed to access the extra memory.
The 4MB limit is theoretical. If you multiply the page size by the maximum number of pages allowed by the PPAGE register size you'll get that number. Currently, there is no part with that much memory.
ADP is for A/D Port, I guess. I don't like it either when they always change the way they name things exactly because it only adds more confusion when dealing with a new part, but what can you do?
Adding external memory (or LCD) is possible but for use with 'bit banging'. You can use that memory for data but not to run a program directly from it.
Hi tonyp.
Just wanted to say thanks again for helping me sort that out. I have moved on to the MCF52256 to get back on track. Although its 32 bit, its very inexpensive and seems to be ideal (internal RAM/Flash memory + external bus.)
Thanks again.