will be described separately at the transmitter the transmit ecb module 22 consists of a buffer 40 of nine codewords each codeword is 64 bits u2014 8 bytes this buffer called the transmit buffer is shown in fig6 and can be viewed as a 9 u00d7 8 bytes matrix nine rows with eight bytes u2014 codewords u2014 per row the first eight rows of the transmit buffer are used to store eight codewords of data received from the xgmii the last row of the transmit buffer which also consists of eight bytes is used to store four crc16s each consisting of two bytes crc16 0 crc16 1 crc16 2 and crc16 3 the transmit ecb module 22 calculates crc16 42 over every two consecutive rows codewords of the transmit buffer and correspondingly stores the results in the last row in other words the eight bytes of the last row are respectively calculated from the eight codewords which are stored in the top eight rows the eight u201c calculated u201d bytes are then paired into four groups and each group is stored in the corresponding crc16 by the time the eight codewords are received and their corresponding crc16s are calculated the buffer is ready to be transmitted since the last row is also eight.