新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 为FPGA软处理器选择操作系统(08-100)

为FPGA软处理器选择操作系统(08-100)

—— 为FPGA软处理器选择操作系统
作者:Jean Labrosse Micriμm 公司 ,John Swan 莱迪思半导体公司,Philipp Tomsich Theobroma Systems公司时间:2009-02-25来源:电子产品世界收藏

  技术问题可以大致分类为:

本文引用地址:http://www.eepw.com.cn/article/91693.htm

  * RTOS对应用作出的响应够吗?

  * 实时提供了所需的功能吗?大多数实时提供相同的基本功能:任务管理,时间管理,信号量,消息队列,事件标志等。

  * RTOS可以实时用于不同的CPU (即代码可以移植吗)吗 ?一个 实时,如μC/OS-II已移植到超过45种不同CPU 架构, 所以在这种 情况下,可移植性不会成为问题,产品和其一部分的长寿性是得到保证的。如果使用一个新的架构,移植 到一个 CPU通常需要一两个星期。

  * 使用RTOS是否有足够的ROM和RAM?根据所需的特性RTOS的空间可以减少吗?例如,μC/OS-II是可以升级的,代码 空间的要求在6千字节到24 千字节的之间,最低只需要500字节的RAM 。

  从商业角度,事情并非那么容易解决。具体来说,嵌入式开发者需要从操作系统供应商那里得到满意答复,了解价格结构,支持结构和供应商的声誉和稳定性。寻找一个ROTS操作系统或RTOS的供应商时,调查通常是一个好的开端。

  当系统响应速度是最重要时,如控制和监测应用程序,就会选择商业的RTOS,因为它们很依赖于软件的执行功能。如果你可以选择用硬件实现时间至关重要的功能,通常就不需要由RTOS提供严格的时间保证。

  UNIX操作系统

  在过去几年中,嵌入式应用中采用的32位处理器平台的性能和功能得到了极大增强。今天,即使软处理器,如LatticeMico32提供达到50至100 DMIPS的计算能力。随着可用资源的性能和功能的增强,提供丰富的功能集和抽象层的操作系统已成为一种可行的可选嵌入式解决方案。UNIX提供了非常丰富的编程环境,对多处理器的应用有相当的规模,以及在网络的应用方面拥有丰富的历史。通过文件操作,它提供了一个统一的设备抽象层,使平台之间的应用可以快速移植。一些UNIX版本也可获取开放源代码授权:Linux是最著名的变种,有非常庞大的用户群体和许多嵌入式应用(如WLAN路由器,打印机,VoIP电话)。Linux系统甚至对不包括MMU (内存管理单元)的处理器提供了有限的支持。各种BSD (伯克利软件分发)版本可能不太为人所知,但它们在许可证上限制较少。

  一些实时扩展为Linux提供了在Linux执行层的顶部(或者说,下面)的最佳的软实时层。RT/ Linux、 RTAI和Xenomai是实时扩展的例子。通过多种已知的API从其他的RTOS (在Xenomai,此功能被称为“skins”),一些实时层输出其功能 。

  Linux系统提供了丰富的应用,可以很容易地集成到一个嵌入式应用程序,如Web服务器,协议栈,数据库引擎,图形库和网络管理。这些功能可以添加到任何嵌入式应用,而不需要“从草图”开发。随着Linux的先进I/O子系统的出现,和全面支持的非易失存储技术(从闪存到SATA硬盘) ,甚至可以集成“大”的应用(如在NAS应用中,跟踪照片的数据库应用)。

  广泛使用的操作系统技术,例如Linux,其中一个最大的好处是在互联网上可获取大量的可用信息,有许多专业设计公司可以提供专业服务。虽然源代码的许可证是免费的,Linux的复杂性和大小会压垮许多用户。在这种情况下,专门设计公司,如Theobroma Systems可提供专业支持,培训和总承包设计服务。重要的是要记住,“开放源代码组织”并不能给你提供工业质量的支持,只有有经验的工程人员才行。

  使用解决方案时,有与大型操作系统如Linux相关的性能和响应时间方面的问题,可以用硬件实现。在这种情况下,操作系统功能作为一种资源监管,大部分关键时间工作用硬件来完成。这个方法的一个例子是在UART内利用一个大的FIFO,以减少至操作系统 的中断次数。当然,此方法有一定的局限性和复杂性,但与一个专用的CPU芯片相比,有更多的灵活性。

 

linux操作系统文章专题:linux操作系统详解(linux不再难懂)


评论


相关推荐

技术专区

关闭