<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í)現

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

  引言

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

  今天嵌入式系統開(kāi)發(fā)不再局限于只能由相關(guān)應用領(lǐng)域的專(zhuān)家來(lái)完成,各種優(yōu)秀(IDE)可大大降低工程人員的開(kāi)發(fā)門(mén)檻[1],使嵌入式系統的開(kāi)發(fā)變得相對簡(jiǎn)單。目前,嵌入式系統開(kāi)發(fā)使用的開(kāi)發(fā)平臺多種多樣,從ARM公司的SDT到ADS,再到RVDS,以及風(fēng)河公司的Tornado和其他公司提供的各種專(zhuān)用開(kāi)發(fā)工具;這些IDE一般都是由文件管理器、、匯編器、鏈接器、調試器等組件和工具組成。在這些開(kāi)發(fā)環(huán)境中,編譯程序起著(zhù)核心作用,鏈接程序、調試程序、程序管理等工具直接依靠編譯程序所產(chǎn)生的結果工作,而且其它工具的構造也常常要用到編譯的原理、方法和技術(shù),因此,IDE與是密不可分的。

  本文針對空間SPARC高性能處理器的IDE及其C進(jìn)行研究,從而完成SPARC處理器的軟件開(kāi)發(fā)環(huán)境的設計和實(shí)現。

  處理器體系構架

  空間SPARC高性能處理器是一款SPARC v8兼容[1-3]的高性能SoC(圖1),它在片上包含整數處理單元、浮點(diǎn)處理單元、獨立的指令和數據Cache、硬件乘法器和除法器等,具有支持PROM、SM、SDM和I/O映射空間訪(fǎng)問(wèn)的外部存儲器控制器,并有軟件可控的省電工作模式,還有可實(shí)現PCI主機橋(Host bridge)和從屬橋(Guestbridge)功能的PCI控制器等,只要加上存儲器和與應用相關(guān)的外圍電路,就可以構成完整的單板計算機系統。

  

  好的IDE可以提供設計、仿真、驗證、分析、并行開(kāi)發(fā)的能力,嵌入式系統IDE更是整合了各方資源于一身。由于系統設計的各個(gè)環(huán)節彼此之間是相互聯(lián)系的,設計的好壞要在仿真和驗證后才知道,仿真驗證的數據又可以反過(guò)來(lái)指導設計,所以單純的隔離設計并不一定合理,集成環(huán)境可使設計者和驗證者共享數據,彼此之間協(xié)同工作。

  總體設計

  SPARC嵌入式IDE能提供給系統開(kāi)發(fā)工程師一個(gè)比較完備的、易用的開(kāi)發(fā)工具(圖2),主要功能如下:應用程序開(kāi)發(fā),包括編輯、編譯;應用程序調試;軟件工程管理;軟件仿真環(huán)境;操作系統配置管理;集成環(huán)境配置管理。

  實(shí)現

  作為高性能控制SPARC高性能處理器的專(zhuān)用集成開(kāi)發(fā)環(huán)境,設計實(shí)現了軟件開(kāi)發(fā)環(huán)境SPE-C(圖3),使用C語(yǔ)言作為編程語(yǔ)言,運用SPARC V8平臺適用的BMSPARC編譯套件,能在本地Win32的環(huán)境下運行。它具備集成開(kāi)發(fā)環(huán)境所有必要的功能,包括集成的源代碼編輯、工程管理、編譯調試、環(huán)境設置等功能,方便用戶(hù)基于SPARC v8兼容處理器的應用開(kāi)發(fā)和程序調試。它還具有一般開(kāi)發(fā)環(huán)境所具有的易用性和方便性。調試部分功能包括斷點(diǎn)、逐語(yǔ)句/過(guò)程運行、查看和修改寄存器/存儲器/片上寄存器、指令跟蹤等,實(shí)現了調用棧和變量的查看等。

  BMSPARC編譯器

  BMSPARC是基于GNU工具鏈并進(jìn)行優(yōu)化設計的一款編譯器套件。其中編譯器是將一種語(yǔ)言編譯成為另一種語(yǔ)言的計算機程序,該程序以源語(yǔ)言編寫(xiě)的程序作為輸入,翻譯生成等價(jià)的目標語(yǔ)言程序。編譯器可分成只依賴(lài)于源語(yǔ)言的編譯器前端和只依賴(lài)于目標語(yǔ)言的編譯器后端兩大部分。前端主要對源代碼進(jìn)行掃描、語(yǔ)法分析和語(yǔ)義分析,生成中間代碼;而后端主要是優(yōu)化器和代碼生成器。在進(jìn)行基于SPARC的嵌入式軟件系統開(kāi)發(fā)之前,要先建立交叉編譯環(huán)境。目標機的交叉編譯環(huán)境是一個(gè)由編譯器、鏈接器和解釋器組成的綜合開(kāi)發(fā)環(huán)境,主要由 binutils、gcc 和glibc 幾個(gè)部分組成。有時(shí)出于減小libc 庫大小的考慮,也可以用別的 c庫來(lái)代替 glibc,例如 uClibc、dietlibc和 newlib。建立一個(gè)交叉編譯工具鏈是一個(gè)復雜的過(guò)程,交叉編譯器的最終成功運行,取決于很多因素,包括:主機系統配置、GNU工具版本配合、參數配置、庫選擇等,一個(gè)成功的、穩定的交叉編譯環(huán)境是需要花費大量時(shí)間的,幸運的是現在針對很多處理器都有比較成熟和穩定的編譯配置。

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>