CORE: Core module interconnects all the sub-modules within the USB2 OTG IP.It exposes the top level interfaces of the IP and supports OTG,Host and Device mode of operation,enabling seamless integration into system design.
OTG FSM: FSM Module is used to determine the OTG role as either A device or a B device. The FSM will covers OTG protocols such as HNP,SRP and ADP
OTG CSR: OTG CSR module has all the Control and Status registers. Implements Interrupts for both host and device mode and includes all OTG timers.
USB TRANSACTOR: USB Transactor module implements the logic for transmitting and receiving High, Full and Low speed packets and manages various USB bus conditions.
TRANSACTION SCHEDULER: Transaction Scheduler module schedule the transfer based on the endpoint type and pushes the device and endpoint address in periodic and non-periodic scheduling pipe and managing the endpoint and device contexts and Maintaining the dequeue pointer and data buffer pointer for each and every endpoint.
COMMAND PROCESSOR: Command Processor module fetches the command TRB from command ring and decode and process it and update the device contexts based on the command operation and generates the event trb for the command and sends it to the event ring controller block.
EVENT RING CONTROLLER: Event Ring Controller module manages event ring FULL and empty condition checking and generating event ring full event and interrupt based on the event ring empty condition, interrupt moderation, interrupt interval counter.
HOST CSR: HOST CSR module has all the registers. The contents of the registers are decoded and assigned to its respective output ports based on its functionality.
PROTOCOL LAYER: Protocol Layer module takes care of packet disassembler and packet assembler and data processing in protocol engine.
CONTROL: Control module will take care of all standard device requests with respect to endpoint zero.
ROM1: Rom will store the descriptor details of endpoint zero from which the data can be retrieved.
ENDPOINT PROCESSOR: Endpoint Processor will organize the endpoint config details with respect to transfer type, config type, and config size. It then mediates the data read and write and other signals from fifo.