Cortex-M7 имеет 64-битный интерфейс AMBA4 AXI.
Это только часть ответа, поскольку эта шина данных где-то подключится к памяти STM32H7, но мы можем предположить, что память имеет интерфейс, который по крайней мере такой же широкий, как и шина. Контроллер памяти, скорее всего, будет считывать из памяти всю ширину (но, возможно, не с частотой ядра).
Считанные данные будут возвращены на шину, занимая канал считывания в течение любого количества циклов, которые требуется для рукопожатия. Для чтения байтов возвращаемые данные должны быть байтами.
Выполнение 4-байтовых чтений может исключить доступ к внешней памяти, но шина будет занята для 4 передач. Шина может поддерживать несколько ожидающих передач (ограничено дизайном чипа, а не процессором). Архитектурно, процессору разрешено объединять передачи (но это, естественно, будет сделано кэшем, который вы отключили).
В первом приближении вы можете загрузить 8 32-битных регистров за то же количество циклов, что и при выполнении 4-х байтовых чтений, поскольку существует 64-битный AXI. На самом деле, это может быть быстрее, потому что вы можете использовать одну инструкцию LDM
вместо 4 LDRB
, и выборки команд будут использовать одну и ту же шину.
Следует отметить, что хранилища потенциально более сложные , поскольку сложнее построить логику игнорирования данных частичной записи и довольно легко объединить записи.
(Это «общий» ответ, а не отражение микроархитектуры M7, вам нужно провести собственный сравнительный анализ, чтобы понять подробные значения вашего вопроса).