MCCI Blog

USB 3

Discussion related to USB 3.0 and SuperSpeed.

Introducing the Type-C SuperMUTT

Posted by Terry Moore
Terry Moore
 
User is currently offline
on Tuesday, 01 August 2017
in USB 3

MCCI introduced our Model 3501 Type-C SuperMUTT today, the latest addition to our line of USB development tools!

You may be wondering, however, "What's a SuperMUTT?"

Let's break it down.

In the beginning...

Back in the early days of USB 2.0, Microsoft needed a tool that would let them verify the operation of high-speed host controllers and of their USB host stack. So they invented a test tool, and named it the "Microsoft USB Test Tool", or "MUTT".  This device has a Cypress FX2 controller chip and a lot of test firmware that let it emulate a variety of devices and thoroughly exercise all four transfer types on USB: bulk, interrupt, control and isochronous. It was a small device, that plugged into the USB port like a thumb drive.

The next generation...

When USB 3.0 came out, Microsoft wanted a similar tool for testing SuperSpeed host ports. So the "SuperMUTT" was born.  This device has a Cypress FX3 controller, which adds SuperSpeed support (now known as USB 3.1 gen 1, or 5 gigabit USB).  Again, they added a lot of firmware and host software, but the concept was the same -- a small devic ethat plugs into the USB port like a thumb drive.

Type-C

I suspect you can guess where this is going.  The Type-C SuperMUTT is simply the SuperMUTT, enhanced for Type-C support. But why is it so much bigger?

Well, the Type-C connector can do a lot more than the original Type-A connector.  For example:

  • You can power your PC through the port
  • You can use DisplayPort alternate mode to drive a monitor from the port
  • If your PC is running from another power source, you supply a lot of power to external devices

This is very nice for the user, but it's a big job to test Type-C software thoroughly.  So the Type-C SuperMUTT adds the following features to the original SuperMUTT

  • Support for signaling over the CC wire of the Type-C cable
  • Support for the USB Power Delivery specification
  • Ability to pass power from an external supply to the unit under test (as instructed by the Power Delivery specification)
  • Support for alternate modes, particularly DisplayPort
  • Support for connecting to an external charger, again for testing.

In order to be able to accurately emulate all the variants of the PD specification, the PD interface is implemented with a Lattice iCE 40 UltraPlus FPGA. This gives the ability to emulate the different design decisions of different manufacturers, as well as the ability to emulate and inject various kinds of faults.

With all of this functionality, and all of the electrical power that can be handled, we needed to have a fan. And we needed to have a robust enclosure.

Hence the model 3501 as you see it above.

As you might guess, the 3501 was developed in conjunction with Microsoft; they'll be supplying the Windows test software and embedded firmware for the product. We'll be receiving the second production lot in late September, and we're taking orders now via our online store.

A slight digression

You might have noticed that some of our literature calls the Model 3101-family of USB Connection Exercisers the "MUTT ConnEx-C". This is because it's really a part of the Microsoft USB Test Tool family (and you can see it here on the MUTT page at Microsoft).

Conclusion

Interested in learning more about the details? Post a comment here with your questions, or tweet me at @TmmMCCI, and I'll do my best to answer.

Hits: 62 0 Comments
0 votes

DisplayPort over USB type C

Posted by Terry Moore
Terry Moore
 
User is currently offline
on Monday, 22 September 2014
in USB 3

I attended the USB 3.1 developer's conference last week in Seattle; but the big news about type C didn't come out until today. 

The VESA press release is here: http://www.vesa.org/news/vesa-brings-displayport-to-new-usb-type-c-connector/.

Interesting points:

  1. This wasn’t mentioned during the USB 3.1 Developer Days last week (not even hinted at)
  2. This may have a dampening effect on display-over-USB technologies such as DisplayLink or the USB AV class
  3. This will compete directly with technologies like MHL, DiiVA, and micro HDMI
  4. The press release is confusing. Today, USB 3.1 (gen1 and gen2 in the new lingo, SuperSpeed and SuperSpeed Plus in the old lingo) can use exactly two lanes (one for TX, one for RX). Support for four lanes is "future". So DisplayPort can readily use the extra two lanes with no effect on existing deployment
  5. DisplayPort over type C does conflict with a use case shown for docking stations last week, using type C, in which PCIe Gen2 was run over the spare two pairs of wires.
  6. So far I see no announcements of silicon support, which is unusual when a new technology specification is announced.

Until Intel, Qualcomm or MediaTek provide support in their system chips, or a third party announces a mux chip, this won't show up in real systems. Silicon support is the key. Watch for responses from Silicon Image and DisplayLink.

(Although this is all over the web, I found this thanks to Tom's Hardware, who posted this: http://www.tomshardware.com/news/displayport-alt-mode-superspeed-usb-3.1-video,27731.html)

Hits: 1124 0 Comments

Synopsys demos USB 3.1 support with MCCI's USB host stack

Posted by Terry Moore
Terry Moore
 
User is currently offline
on Wednesday, 17 September 2014
in USB 3

I'm attending the USB 3.1 Developer Days conference in Seattle, and I was pleasantly surprised to see Synopsys demonstrating USB 3.1 host, talking to a USB 3.1 BOT device, using MCCI's host stack on Windows 8.1. (Click on the picture to see the details.) Yep, 918 megabytes per second, or roughly 7.5 gigabits/sec on the bus.

Note that we're getting 918 MB/sec read speed, roughly twice as fast as MCCI's stack with USB 3.0 host controllers.The really gratifying thing is that no modifications to MCCI's USB host stack were required. If you zoom in on the device manager portion of the screenshot, you'll see that they're using MCCI's host stack, along with MCCI's high-performance mass storage drivers. (Which I've written about before: see "MCCI's UASP and BOT Drivers".) Of course, the Microsoft stack would also have worked; we're pleased they chose to demo using our stack.

Since MCCI's Windows stack consists of our embedded system stack (TrueTask® USB), plus Windows-specific wrappers, this means that our embedded stack can offer similar performance for USB 3.1 systems, in addition to providing the peace of mind of a stack that has been tested at USB-IF PIL, and used by millions of users on Windows systems.

Of course, the kudos should really go to Synopsys -- it's very impressive. Glad we could be a part of it. I'm looking forward to even better performance once we have a chance to tune the software part of the demo.

Hits: 838 0 Comments

Belated Hat-Tip to Tom's Hardware UAS Review

Posted by Terry Moore
Terry Moore
 
User is currently offline
on Saturday, 03 November 2012
in USB 3

A friend of mine (Paul Berg) likes to say "better never than late". However, a colleague brought my attention to a great review of USB 3.0 and UAS throughput issues in Tom's Hardware, by Andrew Ku: Faster USB 3.0 Performance: Examining UASP And Turbo Mode. Unfortunately, it was published last June. I'm embarassed not to have noticed it before now.

The article gives an excellent overview of the benefits of USB 3.0, and the benefits of UAS using a product like the ASUS USB 3.0 Boost utility and MCCI's ExpressDisk UASP class drivers.

Tags: UASP
Hits: 1788 0 Comments
0 votes

How USB 3.0 Host Controller Certification Works

Posted by Terry Moore
Terry Moore
 
User is currently offline
on Tuesday, 16 October 2012
in USB 3

As we announced today, MCCI's customer ASMedia received certification for their xHCI 1.0 host controller.

I thought it would be interesting to summarize how the USB-IF host controller certification process works in practice.

The process starts when the host controller vendor (ASMedia in this case) books a week-long slot at the USB-IF SuperSpeed USB Platform Interoperability Lab (or "PIL"). This lab is located in Portland, Oregon. ASMedia is a USB-IF member company, which is good: slots are only available to member companies.

Slot availability is limited, and demand is high -- this is the only place where you can currently certify SuperSpeed host controllers and hubs. Recently, the lead time seems to be about four to six weeks.

When the scheduled time arrives, companies typically send hardware, software, and system engineers to the PIL to perform testing and debug problems. A number of different tests are performed.  

  • Electrical and low-level tests check the performance of the USB 3.0 PHY.  These are low-level analog tests; they check eye diagrams, bit error rates, and other functions that are handled by low-level hardware.
  • Device functionality tests check the ability to operate specific reference devices correctly. These tests are not limited to plugging in the device and verifying function; they also exercise the devices and the system in various power management scenarios (suspend, hibernate, reboot, shut down).
  • Gold Tree tests check the performance of the host controller when operating a referece tree of hubs and known devices. Again, these tests are not merely functional, but also include power management.

The device functionality tests, and the gold tree tests, require that a Windows-compatible host stack be supplied by the host-controller vendor. This is where MCCI comes in. Standard class drivers from Microsoft and third parties are used over the vendor stack (which we provided to ASMedia). Everything has to work exactly as they work on the reference stack and reference host controller. For high-speed (USB 2.0) devices, the reference host controllers is the EHCI controller; for full-speed and low-speed devices, the reference is the UHCI controller. The reference stack in either case is the Microsoft USB stack.

The point of doing this testing is two fold: it proves that the ASMedia host controller can generate the appropriate bus traffic in response to the many different patterns generated by the devices and their associated class drivers. It also proves that the MCCI stack will operate successfully in all these scenarios, and will emulate the Microsoft USB stack well enough that the class drivers will operate without problems.

A consequence, however, is that the software and hardware are co-tested. Whenever a problem arises, the software developers and hardware developers must work together to determine if the problem is in hardware or software. Then the teams must collaborate to determine the best resolution. Sometimes special software versions must be built to highlight the bug for the hardware team and to make it easier to reproduce. In this case (as at previous PIL tests by our customers), MCCI sent an engineer to work on-site with ASMedia's engineers throughout the PIL process.

Of course, not every test passes initially. The process of getting certification for early hardware and software was frustratingly slow. We'd test for a week, then return to our labs, while we waited for the next available slot. When we returned, we often found that the PIL engineers had improved their tests. This is good for the industry, but frustrating for the engineers; we'd return thinking that all was well, only to learn that new tests were finding new problems.

On the other hand, it means that passing the test is a real accomplishment, both for ASMedia's team and for MCCI's team. Congratulations to all the engineers involved!

Hits: 2462 0 Comments
0 votes

How microseconds matter (or, Show your work)

Posted by Terry Moore
Terry Moore
 
User is currently offline
on Thursday, 04 October 2012
in USB 3

In my recent EDN article, The Challenges of USB 3.0, I pointed out that microseconds matter a lot in designing USB 3.0 software. I said:

In this realm, microseconds matter. Consider a disk drive capable of 300 megabytes/second throughput, where each transfer moves 1MB. This implies that the system (host and device) must complete at least 900 transfers per second. In the simplest case of sequential access, each transfer must complete in 1,111 microseconds.

Suppose that system overhead adds 20 microseconds delay to each transfer. This will drop the number of transfers per second, and we’ll only achieve 295 megabytes per second. This may result in a competitive disadvantage, if the competitor can go faster.

A reader asked me to clarify this. I was thrilled that someone actually read to page three!

When I wrote that part of the article, I was really compressing it in order to meet the space limitations.

I was assuming 3 USB transfers per 1MB operation -- one for command, one for data, and one for status, and I was assuming that these happen sequentially.

If there are 3 USB transfers per 1MB operation, then that's 900 USB transfers to move 300 megabytes. Therefore, to move data at 300MB/sec, each USB transfer must average1/900 of a second, or  1,111 microseconds.  If we add 20 microseconds of overhead to each USB transfer due to software, then each transfer takes 1,131 microseconds.  In that case, we can only do 884 transfers per second;  and in that case we can only issue about 295 reads per second; and (assuming that each read moves 1 megabyte) we're limited to 295 megabytes per second.

This pattern is typical for data transfers from  mass storage devices using the Bulk Only Transport (BOT) protocol. There's a newer USB Attached SCSI (UAS) protocol that solves this problem, but unfortunately it is not yet widely supported. The majority of USB 3.0 drives, such as the SanDisk Extreme 64G, still use BOT, because that's what's widely supported by Windows.

Tags: Untagged
Hits: 1773 0 Comments
0 votes

Article in EDN: The Challenges of USB 3.0

Posted by Terry Moore
Terry Moore
 
User is currently offline
on Tuesday, 02 October 2012
in USB 3

EDN yesterday published an article I wrote on USB 3.0 implementation.

http://www.edn.com/design/systems-design/4397531/The-Challenges-of-USB-3-0

The web these days runs on feedback: please let me know what you think.

Tags: USB3
Hits: 1680 0 Comments
0 votes

The TrueTask USB 3.0/2.0 Software Platform

Posted by Terry Moore
Terry Moore
 
User is currently offline
on Monday, 01 October 2012
in USB 3

It's funny how things work out. The TrueTask® USB software platform (which MCCI announced this morning) is a product that took nearly four years to develop, and is based on work we started in 1996 -- and yet we didn't realize what we had accomplished until relatively recently.

Tags: Untagged
Hits: 1565 0 Comments
0 votes

MCCI Authorized to Perform USB 3.0 SuperSpeed Certification Testing

Posted by Terry Moore
Terry Moore
 
User is currently offline
on Tuesday, 12 June 2012
in USB 3

MCCI has been authorized to perform USB 3.0 SuperSpeed certification testing, as part of the independent test lab program organized by USB-IF.

The full details are in our press release:  2012-06-11-superspeed-testing.pdf.

For a sample of the press-release "as run", check out PRnewswire or Yahoo finance.

We updated our USB test FAQ and our compliance overview pages.

Congratulations to our hard-working USB test team!

 

Hits: 2449 0 Comments
0 votes

Synopsys / MCCI get 173 Mbytes/sec with Lexar Triton flash drive

Posted by Terry Moore
Terry Moore
 
User is currently offline
on Wednesday, 02 May 2012
in USB 3

Eric Huang at Synopsys posted an interesting test result with a Lexar Titon flash drive, and a video demo:

http://blogs.synopsys.com/tousbornottousb/2012/04/26/the-fastest-usb-3-0-flash-drive-in-the-universe-maybe/

173 Mbytes/second is 1,384 Mbits/second.  The last time I measured the read speed on the drive in my notebook, it was peaking out at about 60 Mbytes/second.  This suggests that it might be faster to boot a VM from a Triton flash drive, and put my critical files over there, than it would be to run from my in-box drive.  Impractical, but faster.  I'll have to check that out if I get a spare moment.

Unfortunately, capacity is still pretty low, only 64G.  (I'm old enough to be embarassed to be saying "64G is low capacity", but it's still true -- my PC has a 500G hard drive, and I'm using 300G.  The apps I use seem to be pretty fat.)

Tags: Untagged
Hits: 2069 0 Comments
0 votes
Legal and Copyright Information