Can a software memory management unit be implemented on a 8032 microcontroller ?
"You too, eh? ... Is this a class project?" Ah no, this is the one I was thinking of: http://www.keil.com/forum/docs/thread7324.asp So why did you start a new Thread on the same question?
"You can get 2 Mbyte ... flash for $2 or less." Do you mean 2Mbit? That's still 256K bytes, though - plenty for this!
Upon boot up, I would like to get only 32kB of 116kB into 8032's Program memory which is implemented as SRAM of size 32KB. This is uttely STUPID. what does virtual memory have over banking. You can get 2 Mbyte of fast enough for code memory flash for $2 or less. I would like to know what device that, together with the cost of code RAM required for "virtual" comes out cheaper. Not to mention the development costs involved. There is no reason than someones intent "I am going to show how smart I am". That this just makes you look dumb, you eveidently have not realized. OK, there is another possibility, Some individual has designed some hardware mindlessly craeting the design before even finding out what a '51 is. Erik
"Is it ok to implement mmu mechanism on an application like MP3" What exacly do you mean by, "an application like MP3"? Do you actually have the 8051 running the MP3 decoding algorithms? I'd have thought that was quite a challenge for an 8051 running directly from Flash without any code banking - let alone the paged scheme you're proposing!! :-0
Ok Neil, I got what IAP Falsh is. Sorry
Hi Neil, Yeah 7445 was a real coincidence. It surprised me too. My project specification says " I have to get only 32KB code out of 116kB code into the 8032's PM". So, i can't use code banking here. I need to use a mechanism like paging to see that the code comes into the PM(SRAM) of 8032 in 32kB chunks only. Is it ok to implement mmu mechanism on an application like MP3 as I have read some articles on the net stating it holds good for only 32/64 bit controllers ? If yes, can u please suggest some links which could help me implement the same. What is IAP Flash ? Regards, Chetan
http://www.keil.com/forum/docs/thread7340.asp http://www.keil.com/forum/docs/thread7413.asp
"This isn't a class project and I have no contact with the person who has posted thread 7445." You must admit, it's a big coincidence though, isn't it? "I would like to know whether MMU concept can be inplemented on 8 bit controllers." Of course it's possible - see the answer in the other thread. But is it sensible? Why not just load the entire code into SRAM and run from there, using "conventional" code banking? Or load into IAP Flash and, again, use "conventional" code banking? (whatever you do, all will need some sort of "trick" to write to CODE space).
Hi Neil. There must be some misunderstanding. This isn't a class project and I have no contact with the person who has posted thread 7445. I would like to know whether MMU concept can be inplemented on 8 bit controllers.
You too, eh? http://www.keil.com/forum/docs/thread7445.asp Is this a class project?
My project is on a MP3 player whose code size is 116kByte which is stored in a Nand Flash chip. Upon boot up, I would like to get only 32kB of 116kB into 8032's Program memory which is implemented as SRAM of size 32KB. I want to implement paging mechanism for getting 32KB blocks into 8032's PM as 8032 has no MMU support. So, i would like to know whether the same can be implemented on a 8 bit microcontroller.
Why would you want to do that? Exactly what functionality do you want from this "memory management unit"? Try a search for "malloc" and "dynamic allocation" in relation to the C51 tools, and see all the previous discussions on this topic!
View all questions in Keil forum