个开放源码的嵌入式仿真环境——skyeye

个开放源码的嵌入式仿真环境——skyeye

ID:20173501

大小:55.00 KB

页数:4页

时间:2018-10-10

个开放源码的嵌入式仿真环境——skyeye_第1页
个开放源码的嵌入式仿真环境——skyeye_第2页
个开放源码的嵌入式仿真环境——skyeye_第3页
个开放源码的嵌入式仿真环境——skyeye_第4页
资源描述:

《个开放源码的嵌入式仿真环境——skyeye》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、个开放源码的嵌入式仿真环境——SkyEye

2、第1内容加载中...关键词:SkyEye仿真μClinuxμ/OS-IILinux嵌入式系统1SkyEye的目标与意义1.1SkyEye产生的背景操作系统是软件产业的基础和龙头,能左右软件产业发展的方向,是世界软件产业最大的利润。对于后PC时代和普适计算(pervasiveputing)而言,嵌入式系统无处不在,其中关键的软件核心技术包括嵌入式操作系统和网络互联中间件等。对于想进行嵌入式系统软件开发和学习,或者想研究嵌入式Linux等操作系统和一些底层系统软件(如TCP/IP

3、等)的研究和开发人员来说,可能存在如下几方面的问题:①经常苦于经费不足,缺少足够的硬件开发板和完善的软件开发环境;相关的书籍对一些最新软件的分析还不够全面,无法深研究和开发嵌入式软件。②高层次的软件设计和开发一般不用过多考虑底层硬件的实现细节,如果直接处于一具体的硬件环境下,在开发和研究中可能会陷入硬件的具体细节中不能自拔,而不能把精力放到高层次的软件设计和开发上。③如果硬件开发环境不太稳定(这种情况经常见到),且对身体的硬件不是很了解,则可能在排除问题上花费大量不必要的时间。对于想了解、学习一般操作系统的实现原理、L

4、inux/μClinux操作系统或TCP/IP等系统级软件的实现的人员,目前一般采用的方法是看书和读源代码。这是一种静态的学习方法,但效率较低,比较枯燥,缺少一种动态和亲自实践的感觉。要想深入分析和开发软件,就要动手编程,不能只是看看书,读读代码,只有通过亲手实践才能够掌握软件设计的核心内容。上面所指出的问题和需求促使了SkyEye项目的诞生。1.2SkyEye的目标和意义SkyEye是开源软件(OpenSourceSoftoryManagementUnit),即存储器管理单元,是用来管理虚拟内存系统的操作。MMU的两

5、具主要功能是:*将虚地址转换成物理地址;*控制存储器存取允许,MMU关掉时,虚地址直接输出到物理地址总线。MMU本身有少量存储空间存放从虚拟地址到物理地址的匹配表,此表称作TLB(TranslationLookasideBuffers)。TLB表中保存的是虚地址及其对应的物理地址、权限、域和映射类型。当CPU对一虚拟地址进行存取时,首先搜索TLB表以查找对应的物理地址等信息。如果没有查到,则进行查找TranslationTable,称为TTMU/Cache的仿真主要是依据ARM720T处理器的体系结构进行的。ARM72

6、0T可以看成ARM7TDMI加上MMU/Cache模块,主要是仿真控制MMU/Cache的寄存器结构、TLB结构、Cache结构、TranslationTableA信道和本地DMA信道两个部分。本地DMA完成控制器与仿真网络的数据交换,主处理器(Host)收发数据只需对远程DMA操作。当主处理器要向以太网络发送数据时,先将一帧(frame)数据经过远程DMA信道,送到以太网络控制器中发送缓存(RingBuffer),然后发出传送命令。以太网络控制器在送出前一帧的数据后,继布完成此帧的发送。以太网络控制器接收到的数据通过

7、MAC比较后,由FIFO存到接收缓冲区,收满1帧后,以中断或缓存器标志的方式通知主处理器。为了有效支持网络仿真,SkyEye还设计了一个虚拟HUB-v,可以在一台Host主机上支持多个在SkyEye上运行的OS实例进行网络的通信互联,从而更有助于针对网络方面的开发和研究。3SkyEye上已经移植成功的OS3.1μClinuxμClinux是应用于嵌入式设备的一个Linux版本,是主要针对不带MMU的CPU而设计的Linux系统。ΜClinux系统对于内存的访问地址都是实际的物理地址。操作系统对内存空间没有保护(这实际上

8、是很多嵌入式系统的特点),各个进程实际上共享一个运行空间(没有独立的地址转换表)。目前,SkyEye上可以运行μClinux的2003年最新版本。3.2μC/OS-IISkyEye作为一个基于AtmelAT91X40开发板的仿真环境,在它上面可以移植各种适合地嵌入式开发应用的操作系统,将μC/OS-II移植琶SkyEye上是我们对此做的又一次尝试。ΜC/OS-II是一个简单、高效的嵌入式实时操作系统内核。自从1992年以来,已经被应用到各种嵌入式系统中。目前,它可以支持x86、ARM、Po.linux.org.uk/。

9、4SkyEye目前支持的网络协议栈4.1μCLinux上的TCP/IPμClinux上面有完整的TCP/IP协议栈,但缺少对SkyEye的网络仿真芯片(仿真兼容NE2000的8019as)的驱动程序。我们实现的驱动程序主要包括了初始化、中断处理、接收数据包的处理、发送数据包的处理等工作,再加上SkyEye的虚拟HUB-vet的协议

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。