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

How to turn on the session support in php, The session support can be turne...

The session support can be turned on automatically at the site level, or manually in every PHP page script: * Turning on session support automatically at the site level: Set s

Illustrate program on hypothetical machine, Q. Illustrate program on hypoth...

Q. Illustrate program on hypothetical machine? The program given in figure above is a hypothetical program which performs addition of numbers stored from locations 2001 onwards

What are ramps, Ramps A network planning method that makes the most wel...

Ramps A network planning method that makes the most well-organized use of manpower, materials and cash resources between several projects going on concurrently.

Explain inheritance, Can you explain what inheritance is and an example of ...

Can you explain what inheritance is and an example of when you might use it? The process of deriving a new class from an existing class is known as Inheritance. The old class i

C++, pebble merchant

pebble merchant

What is repository info. systems, What is Repository Info. Systems? It ...

What is Repository Info. Systems? It is a tool with which you can create data stored in the ABAP/4 Dictionary available

Working of read-only memory, Q. Working of Read-Only Memory? A ROM is f...

Q. Working of Read-Only Memory? A ROM is fundamentally a memory or storage device in which a fixed set of binary information is stored. A block diagram of ROM is as displayed i

How to increase simulation speed, How to increase simulation speed     ...

How to increase simulation speed     First figure out what is eating away your CPU cycles. Is it 1. Compile time - Use a Make file to compile only files with changes and not

Illustrate the term extranet, Illustrate the term Extranet? Extranet:...

Illustrate the term Extranet? Extranet: Extranet is Extension of an Intranet that makes thelatter accessible to outside companies or individuals with or without an intran

What is load testing, Load testing is to test that if the application works...

Load testing is to test that if the application works well with the loads that result from large number of concurrent users, transactions and to verify whether it can handle peak u

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