[發(fā)明專利]一種程序計(jì)數(shù)器壓縮方法及其硬件電路有效
| 申請(qǐng)?zhí)枺?/td> | 201611143794.2 | 申請(qǐng)日: | 2016-12-13 |
| 公開(公告)號(hào): | CN106656200B | 公開(公告)日: | 2019-11-08 |
| 發(fā)明(設(shè)計(jì))人: | 張多利;張斌;宋宇鯤;衛(wèi)燦 | 申請(qǐng)(專利權(quán))人: | 合肥工業(yè)大學(xué) |
| 主分類號(hào): | H03M7/30 | 分類號(hào): | H03M7/30;G06F11/36 |
| 代理公司: | 北京律譜知識(shí)產(chǎn)權(quán)代理事務(wù)所(普通合伙) 11457 | 代理人: | 黃云鐸 |
| 地址: | 230000 安*** | 國(guó)省代碼: | 安徽;34 |
| 權(quán)利要求書: | 查看更多 | 說(shuō)明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 程序 計(jì)數(shù)器 壓縮 方法 及其 硬件 電路 | ||
1.一種程序計(jì)數(shù)器壓縮方法,其特征在于,所述壓縮方法包括下述步驟:
步驟(1)、獲取處理器發(fā)出的指令的執(zhí)行情況,并且基于所述指令的執(zhí)行情況對(duì)所述指令進(jìn)行分類篩選,所述程序計(jì)數(shù)器壓縮方法將指令的類型分為(1)順序執(zhí)行、(2)跳轉(zhuǎn)和(3)阻塞;
步驟(2)、基于分類篩選的結(jié)果對(duì)目標(biāo)類型指令的程序計(jì)數(shù)器值和阻塞周期進(jìn)行差分處理,并且對(duì)所獲得的差分值進(jìn)行切片處理,獲得相應(yīng)的有效數(shù)據(jù)段;
步驟(3)、對(duì)步驟(2)中獲得的差分切片的有效數(shù)據(jù)段進(jìn)行字典編碼,其中,所述步驟(2)包括:
步驟(2.1)、對(duì)于所記錄下的阻塞指令和跳轉(zhuǎn)指令的程序計(jì)數(shù)器值和相應(yīng)的指令持續(xù)周期數(shù)進(jìn)行差分,獲得相應(yīng)差分值;
步驟(2.2)、將差分值按照數(shù)據(jù)位的順序分成若干數(shù)據(jù)段,每個(gè)數(shù)據(jù)段的數(shù)據(jù)位數(shù)相同;
步驟(2.3)、從左至右判斷每個(gè)數(shù)據(jù)段中的各個(gè)數(shù)據(jù)位是否全為0或全為1;
步驟(2.4)若數(shù)據(jù)段中的各個(gè)數(shù)據(jù)位全為0或全為1,則舍棄該數(shù)據(jù)段,若數(shù)據(jù)段中的各個(gè)數(shù)據(jù)位不全為0或1,則將該數(shù)據(jù)段以及其低位數(shù)據(jù)段均傳輸至步驟(3)。
2.根據(jù)權(quán)利要求1所述的程序計(jì)數(shù)器壓縮方法,其特征在于,
所述步驟(1)包括:
步驟(1.1)、獲取每個(gè)指令所對(duì)應(yīng)的程序計(jì)數(shù)器值;
步驟(1.2)求解任意兩條連續(xù)指令的程序計(jì)數(shù)器值的差值PC_diff=PC-PC_pre,其中,PC表示當(dāng)前周期的程序計(jì)數(shù)器值,PC_pre表示上一個(gè)周期的程序計(jì)數(shù)器值;
步驟(1.3)基于任意兩條連續(xù)指令的程序計(jì)數(shù)器值的差值PC_diff對(duì)所述指令進(jìn)行分類,
(a)如果PC_diff=1,則將該指令分類為順序指令,對(duì)該指令不做記錄;
(b)如果PC_diff=0:則將該指令分類為阻塞指令,記錄阻塞指令對(duì)應(yīng)的程序計(jì)數(shù)器值和阻塞的周期;
(c)如果PC_diff≠0且PC_diff≠1,則將該指令分類為跳轉(zhuǎn)指令,記錄該指令對(duì)應(yīng)的分支地址和目標(biāo)地址所對(duì)應(yīng)的程序計(jì)數(shù)器的值。
3.根據(jù)權(quán)利要求1所述的程序計(jì)數(shù)器壓縮方法,其特征在于,所述步驟(3)包括:
步驟(3.1)、接收步驟(2)中所傳送的數(shù)據(jù)段,其中每個(gè)數(shù)據(jù)段包含若干源數(shù)據(jù);
步驟(3.2)、在存儲(chǔ)器中構(gòu)建字典,所述字典包括若干元素;
步驟(3.3)、對(duì)每個(gè)源數(shù)據(jù),依次從字典中的每個(gè)元素中進(jìn)行查找,若當(dāng)前源數(shù)據(jù)與字典中的某個(gè)元素相匹配,則記錄下字典中該元素的位置后再利用源數(shù)據(jù)更新字典,若所有元素均不匹配,則直接利用源數(shù)據(jù)更新字典,字典更新時(shí),字典不發(fā)生滑動(dòng),依次將源數(shù)據(jù)從左至右將字典中的元素覆蓋,并且,每次更新之后,將對(duì)查找起始位置+1。
4.根據(jù)權(quán)利要求3所述的程序計(jì)數(shù)器壓縮方法,其特征在于,所述步驟(3)還包括:
對(duì)字典窗口進(jìn)行分割,單次讀入N個(gè)數(shù)據(jù)源,N為大于等于2的正整數(shù),對(duì)于每個(gè)數(shù)據(jù)源,每個(gè)程序周期啟動(dòng)一個(gè)數(shù)據(jù)源的查找,每個(gè)數(shù)據(jù)源的查找起始位置比上一個(gè)增加1,獲取對(duì)于每個(gè)數(shù)據(jù)源的查找匹配結(jié)果,基于對(duì)所有N個(gè)數(shù)據(jù)源的匹配結(jié)果,確定實(shí)際匹配結(jié)果。
5.一種程序計(jì)數(shù)器壓縮裝置,其特征在于,所述壓縮裝置包括:
指令分類模塊、數(shù)據(jù)差分切片模塊、字典編碼模塊,所述指令分類模塊用于獲取處理器發(fā)出的指令的執(zhí)行情況,并且基于所述指令的執(zhí)行情況對(duì)所述指令進(jìn)行分類篩選,將指令的類型分為(1)順序執(zhí)行、(2)跳轉(zhuǎn)和(3)阻塞;
所述數(shù)據(jù)差分切片模塊用于基于分類篩選的結(jié)果對(duì)目標(biāo)類型指令的程序計(jì)數(shù)器的值和阻塞周期進(jìn)行差分處理,并且對(duì)所獲得的差分值進(jìn)行切片處理,所述數(shù)據(jù)差分切片模塊用于:對(duì)于所記錄下的阻塞指令和跳轉(zhuǎn)指令的程序計(jì)數(shù)器值和相應(yīng)的指令持續(xù)周期數(shù)進(jìn)行差分,獲得相應(yīng)差分值;將差分值按照數(shù)據(jù)位的順序分成若干數(shù)據(jù)段,每個(gè)數(shù)據(jù)段的數(shù)據(jù)位數(shù)相同;從左至右判斷每個(gè)數(shù)據(jù)段中的各個(gè)數(shù)據(jù)位是否全為0或全為1;若數(shù)據(jù)段中的各個(gè)數(shù)據(jù)位全為0或全為1,則舍棄該數(shù)據(jù)段,若數(shù)據(jù)段中的各個(gè)數(shù)據(jù)位不全為0或1,則將該數(shù)據(jù)段以及其低位數(shù)據(jù)段均傳輸至步驟(3);
所述字典編碼模塊用于基于深度為N的RAM構(gòu)建字典編碼,并且,對(duì)有效的差分切片的數(shù)據(jù)段進(jìn)行LZ字典編碼。
6.根據(jù)權(quán)利要求5所述的程序計(jì)數(shù)器壓縮裝置,其特征在于,所述壓縮裝置用于執(zhí)行權(quán)利要求1-4中任意一項(xiàng)所述的方法。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于合肥工業(yè)大學(xué),未經(jīng)合肥工業(yè)大學(xué)許可,擅自商用是侵權(quán)行為。如果您想購(gòu)買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611143794.2/1.html,轉(zhuǎn)載請(qǐng)聲明來(lái)源鉆瓜專利網(wǎng)。
- 上一篇:戒指(SWAN?QLB160803)
- 下一篇:掛墜(圓滿?1)
- 同類專利
- 專利分類
H03M 一般編碼、譯碼或代碼轉(zhuǎn)換
H03M7-00 把用給定序列的數(shù)字或給定數(shù)目的數(shù)字來(lái)表示信息的碼,轉(zhuǎn)換到用不同序列的數(shù)字或不同數(shù)目的數(shù)字來(lái)表示相同信息的碼
H03M7-02 .轉(zhuǎn)換到加權(quán)代碼或相反轉(zhuǎn)換,即對(duì)一數(shù)字的加權(quán)與該數(shù)字在信息組或代碼字中的位置有關(guān)
H03M7-14 .轉(zhuǎn)換到非加權(quán)代碼或相反轉(zhuǎn)換
H03M7-26 .轉(zhuǎn)換到隨機(jī)碼或相反轉(zhuǎn)換
H03M7-28 .可編程序結(jié)構(gòu),即代碼轉(zhuǎn)換器所包括的設(shè)備其算符是可變的,以調(diào)整轉(zhuǎn)換程序
H03M7-30 .壓縮
- 功能限制程序、安裝程序生成程序和程序存儲(chǔ)介質(zhì)
- 程序生成系統(tǒng)、程序生成程序和程序生成模塊
- 程序生成系統(tǒng)、程序生成程序和程序生成模塊
- 程序創(chuàng)建裝置,程序創(chuàng)建方法和程序
- 程序生成裝置、程序生產(chǎn)方法及程序
- 程序生成裝置、程序生成程序以及程序生成方法
- 程序生成裝置、程序生成方法及程序生成程序
- 程序開發(fā)支持裝置、程序開發(fā)支持方法以及存儲(chǔ)介質(zhì)
- 程序執(zhí)行輔助裝置、程序執(zhí)行輔助方法及程序執(zhí)行輔助程序
- 程序?qū)φ昭b置、程序?qū)φ辗椒俺绦驅(qū)φ粘绦?/a>
- 多計(jì)數(shù)器的構(gòu)造方法、多計(jì)數(shù)器及使用其的多隊(duì)列裝置
- 用于可調(diào)式移液器的計(jì)數(shù)器
- 清花棉卷產(chǎn)量計(jì)數(shù)器
- 一種時(shí)鐘頻率跟蹤測(cè)量及誤差估計(jì)實(shí)現(xiàn)方法和模塊
- 燃?xì)獗碛?jì)數(shù)器的安裝裝置
- 一種魚卵魚苗便利計(jì)數(shù)器
- 燃?xì)獗碛?jì)數(shù)器的安裝裝置
- 一種膜式燃?xì)獗碛?jì)數(shù)器
- 一種燃?xì)獗碛?jì)數(shù)器防竊氣結(jié)構(gòu)
- 一種捻股雙計(jì)長(zhǎng)裝置
- 一種數(shù)據(jù)庫(kù)讀寫分離的方法和裝置
- 一種手機(jī)動(dòng)漫人物及背景創(chuàng)作方法
- 一種通訊綜合測(cè)試終端的測(cè)試方法
- 一種服裝用人體測(cè)量基準(zhǔn)點(diǎn)的獲取方法
- 系統(tǒng)升級(jí)方法及裝置
- 用于虛擬和接口方法調(diào)用的裝置和方法
- 線程狀態(tài)監(jiān)控方法、裝置、計(jì)算機(jī)設(shè)備和存儲(chǔ)介質(zhì)
- 一種JAVA智能卡及其虛擬機(jī)組件優(yōu)化方法
- 檢測(cè)程序中方法耗時(shí)的方法、裝置及存儲(chǔ)介質(zhì)
- 函數(shù)的執(zhí)行方法、裝置、設(shè)備及存儲(chǔ)介質(zhì)





