
EZ-USB FX2 Technical Reference Manual
Page 15-30 EZ-USB FX2 Technical Reference Manual v2.1
When AUTOOUT=0, as soon as a buffer fills with USB data, an endpoint interrupt is asserted.
The connection of the buffer to the endpoint FIFO is under control of the firmware, rather than
automatically being connected. Using this method, the firmware can inspect the data in OUT
packets, and based on what it finds, choose to include that packet in the endpoint FIFO or not.
The firmware can even modify the packet data, and then
commit it to the endpoint FIFO. Refer
to Enhanced Packet Handling in Section 15.5.9.
The SKIP bit (in the EPxBCL registers) chooses between skipping and committing packet
data. Refer to OUTPKTEND in Section 15.6.8.
Bit 3 AUTOIN Auto Commit to SIE
This bit applies only to IN endpoints.
FX2 has EPxAUTOINLEN registers that allow the firmware to configure endpoints to sizes
smaller than the physical memory sizes used to implement the endpoint buffers (512 or 1024
bytes). For example, suppose the firmware configures the EP2 buffer to be 1024 bytes, and
then sets up EP2 as a 760-byte endpoint by setting EP2AUTOINLEN=760 (this must match
the wMaxPacketSize value in the endpoint descriptor). This makes EP2 appear to be a 760-
byte endpoint to the USB host, even though EP2’s physical buffer is 1024 bytes.
When AUTOIN=1, FX2 automatically packetizes and dispatches IN packets according to the
packet length value it finds in the EPxAUTOINLEN registers. In this example, the GPIF (or an
external master, if the FX2 is in Slave FIFO mode) could load the EP2 buffer with 950 bytes,
which the FX2 logic would then automatically send as two packets, of 760 and 190 bytes.
Refer to Enhanced Packet Handling in Section 15.5.9.
When AUTOIN=0, each packet has to initially be manually committed to SIE, (prime the
pump). See Section 15.5.9, "Chip Revision Control".
Bit 2 ZEROLENIN Enable Zero-length IN Packets
When this flag is '1', a zero length packet will be sent when PKTEND is activated and there are
no bytes in the current packet. If this flag is '0', zero length packets will not be sent on
PKTEND.
Bit 0 WORDWIDE Select Byte/Word FIFOs on PORTB/D Pins
This bit selects byte or word FIFOS on the PORTB and PORTD pins. The WORD bit applies
“for IFCFG=11 or 10”.
The OR of all 4 WORDWIDE bits is what causes PORTD to be PORTD or FD[15:8]. The indi-
vidual WORDWIDE bits indicate how data will be passed for each individual endpoint.
Kommentare zu diesen Handbüchern