On Tue, Mar 2, 2010 at 23:28, Firas Abbas <[email protected]> wrote:
> I think USRP2 has a big (1 MByte) external static RAM. Yes, it does. But that's not where the embedded microprocessor instruction store is located. The aeMB reads instructions out of a 32K block ram inside the FPGA itself. It may be possible to use the SRAM as the code store and the block RAM as an I-cache, but that's a fairly significant amount of FPGA design work/modification, and cache-miss performance might be too slow. In any case, about 25% of code in the firmware (txrx.bin) is combined daughterboard management, like tuning control parameter calculation, etc. By breaking these out into individual images, most of that space is freed up for other things. Another option would have been to implement overlays, where the required daughterboard code is loaded into a common place in memory from the SD card after the unit detects which daughterboard is installed. There are other opportunities for improving the code size of the other 75%. It seems the Microblaze gcc port, at least the version we're using, is not that efficient at code generation. Patches always welcome :-) Johnathan _______________________________________________ Discuss-gnuradio mailing list [email protected] http://lists.gnu.org/mailman/listinfo/discuss-gnuradio
