Author Topic: looking for the fastest MPU with a built-in USB  (Read 12983 times)

0 Members and 1 Guest are viewing this topic.

Offline legacyTopic starter

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: looking for the fastest MPU with a built-in USB
« Reply #25 on: December 31, 2014, 01:17:12 pm »
@andersm
i have 2 sensors, each sensor is 128x128x8x20 bit per second, and the host should continuously acquire such a stream
so it's a constant stream of 2x128x128x8x20 bps ~ 5Mbps

the system load looks like an usb Cam
 

Offline legacyTopic starter

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: looking for the fastest MPU with a built-in USB
« Reply #26 on: December 31, 2014, 04:54:21 pm »
also this device has 1Mbyte/sec through USB!
It's a fast eprom emulator, wander what's inside  :box:
 

Offline andersm

  • Super Contributor
  • ***
  • Posts: 1198
  • Country: fi
Re: looking for the fastest MPU with a built-in USB
« Reply #27 on: December 31, 2014, 08:28:27 pm »
If you don't have an USB packet analyzer/logger, try instrumenting your device USB stack to toggle a pin whenever a packet is sent. That way you can at least see the packet rate on an oscilloscope.

To achieve high transfer speeds on the host side, there must always be an outstanding read request. If you use a single thread to read data, process it in some manner and then read some more, you will miss the 1ms scheduling window. Also doing any kind of operating system calls, like printing or writing to disk, can cause your reading thread to stall.

Offline legacyTopic starter

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: looking for the fastest MPU with a built-in USB
« Reply #28 on: January 21, 2015, 11:29:11 am »
here it is a pdf with a lot of information about USB devices pretty supported by FPGALink!

 

Offline ehughes

  • Frequent Contributor
  • **
  • Posts: 409
  • Country: us
Re: looking for the fastest MPU with a built-in USB
« Reply #29 on: January 21, 2015, 07:30:10 pm »
NXP LPC43xx series (I am using the LPC4357)

It has 2 USB ports.   USB0 is a high speed (480MBits/Sec).    I have seen 6Megabytes/Sec writing to a Flash disk when implementing a MSC interface using there ROM drivers. Speed limitation was the disk interface/write speed.

It is the fastest Cortex M4 on the market. (Also has a slave M0 core).

A low cost way to Kick the tires is to purchase 2 NXP LPC-Link 2 Boards.  One as the debugger and the other as the target board.  The LPC-Link 2 has a LPC4370 device that you can use to evaluate.   It is a RAM only device and is very fast (and is triple core!).    The LPC-Link 2 are about $20 USD.

The 4370 has decent DSP performance if needed.  Running out of RAM is quick!

   
« Last Edit: January 21, 2015, 07:36:29 pm by ehughes »
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: looking for the fastest MPU with a built-in USB
« Reply #30 on: January 23, 2015, 07:39:29 pm »
NXP LPC43xx series (I am using the LPC4357)

It has 2 USB ports.   USB0 is a high speed (480MBits/Sec).    I have seen 6Megabytes/Sec writing to a Flash disk when implementing a MSC interface using there ROM drivers. Speed limitation was the disk interface/write speed.

It is the fastest Cortex M4 on the market. (Also has a slave M0 core).

A low cost way to Kick the tires is to purchase 2 NXP LPC-Link 2 Boards.  One as the debugger and the other as the target board.  The LPC-Link 2 has a LPC4370 device that you can use to evaluate.   It is a RAM only device and is very fast (and is triple core!).    The LPC-Link 2 are about $20 USD.

The 4370 has decent DSP performance if needed.  Running out of RAM is quick!

 

The 4370 is a heck of a leap considering the OP's requirement, this is what I am using for a couple of projects at the moment. Triple cores, floating point, and possibly the world's most complicated peripherals, many unnecessarily so. Plus The small matter that it's only available BGA. It's a seriously good chip, but the learning curve is a bitch.
 

Offline abyrvalg

  • Frequent Contributor
  • **
  • Posts: 824
  • Country: es
Re: looking for the fastest MPU with a built-in USB
« Reply #31 on: January 24, 2015, 08:16:52 am »
Check Cypress FX2 also - true USB HS (40+ MBytes/s), lots of code examples. Perhaps your sensors can be hooked directly to it's GPIF port.
 

Offline legacyTopic starter

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: looking for the fastest MPU with a built-in USB
« Reply #32 on: January 24, 2015, 03:47:35 pm »
do you have any Cypress FX2 evaluation board to suggest me ?
i need something @ 3.3V to be interfaced to a (spartan3/6) fpga
 

Offline abyrvalg

  • Frequent Contributor
  • **
  • Posts: 824
  • Country: es
Re: looking for the fastest MPU with a built-in USB
« Reply #33 on: January 25, 2015, 04:28:23 am »
I use local "made in Ukraine" boards very similar to this one: http://www.ebay.com/itm/Logic-Analyzer-EEPROM-CY7C68013A-56-EZ-USB-FX2LP-USB2-0-Develope-Board-Module-/380778239854?pt=AU_B_I_Electrical_Test_Equipment&hash=item58a826d76e
Just search ebay for CY7C68013A - there are tons of such boards (ignore "logic analyzer", "Saleae" etc in descriptions - all of them can be treated as plain FX2 devboards).

You'll need some 8051 compiler (I've tried Keil eval version, then moved to free SDCC) to build firmwares, Cypress SuiteUSB for quick testing (firmware load/program, generic USB send/receive), Cypress GPIF Designer (a visual tool to generate bus config source files).

FX2 is 3.3V powered.

On the other hand FTDI FT232H is a simpler option if you don't need FX2's flexibility (no firmware, just sync/async slave FIFO).
 

Offline legacyTopic starter

  • Super Contributor
  • ***
  • !
  • Posts: 4415
  • Country: ch
Re: looking for the fastest MPU with a built-in USB
« Reply #34 on: January 25, 2015, 10:42:42 am »
On the other hand FTDI FT232H is a simpler option

how fast does it go ?
also, i need something that could work on a SoC/mips linux
wandering if such a chip needs binary driver by FTDI, and in case …  :-//
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: looking for the fastest MPU with a built-in USB
« Reply #35 on: January 25, 2015, 11:43:13 am »
One of the benefits of the FTDI way is that the cross-platform business is dealt with for you, they have drivers for the main desktop platforms. If you want a driver for iOS or something a little more esoteric, you're out of luck unless someone's hacked something together for you.

However it's an additional chip, they're not especially cheap (important if you're manufacturing medium to high volumes) and you will still need to figure out your own application specific protocol on top of what FTDI provide.

I spent some time interfacing both a PIC24 and PIC32 with a MIPs OpenWRT Linux based platform a couple of years ago. There were some features of the USB host driver in full speed that have probably been resolved now, to do with the estimated bandwidth calculation incorrectly rejecting the device. I did fix it, but it was deep in the USB host stack.

I would recommend a LibUSB approach for cross platform at the speed you are requiring, that is ceetainly available on the host side for Linux and OSX (and Windows if you are willing to hack a bit). The 'Windows way' is WinUSB, which isn't the same as LibUSB although at a high level it's attempting to achieve the same thing, namely saving you from having to write your own device drivers.

There are also examples in Microchip's MAL for LibUSB, I am sure other devices also have LibUSB examples.

If your bandwidth requirements were smaller, I'd have no hesitation in recommending HID as your interface, but you're limited to about 500kbps (64 bytes per 1ms frame). The benefit of HID is that it requires no additional drivers, every OS includes HID these days.

Just be aware of one limitation of full speed USB. Although it will match your bandwidth requirements, be aware that some host USB 2.0 controllers and hubs only have a single transaction translator (TT). This means that sometimes multiple full speed devices don't work very well as there is only one TT to handle the high speed translation from full speed. You can resolve this by placing a USB 2.0 hub (or USB 2.0 active extender) between the host and the full speed device, as they will have there own TT.

If I were you, I'd pick a solution that ticks your boxes, and run with it. I may be wrong but it sounds like there may be some analysis paralysis going on here, an affliction I know only too well!
« Last Edit: January 25, 2015, 11:45:00 am by Howardlong »
 

Offline abyrvalg

  • Frequent Contributor
  • **
  • Posts: 824
  • Country: es
Re: looking for the fastest MPU with a built-in USB
« Reply #36 on: January 25, 2015, 04:46:42 pm »
Oops, forgot about MIPS driver requirements. Then FX2 is a good option: you can either match some standard class like CDC or just implement your own protocol for use with libUSB.
 

Offline David Spicer

  • Contributor
  • Posts: 28
  • Country: au
  • Multi functional carbon based lifeform
    • aec
Re: looking for the fastest MPU with a built-in USB
« Reply #37 on: January 25, 2015, 10:40:42 pm »
When wearing my consultants hat my first call for usb devices is cypress.com. They have a big range of parts, kits, useful downloads. All available mail order and reasonably priced. They used to use a 8051 cpu which is a truly horrible piece of 80's junk, but the newer stuff is arm which is nice.

It won,t cost you anything to have a look at their site. Highly recommended. I have done several contract designs with their parts. Usb 1,2,3 all supported.

Another option is xilinx, who do a core, nice soft core processor (microblaze) and free dev tools (webpack) the problem there is that it's a licensed core. And using xilinx licemsed cores forces you to enter flexlm hell. Licensing anything from xilinx is a truly ghastly experience. Waterboarding sounds preferable.
aec-australia.

Nostalgia just ain't what it used to be
 

Offline splin

  • Frequent Contributor
  • **
  • Posts: 999
  • Country: gb
Re: looking for the fastest MPU with a built-in USB
« Reply #38 on: January 26, 2015, 03:05:39 pm »
I use local "made in Ukraine" boards very similar to this one: http://www.ebay.com/itm/Logic-Analyzer-EEPROM-CY7C68013A-56-EZ-USB-FX2LP-USB2-0-Develope-Board-Module-/380778239854?pt=AU_B_I_Electrical_Test_Equipment&hash=item58a826d76e
Just search ebay for CY7C68013A - there are tons of such boards (ignore "logic analyzer", "Saleae" etc in descriptions - all of them can be treated as plain FX2 devboards).

You'll need some 8051 compiler (I've tried Keil eval version, then moved to free SDCC) to build firmwares, Cypress SuiteUSB for quick testing (firmware load/program, generic USB send/receive), Cypress GPIF Designer (a visual tool to generate bus config source files).

FX2 is 3.3V powered.

Crazy - $5 including postage for a complete board including a CY7C68013A which costs $10 (1 off) or $5.98 if you buy 2,500 from Digikey and even more from Mouser - plus lots more for postage/tax/handling if you're outside the USA.

I see you can get them for around $2.5 each (10 off) from Aliexpress. Are they, and those on the cheap 'logic analyzer' boards likely to be counterfeit?
« Last Edit: January 26, 2015, 05:22:05 pm by splin »
 

Offline mazurov

  • Frequent Contributor
  • **
  • Posts: 524
  • Country: us
Re: looking for the fastest MPU with a built-in USB
« Reply #39 on: January 26, 2015, 05:00:46 pm »
You can also use external USB controllers, like Maxim MAX3420 or 3421 (if you need host functionality). They will give you full speed USB if SPI in your micro is fast enough (they take 26 MHz max. SPI clock). PIC32 will give 20 MHz on SPI, this should be plenty to reach the speed you need.   
With sufficient thrust, pigs fly just fine - RFC1925
 

Offline abyrvalg

  • Frequent Contributor
  • **
  • Posts: 824
  • Country: es
Re: looking for the fastest MPU with a built-in USB
« Reply #40 on: January 27, 2015, 11:40:15 am »
splin, there are people around using Saleae clones, I have FX2-based cheap 3-in-1 Altera/Xilinx/Lattice cables - nobody had reported any problem so far. Even if those chips are fake copies, they must be high quality copies.
 

Offline dadler

  • Supporter
  • ****
  • Posts: 851
  • Country: us
Re: looking for the fastest MPU with a built-in USB
« Reply #41 on: January 27, 2015, 09:30:37 pm »
Massive overkill: Sitara AM335x
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf