Hi35xx地址空间分配与使用

1、DDR内存管理说明
1)所有DDR内存中,一部分由操作系统管理,称为OS内存;另一部分由MMZ模块管理,供媒体业务单独使用,称为MMZ内存。
2)OS内存起始地址为0x80000000,内存大小可通过bootargs进行配置,例如第三章中的setenv bootargs ‘mem=64M … ‘,表示分配给操作系统内存为64M,您可以根据实际情况进行调整。
3)MMZ内存由MMZ内核模块管理(mpp/ko_hi35xx目录下的mmz.ko),加载mmz模块时,通过模块参数指定其起始地址及大小,例如:
insmod mmz.ko mmz=anonymous,0,0x84000000,186M:jpeg,0,0x8fa00000,5M anony=1 || report_error
表示mmz两块区域,区域一的名称为anonymous,起始地址为0x84000000,大小为186M;区域二的名称为jpeg,起始地址为0x8fa00000,大小为5M。
您可以通过修改mpp/ko_hi35XX目录下load3520D脚本中的mmz模块参数,来修改其起始地址和总大小。
4)请注意MMZ内存地址范围不能与OS内存重叠。

2、DEMO板DDR内存管理示意
1) 以容量为256MBytes的DDR内存为例,以下为根据本文档和SDK默认配置得到的内存管理示意图:

DDR:                                                           

-----|-------|  0x80000000   # Memory managed by OS.              
64M  | OS    |                                                 
     |       |                                                 
-----|-------|  0x84000000   # Memory managed by MMZ block anonymous.          
187M | MMZ   |                                                 
     |       |                                                 
-----|-------|  0x8fa00000   # Memory managed by MMZ block jpeg.                       
5M   |       |                                                 
     |       |                                                 
-----|-------|  0x8ff00000   # Not used.                         
1M   |       |                                                 
     |       |                                                 
-----|-------|  0x90000000   # End of DDR.                     

注意:
(1)用户在配置启动参数时需要设置OS的管理内存为64M,“setenv bootargs 'mem=64M ...”。      
(2)系统启动后,配置load3520D的脚本中mmz的管理内存为191M,“insmod mmz.ko mmz=anonymous,0,0x84000000,186M:jpeg,0,0x8fa00000,5M anony=1 || report_error”。    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值