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

Correct cluster, For each of the three datasets (data1.txt, data2.txt, and ...

For each of the three datasets (data1.txt, data2.txt, and data3.txt in bnhw2q2.zip), cluster the data using k-means in Matlab, with k=2, 3, 4 and 5 using the provided Matlab script

Explain increments and skips subsequent instruction, Q. Explain Increments ...

Q. Explain Increments and skips subsequent instruction? Increments A and skips subsequent instruction if the content of A has become 0. This is a complex instruction then requi

Different search strategies- artificial intelligence, Different search stra...

Different search strategies- artificial intelligence: To help us think about the different search strategies, we use two analogies. Firstly, we suppose that the professor keep

What is throughput?, If the throughput scales upward as time progresses and...

If the throughput scales upward as time progresses and the number of Vusers enhance, this showing that the bandwidth is sufficient. If the graph were to remain relatively flat as t

Define the firewall design policy, Define the Firewall Design Policy ...

Define the Firewall Design Policy A lower-level policy that describes how the firewall will handle prevention of access and filtering of services as defined in the above net

Biscuit factory circuit, Biscuits move on a conveyer through an oven where ...

Biscuits move on a conveyer through an oven where they are cooked.   Two sensors, H and C, measure the temperature of the oven, H = 1 if the oven is too hot and C = 1 if the ove

Give introduction to object oriented analysis and design, Introduction to o...

Introduction to object oriented Analysis & design: tools In case of OOAD, Unified Modelling Language (UML) is a well accepted language. It is used for constructing, visualizin

Algorithm to have a good best case running time, How can we change almost a...

How can we change almost any algorithm to have a good best case running time? Check whether the input constitutes an input at the very starting Or else run the original algo

Answer, Write a program to find the area under the curve y = f(x) between x...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can b

Variable or compound expression - unification algorithm, Variable or compou...

Variable or compound expression - Unification algorithm: Here some things to note regarding this method are:  (i) There if really trying to match a constant to a different

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