Dangerous Prototypes

General Category => General discussion => Topic started by: octal on May 11, 2011, 06:08:40 am

Title: Saleae released their Logic16 logic analyzer
Post by: octal on May 11, 2011, 06:08:40 am
Hello,
just to let you know that Saleae have released a new Logic16 logic analyzer (16 bit bus).
They seems to have used a CPLD (or FPGA) for this one!


more tech details :
http://www.saleae.com/logic16/specs/ (http://www.saleae.com/logic16/specs/)
Title: Re: Saleae released their Logic16 logic analyzer
Post by: ian on May 11, 2011, 08:01:09 am
Thanks octal! I really like the Saleae 8, I use it quite a bit.

[s:]This side looks like a lot like the Logic Sniffer - LVC(H)16T245 buffer and a Spartan FPGA. I assume it's the same 100pin FPGA on the Logic Sniffer because there is only 1 FPGA family that I know of with this package.

Based on the location, I'd bet U3 is a SC-70 ROM chip because it is close to the config pins, but I could be wrong. Could be a version that doesn't us a ROM chip though (static configuration). I only see two other power supplies (by the round L things), and this chip usually needs 3 (1.2, 2.5, 3.3).

Why the FPGA? I assume it's the smallest Spartan 3, and that it is used for triggering. The tech specs mention compression, maybe the FPGA does some form of RLE. The new version is also much faster (up to 100MHz on 2 or 4 channels (?), probably the FPGA is doing some heavy lifting.

What really makes me curious is if there is still a Cypress USB chip that does the USB stuff. If not, then the USB is also implemented in the FPGA. THere are a number of ($$$) USB cores for FPGA out there, none open source that I know of. It also seems like it would be difficult to upgrade with a FPGA design only.[/s:]
Title: Re: Saleae released their Logic16 logic analyzer
Post by: rsdio on May 11, 2011, 05:49:53 pm
The original logic attempts to handle real-time data using USB Bulk mode, and thus it fails most of the time when running at 24 MHz or even half that.  This is because a USB Host does not guarantee bandwidth for a Device in Bulk mode.  I have talked to Joe about changing the Cypress USB firmware to handle USB Isochronous mode, such that the USB Host would be forced to allocate sufficient bandwidth for real-time data.  At first, Joe thought that USB Isochronous did not support the amount of data that he needed.  In other words, he had considered it, but thought there was a size limitation.  I pointed out that USB High Speed allows multiple packets per frame, because High Speed has microframes.  This means that the original logic could support reliable transfers at 24 MHz, but it would be a serious firmware development effort.

When I first read about the logic16 product, I had hoped that it would address the shortcomings of the original Bulk mode implementation.  At the moment, I'm guessing that the increased memory of the logic16 acts as a FIFO so that the original Bulk mode can still be used.  I assume that the memory is still not large enough to run the logic16 like an OLS, where all samples are stored in local, reliable memory and then forwarded to the Host as bandwidth permits (without risk of data loss).

Any further details known?
Title: Re: Saleae released their Logic16 logic analyzer
Post by: ian on May 11, 2011, 06:11:21 pm
I just want to update and say I was wrong. I assumed this was a picture of the new hardware, but it is the CPLD testing board (XC2C by the looks of it) they are talking about. I'd still like to see inside the hardware :) I posted a picture during the review at Hack a Day.
Title: Re: Saleae released their Logic16 logic analyzer
Post by: jbeale on May 11, 2011, 09:29:50 pm
[quote author="rsdio"]The original logic attempts to handle real-time data using USB Bulk mode, and thus it fails most of the time when running at 24 MHz or even half that.[/quote]

Our experiences are different. I think it depends on the computer you connect it to. It has been reliable for me at 24 MHz, even for 10G sample sets.  Make sure you have a dedicated USB port that's not sharing controller bandwidth with something else.  I'm not saying that using a different USB mode wouldn't be better- as it is, USB bulk mode seems a bit of a hack- but it's been working fine for me.

( ! ) 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.01092068824session_write_close ( )...(null):0
20.01122200416ElkArte\sources\subs\SessionHandler\DatabaseHandler->write( )...(null):0
30.01132201192Database_MySQL->query( ).../DatabaseHandler.php:119
40.05452339928Database_MySQL->error( ).../Db-mysql.class.php:273