官术网_书友最值得收藏!

1.7 配置技術

本節將介紹Cyclone 10 GX器件的配置策略、設計安全和遠程系統更新。Cyclone 10 GX器件的配置策略和功能如表1.32所示。

表1.32 Cyclone 10 GX器件的配置策略和功能

為了選擇不同的配置策略,MSEL引腳硬連線到VCCPGM或GND,無須上拉或下拉電阻。用于不同配置策略的MSEL引腳的設置如表1.33所示。

表1.33 用于不同配置策略的MSEL引腳的設置

Cyclone 10 GX器件的配置引腳如表1.34所示。

表1.34 Cyclone 10 GX器件的配置引腳

1.7.1 AS配置

用于AS配置策略的EPCQ-L編程高級視圖如圖1.74所示。在AS配置策略中,配置數據保存在EPCQ-L配置器件中。設計者可以使用帶有串行Flash加載器IP核的JTAG接口對系統內的 EPCQ-L 器件進行編程。SFL 充當 JTAG 接口與 EPCQ-L 器件之間的橋接器。Cyclone 10 GX器件內的AS存儲器接口控制配置過程。

圖1.74 用于AS配置策略的EPCQ-L編程高級視圖

AS配置策略支持1位數據寬度和4位數據寬度模式。AS×4模式的配置時間比AS×1模式的配置時間快4倍。在AS配置方案中,Cyclone 10 GX器件控制配置接口。

對于使用SFL的AS編程,MSEL引腳必須設置為AS設置,以允許編程器讀取EPCQ-L ID。

設計者可以使用 Intel FPGA 下載電纜在系統內編程 EPCQ-L 器件,或者可以使用帶有SRunner軟件驅動程序的微處理器對EPCQ-L進行編程。

在系統編程(In-System Programming,ISP)為設計者提供了使用 AS 編程接口或JTAG接口對EPCQ-L進行編程的選項。使用AS編程接口時,通過Quartus軟件或支持第三方軟件編程到EPCQ-L中。使用JTAG接口,必須將稱為SFL的IP核下載到Cyclone 10 GX器件中,以構成JTAG接口和EPCQ-L之間的橋接。這允許EPCQ-L使用JTAG接口直接編程。

EPCQ_L 即將停產,改由使用 MT25QU256 芯片,該芯片為 1.8V 供電,與 EPCQ_L 兼容。在使用該芯片配置 Cyclone 10 GX 器件時,在quartus.ini文件中,添加pgm_allow_mt25q=on。

1.使用JTAG接口用于編程EPCQ-L

使用JTAG接口編程EPCQ-L的連接設置(×4模式),如圖1.75所示。

圖1.75 使用JTAG接口編程EPCQ-L的連接設置(×4模式)

(1)每個Cyclone 10 GX器件有3個nCSO引腳,即nCSO[2..0],這樣該器件就可以連接最多 3 個 EPCQ-L 器件。使用 3 個 EPCQ-L 器件的優勢如下。

① 能保存多個設計文件,用于遠程系統更新。

② 當超過最大單個EPCQ-L器件容量時,可以增加存儲容量。

(2)在×1 模式下,只連接 Cyclone 10 GX 的 AS_DATA1 引腳和EPCQ-L的DATA引腳。

在配置期間,Cyclone 10 GX器件通過將其nCSO輸出引腳驅動為低來使能EPCQ-L器件,該引腳連接到 EPCQ-L 器件的片選(nCS)引腳。Cyclone 10 GX器件通過使用DCLK和ASD0引腳給EPCQ-L器件發送操作命令和讀地址信號。EPCQ-L器件在其串行數據輸出(DATA[])引腳上提供數據,它連接到Cyclone 10 GX器件的AS_DATA[]引腳輸入。

如果希望控制EPCQ-L引腳,請將nCONFIG引腳保持為低電平,并將nCE引腳拉高。這將導致器件復位并使AS配置引腳處于三態。

AS配置的時序如圖1.76所示。

圖1.76 AS配置的時序

(1)如果使用AS×4模式,這個信號表示AS_DATA[3..0],并且在每個DCLK周期EPCQ-L發送4位數據;

(2)初始化時鐘可以來自于內部振蕩器或CLKUSR引腳;

(3)當選項比特位使能 INIT_DONE 引腳配置到器件后,INIT_DONE變低;

(4)nCSO下降沿到DCLK第一個切換的時間大于15ns。

2.使用AS接口編程EPCQ-L

使用AS接口編程EPCQ-L器件的電路連接如圖1.77所示。當編程EPCQ-L器件時,下載電纜通過將 nCE 引腳驅動為高電平來禁止訪問 AS 接口。同時,nCONFIG 線也被拉低,使得Cyclone 10 GX器件處于復位階段。編程完成后下載電纜釋放nCE和nCONFIG,允許下拉和上拉電阻分別將引腳驅動到GND和VCCPGM。

圖1.77 使用AS接口編程EPCQ-L器件的電路連接

在使用下載電纜對 EPCQ-L 器件編程的期間,通過 DATA0 將編程數據、操作命令和地址信息從下載電纜傳送到EPCQ-L器件。在使用下載電纜驗證EPCQ-L器件的期間,DATA1將編程數據傳輸給下載電纜。

3.多器件AS配置

多器件AS配置如圖1.78所示。

圖1.78 多器件AS配置

1.7.2 PS配置

用于 PS 配置策略的 EPCQ-L 編程高級視圖如圖 1.79 所示。PS 配置使用外部主機。設計者可以使用微處理器、MAX II器件、MAX V器件或者主機PC作為外部設備。

圖1.79 用于PS配置策略的EPCQ-L編程高級視圖

設計者可以使用外部主機控制配置數據從外部存儲器(如 Flash)到 FPGA 的傳輸。控制配置過程的設計駐留在外部主機中。

設計者可以將配置數據保存在編程器目標文件(progtammer object file,.pof)、.rbf、.hex或.ttf中,首先發送每個數據字節的LSB。例如,如果.rbf包含字節序列02 1B EE 01 FA,則發送到設備的串行數據必須是0100-0000 1101-1000 0111-0111 1000-0000 0101-1111。

設計者可以將PFL IP核與MAX II或MAX V器件一起使用,以從閃存器件中讀取配置數據,并配置Cyclone 10 GX器件。

對于PC主機,使用Intel FPGA下載電纜將PC連接到設備。配置數據串行移入器件的DATA0引腳。

如果使用Quartus編程器并且使能CLKUSR引腳,則不需要為該引腳提供時鐘源來初始化器件。

1.使用外部主機的PS單器件配置

在該模式下,配置Cyclone 10 GX器件,將器件連接到一個外部主機,如圖1.80所示。通過將CONF_DONE和nSTATUS引腳連接在一起,器件可以同時初始化并進入用戶模式。如果鏈路中的任何器件發生錯誤,則將停止配置整個鏈,并且必須重新配置所有器件。例如,如果鏈路中的第一個器件在 nSTATUS 引腳上標記錯誤,則會通過拉低 nSTATUS 引腳來復位整個鏈路。

如果使用相同的配置數據在鏈路中配置器件,則器件必須具有相同的封裝和密度。

2.使用Intel FPGA下載電纜的PS單器件配置

在該模式下,配置Cyclone 10 GX器件,將器件連接到下載電纜,如圖1.81所示。

圖1.80 使用外部主機的PS單器件配置

圖1.81 使用Intel下載電纜的PS單器件配置

3.使用多個配置數據

要使用多個配置數據在鏈中配置多個Cyclone 10 GX器件時,將器件連接到外部主機,如圖1.82所示。

在器件配置完后,它的 nCEO 引腳釋放為低電平,以激活鏈中下一個器件的 nCE 引腳。在一個時鐘周期內,自動開始配置第二個器件。

圖1.82 使用多個配置數據

默認,Quartus 軟件禁止 nCEO 引腳。對于多器件配置鏈,必須在Quartus軟件中使能nCEO引腳。否則,配置器件可能會失敗。

4.使用一個配置數據

要使用一個配置數據在鏈中配置多個Cyclone 10 GX器件時,將器件連接到外部主機,如圖1.83所示。

圖1.83 使用一個配置數據

在該鏈路中,器件的nCE引腳連接到GND,允許這些器件的配置同時開始和結束。

5.使用PC主機和下載電纜

要配置多個Cyclone 10 GX器件,將器件連接到下載電纜,如圖1.84所示。

默認,Quartus 軟件禁止 nCEO 引腳。對于多器件配置鏈,必須在Quartus軟件中使能nCEO引腳。否則,配置器件可能會失敗。

在器件配置完后,它的 nCEO 引腳釋放為低電平,以激活鏈中下一個器件的 nCE 引腳。為第二個器件自動開始配置。

6.PS配置時序

PS配置的時序如圖1.85所示。

(1)上電后,器件在POR延遲時保持nSTATUS為低電平。

(2)上電后,配置前和配置期間,CONF_DONE為低電平。

(3)配置后,不要讓 DCLK 浮動。可以將它驅動為高或低,以更方便的方式。

(4)配置后,DATA0 可作為用戶的 I/O 引腳。該引腳的狀態取決于在器件和引腳選項中的兩用引腳設置。

(5)為確保配置成功,給器件發送整個配置數據。當器件成功接收到所有配置數據后,CONF_DONE 釋放為高電平。在 CONF_DONE 變成高電平后,在DCLK發送兩個額外的下降沿以開始初始化并進入用戶模式。

(6)當使能選項位去使能INIT_DONE引腳配置到器件后,INIT_DONE變低。

(7)在nSTATUS拉高之前,不要將DCLK切換為高電平。

1.7.3 FPP配置

用于 FPP 配置策略的 Flash 高級視圖如圖 1.86 所示。FPP 配置策略使用一個外部主設備,可選的主設備有微處理器、MAX II器件或MAX V器件。這個策略是配置Cyclone 10 GX器件最快的方法。FPP配置策略支持8位、16位和32位的數據寬度。

可以使用外部主機來控制配置數據從外部存儲器(如閃存)到FPGA的傳輸。控制配置過程的設計駐留在外部主機中。可以將配置數據存儲在原始二進制文件(raw binary file,rbf)、十六進制(Intel格式)文件(.hex)或者表格文本文件(tabular text file,ttf)中。

圖1.84 使用Intel FPGA 下載電纜的多個器件的PS配置

圖1.85 PS配置的時序

圖1.86 用于FPP配置策略的Flash編程高級視圖

可以將PFL IP核與MAX II或MAX V器件一起使用,以從閃存器件讀取配置數據并配置到Cyclone 10 GX器件。

在CONF_DONE引腳變高后,要求兩個DCLK下降沿,以便在FPP配置中為未壓縮核壓縮的配置數據開始初始化設備。

1.單個器件配置

要配置Cyclone 10 GX器件,將器件連接到外部主機,如圖1.87所示。

圖1.87 FPP模式的單個器件配置

如果使用 FPP×8 配置模式,使用 DATA[7..0]引腳;如果使用 FPP×16配置模式,使用DATA[15..0]引腳;如果使用FPP×32配置模式,使用DATA[31..0]引腳。

2.使用多個配置數據配置多個器件

使用多個配置數據配置一個鏈路中的多個 Cyclone 10 GX 器件,將器件連接到外部主機,如圖1.88所示。

3.使用一個配置數據配置多個器件

使用多個配置數據配置一個鏈路中的多個 Cyclone 10 GX 器件,將器件連接到外部主機,如圖1.89所示。在該鏈路中,器件的nCE引腳連接到GND,允許同時開始和結束配置這些器件。

4.FPP配置時序

當DCLK到DATA[]的比值為1時的FPP配置時序如圖1.90所示。

(1)上電后,器件在POR延遲時保持nSTATUS為低電平。

(2)上電后,在配置前和配置期間,CONF_DONE為低電平。

(3)配置后,不要讓 DCLK 懸空。當配置完成后,將忽略 DCLK。如果需要,可將它切換到高或低。

(4)對于 FPP×16,使用 DATA[15..0];對于 FPP×8,使用 DATA [7..0]。配置后,DATA[31:0]可作為用戶 I/O 引腳使用,該引腳的狀態取決于引腳的雙用途設置。

(5)為了確保配置成功,將整個配置數據發送到器件。當器件成功收到所有配置數據時,將CONF_DONE釋放為高。在CONF_DONE變為高電平后,在 DCLK 上發送兩個額外的下降沿以開始初始化并進入用戶模式。

(6)在使能位使能 INIT_DONE 引腳配置到器件后,INIT_DONE 變為低。

(7)在nSTATUS拉高之前,不要將DCLK切換為高電平。

當DCLK到DATA[]的比值大于1時的FPP配置時序如圖1.91所示。

圖1.88 EPP模式使用多個配置數據配置多個器件

圖1.89 EPP模式使用一個配置數據配置多個器件

圖1.90 當DCLK當DATA[]的比值為1時的FPP配置時序

圖1.90 當DCLK到DATA[]的比值大于1時的FPP配置文件

(1)上電后,器件在POR延遲時保持nSTATUS為低電平。

(2)上電后,在配置前和配置期間,CONF_DONE為低電平。

(3)在配置后,不要讓DCLK懸空。可將它驅動為高或低。

(4)“r”表示DCLK到DATA[]的比值。對于使用解壓縮和設計安全功能設置DCLK到DATA[]的比值。

(5)如果需要,暫停 DCLK 并保持為低電平。重啟 DCLK 時,外部主機必須在發送第一個DCLK上升沿之前在DATA[31..0]引腳上提供數據。

(6)為了確保配置成功,將整個配置數據發送到器件。當器件成功收到所有配置數據時,將CONF_DONE釋放為高。在CONF_DONE變為高電平后,在 DCLK 上發送兩個額外的下降沿以開始初始化并進入用戶模式。

(7)在使能位使能 INIT_DONE 引腳配置到器件后,INIT_DONE 變為低。

(8)在nSTATUS拉高之前,不要將DCLK切換為高電平。

1.7.4 JTAG配置

在Cyclone 10 GX器件中,JTAG指令優先于其他配置方案。JTAG是英文全稱Joint Test Action Group(聯合測試行動小組)的縮寫,它是一種國際標準測試協議(IEEE1149.1 兼容),主要用于測試芯片的內部。

Quartus 軟件生成一個 SRAM 對象文件(SRAM Object File,SOF),設計者可以使用Quartus 軟件編程器中的下載電纜配置 JTAG。或者,使用帶有.rbf 或 JAM 標準測試和編程語言(Standard Test and Programming Language,STAPL)格式文件(.jam)的 JRunner 軟件,或者使用帶有第三方編程器工具的JAM字節代碼(JAM byte code,jbc)文件。

如果使用基于JTAG的配置來配置Cyclone 10 GX器件,則無法使用Cyclone 10 GX器件的解壓縮或設計安全功能。Cyclone 10 GX器件上的芯片級復位(DEV_CLRn)和芯片級輸出使能(DEV_OE)引腳不會影響JTAG邊界掃描或編程操作。Intel FPGA下載電纜可支持1.5V/1.8V的VCCPGM電壓,但是不支持1.2V的目標電源電壓。

1.單個器件配置

要在 JTAG 鏈中配置單個器件,編程軟件會將其他器件設置為旁路模式。在旁路模式下的器件,通過單個旁路寄存器將編程數據從TDI 引腳傳輸到 TDO引腳。配置數據在一個時鐘周期后可用。

Quartus 軟件使用 CONF_DONE 引腳驗證通過 JTAG 接口的配置過程是否完成。當CONF_DONE 引腳為低電平時表示配置失敗;當 CONF_DONE 引腳為高電平時表示配置成功。

當使用JTAG TDI接口串行傳輸配置數據后,TCK接口再驅動額外的1222周期以執行器件初始化操作。

要使用下載電纜配置Cyclone 10 GX器件,按圖1.92所示設計電路。

圖1.92 使用下載電纜配置器件

使用外部微處理器配置Cyclone 10 GX器件,按圖1.93所示設計電路。設計者可以使用JRunner作為軟件驅動程序。

2.多個器件配置

JTAG也可以配置鏈路上的多個器件,如圖1.94所示。在JTAG多器件配置模式下,應遵守下面的規則:

(1)隔離CONF_DONE和nSTATUS引腳,允許每個器件獨立進入用戶模式。

(2)一個JTAG兼容頭連接到JTAG鏈中的多個器件。鏈路中器件的個數僅受下載電纜驅動能力的限制。

(3)如果 JTAG 鏈中有 4 個或以上的器件,則使用板載緩沖器緩沖 TCK、TDI 和 TMS引腳。設計者也可以將其他具有JTAG支持的Intel FPGA連接到該鏈路中。

(4)當系統包含多個器件或使用JTAG邊界掃描測試(Boundary Scan Testing,BST)電路測試系統時,JTAG鏈的器件編程是理想的選擇。

圖1.93 使用外部微處理器配置器件

圖1.94 使用JTAG配置多個器件

1.7.5 配置流程

Cyclone 10 GX器件的配置過程如圖1.95所示。

圖1.95 Cyclone 10 GX器件的配置過程

除用于部分可重配置操作外,設計者可以通過將 nCONFIG 引腳拉低至少最小 tCFG的低脈沖來初始化重配置。當拉低該引腳時,nSTATUS和CONF_DONE引腳也被拉低,所有I/O引腳都連接到弱上拉。

主站蜘蛛池模板: 浦北县| 清河县| 民县| 汾西县| 康定县| 汉中市| 阿拉善左旗| 苏州市| 衡阳市| 绥芬河市| 边坝县| 宜宾市| 清镇市| 长武县| 岑巩县| 普格县| 连城县| 松阳县| 泰顺县| 忻城县| 武宣县| 新疆| 平阳县| 洛南县| 岢岚县| 高唐县| 章丘市| 垫江县| 玛纳斯县| 新宁县| 新乐市| 望都县| 义乌市| 古蔺县| 仁布县| 古丈县| 汨罗市| 宁远县| 井冈山市| 嘉黎县| 九龙县|