Skip navigation

DSpace

機構典藏 DSpace 系統致力於保存各式數位資料(如:文字、圖片、PDF)並使其易於取用。

點此認識 DSpace
DSpace logo
English
中文
  • 瀏覽論文
    • 校院系所
    • 出版年
    • 作者
    • 標題
    • 關鍵字
    • 指導教授
  • 搜尋 TDR
  • 授權 Q&A
    • 我的頁面
    • 接受 E-mail 通知
    • 編輯個人資料
  1. NTU Theses and Dissertations Repository
  2. 電機資訊學院
  3. 電子工程學研究所
請用此 Handle URI 來引用此文件: http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/84103
標題: KawPow演算法硬體架構實現於FPGA
Hardware Implementation of KawPow Algorithm on FPGA
作者: Chia-Chi Chang
張家齊
指導教授: 李致毅(Jri Lee)
關鍵字: 區塊鏈,Ravencoin,FPGA,KawPow,KawPow硬體架構分析,
Blockchain,Ravencoin,FPGA (Field Programmable Gate Array),KawPow,Analysis of hardware architecture for KawPow,
出版年 : 2022
學位: 碩士
摘要: 本論文中所提及的KawPow演算法為Ravencoin的演算法,Ravencoin是一種區塊鏈,主要目的是提供轉帳功能,為維持這個機制,必須實際操作KawPow演算法並得到小於特定值的答案,符合的答案可以使區塊鏈產生新的區塊。因區塊鏈演算法的特性,需經過多次計算才可得出答案,在單位時間內的計算次數則稱為算力(hash rate),而論文內容則針對如何提升算力來討論及實作。 KawPow演算法為一種區塊鏈演算法,其特性為memory-bound以及memory-hard,也就是會對memory進行大量資料讀取以及寫入,因此對於記憶體頻寬以及記憶體容量要求較高。除此之外,相比於其他相同特性的區塊鏈演算法如Ethash的演算法,KawPow演算法為了要防止ASIC以及FPGA利用硬體高運算效率的特性主宰算力,提升了用來計算的資料寬度,而這也導致ASIC及FPGA面積的使用大大提升,成本也隨之上升,使ASIC及FPGA無法完美發揮其運算快速之優勢,也達成防止算力被主宰的目的。雖然如此,本論文仍將利用現有FPGA的有限資源,針對KawPow演算法運算資料寬度大幅提升的問題進行分析及實作。 本論文將KawPow演算法實作於Xilinx FPGA VU35P晶片上並使用Xilinx的開發軟體Vivado進行synthesis、placement和routing,藉由分析實驗室舊版KawPow演算法硬體架構之優缺點,善用FPGA上的資源並將舊版架構加以改良,達到超越舊版架構的效能(Performance)。論文中詳細描述了從舊版硬體架構缺點之分析、KawPow演算法分析、FPGA硬體資源整理並分配、演算法硬體架構設計、FPGA資源使用量之估算、到最後實作、面積優化以及在FPGA進行emulation的過程。 論文最後整理出了新版及舊版架構的算力差距、資源使用,以及新版emulation的結果。從simulation可以看出,新版所能達到的算力為舊版的四倍,且在相同頻率的情況下使用Xilinx的開發軟體Vivado進行P&R及timing分析,新版的timing result比舊版更好,而新版架構於FPGA進行emulation時,則可操作在360MHz,約可達到5.6M Hash/s的算力。
KawPow algorithm discussed in the thesis is the algorithm for Ravencoin. Ravencoin is a blockchain and platform optimized for transferring assets. To sustain the mechanism, the valid hash values which are smaller than specific values are derived by calculating the KawPow algorithm. The valid hash values make the blockchain generate a new block. Because of the characteristic of blockchain, the valid hash values are derived after lots of attempts and computations. The number of computations in unit time is called hash rate. This thesis focuses on how to increase the hash rate and implement the algorithm. KawPow algorithm which the thesis implements is one kind of algorithm of blockchain. The features of the algorithm are memory-bound and memory-hard. That is to say, it has a high requirement of memory bandwidth and does memory access lots of time. Besides, compared to the other algorithm which features are also memory-bound and memory-hard such as Ethash, to avoid the ASIC and FPGA dominating the hash rate by high computing efficiency, the KawPow algorithm increases the data width for computing. As a result, not only the area utilization increases significantly, but also the cost of ASIC and FPGA increases as well. This makes the ASIC and FPGA not able to make use of their advantage of high computing efficiency. However, the thesis still uses limited resources and focuses on the problem of high data width to analyze and implement on FPGA. The thesis shows how to implement the hardware architecture of KawPow on Xilinx FPGA VU35P and run the synthesis and implementation on Vivado, which is a Xilinx developing software. Besides, by analyzing the original hardware architecture of KawPow in laboratory, the author makes the good use of FPGA resources to improve the shortcomings and surpasses the performance (hash rate) of the original architecture. The thesis presents the flow of implementation in detail. 1. Analysis of the original architecture 2. Analysis of KawPow algorithm 3. Reallocation of FPGA resources 4. Design the hardware architecture 5. Estimation of the utilization of FPGA resources 6. Implementation, area reduction, and emulation. At the end of the thesis, the difference of hash rate between the original architecture and improved architecture will be presented. Besides, the emulation result of improved architecture will be presented too. When executing the simulation, the hash rate of the improved architecture is four times better than the original architecture. Besides, when we execute the implementation using Xilinx developing software “Vivado”, the timing result of the improved architecture is better than the original architecture. The improved architecture can be executed at 366MHz when executing emulation. The hash rate achieves 5.6MH/s.
URI: http://tdr.lib.ntu.edu.tw/jspui/handle/123456789/84103
DOI: 10.6342/NTU202201508
全文授權: 同意授權(限校園內公開)
電子全文公開日期: 2022-07-22
顯示於系所單位:電子工程學研究所

文件中的檔案:
檔案 大小格式 
U0001-1707202215195800.pdf
授權僅限NTU校內IP使用(校園外請利用VPN校外連線服務)
1.73 MBAdobe PDF
顯示文件完整紀錄


系統中的文件,除了特別指名其著作權條款之外,均受到著作權保護,並且保留所有的權利。

社群連結
聯絡資訊
10617臺北市大安區羅斯福路四段1號
No.1 Sec.4, Roosevelt Rd., Taipei, Taiwan, R.O.C. 106
Tel: (02)33662353
Email: ntuetds@ntu.edu.tw
意見箱
相關連結
館藏目錄
國內圖書館整合查詢 MetaCat
臺大學術典藏 NTU Scholars
臺大圖書館數位典藏館
本站聲明
© NTU Library All Rights Reserved