BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / embedded-system / #8731同步于 2010/6/2
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Embedded_System机器人发帖

通常说的在NORFLASH上运行的程序还需要用到RAM吗?

jennymasar
2010/6/2镜像同步7 回复
norflash支持片上运行,nandflash不支持。那通常所说的在norflash上运行的程序是不是可以不需要ram? 如果我想做一个很小的ARM系统,一个2440芯片+一片norflash可行吗?不用操作系统,只运行一些百K左右大的.bin文件,也不用考虑程序的运行速度。不知道可不可行? 一个运行中的ARM程序包含3部分:RO,RW和ZI,如果程序是存在norflash里面,RO应该是在norflash里吧,RO和ZI在哪呢? 网上看了不少资料,但对一些基本的概念还是理解不透,求助!!
订阅后,新回复会通过你的通知中心匿名送达。
7 条回复
eelb机器人#1 · 2010/6/2
完全没ram是不行的(2440内部有一小段内部ram) norflash能直接读,不能直接写。。 不太理解 如果系统都缩减到不考虑速度,不用ram,你用2440干吗。。
jennymasar机器人#2 · 2010/6/2
唉,是别人要求这么来做的,我也不理解弄个ARM跑个小程序有啥劲。他们主要想把ARM板子做小一些。 2440内部是有4K的ram吧,是不是太小了,通常情况下够用吗?对程序运行占用的内存没有一个量化的概念... 怎么样可以查到程序跑起来用了多大的内存?没有操作系统的情况下怎么查? “norflash能直接读,不能直接写。。”是不是说不能对一些变量进行操作? 【 在 eelb 的大作中提到: 】 : 完全没ram是不行的(2440内部有一小段内部ram) : norflash能直接读,不能直接写。。 : 不太理解 : ...................
eelb机器人#3 · 2010/6/2
RAM直接读写,速度快,nor直接读,写不行,能做code区,不能做data区的 不跑系统的话 4k的ram一般程序也够用了,就是栈和堆都小点, 你的函数嵌套不能太多,动态或者静态分配的内存不能太多。。 像IAR这种编译集成环境都可以查看rom和ram使用空间
UZ机器人#4 · 2010/6/2
不推荐用2440,何必呢。 【 在 jennymasar (holy shit) 的大作中提到: 】 : norflash支持片上运行,nandflash不支持。那通常所说的在norflash上运行的程序是不是可以不需要ram? : 如果我想做一个很小的ARM系统,一个2440芯片+一片norflash可行吗?不用操作系统,只运行一些百K左右大的.bin文件,也不用考虑程序的运行速度。不知道可不可行? : 一个运行中的ARM程序包含3部分:RO,RW和ZI,如果程序是存在norflash里面,RO应该是在norflash里吧,RO和ZI在哪呢? : ...................
jennymasar机器人#5 · 2010/6/3
ADS编译,显示: Total RO Size(Code + RO Data) 81.21KB Total RO Size(RW Data + ZI Data) 2.79KB Total ROM Size(Code + RO Data + RW Data) 81.21KB 是不是说要保证这个程序运行,要提供2.79KB的内存? 【 在 eelb 的大作中提到: 】 : RAM直接读写,速度快,nor直接读,写不行,能做code区,不能做data区的 : 不跑系统的话 : 4k的ram一般程序也够用了,就是栈和堆都小点, : ...................
jennymasar机器人#6 · 2010/6/3
看完这篇文章后了解一些了。 http://blog.csdn.net/jamestaosh/archive/2009/07/14/4348385.aspx 看来我的这个小程序处理器内嵌的sram是够用的。
ssailing机器人#7 · 2010/6/7
代码段和数据段分离对程序员的要求较高 需要写独立的编译链接脚本 如果是ADS的话 设置下还是不复杂的 如果是gcc gdb之类的就比较麻烦了