www.ti.com
Appendix B
Appendix B Write/Read Performance
B.1 Introduction
The following sections discuss the write versus read performance and how the throughput (read or write) should be calculated for a given data width and serial clock frequency.
Note: The data and throughput calculations shown here are sample calculations for most ideal situations. In general, the data rates depend on a variety of other factors, such as efficiency of read/write burst transactions, ability of buffering up read/write data, and how best it can be serially shifted out without stalling additional read/write data burst, remote and local components , both external and internal (device operations, board considerations, etc.).
B.2 Write Performance
The max write rate describes the maximum available data rate of the serial interface for transmission, taking into consideration the 8b/10b encoding overheads. This is calculated as follows:
Max write rate = VLYNQ Serial Clock (MHZ) × No. of Pins × 8b/10b encoding overhead
The 8b/10b encoding overhead essentially accounts for 20% overhead, thus the actual data throughput after subtraction of the encoding overhead gives a factor of 0.8. For example, if the VLYNQ clock is running at 99 MHZ on a 4 pin per direction interface, the raw data is 99 × 4 or 396 Mbps. After the 8B10B encoding is removed, the maximum write rate is 396 × 0.8 = 316.8 Mbps.
The total throughput on the VLYNQ interface includes both transmit and receive directions. Therefore, for the above configuration, a remote device can also be writing to the local device at the same data rates, then the total throughput is the sum of transmit and receive rates, or 633.6 Mbps.
In addition to the 8b/10b encoding, the packet structure for read/write operations also results in additional overheads. The VLYNQ module can transfer single
The packet structure of the writes is shown below, here each character represents a byte.
Write32 - caaaaddddT
WriteBurst - claaaaddddddddddddT
Where
T - EndOfPacket
d - data, dddd represents additional
a - address
c - command
l - length
The example above illustrates that single writes require 6 bytes of overhead, while burst writes require
8 bytes of overhead (due to the additional length of the field). From this, a scaling factor can be calculated (data bytes/total bytes), as show in Table
Table
44 | Write/Read Performance | SPRU938B |