关于DSP中的动态内存
来源:互联网 发布:国产网络科幻动漫电影 编辑:程序博客网 时间:2024/06/04 06:52
最近一直在DSP上实现OI算法(正交迭代),由于OI算法中涉及到很多矩阵运算,并且在C语言中,又没有像Matlab中那么多矩阵操作的函数,所以实现起来比较麻烦。在DSP实现这个算法时,可以有几个方法去实现。
第一种:将Matlab和DSP连接起来;
第二种:将Opencv加载到DSP中(即emcv);
第三种:自己写矩阵运算的函数。
但由于本人用的板子的问题,前两种都运行不了,所以采用自己写矩阵操作函数。首先定义了一个矩阵结构体,然后声明为指针,在后面很多的矩阵操作函数中都是传递矩阵地址来完成。
在本算法中特别是在矩阵操作这块涉及到很多malloc函数,虽然很多人不建议在DSP中使用malloc函数,但是由于用到很多矩阵,要每个都去静态分配地址的话会很乱,所以还是使用了malloc函数。刚开始时,我是在VC6.0中实现的,没感觉到malloc会出现什么问题,当我把程序拷到DSP中时,就出现问题了,就是动态内存不够用,所以一直在寻找如何增加动态内存。去网上找相关的信息却很少,可能这个问题很简单,但我问过周围的同学,却都没遇到过,所以还是自己去寻找解决办法。最后不经意间看到了一个解决办法:
我用的是CCS2.0,在菜单Project->Build Options->Linker->Heap size。改这个大小就可以了。
但是在运行时发现malloc函数确实存在问题,就是释放后的资源怎么能在整合成比较大的块,这是一个需要优化的地方。在寻找解决办法……
而对于DSP/BIOS中关于动态内存问题的解决办法,可以参考
http://processors.wiki.ti.com/index.php/Creating_Dynamic_Objects_and_Threads_in_BIOS#Specify_placement_of_DSP.2FBIOS_objects
- 关于DSP中的动态内存
- 关于dsp中的bootmode资料
- DSP里动态内存分配malloc函数的使用
- 关于动态内存分配
- 关于动态内存分配
- 关于动态内存分配
- C++中的动态内存
- 第一篇 关于DSP中的fft的相关问题
- 关于JAVA中的内存
- C中的动态内存分配
- c++中的动态内存管理
- C++中的动态内存管理
- Dynamic Memory Allocation in Critical Embedded Systems/关于嵌入式系统中的动态内存分配
- 关于C#调用C++动态库中的内存对齐的讲解
- 6.关于QT中的内存管理,动态的制作,动态库的调用,静态库的制作
- 关于DSP的学习
- 关于DSP数据类型
- 关于移动DSP
- git简单操作
- Using jconsole
- android的http协议
- 自己做的关于LSH图像检索的PPT
- JSP页面中出现Internet Explorer无法打开Internate站点...已终止操作
- 关于DSP中的动态内存
- USACO 1.3.1 Mixing Milk (milk)
- 在LINUX下安装BOCHS
- 快速排序递归算法
- 【转】dodo:人脸识别方法个人见解(一)
- my eclipse 快捷键 -转载
- 智能视觉识别软件在汽车主动防撞系统中的应用前景
- 【转】dodo: 人脸识别 II
- 【java】jdbc-odbc桥数据库连接