i don't understand how the uclinux work.
The uclinux can work with a fpga ,and the fpga is an cpu with a logic around this, therefore the uclinux must be modified for the particular function programmed in the fpga.How i do to modified uclinux for this reason?
The uclinux can work with a fpga ,and the fpga is an cpu with a logic around this, therefore the uclinux must be modified for the particular function programmed in the fpga.How i do to modified uclinux for this reason?
uClinux is just a Linux with no MMU support (and hence some limitations in application writing).
FPGA is NOT a CPU!!!!
But they can incorporate CPU cores (and other logic functions).
And currently there are 3 supported softcores in uClinux:
- OpenRisc (www.opencores.org), Microblaze (Xilinx) and NIOS (Altera)
For normal Linux there is also the LEON2 Sparc v8 compatible core.
Pick one of those cores, grab the uclinux distribution and make your life easier. The only thing to modify is your memory layout to tell uClinux where your periphals are and how much memory you have.
If you are seriously interested in uClinux then I suggest you subscribe to their mailinglist.
The I strongly suggest you grab the uclinux souce code and have a look on the include files for the specific CPU...linked to "asm/include" after kernel configuration...
Most memory layout options should go there for periphals...also check CPU specific startup files for memory sizing/configuration...
Since you didn't tell which CPU core you intend to use I can't give more details...and as already mentioned..if you wanna work with uClinux...subscribe to their mailing list!!!!
FPGA is the platform to synthesis your soft processor such as xilinx's microblaze or altera's nios. The uclinux will be put in flash memory and once the fpga boot up, the loader of uclinux will going to boot up too. The concept is same with a pc but in embedded version, that harddisk replace by flash memory and processor replace by embedded softcore or hardcore.