<div class='quotetop'>QUOTE (slacker @ Aug 4 2009, 12:39 AM) <{post_snapback}> (index.php?act=findpost&pid=23391)</div>
--- Quote Start ---
Hi Shmuel,
A flash override file is pretty clearly defined in the Nios II Flash Programmer User Guide. In truth, I'm not 100% sure that it works with EPCS (SPI) flash devices, but it's worth a try.
<div class='quotetop'>QUOTE
--- Quote End ---
--- Quote Start ---
How would I store the firmware there and how do I boot from it ( For booting : I know that I will need to set the reset address of each processor to the area of the external flash - but how does the boot loader access the external flash?[/b]
--- Quote End ---
Well, that depends on what type of flash it is...right? For an EPCS (SPI) flash, the bootloader is stored in a small onchip memory that is part of the epcs_controller component. For the CFI compliant flashes, the bootloader is prepended to the "payload" that you intend to attach.
<div class='quotetop'>QUOTE </div>
--- Quote Start ---
Do I need a custom component ? How much additional development will be requried for a non compliant CFI device?[/b]
--- Quote End ---
It all depends on the type of flash that you decide to use.
<div class='quotetop'>QUOTE </div>
--- Quote Start ---
Also do you know what the common type of external (flash) device people use for multi-processor designs? We need a device that we will have the fastest access to since part of our frimware will not fit within the onboard memory of our Altera chip![/b]
--- Quote End ---
CFI is probably most popular, though I don't know of many that actually run their code from it.
For your multi-CPU questions, you should browse to AN458 on the following page:
http://www.altera.com/literature/lit-an.jsp (
http://www.altera.com/literature/lit-an.jsp)
Cheers,
- Brendan
[/b]
--- Quote End ---
Dear Brendan,
Thank you for your quick response. If you don't mind I haeva couple of more questions
1. For
non-cfi flash devices:-
a) How would I program the flash device ?
B) To boot, will I need to develop a custom boot loader ?
c) Can I use the standard Altera common flash interface controller core to acces this device or will I need to develop a custom peripheral interface ?
2. For my Multi-processor design we wish to use a single FLash device to store the firmware and other data. Will we need a MUTEX core to arbitrate the booting process and access there after to the External Flash ?