1 概述
為了便于初學(xué)者能夠快速地學(xué)習(xí)RISC-V CPU設(shè)計和RISC-V嵌入式開發(fā),蜂鳥E203開源MCU原型SoC(在本文中將其簡稱為“MCU SoC”或者“SoC”)定制了基于Xilinx FPGA的專用開發(fā)板(在本文中將其簡稱為“FPGA開發(fā)板”)和專用JTAG調(diào)試器(在本文中將其簡稱為“JTAG調(diào)試器”)。
完整的FPGA開發(fā)板原型(包括FPGA開發(fā)板和調(diào)試器)如圖1-1所示。
圖1-1 蜂鳥FPGA開發(fā)板和JTAG調(diào)試器,后文將分別予以詳述。
2 蜂鳥FPGA開發(fā)板概述
2.1 FPGA開發(fā)板總體說明
為了便于蜂鳥FPGA開發(fā)板的使用,F(xiàn)PGA開發(fā)板具備如下特點:
一板兩用,該開發(fā)板不僅可以用于一塊FPGA開發(fā)板作為電路設(shè)計使用,同時由于其預(yù)燒了蜂鳥E203開源SoC(包括E203內(nèi)核),因此其可以直接作為一塊MCU SoC原型開發(fā)板進行嵌入式軟件開發(fā)。即:
(1)對于不懂FPGA軟件開發(fā)的用戶完全無需做任何的操作,該開發(fā)板會預(yù)先燒寫開源的蜂鳥E203 Core和配套SoC,上電后即可當(dāng)做一塊MCU嵌入式開發(fā)板來用。
(2) 對于了解FPGA使用的硬件用戶而言,也可以將其當(dāng)做普通的FPGA 開發(fā)板來燒寫普通的Verilog電路以進行FPGA開發(fā)。
由于其預(yù)先燒寫的蜂鳥E203 Core和配套SoC源代碼完全開源,可以對其任意進行修改或二次開發(fā)。
并且由于開源的蜂鳥E203 MCU SoC的 “FPGA燒寫文件(mcs格式)”會上傳到:
https://github.com/SI-RISCV/e200_opensource/tree/master/fpga/nucleikit/prebuilt_mcs 目錄下,用戶可以隨時重新燒寫此FPGA板將其恢復(fù)成為預(yù)裝的MCU嵌入式開發(fā)板。
2.2 FPGA開發(fā)板的購買途徑
FPGA開發(fā)板的淘寶購買網(wǎng)頁鏈接:
https://item.taobao.com/item.htm?id=580813056318
¥HoCVbR7Z0I3¥
(復(fù)制該鏈接,打開手機淘寶即可查看)
2.3 FPGA開發(fā)板的硬件指標
蜂鳥E203專用FPGA開發(fā)板是一款入門級Xilinx FPGA開發(fā)板,如圖2-1所示。
圖2-1 蜂鳥FPGA開發(fā)板總體圖該FPGA開發(fā)板的硬件特性如下:
使用的FPGA型號為Xilinx XC7A100T。
板載雙晶振設(shè)計:100MHz主時鐘和32.768K RTC時鐘。
配備單獨直流5V供電,并設(shè)有電源開關(guān),如圖2-1中的“DC:5V供電及開關(guān)”標注。
配備獨立的FPGA_RESET按鍵,用戶可用此按鍵作為FPGA的復(fù)位按鍵。
配備多達126個引出的FPGA GPIO,用于用戶自定義使用。
配備板載的Xilinx Platform Cable USB JTAG下載器,用于對FPGA進行比特流的燒寫,如圖2-1中的“FPGA JTAG”標注。
配備兩顆MT41K128M16JT-125K DDR III 顆粒。
配備獨立的128M-bit FPGA SPI Flash,此Flash用于存儲mcs格式的比特流文件:
(1)熟悉Vivado和Xilinx FPGA使用的用戶應(yīng)該了解,bitstream文件燒錄到FPGA中去之后FPGA不能掉電,因為一旦掉電之后FPGA燒錄的內(nèi)容即丟失,需要重新使用Vivado的Hardware Manager進行燒錄方能使用。為了方便用戶使用,Xilinx的FPGA開發(fā)板可以將需要燒錄的內(nèi)容寫入開發(fā)板上的Flash中(以mcs格式),然后在每次FPGA上電之后通過硬件電路自動將需要燒錄的內(nèi)容從外部的Flash中讀出并燒錄到FPGA之中(該過程非常的快,不影響用戶使用)。由于Flash是非易失性的內(nèi)存,具有掉電后仍可保存的特性,因此意味著將需要燒錄的內(nèi)容寫入 Flash后,每次掉電后無需使用Hardware Manager人工重新燒錄(而是硬件電路快速自動完成),即等效于,F(xiàn)PGA上電即可使用。
(2)除了上電自動對FPGA重新進行燒錄外,用戶還可以通過強行按FPGA開發(fā)板上的“FPGA_PROG”按鍵觸發(fā)硬件電路使用此Flash中的內(nèi)容對FPGA重新進行燒錄。FPGA開發(fā)板上的“FPGA_PROG”按鍵位置請參見圖2-1中標注所示。
為了便于此開發(fā)板直接作為MCU原型嵌入式開發(fā)板使用,將蜂鳥E203開源SoC的頂層引腳直接連到開發(fā)板上,并配有明顯的絲印標注。請參見第2.5節(jié)了解詳細介紹。
為了便于此開發(fā)板作為常規(guī)FPGA開發(fā)板使用,配備分離的撥碼開關(guān)和LED燈,請參見第2.6節(jié)了解詳細介紹。
2.4 FPGA開發(fā)板的電路原理圖
該開發(fā)板的電路原理圖保存于:
https://github.com/SI-RISCV/e200_opensource/tree/master/boards目錄下,請用戶自行查閱。
(查看方式:1.下滑頁面到文章最末,點擊“閱讀原文”查看e200_opensource項目總鏈接;2.在公眾號后臺回復(fù)“鏈接”,即可訪問)
2.5 FPGA開發(fā)板的MCU部分
為了便于此開發(fā)板直接作為MCU原型嵌入式開發(fā)板使用,將“蜂鳥E203開源SoC”(簡稱SoC)的頂層引腳直接連到開發(fā)板上,并配有明顯的絲印標注,詳細描述如圖2-2中所示,其要點如下:
FPGA預(yù)先燒寫成為“蜂鳥E203開源MCU SoC”(簡稱SoC)
為了實現(xiàn)MCU的功能,在FPGA開發(fā)板上專門配備了一個Nor Flash用于存儲MCU的軟件程序。
MCU SoC的兩個輸入時鐘輸入分別按照如下方式產(chǎn)生:
(1)低速的實時時鐘直接由FPGA開發(fā)板上的32.768KHz時鐘源輸入(2)高速時鐘由FPGA開發(fā)板上的100MHz時鐘經(jīng)過FPGA內(nèi)部PLL降頻而得(16MHz)。
將SoC的相關(guān)輸入輸出管腳明確的做到FPGA開發(fā)板上,并且用印刷字體明確的表明端口號。
有關(guān)此SoC的輸入輸出管腳列表的詳細信息,
請參見https://github.com/SI-RISCV/e200_opensource/blob/master/doc目錄下的文檔《蜂鳥E203開源SoC簡介》。
注意:所有的管腳都只是映射到FPGA內(nèi)部的普通端口(雙向IO)上,然后通過FPGA Project通過設(shè)置端口映射把FPGA端口映射到這些外部預(yù)定義的開發(fā)板引腳。有關(guān)FPGA Project的詳細信息請參見:https://github.com/SIRISCV/e200_opensource/blob/master/doc 目錄下的文檔《蜂鳥E203快速上手介紹》。
更多詳細描述如圖2-2中所示。
圖2-2 蜂鳥FPGA開發(fā)板的MCU定制部分
2.6 FPGA開發(fā)板的常規(guī)功能部分
為了便于此開發(fā)板作為常規(guī)FPGA開發(fā)板使用,配備分離的撥碼開關(guān)和LED燈,如圖2-3中所示。
注意:此組撥碼開關(guān)和LED并沒有被連接到FPGA的管腳上,用戶可以自由的進行跳線使其控制開發(fā)板上的其他信號。如圖2-3中所示,用戶可以通過用杜邦線跳線將“撥碼開關(guān)”與MCU SoC的GPIO接口連接,相當(dāng)于通過撥碼開關(guān)來產(chǎn)生GPIO的輸入,從而可以編程構(gòu)建形象化的簡單Demo。
圖2-3 蜂鳥FPGA開發(fā)板的撥碼開關(guān)和LED燈以及跳線示例
2.7 燒寫蜂鳥E203項目至FPGA開發(fā)板
有關(guān)如何燒寫蜂鳥E203項目(包括SoC和處理器內(nèi)核)至此FPGA開發(fā)板的具體操作步驟,請參見https://github.com/SI-RISCV/e200_opensource/blob/master/doc目錄下的文檔《蜂鳥E203快速上手介紹》。
2.8 使用FPGA開發(fā)板進行軟件開發(fā)與調(diào)試
有關(guān)如何使用FPGA開發(fā)板進行軟件開發(fā)與調(diào)試的具體操作步驟,請參見https://github.com/SI-RISCV/e200_opensource/blob/master/doc目錄下的文檔《蜂鳥E203快速上手介紹》。
(查看方式:1.下滑頁面到文章最末,點擊“閱讀原文”查看e200_opensource項目總鏈接;2.在公眾號后臺回復(fù)“鏈接”,即可訪問)
3 蜂鳥JTAG調(diào)試器
3.1 JTAG調(diào)試器總體說明
圖3-1 蜂鳥E203專用的JTAG調(diào)試器
為了便于初學(xué)者能夠快速地學(xué)習(xí)RISC-V嵌入式開發(fā),“蜂鳥MCU SoC”定制了專用的JTAG調(diào)試器,該調(diào)試器具有如下特性:
調(diào)試器的一端為普通U盤接口,便于直接將其插入主機PC的USB接口,另一端為標準的4線JTAG接口和2線UART接口。
調(diào)試器具備USB轉(zhuǎn)JTAG功能,通過標準的4線JTAG接口與蜂鳥E203 FPGA開發(fā)板連接。由于蜂鳥E203 內(nèi)核支持標準的JTAG接口,通過此接口可以程序下載或進行交互式調(diào)試。
-
FPGA
+關(guān)注
關(guān)注
1625文章
21620瀏覽量
601232 -
JTAG
+關(guān)注
關(guān)注
6文章
397瀏覽量
71557
原文標題:蜂鳥FPGA開發(fā)板和JTAG調(diào)試器介紹
文章出處:【微信號:real_farmer,微信公眾號:硅農(nóng)亞歷山大】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論