Data packets - universal serial bus, Computer Engineering

Assignment Help:

Data packets:

A data packet consists of the PID which is followed a 16-bit CRC and by 0-1023 bytes of data payload (up to 1024 in high speed and at most 8 at low speed)

There are 2 basic data packets, DATA0 and DATA1. They have to always be preceded by an address token, and are typically followed by a handshake token from the receiver back to the transmitter. The 2 packet types provide the 1-bit sequence number needed by Stop-and-wait ARQ. If a USB host does not retain a response (such as an ACK) for data it has transmitted, it doesn't know if the data was retained or not; the data may have been lost in transit, or it may have been received but the handshake response was lost.

To solve this type of problem, the device keeps track of the type of DATA x packet it last accepted. If it retains another DATA x packet of the similar type, it is acknowledged but ignored as a case of duplicate. Only a DATA x packet of the opposite type is really received.

When a device is reset having a SETUP packet, it expects an 8-byte DATA0 packet next.

USB 2.0 added DATA2 and MDATA packet types as well. They are used just by high-speed devices doing high-bandwidth isochronous transfers which required transferring more than 1024 bytes per 125 µs "micro frame" (8192 kB/s),PRE "packet"

Low-speed components are supported with a special PID value, PRE. It marks the beginning of a low-speed packet, and it is used by hubs which usually do not send full-speed packets to low-speed devices. As all PID bytes include four 0 bits, they leave the bus in the FS(full speed)K state, which is the similar as the low-speed J state. It is followed by a deep pause during which hubs enable their low-speed outputs that is already idling in the J state, then a low-speed packet follows the starting with a sync sequence and PID byte, and ending with a deep period of SE0. Full-speed components other than hubs can simply avoid the PRE packet and its low-speed contents, till the final SE0 indicates that a new packet follows.


Related Discussions:- Data packets - universal serial bus

The interface chip design, This is an embedded system that involves the int...

This is an embedded system that involves the integration of hardware and software design stages. It consists of the user interface (keypads and LCD display) and two Peripheral Inte

What is referred as memory mapped i/o, What is referred as memory mapped I/...

What is referred as memory mapped I/O. The case in computers that employ only set of read and write signals and do not differentiate between memory and I/O address. This is kno

Earned value analysis, Senior management has requested a status update on t...

Senior management has requested a status update on the workstation installation project.  As a part of this update, managers have requested that you present an Earned Value analysi

Explain the role of a bus arbiter in a multiprocessor, Explain the role of ...

Explain the role of a bus arbiter in a multiprocessor configuration. Bus arbiter: Which functions to resolve priority between bus masters and allows only one device at a time t

Draw state diagram, Draw the state diagram of a process from its creation t...

Draw the state diagram of a process from its creation to termination, including all transitions, and briefly elaborate every state and every transition. When a process executes

Decision tree learning for cancer diagnosis, Assignment 1: Decision tree le...

Assignment 1: Decision tree learning for cancer diagnosis In this mini-project, you will implement a decision-tree algorithm and apply it to breast cancer diagnosis. For each p

C++, #question.constructors and destructors

#question.constructors and destructors

What do you mean by instruction pipelining, After considering instruction e...

After considering instruction execution let's now describe a concept which is very popular in any CPU implementation. This conception is instruction pipeline.  To extract better

What is java applet, A Applet is a java program that runs within a web brow...

A Applet is a java program that runs within a web browser.

Illustrate about 8259, Illustrate about 8259 8259A adds 8 vectored pri...

Illustrate about 8259 8259A adds 8 vectored priority encoded interrupts to the microprocessor. We can expand it to 64 interrupt requests by using one master 8259A and 8 slave

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd