<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 基于微處理器的嵌入式配置模式

基于微處理器的嵌入式配置模式

作者: 時(shí)間:2012-11-02 來(lái)源:網(wǎng)絡(luò ) 收藏

可編程邏輯器件(PLD)廣泛應用在各種電路設計中。查找表技術(shù)、SRAM工藝的大規模PLD/FPGA,密度高且觸發(fā)器多,適用于復雜的時(shí)序邏輯,如數字信號處理和各種算法的設計。類(lèi)器件使用SRAM單元存儲數據。數據決定了PLD內部互連和功能,改變數據,也就改變了器件的邏輯功能。SRAM編程時(shí)間短,為系統動(dòng)態(tài)改變PLD的邏輯功能創(chuàng )造了條件。但由于SRAM的數據易失的,配置數據必須保存在PLD器件以外的非易失存儲器內,才能實(shí)現在線(xiàn)可重配置(ICR)。

本文引用地址:http://dyxdggzs.com/article/148276.htm

1 在應用配置(動(dòng)態(tài)配置)

同一設備在實(shí)現不同的應用時(shí),要求FPGA實(shí)現不同的功能。如手持多媒體設備,可拍攝分辨率較高的靜止圖像照,采用JPEG2000壓縮,也可傳送活動(dòng)圖像,采用H.263,H.264/AVC等。單純使用軟件實(shí)現速度慢,需要對算法進(jìn)行精細的優(yōu)化;而使用硬件實(shí)現則速度快,但靈活性差。為此,采用和FPGA相結合來(lái)實(shí)現手持多媒體終端,實(shí)現程序控制,FPGA實(shí)現大量的規則運算。此外,手持設備的某些應用(如靜止圖像和活動(dòng)視頻壓縮)可能并不同時(shí)實(shí)現。若在一片FPGA同時(shí)實(shí)現這些功能,不僅布線(xiàn)復雜,功能難以實(shí)現,而且需要更大規模的FPGA。若使用不同的配置數據進(jìn)行配置,使FPGA在不同時(shí)刻實(shí)現不同的功能,則FPGA的容量可以顯著(zhù)降低,從而降低設備的體積、功耗及成本。

點(diǎn)擊放大圖片

圖 1 APEX FPGA的主動(dòng)串行(PS)配置時(shí)序圖

使用在應用配置時(shí),首先把應用分集,可能同時(shí)運行的應用分成一組,耗時(shí)的規則運算由FPGA實(shí)現,其它由實(shí)現。把一個(gè)FPGA芯片的多個(gè)配置文件連續地存放在系統存儲器中,在程序執行時(shí),微處理器把對應特定應用的配置數據裝載到FPGA中并完成初始化,在FPGA進(jìn)入用戶(hù)后就能實(shí)現特定的功能了。這種方法可以采用更小規模的FPGA,不必使用專(zhuān)用的昂貴配置芯片(如ALTERA的EPC1、EPC2等)來(lái)存儲配置數據,因而可顯著(zhù)地節省系統成本。

ALTERA SRAM工藝的FPGA配置方式主要分為兩大類(lèi):主動(dòng)配置和被動(dòng)配置。主動(dòng)配置方式由PLD器件引導配置操作過(guò)程,它控制著(zhù)外部存儲器和初始化過(guò)程;而被動(dòng)配置方式則由外部計算機或控制器控制配置過(guò)程。根據數據線(xiàn)的多少又可以將PLD器件配置方式分為并行配置和串行配置兩大類(lèi)。下面以ALTERA APEX20KC系列器件為例,介紹兩種在微處理器系統里連接簡(jiǎn)單且使用方便的配置方式:被動(dòng)串行配置和被動(dòng)并行異步配置。

2 被動(dòng)串行配置(PS)

被動(dòng)串行配置的主要配置引腳如下:

nSTATUS:命令狀態(tài)下為器件的狀態(tài)輸出。加電后,FPGA立即驅動(dòng)該引腳到低電位,然后在5μs內釋放它。NSTATUS經(jīng)過(guò)10kΩ電阻上拉到Vcc,如果配置中發(fā)生錯誤,FPGA將其拉低。在配置或者初始化時(shí),若配置電路將nSTATUS拉低,FPGA進(jìn)入錯誤狀態(tài)。

NCONFIG:配置控制輸入。低電位使器件復位,由低到高的電位跳變啟動(dòng)配置。

CONF_DONF:雙向漏極開(kāi)路;在配置前和配置期間為狀態(tài)輸出,FPGA將其驅動(dòng)為低。所有配置數據無(wú)錯誤接收并且初始化時(shí)鐘周期開(kāi)始后,FPGA將其置為三態(tài),由于有上拉電阻,所以將其變?yōu)楦唠娖?,表示配置成功。在配置結束且初始化開(kāi)始時(shí),CONF_DONE為狀態(tài)輸入:若配置電路驅動(dòng)該管腳到低,則推遲初始化工作;輸入高電位則引導器件執行初始化過(guò)程并進(jìn)入用戶(hù)狀態(tài)。

DCLK:時(shí)鐘輸入,為外部數據源提供時(shí)鐘。

nCE:FPGA器件使能輸入。nCE為低時(shí),使能配置過(guò)程。單片配置時(shí),nCE必須始終為低。

nCEO:輸出(專(zhuān)用于多片器件)。FPGA配置完成后,輸出為低。在多片級聯(lián)配置時(shí),驅動(dòng)下一片的nCE端。

DATA0:數據輸入,在DATA0引腳上的一位配置數據。

PORSEL:專(zhuān)用輸入,用來(lái)設置上電復位(POR)的延時(shí)時(shí)間。

點(diǎn)擊放大圖片

圖 2 使用微處理器的被動(dòng)串行配置方案

nIO_PULLUP:輸入。低電平時(shí),在配置前和配置期間使能內部弱的上拉電阻,將用戶(hù)管腳拉至VCCIO。

幾乎所有ALTERA FPGA器件都支持被動(dòng)串行配置。被動(dòng)串行配置的是序圖如圖1所示,在這種配置方式中沒(méi)有握手信號,配置時(shí)鐘的工作頻率必須在器件允許的范圍,最低頻率沒(méi)有限制。為了開(kāi)始配置,配置管腳和JTAG管腳所在的bank的VCCINT、VCCIO必需供電。FPGA上電后進(jìn)入復位狀態(tài)。nCONFIG被置為低電平,使FPGA進(jìn)入復位狀態(tài);nCONFIG由低到高的電位跳變啟動(dòng)配置過(guò)程。整個(gè)配置包括三個(gè)階段:復位、配置和初始化。當nSTATUS或者nCONFIG為低電平時(shí),器件脫離復位狀態(tài),并且釋放漏極開(kāi)路的nSTATUS管腳。在nSTATUS釋放后,被外部電阻拉高,這時(shí)nSTATUS和nCONFIG同時(shí)為高電平,FPGA準備接收配置數據,配置階段開(kāi)始。在串行配置過(guò)程中,FPGA在DCLK上升沿鎖存DATA0引腳上的數據。成功接收到所有數據后,釋放CONF_DONE引腳,并被外部電阻拉高。CONF_DONE由低到高的轉變標志配置結束,初始化開(kāi)始。此后,DCLK必須提供幾個(gè)周期的時(shí)鐘(具體周期數據與DCLK的頻率有關(guān)),確保目標芯片被正確初始化。初始化完成后,FPGA進(jìn)入用戶(hù)工作。如果使用了可選的INIT_DONE信號,在初始化結束后,INIT_DONE被釋放,且被外部電阻拉高,這時(shí)進(jìn)入用戶(hù)。DCLK、DATA、DATA0配置后不能三態(tài),可置高或者置低。

在配置過(guò)程中,一旦出現錯誤,FPGA將nSTATUS拉低。系統可以實(shí)時(shí)監測,當識別到這個(gè)信號后,重新啟動(dòng)配置過(guò)程。NCONFIG由高變低,再變高可以重新進(jìn)行配置。一旦nCONFIG被置低,nSTATUS和CONF_DONE也將被FPGA置低。當nSTATUS和nCONFIG同時(shí)為高電平時(shí),配置開(kāi)始。

圖2是采用微處理器的FPGA被動(dòng)串行配置方案的簡(jiǎn)化電路圖。配置過(guò)程為:由微處理器將nCONFIG置低再置高來(lái)初始化配置;檢測到nSTATUS變高后,就將配置數據和移位時(shí)鐘分別送到DATA0和DCLK管腳;送完配置數據后,檢測CONF_DONE是否變高,若未變高,說(shuō)明配置失敗,應該重新啟動(dòng)配置過(guò)程。在檢測CONF_DONE變高后,根據器件的定時(shí)數再送一定數量的時(shí)鐘到DCLK管腳;待FPGA初始化完畢后進(jìn)入用戶(hù)模式。如果單片機具有同步串口,DATA0、DCLK使用同步串口的串行數據輸出和時(shí)鐘輸出,這時(shí)只需要簡(jiǎn)單把數據字節或字鎖存到發(fā)送緩沖器就可以了。在使用普通I/O線(xiàn)輸出數據時(shí),每輸出1個(gè)比特,就要將DCLK置低再置高產(chǎn)生一個(gè)上升沿。它比ALTERA公司手冊給出的電路連接圖更有效地使用了存儲器。

linux操作系統文章專(zhuān)題:linux操作系統詳解(linux不再難懂)

上一頁(yè) 1 2 下一頁(yè)

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>