GD32F系列MCU產(chǎn)品片上Flash分Code區(qū)和Data區(qū),以GD32F303系列為例,從GD32F303xx Datasheet中可以獲取code區(qū)和data區(qū)大小,那Code區(qū)和Data區(qū)在代碼執(zhí)行上有什么差別呢?
Code區(qū)代碼運行0等待,一般用于存放實時性要求高的代碼,比如中斷服務(wù)程序等;Data區(qū)代碼運行有較大延遲(平均比Code區(qū)慢一個數(shù)量級),Data區(qū)一般用于存放對實時性要求不高的代碼或數(shù)據(jù)。
導致該問題的原因是GD32F系列產(chǎn)品架構(gòu)決定,其采用SIP的方式疊封了GD Flash,帶來的優(yōu)勢是代碼執(zhí)行在code區(qū)相同主頻下具有最高的代碼執(zhí)行效率,帶來的問題是data區(qū)代碼執(zhí)行會慢一些,該問題是個雙刃劍,具有兩面性,我們需要在了解原理的情況下,更大限度的發(fā)揮優(yōu)勢。
解決方案為如果代碼量沒有超過code區(qū)大小,恭喜你,沒有這個問題的煩惱;如果代碼量超過了code區(qū)大小,可以通過分散加載方式將實時性要求高的代碼存放在Code區(qū),將實時性要求低的代碼存放在Data區(qū)。
PS:有關(guān)分散加載的說明,聚沃會有專題進行說明,如需要可以移步參考。
-
單片機
+關(guān)注
關(guān)注
6060文章
44835瀏覽量
645267 -
mcu
+關(guān)注
關(guān)注
146文章
17751瀏覽量
358815 -
Data
+關(guān)注
關(guān)注
0文章
63瀏覽量
38578 -
Code
+關(guān)注
關(guān)注
0文章
70瀏覽量
15654 -
GD32
+關(guān)注
關(guān)注
7文章
418瀏覽量
25068
發(fā)布評論請先 登錄
MCU片上Flash
兆易創(chuàng)新推出GD5F1GM9系列高速Q(mào)SPI NAND Flash

兆易創(chuàng)新推出GD5F1GM9系列高速Q(mào)SPI NAND Flash
AN122 GD32H7系列MCU OSPI flash執(zhí)行環(huán)境用戶指南

【GD32 MCU 移植教程】10、從STM32F030系列移植到GD32E230系列

【GD32 MCU 移植教程】9、從 STM32F10x 系列移植到 GD32F30x 系列

【GD32 MCU 移植教程】8、從 STM32F4xx 系列移植到 GD32F4xx 系

【GD32 MCU 移植教程】7、從 GD32F10x 移植到 GD32E103

【GD32 MCU 移植教程】6、從GD32F1x0和GD32F3x0移植到GD32E230

GD32 MCU 入門教程】GD32 MCU 常見外設(shè)介紹(12)FMC 模塊介紹

【GD32 MCU 入門教程】二、GD32 MCU 燒錄說明(1)ISP 燒錄

評論