DSP

Davinci调试环境的搭建

2019-07-13 11:10发布

一、Davinci调试环境搭建所需软件
    Davinci的程序分DSP程序及ARM程序,DSP程序我们在CCS中编辑和编译,ARM程序在Source Insight中编辑,在Linux中的dvsdk1.3工具链下编译。
  以下是我们在开发过程中所使用的软件: Windows:        CCS 3.3               DSP程序编译环境        TDS560USB          仿真器驱动        VMWare5.0           虚拟机软件        Source Insight 3.5 软件工程编辑工具        Tera Term             串口控制软件        DVFlasher             串口flash烧写工具        UltraEdit-32           文本编辑工具   Linux:        dvsdk1.3               ARM交叉编译工具链        GCC3.2.2              编译器        VI                         文本编辑工具   同时,在linux下需要启动如下服务:        samba    通过网络提供与windows共享文件功能       nfs          通过网络给Davinci板卡提供根文件系统       tftp         通过网络下载文件至Davinci板卡       dhcp              动态分配IP   二、Davinci调试环境搭建及使用总体步骤
 
Davinci调试环境搭建及使用可以分成5大步: 1,  搭建linux环境 2,  安装arm编译环境 3,  搭建CCS环境 4,  编译库,生成x64P,由ARM端可执行程序调用运行 5,  编译uboot并烧写进flash,烧写内核及根文件系统     三、搭建linux环境
      安装linux操作系统,可以在物理硬盘上直接安装,也可以采用在Windows的虚拟机上安装,方法并不唯一,我们采用的是在Windows的虚拟机上安装。同样,本文提到的许多方法都不是唯一的实现方式,而只是我们所采用的那一种方法。
安装虚拟机与linux时请参考文档《虚拟机软件Vmware Workstation 5.0使用指南.doc》,需要注意几点: 1,  分配硬盘空间时,至少需要12G; 2,  物理内存推荐256M以上,安装linux时,swap空间大小加上物理内存大小必须超过600M; 3,  安装linux时,可以使用光盘安装,也可以使用硬盘上的ISO映象文件进行安装;与不用虚拟机在物理硬盘上安装的过程是一样的;在安装好linux后,需要安装VMware Tools。  
注意:由于后面需要与Windows之间进行通讯,我们的虚拟机网络采用网桥的方式,将虚拟机中linux的IP配置成与主机Windows同一网段,例如,Windows的IP为192.168.1.80,我们可以指定Linux的IP为192.168.1.81,在命令行输入如下命令: ifconfig eth0 192.168.1.81 netmask 255.255.255.0       然后,Linux与Windows就可以互相ping通了。    
  四、安装ARM程序的编译环境
要执行本步骤,系统需要满足如下条件:
  1. 安装了RedHat Linux 9.0或其他较新linux版本,且安装时应选择了下列组件: a) Editors包中的vi b) Network servers包中的dhcp 2. Redhat Linux 服务器的IP地址为192.168.1.81、子网掩码为255.255.255.0 3. 知道root用户的密码。   安装arm编译环境需要以下的工具包: mvl_4_0_1_demo_sys_setuplinux.bin mvl_4_0_1_demo_target_setuplinux.bin mvl_4_0_1_demo_lsp_setuplinux_#_#_#_#.bin dvsdk_setuplinux_#_#_#_#.bin xdc_setuplinux_#_#_#_#.bin bios_setuplinux_#_#_#_#.bin TI-C6x-CGT-v#.#.#.#.bin 其中的#代替数字,表示版本号,我们当前使用的版本具体如下: mvl_4_0_1_demo_sys_setuplinux.bin mvl_4_0_1_demo_target_setuplinux.bin mvl_4_0_1_demo_lsp_setuplinux_01_20_00_014.bin dvsdk_setuplinux_1_30_00_40.bin bios_setuplinux_5_33_03.bin TI-C6x-CGT-v6.0.15.1.bin xdc_setuplinux_3_00_02_14.bin   下面详细说明以上这些文件如何安装:   1、安装ARM交叉编译环境
启动RedHat Linux服务器,到出现登录画面时,使用root用户登录,
  (1)搭建MontaVista Linux开发环境
直接运行前3个文件,根据提示操作即可。命令如下:
host $ ./mvl_4_0_1_demo_sys_setuplinux.bin host $ ./mvl_4_0_1_demo_target_setuplinux.bin host $ ./mvl_4_0_1_demo_lsp_setuplinux_#_#_#_#.bin 运行时会询问存放目录,推荐为 /opt/mv_pro_4.0.1 。 以上3个命令生成3个压缩包,先确认生成的3个压缩包: host $ cd /opt/mv_pro_4.0.1 host $ ls 有如下3个压缩文件:   mvltools4.0.1-no-target.tar.gz   mvl4.0.1-target_path.tar.gz   DaVinciLSP-#_#_#_#.tar.gz 分别解压,使用下面命令: host $ tar zxf mvltools4.0.1-no-target.tar.gz host $ tar zxf mvl4.0.1-target_path.tar.gz host $ tar zxf DaVinciLSP-#_#_#_#.tar.gz 这样就创建了新目录 /opt/mv_pro_4.0.1/montavista/ ,其中存放了内核源码、根文件系统、Arm-gcc编译器等。 (2)安装dvsdk工具链
运行如下命令:
host $ ./dvsdk_setuplinux_#_#_#_#.bin 会生成一个目录/opt/dvsdk_1_30_00_40, host $ ./xdc_setuplinux_#_#_#_#.bin host $ ./bios_setuplinux_5_#_#_#.bin 运行时会询问存放目录,指定为 /opt/dvsdk_1_30_00_40 。 在/opt/dvsdk_1_30_00_40下新建一个目录,名为cg6x_6_0_15 执行如下命令: host $ ./TI-C6x-CGT-v#.#.#.#.bin 运行时会询问存放目录,指定为 /opt/dvsdk_1_30_00_40/ cg6x_6_0_15 。 到这一步,所需要的工具链就安装完成。下一步是进行适当的路径配置。         (3)dvsdk工具链的路径配置
/opt/dvsdk_1_30_00_40路径下有一个重要的配置文件:Rules.make,由于刚才另外在dvsdk目录下安装了三个工具,在Rules.make需要有相应的更改。
对应XDC_INSTALL_DIR宏及BIOS_INSTALL_DIR宏,需要改成如下值: XDC_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/xdc_3_00_02 BIOS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/bios_5_33_03 在需要使用到DSP程序编译处,需要改动相应的CGTOOLS_C64X宏如下: CGTOOLS_C64X = $(DVSDK_INSTALL_DIR)/cg6x_6_0_15 至此,就可以进行ARM端程序的编译了。   2、系统配置
      嵌入式系统由于对成本、体积、功耗等方面的要求,一般不能安装发行版的Linux系统。所以Davinci系统也需要相应的开发环境,来进行程序的开发调试。
      在进行程序开发调试时,我们采用NFS与tftp等网络通信方式共享Linux服务器中的资源,用于嵌入式Linux进行访问、改写。     本部分主要介绍包括NFS,DHCP服务,samba服务以及DVEVM板部分参数的配置。 (1)设置NFS
[davinci@DavinciServer davinci]$ cd /root
[davinci@DavinciServer davinci]$ mkdir -p armfs [davinci@DavinciServer davinci]$ cd /root/armfs/ [root@DavinciServer filesys]# cp -a 下面一行内容紧跟在-a后,有一空格 /opt/mv_pro_4.0/montavista/pro/devkit/arm/v5t_le/target/* . [root@DavinciServer filesys]# vi /etc/exports 在vi的界面下按i键进入输入状态,输入如下内容: /root/armfs/ *(rw,sync,no_root_squash) 按Esc键退出输入状态,按:键(即Shift+;)键,键入命令wq