新聞中心

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

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

—— SPE-C集成開(kāi)發(fā)環(huán)境實(shí)現(xiàn)了與SPARC處理器的無(wú)縫配合工作
作者: 時(shí)間:2010-11-21 來(lái)源:電子產(chǎn)品世界 收藏

本文引用地址:http://butianyuan.cn/article/114746.htm


  BMSPARC還提供對(duì)硬件CORDIC的支持,主要通過(guò)庫(kù)函數(shù)修改的方式完成。通過(guò)使用庫(kù)替換的方法,可以簡(jiǎn)化移植過(guò)程,實(shí)現(xiàn)軟件兼容及的快速開(kāi)發(fā)和使用,并可以快速完成針對(duì)超越函數(shù)的優(yōu)化。SPE-C與BMSPARC的集成SPE-C中編譯系統(tǒng)的基本規(guī)則為:針對(duì)工程中的源文件及鏈接文件,包括用戶指定的庫(kù)文件,按照指定的規(guī)則,并參考用戶設(shè)置,生成一個(gè)符合要求的Makefile文件,然后用make.exe對(duì)Makefile文件進(jìn)行解釋執(zhí)行,從而生成需要的目標(biāo)文件,或完成相應(yīng)的動(dòng)作[6-8]。

  如果在整個(gè)過(guò)程中有錯(cuò)誤發(fā)生,則編譯/鏈接終止,IDE系統(tǒng)將套件提供的錯(cuò)誤原因反饋給用戶。為了將BMSPARC編譯工具鏈集成到SPE-C中,必須使BMSPARC工具鏈的輸出信息包括警告和錯(cuò)誤信息最終輸出在SPE-C的顯示窗口中。由于BMSPARC工具鏈的各個(gè)執(zhí)行文件都是基于控制臺(tái)的執(zhí)行程序(基于命令窗口的命令行程序),而SPE-C是圖形用戶界面(GUI)程序,因此要將它們執(zhí)行的各種輸出信息收集并放到SPE-C的輸出窗口中顯示,需要一些技巧。本

  系統(tǒng)實(shí)現(xiàn)在SPE-C的輸出窗口中顯示編譯信息的方法如下:

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

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

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

  結(jié)語(yǔ)

  SPE-C已經(jīng)實(shí)現(xiàn)了與SPARC處理器的無(wú)縫配合工作,也已通過(guò)第三方評(píng)測(cè),可隨時(shí)提供給用戶使用;下一步要完善軟件仿真環(huán)境及對(duì)操作系統(tǒng)的支持,為用戶進(jìn)行軟件仿真和針對(duì)操作系統(tǒng)編譯開(kāi)發(fā)提供有效的支持環(huán)境。

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




評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉