__RAMFUNC(RAM)void SysTick_Ticks(uint32_t value)
{
g_systickCounter=value;
int addcount= 0;
while (g_systickCounter != 0U)
{
addount++;
}
PRINTF(" addcount:%d ",addcount);
}
通過(guò)在IAR環(huán)境下添加__RAMFUNC,修改了函數(shù)SysTick_Ticks以在ITCM中運(yùn)行,實(shí)際測(cè)得的運(yùn)行速度變慢,系統(tǒng)計(jì)數(shù)累加的次數(shù)也減少了,代碼在XIPFlash里面執(zhí)行的更快一些。
-> 如果在應(yīng)用程序中啟用了I-Cache,那么無(wú)論該函數(shù)在ITCM或外部XPFlash中執(zhí)行,系統(tǒng)計(jì)數(shù)值都應(yīng)該幾乎相同,但如果禁用I-Cache和FlexSPI預(yù)取緩沖區(qū),性能會(huì)降低。如下是禁用代碼。
/* Disable L1 I-Cache*/ SCB_DisableICache(); /* Disable L1 D-Cache*/ SCB_DisableDCache(); /* Disable FlexSPI AHB read prefetch */ FLEXSPI->AHBCR &= ~(FLEXSPI_AHBCR_PREFETCHEN_MASK | FLEXSPI_AHBCR_CACHABLEEN_MASK);
-
FlaSh
+關(guān)注
關(guān)注
10文章
1642瀏覽量
148669 -
IAR
+關(guān)注
關(guān)注
5文章
354瀏覽量
36780 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4346瀏覽量
62969 -
代碼
+關(guān)注
關(guān)注
30文章
4825瀏覽量
69044 -
應(yīng)用程序
+關(guān)注
關(guān)注
38文章
3292瀏覽量
57912
原文標(biāo)題:MIMXRT1176 代碼放在 ITCM里面運(yùn)行,為什么執(zhí)行速度并沒(méi)有在外部Flash里面執(zhí)行的快?
文章出處:【微信號(hào):嵌入式 MCU,微信公眾號(hào):嵌入式 MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論