English
Language : 

S-7600A Datasheet, PDF (53/60 Pages) Seiko Instruments Inc – Hardware Specification (TCP/IP Network Stack LSI)
TCP/IP Network Stack LSI
S-7600A
Hardware Specification Revision 1.3
8.3. TCP/UDP Data Communications
8.3.1. TCP Data Communications
TCP data communications can be performed if the SCTL-bit of the Serial Port Config register (0x08) is
set to “1.”
For data transmission, data is written to the Socket Data register (0x2E). The S-7600A stores data in its
outgoing buffer via the Socket Data Register. The address of the outgoing buffer is specified by the
Buffer Out Length register (0x30-0x31). The value of the Buffer Out Length register is 0x03ff when the
outgoing buffer is empty. The value of the Buffer Out Length register decrements each time a byte of
data is written to the Socket Data register (0x2E). After the data is written, if any data is written to the
TCP Data Send register (0x30), the data in the outgoing buffer is processed by TCP protocols and
transmitted. The value of the Buffer Out Length register increases by the value of the number of bytes of
transmitted data and returns to 0x03ff when all data has been sent. In TCP data transmission, the
outgoing buffer has a capacity of 1023 bytes. Datagrams longer than 1023 bytes are split by the MPU
and transmitted in chunks. When the outgoing buffer becomes full (i.e., comes to contain 1023 bytes of
data), the value of the Buffer Out Length register becomes 0x0000. This can be confirmed by checking
the Buff_Full bit in the Socket Config Status Low register (0x22). It can also be confirmed by examining
the Buff_Full bit in the Socket Interrupt Low register (0x2C) following an interrupt. No more than 1023
bytes of data are permitted in the Socket Data register. If data is written to the TCP Data Send register
under these conditions, the data in the outgoing buffer is transmitted. The MPU repeats the procedure of
sending residual data after verifying that the Buffer Out Length register has been reset to 0x03ff.
Transmission of all data in the outgoing buffer can be confirmed by checking the Buff_Empty bit in the
Socket Config Status Low register (0x22), as well as the Buff_Empty bit in the Socket Interrupt Low
register (0x2C) following an interrupt.
When the S-7600A receives TCP data, it applies TCP protocol processing and stores data in the
incoming buffer. The address of the incoming buffer is specified by the Buffer In Length register (0x32-
0x33). The value of the Buffer In Length register is 0x0000 when the incoming buffer is empty.
Otherwise, it increments by a value equal to the number of bytes of the stored data. Data reception is
detected by checking the Data_Avail bit in the Socket Config Status Low register (0x22), Socket Data
Available register (0x28), and the Data_Avail bit in the Socket Interrupt Low register (0x2C) following an
interrupt. Read the Socket Data register (0x2E) while monitoring the Data_Avail bit in the Socket Config
Status Low register. This reads in the received data from the incoming buffer. Each time a byte of data
is read out from the Socket Data register, the value of the Buffer In Length register decrements. When all
data is read out, its value returns to 0x0000. The incoming buffer can hold up to 2047 bytes of data for
TCP data reception. The S-7600A and its peer apply TCP protocols to prevent overflowing incoming
buffers during data reception.
Seiko Instruments Inc.
8-3