<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è) > 嵌入式系統 > 設計應用 > Leon3的接口配置設計

Leon3的接口配置設計

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

摘要:與通常采用外圍的CPLD器件和CPU來(lái)產(chǎn)生控制邏輯的方法不同,本文了采用嵌入到FPGA的開(kāi)源CPU軟核來(lái)控制實(shí)現Virtex系列FPGA的SelectMap的方法,可將其應用于對FPGA芯片的在線(xiàn)。該方法成本低,不局限于某一類(lèi)型的FPGA芯片,減少了外圍分立元件的使用,增強了的靈活性。仿真結果表明該設計滿(mǎn)足SelectMap配置所需控制邏輯要求,可以完成FPGA的并行配置。

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

  關(guān)鍵詞:FPGA;嵌入式CPU;軟核;SelectMap接口

  引言

  隨著(zhù)FPGA和SOPC技術(shù)的發(fā)展,基于FPGA的嵌入式系統與傳統的嵌入式系統相比,具有設計周期短、設計風(fēng)險和設計成本低、集成度高、靈活性大、維護和升級方便、硬件缺陷修復等優(yōu)點(diǎn)?;贔PGA的嵌入式系統設計技術(shù)和市場(chǎng)逐漸成熟,使得嵌入式CPU軟核(如Xilinx公司推出的MicroBlaze、Altera公司的Nios、歐空局開(kāi)發(fā)的軟核等)的大量應用成為可能。

  本文結合具體應用需求,介紹了利用嵌入式CPU Leon3軟核處理器對Virtex系列FPGA的配置進(jìn)行控制的方法。此系統能夠實(shí)現FPGA配置數據的重構,并且減少了外圍CPU和CPLD器件的使用,具有很好的應用價(jià)值。

  1 Leon3軟核

  Leon3是歐空局開(kāi)發(fā)的32位CPU軟核,其標準版是一種開(kāi)源的軟核,使用GNU LGPL授權協(xié)議,可以免費地應用于研究、教學(xué)和商業(yè)目的。Leon3軟核使用VHDL語(yǔ)言描述,與SPARC V8兼容,使用7級流水線(xiàn),集成了全流水的IEEE-754浮點(diǎn)處理器,提高了對多處理器的支持。由于Leon系列指令集符合SPARC V8標準,外部總線(xiàn)符合AMBA標準,兼容軟件和IP核資源極其豐富,加上其開(kāi)放源代碼的策略,對它的研究和應用受到了廣泛的關(guān)注。Leon3軟核具有良好的可配置性和可移植性,能夠根據需要靈活地選擇外圍控制器。并且該軟核不是FPGA廠(chǎng)商推出的,因此可以應用于不同類(lèi)型的FPGA芯片。Leon3開(kāi)源軟核的Grlib IP庫中提供了多種功能模塊,如串口控制器、存儲器控制器、通用可編程I/O等,把該軟核及其外圍的控制模塊集成到FPGA中,構成一個(gè)嵌入式片上系統。

  2 SelectMap接口配置系統設計

  2.1 Virtex系列FPGA配置方式

  Virtex系列FPGA基于SRAM工藝,共有4種配置方式:主串(master serial)、從串(slave setial)、SelectMap和邊界掃描(boundarysca-n)。串行(主串或從串)模式需要的配置信號少(PROGRAM、CCLK、DIN、INIT、DONE),FPGA在配置時(shí)鐘的上升沿接收1位配置數據,該配置方式速度較慢。邊界掃描模式?jīng)]有存儲芯片,掉電后需重新配置,所以該種配置方式多用于調試階段。SelectMap模式是一種8位并行配置模式,它是Virtex系列FPGA最快的一種配置模式,其配置時(shí)鐘最高可達66MHz,每個(gè)配置時(shí)鐘周期內有8位配置數據下載到FPGA內。在對配置速度要求較高的一些應用場(chǎng)合,一般采用SelectMap配置方式。

  SelectMap配置方式所需引腳及相應功能如表1所列。表中BUSY信號是握手信號,只有當配置時(shí)鐘的頻率超過(guò)50MHz時(shí)才起作用,本設計的配置時(shí)鐘頻率低于50MHz,因此不使用BUSY信號。M(2:0)是模式選擇信號,在SelectMap配置模式下,M(2:0)應置為110。

2.2 SelectMap接口配置硬件設計實(shí)現

  本文設計的SelectMap接口配置系統由兩片FPGA和存儲器(Flash)構成,如圖1所示。設計中FPGA1選用了Xilinx公司Virtex系列芯片Vir-tex-5 XC5VSX95T,是需要進(jìn)行配置的芯片。FPGA2內部嵌入了Leon3 CPU軟核,可利用該CPU軟核的存儲控制器模塊對Flash進(jìn)行讀寫(xiě)控制;利用FPGA內部豐富的資源,在FPGA2內部集成一個(gè)自定義的SelectMap接口控制IP核,主要用來(lái)產(chǎn)生FPGA的配置信號,這些SelectMap配置信號的狀態(tài)由嵌入在FPGA2內部的CPU Leon3軟核監控。該設計采用開(kāi)源的Leon3軟核CPU,并且充分利用了FPGA豐富的資源,與通常的SelectMap配置系統相比,設計成本低,設計較靈活。

 Flash存儲器采用Intel公司的JS28F256P30T95,具有32 MB的存儲空間,用來(lái)存儲FPGA1的配置數據。因為Flash的每個(gè)地址空間中存儲著(zhù)16位數據,Leon3 CPU處理器讀取Flash地址中的數據,然后把數據以字節形式傳送到FPGA2。這個(gè)過(guò)程中,CPU處理器所在的FPGA2為FPGA1提供配置時(shí)序控制信號。這些控制信號的產(chǎn)生由FPGA2內部集成的SelectMap接口控制IP核實(shí)現。該IP核的功能模塊由3個(gè)寄存器組成:配置寄存器、編程寄存器和輸入寄存器。每次CPU對Flash進(jìn)行讀或寫(xiě)操作時(shí),這些寄存器存儲FPGA1的配置信號數據。其中配置寄存器和編程寄存器為只寫(xiě)寄存器,輸入寄存器為只讀寄存器。詳細的邏輯框圖如圖2所示。CPU數據線(xiàn)在SelectMap接口控制IP核內部寄存器的構成如表2所列。


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

關(guān)鍵詞: 設計 配置 接口 Leon3

評論


相關(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>