Nios II Flash Accelerator Using Max10

ID 683684
Date 6/30/2015

1.4. Performance

The read latency shown in the following table is estimated based on 10M08, 10M16 and 10M25 User Flash Memory devices that have five cycles random read and is compared between a normal Nios II instruction master and flash accelerator interface.
Table 2.  Max 10 on-chip flash IP Read Latency
Nios II Instruction Interface Random Access Sequential Access
Normal 5 5
Flash Accelerator 5 1

For a normal instruction master, fetching sequential addresses from the Max 10 On-Chip Flash IP is considered a random access because it does not take advantage of the burst read feature of the Flash IP by default. Enabling the optional burstcount signal at the Instruction Master does not improve the sequential access because the wrap burst of 8 from the instruction Master will be translated to equivalent incremental burst of 2 or 4 at the Flash IP. The most optimum setup is to ensure that both the master and slave have the same burst count size.

The flash accelerator has a cache line size that can be configured to match the corresponding Max 10 on-chip flash burst size. It is recommended that the flash accelerator line size is configured according to the Max 10 device family line sizes listed below for better performance.
Table 3.  Cache Line Size Settings
Max 10 Device Cache Line Size (bits)
10M08 64
10M16 128
10M25 128
10M50 128
The flash accelerator also has pre-fetch feature that allows the sequential cache line to be filled to take advantage of the wait states. The timing diagrams for reads at flash accelerator is shown in the following figure:
Figure 2. Timing diagram for Flash Accelerator for 10M16/10M25