Versal 介紹
Versal 包含了 Cortex-A72 處理器和 Cortex-R5 處理器,PL 端可編程邏輯部分,PMC 平臺管理控制器,AI Engine 等模塊,與以往的 ZYNQ 7000 和 MPSoC 不同,Versal 內(nèi)部是通過 NoC 片上網(wǎng)絡進行互聯(lián)。
Versal 芯片的總體框圖
Versal 芯片的總體框圖
PS: 處理系統(tǒng) (Processing System) , 就是與 FPGA 無關的 ARM 的 SoC 的部分。
PL: 可編程邏輯 (Progarmmable Logic), 就是 FPGA 部分。
NoC 架構
Versal 可編程片上網(wǎng)絡(NoC) 是一種 AXI 互連網(wǎng)絡,用于在可編程邏輯 PL,處理器系統(tǒng) PS 等之間共享數(shù)據(jù),而之前的 Versal 系列采用的 AXI 交叉互聯(lián)模塊,這是 Versal 的不同之處。
NoC 是為可擴展性而設計的。它由一系列相互連接的水平(HNoC)和垂直(VNoC)路徑,由一組可定制的硬件實現(xiàn)組件支持,這些組件可以以不同的方式進行配置,以滿足設計時序、速度和邏輯利用率要求。以下是 NoC 的結構圖
NoC 的結構圖
從 NoC 的結構圖,可以看到,其主要由 NMU(NoC master units),NSU(NoC slave units),NPI(NoC programming interface),NPS(NoC packet switch)組成。PS 端可以連接到 NMU,再通過 NPS 連接訪問到 DDRMC,同樣 PL 端也可以通過 NMU,NPS 訪問到 DDRMC。通過 NPS 路由的方式,靈活地訪問各模塊。
NMU 結構
NSU 結構
從以上的 NMU, NSU 結構可以看到,對用戶的接口仍然是 AXI 總線,在其內(nèi)部,將 AXI 數(shù)據(jù)進行組包或解包,連接到 NoC 網(wǎng)絡。
NPS 結構
而 NMU 和 NSU 都是連接到 NPS 上的,它相當于一個路由器,將數(shù)據(jù)轉發(fā)給目的設備。它是一個全雙工的 4x4 switch,每個端口在每個方向支持 8 個虛擬通道,采用基于信用的流控,類似于 TCP 的滑動窗口。
NoC 是 Versal 開發(fā)中非常重要的部件,PS 端訪問 DDR,PL 端訪問 DDR 都是通過 NoC,與 Versal 不同的是,versal 在 PS 端沒有 DDR 控制器,都是通過 NoC 訪問,因此了解 NoC 結構是很有必要的,更多的內(nèi)容可以參考官方的 pg313 文檔。
PMC 架構
PMC(平臺管理控制器)在啟動,配置,運行時做平臺的管理。從下圖的結構圖中可以看出,PMC 由 ROM Code Unit,Platform Processing Unit,PMC I/O Peripherals 等單元組成,功能豐富。在這里主要介紹一下 PMC 是如何引導程序啟動的。
PMC 結構圖
第一階段:Pre-Boot
2. PMC 讀取啟動模式引腳并存入 boot mode 寄存器
3. PMC 發(fā)送復位給 RCU(ROM code unit)
第二階段:Boot Setup
4. RCU 從 RCU ROM 中執(zhí)行 BootROM
5. BootROM 讀出 boot mode 寄存器,選擇啟動設備
6. BootROM 從啟動設備讀取 PDI(programmable device image) 并校驗
7. BootROM 釋放 PPU 的復位,將 PLM 加載到 PPU RAM 并校驗。校驗后,PPU 喚醒,PLM 軟件開始執(zhí)行。
8. BootROM 進入睡眠狀態(tài)
第三階段:Load Platform
9. PPU 開始從 PPU RAM 中執(zhí)行 PLM
10. PLM 開始讀取并運行 PDI 模塊
11. PLM 利用 PDI 內(nèi)容配置 Versal 其他部分
11a: PLM 為以下模塊配置數(shù)據(jù):PMC, PS clocks
(MIO ,clocks, resets 等)(CDO 文件)
NoC 初始化和 NPI 模塊(DDR 控制器,NoC,
GT,XPIPE,I/Os,clocking 和其他 NPI 模塊
PLM 加載 APU 和 RPU 的應用程序 ELF 到存儲空間,
如 DDR,OCM,TCM 等
11b: PL 端邏輯配置
PL 端數(shù)據(jù)(CFI 文件)
AI Engine 配置(AI Engine CDO)
第四階段:Post-Boot
12. PLM 繼續(xù)運行,直到下一次 POR 或系統(tǒng)復位。并負責 DFX 重配置,電源管理,子系統(tǒng)重啟,錯誤管理,安全服務。
Versal 芯片開發(fā)流程的簡介
由于 Versal 將 CPU 與 FPGA 集成在了一起,開發(fā)人員既需要設計 ARM 的操作系統(tǒng)應用程序和設備的驅(qū)動程序,又需要設計 FPGA 部分的硬件邏輯設計。開發(fā)中既要了解 Linux 操作系統(tǒng),系統(tǒng)的構架,也需要搭建一個 FPGA 和 ARM 系統(tǒng)之間的硬件設計平臺。所以 Versal 的開發(fā)是需要軟件人員和硬件硬件人員協(xié)同設計并開發(fā)的。這既是 Versal 開發(fā)中所謂的 " 軟硬件協(xié)同設計”。
Versal 系統(tǒng)的硬件系統(tǒng)和軟件系統(tǒng)的設計和開發(fā)需要用到一下的開發(fā)環(huán)境和調(diào)試工具:Xilinx Vivado。Vivado 設計套件實現(xiàn) FPGA 部分的設計和開發(fā),管腳和時序的約束,編譯和仿真,實現(xiàn) RTL 到比特流的設計流程。
Xilinx Vitis 是 Xilinx 軟件開發(fā)套件 (SDK), 在 Vivado 硬件系統(tǒng)的基礎上,系統(tǒng)會自動配置一些重要參數(shù),其中包括工具和庫路徑、編譯器選項、JTAG 和閃存設置,調(diào)試器連接已經(jīng)裸機板支持包 (BSP)。SDK 也為所有支持的 Xilinx IP 硬核提供了驅(qū)動程序。Vitis 支持 IP 硬核(FPGA 上)和處理器軟件協(xié)同調(diào)試,我們可以使用高級 C 或 C++ 語言來開發(fā)和調(diào)試 ARM 和 FPGA 系統(tǒng),測試硬件系統(tǒng)是否工作正常。Vitis 軟件也是 Vivado 軟件自帶的,無需單獨安裝。
Versal 的開發(fā)也是先硬件后軟件的方法。具體流程如下:
在 Vivado 上新建工程,增加一個嵌入式的源文件。
在 Vivado 里添加和配置 PS 和 PL 部分基本的外設,或需要添加自定義的外設。
在 Vivado 里生成頂層 HDL 文件,并添加約束文件。再編譯生成比特流文件(*.pdi)。
導出硬件信息到 Vitis 軟件開發(fā)環(huán)境,在 Vitis 環(huán)境里可以編寫一些調(diào)試軟件驗證硬件和軟件,結合比特流文件單獨調(diào)試 Versal 系統(tǒng)。
在 VMware 虛擬機里生成 u-boot.elf、 bootloader 鏡像。
在 Vitis 里將比特流文件和 u-boot.elf 文件生成一個 BOOT.pdi 文件。
在 VMware 里生成 Ubuntu 的內(nèi)核鏡像文件 Zimage 和 Ubuntu 的根文件系統(tǒng)。另外還需要要對 FPGA 自定義的 IP 編寫驅(qū)動。
把 BOOT、內(nèi)核、設備樹、根文件系統(tǒng)文件放入到 SD 卡中,啟動開發(fā)板電源,Linux 操作系統(tǒng)會從 SD 卡里啟動。
學習 Versal 要具備哪些技能
學習 Versal 比學習 FPGA、MCU、ARM 等傳統(tǒng)工具開發(fā)要求更高,想學好 Versal 也不是一蹴而就的事情。
軟件開發(fā)人員
計算機組成原理
C、C++ 語言
計算機操作系統(tǒng)
tcl 腳本
良好的英語閱讀基礎
邏輯開發(fā)人員
計算機組成原理
C 語言
訪問ALINX官網(wǎng)了解 Versal AIEdge 自適應計算加速平臺更多詳情。
如需購買Versal AIEdge 自適應計算加速平臺 SOM 及配套開發(fā)板,請登錄天貓或京東:ALINX旗艦店。
ALINX| AUMO 智能車載
芯驛電子科技(上海)有限公司,成立于 2012 年,總部位于上海松江臨港科技城,高新技術企業(yè)、上海市專精特新企業(yè),是一家車載智能產(chǎn)品和 FPGA 技術方案公司,擁有 “AUMO” 和 “ALINX” 兩大品牌,先后獲得國家級科技型中小企業(yè)認定、上海市創(chuàng)新型中小企業(yè)認證、ISO9001 質(zhì)量體系認證等。
AUMO 品牌專注車載智能產(chǎn)品,提供一站式自動駕駛硬件在環(huán)仿真 HIL、電子后視鏡 CMS 產(chǎn)品及方案,與多家車載自動駕駛客戶已開展深度合作;ALINX 品牌專注于 FPGA 產(chǎn)品和方案定制,是全球 FPGA 芯片龍頭企業(yè) AMD/XILINX 官方合作伙伴,國內(nèi) FPGA 芯片龍頭企業(yè)紫光同創(chuàng)官方合作伙伴,同時作為百度 AI 合作伙伴,為百度定制了國產(chǎn) AI 飛槳系統(tǒng)的 Edgeboard 系列邊緣設備。經(jīng)歷十余年發(fā)展,公司產(chǎn)品已經(jīng)遠銷海外 30 多個國家,服務數(shù)千家企業(yè)客戶。
業(yè)務范圍
主要聚焦于 FPGA 行業(yè)解決方案,自動駕駛 HIL、FPGA 國產(chǎn)化,F(xiàn)PGA SOM 開發(fā)套件。
應用領域
公司涉及的行業(yè)解決方案涉及人工智能、自動駕駛、醫(yī)療成像、智能制造、數(shù)據(jù)中心、交通電力、5G 通信、機器視覺、工業(yè)互聯(lián)、儀器儀表、IC 測試等行業(yè)。
審核編輯 黃宇
-
處理器
+關注
關注
68文章
19436瀏覽量
231306 -
FPGA
+關注
關注
1630文章
21801瀏覽量
606355 -
Xilinx
+關注
關注
71文章
2171瀏覽量
122229 -
Versal
+關注
關注
1文章
163瀏覽量
7717
發(fā)布評論請先 登錄
相關推薦
AMD Versal AI Edge自適應計算加速平臺之Versal介紹(2)
![<b class='flag-5'>AMD</b> <b class='flag-5'>Versal</b> <b class='flag-5'>AI</b> <b class='flag-5'>Edge</b><b class='flag-5'>自適應計算</b><b class='flag-5'>加速</b><b class='flag-5'>平臺</b><b class='flag-5'>之</b><b class='flag-5'>Versal</b><b class='flag-5'>介紹</b>(<b class='flag-5'>2</b>)](https://file1.elecfans.com/web2/M00/C3/CA/wKgaomXoQkeAANK9AAAcrEUPitw728.jpg)
AMD Versal AI Edge自適應計算加速平臺PL LED實驗(3)
![<b class='flag-5'>AMD</b> <b class='flag-5'>Versal</b> <b class='flag-5'>AI</b> <b class='flag-5'>Edge</b><b class='flag-5'>自適應計算</b><b class='flag-5'>加速</b><b class='flag-5'>平臺</b>PL LED實驗(3)](https://file1.elecfans.com/web2/M00/C4/2A/wKgZomXxWMGAdZZoAAAgcu5siXw622.png)
AMD Versal AI Edge自適應計算加速平臺之PL LED實驗(3)
在Vivado中構建AMD Versal可擴展嵌入式平臺示例設計流程
![在Vivado中構建<b class='flag-5'>AMD</b> <b class='flag-5'>Versal</b>可擴展嵌入式<b class='flag-5'>平臺</b>示例設計流程](https://file1.elecfans.com/web2/M00/C7/93/wKgZomYU7BuAUAuuAABQ0xwIj6c127.png)
Xilinx推出Versal:業(yè)界首款自適應計算加速平臺,支持快速創(chuàng)新
賽靈思發(fā)布自適應計算加速平臺芯片系列Versal
賽靈思Versal自適應計算加速平臺助于高效實現(xiàn)設計目標
![賽靈思<b class='flag-5'>Versal</b><b class='flag-5'>自適應計算</b><b class='flag-5'>加速</b><b class='flag-5'>平臺</b>助于高效實現(xiàn)設計目標](https://file.elecfans.com/web1/M00/F0/FA/o4YBAGCvDmqAR3c4AAANIavrpXs863.jpg)
賽靈思Versal自適應計算加速平臺指南
Versal:首款自適應計算加速平臺(ACAP)
![<b class='flag-5'>Versal</b>:首款<b class='flag-5'>自適應計算</b><b class='flag-5'>加速</b><b class='flag-5'>平臺</b>(ACAP)](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
評論