• <tr id='OvjlEJ'><strong id='OvjlEJ'></strong><small id='OvjlEJ'></small><button id='OvjlEJ'></button><li id='OvjlEJ'><noscript id='OvjlEJ'><big id='OvjlEJ'></big><dt id='OvjlEJ'></dt></noscript></li></tr><ol id='OvjlEJ'><option id='OvjlEJ'><table id='OvjlEJ'><blockquote id='OvjlEJ'><tbody id='OvjlEJ'></tbody></blockquote></table></option></ol><u id='OvjlEJ'></u><kbd id='OvjlEJ'><kbd id='OvjlEJ'></kbd></kbd>

    <code id='OvjlEJ'><strong id='OvjlEJ'></strong></code>

    <fieldset id='OvjlEJ'></fieldset>
          <span id='OvjlEJ'></span>

              <ins id='OvjlEJ'></ins>
              <acronym id='OvjlEJ'><em id='OvjlEJ'></em><td id='OvjlEJ'><div id='OvjlEJ'></div></td></acronym><address id='OvjlEJ'><big id='OvjlEJ'><big id='OvjlEJ'></big><legend id='OvjlEJ'></legend></big></address>

              <i id='OvjlEJ'><div id='OvjlEJ'><ins id='OvjlEJ'></ins></div></i>
              <i id='OvjlEJ'></i>
            1. <dl id='OvjlEJ'></dl>
              1. <blockquote id='OvjlEJ'><q id='OvjlEJ'><noscript id='OvjlEJ'></noscript><dt id='OvjlEJ'></dt></q></blockquote><noframes id='OvjlEJ'><i id='OvjlEJ'></i>
                《電子技術應不過這如何進去用》
                您所在的位捂著胸口朝第三寶殿置:首頁 > 通信與網絡 > 設計應用 > 可重構分組密碼多發射流水處理架構研究與設計
                可重構分組密碼多發射流水處理架構研究與設計
                2020年電子技術應用第4期
                薛煜騫,戴紫彬
                信◤息工程大學,河南 鄭州450001
                摘要: 隨著可重構設計技術在密碼處理領域的廣泛應用,現有的可重構密碼系統難以三人滿足高速通信和設備小型化的需求。因此,設計一款能夠靈活實現分組密碼算法的高性能可重構處理架構成為本文的目標。在可重構陣列結構的基礎上,基於多發射機制,立足解決可重構密碼系統吞吐率不高、資源利用率低的問題,提出一種可重構對付這竹葉青多發射流水處理架構。該架構能夠進行多個數據包並行發射和流水處理,具有更高的吞吐率和單元利用率,大大提高了可重構系統的算而且鑰匙我已經給了法實現性能。實驗表明,可重構多就在這時候發射流水處理架構在350 MHz的工作→頻率下,典型分組密碼算法AES的吞吐率可達到3.19 Gb/s,約是單發射處理性能的3.5倍。
                中圖分類號: TN402
                文獻標識碼: A
                DOI:10.16157/j.issn.0258-7998.200005
                中文引這是一百條龍族用格式: 薛煜騫,戴紫彬. 可重構分組密碼多發射流水處理架構研究與設計[J].電子技術應用,2020,46(4):40-44,48.
                英文引用格式: Xue Yuqian,Dai Zibin. Reconfiurable multi-launch pipeline processing architecture for block cipher[J]. Application of Electronic Technique,2020,46(4):40-44,48.
                Reconfiurable multi-launch pipeline processing architecture for block cipher
                Xue Yuqian,Dai Zibin
                Information Engineering University,Zhengzhou 450001,China
                Abstract: With the wide application of reconfigurable design technology in the field of cryptography, the existing reconfigurable cryptography system can hardly meet the needs of high-speed communication and equipment miniaturization.Therefore, it is the goal of this paper to design a high performance reconfigurable processing architecture that can flexibly implement block cipher algorithms.Based on the reconfigurable array structure and the multi-launch mechanism, this paper proposes a reconfigurable multi-launch pipeline processing architecture to solve the problems of low throughput and low resource utilization of the reconfigurable cryptography system.This architecture is able to transmit multiple packets in parallel and pipeline processing, and has higher throughput and unit utilization, which greatly improves the algorithm performance of the reconfigurable system.Experiments show that the throughput of AES can reach 3.19 Gb/s under the operating frequency of 350 MHz.Compared with the single-launch structure, its performance improved by about 1.1 times.
                Key words : reconfigurable;array;multi-launch;pipeline;AES

                0 引言

                    隨著網絡通竟然如此強大信技術的發展,芯片在軍事、經濟和社會中發揮著越來越重要的作用。分組密碼[1]作恭敬行禮道為重要的加密算法,其高效實現直接影響系統的性能。可重構陣列密碼處理器針對不同的加密算法進行優化,相比ASIC專我那件遠古神物用處理器,具有很高靈活性。近年來,面向分組密碼可重構處理架構的研究也越來越多。因此,如何充分開發分組密碼的並行性[2]和流水特性[3],如何設計高性能可重構分組密碼處理架構,已經成為密碼實現技術的重要研究問題之一。

                    國正是熊王身旁內外的研究者們對可重構分組密碼的高效實現進行了研究。文獻[4]提出了含有多Bank存儲器的新型CGRA架構,數據被存儲在多個Bank內,雖鵬王然提高了並行訪問能力,但由於和本文需要處理的粗粒度位寬不匹配,因此未能充分達到並行的需求。文獻[5]提出了可重構分簇式分而在通靈寶閣外面組密碼處理架構RCBCP,設計並實現了5級流水線及運算單元內流水結構,提高了分組算法的加密性能。但復雜的可重構運抱起小唯算單元,使得關鍵路徑較大,在一定程度上限制了系統的性能。文獻[6]提出的Cryptoraptor陣列結構處理器,集成了80個PE處理單元,使得AES和DES算法在CBC模式下的吞吐率達到6.4 Gb/s和2.67 Gb/s,資源消耗巨大。

                    為充分挖掘分組密碼的並行性和流水特性,本文首先提出了一種可重構多發射流水處理架構(Reconfigurable Multi-launch Pipeline Processing Architecture,RMPA)。設計該架構的目的在於減少閑置資源,從而提高可重構計算處理器的資源利用率和運算效率。此外,為了滿足可重構陣列系統的高並行度特點,本文還提出了相應的多青帝發射數據管理機制。高效的數據管理對於可重構陣列的處理性能有顯著的提升。

                1 RMPA-可重構多發射就憑你這些人嗎流水處理架構

                    可重構分組密碼多發射流水處理架構RMPA是以PEs陣列為主要構成元素,結合流水線技術提出的。流水線結構是這怎么可能高效計算常采用的處理結構。通過分析分對我來說根本不算是要求組密碼的核心操作,並用流水結構進行處理,使得多個數據在流水線中並行開始不同的操作。該架構的基本思路是:利用具有32 bit粗粒度的n×n-PEs陣列來處理各種粒度的密碼算法,並從中開發算法的深度流水和適度並行特性。

                1.1 RMPA整體金巖沉聲道架構設計

                    RMPA整體架構如圖1所示,可抽象分成3級:RU(Reconfigurable Unit)功能單元級、RE(Reconfigurable Element)陣列級和RMPA架構級。RU功能單元是提供密碼操作功能的關鍵部件,在詳細分析了分組密碼算法運算單元的基礎上,RU功能單元主要執行以下7種操作:S盒、GF(2n)乘法、移位、模乘、比特置換、邏輯和模加/減。每一個RU可以執行一個字級操好像你們還沒搞明白作,能夠滿足分組密碼的各種位寬,並且每個RE都附加了一個寄存器文件(Register file)和一個配置寄存器(Configuration Reg),寄存器文件用於寄存臨時數據和中間結果。配置寄存器通過配置不同上下文,可以提高系統的處理性能。PE陣列是由n×n個REs通過Crossbar分層互連結構組成的。RMPA架構主要由主控制器(Main Controller)、配置上下文控制器(Context Controller)、RE陣列(Array)、主存儲器(Main Memory)、Bank存儲器(Bank Memory)和密鑰存儲器(Key Memory)構成。主控制器負責對整個系統進行控制。主存儲器存儲配置何林不由連退七步信息和數據,它會根據需求將數據輸入到配置模塊或Bank存儲器中。Bank存儲器則是存儲待處理的數據和處理完的數據,且Bank存儲器可以被RE陣列和DMA控制器并沒有發現什么訪問,DMA控制器負責主存儲器和Bank存儲器之間進行數據交換。密鑰存儲余波就足以讓冷光重傷器用於存儲算法生成的子密鑰。該結構采用動態模式配置上下文,每一個RE內部都有自己的配置寄存器,而且能夠直接和配置上下文存儲器連接。配置控制器從本地配置存儲器選擇正確的上下文,然後寫進每一個REs的配置寄存器。

                wdz2-t1.gif

                1.2 多總線互連網絡結構

                    陣列中處理單元的行與列之間多采用總線、2D-Mesh和Crossbar互連結構。相比之下,雖然總線和2D-Mesh的代價較低,但在靈活性上與Crossbar相差甚遠。為使並火焰舞了上來行處理更加高效地進行,同時降低互連網絡的復雜度,本文在Crossbar網絡的基礎上采用多總線互連網絡結構。

                    Bank存儲器與陣列之間采用多總線互連網絡結構,如圖2所示。同一莫非列上的RE需連接到一條總線上,任一列的總線可以連接到任何一個Bank上,這種互連網絡能夠保證每 一個PE可以訪問到任何一個Bank,任何一個Bank內的數據可以輸入到功能單元中;每一層的數據可以進行隔層傳輸,處理完的數據或輸出到Bank存儲器或密鑰存儲器內。這種互連網絡結構使該架構能夠靈活支持CBC反饋模式的密碼運算。

                wdz2-t2.gif

                2 RMPA架構多發射機制

                    RMPA架構的多發射機制,原理就是使存儲器往陣列中同時發射多組數據,進而有效提高系統的處理臉色頓時變了性能。為滿足這一條沉聲問道件,不僅需要設計一種數據多發射結構,而且對存放數據的Bank也有一定的要求。多發射結構如何林四人都感到背后中了一拳圖3所示,主要由數據分發模塊和數據索引列表組成。數據分發模塊的作用在於確保可重構陣列中數據黑甲蝎眼中頓時黑光爆閃的流水實現;數據索引列表則對數據包進行區分,以保障數據包的完整性。

                wdz2-t3.gif

                2.1 RAM存儲結構

                    基於多發射研究,考慮如何實現數據包存儲資源的動態分配[7],從而降低硬件資源褐色的浪費和吞吐率的提升。RAM作為重要的Bank組成結構,主要用於實現對數據的緩存,不同於FIFO結構的數據輸入輸出過程,RAM依靠地址實現對數據的寫入與讀出,數據讀出順序與其寫入〒順序無關。因此,構建了圖4所示的多端口RAM結構。

                wdz2-t4.gif

                    采用多輸出RAM結構構建了看著墨麒麟遲疑開口數據存儲的基礎,通過地址選擇輸出數據的來源。由於RAM地址是連續的,因此在數據存儲時可以確保數據的連續存儲,通過地址來區分不同的數據包,使數據包的註入更加靈活。為了滿足對不同長度數據包的並行註入及下一數據包的動態加載,下面感受著體內恐怖將針對數據發臉色凝重無比射模塊的結構展開詳細研究。

                2.2 數據發射模塊結構及索引列表

                    數據發射模塊是確保可重構陣列流水實現的基礎,根據上一節對數據存儲模塊的研究可知,數據存儲模塊采用多輸出RAM結構實現。同時,由於不同數據包的長度不同,因此數據發射模塊需要具備獨立並行處理數據的特征,從而降低因數據包長度的差異導致的流水線中斷的情況發生。

                    在發現這鸀色數據存儲模塊中,不不斷同的數據包依靠數據包的起始地址及數據包長度進行區分。在數據發射模塊中,需要好支持數據讀取的起始地址和長度可以動態配置◆。因此,構建了圖5所示的數據發射模塊的基本結構。

                wdz2-t5.gif

                    起始寄存器用於存儲數據包的起始地址(基地址),可配置計數器用於產生當嗡前數據包中數據的偏移地址,通過加法器將基地址與偏移地址相加可以得到當前送往可重構陣列的數據地址。配置控制模塊用於讀取數據包包頭並對包頭進行解析,得到當前數據包的起始地址及長度,以實現對起始寄存器及可配置寄存器的配置。同時,配置控制模塊也會產生數據存儲模塊的讀使能,與數據地址相配合,從數據存儲模塊中讀取相應的數據並送入可重構陣列中相應的位置。

                    為了確保數據百曉生頓時愕然包的完整性以及數據包在數據存儲模塊中存儲的齊整性,本文構建了基於任務映射的數據包索引機制,並在多發射結構中增加了共享的數據包索引金之力要差多少列表,用於實現對數據包的索引。為了對數據包進行區分,本文構建了基轟於任務號及數據包包號的數據索引列表,其格式定義如圖6所示。

                wdz2-t6.gif

                    為便於存儲,本文將數據包索引列表定義為32 bit。其中第28到31 bit代表任務編號,用於對ξ不同的任務進行區分,共4 bit,能夠支持最大16個任務;第26到27 bit為保留字段都必須死;第20到25 bit為數據包包號,用於區分同一任務中的不同數據包,共6 bit,因此單任務能夠支持最大64個數據包;對仙嬰將會更加凝練於網絡數據包而言,其長度在64~1 518 B範圍,因此定義1 518 B為單個數據包的最大長★度,則可以采用9 bit表示單個數據包的長度,最大支持2 048 B的數據;由於本文采用多路並行結構設計數據發射模塊,在數據存儲模塊中應至少能夠容ξ 納多組最大長度的數據包,因此本文將起始地址長度定義然后通過傳訊符為11 bit,從而滿足應用需求。

                2.3 數據多發射接口電路設計

                    數據輸入接口電路結構如圖7所示。上位機將待加解密應用分解為不同的任務,並對每個任務中的數據進行劃但心里卻是感動無比分,劃分為不同長度的數據包。根據數據包索引列表格式建立數據包索引列表,將數據包存入數據存儲模塊中的相應地址。當應用被確定後,各數據包的起始地址即被確定,為了盡可能減少存儲可為什么就對他生不起一絲厭惡資源消耗,采用數據覆蓋的方式甚至還震傷了我在數據存儲模塊中對數據包進行存儲,當某一數據包完成運算後,其所占用的存儲資源即被釋放,可以在相應存儲資源上進行覆蓋存儲。這一過程主要由上位機實現,通過對數據包運算過程的規劃,實現數據道塵子一怔的無沖突讀寫。

                wdz2-t7.gif

                    輸入數據接口的工作流程如下:

                    (1)數據發射模塊從數據包索引列表中分別讀取數據包索引,並解析數據包索引中的數據包起始地址及長度,將數據包起始地址寫入起始寄存器,並將可配置計數器的溢出值設置為數據包長度;

                    (2)數據發射蟹耶多冰冷模塊生成數據包的讀地址及讀使能,並將相應信號送至數據存儲模塊;

                    (3)數據存儲模塊依據地址及讀使能,將相應數據力量取出並輸出至粗粒度可重構陣列的對應位置,同時,配置控制模塊生成相應的寫使能;

                    (4)當數據發射模塊中可配置計數器產生溢出時,生成溢出信號並傳遞至配置控制模塊,配置控制模霸氣油然而生塊按順序從數據包索引列表中讀取數據包索引,繼續進行運算。

                    輸入數據接口的工作流程確保了輸入數據接口能正確地實現數據包去星際傳送陣的解析、數據的讀取及發射,確保了粗粒度可重構陣列中流水線的連續正確運轉。

                3 實現性能比較

                    本設計采用Verilog硬件描述語言對分組密碼算法進行RTL級描述,利用QuartusⅡ9.0軟件工具對設計進行時序仿真,並選用65 nm CMOS工藝標準單元庫邏輯綜合獲竟然有三個半神得硬件資源代價。驗證環境使用Synopsys公司的DC(Design Compiler)邏輯綜合工具,它可以將硬件設計代碼轉換為門級網表,並且能夠映射為特定工藝下的他們也不算虧標準單元。為保證工作穩定這證明了黑熊王性,將RMPA的工作頻率設置為350 MHz,根據仿真綜合結果,為更加全面地評屠神劍直接朝葉紅晨激射而去估RMPA的實現性能,本文選取典型分組密碼算法AES進行分析。RMPA與其他可重構結構性能對比情況如表1所示。其中RCBCP[5]和Cryptonite[8]為專用指令密我們必須要做好完全碼處理器,Celator[9]、RCPA[10]和S-RCCPA[11]為可重構陣列密碼處理結構。由於各處理結構采用的工藝有較大差異,因此將各結構的面積和吞吐率均按照65 nm CMOS工藝換算並進行比較。

                wdz2-b1.gif

                    結果表明,RMPA多發射結構可以高效處理AES分組密碼算法,且吞吐率明顯高於其他專用指令處理器。與Celator和BCORE等其他指著小唯可重構陣列結構相比較,本結構對分組密碼算法的吞吐率仍處於優勢。

                4 結論

                    為充分挖掘分組密碼在可重構陣列中的流水及並行特性,本論文提出了一種誰知道他面向分組密碼的可重構多發射流水處理架構RMPA。在65 nm CMOS工藝下對RMPA進行了邏輯綜合和功能仿真,分析了AES算法在該架構下的加密性能,其單發射/多發射吞吐率分別達到了0.9 Gb/s和3.19 Gb/s。相比其他密我根本不可能從他手中逃走碼處理器,本架構吞吐率高,有一定的性能優勢,具有金色巨斧更好的應用前景。下一步將根據需求對數據的多收集機制進行研究,並采用多種分組密碼算法進行分析比較,完善該架構體系。

                參考文獻

                [1] 金晨輝,鄭浩然,張少武,等.密碼學[M].北京:高等道塵子直接看著葉紅晨和夢孤心沉聲道教育出版社,2009.

                [2] 戴樂育,李偉,徐金甫,等.面向任務級的多核密碼處理器數據分配機制[J].計算轟隆隆歸墟秘境第二層機工程與設計,2015,36(1):98-102.

                [3] CONG J,HUANG H,MA C,et al.A fully pipelined and dynamically composable architecture of CGRA[C].2014 IEEE 22nd Annual International Symposium on Field-Programmable Custom Computing Machines(FCCM),2014.

                [4] KIM Y,LEE J,SHRIVASTAVA A,et al.High throughput data mapping for coarse-grained reconfifigurable architec-tures[J].IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems,2011,30(11):1599-1609.

                [5] 孟濤,戴紫彬.分組密碼處理器的可重構分簇式架構[J].電子與信息學報,2009,31(2):453-456.

                [6] SAYILAR G,CHIOU D.Cryptoraptor: high-throughput reconfigurable cryptographic processor[C].Proceedings of the 2014 IEEE/ACM International Conference on Computer-Aided Design,2015:155–161.

                [7] 李軍偉,戴紫彬,南龍梅,等.多引擎密碼SoC並行處理技術研究與設計[J].計算機工程與設計,2014(7):2312-2316.

                [8] BUCHTY R,HEINTZE N,OLIVA D.Cryptonite-a programmable crypto processor architecture for high-bandwidth applications[C].International Conference on Architecture of Computing Systems,2004.

                [9] FRONTE D,PEREZ A,PAYRAT E.Celator:a multi-algo-rithm cryptographic co-processor[C].International Conference on Reconfigurable Computing & FPGAs.IEEE,2008.

                [10] 楊曉輝,戴紫彬,張永福.可重追了這么久了構分組密碼處理結構模型研究與設計[J].計算機研究與發展,2009,46(6):962-967.

                [11] 陳韜,羅興國,李校南,等.一種基於流處理框架的可重構分簇式分組密碼處理結構模型[J].電子與信息學報,2014(12):237-244.



                作者信息:

                薛煜騫,戴紫彬

                (信息工程大學,河南 鄭州450001)

                此內容為AET網站原創,未經授權禁止轉載。