| 因为STM32H750自带的FLASH太小,而工程文件超过这个flash的容量,所以需要外挂一块flash来存程序,但是此程序需要加密,然后就遇到了问题。如果我往里面存的是密文,那么我读取的时候就要解密,现在衍生了另一个问题就是我STM32是如何从flash读取指令并执行的?是读一句执行依据还是将flash里面的程序整体读到内部ram里面再执行的?如果是前者,那么我读密文程序指令的时候,还要先去解密再去执行,这样的话我整个程序运行的时间是怎样的呢?如果是后者,那么STM32又是怎样实现整体解密的呢? 希望对程序加解密有经验的朋友能够给一点建议,多谢! |
在Vscode中,如何将touchGFX的图片资源下载到QSPI FLASH中?
STM32H750+FreeRTOS uart DMA无法使用
TOF传感器无法正确识别物体
stm32H743使用CubeMxAi导入模型文件,需要将测试数据进行识别,不知道如何传入参数
STM32H750的上电BOR生效电压
STM32H563的QSPI接口不能读取W25Q256的后128MB数据
STM32H7的SMPS供电
STM32H7无法芯片
stm32cubeMx生成stm32H743IIT6 cmake工程时全局变量自动定义到DTCM段
CubeMX 生成的 STM32H7 CMake 工程打开串口 DMA 无法正常发送数据,如何解决?
微信公众号
手机版
只是存数据的话,好办一些。如果还想从外部Flash执行程序,而且还是加密的,那么恐怕有点难度。
STM32执行程序既不是读一条执行一条,也不是全部搬到内部RAM执行,而是带流水的。
你的工程文件大,不全是运行程序吧,应该有不少是数据吧,那么可以分开存放。
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分
评分
查看全部评分
外扩Nor Flash,其实本身的执行程序不大,但是调用了一个DSP库的定点FFT之后整个工程就126k了,而H750的内部flash只有128k,所以寻求方法呢
其实外加加密芯片不可靠,因为将整个程序放到外部flash,可以绕开这块加密芯片将里面的程序读出来的。
我不是很理解STM32带流水执行程序,能否在解释下呢?谢谢
不加FFT和加FFT都编译一下,看一下生成的BIN文件各占多少?
按照你说的本身程序不大,那么我认为程序是不是只有三四十K?加个FFT应该不至于占八九十K吧!
如果程序大,也可能是常量数据大,那么常量数据放到NorFlash就好了。变量定义时都不要初始化,直接在程序运行开始时通过常量数组给变量数组赋初值。
其实却是如你猜想的那样,我在map文件里面查看了。我如果使用浮点FFT的话只有40k左右,如果我调用的是q15定点FFT的话就变成126k了,就是bin文件的大小。
这样确实可以,但是是否会影响我整个程序的运行速率呢?您是否有尝试过?