Why is Xilinx XPS 8.2i so slow?

Gang

I created a half dozen example projects using ISE 8.2i and the PicoBlaze on my S3-1600 Dev Board. I'm really comfortable with asm programming so the lack of a C compiler was no big deal. I am running under Windows XP SP2 on a dual cpu P6 @ 1.8GHz and 2GB of RAM.

Now I have started using the XPS 8.2i with ISE 8.2i so that I can do some MicroBlaze programming in C. I am creating some very simple hardware systems that consist of the CPU, a uart and some RAM. When I click the button to build the hardware bit stream it is taking 14 minutes to run. When I compile my C code it takes about 45 seconds to compile and then merge the ELF file with the hardware bit stream.

This 14 minute hw build time is totally unreasonable. I find myself not willing to experiment with changes to the hardware because the associated build times.

Am I doing something wrong? The entire hw and sw system is supposed to be based on MAKE files that only reprocess a file that has changed. The XPS environment depends on the ISE environment to create the hw bitstream. My initial ISE/PicoBlaze experiences were very nice (i.e. synthesis, map, place & route, etc were fast).

Is there a way to describe my MicroBlaze design without using the XPS? or am I crazy for thinking this way?

Any help would be appreciated.

Bob

Reply to
bob.zigon
Loading thread data ...

Hi Bob -

Could you post the map report (# of luts, # of brams) of the two systems? I suspect the Picoblaze system is vastly smaller. 14 minutes to run through synthesis, map and par seems quite reasonable, actually incredibly fast to me.

As far as software changes go, I'd suggest that instead of initializing the bitstream with your ELF, just use XMD to download it. This way it takes only the time it takes for gcc.

-Siva

Reply to
Siva Velusamy

Another way I save a LOT of time is by not using EDK (the gui that is :).

Using a X/Cygwin shell and make you can perform all the operations that EDK can but without the overhead of a large Eclipse-based gui running in the background. I do not have data to backup it running faster, but at least it feels that way to me.

To use the command line only, some of the commands you will want to learn are:

"xps -nw system.xmp" - This will launch EDK in command line mode. From here some important commands are: "save make" - this will update (if necessary) the make files which are generated based upon the content of of your .mhs and .mss files.

"make -f system.make netlist" - This will perform synthesis on your EDK project.

"make -f system.make download" - This will generate the bitstream that can be downloaded with iMPACT, as well as perform the download to your board. You will need to ensure that etc/download.cmd in your project directory contains the proper commands to download to your board if you wish to use this method. This step will also perform synthesis if the netlist does not exist.

"make -f system.make program" - This will compile all software for your system. If the system libraries need to be generated/built this will occur also.

If you don't set your application to initialize BRAM, then you can save time by just having to download the software as you are debugging it. Re-downloading the bitstream takes only a few seconds compared to re-initializing BRAM and then downloading. If your software does not harm the state of hardware (i.e. you can re-run the software with the same expected results over and over again), then all you will need to do is download your software w/ XMD:

1) "xmd" 2) "connect mb
Reply to
morphiend

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.