On Fri, Sep 30, 2011 at 7:49 AM, M.L. wrote: > The crux of the problem is that USB is master/slave and the PIC32 is the > slave. > You should look into isochronous transfer if you need guaranteed > constant bandwidth. > > I believe the problem is the fact that I was trying to get the microcontroller to do the actual capturing. There's no way it can capture that fast while also managing the memory, incrementing memory points for th= e buffer, going through for loops, if loops. That ought to slow it down at least 20-30 times when done in C. An interesting and attractive product is this: http://www.saleae.com/logic/claiming 24Msps. (Many hardware clones are available, since it's basically a Cypress 8052 board) Internally, the chip is a CY7C68013A-56PVXC8052 type. Looking at the datasheet, it seems that maximum clock speed is 48MHz with 4 clocks per instruction - that's 12MIPS maximum. How is it able to sample at 24Msps? I'd love to know how this one works. Someone has guessed 96MHz CPU clock =3D 24 MIPS. Now reading this thread: http://www.eevblog.com/forum/index.php?topic=3D260= 0.0 Seems it's USB in DMA mode - that explains a lot. Someone has stated: "The hardware just transfers bytes (8-bit =3D 8-channel wide) at the specified rate to the PC. The PC does all work like triggering and decoding." That's still pretty impressive. But how is it able to sample at 24Msps at only 12MIPS? I'd imagine at least 96MHz clock is needed for 24MIPS. And eve= n at 24 MIPS, how is it possible to sample at 24Msps? That's assuming a best case scenario of one sample per instruction. I can't conceive of a way that that's possible, due to instructions to increment memory pointers, etc. UNLESS - the USB DMA is reading directly off of one byte of RAM the entire time, so all the CPU is doing is constantly assigning the PORT values to that single RAM byte. That's my best guess. Any other ideas? Ok gonna try that now with isosynchronous USB transfer with DMA. Huge pain in the ass to get DMA USB working on the PIC. Severe lack of documentation/examples. I can't find ANYTHING for this... --=20 http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist .