搜索
bottom↓
回复: 9

有两个问题请教下 ZYNQ 裸奔时如何将静态数组定义到FLASH上

[复制链接]

出0入91汤圆

发表于 2022-3-3 09:20:14 | 显示全部楼层 |阅读模式
本帖最后由 ackyee 于 2022-3-3 12:50 编辑

单片机开发的时候经常有字库等数组 定义到 CODE 区域,不占用RAM的
zynq PS 裸奔情况下 有类似的功能吗?
类似 51的unsigned char code   和stm32 static const
另外 PS 裸奔情况下 好像找不到 _NOP_ 函数   ,这个ZYNQ的库里有的吗?
在做无DDR 的 代码的时候    RAM空间有限 得把常量都丢到 FLASH 里才行


经过一个早上的实验,   ZYNQ所有的PS部分代码都是从FLASH 预加载的,也就是不管是定义了CONST 还是没有定义,都是会消耗RAM空间的  

如果要进阶操作 代码从FLASH 执行难度太大 暂时放弃了

出0入442汤圆

发表于 2022-3-3 13:20:16 | 显示全部楼层
首先你要确认QSPI能不能直接映射到内存空间,能的话你定义才有用,否则你每次用到这些数据都要手动去读QSPI了。如果能映射,那么你直接写成const,编译时自动进rodata。当然此时你还是得想办法弄个启动器,从boot启动之后打开QSPI内存映射,然后跳进user app地址。即,fsbl->qspi remap->remap ptr,然后加载.data,清.bss。。此时你有必要开cache,要不然会非常非常慢。

出0入71汤圆

发表于 2022-3-3 13:49:00 | 显示全部楼层
用单片机思维开发ZYNQ是要吃亏的,在这样的系统上跑个LINUX是很舒服的,而且网络、文件和任务管理的问题都解决了,统一的C/C++编程和大量的开源软件让你爽掉大牙,移植一个JAVA找几个JAVA程序员来写程序,自己当监工爽掉门牙。当然,你为了几块钱的DDR3,就当我啥都没有说吧。

出0入91汤圆

 楼主| 发表于 2022-3-3 14:14:10 | 显示全部楼层
本帖最后由 ackyee 于 2022-3-3 14:27 编辑
dellric 发表于 2022-3-3 13:49
用单片机思维开发ZYNQ是要吃亏的,在这样的系统上跑个LINUX是很舒服的,而且网络、文件和任务管理的问题都 ...
(引用自3楼)


  我只是点个屏  顺带做个电源管理,没必要上linux 吧 裸奔开发速率最高了

核心功能都用 PL 端跑了

也不全为了省  省是目标,  折腾的目的也是为了更快的熟悉  这个平台

出0入91汤圆

 楼主| 发表于 2022-3-3 14:37:19 | 显示全部楼层
本帖最后由 ackyee 于 2022-3-3 14:39 编辑
wye11083 发表于 2022-3-3 13:20
首先你要确认QSPI能不能直接映射到内存空间,能的话你定义才有用,否则你每次用到这些数据都要手动去读QSPI ...
(引用自2楼)


恩恩 暂时先放弃这个方案了,用传统带DDR的先设计下去,回头有时间再好好折腾折腾 wiki上有个很详尽的方法 是直接 FLASH 上加载代码的,回头试试

折腾3天了,发现越折腾 里面的学问越多,不过也算对底层稍微了解了点, 还是有精力的时候再继续弄这个的

出0入0汤圆

发表于 2022-3-3 14:55:15 | 显示全部楼层
ocm好像是192k不够用?

出0入91汤圆

 楼主| 发表于 2022-3-3 15:03:59 | 显示全部楼层
shiva_shiva 发表于 2022-3-3 14:55
ocm好像是192k不够用?
(引用自6楼)


OCM  要负责 FSBL 的启动

然后我的代码里要加入家公司的LOGO 作切换用,所以  OCM 不够用了

出0入0汤圆

发表于 2022-3-3 15:08:49 | 显示全部楼层
ackyee 发表于 2022-3-3 14:37
恩恩 暂时先放弃这个方案了,用传统带DDR的先设计下去,回头有时间再好好折腾折腾 wiki上有个很详尽的方 ...
(引用自5楼)

直接在PL端搞个AXI-BRAM,在PS端地址内存映射读写就OK啦。

出0入91汤圆

 楼主| 发表于 2022-3-3 15:10:08 | 显示全部楼层
本帖最后由 ackyee 于 2022-3-3 15:12 编辑
denike 发表于 2022-3-3 15:08
直接在PL端搞个AXI-BRAM,在PS端地址内存映射读写就OK啦。
(引用自8楼)


我想说 PL端的  BLOCKRAM 资源用到98%了 DSP资源用了100%   还是乖乖用DDR

出0入0汤圆

发表于 2022-3-3 19:46:23 | 显示全部楼层
不到万不得已,不要用无DDR模式,太费劲
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-4-19 22:27

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表