让VDSP与uclinux共舞(1):开篇

 

快乐虾

http://blog.csdn.net/lights_joy/

[email protected]

  

本文适用于

ADSP-BF561

优视BF561EVB开发板

Visual DSP++ 5.0(update 6)

Bfin-uclinux-2009r1.6

 

欢迎转载,但请保留作者信息

 

关于uclinuxvdsp,在http://docs.blackfin.uclinux.org/doku.php?id=visualdsp:faq提供了一些说明,大声对vdspNO。但是vdsp自有其优越性,比如说容易上手,高效的信号处理库支持,性能分析工具等等。

那么是否有可能结合二者的长处呢?答案是肯定的,这个网站上列出的理由并不能成为使用vdsp进行uclinux开发不可逾越的屏障!只要小心处理,这些问题应该都是可以克服的!

1.1    对在vdsp下编译uclinux内核的反思

07r1开始一直到09r1.6,从单核到双核,每一个发行版的内核都可以移植到vdsp下进行编译。在这个过程中,对内核结构和一些算法的理解起到了莫大的作用。但是要想将这种方法实用化却没有太大的意义,因为它需要对内核的代码进行修改,需要手工甄别哪些文件是内核需要的,哪些文件是不需要的,稍有不慎,内核就无法运行。

因此这种方法对于内核的研究学习尚可,但是不太可能实际使用。

在此过程中,得到几个有用的经验:

1vdspc编译器与gcc的兼容性不错,uclinux内核的头文件几乎不需要处理就可以直接在vdsp下使用。

2、内核中并非不能使用vdsp库,它只是不能使用vdsp库的某些功能。

3、在uclinux内核运行过程中,完全可以用vdsp通过仿真器连接到目标板,并控制内核继续运行。

4、不能用gcc链接vdsp生成的.doj或者dlb文件,反之vdsp也不能直接链接gcc生成的.o文件。

5、可以使用内核可以加载vdsp生成的dxe文件。

6、可以使用vdsp读取vmlinux里面的调试信息。

 

1.2    新的目标

基于前面得到的经验,我们希望找到一种方法,达到下面的目标:

1、不改变内核的开发方法,仍然按照官方的方法进行内核的编译与裁剪。

2、控制gcc加入具体的调试信息,在vdsp中加载这些调试信息并进行内核的调试。

3、使用vdsp进行驱动的开发与调试。

4、使用vdsp进行用户程序的开发与调试。

 

1.3    准备工作

目前手上有的东西:

1、优视BF561EVB开发板

2、在vdsp下编译好的u-boot-trunk-svn-1982

3blackfin-toolchain-09r1-10

4blackfin-toolchain-uclibc-full-09r1-10

5uClinux-dist-2009R1-RC6

6ADI仿真器

7vdsp5 update 6

Go…………..

 

1.4    发点牢骚

某日和某君谈起在vdsp下移植uclinux内核,结果别人问:“你这个东西有没有在实际项目中使用?”,然后就直接被鄙视了,@_@,汗……….

 

 

 

2       参考资料

关于uClinux-2.6(bf561) for VDSP的移植2008/3/11

VDSP中编译uClinux:工程文件发布2008/2/27

VDSP中编译uclinux7):令人困惑的成功(2007/11/30)

VDSP中编译uclinux6):VFS: Unable to mount root fs on unknown-block(31,0)(2007/11/29)

VDSP中编译uclinux5):Milestone-内核启动基本完成(2007/11/25)

VDSP中编译uclinux4):console实现(2007/11/21)

VDSP中编译uclinux3):编译器的差异(2007/11/21)

VDSP中编译uclinux2):内存布局(2007/11/20)

VDSP中编译uclinux1):不可能的任务?(2007/11/18)

 

 

 

 

你可能感兴趣的:(让VDSP与uclinux共舞(1):开篇)