I have and audio application for which I want to be able to read and write a lot of data at the same time. So what's a lot of data? Well I want to use an Audio codec which will take 24bit samples at a rate of up to 96k samples per second. I want to 'record' up to 5 minutes of audio in stereo. So 24bits * 5 * 60 * 96000 *2 bits of stored data. (24bits is sample size, 5*60*96000 is 5 minutes sampling at 96,000 sps and 2 for stereo)
Now the codec will fire out a stream of data on an I2S connection. Since I want to record and play at the same time I'll need two I2S channels and somewhere to store the data. Since the data should survive a power down I'll have to be persistent memory, so EEPROM or FLASH. Given the memory size I assume it'll have to be FLASH, which will get very complicated as you'll have to wipe a page of Flash before re-write. Might be easier with twice as much Memory as you had spec'd above and write to one Flash chip and read from the other.
So now here's going to be the hard part, I'm small scale so want to be able to solder the Processor. Another hard part is that NXP documentation doesn't mention how you have to connect up the bare minimum connections to get a PCB working. It's not in the data sheet and there don't seem to be Application notes for that. So how do you find that out? I started a support chat with NXP and got told to ask on the forum! You have to find out connection data from the community? At the time I was at the time at the http://cache.freescale.com/files/microcontrollers/doc/data_sheet/K20P144M120SF3.pdf datasheet, but given that response I kinda left it, looking else where. I'm still looking and decided I'd ask the forum.
I should say that I was looking at a processor on farnell which pointed to that datasheet, above, but the datasheet suggested that it didn't document the footprint which was on farnell. So even if you find a chip on a supplier you struggle to find a datasheet and any connection information in it. I'm obviously missing something.
I guess all that connection and layout stuff only matters if you can make the chip store that amount of data.
First of all, I would not recommend K20P144M120 to you. This is an old product. It's longevity is go to the end. I would recommend LPC54608 or LPC54016. They has more powerful performance and very low price compare to the K20. And the more important thing is LPC54xxx has most update SDK and all kinds of demos and tools. But K20P144M120 has little. This is important when you begin to develop software.
But if you have made up your mind and don't care about that, K20 is also fine. When you design the PCB, you can refer to TWR-K60F120M's design file. K20F120M is very similar to K60F120M. They has same die.
Back to your requirement, 24bits * 5 * 60 * 96000 *2=172.8M byte. If you can use a SDRAM with battery power, things could be easier. If you want to use a Flash, that should be a big NAND flash. Because it seems your device will record continuously. You should know that Flash cell, NOR or NAND, has cycling limitation. For NOR device, each cell is guaranteed 20k~100k write/erase cycling. NAND device cell cycling is much less than NOR. So, you have to use large size flash memory to share write/erase cycle equally.
Thanks a million for your help. LPC54xxx sounds good to me, at present my requirements are memory based so whatever uC can run that. I need the 'design file' thanks so much for that. That's the missing piece of the puzzle for sure.
On the memory I'm looking at suppliers but given the amount of memory I'm talking about I'd require far too many chips in any format or technology. I think I might be better put a PC Memory slot into a board and use a PC RAM card, interfacing via a parallel bus. Obviously that'd mean there was no memory persistence on power cycle, but I can live with that.
What kind design file do you need? It is"connect up the bare minimum connections to get a PCB working"? There is only TWR board, EVK board or FRDM board design file. You can design your board base on these document. If you have anything uncertain, you can ask here or create a ticket.
If a PC RAM card is too complicated, may be MRAM is also an option. MRAM-Info | MRAM News, Resources & Information