
EZ-USB FX2 Technical Reference Manual
Page 12-6 EZ-USB FX2 Technical Reference Manual v2.1
The three LSBs of the Clock Control Register (CKCON, at SFR location 0x8E) control the stretch
value; stretch values between zero and seven may be used. A stretch value of zero adds zero
instruction cycles, resulting in MOVX instructions which execute in two instruction cycles. A stretch
value of seven adds seven instruction cycles, resulting in MOVX instructions which execute in nine
instruction cycles. The stretch value can be changed dynamically under program control.
At power-on-reset, the stretch value defaults to one (three-cycle MOVX); for the fastest data mem-
ory access, FX2 software must explicitly set the stretch value to zero. The stretch value affects
only data memory access (not program memory).
The stretch value affects the width of the read/write strobe and all related timing. Using a higher
stretch value results in a wider read/write strobe, which allows the memory or peripheral more time
to respond.
Table 12-3 lists the data memory access speeds for stretch values zero through seven. MD2-0 are
the three LSBs of the Clock Control Register (CKCON.2-0). The strobe width timing shown is typi-
cal.
CPUCS.4:3 sets the basic clock reference for the FX2. These bits can be modified by FX2 firm-
ware at any time. At power-on-reset, CPUCS.4:3 is set to ‘00’ (12 Mhz).
Table 12-3. Data Memory Stretch Values
MD2 MD1 MD0
MOVX
Instruction
Cycles
Read/Write
Strobe Width
(Clocks)
Strobe Width
@ 12MHz
CPUCS.4:3 = 00
Strobe Width
@ 24MHz
CPUCS.4:3 = 01
Strobe Width
@ 48MHz
CPUCS.4:3 = 10
0 0 0 2 2 167 ns 83.3 ns 41.7 ns
0 0 1 3 (default) 4 333 ns 167 ns 83.3 ns
0 1 0 4 8 667 ns 333 ns 167 ns
0 1 1 5 12 1000 ns 500 ns 250 ns
1 0 0 6 16 1333 ns 667 ns 333 ns
1 0 1 7 20 1667 ns 833 ns 417 ns
1 1 0 8 24 2000 ns 1000 ns 500 ns
1 1 1 9 28 2333 ns 1167 ns 583 ns
Komentáře k této Příručce