DSP

DAVINCI DM3730开发攻略——开发环境篇

2019-07-13 16:18发布

【原文:http://zjbintsystem.blog.51cto.com/964211/1167159】         深圳的春天,梧桐山上绿意浓浓,山花醉人香,蜂蝶采蜜忙!现在只能在山上看到这些生机勃勃的景象了,山下的水污染完了,空气也不咋样。但相对北方的兄弟姐妹长期生活在灰霾和沙尘的环境,这里也很难得了,地下水的污染,不单单北方有,南方很早就打井排污了,治理要近1000年的才能恢复 。这些企业和贪官庸官断子绝孙的发展模式,注定不长久。而对于我们这些差不多吃尽整个元素周期表的中国平民百姓,生活还得继续,我们现在需要从方方面面来考虑绿 {MOD}环保的工作和生活,其中包括我们的产品设计,因为这些嵌入式产品是超大规模生产和使用的,每套多耗掉几瓦电就已经很恐怖了。     低功耗+高性能的设计,一直是我们公司的追求。忙完客户的板子设计,现在可以搞搞自己公司的板子,在上一篇《DAVINCI DM3730开发攻略序》已经提到DAVINCI其他几个产品系列(DM644x、DM642、DM6437、DM648、DM6467、DM8148、DM8168)的比较,有关DM3730 CORTEX-A8+DSP的优点描述也写了,1G的A8(2000MIPS)和C64+ DSP 800M(6400MIPS),这里就不再累赘。本篇重点如何搭建DM3730的开发环境,以后会写到x-loader的移植,u-boot的移植,DVSDK4_03的开发包的介绍及用CODEC机制调用DSP算法的介绍,linux-2.6.32内核的移植,CCS工程和开发环境的介绍,Android的移植,部分应用程序的例子分析等等。DM3730比DM6446强大,需要写的东西很多,就怕自己忙不过来。 现在让我们开始动手搭建环境,我们是基于Vmware虚拟机的环境,在LINUX HOST进行开发的。开发环境的LINUX叫HOST,而板子运行的linux环境叫target。 第一、   Vmware的安装 到今天为止,Vmware的版本升级到9.0.2以上了,破解版网上有,当然买正版的更好用。有关Vmware的安装,和以前的Vmware7.1版本一样的,在本人博客另一篇《DAVINCI DM36X开发攻略——RHEL6在VM7.1的安装》 (http://zjbintsystem.blog.51cto.com/964211/502090)已经详细介绍Vmware的安装方法,当然这里下面要安装的LINUX HOST是TI指定的ubuntu-10.04 LTS,而不是那个RHEL6,这里跳过不再介绍。 第二、   Ubuntu-10.04 LTS的安装 1、Ubuntu-10.04 LTS正式安装 在《DAVINCI DM365-DM368开发攻略——开发环境搭建》(http://zjbintsystem.blog.51cto.com/964211/621435)里已经介绍Ubuntu-10.04 LTS,其实Ubuntu-12.10的版本早就出来了,TI还是建议我们安装他们的DM3730 DVSDK4_xx最好使用Ubuntu-10.04 LTS,否则无法正常安装。本人试过Ubuntu 10.10 LTS 32-bit的安装,果然DVSDK4_0_X确实安装不成功,没时间查查原因。如果有些朋友喜欢更高级的Ubuntu版本,还有个笨办法就是先在Ubuntu-10.04 LTS安装好,然后把整个dvsdk4_xx文件夹压缩打包,再到放到高级的Ubuntu解压,注意一下路径对应,就可以用了。网友可以按照《DAVINCI DM365-DM368开发攻略——开发环境搭建》里 Ubuntu-10.04 LTS环境搭建进行安装,这里特别提到的一点是,分配虚拟硬盘的大小时,建议分配30G以上,见下图。 111447708.jpg 图-1 分配虚拟机硬盘 111514228.jpg 图-2 本人的VM硬盘分配 本人的PC机内存是4G,给虚拟机这边分1252MB或1536MB是没问题的。如果使用你的PC机是2G的内存,那建议你分配512MB给虚拟机,效率有点慢。 111547812.jpg 图-3 内存分配 2、linux host虚拟机和WINDOWS共享文件夹设置 因为DM3730的DVSDK很大,Android 2.2的开发包也很大,而且以后开发的时候,会发觉Ubuntu10.vmdk文件越来越大,这个开始一直困扰本人和其他网友,后来发觉HOST里/usr/bin/vmware-toolbox和/usr/bin/vmware-toolbox-cmd的用法后,这个就决解了,红帽子LINUX RHEL5和RHEL6也是这个方法,这个等安装完DVSDK开发包后,再介绍Ubuntu文件越来越大的解决方法。安装完Ubuntu-10.04 LTS后,继续安装Vmware Tools,这个东西非常有用,方法见《DAVINCI DM365-DM368开发攻略——开发环境搭建》(http://zjbintsystem.blog.51cto.com/964211/621435)。 然后继续设置和WINDOWS共享文件夹,先在WINDOWS下建立共享文件夹,见图-4。 111710977.jpg 图-4 先在WINDOWS下建立共享文件夹 111741517.jpg 图-5-0 VM共享文件夹设置 然后在VM->settings里按图-5进行设置,那么进入虚拟机命令行后,使用#cd /mnt/hgfs/dm3730,就可以看到WINDOWS共享目录dm3730里边的文件了,比SAMBA好用。 本人喜欢使用root登录: 112052300.jpg 图-5-1 root帐号登录 3、SMABA的设置使用以下命令: #apt-get install samba #apt-get install smbfs #apt-get install samba-common-bin #apt-get install system-config-samba 系统自动从 Ubuntu的官方镜像网站下载稳定的最新的软件包版本,大家可以通过#gedit /etc/apt/sources.list命令看看这些链接的地址。 安装samba结束后,先使用 #touch /etc/samba/smbpasswd #smbpasswd -a davinci  (davinci普通用户) 输入samba访问密码两次。 然后编辑gedit /etc/samba/smb.conf的配置文件,在smb.conf最后增加下面一段内容: [smb_share] ;comment = Shared Folder with username and password path = /home/davinci public = yes writable = yes valid users = davinci create mask = 0777 directory mask = 0777 force user = nobody force group = nogroup available = yes browseable = yes 保存退出。 重启samba,/etc/init.d/smbd restart(已经和以前的/etc/init.d/samba不一样了) 使samba生效。 最后使用: # ufw disable 把防火墙给关闭掉,这样在WINDOWS下就可以使用\192.168.1.xxx 登录samba共享目录了。对于从WINDOWS 拷贝文件进SAMBA文件夹有时会碰到读写操作的权限问题,我们只需在Ubuntu里: 文件夹的操作:chmod –R 777 xxxxx 文件的操作:chmod 777 wwwww 这样就可以了。 Samba只是一个辅助的工具,就是在WINDOWS下可以操作虚拟机的文件夹读写等等操作。 4、安装其他有用的linux host开发环境包 在HOST 使用DHCP的状态下(可以在Ubuntu10里上网),安装一些有用的开发包,比如在ubuntu10.04上开发Android用到的JAVA jdk1.6.0_43和其他的: apt-get install bison apt-get install zlib1g-dev apt-get install flex apt-get install g++-multilib apt-get install libncurses-dev apt-get install libx11-dev apt-get install gperf 等等,这些在以后的Android移植的文章会详细描述到,这里先不累赘。 第三、   安装DM3730 DVSDK_04_03开发包 下面我们着重看图进行安装,用图片来演示相关的操作命令更直观。 112254545.jpg 图-6 dvsdk_04_3开发包放在共享目录    见图-6,在TI的网站上注册一个帐号,my.TI Account,如果有以前注册有就不需要注册了,进入http://www.ti.com/tool/linuxdvsdk-dm37x下,从TI网站下载到的dvsdk_dm3730-evm_04_03_00_06_setuplinux开发包,免费的,并把该文件放到刚才提到的共享文件夹里边, 112323184.jpg 图-7 建立dm3730 dvsdk4_03的目录    开始按图-7上面提示的命令进行操作,我们先在/home/davinci/下建立dm3730的目录,然后再dm3730的目录里边再建立dvsdk4_03的简短目录,不要用长长的名字,烦。 112348173.jpg 图-8 运行dvsdk_dm3730-evm_04_03_00_06_setuplinux 进入共享文件夹的目录cd /mnt/hgfs/dm3730,先使用chmod +x dvsdk_dm3730-evm_04_03_00_06_setuplinux改变这个文件的使用权限,然后运行这个安装包。 114749203.jpg 图-9 dvsdk4_03的安装开始界面 这时自动进入图形安装界面,修改安装到LINUX HOST里指定的路径,千万不要按图-9默认指定的路径, 114827308.jpg 图-10 应该按图-10指定的路径,然后按“Next”往下进行安装, 112534332.jpg 图-11 图-11的元素全部选上, 112553378.jpg 图-12 112659861.jpg 图-13 112811459.jpg 图-14 继续往下安装,这个从图-12到图-15整个过程有点长,因为这个开发包解压后很大。 112824166.jpg 图-15 到图-15表示安装结束,这时建议看看“View Softwate Developers Guide”更多了解整个DVSDK4_03的介绍。 112902339.jpg 图-16 dvsdk4_03的开发包元素 进入/home/davinci/dm3730/dvsdk4_03的目录ls一下,就可以看到这里有很多开发包元素,还有一个经典的setup.sh文件,先别急运行这个文件。 112919111.jpg 图-17 我们先按图-17在dvsdk4_03/filesystem里边建立一个dm3730rootfs的目录,到时候运行setup.sh需要解压TI EVM的文件系统dvsdk-dm37x-evm-rootfs.tar.gz到里边,这个TI EVM的dvsdk-dm37x-evm-rootfs.tar.gz文件很大,不适合我们嵌入式系统的文件系统,只有arago-base-tisdk-image-dm37x-evm.tar.gz适合,这个是TI EVM的简化版文件系统。 第四、   搭建TFTP和NFS服务器 这里我们单独把TFTP和NFS SERVER的搭建单独来介绍,上面提到的dvsdk4_03/setup.sh,已经把这些安装命令和脚本写好了,不要像安装DM6446开发环境那么麻烦。 112944625.jpg 图-18 修改setup.sh脚本 在dvsdk4_03的目录下,使用gedit setup.sh &命令,对setup.sh进行编辑,我们按图-18进行屏蔽setup-minicom.sh,这个minicom是运行在LINUX HOST里边的串口调试工具,本人觉得不太好用,我们喜欢WINDOWS下的SecureCRT,这个SecureCRT串口工具非常好用。然后把setup-uboot-evn.sh也可以屏蔽掉,最后保存这个文件。 113004248.jpg 图-19 运行setup.sh脚本 直接按图-19运行,./setup.sh, 113030161.jpg 图-20 安装g++ 自动安装g++的过程见图-20。 113051344.jpg 图-21 设置 NFS 文件系统路径 自动对linux HOST 的/etc/export文件进行设置,在export文件的后面,自动加有: /home/davinci/dm3730/dvsdk4_03/filesystem/dm3730rootfs *(rw,nohide,insecure,no_subtree_check,async,no_root_squash) 的设置(注意dm3730rootfs和*之间有个空格)。 113126760.jpg 图-22 解压文件 输入“o”,表示强制要求把dvsdk-dm37x-evm-rootfs.tar.gz解压到filesystem/dm3730rootfs的目录里,刚才上面提到dvsdk-dm37x-evm-rootfs.tar.gz是TI EVM的文件系统,超级大,只适合调试,不适合烧写到NAND上面的嵌入式文件系统,所以我们接着在dvsdk4_03 /filesystem/的目录下,使用: #mv dm3730rootfs ti_evm_rootfs #mkdir –p dm3730rootfs #tar zxf arago-base-tisdk-image-dm37x-evm.tar.gz –C dm3730rootfs 这个arago-base-tisdk-image-dm37x-evm的文件系统就是TI EVM dvsdk-dm37x-evm-rootfs.tar.gz的简化版本,本人对比了这里边的bin,sbin, lib, dev,  etc, usr/bin,usr/sbin, usr/lib等命令和LIB基本相同。 113146777.jpg 图-23 提示按回车键继续往下安装。 113239807.jpg 图-24 安装TFTP SERVER 113257351.jpg 图-25 安装结束 自动安装xinetd支持TFTP server,自动在HOST上生成/tftpboot的文件夹,以后在板子的uboot里,我们要烧写或者tftp boot 的bin文件、uImage等等都放到这里,比如本人编译出来自己命名的dm3730_xload.bin,dm3730_uboot.bin,dm3730_kernel.bin等等。 第五、   设置交叉编译环境    在DM3730的开发包上,TI一共推出DVSDK4_00,4_02,4_03,其中只有最新的DVSDK4_03里边集成了交叉编译环境,以前在DM368的开发环境里这个arm-2009q1-203是单独安装的。其实这个dvsdk4_03里边的交叉编译工具linux-devkit就是arm-2009q1-203类似的版本。现在DVSDK4_03里安装后交叉编译工具放在linux-devkit里。 #cd /root #gedit .bashrc & 在文件的最后面加上: export PATH=/home/davinci/dm3730/dvsdk4_03/linux-devkit/bin:$PATH 保存文件,退出,然后重新登录root或者reboot重启虚拟机都可以, 下面是Rules.make里边的内容: # Define target platform. PLATFORM=dm3730 # The installation directory of the SDK. DVSDK_INSTALL_DIR=/home/davinci/dm3730/dvsdk4_03 # For backwards compatibility DVEVM_INSTALL_DIR=$(DVSDK_INSTALL_DIR) # Where DSP/BIOS is installed. BIOS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dspbios_5_41_03_17 # Where the DSPBIOS Utils package is installed. BIOSUTILS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/biosutils_1_02_02 # Where the Codec Engine package is installed. CE_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/codec-engine_2_26_02_11 # Where the DSP Link package is installed. LINK_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dsplink_1_65_01_05_eng # Where the codecs are installed. CODEC_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/codecs-omap3530_4_02_00_00 # Where DMAI package is installed. DMAI_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dmai_2_20_00_15 # Where the SDK demos are installed DEMO_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dvsdk-demos_4_02_00_01 # Where the DVTB package is installed. DVTB_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/dvtb_4_20_18 # Where the EDMA3 LLD package is installed. EDMA3_LLD_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/edma3lld_01_11_02_05 EDMA3LLD_INSTALL_DIR=$(EDMA3_LLD_INSTALL_DIR) # Where the Framework Components package is installed. FC_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/framework-components_2_26_00_01 # Where the MFC Linux Utils package is installed. LINUXUTILS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/linuxutils_2_26_02_05 CMEM_INSTALL_DIR=$(LINUXUTILS_INSTALL_DIR) # Where the XDAIS package is installed. XDAIS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/xdais_6_26_01_03 # Where the RTSC tools package is installed. XDC_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/xdctools_3_16_03_36 # Where the Code Gen is installed. CODEGEN_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/cgt6x_6_1_14 # Where the PSP is installed. PSP_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/psp # The directory that points to your kernel source directory. LINUXKERNEL_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/psp/linux-2.6.32 KERNEL_INSTALL_DIR=$(LINUXKERNEL_INSTALL_DIR) (这个内核路径是我们改过的,我们不用linux-2.6.37,这个路径很重要,编译DVSDK的元素需要先编译内核!在DM6446平台很多客户不认真看我们手册就直接编译DVSDK是悲剧的!) # Where the local power manager is installed. LPM_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/local-power-manager_1_24_03_10_eng # Where the development headers and libs are installed. LINUXLIBS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/linux-devkit/arm-arago-linux-gnueabi/usr # Where c6accel package is installed. C6ACCEL_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/c6accel_1_01_00_07 # Where c6run package is installed. C6RUN_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/c6run_0_98_03_03 # Where opengl graphics package is installed. GRAPHICS_INSTALL_DIR=$(DVSDK_INSTALL_DIR)/graphics-sdk_4.03.00.02 # The prefix to be added before the GNU compiler tools (optionally including # path), i.e. "arm_v5t_le-" or "/opt/bin/arm_v5t_le-". CSTOOL_DIR=/home/davinci/dm3730/dvsdk4_03/linux-devkit CSTOOL_PREFIX=$(CSTOOL_DIR)/bin/arm-arago-linux-gnueabi- CSTOOL_PATH=$(CSTOOL_DIR)/bin MVTOOL_DIR=$(CSTOOL_DIR) MVTOOL_PREFIX=$(CSTOOL_PREFIX) # Where to copy the resulting executables EXEC_DIR=/home/davinci/dm3730/dvsdk4_03/filesystem/dm3730rootfs/opt/dvsdk (这个DVSDK编译出来的一些.ko文件,使用make xxxx_install后会copy到这个文件系统的路径) 这个Rules.make脚本很重要,整个开发环境和这里边定义的变量和定义有关,从上面我们可以学习到整个DM3730 DVSDK的东西,当然这个还不包括Android开发包rowboat-android-froyo-omap3evm等,不一定所有的DM3730产品开发需要Android,有些做监控和视频分析的产品可以直接使用LINUX和DVSDK就OK了。当然如何接LCD屏那就需要Android或QT了。 Makefile里边的内容: ……………………       @echo "  cmem                       : Build the CMEM kernel module"       @echo "  cmem_clean                 : Remove generated cmem files."       @echo "  cmem_install               : Install cmemk module" ………………….       @echo "  linux                      : Build Linux kernel uImage and module"       @echo "  linux_config               : Launch Linux kernel menuconfig"       @echo "  linux_clean                : Remove generated Linux kernel files"       @echo "  linux_install              : Install kernel binary and  modules"       @echo       @echo "  xload                      : Build the xload boot loader"       @echo "  xload_clean                : Remove generated xload files"       @echo "  xload_install              : Install the xload image"       @echo       @echo "  u-boot                     : Build the u-boot boot loader"       @echo "  u-boot_clean               : Remove generated u-boot files"       @echo "  u-boot_install             : Install the u-boot image" ……………………………… 这个总的Makefile教会大家如何编译整个DVSDK4_03的元素,需要好好研究的东西。或者我们直接在/home/davinci/dm3730/dvsdk4_03/的目录下直接: #make xload_clean #make xload 进行xload的编译,验证整个交叉编译环境是否OK;还有: #make u-boot _clean #make u-boot 看看编译默认的dm3730 evm的u-boot是否通过; 以后单独写DVSDK移植文章的时候再详细描述这些DVSDK元素,这里我们只需要验证交叉编译环境的正确性。 第六、   如何决解Ubuntu10虚拟机vmdk文件越来越大,硬盘空间变小的问题 如果上面的make没什么错误提示,基本整个开发环境搭建好了。但是我们发觉虚拟机的文件xxxxx.vmdk很大,因为在安装的时候和编译程序的时候,这个产生的临时文件会使ubuntu的虚拟机分配的硬盘空间变小,而Ubuntu10.04使用的是ext4文件系统,所以硬盘空间没有释放,有些客户分配很小的硬盘空间比如20G,很快就用没了,结果到后面系统运行和编译程序的时候就出问题,我们现在使用HOST里 /usr/bin/vmware-toolbox或/usr/bin/vmware-toolbox-cmd的工具进行虚拟机空间压缩,这个vmware-toolbox出现在这里前,我们必须先安装Vmware Tools,这个Vmware Tools前面已经提示如何安装的,比如你安装的时候默认回车选择安装在/usr/bin/这个路径,然后我们在/usr/bin/目录下直接运行: #vmware-toolbox 这时出现 113512421.jpg 图-26 vmware-toolbox压缩虚拟机硬盘的界面 我们选中整个根目录“/”进行对HOST空间压缩,过程是先分析,然后点击确认执行压缩,这个过程花较长的时间,压缩结束后会提示。 或者使用: #vmware-toolbox-cmd disk shrink / 命令来直接对虚拟磁盘进行压缩,注意最后的 / 不要漏了,它是用来指明根文件系统的。这个过程也比较长,结束后,你会发觉你在WINDOWS下的xxxxx.vmdk变小了,我们开发编程一段时间就使用上面的方法压缩一下,同时整个虚拟机备份到其他硬盘空间或者移动盘,保护自己里边的开发成果,养成良好的备份习惯。 其实网上还有另外一种WINDOWS下的操作方法,如果你的虚拟机安装在C:Program FilesVMwareVMware Workstation,而Ubuntu10.04虚拟机安装在D:Ubuntu10,我们按下面的方法 : 首先用root登录进入Ubuntu的系统, 1、#apt-get install clean(有人写apt-get clean,不知是否正确) 2、#dd if=/dev/zero of=/0bits bs=20971520 3、#rm /0bits  (注意是数字的“0”) 4、halt停止虚拟机(关机); 5、使用WINDOW的DOS命令界面“运行”,输入cmd进入DOS命令界面; 6、cd C:Program FilesVMwareVMware Workstation 7、vmware-vdiskmanager.exe -k D:Ubuntu10Ubuntu10.vmdk 上面做完后,你在看看你的xxxxx.vmdk会变小很多。 第七、   总结 总的来说,按照上面提示的方法,我们基本上搭建好DM3730的开发环境,当然开发过程中需要一些HOST的Ubuntu安装包,我们在联网的情况下,直接apt-get install xxx就OK了,总之DM3730比DM6446,DM642,DM3730等等强大多了,使用的linux内核版本2.6.32或者2.6.37,可以做很多工作和产品。下面介绍一下我们新搞的开发方案板子,让大家更加了解这个DM3730的特性,这样才会知道这个芯片方案的优点,知道如何设计好自己的低功耗嵌入式产品。 DM3730核心板(DM3730小系统板)介绍: 113616776.jpg 113630228.jpg 尺寸:长60mm,宽40mm,高8.5mm。    我们公司的TY-DM3730-SYS-V1.0核心板采用高精度工艺和抗干扰性能的PCB设计,解决了DAVINCI系统中最为复杂的高速布线问题,绝大部分的接口信号都引出到母座PIN上,提供完整的接口说明,底板配套座子PCB封装和电源设计电路、外围相关芯片的设计参考电路,及提供配套座子,这些特点可以让客户随心所欲的设计自己的底板,容易衍生系列产品,降低硬件设计风险,LINUX系统软件和众多现成例子,更加降低客户的开发时间和风险,更快推进项目进度。客户只需根据自己的系统的需求性,设计相应的底板,及配套的应用软件即可,就可快速把产品推上市场,非常适合微小型公司产品设计。在系统功能越来越强大和复杂化的今天和明天,合作是公司流行的发展模式,真诚相互合作,可以推动双方公司的发展,时间就是生命,时间就是财富。我们公司有相关上游芯片供应商和先进的贴片厂支持,深圳多种认证机构测试,完全有能力大批量生产OEM的板子。
DM3730核心板(dm3730小系统板)硬件资源:
1、ARM  CORTEX-A8——1GHz; 2、TI 定点C64+ DSP——800MHz; 3、带POWERVR SGX 3D图形加速; 4、带视频加速处理IVA2.2; 5、电源管理芯片:TPS659XX; 6、DDR-512M-BYTEs(512M*8-BITs,LP-DRAM内存); 7、NAND-512M-BYTEs(512M*8-BITs),可选(256M DDR+256M NAND组合); 8、低功耗设计,TI OMAP 45纳米工艺,适合手持和平板电脑设备; 9、支持1路USB2.0 HOST和1路 USB OTG; 10、支持3路串口:UART1,UART2,UART3; 11、支持2路SD卡接口,可外接32G和64G Micro SD卡,也支持接iNAND; 12、支持2路SPI接口; 13、支持2路I2C接口; 14、支持1路音频输入和1路音频输出,(集成在TPS659XX); 15、支持1路McBSP接口(还可以外接其他音频芯片等); 16、支持DSP 调试JTAG接口; 17、支持多路GPMC外接并口总线芯片,比如网口芯片; 18、支持6*6的按键KEY阵列,(集成在TPS659XX); 19、支持2路可控SYS_CLKOUT1和SYS_CLKOUT2频率输出; 20、支持3路PWM信号; 21、支持1个RTC电路,(集成在TPS659XX); 22、支持1路ADCIN0,(集成在TPS659XX); 23、支持硬件看门狗WATCHDOG,硬复位,(集成在TPS659XX); 24、支持超过27个独立的(非复用脚)GPIO; 25、支持BOOT MODE方式控制,比如SD卡BOOT,NAND BOOT, UART BOOT; 26、支持1路VPFE视频输入接口,外接VIDEO DECODERS(通过TI,TECHWELL,NEXTCHIP的视频芯片接CVBS模拟视频输入)和CMOS SENSOR(美光APTINA,OV等芯片); 27、支持1路复合视频输出CVBS(TV输出)或S-VIDEO输出; 28、支持LCD视频输出,DSS信号支持TFT 4.3寸屏、7寸屏、HDMI(DVI-D信号)、VGA输出; 29、3.3V,1.8V,5V电压输入给核心板; 30、实际工作温度:-20°~ 70°,也可选工业级-40°~80°; 31、尺寸:长60mm,宽:40mm,高:8.5mm; 32、视频能力:高清720P  MPEG4 Encode和Decode达30帧/秒,高清720P  H264 Decode达30帧/秒,H264 Encode 25帧/秒左右,800M C64+可以做很多Analytics视频分析和机器视觉方面的软件开发,JPEG图像处理; 33、性能比DM6446,DM6437,DM642强大多了,产品可扩展性比DM648强。做720*576 D1摄像头前来回运动的直接YUV4:2:2(还没用Resizer)的H264压缩只使用43%的DSP的资源,而DM6446-600M+Resizer则占到70%多。 应用领域: 1、低功耗便捷手持设备; 2、平板电脑; 3、车载导航设备,车载3G视频设备; 4、娱乐系统; 5、Android(安卓)设备; 6、高清720P 编码解码和传输的网络视频产品,比如VOIP视频电话,智能IP-CAMERA; 7、Analytics视频分析和机器视觉(TI的DVSDK 提供视频分析优化的 VLIB); 8、智能家居设备和人脸识别终端; 9、高端工业控制设备; 10、            媒体播放设备; 11、            安防监控DVR、IVS等设备; 12、            医疗设备;

我们公司的DM3730开发板(方案板):    桐烨科技DM3730/DM6446的板子和其他公司的开发板不一样,特别是DM3730的板子,目前国内好多家公司都只提供ARM(CORTEX-A8)的应用例子,很少介绍如何添加客户自己的算法到DSP端的例子,有些需要做DSP算法的人贪便宜,结果买这些便宜的板子回去花大量时间来学习,迟迟搞不清楚整个架构,浪费的这些时间难道不是资金吗?我们桐烨科技的板子都帮你采集好YUV格式的视频图像,并教会你如何把这个原始的图像数据放到DSP端进行处理,然后再教会你如何传处理过的图像数据和参数到ARM端。同时提醒客户还要注意一些冒牌的公司,特别是杭州有家没道德的公司直接拿我们桐烨科技的DM3730开发板图片放到他们公司网站上,欺骗其他人,我们桐烨科技从来没有想到让其他公司做代理。 173357669.jpg 硬件资源: 1、ARM  CORTEX-A8——1GHz; 2、TI 定点C64+ DSP——800MHz; 3、带POWERVR SGX 3D图形加速; 4、带视频加速处理IVA2.2; 5、电源管理芯片:TPS659XX; 6、DDR-512M-BYTEs(512M*8-BITs,LP-DRAM内存); 7、NAND-512M-BYTEs(512M*8-BITs),可选(256M DDR+256M NAND组合); 8、低功耗设计,TI OMAP 45纳米工艺,适合手持和平板电脑设备; 9、视频采集前端支持MT9P031等 CMOS SENSOR; 10、视频采集前端TVP5158 支持单路D1或4路CIF图像采集,2路D1图像采集; 11、视频采集前端支持用于机器视觉双目多目产品的NEXTCHIP NVP1XXX 4路CIF分割图像采集; 12、RGB接口支持7寸屏和4.3寸屏; 13、支持1路触摸电路,适合7寸屏和4.3寸屏; 14、支持1路HDMI输出,可直接接HDMI设备和VGA显示器; 15、支持3路串口:UART1,UART2,UART3(默认LINUX DEBUG),其中UART1支持RS485接口,UART2支持RS232接口; 16、支持1路SD卡接口,可接32G和64G Micro SD卡; 17、支持2路I2C接口; 18、支持1路音频输入和1路音频输出; 19、支持RTC时钟电路; 20、支持DSP 调试JTAG接口; 21、支持1路RJ45网口(10M/100M自适应); 22、支持4*4的按键KEY阵列; 23、支持1路光耦报警输入; 24、支持1路继电器报警输出; 25、支持众多独立非复用的GPIO; 26、支持1路CVBS模拟输出; 27、支持500G以上的SATA硬盘; 28、支持1路150M或300M带宽的WIFI模块; 29、支持2个USB 2.0 HOST接口(可以直接接3G模块); 30、支持1路USB OTG接口; 软件资源: 1、安装和搭建好的开发环境,直接解压到硬盘运行虚拟机,编译的时候直接运行build_xxxx.sh或make就OK了; 2、VMWare 9.0.1; 3、linux串口调试工具SecureCRT; 4、xloader-1.51支持NAND BOOT和SD卡BOOT; 5、u-boot-2010.06,支持BIN文件烧写和UBIFS的烧写; 6、linux-2.6.32; 7、DVSDK4_03,实现H264 DECODE和ENCODE例子; 8、Android2.2; 8、实现COTEX-A8跑1GHz和DSP 跑800MHz; 9、TVP5158 采集D1图像的H264 encode例子; 10、支持4个USB2.0 HOST软件和1个USB OTG软件; 11、提供WIFI驱动和应用(可选); 12、支持32G或64G micro SD卡操作; 13、音频实现1路输入和输出,有DVSDK 的encode 和decode G711压缩和解压的例子; 14、支持HDMI 或VGA输出驱动; 15、实现7寸屏显示驱动和触摸屏驱动,并实现Android2.2的运行; 16、实现4.3寸屏显示驱动和触摸屏驱动; 17、实现CVBS TV输出; 18、提供RS485的驱动和应用软件源码; 19、提供RS232的驱动和应用软件源码; 20、提供报警输入输出的驱动和应用的例子; 21、支持SATA硬盘的存储和录像; 22、提供TI c64p_imglib源码和提供视频分析优化的 VLIB; 23、提出CCS V5.2安装包; 24、提供TVP5158 在DSP端调试的CCS例子(可选); 25、支持MT9P031 CMOS SENSOR和OV CMOS SENSOR驱动,实现采集720P的图像(可选); 26、实现 4CIF图像采集和压缩(可选); 27、网口驱动和LINUX内核支持各自TCP/IP协议,RTP/RTCP视频传输协议,等等。 28、提供核心板部分原理图和底板全部原理图; 29、使用先进的ubifs文件系统,当然也可以支持squashfs,yaffs2,jffs2这些老文件系统; 30、以上凡是标“可选”的单独购买提供; 31、再次声明:我们的板子是拿来开发产品和做项目的,不是给学生学习用的;发现有人网上冒充我们公司名义在淘宝发布DM6446等产品,他们不敢提供对应的电话号码和地址,请注意不要被欺骗。 合作是最快出产品的。还有,慌慌张张做事情的也没必要谈项目合作,这几年我们接了很多项目,超过几十万的合同也有,胆小的确实不适合做项目,现在鸡蛋都1.5元一个了,所以我们的开发方案板子没有低于3500元的,其他公司有,不过需要慢慢开发,Time To Market才是王道。公司运行到这种规模上,品牌相当重要。 项目合作联系方式: 见博客旁边的个人介绍或者登录我们的网站http://www.tongyetech.com,这里就不详细写了。
本文出自 “集成系统-踏上文明的征程” 博客,请务必保留此出处http://zjbintsystem.blog.51cto.com/964211/1167159