System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及軟硬件協同仿真領域,尤其是一種支持多片fpga軟硬件通信方法、系統、設備及存儲介質。
技術介紹
1、fpga,全稱field?programmable?gate?array,即現場可編程門陣列,是一種主要以數字電路為主的集成芯片,也是可編程邏輯器件(pld)的一種。軟硬件通信是計算機科學和信息技術中的一個基礎且關鍵的領域,主要關注的是計算機硬件與軟件之間的信息交換過程,軟硬件通信涉及到硬件和軟件之間的接口和協議、數據表示、信號和時序等多個方面。通過操作系統、驅動程序、通信總線和網絡通信等機制,軟硬件之間的通信得以實現,從而支持各種復雜的計算任務和應用程序的運行。
2、因為單fpga的仿真器具有局限性,主要體現在單個fpga的邏輯單元、寄存器、內存塊、dsp模塊等資源是有限的,所以在現有技術下,為了使大型或復雜的系統設計正常運行,大多采用多片fpga的仿真器。但是當多片fpga進行軟硬件通信時,大型或復雜的系統設計所需要傳輸的數據較多,現有技術下軟硬件交互中容易出現數據傳輸不全面、不準確、軟硬件無法無縫協同等問題。
技術實現思路
1、為了實現用戶設計和多片fpga之間準確的映射,使得軟件和硬件之間可以準確傳遞數據,本申請提供一種支持多片fpga軟硬件通信方法、系統、設備及存儲介質。
2、第一方面,本申請提供一種支持多片fpga軟硬件通信方法,采用如下的技術方案:
3、所述方法基于軟硬件通信系統,所述軟硬件通信系統包括包含硬件設計代碼的測試
4、所述軟硬件通信單元創建通信模型,所述通信模型包括所述信號在所述fpga片上的映射關系;
5、所述軟件側單元在仿真過程中通過api接口與所述測試平臺單元的所述硬件設計代碼進行數據交互,抓取數據交互產生的信號數據;
6、所述軟件側單元通過adapter轉換所述信號數據的格式;
7、所述軟件側單元將轉換后的所述信號數據傳輸到所述軟硬件通信單元;
8、所述軟硬件通信單元根據通信模型確定轉換后的所述信號數據對應的目標fpga片;
9、所述軟硬件通信單元通過pcie接口將轉換后的所述信號數據傳輸到所述硬件fpga單元。
10、通過上述技術方案,可以實現用戶設計和多片fpga之間準確的映射,使得軟件和硬件之間可以準確傳遞數據,確保軟硬件可以無縫協同工作,能夠高效、準確地仿真整個系統。
11、在一個具體的可實施方案中,所述軟硬件通信單元創建通信模型包括:
12、所述軟硬件通信單元獲取信號文件,解析所述信號文件中多個信號的信號信息,所述信號信息用于確定傳輸所述信號對應的通道;
13、所述軟硬件通信單元獲取通道參數文件,解析所述通道參數文件中的通道配置,所述通道配置包含數據傳輸中信號傳輸通道與fpga片的對應關系;
14、所述軟硬件通信單元根據所述信號信息和所述通道配置創建通信模型。
15、通過上述技術方案,建立通信模型能夠明確不同信號在多片fpga上的映射關系,提前建立模型有助于fpga軟硬件通信更準確更快速。
16、在一個具體的可實施方案中,所述抓取數據交互產生的信號數據包括:
17、所述軟件側單元根據所述信號文件確定所述信號數據的目標信號信息,所述目標信號信息中包括所述信號數據的目標傳輸通道;
18、所述軟件側單元通過所述目標傳輸通道將信號數據輸入。
19、通過上述技術方案,設立信號數據的傳輸通道能夠使得軟硬件進行通信,同時每個信號有對應的傳輸通道,更有利于軟件和硬件之間準確傳遞數據。
20、在一個具體的可實施方案中,所述所述軟硬件通信單元根據通信模型確定轉換后的所述信號數據對應的目標fpga片包括:
21、所述軟硬件通信單元根據通信模型確定與所述目標傳輸通道綁定的目標fpga片代理;
22、所述軟硬件通信單元通過目標fpga片代理確定轉換后的所述信號數據對應的目標fpga片。
23、通過上述技術方案,實現了信號數據和多片fpga之間準確的映射,使得軟件和硬件之間可以準確傳遞數據。
24、在一個具體的可實施方案中,在所述根據通信模型確定轉換后的所述信號數據對應的目標fpga片之后,還包括:
25、所述軟硬件通信單元設立serviceloop模塊,所述serviceloop模塊負責管理和調度數據傳輸任務。
26、通過上述技術方案,serviceloop模塊循環地檢查是否有數據需要在軟硬件之間傳輸,并根據仿真需求觸發相關任務,避免數據丟失或延遲。通過高效的任務調度,serviceloop保證了仿真的實時性和準確性。
27、在一個具體的可實施方案中,在所述所述軟硬件通信單元通過pcie接口將轉換后的所述信號數據傳輸到所述硬件fpga單元之后,還包括:
28、所述硬件fpga單元根據轉換后的所述信號數據進行仿真,得到硬件仿真數據;
29、所述硬件fpga單元將所述硬件仿真數據通過所述pcie通道傳輸到所述軟件側單元;
30、所述軟件側單元通過adapter轉換所述硬件仿真數據的格式得到驗證數據,將所述驗證數據傳輸到所述測試平臺單元;
31、所述測試平臺單元根據所述驗證數據和所述信號數據,驗證用戶設計是否符合預期。
32、通過上述技術方案,當設計大型或復雜的系統設計時,進行數據驗證能確保用戶設計和多片fpga之間映射準確,軟硬件通信沒有出錯,能夠準確地仿真整個系統。
33、在一個具體的可實施方案中,所述所述測試平臺單元根據所述驗證數據和所述信號數據,驗證用戶設計是否符合預期包括:
34、所述測試平臺單元分析信號數據和驗證數據,判斷信號數據和驗證數據是否一致;
35、若信號數據和驗證數據一致,則判定驗證用戶設計符合預期;
36、若信號數據和驗證數據不一致,則驗證用戶設計不符合預期。
37、通過上述技術方案,提供了驗證的具體驗證方法,使得驗證過程更明確具體,判定多片fpga軟硬件通信方法運行是否出錯更加準確。
38、第二方面,本申請提供一種多片fpga軟硬件通信系統,采用如下技術方案:所述系統包括:
39、軟硬件通信單元,用于創建通信模型,所述通信模型包括所述信號在所述fpga片上的映射關系;
40、軟件側單元,軟件側單元用于在仿真過程中通過api接口與所述測試平臺單元的所述硬件設計代碼進行數據交互,抓取數據交互產生的信號數據;
41、軟件側單元,軟件側單元用于通過adapter轉換所述信號數據的格式;
42、軟件側單元,用于將轉換后的所述信號數據傳輸到所述軟硬件通信單元;
43、軟硬件通信單元本文檔來自技高網...
【技術保護點】
1.一種支持多片FPGA軟硬件通信方法,其特征在于:所述方法基于軟硬件通信系統,所述軟硬件通信系統包括包含硬件設計代碼的測試平臺單元、用于傳輸并處理數據的軟件側單元、軟硬件通信單元和硬件FPGA單元,所述方法包括:
2.根據權利要求1所述方法,其特征在于,所述軟硬件通信單元創建通信模型包括:
3.根據權利要求2所述方法,其特征在于,所述抓取數據交互產生的信號數據包括:
4.根據權利要求3所述方法,其特征在于,所述所述軟硬件通信單元根據通信模型確定轉換后的所述信號數據對應的目標FPGA片包括:
5.根據權利要求1所述方法,其特征在于,在所述根據通信模型確定轉換后的所述信號數據對應的目標FPGA片之后,還包括:
6.根據權利要求1所述方法,其特征在于,在所述所述軟硬件通信單元通過PCIE接口將轉換后的所述信號數據傳輸到所述硬件FPGA單元之后,還包括:
7.根據權利要求6所述方法,其特征在于,所述所述測試平臺單元根據所述驗證數據和所述信號數據,驗證用戶設計是否符合預期包括:
8.一種多片FPGA軟硬件
9.一種計算機設備,其特征在于,包括存儲器和處理器,所述存儲器上存儲有能夠被處理器加載并執行如權利要求1至7中任一種方法的計算機程序。
10.一種計算機可讀存儲介質,其特征在于,存儲有能夠被處理器加載并執行如權利要求1至7中任一種方法的計算機程序。
...【技術特征摘要】
1.一種支持多片fpga軟硬件通信方法,其特征在于:所述方法基于軟硬件通信系統,所述軟硬件通信系統包括包含硬件設計代碼的測試平臺單元、用于傳輸并處理數據的軟件側單元、軟硬件通信單元和硬件fpga單元,所述方法包括:
2.根據權利要求1所述方法,其特征在于,所述軟硬件通信單元創建通信模型包括:
3.根據權利要求2所述方法,其特征在于,所述抓取數據交互產生的信號數據包括:
4.根據權利要求3所述方法,其特征在于,所述所述軟硬件通信單元根據通信模型確定轉換后的所述信號數據對應的目標fpga片包括:
5.根據權利要求1所述方法,其特征在于,在所述根據通信模型確定轉換后的所述信號數據對應的目標fpga片之后...
【專利技術屬性】
技術研發人員:劉青青,周斌,楊滔,
申請(專利權)人:無錫亞科鴻禹電子有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。