192
32072H–AVR32–10/2012
AT32UC3A3
15.6.4.6
Coding timing parameters
All timing parameters are defined for one chip select and are grouped together in one register
according to their type.
The Setup register (SETUP) groups the definition of all setup parameters:
NRDSETUP, NCSRDSETUP, NWESETUP, and NCSWRSETUP.
The Pulse register (PULSE) groups the definition of all pulse parameters:
NRDPULSE, NCSRDPULSE, NWEPULSE, and NCSWRPULSE.
The Cycle register (CYCLE) groups the definition of all cycle parameters:
NRDCYCLE, NWECYCLE.
15.6.4.7
Usage restriction
The SMC does not check the validity of the user-programmed parameters. If the sum of SETUP
and PULSE parameters is larger than the corresponding CYCLE parameter, this leads to unpre-
dictable behavior of the SMC.
For read operations:
Null but positive setup and hold of address and NRD and/or NCS can not be guaranteed at the
memory interface because of the propagation delay of theses signals through external logic and
pads. If positive setup and hold values must be verified, then it is strictly recommended to pro-
gram non-null values so as to cover possible skews between address, NCS and NRD signals.
For write operations:
If a null hold value is programmed on NWE, the SMC can guarantee a positive hold of address,
byte select lines, and NCS signal after the rising edge of NWE. This is true if the MODE.WRITE-
For read and write operations: a null value for pulse parameters is forbidden and may lead to
unpredictable behavior.
In read and write cycles, the setup and hold time parameters are defined in reference to the
address bus. For external devices that require setup and hold time between NCS and NRD sig-
nals (read), or between NCS and NWE signals (write), these setup and hold times must be
converted into setup and hold times in reference to the address bus.
Table 15-4.
Coding and Range of Timing Parameters
Coded Value
Number of Bits
Effective Value
Permitted Range
Coded Value
Effective Value
setup [5:0]
6
128 x setup[5] + setup[4:0]
0
≤ value ≤ 31
32
≤ value ≤ 63
0
≤ value ≤ 31
128
≤ value ≤ 128+31
pulse [6:0]
7
256 x pulse[6] + pulse[5:0]
0
≤ value ≤ 63
64
≤ value ≤ 127
0
≤ value ≤ 63
256
≤ value ≤ 256+63
cycle [8:0]
9
256 x cycle[8:7] + cycle[6:0]
0
≤ value ≤ 127
128
≤ value ≤ 255
256
≤ value ≤ 383
384
≤ value ≤ 511
0
≤ value ≤ 127
256
≤ value ≤ 256+127
512
≤ value ≤ 512+127
768
≤ value ≤ 768+127