[發明專利]一種模擬器的生成方法及裝置有效
申請號: | 201110369445.3 | 申請日: | 2011-11-18 |
公開(公告)號: | CN102521011A | 公開(公告)日: | 2012-06-27 |
發明(設計)人: | 葉寒棟;趙鵬;鄭森火;曹炯 | 申請(專利權)人: | 華為技術有限公司 |
主分類號: | G06F9/455 | 分類號: | G06F9/455 |
代理公司: | 北京中博世達專利商標代理有限公司 11274 | 代理人: | 申健 |
地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
權利要求書: | 查看更多 | 說明書: | 查看更多 |
摘要: | |||
搜索關鍵詞: | 一種 模擬器 生成 方法 裝置 | ||
1.一種模擬器的生成方法,其特征在于,包括:
獲取指令集配置文件;
根據所述指令集配置文件生成解碼表和解碼算法;所述解碼表包括:指令碼表,指令描述表和位域表;其中,所述指令碼表中記錄有匯編指令操作碼,所述指令描述表記錄有每條匯編指令操作碼的詳細信息,所述位域表記錄有計算每一個操作數位域上的數值的方法;
根據所述解碼表、所述解碼算法和模塊代碼生成模擬器;所述模塊代碼是用于模擬匯編指令的動作的代碼和解碼過程中非解碼算法的代碼。
2.根據權利要求1所述的模擬器的生成方法,其特征在于,
所述指令集配置文件包括:每一指令的匯編輸出格式、操作數類型及編碼格式;所述指令包括:操作數和操作碼;
所述根據所述指令集配置文件生成解碼表包括:
根據所述每一指令操作碼生成指令碼表;
根據所述每一指令的匯編輸出格式、操作數類型及編碼格式生成指令描述表;
根據所述每一指令的操作數生成位域表。
3.根據權利要求2所述的模擬器的生成方法,其特征在于,所述根據每一指令操作碼生成指令碼表具體為:
根據每一指令操作碼位域和各操作碼位域的值生成具有層次的指令碼表。
4.根據權利要求2或3所述的模擬器的生成方法,其特征在于,所述解碼算法包括:獲取匯編指令操作碼算法、獲取匯編指令操作碼相關信息算法和獲取匯編指令操作數算法三部分;
所述根據所述指令集配置文件生成解碼算法具體包括:
按照由所述指令集配置文件生成所述指令碼表的規則,生成用于在所述指令碼表中查找二進制指令操作碼對應的匯編指令操作碼的解碼算法的獲取匯編指令操作碼算法;
按照由所述指令集配置文件生成所述指令描述表的規則以及所述指令碼表和所述指令描述表之間的索引關系,生成用于根據所述匯編指令操作碼索引所述指令描述表并在索引到的指令描述表中讀取匯編指令操作碼的相關信息的解碼算法的獲取匯編指令操作碼相關信息算法;
按照由所述指令集配置文件生成所述位域表的規則,以及所述指令描述表和所述位域表之間的索引關系,生成用于根據所述匯編指令操作碼的相關信息索引位域表并根據索引到的位域表計算出匯編指令操作數的解碼算法的獲取匯編指令操作數算法。
5.根據權利要求4所述的模擬器的生成方法,其特征在于,所述解碼表還包括:與所述指令碼表之間存在索引關系的間接索引表;
所述按照由所述指令集配置文件生成所述指令碼表的規則,生成用于在所述指令碼表中查找二進制指令操作碼對應的匯編指令操作碼的解碼算法的獲取匯編指令操作碼算法包括:
按照由所述指令集配置文件生成所述指令碼表和間接索引表的規則,以及所述指令碼表和所述間接索引表之間的索引關系,生成用于在所述指令碼表中查找二進制指令操作碼對應的匯編指令操作碼的解碼算法的獲取匯編指令操作碼算法。
6.根據權利要求1~5任一項所述的模擬器的生成方法,其特征在于,在同一指令集配置文件中,一條指令在一個指令集中或者在至少兩個不同的指令集中。
7.一種模擬器的生成裝置,其特征在于,包括:
獲取單元,用于獲取指令集配置文件;
解釋器,用于根據所述指令集配置文件生成解碼表和解碼算法;所述解碼表包括:指令碼表,指令描述表和位域表;其中,所述指令碼表中記錄有匯編指令操作碼,所述指令描述表記錄有每條匯編指令操作碼的詳細信息,所述位域表記錄有計算每一個操作數位域上的數值的方法;
編譯器,用于根據所述解碼表、所述解碼算法和模塊代碼生成模擬器;所述模塊代碼是用于模擬匯編指令的動作的代碼和解碼過程中非解碼算法的代碼。
8.根據權利要求7所述的模擬器的生成裝置,其特征在于,
所述指令集配置文件包括:每一指令的匯編輸出格式、操作數類型及編碼格式;所述指令包括:操作數和操作碼;
所述解釋器中用于根據所述指令集配置文件生成解碼表包括:
生成指令碼表模塊,用于根據所述每一指令操作碼生成指令碼表;
生成指令描述表模塊,用于根據所述每一指令的匯編輸出格式、操作數類型及編碼格式生成指令描述表;
生成位域表模塊,用于根據所述每一指令的操作數生成位域表。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110369445.3/1.html,轉載請聲明來源鉆瓜專利網。