Usb host controller

The USB Host Controller or the USB interface is the bridge that is built between the SIE or the Serial interface engine and the driver, which is the client program. The host controller is the interface that transforms the data that is expressed in a given transaction packet into the USB traffic, which can be easily understood by the Serial interface engine. This operation involves the fulfillment of various large tasks.

Working of the USB Host Controller :

Firstly, the USB host controller manages the transactions which are passed to it. The USB host controller enhances the use of the USB by modifying the passed transactions and returns it back to the drivers. This facilitates the controller as well as the client program in keeping track of various different transactions at any given time. After the host controller has used the services of the Serial interface engine for communicating with a USB device, it stores the effects of the transferring process into the transactions which was involved in processing. This helps in saving the use of the memory, on account of the fact that only a small number of transactions are needed to be formed, in order to accomplish the communication process. This also rises the way of the process of transactions that are passed onto the controller.

The USB host controller keeps track of pending transactions.

The transactions that are new are also pushed onto the track called the FIFO stack. When the need arises from the client side in running the new transactions, the old transactions are popped off the bottom in the stack. This enhances the queuing process of the complicated transaction series, such as the receiving of the device descriptor.

Aspects of the USB Host Controller :

The major design aspect of the USB host controller involves the following steps :

  • The aligning of the fields in the transmit buffer as the LSB to MSB order. The decoding of the read data by the Serial interface engine back to the readable format for the convenience of the client is done by the controller. This process becomes tougher due to the different fields such as data, handshake and token which are of different lengths and all of them are not the multiples of 2. This makes the process a very tricky proposition.
  • The bit stuffing and un-stuffing of a transaction is done by the controller. It is a requisite in the USB 2.0 version, that if more than six ones are sent on the USB then there has to be the presence of at least one zero in it. The meaning of this is that if more than six ones are present in a row, then a zero has to be placed after every six.
  • The NZRI or the Non-Return-to-Zero-Inverted is the line on which the data is sent. This encoding works on the format of fixing the line of data for every 0 bit, and maintaining of the line for every data 1 that is sent.
  • Other Articles

  • Advertising is handled through internet connection.....
  • The Mobile Marketing channel offers direct access....
  • The irony of mobile marketing is that companies....