新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > SPARC高性能处理器集成开发环境及其编译器设计与实现

SPARC高性能处理器集成开发环境及其编译器设计与实现

——
作者:时间:2010-10-21来源:电子产品世界收藏

  显然,通过使用库替换的方法,可以简化移植过程,实现软件兼容及的快速开发和使用,并可以快速的完成针对超越函数的优化。

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

  4、与BMSPARC的集成

  中编译系统的基本规则为:针对工程中的源文件及链接文件,包括用户指定的库文件,按照指定的规则,并参考用户设置,生成一个符合要求的Makefile文件,然后用make.exe对Makefile文件进行解释执行,从而生成需要的目标文件,或完成相应的动作。[6] [7] [8]

  如果在整个过程中有错误发生,则编译/链接终止,IDE系统将套件提供的错误原因反馈给用户。

  为了将BMSPARC编译工具链集成到中,必须使BMSPARC工具链的输出信息包括警告和错误信息最终输出(Output)在SPE-C的显示窗口中。由于BMSPARC工具链的各个执行文件都是基于控制台的执行程序(基于命令窗口的命令行程序),而SPE-C是图形用户界面(GUI)程序,因此要将它们执行的各种输出信息收集并放到SPE-C的输出窗口中显示,需要一些实现技巧。本系统中实现在SPE-C的输出窗口中显示编译信息的方法如下:

  1)当通过界面交互得到用户编译某一工程或源码文件的指令后,首先发起一个后台线程;

  2)后台线程创建一个匿名管道,发起一个命令子进程以执行编译整个工程或某个源码文件的make命令,直接将该命令子进程的标准输出和错误输出均重定向到由父进程创建的匿名管道的“写”端,SPE-C的后台线程通过该匿名管道的“读”端得到所需要的编译信息;

  3)后台线程再将所有通过管道获取的编译信息实时传送回IDE界面中的信息输出(Output)窗口进行显示。

  下图是采用如上技术,实现SPE-C与编译器之间的信息交互的结果示例:

  显然,这种方法实现起来并不复杂,命令子进程的Stdout和Stderr都被重定向到匿名管道的写端,仅用一个匿名管道就实现了全部功能。上面程序流程图中从匿名管道读端读取的输出信息,即是由编译命令子进程的Stdout和Stderr重定向输出的内容,将其直接放入Output窗口中显示便实现了编译信息实时显示的功能。

  结束语

  本文讨论了针对SPARC高性能处理器的嵌入式系统专用软件及其编译器,介绍了(SPE-C)的设计及其集成的相关功能,介绍了BMSPARC编译环境及其添加CORDIC指令支持的方法,以及如何实现编译环境与集成开发环境的集成。通过上面的工作,SPE-C集成开发环境已经实现了与SPARC高性能处理器的无缝配合工作;下一步要完善软件仿真环境及对操作系统的支持,为用户进行软件仿真和针对操作系统编译开发提供有效的支持环境。

  参考文献

  [1] “The SPARC Architecture Manual Version 8”, SPARC International,Prentice Hall, 1992

  [2] Prakash Rashinkar,Peter Paterson.孙海平译. 系统芯片(SOC)验证方法与技术. 电子工业出版社,2005

  [3] 张镇,魏同立, 基于IP模块的片上系统设计 电子器件,2002

  [4] 姚文刚,[硕士论文]基于GCC的交叉编译器结构分析与后端移植研究,2006

  [5] 王晓栋,郑扣根,基于嵌入式系统的交叉汇编器的研究与实现,工业控制计算机,2004

  [6] 朱兴泉,IDE集成GCC编译器的方法,指挥控制与仿真,2007

  [7] 王荣胜,林嘉宇,张镔,嵌入式系统集成开发环境中的编译器效能研究,电子技术应用 2008

  [8] 邹耀,刘佩林,基于用户描述的可配置汇编器,计算机工程,2009

c语言相关文章:c语言教程



上一页 1 2 3 下一页

评论


相关推荐

技术专区

关闭