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

兆易創新推出GD5F1GM9系列高速QSPI NAND Flash
AN122 GD32H7系列MCU OSPI flash執行環境用戶指南

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

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

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

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

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

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

8KB Flash ROM的AD型MCU—AiP8F1208介紹

評論