新四季網

基於fpga的通用矩陣浮點乘法器的製作方法

2023-10-20 00:31:37

專利名稱:基於fpga的通用矩陣浮點乘法器的製作方法
技術領域:
本發明涉及的是 一 種微處理器技術領域的乘法器,具體是 一 種基於 FPGA (Field-Programmable Gate Array的縮寫,現場可編程門陣列)的通用矩陣浮點乘法 器。
背景技術:
矩陣乘法操作是科學計算中的一個基本操作,在工業控制、模式識別、數位訊號處 理等領域廣泛存在,特別是在可攜式設備中,經常涉及模式識別、圖像處理的操作,這些操 作都是有大量的矩陣運算來完成的,而可攜式設備通常計算配置較低,矩陣乘法也就稱為 計算過程中最為耗時的關鍵操作。矩陣乘法的時間複雜度較高,通常為0(N3),其計算性能 直接影響系統的整體性能。 以前的矩陣乘法器通常採用通用數位訊號處理器(Digital Signal Processor, DSP)實現。DSP具有技術成熟,實現工具完善、編程簡單等優點,但由於其內部結構的限制, 在進行計算時經常會出現緩存(Cache Miss)撲空等現象,影響計算性能。基於DSP技術的 涉及通常持續時間只能維持在其峰值計算性能的10% 33%,無法取得很高的計算性能。
近年來的FPGA技術取得了飛速發展,已經從最初只能面向純邏輯代替的應用轉 變為能夠面向複雜的計算密集型應用。最新的FPGA器件,不僅邏輯資源門極其豐富,而且 還包括了大量面向高計算性能的DSP單元、塊狀RAM(Block RAM,BRAM)等。同時為方便FPGA 的調試,各FPGA廠商還提供了各種片內邏輯分析工具(如Xilinx公司的ChipScope),在軟 硬體上均保證了 FPGA實現高性能計算的可能性。 經對現有文獻檢索發現,中國專利申請號為200710069954. 8,名稱為基於單 FPGA的矩陣乘法器裝置,該技術包括P2個計算單元PE,由P2個計算單元PE排列形成的P 行X P列的PE陣列,數據輸入輸出接口和數據預處理單元。但是該技術邏輯資源消耗太高, 每一個浮點向量乘法器單元要消耗多個DSP48和FIFO單元,對於晶片要求太高,導致成本 增加,且不利於實際應用。

發明內容
本發明的目的在於克服現有技術的上述不足,提供一種基於FPGA的通用矩陣浮 點乘法器。本發明採用並行流水線結構,可以進行任意維數的矩陣浮點乘法運算,並且多個 矩陣浮點乘法器可以並行工作,進一步提高計算效率和計算精度。
本發明是通過以下技術方案實現的 本發明包括若干並行的矩陣浮點乘法器,每個矩陣浮點乘法器包括控制管理 模塊、運算模塊和存儲模塊,其中控制管理模塊與運算模塊相連傳輸累加器清零信號,控 制管理模塊與存儲模塊相連傳輸數據地址信號和結果有效信號,運算模塊與存儲模塊相連 傳輸待運算數據信號和運算結果信號。 所述的控制管理模塊生成控制信號以控制運算模塊和存儲模塊,該模塊包括數據地址控制子模塊、結果有效控制子模塊和累加器清零控制子模塊,其中數據地址控制子
模塊與存儲模塊相連傳輸數據地址控制信號,結果有效控制子模塊與存儲模塊相連傳輸結
果有效信號,累加器清零控制子模塊與運算模塊相連傳輸累加器清零信號。
所述的運算模塊執行矩陣數據的乘法和累加操作,該模塊包括乘法器、浮點_定
點轉換器、累加器和定點-浮點轉換器,其中乘法器與存儲模塊相連傳輸待運算數據信
號,累加器與控制管理模塊相連傳輸累加器清零信號,乘法器與浮點_定點轉換器相連傳
輸浮點乘法信號,浮點_定點轉換器與累加器相連傳輸定點乘法信號,累加器與定點_浮點
轉換器相連傳輸浮點累加信號,定點_浮點轉換器與存儲模塊相連傳輸運算結果信號。 所述的存儲模塊緩存待運算矩陣的數據和結果矩陣的數據,並提供總線訪問接口
使外部其他設備與本發明裝置進行數據交換,該模塊包括乘數矩陣存儲單元、被乘數矩陣
存儲單元、結果矩陣存儲單元、總線數據接口和內部數據接口,其中乘數矩陣存儲單元與
控制管理模塊相連傳輸乘數地址信號,被乘數矩陣存儲單元與控制管理模塊相連傳輸被乘
數地址信號,結果矩陣存儲單元與控制管理模塊相連傳輸結果有效信號,乘數矩陣存儲單
元分別與總線數據接口和內部數據接口相連傳輸待運算的乘數信息,被乘數矩陣存儲單元
分別與總線數據接口和內部數據接口相連傳輸待運算的被乘數信息,結果矩陣存儲單元分
別與總線數據接口和內部數據接口相連傳輸運算結果信息,總線數據接口與外部其他設備
相連傳輸待運算的乘數信息、待運算的被乘數信息和運算結果信息,內部數據接口與運算
模塊相連傳輸待運算的乘數信息、待運算的被乘數信息和運算結果信息。 本發明的工作過程 步驟A,將待運算的數據通過總線數據接口寫入存儲模塊; 步驟B,向控制管理模塊提供矩陣維數信息,並給出開始運算信號; 步驟C,控制管理模塊將矩陣乘法分解為多個向量內積的過程,並生成周期性控制
信號,發送給運算模塊和存儲模塊; 步驟D,運算模塊根據控制信號讀取數據,進行浮點乘法和累加運算,存儲模塊根 據控制信號將運算結果寫入緩存; 步驟E,控制管理模塊生成運算結束信號,總線設備從存儲模塊中讀出運算結果。
與現有技術相比,本發明的有益效果是每個矩陣浮點乘法器之間相互獨立,可同 時運算,互不影響,計算的時間大大減小,且計算的精度高達10—4,效率提高十倍以上,且裝 置簡單,成本低。
具體實施例方式
以下對本發明的實施例作進一步描述本實施例在以本發明技術方案為前提下進 行實施,給出了詳細的實施方式和具體的操作過程,但本發明的保護範圍不限於下述的實 施例。 實施例 本實施例採用Xilinx的Virtex IV(XC4VFX12-10-ffg668)晶片實現兩個15X 15 的矩陣的浮點乘法運算。 本實施例包括四個並行的矩陣浮點乘法器,每個矩陣浮點乘法器包括控制管 理模塊、運算模塊和存儲模塊,其中控制管理模塊與運算模塊相連傳輸累加器清零信號,控制管理模塊與存儲模塊相連傳輸數據地址信號和結果有效信號,運算模塊與存儲模塊相 連傳輸待運算數據信號和運算結果信號。 所述的控制管理模塊生成控制信號以控制運算模塊和存儲模塊,該模塊包括數
據地址控制子模塊、結果有效控制子模塊和累加器清零控制子模塊,其中數據地址控制子
模塊與存儲模塊相連傳輸數據地址控制信號,結果有效控制子模塊與存儲模塊相連傳輸結
果有效信號,累加器清零控制子模塊與運算模塊相連傳輸累加器清零信號。 本實施例中控制管理模塊由XC4VFX12-10-ffg668晶片的數字邏輯電路實現。
所述的運算模塊執行矩陣數據的乘法和累加操作,該模塊包括乘法器、浮點_定
點轉換器、累加器和定點-浮點轉換器,其中乘法器與存儲模塊相連傳輸待運算數據信
號,累加器與累加器清零控制模塊相連傳輸累加器清零信號,乘法器與浮點_定點轉換器
相連傳輸浮點乘法信號,浮點-定點轉換器與累加器相連傳輸定點乘法信號,累加器與定
點-浮點轉換器相連傳輸浮點累加信號,定點-浮點轉換器與存儲模塊相連傳輸運算結果信號。 本實施例中運算模塊由XC4VFX12-10-ffg668晶片的DSP運算單元實現。 所述的存儲模塊緩存待運算矩陣的數據和結果矩陣的數據,並提供總線訪問接口
使外部其他設備與本發明裝置進行數據交換,該模塊包括乘數矩陣存儲單元、被乘數矩陣
存儲單元、結果矩陣存儲單元、總線數據接口和內部數據接口,其中乘數矩陣存儲單元與
數據地址控制子模塊相連傳輸乘數地址信號,被乘數矩陣存儲單元與數據地址控制子模塊
相連傳輸被乘數地址信號,結果矩陣存儲單元與結果有效控制子模塊相連傳輸結果有效信
號,乘數矩陣存儲單元分別與總線數據接口和內部數據接口相連傳輸待運算的乘數信息,
被乘數矩陣存儲單元分別與總線數據接口和內部數據接口相連傳輸待運算的被乘數信息,
結果矩陣存儲單元分別與總線數據接口和內部數據接口相連傳輸運算結果信息,總線數據
接口與外部其他設備相連傳輸待運算的乘數信息、待運算的被乘數信息和運算結果信息,
內部數據接口與乘法器相連傳輸待運算的乘數信息和待運算的被乘數信息,內部數據接口 與定點_浮點轉換器相連傳輸運算結果信息。 本實施例中存儲模塊由XC4VFX12-10-ffg668晶片的Block-RAM實現。
本實施例的工作過程具體是
1、復位後實施例裝置處於空閒狀態; 2、實施例裝置等待總線設備將待運算數據寫入存儲模塊; 3、實施例裝置等待總線設備將矩陣維數和是否需要轉置信息發送給控制管理模 塊,並給出開始運算信號; 4、控制管理模塊收到開始運算信號後,根據矩陣的維數信息,將待運算矩陣拆分 成15個行向量或列向量的組合,以向量為單位將數據交由運算模塊進行乘加運算;
5、由控制管理模塊給出運算使能信號,運算開始後,運算模塊不斷讀入數據,進行 乘法累加運算; 6、當一組數據計算完畢以後,輸出計算結果,並將累加器清零; 7、運算模塊判斷是否有新的數據需要計算,如有,則轉到運算狀態;否則,轉到空 閒狀態; 8、向量運算結束後,控制管理模塊發出結果有效信號,控制存儲模塊寫入計算結果; 9、全部運算完成以後,控制管理模塊生成運算結束信號,乘法器回復到空閒狀態。
當採用現有的FPGA的FPU (Float Process Unit)處理該矩陣乘法要96341時鐘 周期,而採用本實施例裝置則需要8784個時鐘周期,並且計算精度可達10—4,又通過對各種 維數的矩陣進行對比運算,發現採用本實施例裝置比採用FPU計算矩陣乘法的效率普遍高 十倍以上。
權利要求
一種基於FPGA的通用矩陣浮點乘法器,其特徵在於,包括若干並行的矩陣浮點乘法器,每個矩陣浮點乘法器包括控制管理模塊、運算模塊和存儲模塊,其中控制管理模塊與運算模塊相連傳輸累加器清零信號,控制管理模塊與存儲模塊相連傳輸數據地址信號和結果有效信號,運算模塊與存儲模塊相連傳輸待運算數據信號和運算結果信號。
2. 根據權利要求1所述的基於FPGA的通用矩陣浮點乘法器,其特徵是,所述的控制管理模塊生成控制信號以控制運算模塊和存儲模塊,該模塊包括數據地址控制子模塊、結果有效控制子模塊和累加器清零控制子模塊,其中數據地址控制子模塊與存儲模塊相連傳輸數據地址控制信號,結果有效控制子模塊與存儲模塊相連傳輸結果有效信號,累加器清零控制子模塊與運算模塊相連傳輸累加器清零信號。
3. 根據權利要求1所述的基於FPGA的通用矩陣浮點乘法器,其特徵是,所述的運算模塊執行矩陣數據的乘法和累加操作,該模塊包括乘法器、浮點_定點轉換器、累加器和定點-浮點轉換器,其中乘法器與存儲模塊相連傳輸待運算數據信號,累加器與控制管理模塊相連傳輸累加器清零信號,乘法器與浮點_定點轉換器相連傳輸浮點乘法信號,浮點_定點轉換器與累加器相連傳輸定點乘法信號,累加器與定點_浮點轉換器相連傳輸浮點累加信號,定點_浮點轉換器與存儲模塊相連傳輸運算結果信號。
4. 根據權利要求1所述的基於FPGA的通用矩陣浮點乘法器,其特徵是,所述的存儲模塊緩存待運算矩陣的數據和結果矩陣的數據,並提供總線訪問接口使外部其他設備與本發明裝置進行數據交換,該模塊包括乘數矩陣存儲單元、被乘數矩陣存儲單元、結果矩陣存儲單元、總線數據接口和內部數據接口 ,其中乘數矩陣存儲單元與控制管理模塊相連傳輸乘數地址信號,被乘數矩陣存儲單元與控制管理模塊相連傳輸被乘數地址信號,結果矩陣存儲單元與控制管理模塊相連傳輸結果有效信號,乘數矩陣存儲單元分別與總線數據接口和內部數據接口相連傳輸待運算的乘數信息,被乘數矩陣存儲單元分別與總線數據接口和內部數據接口相連傳輸待運算的被乘數信息,結果矩陣存儲單元分別與總線數據接口和內部數據接口相連傳輸運算結果信息,總線數據接口與外部其他設備相連傳輸待運算的乘數信息、待運算的被乘數信息和運算結果信息,內部數據接口與運算模塊相連傳輸待運算的乘數信息、待運算的被乘數信息和運算結果信息。
全文摘要
一種計算機微處理器設計技術領域的基於FPGA的通用矩陣浮點乘法器,包括若干並行的矩陣浮點乘法器,每個矩陣浮點乘法器包括控制管理模塊、運算模塊和存儲模塊,其中控制管理模塊包括數據地址控制子模塊、結果有效控制子模塊和累加器清零控制子模塊;運算模塊包括乘法器、浮點-定點轉換器、累加器和定點-浮點轉換器;存儲模塊包括乘數矩陣存儲單元、被乘數矩陣存儲單元、結果矩陣存儲單元、總線數據接口和內部數據接口。本發明中每個矩陣浮點乘法器之間相互獨立,可同時運算,互不影響,計算的時間大大減小,且計算的精度高達10-4,效率提高十倍以上,且裝置簡單,成本低。
文檔編號G06F7/57GK101794210SQ20101013987
公開日2010年8月4日 申請日期2010年4月7日 優先權日2010年4月7日
發明者蘭建, 席裕庚, 李德偉, 楊楠, 王立禾, 韓慧婷 申請人:上海交通大學

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀