Dangerous Prototypes

Dangerous Prototypes => Bus Blaster JTAG debugger => Topic started by: 2Ambitious on October 29, 2013, 03:51:07 am

Title: Bus Blaster vs Flashpro4
Post by: 2Ambitious on October 29, 2013, 03:51:07 am
I want to program the Actel Igloo Nano AGLN010 chip. I was going to buy a FLASHPRO4 for the task, but now I'm wondering if I should buy a Bus Blaster instead and use this software: (viewtopic.php?f=37&t=4500&p=44616 (http://dangerousprototypes.com/forum/viewtopic.php?f=37&t=4500&p=44616)). I guess Bus Blaster will be useful for many other things too, and it costs half the price. But I'm concerned that it takes 3 minutes to program an FPGA according to the thread. Isn't that kind of ridiculous? Also I'm worried about the possible frustration with drivers, hardware, firmware, setup, and whatnot. I kind of want it to work out of the box (-ish).
Are there any other reasons why Bus Blaster would or wouldn't be well suited for the task?
Title: Re: Bus Blaster vs Flashpro4
Post by: Sjaak on October 29, 2013, 09:42:25 am
moved to the busblaster forum.

The busblaster is made to emulate the various ft2232 variant out there. I'm guessing it will be the same speed as the device it will emulate. By looking at the topic my guess it is a thirdparty software that can programm your FPGA but isn't as optimized as the ACTEL tools. I dunno if the actel tools supports an ft2232 device directly (which will overcome the speed issues).
Title: Re: Bus Blaster vs Flashpro4
Post by: mikelelere on November 02, 2013, 12:11:14 am
I developed the software posted in that topic by extending the Actel's DirectC 2.7 code that can be downloaded from http://www.microsemi.com/products/fpga- ... ng/directc (http://www.microsemi.com/products/fpga-soc/design-resources/programming/directc). By modifying this code, which is intented to program the FPGAs from a microprocessor, you get a bitbanged JTAG interface, which is much slower than a hardware-based JTAG interface. That's mainly the reason why it takes 3 minutes to program a FPGA, and believe me, this is not "that kind of ridiculous". It is simply not possible to make it faster using a microprocessor (or an USB-to-JTAG interface such as the Bus Blaster). You could improve the throughtput by resorting to buffering techniques as one of the posters in that topic did (although that implementation is flawed, and his modified program might fail to program the FPGA due to timing issues).

To sum up, if you cannot afford spending 3 minutes programming a FPGA (time that other DirectC-based programmers would take as well), I would recommend you buying a professional tool such as FlashPro or Silicon Sculptor (probably faster, I do not know for sure, though).

The Bus Blaster will not work out of the box with the Libero software (the latter will only work with Actel tools, which are not implemented using a FT2232). However, apart from faster operation, I cannot see why using an official tool w/ the Libero software would be a better choice than using the Libero software to produce the programming file and burn it using the BB with my software. The Flashpro tool cannot be used for anything else other than its original purpose, while the BB has (many many) more uses, and it is also much cheaper.

Hope this helps...
Title: Re: Bus Blaster vs Flashpro4
Post by: annalori on January 28, 2014, 06:09:05 am
When you compiled, what changes did you make? It should be setting the chip in the project file, maybe changing one header, and then export the SVF

( ! ) Fatal error: Uncaught exception 'Elk_Exception' with message 'Please try again. If you come back to this error screen, report the error to an administrator.' in /var/www/dangerousprototypes/forum/sources/database/Db-mysql.class.php on line 696
( ! ) Elk_Exception: Please try again. If you come back to this error screen, report the error to an administrator. in /var/www/dangerousprototypes/forum/sources/database/Db-mysql.class.php on line 696
Call Stack
#TimeMemoryFunctionLocation
10.00902046616session_write_close ( )...(null):0
20.00932178192ElkArte\sources\subs\SessionHandler\DatabaseHandler->write( )...(null):0
30.00932178968Database_MySQL->query( ).../DatabaseHandler.php:119
40.05252317688Database_MySQL->error( ).../Db-mysql.class.php:273