Цитата(KRS @ Jun 8 2009, 15:10)

а ARM7 все нормально с ветвлениями было. ( кроме прерываний конечно)
Вы конкретный цикл приведите, который у вас из Flash работает медленнее чем из встроенной SRAM
unsigned char y;
unsigned int m1[256];
unsigned int m2[256];
unsigned int m3[256];
for (y=0;y<=255;y++)
m1[y] = m2[y]*m3[y];
0x080000D4 2000 MOVS r0,#0x00
0x080000D6 E00D B 0x080000F4
0x080000D8 F50D6180 ADD r1,SP,#0x400
0x080000DC F8511020 LDR r1,[r1,r0,LSL #2]
0x080000E0 466A MOV r2,sp
0x080000E2 F8522020 LDR r2,[r2,r0,LSL #2]
0x080000E6 4351 MULS r1,r2,r1
0x080000E8 F50D6200 ADD r2,SP,#0x800
0x080000EC F8421020 STR r1,[r2,r0,LSL #2]
0x080000F0 1C41 ADDS r1,r0,#1
0x080000F2 B2C8 UXTB r0,r1
0x080000F4 28FF CMP r0,#0xFF
0x080000F6 DDEF BLE 0x080000D8
На этом форе, на каждый новый цикл имеем дополнительную задержку в 5 тактов процессора при 100МГц.
С SRAM это будет выполняться в 2 раза быстрей, только если SRAM для процессора адресуем меньше чем 0x2000_0000. Тогда Cortex будет лазить за ними через I и D шины.