
Chapter 1. Introducing EZ-USB FX2 Page 1-23
1.18 FX2 Endpoint Buffers
The USB Specification defines an endpoint as a source or sink of data. Since USB is a serial bus,
a device endpoint is actually a FIFO which sequentially empties or fills with USB data bytes. The
host selects a device endpoint by sending a 4-bit address and a direction bit. Therefore, USB can
uniquely address 32 endpoints, IN0 through IN15 and OUT0 through OUT15.
From the FX2’s point of view, an endpoint is a buffer full of bytes received or held for transmission
over the bus. The FX2 reads host data from an OUT endpoint buffer, and writes data for transmis-
sion to the host to an IN endpoint buffer.
FX2 contains three 64-byte endpoint buffers, plus 4 Kilobytes of buffer space that can be config-
ured various ways, as indicated by Figure 1-15. The three 64-byte buffers are common to all con-
figurations.
Figure 1-15. FX2 Endpoint Buffers
The three 64-byte buffers are designated EP0, EP1IN and EP1OUT. EP0 is the default CONTROL
endpoint, a bidirectional endpoint that uses a single 64-byte buffer for both IN and OUT data. FX2
firmware reads or fills the EP0 buffer when the (optional) data stage of a CONTROL transfer is
required.
Komentarze do niniejszej Instrukcji