0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

DSoC為C/C++開發(fā)團隊提供幫助

Xilinx賽靈思官微 ? 來源:djl ? 作者:賽靈思 ? 2019-07-25 10:52 ? 次閱讀

我跟我同事說,“ 兩種語言阻礙了嵌入式系統(tǒng)開發(fā)人員和軟件工程師借助Zynq SOC來提升系統(tǒng)性能?!蹦蔷褪恰?a target="_blank">Verilog” 和 “VHDL”

正如期待那樣,這已經(jīng)得到了解決—因為SDSoC開發(fā)環(huán)境真的可以實現(xiàn)。

設(shè)計師不用學(xué)習(xí)更多新的工具來提升性能,或者選擇越來越快的處理器來代替現(xiàn)有芯片。使用Zynq SoC 和Zynq UltraScale+ MPSoC可以提升嵌入式系統(tǒng)性能一至二個數(shù)量級,并且可以減少BOM成本,使用可編程邏輯的特別系統(tǒng)分區(qū),獨立的軟件和硬件開發(fā)流程。

現(xiàn)在,賽靈思推出SDSoC開發(fā)環(huán)境,它是為使用C/C++設(shè)計團隊特別設(shè)定的?;贓clipse的SDSoC開發(fā)環(huán)境采用了業(yè)界首個“全系統(tǒng)優(yōu)化的編譯器”來自動轉(zhuǎn)換C/C++為:

在Zynq器件中ARM處理器操作系統(tǒng)調(diào)用的面相對象的語言

片上邏輯上的硬件加速度器

用于ARM處理器和可編程邏輯之間交互數(shù)據(jù)的IP核

用于測試和分析性能的語言

SDSoC的工作流程如下:

DSoC為C/C++開發(fā)團隊提供幫助

整個流程很像純軟件的嵌入式設(shè)計,但是它更快,這得益于可編程邏輯上的硬件加速器。

SDSoC開發(fā)環(huán)境利用片上邏輯資源創(chuàng)建軟件可用的硬件加速器,該片上資源是基于程序編譯指示,編程分析,計劃,硬件連接模式的連接。SDSoC使用特定的板級支持包(BSP)來創(chuàng)建

可編程邏輯部分

針對性的軟件加速功能

IP和經(jīng)過優(yōu)化的庫

自動生成的系統(tǒng)連接

然后全系統(tǒng)優(yōu)化的編譯器自動將系統(tǒng)編譯為一個完整的軟件或者硬件系統(tǒng)。同時也會生成可編程邏輯比特流文件和用于ARM的ELF文件。

在此,盡管你沒有在上述流程上看到Verilog 或VHDL,這并不意味著賽靈思砍掉對HDL語言的支持。SDSoC開發(fā)環(huán)境會封裝和自動生成HDL、綜合、布局布線就像C/C++編譯器封裝和自動完成代碼優(yōu)化和轉(zhuǎn)化為目標語言一樣。

SDSoC開發(fā)環(huán)境包含許多基于Zynq的開發(fā)板的支持包,包括ZC702,ZC706,賽靈思圖像處理開發(fā)板,以及第三方的安富利的Zedboard,Microzed和德致倫的ZYBO開發(fā)板。這些支持包(BSP)包含元數(shù)據(jù)使得SDSoC開發(fā)環(huán)境可以抽象化嵌入式平臺以提高生產(chǎn)效率和加速研發(fā)周期。

SDSoC開發(fā)環(huán)境系統(tǒng)優(yōu)化編譯器使用ARM和可編程邏輯在最短的時間內(nèi)來實現(xiàn)系統(tǒng)任務(wù)。SDSoC使得系統(tǒng)架構(gòu)師和軟件團隊使用“萬能的”C/C++來快速地實現(xiàn)片上資源的優(yōu)化,自動生成系統(tǒng)連接以提高系統(tǒng)內(nèi)部連接性能。嵌入式系統(tǒng)設(shè)計師可以權(quán)衡性能,數(shù)據(jù)吞吐量,延遲,同時縮短設(shè)計周期。

這可能不是你第一次碰到嵌入式自動化工具了,所以,你可能對此還是持有懷疑態(tài)度。但是,你必須知道SDSoC系統(tǒng)編譯器是基于賽靈思高層次綜合(HLS)編譯技術(shù)的,且這項技術(shù)已經(jīng)有超過1000個開發(fā)人員使用。就是說,已經(jīng)有許多人在你之前使用了SDSoC開發(fā)環(huán)境了。

SDSoC是SDx開發(fā)環(huán)境系列的第三款產(chǎn)品,這些產(chǎn)品帶來了顯著的性能提升和功耗降低,應(yīng)用于廣泛的系統(tǒng)開發(fā)人員和軟件工程師,例如高速網(wǎng)絡(luò)(SDNet),數(shù)據(jù)中心應(yīng)用(SDAccel),現(xiàn)在是嵌入式系統(tǒng)(SDSoC)。SDx開發(fā)環(huán)境提供非常簡單,類似于ASSP的開發(fā)流程,使你可以不用變成HDL專家也可以在可編程邏輯獲得性能上的提升。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 嵌入式系統(tǒng)
    +關(guān)注

    關(guān)注

    41

    文章

    3610

    瀏覽量

    129603
  • C++
    C++
    +關(guān)注

    關(guān)注

    22

    文章

    2113

    瀏覽量

    73742
  • 自動化工具
    +關(guān)注

    關(guān)注

    0

    文章

    8

    瀏覽量

    1645
收藏 人收藏

    評論

    相關(guān)推薦

    C++中的結(jié)構(gòu)和類

    C++ 仍然是嵌入式開發(fā)的少數(shù)??語言,但當(dāng)項目變得太大而無法有效使用 C 時,開發(fā)人員通常會采用 C++。這些
    發(fā)表于 07-18 17:37 ?827次閱讀

    基于OpenHarmony開發(fā)板上測試Native C++應(yīng)用開發(fā)

    本文主要分享在軟通動力揚帆系列“競”O(jiān)penHarmony開發(fā)板上測試Native C++應(yīng)用開發(fā),實現(xiàn)eTS調(diào)用Native C++ 程序?qū)崿F(xiàn)對給定的兩個數(shù)進行加減乘除運算示例(eT
    的頭像 發(fā)表于 10-08 14:37 ?4018次閱讀

    C++那些事之高效率開發(fā)C++/C

    目前開發(fā)C++/C用的比較多的當(dāng)屬Vim、VS code、CLion。
    發(fā)表于 11-25 14:02 ?531次閱讀

    C++入門教程之C++程序設(shè)計的課件資料免費下載

    本文檔的主要內(nèi)容詳細介紹的是C++入門教程之C++程序設(shè)計的課件資料免費下載主要內(nèi)容包括了:1. 認識C++2. C++的現(xiàn)狀和發(fā)展3. C++
    發(fā)表于 12-07 08:00 ?33次下載
    <b class='flag-5'>C++</b>入門教程之<b class='flag-5'>C++</b>程序設(shè)計的課件資料免費下載

    C++程序設(shè)計的基礎(chǔ)知識初步了解C++的資料免費下載

    本文檔的主要內(nèi)容詳細介紹的是C++程序設(shè)計的基礎(chǔ)知識初步了解C++的資料免費下載包括了:1 認識C++,2 C++的現(xiàn)狀和發(fā)展,3 C++
    發(fā)表于 06-10 08:00 ?25次下載
    <b class='flag-5'>C++</b>程序設(shè)計的基礎(chǔ)知識初步了解<b class='flag-5'>C++</b>的資料免費下載

    C語言與C++相互調(diào)用

    ? ? 1CC++相互調(diào)用 在一個嵌入式系統(tǒng)中大部分的底層和驅(qū)動層更多的是采用C語言來進行開發(fā),而上層應(yīng)用、服務(wù)更多的采用C++等高級語言
    的頭像 發(fā)表于 01-18 11:05 ?3363次閱讀
    <b class='flag-5'>C</b>語言與<b class='flag-5'>C++</b>相互調(diào)用

    嵌入式程序開發(fā),C語言和C++究竟應(yīng)該用哪個?

    在嵌入式軟件程序開發(fā)中,C語言無疑是最常被使用的程序語言。不過應(yīng)該明白的是,有些嵌入式硬件同時提供C語言程序編譯器以及C++程序編譯器,而相
    發(fā)表于 11-03 14:21 ?60次下載
    嵌入式程序<b class='flag-5'>開發(fā)</b>,<b class='flag-5'>C</b>語言和<b class='flag-5'>C++</b>究竟應(yīng)該用哪個?

    IAR中使用C++開發(fā)語言,更加簡單高效

    本文簡要介紹了如何在IAR中配置C++開發(fā)環(huán)境,由于C++的封裝支持,引入面向?qū)ο蟮?b class='flag-5'>開發(fā)思路可以使得用C++進行單片機獲得更高的
    發(fā)表于 12-03 11:36 ?4次下載
    IAR中使用<b class='flag-5'>C++</b>做<b class='flag-5'>開發(fā)</b>語言,更加簡單高效

    MDK中用C++開發(fā)STM32

    有些繁瑣,所以就想用C++開發(fā),C++的繼承 模板類可以很容易的解決這些問題。因為在單片機運行,習(xí)慣用MDK或者IAR這些軟件。但是這些軟件都是默認C
    發(fā)表于 12-03 13:51 ?7次下載
    MDK中用<b class='flag-5'>C++</b><b class='flag-5'>開發(fā)</b>STM32

    運用JNI連結(jié)OpenCV開發(fā)C++并打包成aar lib的使用教學(xué)

    本身是作影像視覺相關(guān)的工作,多數(shù)時候都使用 Python 作為開發(fā)語言,但OpenCV 本身是C++開發(fā),學(xué) C++ 應(yīng)該有幫助。
    的頭像 發(fā)表于 08-15 09:24 ?1658次閱讀

    C++學(xué)習(xí)筆記之c++的基本認識

    自這篇文章我們即將開始C++的奇幻之旅,其內(nèi)容主要是讀C++ Primer的總結(jié)和筆記,有興趣可以找原版書看看,對于學(xué)習(xí)C++還是有很大幫助的。這篇文章將從一個經(jīng)典的程序開始介紹
    的頭像 發(fā)表于 03-17 13:57 ?751次閱讀

    淺談C語言與C++的前世今生

    C++開發(fā)人員將有這些問題歸咎于C,而C開發(fā)人員則認為C++過于瘋狂。我覺得站在
    發(fā)表于 05-26 09:27 ?483次閱讀
    淺談<b class='flag-5'>C</b>語言與<b class='flag-5'>C++</b>的前世今生

    C++之父新作帶你勾勒現(xiàn)代C++地圖

    為了幫助大家解決這些痛點問題,讓大家領(lǐng)略現(xiàn)代C++之美,掌握其中的精髓,更好地使用C++,C++之父Bjarne Stroustrup坐不住了,他親自操刀寫就了這本《
    的頭像 發(fā)表于 10-30 16:35 ?896次閱讀
    <b class='flag-5'>C++</b>之父新作帶你勾勒現(xiàn)代<b class='flag-5'>C++</b>地圖

    開箱即用!教你如何正確使用華為云CodeArts IDE for C/C++

    華為云CodeArts IDE 定位華為云開發(fā)者桌面 ,是華為云面向開發(fā)提供的一款智能化桌面集成開發(fā)環(huán)境。CodeArts IDE for C
    的頭像 發(fā)表于 11-29 17:40 ?850次閱讀
    開箱即用!教你如何正確使用華為云CodeArts IDE for <b class='flag-5'>C</b>/<b class='flag-5'>C++</b>!

    C++簡史:C++是如何開始的

    MISRA C++:2023,MISRA? C++ 標準的下一個版本,來了!為了幫助您做好準備,我們介紹了 Perforce 首席技術(shù)支持工程師 Frank van den Beuken 博士撰寫
    的頭像 發(fā)表于 01-11 09:00 ?631次閱讀
    <b class='flag-5'>C++</b>簡史:<b class='flag-5'>C++</b>是如何開始的