Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052
Есть плата с stm32f439 и sdram. В программе для скорости необходимо разместить массив данных во внутренней памяти. Достатачно ли для этого использовать класс памяти register?
Группа: Участник
Сообщений: 408
Регистрация: 28-05-12
Пользователь №: 72 052
Нашел пример прямой записи по адресу в sdram:
// с адреса aa=0xD0100000 чисел массива типа float. i-индекс, изменяющийся с // шагом 1. Его множим на 4, так как тип float занимает 4 байта for(im=1;im<=nn;im++) { for(jm=1;jm<=nn;jm++) { *(float*) (aa +4*(im+(jm-1)*nn)) =1.0f*((float)(im*jm)); *(float*) (bb +4*(im+(jm-1)*nn))=1.0f/(*(float*) (aa +4*(im+(jm-1)*nn))); *(float*) (cc +4*(im+(jm-1)*nn))=0.0f; } }
Разве не сработает если вместо аа подставить адрес начала sram?