[發明專利]基于GPU的大規模連續變量量子密鑰分發的數據協調方法有效
| 申請號: | 201710198740.4 | 申請日: | 2017-03-29 |
| 公開(公告)號: | CN106992856B | 公開(公告)日: | 2020-09-29 |
| 發明(設計)人: | 郭大波;王曉凱;劉紹婷;馮強 | 申請(專利權)人: | 山西大學 |
| 主分類號: | H04L9/08 | 分類號: | H04L9/08;H04L1/00;H03M13/11 |
| 代理公司: | 山西五維專利事務所(有限公司) 14105 | 代理人: | 程園園 |
| 地址: | 030006*** | 國省代碼: | 山西;14 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 gpu 大規模 連續 變量 量子 密鑰 分發 數據 協調 方法 | ||
1.一種基于GPU的大規模連續變量量子密鑰分發的數據協調方法,其特征在于,所述數據協調方法包括:
步驟1,CPU將LDPC稀疏校驗矩陣H以靜態雙向循環十字鏈表的方式進行存儲,并通過CPU與GPU之間的通信接口將該LDPC稀疏校驗矩陣H發送至GPU;
步驟2,CPU控制發送端Alice通過量子信道將大規模連續變量量子X發送至接收端Bob;CPU控制接收端Bob首先通過零拍探測器探測到序列Y后,對序列Y進行量化,得到二進制離散序列Y′;然后,CPU控制接收端Bob使用多級編碼調制將二進制離散序列Y′分級,得到第1級碼流序列、第2級碼流序列、第3級碼流序列和第4級碼流序列,并將第3級碼流序列和第4級碼流序列經Slepian-Wolf編碼器進行數據壓縮后,得到編碼后的第3級碼流序列和編碼后的第4級碼流序列;接下來,CPU控制接收端Bob將LDPC稀疏校驗矩陣H與編碼后的第3級碼流序列和編碼后的第4級碼流序列分別相乘,得到第3級碼流序列對應的校驗子S3和第4級碼流序列對應的校驗子S4;最后,CPU控制接收端Bob將第1級碼流序列、第2級碼流序列、第3級碼流序列對應的校驗子S3和第4級碼流序列對應的校驗子S4通過理想經典信道發送回發送端Alice;
步驟3,GPU根據發送端Alice上的第3級碼流序列對應的校驗子S3和第4級碼流序列對應的校驗子S4及發送端Alice自身存儲的邊信息X,分配多個線程進行并行化多級解碼,直至滿足收斂條件或者達到最大迭代次數時譯碼結束;
其中,所述步驟1中CPU將LDPC稀疏校驗矩陣H以靜態雙向循環十字鏈表的方式進行存儲,包括:
步驟1.1,CPU獲取LDPC稀疏校驗矩陣H中的非零元素的個數,申請靜態大小為非零元素個數的連續內存,并將所有的非零元素存儲在這片內存中;
步驟1.2,CPU以結構體數組的形式定義數據域,其中,數據域代表非零元素的節點,數據域里面的成員有似然比信息值及前后左右節點的位置地址信息值,其中,該似然比信息值就是指每一次譯碼步驟后的結果值;位置地址信息值區別于動態鏈表中的指針類型,而是被定義為int的數據類型;第i個非零元素存放在靜態內存中,在行上,i中的右位置地址信息值代表第i+1個非零元素的行位置,左位置地址信息值代表第i-1個非零元素的行位置;在列上,i中的前位置地址信息值代表第i+1個非零元素的列位置,后位置地址信息值代表第i-1個非零元素的列位置;
步驟1.3,CPU以數據域的形式生成行頭指針域Tx和列頭指針域Tf,這兩個數組指向的地址是步驟1.1中申請的非零元素大小的靜態內存的地址;
步驟1.4,CPU指向行頭指針域Tx和列頭指針域Tf,指針指向第一個非零元素的位置,獲取到該第一個非零元素的所有信息后,CPU根據第一個非零元素中的位置地址信息值指向下一個非零元素的位置,得到下一個非零元素的信息后,指針又會根據位置地址信息值指向新的位置信息,依次執行下去即可獲取到所有的非零元素的信息,從而得到以靜態雙向循環十字鏈表的方式存儲的LDPC稀疏校驗矩陣H。
2.根據權利要求1所述的數據協調方法,其特征在于,所述步驟3中GPU根據發送端Alice上的第3級碼流序列對應的校驗子S3和第4級碼流序列對應的校驗子S4及發送端Alice自身存儲的邊信息X,分配多個線程進行并行化多級解碼,直至滿足收斂條件或者達到最大迭代次數時譯碼結束,包括:
GPU根據發送端Alice上的第3級碼流序列對應的校驗子S3和第4級碼流序列對應的校驗子S4及發送端Alice自身存儲的邊信息X,分配多個線程依據多級譯碼步驟更新非零元素數據域中的似然比信息值,直至滿足收斂條件或者達到最大迭代次數時譯碼結束,LDPC碼可以由LDPC稀疏校驗矩陣H唯一表示,LDPC稀疏校驗矩陣行上的非零元素就稱為校驗節點,列上的非零元素稱為變量節點;
其中,多級譯碼步驟如下:
步驟3.1,GPU進行信息初始化,即初始化并通過如下公式(1)計算第一次迭代時邊信息的值其中,l表示連續變量信息序列的長度,j表示譯碼級數;
公式(1)中,[τa,τa-1]是令時量化區間的上下限值,[τa′,τa′-1]是令時量化區間的上下限值;yi1表示第一級碼流序列,yi2表示第二級碼流序列;O(i)表示連續變量Y量化后形成的變量節點集,Oij表示邊信息,ij表示當前變量節點,N(ij)表示與ij相連的校驗節點集,其中一個校驗節點為k,M(k)表示與k相連的變量節點集,vijk表示變量節點傳遞給校驗節點的信息,ukij表示校驗節點傳遞給變量節點的信息;
步驟3.2,GPU通過如下公式(2)計算校驗節點傳遞給變量節點的外信息;
公式(2)中,對于1≤t≤tmax,1≤p≤pmax,t為級間迭代次數,tmax=1,p表示LDPC置信傳播和積算法的迭代次數,pmax=100,Sk表示校驗序列中校驗節點k對應的校驗位,i′jk表示除變量節點ij外與校驗節點k相連的所有變量節點的集合;
步驟3.3,GPU通過如下公式(3)計算變量節點傳遞給校驗節點的外信息;
公式(3)中,k′ij表示除校驗節點k外與變量節點ij相連的所有校驗節點的集合;
步驟3.4,轉至步驟3.2,直至p>pmax時執行步驟3.5;
步驟3.5,GPU通如下公式(4)和(5)對所有變量節點計算硬判決信息
步驟3.6,GPU根據硬判決信息通過如下公式(6)更新邊信息O(i,j),令j′=4引入同一時隙所有層的硬信息;
其中,表示第t次迭代的邊信息;
步驟3.7,令p=0,t=t+1,如果t>tmax則譯碼結束;否則,返回步驟3.2直至t>tmax。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于山西大學,未經山西大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710198740.4/1.html,轉載請聲明來源鉆瓜專利網。





