基于OMAPL138+FPGA核心板多核软件开发组件MCSDK开发入门(上)
#申请原创# #每日话题# #技术资源#本文测试板卡为创龙科技 SOM-TL138F 是一款基于 TI OMAP-L138(定点/浮点 DSP C674x + ARM9)+ 紫光同创 **s/Xilinx Spartan-6 低功耗 FPGA 处理器设计的工业级核心板。核心板内部OMAP-L138 与 **s/Spartan-6 通过 uPP、EMIFA、I2C 通信总线连接,并通过工业级 B2B连接器引出网口、EMIFA、SATA、USB、LCD 等接口。
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/6c61ce61bbe5437daea30c4341de0aa2~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=6HnIN3t8lgxz354ULm%2F6tEQBAQE%3D
核心板经过专业的 PCB Layout 和高低温测试验证,稳定可靠,可满足各种工业应用环境。用户使用核心板进行二次开发时,仅需专注上层运用,降低了开发难度和时间成本,可快速进行产品方案评估与技术预研
MCSDK介绍
德州仪器(TI)2013年11月推出基于低功耗OMAP-L138 DSP + ARM9™处理器的多核软件开发组件——MCSDK(Multicore Software Development Kits),帮助开发人员缩短开发时间,实现针对TI TMS320C6000™高性能数字信号处理器(DSP)的扩展。为工业、通信、电信以及医疗市场开发各种应用的客户现在无需转移其它软件平台,便可升级至高性能器件。
TI MCSDK提供高度优化的特定平台基础驱动器捆绑包,可实现基于TI器件的开发。此外,MCSDK还可为实现便捷编程提供定义明确的应用编程接口,支持未来向更高性能的TI多核平台的移植,因此开发人员无需从头设计通用层。MCSDK不仅可帮助开发人员评估特定器件开发平台的软硬件功能,而且还可帮助他们快速开发多核应用。此外,它还有助于应用在统一平台上使用SYS/BIOS或Linux。MCSDK的各内核通常还可指定运行Linux应用,作为控制平台,而其它内核则可同时分配高性能信号处理工作。借助这种异构配置的高灵活性,软件开发人员可在TI多核处理器上实施全面解决方案。在TI OMAP-L138应用实例中,内部ARM9处理器可分配嵌入式Linux等高级操作系统执行复杂的IO协议栈处理,而TMS320C674x DSP则可运行TI RTOS(上述SYS/BIOS)实时处理任务。
TI DSP业务经理Ramesh Kumar指出:“能为OMAP-L138处理器提供MCSDK我们深感振奋。新老客户都将受益,包括在整个TI C6000™ DSP中可使用相同的软件、支持编程高效率、加速产品上市进程以及更高的投资回报等。”
有了MCSDK,开发人员可获得各种优化型DSP库,包括数学库、数字信号处理库、影像视频处理库、电信库以及语音视频编解码器等,并可从中获益。此外,TI OMAP-L138处理器还具有应用优化型特性与外设的独特组合,包括以太网、USB、SATA、视频端口接口(VPIF)以及uPP等。
MCSDK软件安装
先按照软件安装文档安装Linux版本CCS,搭建好TFTP、NFS开发环境。然后在产品资料"Tools\Linux\"目录中找到"mcsdk_1_01_00_02_setuplinux.bin"安装文件,先将其拷贝至共享目录,然后安装MCSDK。
Host# cp /mnt/hgfs/shareVM/mcsdk_1_01_00_02_setuplinux.bin /home/tl/ti/
Host# cd /home/tl/ti
Host# ./mcsdk_1_01_00_02_setuplinux.bin
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/089fc0572f744ddebf4e3f3432e8006f~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=13uWuL1%2FrYOKrNfDlvsUBaUxIF0%3D
图 1
弹出如下界面,点击Next。
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/ee7a9b272cb648e29bf64c69ba75d208~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=42Jly%2FtZaubIV6X6Uau8qGDFa1A%3D
图 2
弹出如下界面,点击Next。
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/b2ca28a6fdae46a38be799314b8625da~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=wuqEKtqueLnLAMNzUJG3XKLMHMo%3D
图 3
安装路经选择默认,即"/home/tl/ti",确保此路径为CCS的安装路径,如不同,请修改为一致,然后点击Next。
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/7c34cfbfd24e405ea300a6fb587ff428~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=xrXHfiEjSwp%2FLZOhSYyb%2BrKCWIU%3D
图 4
弹出如下界面,点击Next。
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/475a6ffa726a44898bdf9168f2a1415b~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=WkwHxXMvQ5UZwwhskh0qRIRe4I0%3D
图 5
弹出如下界面,开始安装MCSDK。
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/a961fa7f34c04af8bffd8a19e2c3cc66~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=yRaOkJXLt0guT5VUmG6p62%2F6MEA%3D
图 6
等待如下界面出现,点击Finish完成安装。
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/725acd046ca14670bf5bcb380b9697d2~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=SpKhELLnffCnZi%2F0rPuQvZjEAvU%3D
图 7
设置MCSDK开发环境参数执行如下命令,设置CCS权限。
Host# sudo chmod -R 777 /home/tl/ti/ccsv5
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/c1f23bfde50c4bd985bba28e96f8674b~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=%2Bni7o5ia2PqvInhPzjCv73BzsDc%3D
图 8
进入mcsdk_1_01_00_02安装目录下,启动MCSDK设置脚本。请务必保证虚拟机网络畅通,根据不同主机设置,进行TFTP、NFS、U-Boot等配置。由于我司已单独提供U-Boot、内核、文件系统,不使用MCSDK的U-Boot、内核、文件系统,因此如下三者的相关设置可以忽视。
Host# cd /home/tl/ti/mcsdk_1_01_00_02/
Host# sudo ./setup.sh
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/1e4b161d8d3b4c46a66ed6b3b78ec130~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=iKt8jc%2FYzgpyvJAHxUmOIXATHn8%3D
图 9
按Enter键将MCSDK的文件系统安装至默认路经,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/48326c1877614839a17ece469d123578~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=R7In%2BYa6Bpta4dVDxbwaT3iBON0%3D
图 10
按Enter键,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/e8649e60ad994f6d9be1b29df041a168~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=l%2FCSiIvoRED1UoEOX0iDgFJG42E%3D
图 11
按Enter键将MCSDK的Linux内核镜像安装至默认路径,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/edfa9ed976e142ee9bcb45eb18a2fad5~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=KPw75lDht2ELbwJ%2FHeBpNOTqkHs%3D
图 12
按Enter键设置可以进行NFS访问,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/a1208df9e708458baef0f2d312c3dcfc~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=v5IvhC3N5eU0NAUQBzjmhMLtdko%3D
图 13
按Enter键设置TFTP服务器下载目录为默认路径(/tftpboot),出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/0a715c2c35b9496f8ae853759e7c12a8~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=T3kR%2F4M3f6yKLpA3%2FN7%2BSyYgsn4%3D
图 14
按Enter键,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/b700ba4b26894f258274de280a91ca8e~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=l%2Feyg%2FqXX9TJJoYrhY%2FC9%2B5f%2Fh8%3D
图 15
按Enter键设置串口为默认设置,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/e305c509a4134dd49a1a5c10eda71d0d~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=w%2BCG6YGneSJ1eK14SsVB5ERyamw%3D
图 16
按Enter键设置默认的U-Boot、TFTP网络变量,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/6bf205d4eb65412fae7813c57a426c02~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=J4LEkRO9WEdT3lOn%2BWVnKIsEArk%3D
图 17
按Enter键变量中设置为默认的NFS启动方式,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/0638d42bc9674b63a491fc384cb8f44e~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=%2FNPQKyxLZufDC%2BUOEU%2FpyQpKtH0%3D
图 18
按Enter键设置为默认的NFS文件系统启动方式,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/20be749f01e1473e83f8e9c0a7b2b1fb~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=N5F%2FjRjXsOdAogVppr5BH0REHZ8%3D
图 19
按Enter键设置启动时TFTP下载的为默认内核镜像,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/3899391faae54553bfbabda620178b12~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=1JCd69JPk618LNbT8ohQww%2F%2B5Zo%3D
图 20
输入:n,然后按Enter键,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/3c59288d56874c0aab34f5962c6087a1~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=g1oeL2GOf5vJo44risjz0AXAyUU%3D
图 21
输入:Y,然后按Enter键,出现如下界面:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/071599c47f234042988f23e56073ef8a~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=Ej%2FCUwCBZaXx0a55LCE3lux6Hiw%3D
图 22
最后看到"TISDK setup completed!",说明设置已经完成。
备注:如果期间提示,需要安装缺失的组件,根据提示,按"y"安装即可。
syslink配置、编译、安装
安装MCSDK时,会自动将syslink安装在相同的目录下,下文将介绍syslink配置、编译和示例演示。在开始syslink编译之前,请确保以下几点:
[*]已安装arm-none-linux- gnueabi-gcc-4.3.3交叉编译工具链。
[*]内核源码已正确编译。
[*]文件系统源码正确解压在Ubuntu虚拟机。
配置syslink进入"/home/tl/ti/syslink_2_21_01_05",打开配置文件products.mak。
Host# cd /home/tl/ti/syslink_2_21_01_05
Host# gedit products.mak
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/e3a9ac1c8ccc4a65942394c28cf04e44~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=HlTZWcKmAn2iSEfPDAtB0vRYTPU%3D
图 23
修改如下地方:
备注:由于配置容易出错,已将配置文件products.mak放在产品资料Shell目录下,可以将此文件覆盖"/home/tl/ti/syslink_2_21_01_05/products.mak",然后再根据实际情况修改即可。
[*]DEVICE = _y**ice_
改为 DEVICE = OMAPL1XX //表示编译OMAPL138
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/e6671f008fe34deda67560fe92e618ab~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=uETQ0eJQo9UnDNtv8tYFFntWTi0%3D
图 24
[*]SDK = _your_sdk_
改为 SDK = NONE //SDK类型为NONE
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/5cad63429b9141ee8084577a427a072d~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=9rPsDllj3lgdvlDom13t7MPfwEM%3D
图25
[*]EXEC_DIR = _your_filesys_
改为 EXEC_DIR = /home/tl/omapl138/demo-rootfs //syslink驱动和演示程序安装路径,一般设置为NFS或者SD卡的文件系统
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/74a28b4ea2c7444e85f87183036735e9~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=MXvvgI2d2avSBeEV4y2eUbtogT4%3D
图26
[*]DEPOT = _your_depot_folder_
改为 DEPOT = /home/tl/ti //MCSDK的安装路径
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/6b1dc358e3e24f4c831e6e0967acbb7d~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=JrodbX%2BrasPVRQcNCRiplekxNdI%3D
图 27
编译syslink源码编译syslink之前,先将以下两个宏定义添加至syslink中的Omapl1xxIpcInt.c、omapl1xx_phy_shmem.c、omapl1xxpwr.c文件开头,否则编译会出错。
#undef __ASM_ARCH_HARDWARE_H
#include <mach/hardware.h>
[*]修改Omapl1xxIpcInt.c
执行以下命令修改:
Host# cd /home/tl/ti/syslink_2_21_01_05/packages/ti/syslink
Host# gedit ipc/hlos/knl/notifyDrivers/arch/omapl1xx/Omapl1xxIpcInt.c
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/5c69a2e6bca8420391b778db1bd76f91~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=PX86tBW9rikcTB0h2Xm88aEWmG8%3D
图 29
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/56c867d54b5747a5aedfb5067bcc1778~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=kFEO3ir5C2C0YdK%2BgbzcuL%2BBQME%3D
图 30
添加内容后,保存退出。
[*]修改omapl1xx_phy_shmem.c
在当前路径下,执行以下命令:
Host# gedit family/hlos/knl/omapl1xx/omapl1xxdsp/Linux/omapl1xx_phy_shmem.c
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/3dac5fad24fe487e94c1f7fac725183b~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=kGX%2BvkQVVVmur6JUDmzkn0nL4N4%3D
图 31
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/df4167d480284b02af46f0ac64655ec6~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=3K1UFOi9mAFAuy%2BUZMJS%2B7Y33B8%3D
图 32
添加内容后,保存退出。
[*]修改omapl1xxpwr.c
在当前路径下,执行以下命令:
Host# gedit family/hlos/knl/omapl1xx/omapl1xxdsp/omapl1xxpwr.c
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/9e30e6fae5554c318ccf8e7c5b42207f~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=OFGdsiCuyAhM%2B5sIoRTxZMHxLEU%3D
图 33
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/1926d48c54174a6e9666347ae0b190fe~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=94yqVCktC5KnLG0c6VEiuPCLksg%3D
图 34
添加内容后,保存退出。
执行以下命令编译syslink:
Host# cd /home/tl/ti/syslink_2_21_01_05
Host# sudo make syslink
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/a91af4651383420d98282e5df403cf07~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=hMuuKlBmwFECGzGEukvIYPwElqw%3D
图 35
编译成功如下图所示:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/d12e569e35bc4bdfa9fb4bc0efb52a9f~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=6mulkjgUpQFeOKDdJasFAmQrRFs%3D
图 36
编译syslink示例程序在当前目录,执行以下命令:
Host# sudo make samples
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/080f95ce0f6840e6b1267be7de19ab51~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=L4NcM4dtxkSU6DNGL8rIDvFkQpo%3D
图 37
编译成功如下图所示:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/0237962600f64d0ba5a01a7c85a40554~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=KHmeXvzXosyl3C%2BfmMue%2FQEKtZQ%3D
图 38
至此,整个syslink编译完成。
syslink示例程序演示安装syslink驱动和示例程序至文件系统在syslink源码目录下,执行以下命令将syslink驱动和示例程序安装至文件系统:
Host# sudo make install
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/422a6322902946929da66cf2ad95e029~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=APesobMBElcQ89I6bYFE5FKVu%2Bw%3D
图 39
安装成功如下图所示:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/9972005138074cbdb6f2cd78dca1675b~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=btfPHz%2BCbo5IbgEjEfzwktZ%2F2r8%3D
图 40
执行以下命令查看是否已经安装syslink驱动和示例程序。
Host# cd /home/tl/omapl138/demo-rootfs/
Host# ls
Host# ls lib/modules/3.3.0/kernel/drivers/dsp/
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/da78ee42f5f6441bb606d4637fa922bd~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=u%2FdVsmkQ2TDblN7iRsnIZqhIBbI%3D
图 41
可以看到在文件系统"lib/modules/3.3.0/kernel/drivers/dsp/"目录下有syslink驱动程序syslink.ko文件,以及文件系统根目录下有"ex**_##"的示例程序。
运行syslink示例程序我司提供的U-Boot会根据当前CPU型号和内存大小自动产生推荐的内存分配参数,并将此参数赋值给mem_args变量,U-Boot默认使用mem_args变量值启动系统,下表为部分举例:
表 1
CPU型号
内存大小
mem_args变量值
备注
OMAP-L138
128MByte
mem=32M@0xc0000000 mem=64M@0xc4000000
DSP使用32MByte;
ARM使用96MByte;
OMAP-L138
256Myte
mem=32M@0xc0000000 mem=192M@0xc4000000
DSP使用32MByte;
ARM使用224MByte;
将syslink的示例程序demo-rootfs文件夹拷贝至评估板中,启动评估板,进入文件系统的"demo-rootfs/lib/modules/3.3.0/kernel/drivers/dsp/"路径下,执行命令安装syslink驱动:
Target# modprobe syslink
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/5cfafbd3cd4044b5bd073ed5b221de38~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=1%2F6mgtlDp%2FYUUGN2442Fz3BeQy8%3D
图 42进入demo-rootfs目录,运行syslink示例程序。
Target# cd /home/root/demo-rootfs/
Target# ./runall.sh
成功运行如下图所示:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/f1b85aa2d38a4363bf1c64e67ff54286~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=huP51fHsoxIm2tpQzQ1vxTVuUfE%3D
图 43https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/5406b48be03d4a11a38118b2bd6bd17e~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=%2FgR2C4hzDlIrF1uPRkix6BbtgqE%3D
图 44syslink示例程序解析每个示例目录中有readme.txt和run.sh文件说明如何使用示例,而在评估板中运行runall.sh是运行了所有的syslink示例程。
Slaveloader
在OMAPL138的ARM Linux操作系统中,syslink提供了slaveloader组件去加载、启动、停止DSP处理器,实现了对DSP核的管理。同时也是使用slaveloader组件去运行syslink示例程序。
运行"slaveloader"组件有四个参数:
参数1:startup|shutdown|all|powerup|load|start|stop|unload|powerdown|list
参数2:Core name //远程处理器名称,一般是DSP
参数3:File path //可执行文件路径,当参数2为"startup/load/all"时必填
参数4:map-file //map文件,当远程处理器MMU功能开启时必填
运行命令格式如下图所示:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/e7b879a7e34c46dfa4823229f682bf27~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=p7qo0FbHiDsE4Sz5iYVXbtf8iUw%3D
图 45可以通过各个syslink示例目录下的run.sh脚本查看使用slaveloader运行示例程序的具体方法。下图是各个示例的功能简介:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/cd10b82a0fbc4af28a52a24cfc7da998~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=NEt7YaXt%2FefrUCE17MfoXGSB%2Bmg%3D
图 46备注:在单独运行各个示例程序前,务必先安装syslink驱动,安装命令:
Target# insmod /lib/modules/3.3.0/kernel/drivers/dsp/syslink.ko TRACE=1 TRACEFAILURE=1
ex01_helloworld示例名字:helloworld
功能说明:GPP(ARM)端注册一个来自DSP端的简单一次性通知事件。
参考英文资料:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/48dcb51f21544d2c8562f79a69c8ea4c~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=KwzD1P1hduUdqKgagPDPdwUR%2FUU%3D
图 47运行命令:
Target# cd demo-rootfs/ex01_helloworld/debug/
Target# ls
Target# ./run.sh
成功运行提示如下图:
https://p3-sign.toutiaoimg.com/tos-cn-i-qvj2lq49k0/c38c2c5f2ad44f16b8932f5cb1218ce8~tplv-obj.jpg?traceid=202303011016169037FF0A26E9844F59AD&x-expires=2147483647&x-signature=bNOFHmH3Ga5j5qL5XS6zFQHHheY%3D
图 48
页:
[1]