Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
CS 220 / ARM / ARM7TDMI_TechnicalReferenceManual.pdf
Скачиваний:
102
Добавлен:
16.04.2015
Размер:
1.63 Mб
Скачать

Instruction Cycle Timings

6.15Coprocessor data transfer from coprocessor to memory

The ARM7TDMI processor controls these instructions in the same way as for memory to coprocessor transfers, with the exception that the nRW line is inverted during the transfer cycle.

The cycle timings are listed in Table 6-18 where:

b represents the busy cycles

n represents the number of registers.

Table 6-18 coprocessor data transfer instruction cycle operations

CP

 

 

MA

 

 

 

 

 

 

 

 

register

Cycle

Address

S

nRW

Data

nMREQ

SEQ

nOPC

nCPI

CPA

CPB

status

 

 

[1:0]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Single

1

pc+8

2

0

(pc+8)

0

0

0

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

register

2

alu

2

1

CPdata

0

0

1

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

ready

-

pc+12

-

-

-

-

-

-

-

-

-

 

 

 

 

 

 

 

 

 

 

 

 

Single

1

pc+8

2

0

(pc+8)

1

0

0

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

register

2

pc+8

2

0

-

1

0

1

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

not ready

pc+8

2

0

-

1

0

1

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

b

pc+8

2

0

-

0

0

1

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

b+1

alu

2

1

CPdata

0

0

1

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

pc+12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n registers

1

pc+8

2

0

(pc+8)

0

0

0

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

(n>1)

2

alu

2

1

CPdata

0

1

1

1

0

0

 

 

 

 

 

 

 

 

 

 

 

 

ready

alu+•

2

1

CPdata

0

1

1

1

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

n

alu+•

2

1

CPdata

0

1

1

1

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

n+1

alu+•

2

1

CPdata

0

0

1

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

pc+12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

n registers

1

pc+8

2

0

(pc+8)

1

0

0

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

(n>1)

2

pc+8

2

0

-

1

0

1

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

not ready

pc+8

2

0

-

1

0

1

0

0

1

ARM DDI 0029G

Copyright © 1994-2001. All rights reserved.

6-23

Instruction Cycle Timings

Table 6-18 coprocessor data transfer instruction cycle operations (continued)

CP

 

MA

 

 

 

 

 

 

 

 

register Cycle

Address

S

nRW

Data

nMREQ

SEQ

nOPC

nCPI

CPA

CPB

status

 

[1:0]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

b

pc+8

2

0

-

0

0

1

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

b+1

alu

2

1

CPdata

0

1

1

1

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

alu+•

2

1

CPdata

0

1

1

1

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

n+b

alu+•

2

1

CPdata

0

1

1

1

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

n+b+1

alu+•

2

1

CPdata

0

0

1

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

pc+12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Note

Coprocessor data transfer operations are not available in Thumb state.

6-24

Copyright © 1994-2001. All rights reserved.

ARM DDI 0029G

Instruction Cycle Timings

6.16Coprocessor register transfer, load from coprocessor

The busy-wait cycles are similar to those described in Coprocessor data transfer from memory to coprocessor on page 6-21, but the transfer is limited to one word, and the ARM7TDMI core puts the data into the destination register in the third cycle. The third cycle can be merged with the next prefetch cycle into one memory N-cycle as with all processor register load instructions.

The cycle timings are listed in Table 6-19 where:

b represents the busy cycles.

Table 6-19 Coprocessor register transfer, load from coprocessor

 

 

 

MA

 

 

 

 

 

 

 

 

 

Cycle

Address

S

nRW

Data

nMREQ

SEQ

nOPC

nCPI

CPA

CPB

 

 

 

[1:0]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ready

1

pc+8

2

0

(pc+8)

1

1

0

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

2

pc+12

2

0

CPdata

1

0

1

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

3

pc+12

2

0

-

0

1

1

1

-

-

 

 

 

 

 

 

 

 

 

 

 

 

 

-

pc+12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

not ready

1

pc+8

2

0

(pc+8)

1

0

0

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

2

pc+8

2

0

-

1

0

1

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

pc+8

2

0

-

1

0

1

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

b

pc+8

2

0

-

1

1

1

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

b+1

pc+12

2

0

CPdata

1

0

1

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

b+2

pc+12

2

0

-

0

1

1

1

-

-

 

 

 

 

 

 

 

 

 

 

 

 

 

 

pc+12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Note

Coprocessor register transfer operations are not available in Thumb state.

ARM DDI 0029G

Copyright © 1994-2001. All rights reserved.

6-25

Instruction Cycle Timings

6.17Coprocessor register transfer, store to coprocessor

This is the same as described in Coprocessor register transfer, load from coprocessor on page 6-25, except that the last cycle is omitted.

The cycle timings are listed in Table 6-20 where:

b represents the busy cycles.

Table 6-20 Coprocessor register transfer, store to coprocessor

 

 

 

MA

 

 

 

 

 

 

 

 

 

Cycle

Address

S

nRW

Data

nMREQ

SEQ

nOPC

nCPI

CPA

CPB

 

 

 

[1:0]

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

ready

1

pc+8

2

0

(pc+8)

1

1

0

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

2

pc+12

2

1

Rd

0

0

1

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

pc+12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

not ready

1

pc+8

2

0

(pc+8)

1

0

0

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

2

pc+8

2

0

-

1

0

1

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

pc+8

2

0

-

1

0

1

0

0

1

 

 

 

 

 

 

 

 

 

 

 

 

 

b

pc+8

2

0

-

1

1

1

0

0

0

 

 

 

 

 

 

 

 

 

 

 

 

 

b+1

pc+12

2

1

Rd

0

0

1

1

1

1

 

 

 

 

 

 

 

 

 

 

 

 

 

 

pc+12

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Note

Coprocessor register transfer operations are not available in Thumb state.

6-26

Copyright © 1994-2001. All rights reserved.

ARM DDI 0029G

Соседние файлы в папке ARM