【技术实现步骤摘要】
一种内存分配方法和装置
本专利技术涉及数据读取领域,尤其涉及一种内存分配方法和装置。
技术介绍
目前业内嵌入式设备的显示模块对于内存的访问都有使用IOMMU,其功能是将非连续的物理内存(IOPA)映射成连续的虚拟内存(IOVA),本质原因是显示模块的DMA需要访问连续的地址,但是系统并不能总是保证大块连续的物理地址。但是当系统长时间运行后,IOPA的碎片化更加严重后,即使IOVA能够提供线性连续的地址给显示模块的DMA使用,但是性能会有不同程度的下降。其原因是碎片化的IOPA可能导致对其访问时需要切换DDR的列地址,增加了额外的开销;且如果IOPA不连续且跨越列地址的情况加剧,则显示模块访问这些地址的性能将受到严重影响。
技术实现思路
为此,需要提供一种内存分配方法,减少列地址的切换,加快访问速度,减少开销。为实现上述目的,专利技术人提供了一种内存分配方法,包括如下步骤:扫描每段IOPA对应的内存地址信息;按照内存地址信息中对应的列信息进行顺序化,更新IOPA对应的内存地址信息为顺 ...
【技术保护点】
1.一种内存分配方法,其特征在于,包括如下步骤:/n扫描每段IOPA对应的内存地址信息;/n按照内存地址信息中对应的列信息进行顺序化,更新IOPA对应的内存地址信息为顺序化后的内存地址信息;/n将排序后的IOPA发送至IOMMU,并进行IOVA的映射。/n
【技术特征摘要】
1.一种内存分配方法,其特征在于,包括如下步骤:
扫描每段IOPA对应的内存地址信息;
按照内存地址信息中对应的列信息进行顺序化,更新IOPA对应的内存地址信息为顺序化后的内存地址信息;
将排序后的IOPA发送至IOMMU,并进行IOVA的映射。
2.根据权利要求1所述一种内存分配方法,其特征在于,还包括步骤:
根据内存地址信息中的PFN判断PFN是否连续;
若是连续,则对连续的PFN的IOPA进行顺序化;
若不是连续,则对不连续的PFN的IOPA的index进行扫描,将位于同一个chunk内的IOPA进行顺序化。
3.根据权利要求2所述一种内存分配方法,其特征在于,还包括步骤:
DMA接收并发出IOVA,IOMMU...
【专利技术属性】
技术研发人员:薛小明,
申请(专利权)人:福州瑞芯微电子股份有限公司,
类型:发明
国别省市:福建;35
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。