logo资料库

龙芯vxWorks操作系统.pdf

第1页 / 共104页
第2页 / 共104页
第3页 / 共104页
第4页 / 共104页
第5页 / 共104页
第6页 / 共104页
第7页 / 共104页
第8页 / 共104页
资料共104页,剩余部分请下载后查看
2018 年龙芯技术培训主题二 龙芯嵌入式操作系统 龙芯嵌入式图形解决方案 龙芯中科技术有限公司 安全应用事业部 2018 年 10 月
第一部分 龙芯嵌入式操作系统 目 录 1  龙芯嵌入式操作系统 .................................................................................... 1  1.1  龙芯嵌入式操作系统介绍 ................................................................ 1  1.1.1  workbench 开发环境安装 ........................................................... 1  1.1.2  vxWorks 系统结构 ....................................................................... 1  1.1.3  vxWorks 系统启动流程 ............................................................... 3  1.1.4  worbench 目录结构 ..................................................................... 5  1.2  龙芯 VXWORKS 二维、三维图形 ..................................................... 6  1.2.1  龙芯 vxWork 图形-安装过程 ..................................................... 7  1.2.2  龙芯 vxWork 图形-使用用例 ..................................................... 8  2  龙芯 7A/2K BSP 开发调试 ........................................................................... 9  2.1  地址-3A 7A1000 ................................................................................ 9  2.2  地址-2K1000 ................................................................................... 12  2.3  中断 .................................................................................................. 16  2.3.1  中断控制器驱动移植 ............................................................... 16  2.3.2  vxBus 设备驱动中断 ................................................................. 21  2.3.3  非 vxBus 设备驱动中断 ........................................................... 22  2.3.4  vxWorks 系统中断-3A 7A1000 ................................................. 25  2.3.5  vxWorks 系统中断-2K1000 ...................................................... 37  2.4  驱动设备添加 .................................................................................. 43  2.4.1  DMA 设备驱动添加 .................................................................. 43  2.4.2  串行驱动添加 ........................................................................... 45  2.5  工具 .................................................................................................. 48  2.5.1  Ejtag ............................................................................................ 48  2.5.2  WindDebug(WDB) ..................................................................... 59  2.5.3  Error Detection and Reproting (EDR) ........................................ 74  2.5.4  SPY ............................................................................................. 75  2.5.5  ftpServer 和 ftpcilent 配置及使用 ............................................. 77  2.5.6  常用 Shell 命令 ......................................................................... 80  2.6  常见问题 .......................................................................................... 81  3  资源下载 ...................................................................................................... 87 
1 龙芯嵌入式操作系统 1.1 龙芯嵌入式操作系统介绍 风河 vxWorks 操作系统是一种嵌入式实时操作系统,具有高实时性、可裁剪 性、友好的开发调试环境等特点,它以其良好的可靠性和卓越的实时性被广泛地 应用在通信、军事、航空、航天等高精尖技术及实时性要求极高的领域中,如卫 星通讯、军事演习、弹道制导、飞机导航等。 在对国产自主可控的嵌入式操作系统支持方面,龙芯公司支持并积极配合国 内自主嵌入式操作系统研制单位做好龙芯 CPU 与自主嵌入式操作系统的适配优 化工作。目前,龙芯平台支持的国产嵌入式操作系统如:锐华系统、道系统、天 脉操作系统、天熠操作系统、中兴嵌入式操作系统、神舟嵌入式操作系统等,支 持 QT、miniGUI、tilcon 等 GUI 开发环境。基于龙芯平台上述嵌入式系统已在工 控、装备等领域得到广泛应用。 龙芯公司向用户提供 vxWorks 6.8 为主的 BSP 开发包,BSP 包主要有龙芯 1A、龙芯 1E+1F 、龙芯 2H 、龙芯 2J/2I+AMD5536 、龙芯 2J/2I+1A 、3A+ AMD780 /2H/7A 和龙芯 2K1000 等。 1.1.1 workbench 开发环境安装 1、安装基础软件,双击风河 workbench 安装软件“setup.exe”。安装过程注意 指向 License 文件。 2、按照风河公司的补丁安装文档,安装必要补丁。 3、绑定 MAC 地址,将 License 文件 Serial Number: ******-************ -**********中间部分号码设置为网卡 MAC 地址。 4、办公需要我们将 MAC 地址设置在一个虚拟网卡里。虚拟网卡安装不再 详细叙述。 1.1.2 vxWorks 系统结构 vxWorks 操作系统主要有 5 个组成部分,包括板级支持包 BSP、Wind 微 内核、网络设备系统、文件系统以及 I/O 系统。vxWorks 的系统架构如图 1-1 所 示: 1
龙芯嵌入式操作系统 图 1-1 vxWorks 的系统架构图 针对 vxWorks 系统架构注释如下: [1] 板级支持包(BSP,Board Support Package) 在 vxWorks 操作系统中,板级支持包为介于底层硬件环境和 vxWorks 之间 的软件接口,其主要功能是对各种硬件功能提供统一的软件接口,包括硬件的初 始化、中断的产生和处理、硬件时钟和计时器管理、内存地址映射、内存空间大 小、实时内核载入等。 [2] 高性能的实时操作系统内核 。 vxWorks 的核心是高性能的微内核 Wind。它支持实时任务切换、中断、基 于优先级抢占式的任务调度和时间片轮转调度等。Wind 微内核体积小,响应快, 减少了系统开销,从而保证了对外部异步事件的实时、稳定可靠的响应。 [3] 网络设备 网络设备是一类特殊的设备,它通过多层协议与应用程序交换信息。应用程 序采用 Socket 接口作为操作函数集合。 [4] 文件系统 文件系统是操作系统实现的重要组成部分。vxWorks 操作系统支持 dosFs、 rawFs、HRFS 和 ROMFS 等多种文件系统。 [5] I/O 系统 vxWorks 提供的 I/O 系统与 ANSI C 兼容,包括符合 POSIX 标准的异步 2
龙芯中科技术有限公司安全应用事业部 I/O 系统以及 Unix 标准的基本 I/O 系统。I/O 系统提供了与设备无关的用户接 口。 1.1.3 vxWorks 系统启动流程 vxWorks 的启动流程如图 1-2 和图 1-3 所示。 图 1-2 vxWorks 的启动流程 3
龙芯嵌入式操作系统 图 1-3 vxWorks 的启动流程-续 针对启动过程的注释如下: [1] vxWorks 的入口是 sysALib.s 文件中的 sysInit()函数,该函数由汇编语言 完成,主要完成的工作是初始化 CPU,初始化内存,初始化堆栈,禁止 CPU 的 所有中断,并跳转到 C 函数 usrInit()中。 [2] usrInit()函数对系统进行最小初始化,包括对内核数据结构进行初始化, 以及对系统硬件进行初始化(sysHwInit()函数完成),最后调用 kernelInit()函数。 在 kernelInit()函数中,初始化内存池,启动系统内核,打开系统中断,并且创建 系统的第一个任务,任务的入口函数为 usrRoot()函数,之后系统就运行在多任务 环境下了。 [3] usrRoot()函数主要完成的工作是初始化 MMU、系统时钟等,并且激活各 种内核服务程序。 4
龙芯中科技术有限公司安全应用事业部 [4] sysClkConnect()函数主要作用是连接系统时钟中断服务程序。 [5] sysHwInit2( )函数主要作用是 sysHwInit( )中未完成的板级的初始化。 1.1.4 worbench 目录结构 以 vxWorks 6.8 为例, windRiver workbench 主要的目录文件如表 1-1 所 示 (以下目录都在 installdir/之后): 目录名称 介绍 表 1-1 windRiver 主要目录 components 组件目录(包含图形网络等) diab gnu license 风河的编译器 diab 工具链相关的库 gnu 编译工具链的库 gcc 软件 workbench 安装的时候,根据所用的 license 生成的相关 license 文件目录 vxWorks-6.8 主要的 vxWorks6.8 相关的目录 workbench-3.2 可执行文件所在目录,如下: workspace workbench-3.2\wrwb\platform\x86-win32\eclipse\wrwb-x86-win32.exe 工程所在的目录,包括建的工程和新生成的内核二进制 1、components 目录 • components\windml-5.3:windml 图形目录 。 • components\obj windml:编译生成的图形库 。 • components\ip_net2-6.8:ipnet 网络库。 2、vxWorks-6.8 目录 • vxWorks-6.8\target\config:板级支持包 BSP 及其相关配置所在目录。 • vxWorks-6.8\target\config\comps\vxWorks:内核配置的组件对应的 cdf 文 件目录。 • vxWorks-6.8\target\config\lx2g_mipsi64le:板级支持包 BSP 文件目录。 • vxWorks-6.8\target\h:各个驱动相关头文件、数学库头文件所在目录。 • vxWorks-6.8\target\lib\mips:单核 BSP 编译内核镜像时调用的 MIPSI64 库所在的目录。 (龙芯 CPU 是 mips 架构只需关注 mips 文件夹下的文件)。 • vxWorks-6.8\target\lib_smp\mips:多核 BSP 编译内核镜像时调用的 MIPSI64 所在的目录(由于我们的 CPU 是 mips 架构我们只关心 mips 文件夹 下的文件)。 5
龙芯嵌入式操作系统 • vxWorks-6.8\target\src:各个驱动文件、数学库文件所在目录。 3、workbench-3.2 workbench 的可执行文件所在目录,如 workbench-3.2\wrwb\platform\x86-win32\ eclipse\wrwb-x86-win32.exe。 4、workspace 这是新建工程所在的目录,工程配置文件以及内核镜像都在里面。 1.2 龙芯 vxWorks 二维、三维图形 vxWorks 解决方案:针对龙芯 2K1000 和 3A+780/2H/7A 等硬件平台,提供 PMON、以 vxWorks6.8 为主的 BSP 开发包、Qt4.8.7 龙芯优化版、WindML 图 形库以及二维显卡驱动模块等软硬件系统解决方案,支持 AMD HD3000、 HD4690 和 E6465、龙芯 2H/2K/7A 集成显卡等显卡设备,可应用于各类嵌入式 二维图形系统,如图 1-4 所示。 图 1-4 二维显卡驱动模块 图中所示“Xlib 后端”是传统 Linux 下的图形架构,存在系统架构复杂、 软件栈层次过多,影响系统启动速度及文件系统精简性;“直接二维加速后端” 是龙芯公司针对嵌入式平台特点新增加的二维图形加速后端,采用 Qt+直接硬件 加速接口的架构,使得 Qt 可直接使用显卡硬件加速接口,从而精简掉复杂的 XServer 图形架构,同时还可获得显卡硬件加速特性;“FB 后端”即为纯软件的 图形绘制系统后端,没有显卡硬件加速支持;“DirectFB 后端”是传统的以 DirectFB 图形库为核心的图形架构,存在着与 XServer 类似的架构复杂等弊端; 6
分享到:
收藏