<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > SPARC高性能處理器集成開(kāi)發(fā)環(huán)境及其編譯器設計與實(shí)現

SPARC高性能處理器集成開(kāi)發(fā)環(huán)境及其編譯器設計與實(shí)現

——
作者: 時(shí)間:2010-10-21 來(lái)源:電子產(chǎn)品世界 收藏

  顯然,通過(guò)使用庫替換的方法,可以簡(jiǎn)化移植過(guò)程,實(shí)現軟件兼容及的快速開(kāi)發(fā)和使用,并可以快速的完成針對超越函數的優(yōu)化。

本文引用地址:http://dyxdggzs.com/article/113735.htm

  4、與BMSPARC的集成

  中編譯系統的基本規則為:針對工程中的源文件及鏈接文件,包括用戶(hù)指定的庫文件,按照指定的規則,并參考用戶(hù)設置,生成一個(gè)符合要求的Makefile文件,然后用make.exe對Makefile文件進(jìn)行解釋執行,從而生成需要的目標文件,或完成相應的動(dòng)作。[6] [7] [8]

  如果在整個(gè)過(guò)程中有錯誤發(fā)生,則編譯/鏈接終止,IDE系統將套件提供的錯誤原因反饋給用戶(hù)。

  為了將BMSPARC編譯工具鏈集成到中,必須使BMSPARC工具鏈的輸出信息包括警告和錯誤信息最終輸出(Output)在SPE-C的顯示窗口中。由于BMSPARC工具鏈的各個(gè)執行文件都是基于控制臺的執行程序(基于命令窗口的命令行程序),而SPE-C是圖形用戶(hù)界面(GUI)程序,因此要將它們執行的各種輸出信息收集并放到SPE-C的輸出窗口中顯示,需要一些實(shí)現技巧。本系統中實(shí)現在SPE-C的輸出窗口中顯示編譯信息的方法如下:

  1)當通過(guò)界面交互得到用戶(hù)編譯某一工程或源碼文件的指令后,首先發(fā)起一個(gè)后臺線(xiàn)程;

  2)后臺線(xiàn)程創(chuàng )建一個(gè)匿名管道,發(fā)起一個(gè)命令子進(jìn)程以執行編譯整個(gè)工程或某個(gè)源碼文件的make命令,直接將該命令子進(jìn)程的標準輸出和錯誤輸出均重定向到由父進(jìn)程創(chuàng )建的匿名管道的“寫(xiě)”端,SPE-C的后臺線(xiàn)程通過(guò)該匿名管道的“讀”端得到所需要的編譯信息;

  3)后臺線(xiàn)程再將所有通過(guò)管道獲取的編譯信息實(shí)時(shí)傳送回IDE界面中的信息輸出(Output)窗口進(jìn)行顯示。

  下圖是采用如上技術(shù),實(shí)現SPE-C與編譯器之間的信息交互的結果示例:

  顯然,這種方法實(shí)現起來(lái)并不復雜,命令子進(jìn)程的Stdout和Stderr都被重定向到匿名管道的寫(xiě)端,僅用一個(gè)匿名管道就實(shí)現了全部功能。上面程序流程圖中從匿名管道讀端讀取的輸出信息,即是由編譯命令子進(jìn)程的Stdout和Stderr重定向輸出的內容,將其直接放入Output窗口中顯示便實(shí)現了編譯信息實(shí)時(shí)顯示的功能。

  結束語(yǔ)

  本文討論了針對SPARC高性能處理器的嵌入式系統專(zhuān)用軟件及其編譯器,介紹了(SPE-C)的設計及其集成的相關(guān)功能,介紹了BMSPARC編譯環(huán)境及其添加CORDIC指令支持的方法,以及如何實(shí)現編譯環(huán)境與集成開(kāi)發(fā)環(huán)境的集成。通過(guò)上面的工作,SPE-C集成開(kāi)發(fā)環(huán)境已經(jīng)實(shí)現了與SPARC高性能處理器的無(wú)縫配合工作;下一步要完善軟件仿真環(huán)境及對操作系統的支持,為用戶(hù)進(jìn)行軟件仿真和針對操作系統編譯開(kāi)發(fā)提供有效的支持環(huán)境。

  參考文獻

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

  [2] Prakash Rashinkar,Peter Paterson.孫海平譯. 系統芯片(SOC)驗證方法與技術(shù). 電子工業(yè)出版社,2005

  [3] 張鎮,魏同立, 基于IP模塊的片上系統設計 電子器件,2002

  [4] 姚文剛,[碩士論文]基于GCC的交叉編譯器結構分析與后端移植研究,2006

  [5] 王曉棟,鄭扣根,基于嵌入式系統的交叉匯編器的研究與實(shí)現,工業(yè)控制計算機,2004

  [6] 朱興泉,IDE集成GCC編譯器的方法,指揮控制與仿真,2007

  [7] 王榮勝,林嘉宇,張鑌,嵌入式系統集成開(kāi)發(fā)環(huán)境中的編譯器效能研究,電子技術(shù)應用 2008

  [8] 鄒耀,劉佩林,基于用戶(hù)描述的可配置匯編器,計算機工程,2009

c語(yǔ)言相關(guān)文章:c語(yǔ)言教程



上一頁(yè) 1 2 3 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>