
28.5.2 Configuration options
Though the default configuration provides a high degree of flash acceleration, advanced
users may desire to customize the FMC buffer configurations to maximize throughput for
their use cases. When reconfiguring the FMC for custom use cases, do not program the
FMC's control registers while the flash memory is being accessed. Instead, change the
control registers with a routine executing from RAM in supervisor mode.
The FMC's cache and buffering controls within PFB0CR and PFB1CR allow the tuning
of resources to suit particular applications' needs. The cache and buffer are each
controlled individually. The register controls enable buffering and prefetching per
memory bank and access type (instruction fetch or data reference). The cache also
supports 3 types of LRU replacement algorithms:
• LRU per set across all 4 ways,
• LRU with ways [0-1] for instruction fetches and ways [2-3] for data fetches, and
• LRU with ways [0-2] for instruction fetches and way [3] for data fetches.
As an application example: if both instruction fetches and data references are accessing
flash memory, then control is available to send instruction fetches, data references, or
both to the cache or the single-entry buffer. Likewise, speculation can be enabled or
disabled for either type of access. If both instruction fetches and data references are
cached, then the cache's way resources may be divided in several ways between the
instruction fetches and data references.
In another application example, the cache can be configured for replacement from bank
0, while the single-entry buffer can be enabled for bank 1 only. This configuration is
ideal for applications that use bank 0 for program space and bank 1 for data space.
28.5.3 Speculative reads
The FMC has a single buffer that reads ahead to the next word in the flash memory if
there is an idle cycle. Speculative prefetching is programmable for each bank for
instruction and/or data accesses using the B0DPE and B0IPE fields of PFB0CR and the
B1DPE and B1IPE fields of PFB1CR. Because many code accesses are sequential, using
the speculative prefetch buffer improves performance in most cases.
When speculative reads are enabled, the FMC immediately requests the next sequential
address after a read completes. By requesting the next word immediately, speculative
reads can help to reduce or even eliminate wait states when accessing sequential code
and/or data.
Chapter 28 Flash Memory Controller (FMC)
K22F Sub-Family Reference Manual, Rev. 4, 08/2016
NXP Semiconductors
615
Содержание K22F series
Страница 2: ...K22F Sub Family Reference Manual Rev 4 08 2016 2 NXP Semiconductors...
Страница 150: ...Private Peripheral Bus PPB memory map K22F Sub Family Reference Manual Rev 4 08 2016 150 NXP Semiconductors...
Страница 168: ...Module clocks K22F Sub Family Reference Manual Rev 4 08 2016 168 NXP Semiconductors...
Страница 198: ...Security Interactions with other Modules K22F Sub Family Reference Manual Rev 4 08 2016 198 NXP Semiconductors...
Страница 258: ...Functional description K22F Sub Family Reference Manual Rev 4 08 2016 258 NXP Semiconductors...
Страница 292: ...Functional description K22F Sub Family Reference Manual Rev 4 08 2016 292 NXP Semiconductors...
Страница 398: ...Functional description K22F Sub Family Reference Manual Rev 4 08 2016 398 NXP Semiconductors...
Страница 628: ...Initialization and application information K22F Sub Family Reference Manual Rev 4 08 2016 628 NXP Semiconductors...
Страница 740: ...Initialization Application Information K22F Sub Family Reference Manual Rev 4 08 2016 740 NXP Semiconductors...
Страница 750: ...Functional description K22F Sub Family Reference Manual Rev 4 08 2016 750 NXP Semiconductors...
Страница 816: ...Application information K22F Sub Family Reference Manual Rev 4 08 2016 816 NXP Semiconductors...
Страница 866: ...Initialization Application Information K22F Sub Family Reference Manual Rev 4 08 2016 866 NXP Semiconductors...
Страница 890: ...Application information K22F Sub Family Reference Manual Rev 4 08 2016 890 NXP Semiconductors...
Страница 1028: ...Initialization Procedure K22F Sub Family Reference Manual Rev 4 08 2016 1028 NXP Semiconductors...
Страница 1040: ...Example configuration for chained timers K22F Sub Family Reference Manual Rev 4 08 2016 1040 NXP Semiconductors...
Страница 1118: ...Device mode IRC48 operation K22F Sub Family Reference Manual Rev 4 08 2016 1118 NXP Semiconductors...
Страница 1122: ...USB Voltage Regulator Module Signal Descriptions K22F Sub Family Reference Manual Rev 4 08 2016 1122 NXP Semiconductors...
Страница 1180: ...Initialization application information K22F Sub Family Reference Manual Rev 4 08 2016 1180 NXP Semiconductors...
Страница 1302: ...Application information K22F Sub Family Reference Manual Rev 4 08 2016 1302 NXP Semiconductors...
Страница 1374: ...Functional description K22F Sub Family Reference Manual Rev 4 08 2016 1374 NXP Semiconductors...