[發明專利]一種多AWG板卡的控制方法有效
| 申請號: | 202010963655.4 | 申請日: | 2020-09-15 |
| 公開(公告)號: | CN112100111B | 公開(公告)日: | 2022-04-26 |
| 發明(設計)人: | 田洪剛 | 申請(專利權)人: | 浪潮集團有限公司 |
| 主分類號: | G06F13/42 | 分類號: | G06F13/42;G06F13/40;G06F9/4401 |
| 代理公司: | 濟南泉城專利商標事務所 37218 | 代理人: | 李桂存 |
| 地址: | 250104 山*** | 國省代碼: | 山東;37 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 awg 板卡 控制 方法 | ||
一種多AWG板卡的控制方法,HASH_FIND_INT接口通過AWG板卡編號ID,返回不同的哈希表項map_item,當再次對板卡進行觸發模式設置操作時,此時設備句柄已經成功更新為期望控制的AWG板卡,即可成功實現多板卡的控制,通過嵌入Hash數據結構,利用Hash鍵?值對的方式進行PCIe設備句柄的插,查操作,解決了計算機機箱上同時插入多塊AWG板卡無法進行正常控制的問題。
技術領域
本發明涉及波形發生器控制領域,具體涉及一種多AWG板卡的控制方法。
背景技術
AWG(Arbitary Waveform Generator,任意波形發生器)作為一種信號發生設備,能夠產生復雜的時變多路信號,在軍事領域能夠為復雜雷達、電子偵察、敵我識別等裝備的性能指標進行測量,提供多種數字調制信號;在科學研究領域也得到了廣泛應用,尤其是在某些前沿科技研究領域中,需要支持多塊AWG板卡協同工作。
由于現階段每次打開設備都會返回新的設備句柄,因此無法對多路板卡進行正確控制,導致板卡控制失效,波形發送失敗,只能進行單AWG板卡的操作,大大降低了研發和工作效率。因此迫切需要實現一種多AWG板卡的控制方法。
發明內容
本發明為了克服以上技術的不足,提供了一種實現在計算機上同時插入多塊AWG板卡可以進行同時控制的方法。
本發明克服其技術問題所采用的技術方案是:
一種多AWG板卡的控制方法,包括:
a)在計算機上主板的PCIe插槽中插入N塊AWG板卡,N為大于等于2的正整數;
b)在Windows系統中安裝PCIe Xilinx DMA驅動程序,Windows系統獲取當前機箱上插入的AWG板卡數量;
c)Windows系統檢測指定PCIe插槽中是否存在AWG板卡,如果在對應的PCIe插槽未檢測到匹配的AWG板卡,則打印報錯信息,如果在對應的PCIe插槽檢測到匹配的AWG板卡,則打開該PCIe設備,并返回該設備的設備句柄;
d)利用uthash C代碼,使用malloc函數動態創建哈希表項map_item,將map_item的鍵設置為AWG板卡編號ID,map_item的值設置為AWG板卡的設備句柄;
e)將新創建的哈希表項map_item插入到哈希表map_table中,完成新設備的插入;
f)當用戶需要對指定PCIe插槽中的AWG板卡進行操作時,Windows系統底層代碼接收到上層傳入的PCIe插槽的槽位號參數,將該槽位號轉換為與該AWG板卡所對應的鍵值,使用HASH_FIND_INT接口查找哈希表map_table中該鍵值所對應的哈希表項map_item;
g)Windows系統調用ReadFile()接口,設置該接口參數dev_user指定為哈希表項map_item的值,設置該接口參數address為要讀取XDMA IP內核的狀態或空置寄存器地址;
h)Windows系統調用WriteFile()接口,設置該接口參數dev_user指定為哈希表項map_item的值,設置該接口參數address為要讀取XDMA IP內核的狀態或空置寄存器地址,設置該接口參數data為寫入的數據;
i)當切換指定的機箱上的槽位號時,HASH_FIND_INT接口通過AWG板卡編號ID,返回不同的哈希表項map_item。
進一步的,步驟b)中Windows系統通過get_devices()接口獲取當前機箱上插入的AWG板卡數量,利用GUID標識標識所有PCIe設備并將每個設備的序列號一次填充到數組中,get_devices()接口調用成功返回機箱上插入的AWG板卡數目。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于浪潮集團有限公司,未經浪潮集團有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010963655.4/2.html,轉載請聲明來源鉆瓜專利網。





