Datasheet
V850ES/JG3-H, V850ES/JH3-H CHAPTER 21 USB FUNCTION CONTROLLER (USBF)
R01UH0042EJ0500 Rev.5.00 Page 1145 of 1513
Aug 12, 2011
(10) UF0 bulk-in 2 register (UF0BI2)
The UF0BI2 register is a 64-byte × 2 FIFO that stores data for Endpoint3. This register consists of two banks of
64-byte FIFOs each of which performs a toggle operation and repeatedly connects the buses on the SIE and CPU
sides. The toggle operation takes place when no data is in the FIFO on the SIE side (counter value = 0) and when
the FIFO on the CPU side is correctly written (FIFO full or BKI2DED bit = 1).
This register is write-only, in 8-bit units. When this register is read, 00H is read.
The hardware transmits data to the USB bus in synchronization with the IN token for Endpoint3 only when the
BKI2NK bit of the UF0EN register is set to 1 (when NAK is not transmitted). The address at which data is to be
written or read is managed by the hardware. Therefore, FW can transmit data to the host only by writing the data
to the UF0BI2 register sequentially. A short packet is transmitted when data is written to the UF0BI2 register and
the BKI2DED bit of the UF0DEND register is set to 1 (BKIN2 bit of UF0EPS0 register = 1 (data exists)). A Null
packet is transmitted when the UF0BI2 register is cleared and the BKI2DED bit of the UF0DEND register is set to
1 (BKIN2 bit of the UF0EPS0 register = 1 (data exists)). When the data is transmitted correctly, a FIFO toggle
operation occurs. The BKI2DT bit of the UF0IS2 register is set to 1, and an interrupt request is generated for the
CPU. An interrupt request or DMA request can be selected by using the DQBI2MS bit of the UF0IDR register.
BKI27UF0BI2 BKI26
5
BKI25 BKI24
3
BKI23
2
BKI22
1
BKI21 BKI20
Address
00200112H
After reset
Undefined
0467
Bit position Bit name Function
7 to 0 BKI27 to BKI20 These bits store data for Endpoint3.
The operation of the UF0BI2 register is illustrated below.