當(dāng)前位置:首頁(yè) > 電源 > 數(shù)字電源
[導(dǎo)讀]概述在進(jìn)行FPGA硬件設(shè)計(jì)時(shí),引腳分配是非常重要的一個(gè)環(huán)節(jié),特別是在硬件電路上需要與其他芯片通行的引腳。Xilinx FPGA從上電之后到正常工作整個(gè)過(guò)程中各個(gè)階段引腳的狀態(tài),

概述

在進(jìn)行FPGA硬件設(shè)計(jì)時(shí),引腳分配是非常重要的一個(gè)環(huán)節(jié),特別是在硬件電路上需要與其他芯片通行的引腳。Xilinx FPGA從上電之后到正常工作整個(gè)過(guò)程中各個(gè)階段引腳的狀態(tài),會(huì)對(duì)硬件設(shè)計(jì)、引腳分配產(chǎn)生非常重要的影響。這篇專題就針對(duì)FPGA從上電開(kāi)始 ,配置程序,到正常工作整個(gè)過(guò)程中所有IO的狀態(tài)進(jìn)行分析。

從時(shí)間階段可以分為兩部分,第一階段是從FPGA上電開(kāi)始直到配置(Configuraon)完成之前。第二個(gè)階段是配置完成之后,F(xiàn)PGA開(kāi)始正常工作開(kāi)始。

從引腳類型上分,可以分為三大類:第一類是普通的IO,其中又分為程序設(shè)計(jì)中使用到的IO和程序設(shè)計(jì)中沒(méi)有使用的IO(即在ucf或者XDC文件中沒(méi)有進(jìn)行約束的IO);第二類是專用下載配置引腳(Dedicated Pins),這類引腳只用于專用的功能,包括有M[2:0]、TCK、TMS、PROGRAM_B、INIT_B等。第三類為功能復(fù)用引腳,這類引腳在使用特定的功能時(shí)使用,例如在使用BPI配置模式時(shí),D[00-31]和A[00-28]需要使用。如果使用SYSMON時(shí),I2C_SDA和I2C_SCL需要使用。但在當(dāng)前沒(méi)有使用該功能的情況下,功能復(fù)用引腳可以看成普通IO。

FPGA IO的基本結(jié)構(gòu)

在《IO輸入輸出的各種模式》介紹了處理器IO的各種輸入輸出模式以及原理,那么FPGA的IO是什么樣的結(jié)構(gòu)和原理?圖 1為Xilinx文檔中提供的IOB的內(nèi)部結(jié)構(gòu),可以看出:

在FPGA IOB內(nèi)部,Pad輸出之前,內(nèi)置上下拉電阻。且可以通過(guò)Passive Pull-up/Pull-down模塊控制兩個(gè)MOS管的導(dǎo)通與否來(lái)控制是否使能上下拉電阻。

內(nèi)部連接Pad的分別有一個(gè)Input Buffer和Output Buffer。其中Input Buffer對(duì)外應(yīng)該始終呈現(xiàn)高阻狀態(tài),同時(shí)可以將Pad上的電平通過(guò)Input Buffer傳到I1和I2,或者是下部的FF。Output Buffer有兩個(gè)控制信號(hào),分別是Slew Rate Control,用來(lái)控制輸出信號(hào)的Slew Rate;另一個(gè)是三態(tài)控制信號(hào)T,可以控制Output Buffer輸出高阻。

內(nèi)部輸出信號(hào)Out,可以通過(guò)上半部分的FF,經(jīng)Output Clock同步后打出,也可以直接連接到Output buffer的輸入端,直接輸出。

同樣Input Buffer的輸出,可以直接連接到I1和I2,也可以經(jīng)過(guò)下半部分的FF,經(jīng)過(guò)input clock的同步之后輸出到內(nèi)部總線上。

上下兩個(gè)MOS并不是推挽輸出的兩個(gè)MOS管,因?yàn)椴⒉皇艿交パa(bǔ)信號(hào)的控制,并不一定一個(gè)導(dǎo)通另一個(gè)閉合。

 

 

這里介紹一下輸入緩存器的結(jié)構(gòu)和原理,其結(jié)構(gòu)如圖 2所示,其原理與推挽輸出電路非常類似,只是輸入端信號(hào)作為了兩個(gè)互補(bǔ)MOS管的控制端,控制著輸出端的電平。由于輸入緩沖器有自己的供電電壓,所以輸入電平必須與緩沖器的電源電壓相匹配。D1和D2兩個(gè)鉗位二極管用于防治輸入電壓過(guò)低或者過(guò)高,損壞輸入緩沖器。

 

 

普通IO

配置完成之前

在FPGA上電到配置完成之前,由于當(dāng)前FPGA還沒(méi)有下載程序,無(wú)法區(qū)分哪些引腳被設(shè)計(jì)所使用,哪些引腳沒(méi)有被使用。此時(shí)的普通IO包括兩部分:

1. 該封裝中所有的通用IO引腳。

2. 當(dāng)前所選擇的模式下沒(méi)有使用到的所有功能復(fù)用管腳。

在Spartan6系列以及之前的器件中這些引腳的狀態(tài)是根據(jù)HSWAPEN的狀態(tài)決定的。

 

 

在7系列以后的器件,包括Ultrascale器件中,這些引腳的狀態(tài)是根據(jù)PUDC_B(Pull-Up During Configuraon)引腳

 

 

這兩個(gè)引腳的功能是相似的,都是用來(lái)控制在Configuraon完成之前,所有普通IO的上拉電阻是否使能的。對(duì)應(yīng)到圖 1中,即Output Buffer輸出高阻,Input Buffer對(duì)外始終為高阻,此時(shí)選擇是否連接上拉電阻。

配置完成之后

在配置完成之后,F(xiàn)PGA就進(jìn)入正常工作的模式了。在配置完成之后,普通引腳可以分為以下兩種:

工程設(shè)計(jì)中使用的IO,即在UCF或者XDC中有明確約束的IO。

其余沒(méi)有使用,也沒(méi)有約束的IO。(稱為Unassigned Pins)

首先,對(duì)于第一種情況,由于已經(jīng)在設(shè)計(jì)中明確設(shè)定了這些引腳的設(shè)置,包括方向、電平、驅(qū)動(dòng)能力等等,所以在配置完成之后,這些引腳的狀態(tài)已經(jīng)被設(shè)置為了預(yù)設(shè)的狀態(tài)。

對(duì)于沒(méi)有約束的IO,又復(fù)雜一些了。在ISE開(kāi)發(fā)環(huán)境下,工程完成Implement之后,在Processà Process properTIes àConfiguration Options中有"-g UnusedPin Unused IOB Pins"屬性,可以選擇Pull Down、Pull Up或者Floating。默認(rèn)狀態(tài)是Pull-Down。對(duì)應(yīng)到圖 1中,是高阻輸出,導(dǎo)通下拉電阻。另兩個(gè)設(shè)置就是高阻加上上拉電阻或者只是上下拉電阻均不導(dǎo)通。

在Vivado中也有相同的設(shè)置,必須在實(shí)現(xiàn)完成之后,打開(kāi)Implementation Design之后選擇bitstream Settings,其中在"Configure additional bitstream settings"中的Configuration欄中,有如下屬性選擇項(xiàng)。

 

 

專用IO

所有的專用配置引腳全部位于Bank0,包括CFGBVS、M[2:0]、TCK、TMS、TDI、TDO、PRORAM_B、INIT_B、DONE以及CCLK。專用引腳的含義就是無(wú)論在配置過(guò)程中還是配置完成之后,這些引腳無(wú)論在什么階段都只用于配置。

所以對(duì)于這些引腳考慮相對(duì)比較簡(jiǎn)單,分為輸入信號(hào)和輸出信號(hào)。輸入信號(hào)的狀態(tài)始終保持LVCMOS電平標(biāo)準(zhǔn),電壓值為VCCO(輸入信號(hào)為什么也有電平標(biāo)準(zhǔn)要求,需要與Input buffer的供電電壓相匹配,見(jiàn)圖 2)。輸出信號(hào)的狀態(tài)始終保持LVCMOS電平標(biāo)準(zhǔn),電壓為VCCO,12mA drive,fast slew rate。

功能復(fù)用IO

相比于其他引腳,功能復(fù)用引腳的情況是最復(fù)雜的,這些管腳包括與配置相關(guān)的PUDC_B、EMCCLK、CSI_B、CSO_B、DOUT、RDWR_B、D00_MOSI、D01_DIN、D[00-31]、A[00-28]、FCS_B、FOE_B、FEW_B、ADV_B、RS0以及RS1;以及與System Monitor相關(guān)的AD0P至AD15P、AD0N至AD15N,I2C_SDA以及I2C_SCLK。

為了說(shuō)清楚功能復(fù)用管腳在不同階段的狀態(tài),將復(fù)用管腳分為以下幾類:

1. 在當(dāng)前所選擇的功能中使用到的功能復(fù)用管腳,例如在選擇BPI配置時(shí)的D[00-31]和A[00-28]。

2. 在當(dāng)前所選擇的功能中沒(méi)有使用到的功能復(fù)用管腳。例如在選擇SPI配置時(shí)的D[00-31]和A[00-28]。

3. 在完成配置之前需要作為輸出或者雙向,總之有可能向外輸出信號(hào)的管腳,例如I2C_SDA和I2C_SCLK。

配置完成之前

在FPGA上電至配置完成之前的這段時(shí)間內(nèi),前面列出的第一類引腳,即在當(dāng)前所選擇的功能中使用到的功能復(fù)用管腳,狀態(tài)等同于專用配置IO管腳。輸入信號(hào)的狀態(tài)始終保持LVCMOS電平標(biāo)準(zhǔn),電壓值為VCCO。輸出信號(hào)的狀態(tài)始終保持LVCMOS電平標(biāo)準(zhǔn),電壓為VCCO,12mA drive,fast slew rate。

前面列出的第二類引腳,即在當(dāng)前所選擇的功能中沒(méi)有使用到的功能復(fù)用管腳,視同于普通IO,其狀態(tài)受到HSWAPEN或者PUDC_B信號(hào)的控制,決定是高阻還是連接弱上拉電阻。

第三類引腳的情況比較復(fù)雜,目前所知的只有I2C_SDA和I2C_SCLK,這兩個(gè)信號(hào)會(huì)在配置完成前出現(xiàn)一些不確定的狀態(tài)。所以如果FPGA的IO還有富余,并且要求所有連接到外部的引腳有確定的狀態(tài),那么最好不要使用這兩個(gè)引腳作為連接外設(shè)的IO。

配置完成之后

在FPGA配置完成之后,前面提到的三種引腳會(huì)被分成另外三類:

第一類是在用戶設(shè)計(jì)中明確配置了需要保留的功能引腳,例如對(duì)于配置相關(guān)的引腳設(shè)置了Persist option屬性,這種情況下這些引腳會(huì)繼續(xù)保持之前與配置相關(guān)的功能,其狀態(tài)為輸入信號(hào)的狀態(tài)始終保持LVCMOS電平標(biāo)準(zhǔn),電壓值為VCCO。輸出信號(hào)的狀態(tài)始終保持LVCMOS電平標(biāo)準(zhǔn),電壓為VCCO,12mA drive,slow slew rate。再例如設(shè)計(jì)中使用了SYSMON,I2C_SDA和I2C_SCLK引腳則繼續(xù)保持DRP I2C的功能。

第二類是在用戶設(shè)計(jì)配置中沒(méi)有要求保留其特殊功能,這些引腳在配置完成之后會(huì)變成普通IO,且在用戶設(shè)計(jì)中沒(méi)有使用到的IO。這些IO相當(dāng)于Unassigned IO,如前所述,這些IO在配置完成之后的狀態(tài)受到相應(yīng)設(shè)置的影響,可以是上拉、下拉或者Floating。

第三類是在用戶設(shè)計(jì)配置中沒(méi)有要求保留其特殊功能,這些引腳在配置完成之后會(huì)變成普通IO,并且在用戶設(shè)計(jì)中使用到的IO。這些IO的狀態(tài)由用戶設(shè)計(jì)控制,會(huì)在XDC或者UCF中設(shè)定。如果沒(méi)有設(shè)定就會(huì)按照默認(rèn)的狀態(tài),輸入端口默認(rèn)狀態(tài)為L(zhǎng)VCMOS電平標(biāo)準(zhǔn),電壓值為VCCO;輸出信號(hào)默認(rèn)狀態(tài)為保持LVCMOS電平標(biāo)準(zhǔn),電壓為VCCO,12mA drive,slow slew rate。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車(chē)的華為或?qū)⒋呱龈蟮莫?dú)角獸公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

倫敦2024年8月29日 /美通社/ -- 英國(guó)汽車(chē)技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車(chē)工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車(chē)。 SODA V工具的開(kāi)發(fā)耗時(shí)1.5...

關(guān)鍵字: 汽車(chē) 人工智能 智能驅(qū)動(dòng) BSP

北京2024年8月28日 /美通社/ -- 越來(lái)越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時(shí)企業(yè)卻面臨越來(lái)越多業(yè)務(wù)中斷的風(fēng)險(xiǎn),如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報(bào)道,騰訊和網(wǎng)易近期正在縮減他們對(duì)日本游戲市場(chǎng)的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)開(kāi)幕式在貴陽(yáng)舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國(guó)國(guó)際大數(shù)據(jù)產(chǎn)業(yè)博覽會(huì)上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語(yǔ)權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點(diǎn): 有效應(yīng)對(duì)環(huán)境變化,經(jīng)營(yíng)業(yè)績(jī)穩(wěn)中有升 落實(shí)提質(zhì)增效舉措,毛利潤(rùn)率延續(xù)升勢(shì) 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長(zhǎng) 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競(jìng)爭(zhēng)力 堅(jiān)持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競(jìng)爭(zhēng)優(yōu)勢(shì)...

關(guān)鍵字: 通信 BSP 電信運(yùn)營(yíng)商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺(tái)與中國(guó)電影電視技術(shù)學(xué)會(huì)聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會(huì)上宣布正式成立。 活動(dòng)現(xiàn)場(chǎng) NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長(zhǎng)三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會(huì)上,軟通動(dòng)力信息技術(shù)(集團(tuán))股份有限公司(以下簡(jiǎn)稱"軟通動(dòng)力")與長(zhǎng)三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉