[發明專利]一種zerocash挖礦算法的硬件實現方法及裝置有效
| 申請號: | 201810036784.1 | 申請日: | 2018-01-15 |
| 公開(公告)號: | CN110109913B | 公開(公告)日: | 2021-05-04 |
| 發明(設計)人: | 李超;白洋;楊存永;詹克團 | 申請(專利權)人: | 北京比特大陸科技有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22 |
| 代理公司: | 中科專利商標代理有限責任公司 11021 | 代理人: | 楊靜 |
| 地址: | 100029 北京市*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 zerocash 算法 硬件 實現 方法 裝置 | ||
1.一種zerocash挖礦算法的硬件實現方法,其特征在于,包括:
步驟S1、通過子核中的BLAKE2b算法模塊,分段生成兩百萬條原始數據,其中,原始數據位數為200比特;
步驟S2、根據所述原始數據的0至19比特,計算所述原始數據對應存儲的哈希表索引,根據所述哈希表索引確定子核坐標,其中,子核數目為64,每個子核包含683個哈希表,所述子核坐標包括行標識和列標識;
步驟S3、根據所述子核坐標,將所述原始數據及所述原始數據的序號通過傳輸總線存儲至所述子核坐標對應的子核中的第一存儲器,其中,所述原始數據的序號為所述原始數據對應存儲的哈希表索引;
步驟S4、從所述第一存儲器讀取數據,并前20比特相同的兩個數據進行異或運算,以獲得中間結果;
步驟S5、根據所述中間結果的次20比特,計算所述中間結果對應存儲的哈希表索引,根據所述哈希表索引確定子核坐標;
步驟S6、根據所述子核坐標,將所述中間結果及所述中間結果的序號通過傳輸總線存儲至所述子核坐標對應的子核中的第二存儲器,其中,所述中間結果的序號為所述中間結果對應存儲的哈希表索引及相同的兩個數據在哈希表中的偏移值;
步驟S6、跳轉至步驟S4重復執行8輪運算,將原始數據的序號及每輪運算的中間結果的序號作為zero cash算法的最終結果,其中,每輪運算中所述第一存儲器及所述二存儲器交替操作。
2.根據權利要求1所述的zerocash挖礦算法的硬件實現方法,其特征在于,64個子核,按照8*8的形式進行布局,所述步驟S3包括:
當子核坐標為當前子核坐標時,將所述原始數據及所述原始數據的序號存儲至當前子核中的第一存儲器;
當子核的行標識大于當前子核的行標識時,將所述原始數據及所述原始數據的序號通過第一傳輸總線存儲至所述子核坐標對應的子核中的第一存儲器;
當子核的行標識小于當前子核的行標識時,將所述原始數據及所述原始數據的序號通過第二傳輸總線存儲至所述子核坐標對應的子核中的第一存儲器;
當子核的行標識等于當前子核的行標識時,將所述原始數據及所述原始數據的序號通過第一傳輸總線或第二傳輸總線存儲至所述子核坐標對應的子核中的第一存儲器。
3.根據權利要求1所述的zerocash挖礦算法的硬件實現方法,其特征在于,所述步驟S1包括:
輸入范圍為(N-1)*2M/64~N*2M/64至第N個子核中的BLAKE2b算法模塊中,以生成(N-1)*2M/64~N*2M/64條的原始數據,其中,N為自然數。
4.一種zerocash挖礦算法的硬件實現裝置,其特征在于,包括:64個子核,每個子核包括BLAKE2b算法模塊、第一計算模塊、第二計算模塊、第一存儲器、第二存儲器和收發模塊,其中,
所述BLAKE2b算法模塊,用于根據輸入生成原始數據,其中,原始數據位數為200比特;
所述第一計算模塊,用于根據所述原始數據的0至19比特,計算所述原始數據對應存儲的哈希表索引,根據所述哈希表索引確定子核坐標;根據中間結果的次20比特,計算所述中間結果對應存儲的哈希表索引,根據所述哈希表索引確定子核坐標,其中,子核數目為64,每個子核包含683個哈希表,所述子核坐標包括行標識和列標識;
所述第二計算模塊,用于從所述第一存儲器讀取數據,并前20比特相同的兩個數據進行異或運算,以獲得所述中間結果;
所述第一存儲器和所述第二存儲器用于交替存儲所述第二計算模塊的計算結果;
所述收發模塊,用于根據所述子核坐標,將所述原始數據及所述原始數據的序號通過傳輸總線存儲至所述子核坐標對應的子核中的第一存儲器;根據所述子核坐標,將所述中間結果及所述中間結果的序號通過傳輸總線存儲至所述子核坐標對應的子核中的第二存儲器,其中,所述中間結果的序號為所述中間結果對應存儲的哈希表索引及相同的兩個數據在哈希表中的偏移值。
5.根據權利要求4所述的zerocash挖礦算法的硬件實現裝置,其特征在于,所述收發模塊包括:
第一收發單元,用于當子核的行標識大于當前子核的行標識時,將所述原始數據及所述原始數據的序號通過第一傳輸總線存儲至所述子核坐標對應的子核中的第一存儲器;
第二收發單元,用于當子核的行標識小于當前子核的行標識時,將所述原始數據及所述原始數據的序號通過第二傳輸總線存儲至所述子核坐標對應的子核中的第一存儲器。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京比特大陸科技有限公司,未經北京比特大陸科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201810036784.1/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種標識符生成方法和裝置
- 下一篇:一種應用驅動的數據存儲與索引方法





