MPC8313ECZQADDC Freescale Semiconductor, MPC8313ECZQADDC Datasheet - Page 1010

no-image

MPC8313ECZQADDC

Manufacturer Part Number
MPC8313ECZQADDC
Description
Microprocessors - MPU 8313 REV2.2 PB ENC EXT
Manufacturer
Freescale Semiconductor
Datasheet

Specifications of MPC8313ECZQADDC

Processor Series
MPC8313E
Core
e300
Data Bus Width
16 bit
Maximum Clock Frequency
133 MHz
Program Memory Size
16 KB
Data Ram Size
16 KB
Interface Type
I2C
Mounting Style
SMD/SMT
Package / Case
PBGA
Number Of Programmable I/os
32
Number Of Timers
4
Universal Serial Bus Interface
head pointer fields are valid. For example qTD pointers have T-Bits set or reference valid qTDs and the
Horizontal Pointer references a valid queue head data structure. The following algorithm represents the
functional requirements:
16.6.9.2
This is a software requirement section. There are two independent events for removing queue heads from
the asynchronous schedule. The first is shutting down (deactivating) the asynchronous list. The second is
extracting a single queue head from an activated list. Software deactivates the asynchronous schedule by
setting USBCMD[ASE] to a zero. Software can determine when the list is idle when USBSTS[AS] is
cleared. The normal mode of operation is that software removes queue heads from the asynchronous
schedule without shutting it down. Software must not remove an active queue head from the schedule.
Software should first deactivate all active qTDs, wait for the queue head to go inactive, then remove the
queue head from the asynchronous list. Software removes a queue head from the asynchronous list using
the following algorithm. Software merely must ensure all of the link pointers reachable by the host
controller are kept consistent.
16-82
InsertQueueHead (pQHeadCurrent, pQueueHeadNew)
End InsertQueueHead
UnlinkQueueHead (pQHeadPrevious, pQueueHeadToUnlink, pQHeadNext)
End UnlinkQueueHead
--
-- Requirement: all inputs must be properly initialized.
--
-- pQHeadCurrent is a pointer to a queue head that is
-- already in the active list
-- pQHeadNew is a pointer to the queue head to be added
--
-- This algorithm links a new queue head into a existing
-- list
--
pQueueHeadNew.HorizontalPointer = pQueueHeadCurrent.HorizontalPointer
pQueueHeadCurrent.HorizontalPointer = physicalAddressOf(pQueueHeadNew)
--
-- Requirement: all inputs must be properly initialized.
--
-- pQHeadPrevious is a pointer to a queue head that
-- references the queue head to remove
-- pQHeadToUnlink is a pointer to the queue head to be
-- removed
-- pQheadNext is a pointer to a queue head still in the
-- schedule. Software provides this pointer with the
-- following strict rules:
-- if the host software is one queue head, then
-- pQHeadNext must be the same as
-- QueueheadToUnlink.HorizontalPointer. If the host
-- software is unlinking a consecutive series of
-- queue heads, QHeadNext must be set by software to
-- the queue head remaining in the schedule.
--
-- This algorithm unlinks a queue head from a circular list
--
pQueueHeadPrevious.HorizontalPointer = pQueueHeadToUnlink.HorizontalPointer
pQueueHeadToUnlink.HorizontalPointer = pQHeadNext
Removing Queue Heads from Asynchronous Schedule
MPC8313E PowerQUICC™ II Pro Integrated Processor Family Reference Manual, Rev. 2
Freescale Semiconductor

Related parts for MPC8313ECZQADDC