精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

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

3天內不再提示

Zynq的開發方式和開發工具

汽車玩家 ? 來源:CSDN ? 作者:戰斗機上的飛行員 ? 2020-03-08 16:40 ? 次閱讀

1、Zynq的開發四種方式

純PL開發,純PS開發(helloworld),PS+PL(無操作系統,跑裸跑程序),PS+PL(跑操作系統)。

1.1 純PL開發

這個和一般的xilinx的FPGA沒有很大的區別。

1.2 純PS開發

典型的就是helloworld工程, 一種是傳統的arm的方式。還一種就是xilinx方法,這個是生成一個elf文件,這個elf文件包括了硬件配置信息(xmp),和裸跑程序(c文件)。

1.3 PS+PL(不跑操作系統)開發

這個可以參考懶兔子博客二,三筆記,生成的elf文件包括了硬件配置信息(xmp),還有裸跑程序(c文件),另外還有一個.bit文件可以看出和純PS開發的區別了。

1.4 PS+PL(跑操作系統)開發

這個就需要BOOT.BIN,設備樹,linux內核鏡像,文件系統了。

其中BOOT.BIN是由3部分組成的(boot.elf, .bit, fsbl.elf),boot.elf這個是由交叉編譯環境產生的,相當于ssbl,.bit文件是PL使用文件,fsbl.elf這個是fsbl。

2、開發工具

2.1 獨立開發環境

PL—> Vivado

PS(ARM)–> SDK(Xilinx)或者第三方ARM開發工具

2.2 集成開發環境

SDSoC

2.3 獨立開發環境的四個步驟

(1) 系統架構師確定硬件-軟件分區方案;

(2) 硬件工程師處理被分配到硬件中的功能,并將它們轉換或設計成IP核(Verilog/VHDL,也可用Vivado HLS實現C/C++高層次綜合);

(3) 利用Vivado IP Integrator 創建整個嵌入式系統的模塊化設計。包括開發需要的數據移動工具(AXI-DMA、AXI Memory Master、AXI-FIFO 等),以及連接 PL IP 與 PS 的 AXI 接口(GP、HP 和 ACP),之后將此項目導入到SDK中;

(4) 軟件工程師使用SDK,開發PS中ARM處理器的驅動程序和應用。

對于以硬件為中心的優化流程,矛盾往往出現在不同的數據移動工具和PL-PS接口以及寫入和調試驅動程序與應用,為避免重構硬件造成軟件的變化,使得PS-PL開發更加緊密,賽靈思推出了SDSoC開發環境。將上述步驟(2)、(3)和(4)實現高度自動化,以縮短開發時間。該開發環境會生成必要的硬件和軟件組件,用以同步硬件和軟件并保存源程序語義,同時支持任務級并行處理和流水線化的通信與計算,從而實現高性能。SDSoC 環境會自動安排所有必要的賽靈思工具(Vivado、IP Integrator、HLS 和 SDK),以生成針對 Zynq SoC 的完整軟硬件系統,而且所需的用戶介入程度很小。

一個SDSoC設計項目是建立在一個“平臺”之上的。所謂“平臺”包含硬件平臺和軟件平臺兩個部分,是一個設計開發可以復用的基礎性系統。

平臺是利用標準的Vivado、SDK和OS工具創建的。硬件平臺(HPFM)定義了諸如處理系統(PS,Processing System)、I/O子系統、存儲器接口等,這些工作都基于一個定義明確的端口接口(AXI、AXI-S,、時鐘、復位、中斷)。軟件平臺(SPFM)定義了OS、設備驅動、啟動加載程序(boot loaders)、文件系統、庫等。

基于C/C++源代碼的定制和專用硬件和軟件,用戶可以擴展平臺。

SDSoC將平臺作為獨立的解決方案空間,基于平臺提供的資源去生成用于解決方案的IP。每個解決方案都是為一個平臺裁剪而成的。

一個擴展名為xpfm的文件包含了硬件描述符XML文件(HPFM)和軟件描述符XML文件(SPFM)位置的參考。

2.4 Vivado

Vivado是基于IP的設計,稱為block design(BD),調用已有的IP,用戶自己編寫的邏輯模塊也可以封裝成IP,然后在模塊blcok中連線。邏輯開發完畢,再轉到SDK,SDK會根據Vivado的硬件設計設置調用相應的內部驅動代碼。(PL部分就如同ARM的總線AXI等掛的外設)

2.5 SDK

SDK根據生成的.hdf文件匹配FSBL,只需添加main.c文件即可。

3、類似嵌入式 C/C++/OpenCL 應用開發的體驗–SDSoC

SDSoC? 開發環境可為異構 Zynq? AllProgrammable SoC 及 MPSoC 部署提供類似嵌入式 C/C++/OpenCL 應用的開發體驗,其中包括簡單易用的 Eclipse IDE 和綜合設計環境。SDSoC 提供業界首款 C/C++/OpenCL 全系統優化編譯器,可實現系統級的特性描述、可編程邏輯中的自動軟件加速、自動系統連接生成以及可加速編程的各種庫。此外,它還可幫助最終用戶及第三方平臺開發人員快速定義、集成和驗證系統級解決方案,為其最終用戶實現定制化編程環境。(軟件工程師能夠對 Zynq SoC 中的可編程邏輯和 ARM 處理系統進行編程)

? 簡單易用的 EclipseIDE 可用于開發支持嵌入式 C/C++/OpenCL 應用的全面 Zynq All Programmable SoC 和 MPSoC 系統

? 只需一點按鈕,就可對可編程邏輯 (PL) 中的功能進行加速

? 支持作為目標 OS 的裸機、Linux 與 FreeRTOS

? Xilinx 庫作為 Vivado HLS 的一部分,由聯盟成員提供,是可選硬件優化的庫。

? OpenCL 在 2016.3 版中為早期的測試版。請聯系您的當地銷售代表提出申請

下圖展示的是一個基于基礎平臺的完整SDSoC設計的整體結構。需要加速的C/C++/SystemC功能成為了FPGA可編程邏輯(PL)中的IP,而其他功能保留在處理器系統(PS)中。同時,SDSoC會在那些IP和PS系統間自動生成互連。

3.1 系統級的特性描述

? 快速性能估算與面積估算可在幾分鐘內完成,包括 PS、數據通信以及 PL

? 高速緩存、存儲器以及總線利用率的自動運行時儀表

? 可實現最佳總體系統架構的便捷生成與探索

3.2 全系統優化編譯器

? 可將C/C++/OpenCL 應用編譯成全功能 Zynq SoC 與 MPSoC 系統

? 可在生成 ARM 軟件與 FPGA 比特流的可編程邏輯中實現自動功能加速

? 不僅可優化系統連接,而且還支持吞吐量、時延以及面積權衡的快速系統探索

3.3 SDSoC開發流程

① SDSoC 環境使用快速估算流程(通過調用內含的Vivado HLS)構建應用項目。這樣在數分鐘內就能大致估算出性能和資源情況。

② 如果有必要,用適當的指令優化 C/C++ 應用和硬件功能,并重新運行估算直到實現所需的性能和占位面積。

③ 然后,SDSoC 環境構建整個系統。該過程會生成完整的 Vivado Design Suite 項目和比特流,以及一個針對 Linux、FreeRTOS 或裸機的可引導的運行時間軟件映像。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • Xilinx
    +關注

    關注

    71

    文章

    2164

    瀏覽量

    121039
  • Zynq
    +關注

    關注

    10

    文章

    608

    瀏覽量

    47129
收藏 人收藏

    評論

    相關推薦

    云計算開發工具包括什么

    云計算開發工具種類繁多,包括IDE、虛擬化軟件、容器化平臺、自動化部署工具和云平臺等。
    的頭像 發表于 11-22 10:11 ?110次閱讀

    支持C2000的開發工具版本

    電子發燒友網站提供《支持C2000的開發工具版本.pdf》資料免費下載
    發表于 10-10 11:06 ?0次下載
    支持C2000的<b class='flag-5'>開發工具</b>版本

    瑞星微刷機工具開發工具

    瑞星微刷機工具開發工具
    發表于 10-09 11:14 ?0次下載

    簡述三種esp32的開發方式是什么

    ESP32是一款由樂鑫(Espressif)推出的低功耗、高性能的Wi-Fi和藍牙雙模無線通信芯片,廣泛應用于物聯網、智能家居、智能硬件等領域。本文將詳細介紹三種ESP32的開發方式:Arduino
    的頭像 發表于 08-20 09:11 ?2270次閱讀

    嵌入式QT常見開發方式有哪些?

    嵌入式QT常見開發方式有哪些? 嵌入式工程師在學習和使用Qt進行開發時,常見的幾種開發方式包括: 1.Qt Widgets編程: 通過C++代碼直接編寫GUI應用程序,利用QtWidgets庫
    發表于 08-12 10:05

    字節跳動發布豆包MarsCo智能開發工具

    在數字時代的浪潮中,編程已成為推動科技進步和創新的核心動力。為了助力國內開發者更高效、智能地進行編程工作,字節跳動公司近日發布了全新的智能開發工具——豆包 MarsCode。這款工具基于強大的豆包大模型打造,全面免費開放使用,旨
    的頭像 發表于 07-01 15:03 ?652次閱讀

    Diamond開發工具使用說明

    Diamond開發工具使用說明
    發表于 05-23 09:14 ?0次下載

    瑞薩Smart Configurator支持SEGGER集成開發工具

    SEGGER與瑞薩電子(Renesas Electronics)近日宣布達成重要合作,SEGGER的集成開發工具Embedded Studio現已無縫融入瑞薩電子的Smart
    的頭像 發表于 05-10 14:25 ?698次閱讀

    低代碼開發平臺的崛起:優勢、特點與應用

    低代碼開發平臺是近年來迅速崛起的一種創新型軟件開發工具,以其高效、靈活的開發模式正顛覆著傳統的開發方式。不再需要編寫大量繁雜的代碼,開發者們
    的頭像 發表于 04-18 10:43 ?340次閱讀
    低代碼<b class='flag-5'>開發</b>平臺的崛起:優勢、特點與應用

    STM32WLE5使用什么開發工具

    我準備使用STM32WLE5,請教一下使用什么開發工具?STLINK-V2可以嗎?
    發表于 03-14 07:00

    蘋果準備推出AI軟件開發工具

    近日,有知情人士透露,蘋果公司正在全力加碼人工智能,準備推出一款新的軟件開發工具。這款工具將利用生成式人工智能技術,幫助開發者自動完成編碼工作,預計將加劇與微軟在人工智能方面的競爭。
    的頭像 發表于 02-20 14:35 ?855次閱讀

    配置Ubuntu系統環境和安裝的開發工具

    安裝好Ubuntu系統環境后,開發前需要簡單配置Ubuntu系統環境以及安裝一些必備的開發工具
    的頭像 發表于 12-22 13:32 ?1714次閱讀
    配置Ubuntu系統環境和安裝的<b class='flag-5'>開發工具</b>

    圖形界面開發工具GUI Guider的使用教程

    GUI Guider是NXP推出的一款功能強大且對用戶非常友好的圖形界面開發工具。目前最新版本是1.6.1。
    的頭像 發表于 12-20 09:49 ?1.7w次閱讀
    圖形界面<b class='flag-5'>開發工具</b>GUI Guider的使用教程

    任意單片機基于simulink模型開發方式

    使用Arduino在simulink中搭建的LED閃爍的一個例子如圖1所示,相比之前C語言代碼實現的方式,這里沒有寫一行代碼就實現了LED閃爍。讀者有沒有感覺這種開發方式即簡單又方便,要實現什么功能
    的頭像 發表于 11-30 15:27 ?768次閱讀
    任意單片機基于simulink模型<b class='flag-5'>開發方式</b>

    CCES和VDSP開發工具有什么不同?哪個易于操作?

    我選用的21489做音頻操作,但是我是一名新手,需要學習一個開發工具,我想問各位這兩個開發工具CCES和VDSP++到底有什么區別,如何選用?因為還有一系列的后續開發,各位可建議采用哪個開發工
    發表于 11-30 06:59