簡易檢索 / 詳目顯示

研究生: 苑家齊
Jia-Chi Yuan
論文名稱: AGRVCC : 利用HLS工具自動化產生RISC-V客製化協處理器的整合開發環境
AGRVCC : An IDE to Automatically Generate RISC-V Custom Coprocessors with HLS Tool
指導教授: 黃元欣
Yuan-Shin Hwang
口試委員: 黃元欣
Yuan-Shin Hwang
戴文凱
Wen-Kai Tai
謝仁偉
Jen-Wei Hsieh
學位類別: 碩士
Master
系所名稱: 電資學院 - 資訊工程系
Department of Computer Science and Information Engineering
論文出版年: 2022
畢業學年度: 110
語文別: 中文
論文頁數: 61
中文關鍵詞: 協處理器進階綜合
外文關鍵詞: coprocessor, HLS
相關次數: 點閱:147下載:0
分享至:
查詢本校圖書館目錄 查詢臺灣博碩士論文知識加值系統 勘誤回報
  • 協處理器是用來分擔CPU工作的一種特殊應用的硬體架構,而近年來隨著嵌入式系統的發展,許多協處理器被實現在各種SoC (System-on-Chip) 之上,像是Apple的A14 Bionic chip除了一般目的CPU之外,還有圖形處理器與機器學習使用的矩陣加速器,可以獲得更好的性能表現,但是設計一個協處理器的流程是非常的煩瑣,必須熟悉硬體設計流程與硬體程式的撰寫。
    對於協處理器而言,必須要有對應的指令來驅動,RISC-V ISA(RISC-V instruction set architecture),它是一個開源的指令集架構,它保留了客製化指令的編碼空間,讓使用者非常容易的擴充指令集,添加客製化指令的定義到Compiler之後,Compiler就可以將含有客製化指令的程式編譯成執行檔。
    本論文將以RISC-V ISA為基礎,並利用進階綜合工具,將開發協處理器的流程做簡化,讓軟體設計師們不需了解硬體架構該怎麼實作,只需提供C程式之中想用硬體來處理的函式部份做選取,就可以設計出自己的協處理器,並且燒錄到FPGA之上執行,此外,我們將功能整合到IDE,使用者可以用圖形化的方式來操作。


    The coprocessor is a hardware architecture used to process some special applications of the main CPU, and with the development of embedded systems in recent years, various coprocessors are implemented on various SoCs (System-on-Chip), such as Apple's A14 Bionic chip, in addition to the general purpose CPU, there are also graphics processors and matrix coprocessor for machine learning. It can get better performance, but the process of designing a coprocessor is also very tedious and requires familiarity with the hardware design process and hardware programming.
    For coprocessors, there must be a corresponding instruction to drive, the RISC-V ISA (RISC-V instruction set architecture), which is an open source instruction set architecture, preserves the coding space for custom instructions, allowing users to expand the instruction set easily. you can add custom instructions to your program.
    In this paper, we will use RISC-V ISA as the basis, and use advanced synthesis tools to simplify the process of developing a coprocessor, so that software designers don’t need to know how to implement the hardware architecture, but only need to provide a selection of the function in the C program that they want to handle with hardware, and then they can design their own coprocessor and run on FPGA. In addition, we integrate the functions into the IDE so that users can operate graphically.

    摘要 IV Abstract V 誌謝 VI 目錄 VII 圖目錄 IX 表目錄 XI 第一章 序論 1 1.1研究背景 1 1.2研究動機 2 1.3研究目的 3 1.4研究方法 3 1.5論文架構 4 第二章 相關文獻 6 2.1 RISC-V ISA 6 2.2 Rocket chip generator 9 2.2.1 Chisel programming language 9 2.2.2 Rocket chip 12 2.2.3 RoCC example 14 2.3 High-level synthesis 17 第三章 方法與實作 20 3.1 AGRVCC 20 3.1.1 RoCC interface 21 3.1.2 AGRVCC framework 25 3.1.3 HLS-generated IP integrate into AGRVCC 31 3.2 AGRVCC IDE 35 第四章 實驗結果 41 4.1 實驗環境 41 4.2 評估方法 42 4.3 執行測試 43 第五章 結論與未來展望 46 5.1 結論 46 5.2 未來展望 46 參考文獻 48

    [1] Xilinx, “Vitis HLS Tool 2020.2.” [Online].
    https://www.xilinx.com/support/documentation-navigation/design-hubs/2020-2/dh0090-vitis-hls-hub.html

    [2] Waterman, A., Lee, Y., Patterson, D., Asanovic, K., level Isa, V. I. U., Waterman, A., et al., (2014). The RISC-V instruction set manual. Volume I: User-Level ISA’, version, 2.

    [3] Asanovic, K., Avizienis, R., Bachrach, J., Beamer, S., Biancolin, D., Celio, C., et al., (2016). The rocket chip generator. EECS Department, University of California, Berkeley, Tech. Rep. UCB/EECS-2016-17, 4.

    [4] Snyder, W. (2004). Verilator and systemperl. Paper presented at the North American SystemC Users’ Group, Design Automation Conference.

    [5] Rimas Avizienis,Jonathan Bachrach,David Biancolin,Scott Beamer,Sagar Karandikar,Deborah Soung,Andrew Waterman
    fpga-zynq. [Online].
    https://github.com/ucb-bar/fpga-zynq

    [6] Xilinx, "Vivado Design Suite 2020.2." [Online].
    https://docs.xilinx.com/r/2020.2-English/ug1304-versal-acap-ssdg/Vivado-Design-Suite

    [7] Hara, Y., Tomiyama, H., Honda, S., Takada, H., & Ishii, K. (2008). Chstone: A benchmark program suite for practical c-based high-level synthesis. In 2008 IEEE International Symposium on Circuits and Systems (ISCAS) (pp. 1192-1195). IEEE.

    [8] Bachrach, J., Vo, H., Richards, B., Lee, Y., Waterman, A., Avižienis, R., et al., (2012). Chisel: constructing hardware in a scala embedded language. In DAC Design automation conference 2012 (pp. 1212-1221). IEEE.

    [9] Izraelevitz, A., Koenig, J., Li, P., Lin, R., Wang, A., Magyar, A., et al., (2017). Reusability is FIRRTL ground: Hardware construction languages, compiler frameworks, and transformations. In 2017 IEEE/ACM International Conference on Computer-Aided Design (ICCAD) (pp. 209-216). IEEE.

    [10] Lattner, C., & Adve, V. (2004, March). LLVM: A compilation. framework for lifelong program analysis & transformation. In International Symposium on Code Generation and Optimization, 2004. CGO 2004. (pp. 75-86). IEEE.

    [11] Asanovic, K., Patterson, D. A., & Celio, C. (2015). The berkeley out-of-order machine (boom): An industry-competitive, synthesizable, parameterized risc-v processor. University of California at Berkeley Berkeley United States.

    [12] Lee, Y., Waterman, A., Avizienis, R., Cook, H., Sun, C., Stojanović, V., & Asanović, K. (2014). A 45nm 1.3 GHz 16.7 double-precision GFLOPS/W RISC-V processor with vector accelerators. In ESSCIRC 2014-40th European Solid State Circuits Conference (ESSCIRC) (pp. 199-202). IEEE.

    [13] Schmidt, C., & Izraelevitz, A. (2015). A fast parameterized sha3 accelerator. In tech. rep.: EECS Department, University of California.

    [14] Genc, H., Haj-Ali, A., Iyer, V., Amid, A., Mao, H., Wright, J., et al., (2019). Gemmini: An agile systolic array generator enabling systematic evaluations of deep-learning architectures. arXiv preprint arXiv:1911.09925, 3, 25.

    [15] Coussy, P., Gajski, D. D., Meredith, M., & Takach, A. (2009). An introduction to high-level synthesis. IEEE Design & Test of Computers, 26(4), 8-17.

    [16] Eclipse IDE. [Online].
    https://www.eclipse.org/ide/

    [17] riscv-llvm. [Online].
    https://github.com/riscv/riscv-llvm.

    無法下載圖示 全文公開日期 2025/09/05 (校內網路)
    全文公開日期 本全文未授權公開 (校外網路)
    全文公開日期 本全文未授權公開 (國家圖書館:臺灣博碩士論文系統)
    QR CODE