吴忠躺衫网络科技有限公司

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

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

3天內不再提示

一文詳解ZYNQ器件的啟動配置方法

Hx ? 作者:工程師陳翠 ? 2018-07-12 08:27 ? 次閱讀

電子系統設計中,無任是用CPU作為系統的主要器件,還是用FPGA作為系統的主要器件,系統設計中首先要考慮到的問題就是處理器的啟動加載問題。 XILINX推出的ZYNQ可擴展處理平臺,片內包括兩個高性能的ARM Cortex A9硬核(稱為處理系統processing system (PS))和FPGA(稱為可編程邏輯programmable logic (PL)),在基于該平臺的系統設計時具有極大的靈活性,本文就ZYNQ系統設計時都會遇到啟動加載問題作一個拋磚引玉的描述,如有不當之處還請高手斧正。

一、器件配置單元

ZYNQ器件都帶有一個器件配置單元(device configuration unit (DEVCFG) ),該模塊由PS控制,提供軟件控制下的PS和PL的初始化和配置功能。以前單個FPGA器件提供的下載方法已經不在適用,PL的配置下載必須在PS的參與下進行。

Zynq-7000的器件配置單元包括下面的PS單元:

① CPU

② OCM(引導ROM和共享RAM)

③ 部分頂層總線和外設

④ PS器件配置模塊

在PL側,下面的單元也將參與:

① PLS器件配置邏輯和接口

② 解密/鑒權硬件

③存儲在eFUSE單元或者電池備份RAM(BBRAM)內的解密密鑰

下圖為PS器件配置子系統框圖:

一文詳解ZYNQ器件的啟動配置方法

提供的關鍵特性如下:

A.提供3種不同的PS配置方法,包括2種主模式和1種從模式。

① 加密主模式

② 非加密主模式

③ 非加密從模式

B.3種不同的主模式啟動源

① NOR FLASH

② NAND FLASH

③ QSPI FLASH

C:JTAG非加密從模式

D:用AES-256和HMAC (SHA-256)進行PS/PL的加密下載

E:高速配置用的主DMA接口

F:100 MHz 32-bit PCAP流接口

H:SoC加密調試功能

在系統上電復位時,PS采樣專用bootstrapping signals引腳電平來決定從什么方式引導器件。這個引導過程是由一個Cortex A9核執行片內的ROM code實現的,ROM code的功能是初始化L1 cache和基本的總線系統,加載相應的NAND, NOR, Quad-SPI, and PCAP驅動,從指定接口加載第一級BOOTLOADER(the first stage boot loader (FSBL))到片內執行。由于OCM RAM大小有限制,第一級BOOTLOADER大小最大為256KB。用戶只需要按要求提供啟動映像和設置正確的bootstrapping signals引腳電平,系統上電復位時由ROM code自動加載到片內并且程序調轉到啟動映像,此時系統的全部控制功能交由用戶的啟動映像控制,用戶如要實現的第二級BOOTLOADER功能由啟動映像的程序實現。

對于加密配置方法,需要用到AES-256解密代碼和SHA-256簽定(簽名)算法, PS需要用PL內硬連線的AES-256 和SHA-256模塊,這時就要求在加密配置情況下PL就必須上著電,既使系統并不配置PL部分也需上電。器件的加密密鑰可以由用戶選擇是存儲在片內的eFUSE單元(具有掉電非易失性)或者內部電池供電的BBRAM內(具有掉電易失性,適用于安全級別要求更高的場合), 下表總結了配置模式和相關信息

一文詳解ZYNQ器件的啟動配置方法

二、PS非加密主模式配置過程

這種模式下PS啟動映像是直接從外部非易失存儲器(NAND, NOR, Quad-SPI)內加載到片內OCM內,隨后PL映像可以直接配置到PL內,整個過程如下圖示:

一文詳解ZYNQ器件的啟動配置方法

PL映像的配置可由配置接口模塊用DMA來高速實現,在非加密情況下速度可以達到400MB/s, 加密情況下速度可以達到100MB/s, 這在FPGA需要部分重配置時十分有用。

三、PS加密主模式配置過程

PS加密主模式用到了位與片內PL部分的硬件AES-256解密模塊和SHA-256模塊來對PS啟動映像進行解密和完整性鑒定,器件密鑰存儲在片內的eFUSE單元或者內部BBRAM內,當PS加載成功后,用戶可以選擇用下面缺省的PL引導過程來配置PL部分,如下圖示:

一文詳解ZYNQ器件的啟動配置方法

其中配置PL時的比特流既可以是已經經過AES-256加密的比特流,也可以是先經過PS先進行解密后成為明文比特流送到PL內,這個過程的保密性由用戶選擇使用。

在保密ROM引導階段如果PS完整性鑒定失敗,CPU就立即斷言PROG_B信號而清除PL內容,同時發出一個加密復位信號,這使PS內部的RAM和寄存器進行復位,然后CPU進入睡眠模式,系統只有重復上電才能復位。PL配置發生在BOOT的第二階段,這個過程完成可以由用戶選擇自己的方法在任何時間內來配置一次或多次,并不需要一定按缺省的PL引導過程來配置PL部分。

四、啟動模式引腳

ZYNQ器件有5個啟動模式信號mode[4:0],用來指出從哪里啟動,是否是JTAG模式,PLL是否旁路等。另外有兩個電壓模式信號vmode[1:0]用來指明MIO BANK的電壓模式,vmode[1:0] 信號和mode[4:0] 信號通過上拉和下拉來確定電平值,上拉和下拉電阻建議為20k歐姆,上拉是連接到VCCO_MIO0電壓,下拉是連接到地。系統在釋放PS_POR_B復位腳后這些啟動模式引腳信號會被采樣3個PS_CLK時鐘用來確定啟動方式。vmode[1:0] 信號和mode[4:0] 信號對應的I/O管腳為MIO[8:2],各信號具體含義如下:

① Mode[0] 用來指明是否是JTAG 模正。

② Mode[3:1]用來選擇啟動源,是從NOR Flash還是從NAND Flash還是從QSPI啟動。

③ Mode[4]用來使能PLL。

④ Vmode[1:0] 用來配置I/O BANK電壓。

這些信號和MIO管腳的對應關系如下表表示:

一文詳解ZYNQ器件的啟動配置方法

注:上表中X表示不關心。

實際設計中,由于MIO管腳數量有限(只有54個),且只分為兩個BANK(MIO Bank 0對應管腳為PS_MIO[15:0],PS_CLK,PS_POR_B;MIO Bank 1對應管腳為PS_MIO[53:16],PS_VREF_MIO和PS_SRST_B),并不建議系統設計為從并行的NOR Flash啟動,因為這種方式NOR Flash占用的MIO管腳數量大多(大于40個管腳),系統設計為從NAND Flash或QSPI啟動都可以,這兩種方式占用的MIO管腳數量要少些,NAND Flash的優點是容量比較大,缺點是讀寫速度要慢些(典型速度 10MB/s), QSPI也是一種NOR Flash,不過接口是四線串行接口,可以獲得比較高的讀寫速度(典型速度 50MB/s),如果系統希望從其它方式如USBEthernetSD/SDIO等方式啟動,這都需要用戶在第一級啟動映像內自行設計啟動引導代碼。

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

    關注

    0

    文章

    73

    瀏覽量

    36480
  • Zynq
    +關注

    關注

    10

    文章

    610

    瀏覽量

    47296
收藏 人收藏

    評論

    相關推薦

    詳解Zynq的兩種啟動模式

    Zynq-7000AP SOC器件有效利用了片上CPU來幫忙配置,在沒有外部JTAG的情況下,處理系統(PS)與可編程邏輯(PL)都必須依靠PS來完成芯片的初始化配置
    發表于 08-02 09:33 ?1631次閱讀
    <b class='flag-5'>詳解</b><b class='flag-5'>Zynq</b>的兩種<b class='flag-5'>啟動</b>模式

    通過JTAG啟動Linux的方法和腳本

    在 AMD SoC 器件(AMD Zynq 7000 SoC,AMD Zynq UltraScale+ MPSoC,AMD Versal Adaptive SoC),常見的啟動方式是
    的頭像 發表于 12-22 10:27 ?1643次閱讀
    通過JTAG<b class='flag-5'>啟動</b>Linux的<b class='flag-5'>方法</b>和腳本

    Zynq在非JTAG模式下的啟動配置流程

    ARM 核來實現的。  需要注意的是,與傳統的 Xilinx 7 系列 FPGA 芯片不同,Zynq 是不支持從 PL 端進行直接啟動配置的,定要通過 PS 部分來完成。  
    發表于 01-08 16:33

    Zynq在非JTAG模式下的啟動配置流程

    本文主要與大家分享了Zynq在非JTAG模式下的啟動配置流程,旨在讓大家對Zynq的三階段啟動模式有
    發表于 03-17 07:36

    ZYNQ器件啟動配置方法

    無任是用CPU作為系統的主要器件,還是用FPGA作為系統的主要器件,系統設計中首先要考慮到的問題就是處理器的啟動加載問題。
    發表于 02-11 19:01 ?1240次閱讀

    ZYNQ 7系列FSBL的啟動過程與配置方法

    、SD卡閃存均可以用作器件啟動 。處理器系統啟動主要包括兩個階段: (1) Stage-0的啟動代碼存儲在內部的BOOTROM,這部分啟動
    發表于 11-17 10:25 ?2.5w次閱讀
    <b class='flag-5'>ZYNQ</b> 7系列FSBL的<b class='flag-5'>啟動</b>過程與<b class='flag-5'>配置</b><b class='flag-5'>方法</b>

    Xilinx FSBL如何操作啟動Zynq器件

    了解Xilinx FSBL如何操作以啟動Zynq器件。 包括程序執行概述,調試技巧以及有關特定引導設備的信息。 還包括FSBL角度的啟動安全性簡要概述。
    的頭像 發表于 11-23 06:32 ?4643次閱讀

    ZYNQ啟動原理和配置

    在ps的控制下,可以實現安全或非安全的配置所有ps和pl。通過zynq提供的JTAG接口,用戶可以在外部主機的控制下對zynq進行配置zynq
    的頭像 發表于 05-15 11:41 ?7834次閱讀
    <b class='flag-5'>ZYNQ</b>的<b class='flag-5'>啟動</b>原理和<b class='flag-5'>配置</b>

    詳解zynq啟動步驟

    本文主要介紹zynq啟動過程,主要包括BootROM和FSBL等的執行過程。
    發表于 10-27 10:47 ?7541次閱讀
    <b class='flag-5'>詳解</b><b class='flag-5'>zynq</b>的<b class='flag-5'>啟動</b>步驟

    Zynq啟動配置過程詳解

    初學 Zynq 的時候,都是按照慣例打開 Vivado 軟件,然后實現 Zynq 可編程邏輯硬件部分PL的設置后,把硬件部署導出,再打開 SDK 進行 ARM 核的軟件部分 PS 編程設計,最后再將
    發表于 01-26 07:30 ?20次下載
    <b class='flag-5'>Zynq</b>的<b class='flag-5'>啟動</b>與<b class='flag-5'>配置</b>過程<b class='flag-5'>詳解</b>

    如何在 Vitis 中調試 Zynq UltraScale 器件啟動鏡像

    在本篇博文中,我們將探討如何在 Vitis 中調試 Zynq UltraScale 器件啟動鏡像。這些啟動鏡像包括 ARM 可信固件 (ATF) 和 U-boot。 本篇博
    的頭像 發表于 06-01 15:35 ?3494次閱讀
    如何在 Vitis 中調試 <b class='flag-5'>Zynq</b> UltraScale <b class='flag-5'>器件</b><b class='flag-5'>啟動</b>鏡像

    ZYNQ啟動流程

    ZYNQ7000 SOC 芯片可以從 FLASH 啟動,也可以從 SD 卡里啟動, 本節介紹程序 FLASH 啟動方法
    的頭像 發表于 05-07 09:41 ?6727次閱讀

    ZYNQ啟動流程介紹

    普通的 FPGA 般是可以從 flash 啟動,或者被動加載,但是ZYNQ不行,ZYNQ必須PS端參與
    的頭像 發表于 07-22 10:10 ?7632次閱讀

    FPGAs,ZynqZynq MPSoC器件的特點

    Zynq MPSoC是Zynq-7000 SoC(之后簡稱Zynq)的進化版本。Zynq是賽靈思發布的集成PL(FPGA)和PS設計的最早的
    的頭像 發表于 08-15 09:16 ?2707次閱讀

    Zynq在非JTAG模式下的啟動配置流程

    在無 JTAG 的模式下,Zynq 是通過片上CPU完成對芯片的配置,也就是PS和PL的配置是通過 PS 處理器 ARM 核來實現的。需要注意的是,與傳統的 Xilinx 7 系列 FPGA 芯片不同,
    的頭像 發表于 10-19 09:11 ?1405次閱讀
    武汉百家乐庄闲和| 成都百家乐官网的玩法技巧和规则| 澳门百家乐官网登陆网址| 百家乐官网翻天qvod| 百家乐官网前四手下注之观点| 百家乐官网赌博器| 网上百家乐网址| 百家乐大西洋| 大发888娱乐场网页| 网上真钱麻将| 百家乐官网群html| 在车库做生意风水| 中国百家乐技巧| 一起游乐棋牌下载| 皇冠开户网址| 百家乐官网博彩策略| 大中华百家乐官网的玩法技巧和规则| 百家乐微笑投注| 大发888在线娱乐城合营商| 网上老虎机| 百家乐官网平台有什么优惠| 赌博百家乐经验网| 边城棋牌游戏下载| 视频百家乐官网平台出租| 做生意招财的东西| 威尼斯人娱乐网站怎么样| 网上的百家乐官网怎么才能赢 | 百家乐赌术大揭秘| 大发888国际娱乐| 澳门百家乐官网破解| 网上百家乐有假的吗| 大发888真钱娱乐平台| 玩百家乐官网如何看路| 24山辅星水法分阴阳| 大发888网站是多少| 川宜百家乐官网注册号| 做生意店铺风水| 大发888官方下载168| 现场百家乐官网玩法| 欢乐谷百家乐的玩法技巧和规则 | 百家乐官网百家乐官网技巧|