{"id":5721,"date":"2013-09-16T09:00:32","date_gmt":"2013-09-16T09:00:32","guid":{"rendered":"https:\/\/www.techdesignforums.com\/practice\/?p=5721"},"modified":"2019-03-31T17:30:06","modified_gmt":"2019-03-31T17:30:06","slug":"usb-3-0-protocol-layer-1","status":"publish","type":"post","link":"https:\/\/www.techdesignforums.com\/practice\/technique\/usb-3-0-protocol-layer-1\/","title":{"rendered":"USB 3.0 protocol layer &#8211; part 1"},"content":{"rendered":"<p><a href=\"https:\/\/www.techdesignforums.com\/practicetechnique\/usb-3-0-functional-layer\/\" target=\"_blank\" rel=\"noopener noreferrer\"><em>&lt;= Previous article: USB 3.0 Functional Layer<\/em><\/a><\/p>\n<p>In USB 3.0, the protocol layer converts requests from the functional layer into transactions consisting of packets, and manages the end-to-end data flow between the host and the device.<\/p>\n<div class=\"article_figure\"><a class=\"figure\" title=\"Figure 1 : The protocol layer of USB 3.0 manages the end-to-end flow of packets (Source: Synopsys)\" href=\"https:\/\/www.techdesignforums.com\/practicefiles\/2013\/09\/USB-University-diag-4-lrg.jpg\"><img decoding=\"async\" src=\"https:\/\/www.techdesignforums.com\/practicefiles\/2013\/09\/USB-University-diag-4-med.jpg\" alt=\"The protocol layer of USB 3.0 manages the end-to-end flow of packets (Source: Synopsys)\" \/><\/a><\/div><div class=\"article_figure\"><p class=\"figure_wrapper\"><span class=\"figure_title\">Figure 1 <\/span>The protocol layer of USB 3.0 manages the end-to-end flow of packets (Source: Synopsys)<\/p><\/div>\n<p>The protocol layer\u2019s functions include:<\/p>\n<ul>\n<li>Ensuring end-to-end reliability for packets<\/li>\n<li>Effective power management<\/li>\n<li>Effective use of bandwidth<\/li>\n<\/ul>\n<p>Packets in USB 3.0 begin at the transmitter protocol layer and end at the receiver protocol layer.<\/p>\n<p>The header and data packets include an address (holding the device address, endpoint number, and direction); and a route string describing the path between the host and device.<\/p>\n<p>The application data is embedded in the data packet payload. The host starts all the data transfers, with packets being routed through all the intermediate hubs to the target device.<\/p>\n<p>Devices respond to, or defer, the packet. All packets from the device are routed to the host. Deferred requests are restarted asynchronously by the device. The bus enters low-power mode whenever transactions are not happening.<\/p>\n<h2><b>Types of packet<\/b><\/h2>\n<p>There are four types of packet:<\/p>\n<ul>\n<li>Link Management Packet<\/li>\n<li>Isochronous Timestamp Packet<\/li>\n<li>Transaction Packet<\/li>\n<li>Data Packet<\/li>\n<\/ul>\n<p>In more detail:<\/p>\n<p>The <i>Transaction Packet<\/i> traverses all the links in the path directly connecting the host and a device, and is used to control the flow of data packets, configure devices and hubs, and so forth.<\/p>\n<p>Transaction packets can also be used for:<\/p>\n<ul>\n<li>Controlling bursting<\/li>\n<li>Flow control<\/li>\n<li>Short packet management<\/li>\n<\/ul>\n<h2>Packet routing<\/h2>\n<p>Each downstream packet has a Route String field, a 20bit field which represents a concatenation of port numbers at each tier of the route (0 for US port; 1 to 15 for DS ports).<\/p>\n<p><a href=\"https:\/\/www.techdesignforums.com\/practicetechnique\/usb-3-0-protocol-layer-2\" target=\"_blank\" rel=\"noopener noreferrer\"><em>Next =&gt;\u00a0 Protocol layers in USB 3.0 &#8211; part 2<\/em><\/a><\/p>\n<h2><b>Further information<\/b><\/h2>\n<p><em>If you are new to designing with USB, or looking for tips on implementing USB 3.0 IP, attend Synopsys&#8217; \u201cUSB 3.0 University.\u201d Topics in this instructional video series range from fuller descriptions of the Link Management Packet, Isochronous Timestamp Packet, Data Packet, to each Transaction Packet\u2019s functionality and more. Click on the links below.<\/em><\/p>\n<p><a href=\"http:\/\/www.synopsys.com\/cgi-bin\/dwusbuvs\/reg1.cgi?file=usb3-why-usb\" target=\"_blank\" rel=\"noopener noreferrer\">Why USB 3.0?<\/a><\/p>\n<p><a href=\"http:\/\/www.synopsys.com\/cgi-bin\/dwusbuvs\/reg1.cgi?file=usb3-overview\" target=\"_blank\" rel=\"noopener noreferrer\">USB 3.0 Overview<\/a><\/p>\n<p><a href=\"http:\/\/www.synopsys.com\/cgi-bin\/dwusbuvs\/reg1.cgi?file=usb3-functional-layer\" target=\"_blank\" rel=\"noopener noreferrer\">USB 3.0 Functional Layer<\/a><\/p>\n<p><a href=\"http:\/\/www.synopsys.com\/cgi-bin\/dwusbuvs\/reg1.cgi?file=usb3-protocol-layer-1\" target=\"_blank\" rel=\"noopener noreferrer\">USB 3.0 Protocol Layer &#8211; Part 1<\/a><\/p>\n<p><a href=\"http:\/\/www.synopsys.com\/cgi-bin\/dwusbuvs\/reg1.cgi?file=usb3-protocol-layer-2\" target=\"_blank\" rel=\"noopener noreferrer\">USB 3.0 Protocol Layer &#8211; Part 2<\/a><\/p>\n<p><a href=\"http:\/\/www.synopsys.com\/cgi-bin\/dwusbuvs\/reg1.cgi?file=usb3-link-layer\" target=\"_blank\" rel=\"noopener noreferrer\">USB 3.0 Link Layer<\/a><\/p>\n<p><a href=\"http:\/\/www.synopsys.com\/cgi-bin\/dwusbuvs\/reg1.cgi?file=usb3-physical-layer\" target=\"_blank\" rel=\"noopener noreferrer\">USB 3.0 Physical Layer<\/a><\/p>\n<h2><\/h2>\n<h2><b>Company info<\/b><\/h2>\n<address><i>Synopsys Corporate Headquarters<\/i><\/address>\n<address><i>700 East Middlefield Road<\/i><\/address>\n<address><i>Mountain View, CA 94043<\/i><\/address>\n<address><i>(650) 584-5000<\/i><\/address>\n<address><i>(800) 541-7737<\/i><\/address>\n<address><i>\u00a0<\/i><i><a href=\"http:\/\/www.synopsys.com\">www.synopsys.com<\/a><\/i><\/address>\n","protected":false},"excerpt":{"rendered":"<p>A first look at the role of the protocol layer in USB 3.0.<\/p>\n","protected":false},"author":329,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1386],"tags":[1430,557,555],"coauthors":[996],"class_list":["post-5721","post","type-post","status-publish","format-standard","hentry","category-assembly-integration","tag-protocol-layer","tag-superspeed","tag-usb-3-0","workflow-featured","workflow-technique","workflow-up-to-date","organization-synopsys"],"_links":{"self":[{"href":"https:\/\/www.techdesignforums.com\/practice\/wp-json\/wp\/v2\/posts\/5721","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.techdesignforums.com\/practice\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.techdesignforums.com\/practice\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.techdesignforums.com\/practice\/wp-json\/wp\/v2\/users\/329"}],"replies":[{"embeddable":true,"href":"https:\/\/www.techdesignforums.com\/practice\/wp-json\/wp\/v2\/comments?post=5721"}],"version-history":[{"count":0,"href":"https:\/\/www.techdesignforums.com\/practice\/wp-json\/wp\/v2\/posts\/5721\/revisions"}],"wp:attachment":[{"href":"https:\/\/www.techdesignforums.com\/practice\/wp-json\/wp\/v2\/media?parent=5721"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.techdesignforums.com\/practice\/wp-json\/wp\/v2\/categories?post=5721"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.techdesignforums.com\/practice\/wp-json\/wp\/v2\/tags?post=5721"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/www.techdesignforums.com\/practice\/wp-json\/wp\/v2\/coauthors?post=5721"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}