精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【高云半導體Combat開發套件試用體驗】RISC-V處理器蜂鳥E203在高云FPGA平臺上的移植實踐

開發板試用精選 ? 來源:開發板試用 ? 作者:電子發燒友論壇 ? 2022-11-10 14:41 ? 次閱讀

本文來源電子發燒友社區,作者:yuzhiwen1986, 帖子地址:https://bbs.elecfans.com/jishu_2295853_1_1.html

高云FPGA 平臺介紹

Combat開發套件是以高云半導體 GW2A 系列 FPGA 產品為核心,是高云半導體晨熙?家族第一代產品,內部資源豐富,具有高性能的 DSP資源,高速LVDS 接口以及豐富的 BSRAM 存儲器資源,這些內嵌的資源搭配精簡的FPGA 架構以及 55nm 工藝使 GW2A 系列 FPGA 產品適用于高速低成本的應用場合。
image.png

外設接口管腳說明

本次項目中用到的I/O口如表下描述

信號 FPGA管腳序號 BANK 描述 I/O電平
SYS_CLK M19 2 50Mhz有源晶振 3.3V
FPGA_RST AB3 5 復位,低電平有效 3.3V
LED1 U17 3 LED指示燈1 1.5V
LED2 U19 3 LED指示燈2 1.5V
LED3 U18 3 LED指示燈3 1.5V
LED4 T17 3 LED指示燈4 1.5V
QSPI_DQ[0]
QSPI_DQ[0]
QSPI_DQ[0]
QSPI_DQ[0]
QSPI_CS
QSPI_SCK
MCU_TCK C22 2
MCU_TDI F22 2
MCU_TMS J22 2
MCU_RST V14 4
MCU_WAKE_UP R18 3 按鍵3喚醒MCU 1.5V
PMU_PADRST T19 3 按鍵2復位PMU 1.5V
PMU_PADRST

時鐘復位電路

開發板為 FPGA 提供了一個 50MHz 有源晶振,連接到了全局時鐘引腳。
image.png

LED指示燈

開發板中有 4 個綠色 LED 燈,用戶可通過 LED 燈顯示所需狀態。可通過以下方式對 LED 燈進行測試:? 當 FPGA 對應管腳輸出信號為邏輯高電平時,LED 被點亮;當輸出信號為低電平時,LED 熄滅
image.png

MCU 喚醒電路

開發板有4個按鍵開關,用戶可以通過手動控制對應FPGA管腳輸入低電平,觸發MCU喚醒。本項目中使用KEY2/3/4作為復位和喚醒電路,電路圖如下
image.png

復用J17作為MCU的JTAG調試接口
LCD_PWM ->C22 -> MCU_TCK

LCD_SDA ->F22 ->MCU_TDI

LCD_VSYNC->G22 -> MCU_TDO

LCD_DE -> J22 ->MCU_TMS

LCD_B7 ->V14 -> MCU_RST
image.png

FPGA 原型平臺和MCU調試仿真器

FPGA 原型主要分為兩部分:FPGA 開發板,和調試器。接下來章節分別予以介紹。完整的 FPGA 開發板原型(包括 FPGA 開發板和MCU調試器)如下圖所示:
image.png

蜂鳥E203開源SoC

對于一個處理器核,還需要配套的 SoC 才能具備完整的功能。蜂鳥 E203 內核不僅僅完全開源了 Core的實現,還搭配完整的開源 SoC 平臺,請參見《蜂鳥 E203 開源 SoC 簡介》了解更多 SoC 的介紹與信息。蜂鳥 E203 開源 SoC 的Subsys 模塊的款圖如下:
image.png

Linux平臺環境搭建

這里以Ubuntu系統為例進行說明。

代碼下載和基本環境配置

  1. 下載E203源碼
git clone https://github.com/SI-RISCV/e200_opensource.git
  1. 下載iverilog源碼
`git clone https://github.com/steveicarus/iverilog.git
  1. 切換到v11分支(必須用V11或以上的版本)
git checkout v11-branch
  1. 安裝依賴
sudo apt-get install autoconf gperf flex bison build-essential
  1. 編譯、安裝iverilog和vvpsh autoconf.sh
./configure
make
make install
  1. 創建python軟鏈接

查看一下python的版本,我的還是Python2,新更新一下:
image.png

查看一下/usr/bin目錄下面有哪些版本,如果有python3版本就創建一個新的軟連接
image.png
sudo ln -s /usr/bin/python3.8 /usr/bin/python
其中/usr/bin/python3.8對應你實際安裝的python版本。7. 安裝gtkwave

sudo apt-get install gtkwave

HBird-E-SDK 下載和配置1. 將 HBird-E-SDK 項目下載到本機 Linux 環境中,使用如下命令:

git clone [https://github.com/SI-RISCV/hbird-e-sdk](https://github.com/SI-RISCV/hbird-e-sdk)
  1. 由于編譯軟件程序需要使用到GNU 工具鏈,假設使用完整的 riscv-tools 來自己編譯 GNU 工具鏈則費

時費力,因此本文檔推薦使用預先已經編譯好的 GCC 工具鏈。我們已經將工具鏈上傳至網盤,網盤具體地址記載于

hbird-e-sdk 項目(https://github.com/SI-RISCV/hbird-e-sdk)的 prebuilt_tools 目錄下的 README

中,用戶可以在網盤中的“RISC-V SoftwareTools/RISC-V_GCC_201801_Linux”目錄下載壓縮包gnu-mcu-eclipse-riscv-none-gcc-7.2.0-2-20180111-2230-centos64.tgz和gnu-mcu-eclipse-openocd-0.10.0-6-20180112-1448-centos64.tgz,然后按照如下步驟解壓使用(注意:上述鏈接網盤上的工具鏈可能會不斷更新,用戶請注意自行判斷使用最新日期的版本,下列步驟僅為特定版本的示例)。

cp gnu-mcu-eclipse-riscv-none-gcc-7.2.0-2-20180111-2230-centos64.tgz ~/
cp gnu-mcu-eclipse-openocd-0.10.0-6-20180112-1448-centos64.tgz ~/

//將兩個壓縮包均拷貝到用戶的根目錄下

cd ~/

tar -xzvf gnu-mcu-eclipse-riscv-none-gcc-7.2.0-2-20180111-2230-centos64.tgz

tar –xzvf gnu-mcu-eclipse-openocd-0.10.0-6-20180112-1448-centos64.tgz

// 進入根目錄并解壓上述兩個壓縮包,解壓后可以看到一個生成的 gnu-mcu-eclipse 文件夾

cd ~/hbird-e-sdk    // 進入 hbird-e-sdk 目錄文件夾
mkdir ~p work/build/openocd/prefix
// 在 hbird-e-sdk 目錄下創建上述這個 prefix 目錄 cd work/build/openocd/prefix // 進入到 prefix 該目錄
ln –s ~/gnu-mcu-eclipse/openocd/0.10.0-6-20180112-1448/bin bin

// 將用戶根目錄下解壓的

OpenOCD 目錄下的 bin 目錄作為軟鏈接鏈接到該

prefix 目錄下

cd ~/hbird-e-sdk    // 進入 hbird-e-sdk 目錄文件夾
mkdir -p work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix/

// 在 hbird-e-sdk 目錄下創建上述這個 prefix 目錄

cd work/build/riscv-gnu-toolchain/riscv32-unknown-elf/prefix

// 進入到 prefix 該目錄

ln -s ~/gnu-mcu-eclipse/riscv-none-gcc/7.2.0-2-20180111-2230/bin bin

// 將用戶根目錄下解壓的 GNU

Toolchain 目錄下的 bin 目錄作為軟鏈接鏈接到

// 該 prefix 目錄下 注意:此步驟完成工具鏈的安裝之后,后續開發程序示例無需重復執行此步驟。

Verilog 仿真測試

使用E203 源代碼運行基于 Verilog 的仿真測試程序,可以使用如下步驟進行。

**步驟一:**準備好自己的電腦環境,可以在公司的服務器環境中運行,如果是個人用戶,推薦如下配置:

(1)本項目使用 Ubuntu 18操作系統

(2)由于 Linux 操作系統的版本眾多,推薦使用 Ubuntu 18.04 版本的 Linux 操作系統有關如何安裝 Ubuntu 操作系統本文不做介紹,有關 Linux 的基本使用本文也不做介紹,請用戶自行查閱資料學習。

**步驟二:**將 e200_opensource 項目下載到本機 Linux 環境中,使用如下命令:

git clone https://github.com/SI-RISCV/e200_opensource.git

**步驟三:**編譯 RTL 代碼,使用如下命令:

cd /vsim

// 進入到 e200_opensource 目錄文件夾下面的 vsim 目錄。

make install CORE=e203

// 運行該命令指明需要為 e203 進行編譯,該命令會在 vsim 目錄下生成一個 install

// 子文件夾,在其中放置所需的腳本,且將腳本中的關鍵字設置為 e203。

make compile

// 編譯 Core 和 SoC 的 RTL 代碼

// 注意:在此步驟之中,編譯 Verilog 代碼需要使用到仿真器工具,在 github 上的 Makefile

// 中使用的是免費的 iverilog 工具,如果需要使用商業 EDA 的用戶需要自行修改 Makefile 中的

// 對于免費的 iverilog 工具如何安裝請用戶在互聯網上自行搜索。

步驟四:運行默認的一個 testcase(測試用例),使用如下命令:

make  run_test

注意:在此步驟中,運行仿真需要使用仿真器工具,在 github 上的 Makefile 中此部分空缺,實際運行的是”echo PASS”命令打印一個虛假的 PASS 到 log 文件中。用戶需要使用真正的仿真器運行仿真得到真實的運行結果。

注意:make run_test 將執行 e200_opensource/riscv-tools/

riscv-tests/isa/generated 目錄中的一個默認 testcase,如果希望運行所有的

回歸測試,請參見步驟五。
image.png

當用make去編譯Makefile文件的時候,如果有出現/bin/sh:Syntax error: 的錯誤時候,一般是當前默認的shell不正確的原因首先可以用命令ls -l /bin/sh 看看當前默認的是什么shell,Ubuntu一般默認為bash再用要修改默認的shell,可以采用命令sudo dpkg-reconfigure dash。會出現如下窗口,然后選擇否。

步驟五:運行回歸(regression)測試集,使用如下命令:

make regress_run

注意:這使用 e200_opensource/ riscv-tools/riscv-tests/isa/generated 目錄中 testcases,逐個的運行 testcase。

步驟六:查看回歸測試結果: make

regress_collect // 該命令將收集步驟五中運行的測試集的結果,將打印若干行的結果,每一行對應一個測 // 試用例,如果那個測試用例運行通過,那一行則打印的 PASS,如果運行失敗,那一行則 // 打印的 FAIL。如圖 所示
image.png

代碼編譯下載

工程導入

在Opensource

目錄下FPGA文件夾創建一個新的文件夾gowin,

將相關的rtl文件拷入,并對top文件進行的對應修改,文件目錄如下圖:
image.png

打開gowin軟件,創建工程,選擇好對應的器件并導入文件。導入具體軟件操作說明參見SUG100-1.7_Gowin云源軟件用戶指南,本項目中導入之后界面如下:
image.png

程序編譯和下載

修改完程序之后保存點擊Process 點擊Place&Route編譯,編譯通過之后前面會出現綠
image.png

.編譯通過后雙擊Program Device彈出下載窗口,點擊開始下載
image.png

運行和調試軟件

HBird-E-SDK介紹

HBird-E-SDK 并不是一個軟件,它本質上是由一些 Makefile、板級支持包(Board Support Package,

BSP)、腳本和軟件示例組成的一套開發環境。HBird-E-SDK 基于 Linux 平臺,使用標準的 RISC-V GNU

工具鏈對程序進行編譯,使用 OpenOCD+GDB 將程序下載到硬件平臺中并進行調試。

HBird-E-SDK 代碼結構
image.png

編譯 demo_gpio 示例程序,使用如下命令: cd // 進入 hbird-e-sdk 目錄文件夾 make dasm PROGRAM=demo_gpio NANO_PFLOAT=0 //注意:由于 Demo_GPIO 程序的 printf 函數不需要輸出浮點數,上述選項 NANO_PFLOAT=0 指明 newlib-nano 的 printf 函數無需支持浮點數,請參見《RISC-V 架構與嵌入式開發快速入門》第 11 章了解相關信 息。

將編譯好的

demo_gpio 程序下載至 FPGA 原型開發板中,使用如下命令:
image.png
很遺憾,我這里因為使用的下載器有問題,最終還是沒有成功下載MCU bin文件。
但是基本的流程走通了。時間有限試用期已經結束了。期待下一次還會有繼續!


                                        
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 高云半導體
    +關注

    關注

    20

    文章

    123

    瀏覽量

    50467
  • RISC-V
    +關注

    關注

    44

    文章

    2229

    瀏覽量

    46026
  • E203
    +關注

    關注

    0

    文章

    8

    瀏覽量

    110
收藏 人收藏

    評論

    相關推薦

    精彩回顧 : 向新而行 云啟未來——2024高云FPGA線上技術研討會

    、CTO王添平、資深AE經理鄭傳琳、資深運營總監李士明、分別從公司發展、Arora-V高性能產品及特色、IP應用及參考設計、高云產品質量體系等方面,分享了高云半導體
    發表于 11-18 18:24 ?137次閱讀
    精彩回顧 : 向新而行 云啟未來——2024<b class='flag-5'>高云</b><b class='flag-5'>FPGA</b>線上技術研討會

    2024高云FPGA線上技術研討會成功舉辦

    本次研討會上,高云半導體市場總監趙生勤、CTO王添平、資深AE經理鄭傳琳、資深運營總監李士明、分別從公司發展、Arora-V高性能產品及特色、IP應用及參考設計、高云產品質量體系等方面
    的頭像 發表于 11-12 17:15 ?456次閱讀

    JH-7110 RISC-V開發套件正式開源

    近日,賽昉科技RVspace生態社區正式開源昉·驚鴻-7110(JH-7110)DevKit開發套件,同時提供其原理圖和PCB參考設計源文件,旨在為客戶提供全面的RISC-V芯片平臺
    的頭像 發表于 06-15 08:19 ?422次閱讀
    JH-7110 <b class='flag-5'>RISC-V</b><b class='flag-5'>開發套件</b>正式開源

    國內首家!德國萊茵TüV高云半導體頒發產品認證證書

    近日,國際獨立第三方檢測、檢驗和認證機構德國萊茵TüV集團(以下簡稱“TüV萊茵”)為廣東高云半導體科技股份有限公司(以下簡稱“高云
    的頭像 發表于 05-15 10:22 ?617次閱讀
    國內首家!德國萊茵Tü<b class='flag-5'>V</b>為<b class='flag-5'>高云</b><b class='flag-5'>半導體</b>頒發產品認證證書

    高云半導體與香港理工大學共探FPGA技術智能電網領域的應用

    2024年5月3日,廣東高云半導體科技股份有限公司(下稱“高云半導體”)與香港理工大學電氣電子信息學院港達成框架的合作意向,旨在深化雙方
    的頭像 發表于 05-06 15:00 ?855次閱讀

    回顧:高云半導體成功舉辦22nm產品及方案研討會

    近日,高云半導體分別在杭州和成都成功舉辦了盛大的22nm產品及方案研討會,研討會吸引了眾多FPGA行業專家的關注。此次研討會不僅展示了高云半導體
    發表于 04-25 15:11 ?320次閱讀
    回顧:<b class='flag-5'>高云</b><b class='flag-5'>半導體</b>成功舉辦22nm產品及方案研討會

    Achronix FPGA增加對Bluespec提供的基于Linux的RISC-V處理器的支持,以實現可擴展數據處理

    Achronix半導體公司,以及RISC-V工具和IP領域的行業領導者Bluespec有限公司,日前聯合宣布推出一系列支持Linux的RISC-V處理器,這些
    的頭像 發表于 04-19 18:08 ?677次閱讀

    Achronix與Bluespec聯合宣布推出一款支持Linux的RISC-V處理器

    高性能FPGA芯片和嵌入式FPGA(eFPGA)硅知識產權(IP)領域的領先企業Achronix半導體公司,以及RISC-V工具和IP領域的
    的頭像 發表于 04-15 16:23 ?551次閱讀

    品讀《基于FPGARISC-V的嵌入式系統設計》

    FPGA 1.3 RISC-V 1.4 小腳丫 FPGA 開發平臺 1.5 C/C++,Make 與工具鏈 1.6 嵌入式操作系統 1.7
    發表于 03-29 00:06

    fpgarisc-v處理器的區別

    FPGA(現場可編程門陣列)和RISC-V處理器多個方面存在顯著的區別。
    的頭像 發表于 03-27 14:21 ?1043次閱讀

    高云FPGA簡介

    高云是一家專業從事現場可編程邏輯器件(FPGA)研發與設計的國產FPGA高科技公司,致力于向客戶提供從芯片、EDA開發軟件、IP、開發板到整
    發表于 01-28 17:35

    怎么設置蜂鳥E203 soc外設的可配置寄存讀寫屬性?

    想請問怎么設置蜂鳥E203 soc外設的可配置寄存讀寫屬性?可讀可寫、只寫、只讀三種模式具體怎么設置呢?目前是默認情況,新添加的外設寄存寫不進去數據,讀返回為0
    發表于 01-15 08:08

    RISC-V處理器對應什么開發環境?

    RISC-V處理器是開源的,那開發環境需要廠商自己開發還是沿用傳統的開發環境呢?比如keil
    發表于 01-13 19:18

    E203不顯示pass與fail是怎么回事,.log里什么都沒有還沒報錯?

    蜂鳥E203自測試用例失敗,不顯示pass與fail怎么回事,.log里什么都沒有,還沒報錯
    發表于 01-10 07:56

    怎么設置蜂鳥E203 soc外設的可配置寄存讀寫屬性?

    想請問怎么設置蜂鳥E203 soc外設的可配置寄存讀寫屬性?可讀可寫、只寫、只讀三種模式具體怎么設置呢?目前是默認情況,新添加的外設寄存寫不進去數據,讀返回為0
    發表于 01-10 06:24