采用EEPROM對(duì)大容量FPGA芯片數(shù)據(jù)實(shí)現(xiàn)串行加載
發(fā)布時(shí)間:2008/5/27 0:00:00 訪問(wèn)次數(shù):898
     范宏波 李一民 朱紅梅 來(lái)源:《電子技術(shù)應(yīng)用》
     摘要:通過(guò)對(duì)比多種fpga數(shù)據(jù)加載方式,從可靠性、經(jīng)濟(jì)性及pcb設(shè)計(jì)等幾個(gè)方面說(shuō)明了串行加載的優(yōu)越性,分析了目前串行加載所面臨的問(wèn)題。為解決串行加載新面臨的問(wèn)題,提出了采用eeprom與9500系列cpld相結(jié)合實(shí)現(xiàn)串行加載的構(gòu)想,并通過(guò)實(shí)際設(shè)計(jì),成功地實(shí)現(xiàn)了該構(gòu)想。
    
    
     關(guān)鍵詞:fpga
     cpld eeprom 并-串轉(zhuǎn)換
     自大規(guī),F(xiàn)場(chǎng)可編程邏輯器件問(wèn)世以來(lái),先后出現(xiàn)了兩類器件,一類是基于sram體系結(jié)構(gòu)的fpga系列,如xilinx公司4000系列和最新的virtex系列;另一類
     基于fastflash技術(shù)的cpld器件,如xilinx公司9500系列和lattic公司的isplsxx系列芯片。fpga具有容量大、設(shè)計(jì)資源豐富、片內(nèi)rom及ram設(shè)計(jì)靈活等特點(diǎn)[1],但是它們需要在每次上電時(shí)進(jìn)行數(shù)據(jù)加載。目前實(shí)現(xiàn)加載的方法有以下三種:①采用prom并行加載;②彩
     專用srom串行加載;③采用單片機(jī)控制實(shí)現(xiàn)加載。第一種方式需要占用較多的fpga管腳資源,雖然這些管腳在加載完成后可用作一般i/o口,但在加載時(shí)不允許這些載完成后可用作一般i/o口,但在加載時(shí)不允許這些管腳有其他任何外來(lái)信號(hào)源;另外數(shù)據(jù)存儲(chǔ)器prom與fpga之間的大量固定連線如8位數(shù)據(jù)線以及大量訪問(wèn)prom的地址線等,使得pcb設(shè)計(jì)不便。但是第一種方式有一個(gè)有利的方面,即prom的容量較大、容易購(gòu)置、價(jià)格低、技術(shù)支持(編程器)較好。第二種方式情況剛好與第一種方式相反,即占用資源少,pcb布板方便,但是容量小、價(jià)格較高、兼容性差。第三種方式采用單片機(jī)控制,由prom中讀取并行數(shù)據(jù),然后再串行送出。由于涉及到單片機(jī)編程,對(duì)于開(kāi)發(fā)者來(lái)說(shuō)較為不便;另外,如果單片機(jī)僅用來(lái)實(shí)現(xiàn)該任務(wù),較為浪費(fèi)硬件資源。cpld的一個(gè)最大優(yōu)點(diǎn)是采用計(jì)算機(jī)專用開(kāi)發(fā)工具,通過(guò)jtag口直接一次性實(shí)現(xiàn)編程數(shù)據(jù)加載,并永久保留,除非進(jìn)行再次編程(與gal器件相似)。該類器件比較適合在實(shí)驗(yàn)室內(nèi)進(jìn)行現(xiàn)場(chǎng)調(diào)試,但是由于其數(shù)據(jù)的加載必須通過(guò)計(jì)算機(jī),因此對(duì)于從事野外作業(yè)者來(lái)說(shuō)會(huì)產(chǎn)生不便。
     通過(guò)上述比較,并結(jié)合實(shí)際工作情況,我們認(rèn)為采用串行數(shù)據(jù)加載比較方便、可靠(這種可靠性得益于fpga與srom之間較少的接口線)。但隨著fpga規(guī)模的不斷升級(jí),其config數(shù)據(jù)量越來(lái)越大,截止到本文寫作時(shí),config數(shù)據(jù)量最大已列6mbit,雖然xilinx公司有相關(guān)的xc17x系列srom提供使用,但皆為一次性芯片[2]、開(kāi)發(fā)成本較高、代理商供貨周期長(zhǎng)、價(jià)格較高,這給fpga的應(yīng)用及普及帶來(lái)很大的障礙。我們?cè)褂眠^(guò)at&t公司的att17系列電可擦除srom,但是該類srom芯片能與xilinx系列fpga芯片實(shí)現(xiàn)接口的種類不多,且容量小。由于種種原因,其價(jià)格往往是同樣存儲(chǔ)容量的eeprom的五、六倍,甚至更高,并且來(lái)源困難。那么能不能結(jié)合并行加載與串行加載的優(yōu)點(diǎn),從而解決容量fpga數(shù)據(jù)加載的問(wèn)題呢?我們?cè)谧屑?xì)分析了串行加載機(jī)制后,認(rèn)為采用eeprom作為數(shù)據(jù)存儲(chǔ)器,經(jīng)過(guò)可控的并-串轉(zhuǎn)換,應(yīng)該可以實(shí)現(xiàn)數(shù)據(jù)加載。下面的xilinx公司virtex系列xcv100芯片為例,采用atmel公司1兆位的at29c010a進(jìn)行數(shù)據(jù)存儲(chǔ),采用xilinx公司9500系列xc95108芯片作為加載控制器件進(jìn)行設(shè)計(jì)。
     1 原理設(shè)計(jì)
     原理性master serial模式串行加載時(shí)序如圖1所示。在該加載模式中,比較重要的幾個(gè)信號(hào)為/init、cclk、datain、done。/init表示fpga芯片上電時(shí)或者當(dāng)/program信號(hào)為低時(shí)fpga內(nèi)部數(shù)據(jù)初始化過(guò)程,并作為外送信號(hào)給數(shù)據(jù)加載控制器件作為復(fù)位之用。當(dāng)/init信號(hào)躍為高電平時(shí),cclk開(kāi)始啟動(dòng)。加載數(shù)據(jù)datain在cclk的上升沿打入,與通用串行通訊相類似,加載數(shù)據(jù)流也有開(kāi)始位與結(jié)束位,且以數(shù)據(jù)幀的方式接收。一旦發(fā)生錯(cuò)誤,fpga立即停止接收數(shù)據(jù),并將/init信號(hào)置為低電平,因此該信號(hào)又稱為錯(cuò)誤指示信號(hào)。當(dāng)數(shù)據(jù)全部接受并驗(yàn)證無(wú)誤后,fpga將done信號(hào)置為“1”[3]。
     在分析了fpga加載數(shù)據(jù)流特性后,可以得出這樣一個(gè)結(jié)論:保證cclk與datain之間的嚴(yán)格同步與連續(xù)性,就可以實(shí)現(xiàn)加載;诖私Y(jié)論,在生成加載數(shù)據(jù)格式時(shí),產(chǎn)生單片srom串行格式,對(duì)于xilinx公司的fpga系列,該格式為.mcs文件格式;然后
     范宏波 李一民 朱紅梅 來(lái)源:《電子技術(shù)應(yīng)用》
     摘要:通過(guò)對(duì)比多種fpga數(shù)據(jù)加載方式,從可靠性、經(jīng)濟(jì)性及pcb設(shè)計(jì)等幾個(gè)方面說(shuō)明了串行加載的優(yōu)越性,分析了目前串行加載所面臨的問(wèn)題。為解決串行加載新面臨的問(wèn)題,提出了采用eeprom與9500系列cpld相結(jié)合實(shí)現(xiàn)串行加載的構(gòu)想,并通過(guò)實(shí)際設(shè)計(jì),成功地實(shí)現(xiàn)了該構(gòu)想。
    
    
     關(guān)鍵詞:fpga
     cpld eeprom 并-串轉(zhuǎn)換
     自大規(guī),F(xiàn)場(chǎng)可編程邏輯器件問(wèn)世以來(lái),先后出現(xiàn)了兩類器件,一類是基于sram體系結(jié)構(gòu)的fpga系列,如xilinx公司4000系列和最新的virtex系列;另一類
     基于fastflash技術(shù)的cpld器件,如xilinx公司9500系列和lattic公司的isplsxx系列芯片。fpga具有容量大、設(shè)計(jì)資源豐富、片內(nèi)rom及ram設(shè)計(jì)靈活等特點(diǎn)[1],但是它們需要在每次上電時(shí)進(jìn)行數(shù)據(jù)加載。目前實(shí)現(xiàn)加載的方法有以下三種:①采用prom并行加載;②彩
     專用srom串行加載;③采用單片機(jī)控制實(shí)現(xiàn)加載。第一種方式需要占用較多的fpga管腳資源,雖然這些管腳在加載完成后可用作一般i/o口,但在加載時(shí)不允許這些載完成后可用作一般i/o口,但在加載時(shí)不允許這些管腳有其他任何外來(lái)信號(hào)源;另外數(shù)據(jù)存儲(chǔ)器prom與fpga之間的大量固定連線如8位數(shù)據(jù)線以及大量訪問(wèn)prom的地址線等,使得pcb設(shè)計(jì)不便。但是第一種方式有一個(gè)有利的方面,即prom的容量較大、容易購(gòu)置、價(jià)格低、技術(shù)支持(編程器)較好。第二種方式情況剛好與第一種方式相反,即占用資源少,pcb布板方便,但是容量小、價(jià)格較高、兼容性差。第三種方式采用單片機(jī)控制,由prom中讀取并行數(shù)據(jù),然后再串行送出。由于涉及到單片機(jī)編程,對(duì)于開(kāi)發(fā)者來(lái)說(shuō)較為不便;另外,如果單片機(jī)僅用來(lái)實(shí)現(xiàn)該任務(wù),較為浪費(fèi)硬件資源。cpld的一個(gè)最大優(yōu)點(diǎn)是采用計(jì)算機(jī)專用開(kāi)發(fā)工具,通過(guò)jtag口直接一次性實(shí)現(xiàn)編程數(shù)據(jù)加載,并永久保留,除非進(jìn)行再次編程(與gal器件相似)。該類器件比較適合在實(shí)驗(yàn)室內(nèi)進(jìn)行現(xiàn)場(chǎng)調(diào)試,但是由于其數(shù)據(jù)的加載必須通過(guò)計(jì)算機(jī),因此對(duì)于從事野外作業(yè)者來(lái)說(shuō)會(huì)產(chǎn)生不便。
     通過(guò)上述比較,并結(jié)合實(shí)際工作情況,我們認(rèn)為采用串行數(shù)據(jù)加載比較方便、可靠(這種可靠性得益于fpga與srom之間較少的接口線)。但隨著fpga規(guī)模的不斷升級(jí),其config數(shù)據(jù)量越來(lái)越大,截止到本文寫作時(shí),config數(shù)據(jù)量最大已列6mbit,雖然xilinx公司有相關(guān)的xc17x系列srom提供使用,但皆為一次性芯片[2]、開(kāi)發(fā)成本較高、代理商供貨周期長(zhǎng)、價(jià)格較高,這給fpga的應(yīng)用及普及帶來(lái)很大的障礙。我們?cè)褂眠^(guò)at&t公司的att17系列電可擦除srom,但是該類srom芯片能與xilinx系列fpga芯片實(shí)現(xiàn)接口的種類不多,且容量小。由于種種原因,其價(jià)格往往是同樣存儲(chǔ)容量的eeprom的五、六倍,甚至更高,并且來(lái)源困難。那么能不能結(jié)合并行加載與串行加載的優(yōu)點(diǎn),從而解決容量fpga數(shù)據(jù)加載的問(wèn)題呢?我們?cè)谧屑?xì)分析了串行加載機(jī)制后,認(rèn)為采用eeprom作為數(shù)據(jù)存儲(chǔ)器,經(jīng)過(guò)可控的并-串轉(zhuǎn)換,應(yīng)該可以實(shí)現(xiàn)數(shù)據(jù)加載。下面的xilinx公司virtex系列xcv100芯片為例,采用atmel公司1兆位的at29c010a進(jìn)行數(shù)據(jù)存儲(chǔ),采用xilinx公司9500系列xc95108芯片作為加載控制器件進(jìn)行設(shè)計(jì)。
     1 原理設(shè)計(jì)
     原理性master serial模式串行加載時(shí)序如圖1所示。在該加載模式中,比較重要的幾個(gè)信號(hào)為/init、cclk、datain、done。/init表示fpga芯片上電時(shí)或者當(dāng)/program信號(hào)為低時(shí)fpga內(nèi)部數(shù)據(jù)初始化過(guò)程,并作為外送信號(hào)給數(shù)據(jù)加載控制器件作為復(fù)位之用。當(dāng)/init信號(hào)躍為高電平時(shí),cclk開(kāi)始啟動(dòng)。加載數(shù)據(jù)datain在cclk的上升沿打入,與通用串行通訊相類似,加載數(shù)據(jù)流也有開(kāi)始位與結(jié)束位,且以數(shù)據(jù)幀的方式接收。一旦發(fā)生錯(cuò)誤,fpga立即停止接收數(shù)據(jù),并將/init信號(hào)置為低電平,因此該信號(hào)又稱為錯(cuò)誤指示信號(hào)。當(dāng)數(shù)據(jù)全部接受并驗(yàn)證無(wú)誤后,fpga將done信號(hào)置為“1”[3]。
     在分析了fpga加載數(shù)據(jù)流特性后,可以得出這樣一個(gè)結(jié)論:保證cclk與datain之間的嚴(yán)格同步與連續(xù)性,就可以實(shí)現(xiàn)加載。基于此結(jié)論,在生成加載數(shù)據(jù)格式時(shí),產(chǎn)生單片srom串行格式,對(duì)于xilinx公司的fpga系列,該格式為.mcs文件格式;然后
熱門點(diǎn)擊
- OrCAD/PSpice9直流掃描分析的應(yīng)用
- protel99se和DXP的使用感想
- CCS噪聲模型:用于串?dāng)_噪聲分析的高精確度建
- Xtreme PCB軟件允許多位工程師同時(shí)布
- ORCAD/PSPICE
- ALLEGRO布線缺點(diǎn)之我見(jiàn)
- PCB LAYOUT技術(shù)大全---初學(xué)者必看
- 利用Liberty CCS建模技術(shù)實(shí)現(xiàn)更高精
- RGB信號(hào)走表層還是地層?
- VHDL中Loop動(dòng)態(tài)條件的可綜合轉(zhuǎn)化
推薦技術(shù)資料
- 泰克新發(fā)布的DSA830
- 泰克新發(fā)布的DSA8300在一臺(tái)儀器中同時(shí)實(shí)現(xiàn)時(shí)域和頻域分析,DS... [詳細(xì)]
- CV/CC InnoSwitch3-AQ 開(kāi)
- URF1DxxM-60WR3系
- 1-6W URA24xxN-x
- 閉環(huán)磁通門信號(hào)調(diào)節(jié)芯片NSDRV401
- SK-RiSC-SOM-H27X-V1.1應(yīng)
- RISC技術(shù)8位微控制器參數(shù)設(shè)
- 多媒體協(xié)處理器SM501在嵌入式系統(tǒng)中的應(yīng)用
- 基于IEEE802.11b的EPA溫度變送器
- QUICCEngine新引擎推動(dòng)IP網(wǎng)絡(luò)革新
- SoC面世八年后的產(chǎn)業(yè)機(jī)遇
- MPC8xx系列處理器的嵌入式系統(tǒng)電源設(shè)計(jì)
- dsPIC及其在交流變頻調(diào)速中的應(yīng)用研究