{"id":1046,"date":"2010-08-16T09:45:13","date_gmt":"2010-08-16T08:45:13","guid":{"rendered":"https:\/\/blogs.mentor.com\/colinwalls\/?p=1046"},"modified":"2026-03-26T16:32:58","modified_gmt":"2026-03-26T20:32:58","slug":"usb-the-need-for-speed","status":"publish","type":"post","link":"https:\/\/blogs.sw.siemens.com\/embedded-software\/2010\/08\/16\/usb-the-need-for-speed\/","title":{"rendered":"USB \u2013 the need for speed"},"content":{"rendered":"<p>I have commented <a href=\"https:\/\/blogs.mentor.com\/colinwalls\/blog\/2010\/05\/04\/esc-silicon-valley-2010\/\" target=\"_blank\" rel=\"noopener noreferrer\">before<\/a> on &#8220;fashions&#8221; in the embedded software world and part of my job is to understand what the hot topics among embedded developers are. A subject that just seems to run and run is USB. I <a href=\"https:\/\/blogs.mentor.com\/colinwalls\/blog\/2009\/08\/03\/usb-easy-but\/\" target=\"_blank\" rel=\"noopener noreferrer\">posted<\/a> about it a while back and promised to write more. In the meantime, we ran a <a href=\"http:\/\/www.mentor.com\/embedded-software\/multimedia\/usb-under-the-hood-webinar\" target=\"_blank\" rel=\"noopener noreferrer\">Web seminar<\/a>, which broke records for attendance, and published a new<a href=\"http:\/\/www.mentor.com\/embedded-software\/resources\/overview\/usb-explained-an-introduction-to-usb-and-its-future-0ab43faa-66f6-4471-9408-8b386f5e74c8\" target=\"_blank\" rel=\"noopener noreferrer\"> tech paper<\/a>, which has proven incredibly popular.<\/p>\n<p>I guess that it is time to deliver on my promise &#8230;<!--more--><\/p>\n<p>Today I am going to focus briefly on one specific area of USB functionality: data transfer speeds.<\/p>\n<p>USB offers a variety of data transfer speeds, each of which may be appropriate for specific situations. Now there are basically four options; this range has gradually increased as USB has been developed:<\/p>\n<ul>\n<li><strong>Low speed<\/strong> [1.5Mb\/s] &#8211; This functionality was included in USB 1.1 and is quite satisfactory for devices needing to transfer low volumes of data at modest speed. For example: mice, keyboards, joysticks and gamepads.<\/li>\n<li><strong>Full speed<\/strong> [12Mb\/s] &#8211; This higher speed was also supported by USB 1.1 and makes sense for more demanding devices, with greater volumes of data. Examples include: modems, digital cameras, printers, scanners and microphones.<\/li>\n<li><strong>High speed<\/strong> [480Mb\/s] &#8211; USB 2.0 added a much faster speed option aimed for large volume storage devices and multimedia application. For example: mass storage, broadband, home networking, residential gateways and digital video\/audio.<\/li>\n<li><strong>Very high speed<\/strong> [4.8Gb\/s] &#8211; Another 10X speed increase is offered by USB 3.0, addressing the need of even larger data storage devices and demanding multimedia like full HD video.<\/li>\n<\/ul>\n<p>As the USB standards have progressed, backwards compatibility has been maintained, while adding the greater data rate options; i.e. USB 3.0 supports all the functionality of USB 2.0, which embraces all the capabilities of USB 1.1.<\/p>\n<p>A network of USB devices exhibits the &#8220;weakest link&#8221; phenomenon. Broadly speaking, the maximum data rate of the system is governed by the hardware and software USB standard compliance. For example, if most of the devices in a chain are USB 3.0, but one is USB 2.0, the maximum transfer speed along that line will be 480Mb\/s.<\/p>\n<p>In deploying USB, care is needed to ensure full interoperability with other devices. One way to avoid problems is to use a fully certified USB stack, like that supplied by <a href=\"http:\/\/www.mentor.com\/embedded-software\/nucleus\/usb\" target=\"_blank\" rel=\"noopener noreferrer\">Mentor Embedded<\/a>.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>I have commented before on &#8220;fashions&#8221; in the embedded software world and part of my job is to understand what&#8230;<\/p>\n","protected":false},"author":71677,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"spanish_translation":"","french_translation":"","german_translation":"","italian_translation":"","polish_translation":"","japanese_translation":"","chinese_translation":"","footnotes":""},"categories":[1],"tags":[300,387,326],"industry":[],"product":[],"coauthors":[],"class_list":["post-1046","post","type-post","status-publish","format-standard","hentry","category-news","tag-embedded-software","tag-nucleus-usb","tag-usb"],"_links":{"self":[{"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/posts\/1046","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/users\/71677"}],"replies":[{"embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/comments?post=1046"}],"version-history":[{"count":1,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/posts\/1046\/revisions"}],"predecessor-version":[{"id":9881,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/posts\/1046\/revisions\/9881"}],"wp:attachment":[{"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/media?parent=1046"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/categories?post=1046"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/tags?post=1046"},{"taxonomy":"industry","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/industry?post=1046"},{"taxonomy":"product","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/product?post=1046"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/blogs.sw.siemens.com\/embedded-software\/wp-json\/wp\/v2\/coauthors?post=1046"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}