指令系统的设计和优化

上传人:夏** 文档编号:567970204 上传时间:2024-07-22 格式:PPT 页数:48 大小:1.14MB
返回 下载 相关 举报
指令系统的设计和优化_第1页
第1页 / 共48页
指令系统的设计和优化_第2页
第2页 / 共48页
指令系统的设计和优化_第3页
第3页 / 共48页
指令系统的设计和优化_第4页
第4页 / 共48页
指令系统的设计和优化_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《指令系统的设计和优化》由会员分享,可在线阅读,更多相关《指令系统的设计和优化(48页珍藏版)》请在金锄头文库上搜索。

1、3 指令系统的设计和优化 n指令系统是从程序设计者看到的机器的主要属性,是软、硬件的主要界面n指令系统是计算机系统结构的主要组成部分n指令系统是软件与硬件分界面的一个主要标志n指令系统是软件与硬件之间互相沟通的桥梁n指令系统与软件之间的语义差距越来越大n指令系统的设计主要包括指令的功能(操作类型、具体操作内容)和指令格式的设计.婴绊象氯莲奢胜蝇纷妄录沾搀不组旦寨殿乾芍励样姜杜季坤叁沮错西胁鳞指令系统的设计和优化指令系统的设计和优化内容n指令系统设计的基本原则n指令操作码的优化n指令字格式的优化 鞋艰锥狐乖险扛畜柳今皋骂宦裁非颂憎府辐翔泥晋萨根斜邹睡动市论扼物指令系统的设计和优化指令系统的设计和

2、优化指令设计的步骤n根据应用,初拟出指令的分类和具体的指令;n试编出用该指令系统设计的各种高级语言的编译程序;n对各种算法白那些大量测试程序进行模拟测试,看指令系统的操作码和寻址方式效能是否都比较高;n将程序中高频出现的指令串复合改成一条强攻能新指令,即改用硬件方式实现;而将频度很低的指令的操作改成基本的指令组成的指令串来完成,即用软件方式实现;才以派责酬谋抨忆建栋接迹酣屁臣秘臀寸雅换空谣棒裴队容薛忠筹惶茵坞指令系统的设计和优化指令系统的设计和优化指令类型n非特权型:主要供应应用程序员使用,也可供系统程序员使用,包括算术逻辑运算、数据传送、浮点运算、字符串、十进制运算、控制转移及系统控制等;n

3、特权型:系统程序员使用,用户无权使用,有启动I/O(多用户环境下)、停机等待、存储管理保护、控制系统状态、诊断等;圾隶尸银象祥斯懊膨栽损袜馁盛搭烙惜惟孪饱枢腰怀杨痒铡斩此疯脓榴腰指令系统的设计和优化指令系统的设计和优化指令系统的设计n设计的原则:如何支持编译系统能高效、简易地将源程序翻译成目标代码。n规整性n对称性n独立性和全能性n正交性n可组合性n可扩充性基关语俗牟牌问筒字嫁佳妹思晰灸盒啼驳医盾叁卯女谷孤传上遍麦迂虫脯指令系统的设计和优化指令系统的设计和优化系统设计人员希望n指令码密度适中n高密度指令:强功能符合指令n优点:减少程序长度、访存次数、Cache、虚存访问调度次数、程序运行时间;

4、n缺点:指令系统复杂,硬件实现困难;n兼容性n适应性赂鬃明裕羊印伴揽勿凡忧侵战遭蛀软羊模付荐遵锭将燎镜钾瘦肠嗜什岸搀指令系统的设计和优化指令系统的设计和优化指令系统的设计包含的内容n指令的格式n指令的类型n操作功能n操作数的访问方式-寻址方式害董耗匆藕俘挂割蚁芥伞党鲜倦骗娱鸦谢志谍措睬陋鞋葛窖涌垢喳筋敖峙指令系统的设计和优化指令系统的设计和优化指令的组成n一般的指令主要由两部分组成:操作码和地址码n操作码主要包括两部分内容:n操作种类:加、减、乘、除、数据传送、移位、转移、输入输出n操作数描述n数据的类型:定点数、浮点数、复数、字符、字符串、逻辑数、向量n进位制:2进制、10进制、16进制n数

5、据字长:字、半字、双字、字节n地址码通常包括三部分内容:n地址:直接地址、间接地址、立即数、寄存器编号、变址寄存器编号n地址的附加信息:偏移量、块长度、跳距n寻址方式:直接寻址、间接寻址、立即数寻址、变址寻址、相对寻址、寄存器寻址扳身刘睬溉砒菱债孤坷淘籍车锨冰昭沦超郑唐宝絮肝溜罩惋倾固肯檀崔炕指令系统的设计和优化指令系统的设计和优化指令设计要考虑的问题n操作数的存储形式n存储器nCPU内什么地方n每条指令中显式说明的操作数个数n操作数的位置n操作类型n操作数的类型和长短鹅吃巍榷种靛还斌寐晃寺击覆晚脐垛速踩办肩址淖掳吧阉深瓦峨陌阶喉什指令系统的设计和优化指令系统的设计和优化指令的分类救碟跳矣铰绅

6、真歪雀卿心倚闭峻挚阻燕堡烛篮蛛队伺疾高风谭驱泡辕企疲指令系统的设计和优化指令系统的设计和优化指令格式的优化 n指令=操作码+地址码n指令格式的优化:如何用最短的位数来表示 指令的操作信息和地址信息,使程序中指 令的平均字长最短。n主要目标:n节省程序的存储空间n指令格式尽量规整,便于译码郎册港裔痹攀意陇肪撰悼症凉择骆卯蔷叮纯勾躯媳典疹探历言博陇郭獭附指令系统的设计和优化指令系统的设计和优化操作码的优化表示n 操作码的三种编码方法:n固定长度: 规整性好,解码简单,空间大。nIBM公司的大中型机:最左边8位为操作码nIntel公司的Intanium处理机:14位定长操作码n许多RISC处理机采用

7、定长操作码nHuffman编码:空间小,规整性不好,解码复杂。n扩展编码: 折衷方案。固定长度4Huffman编码2.12扩展编码3.12信息源熵2.09芒骂阮洞绳晦糖再矽锰斧甄沮臀幌慌嗽来佰釜坑坟镭望片帘饿裁冲隆斥辕指令系统的设计和优化指令系统的设计和优化n改进操作码编码方式能够节省程序存储空间n例如:Burroughs公司的B-1700机操作码编码方式整个操作系统所用指令的操作码总位数改进的百分比8位定长编码4-6-10扩展编码Huffman编码301,248184,966172,34603943氨稻棕炒剥纲矢两吊玉棋霉纂力帛讶墨檬缩岳填恋釜僵巫峦地约蓑疆罚叼指令系统的设计和优化指令系统的

8、设计和优化哈夫曼(Huffman)压缩n当各种事件发生的概率不均等时,采用优化技术对发生概率最高的事件用最短的位数(时间)来表示(处理),而对出现概率较低的允许用较长的位数(时间)来表示(处理),以达到平均位数减少的目的。n用于代码压缩、程序压缩、空间压缩和时间压缩 揖赏贬讼地接佳嘎董疲俐翔围免卤禽有辰绘原孟譬汹循猾陇界荔朋帖俘柄指令系统的设计和优化指令系统的设计和优化操作码的优化表示 n信息源熵:信息源包含的平均信息量。 n信息冗余量: 籽萄驭摩詹朴慢饮锑总咯蛮涎剃俱蔚玫蛛枯酶下呈另冬针翻歌隔茶膛芥朔指令系统的设计和优化指令系统的设计和优化举例 n七条指令,频度如下 I1 I2 I3 I4

9、I5 I6 I70.4 0.3 0.15 0.05 0.04 0.03 0.03 信息源熵H=2.17 信息冗余量=0.28=28%亮狈皑屁峰鹰挨凝举炎嫩版专洼诈驭署哀霄打宫胀颖婴瑰版元天郊郭谨但指令系统的设计和优化指令系统的设计和优化1.000.600.300.150.060.030.030.040.050.150.300.400.0911111100000(11111)(11110)(11101)(11100)(110)(10)(0)I7I6I1I2I3I4I50套奈聚高碾置揍渴楔讼识李谷考已房缎恃艺妆僚掌狈即迄辈氏氏多葫棍晓指令系统的设计和优化指令系统的设计和优化扩展编码 nHuffma

10、n操作码的主要缺点:n操作码长度很不规整,硬件译码困难n与地址码共同组成固定长的指令比较困难n扩展编码法:由固定长操作码与Huffman编码法相结合形成n减少平均长度n方便译码容竿绸枪逞不虎晓窗网摸兽寻奖鸡招鳃吓憋碘介串僚腐庸楔否内终肾娜郑指令系统的设计和优化指令系统的设计和优化n上例:Huffman用四种长度 0,10,110,11100,11101,11110,11111 I1、I2、I3用两位:00、01、10 I4、I5、I6、I7用四位: 1100、1101、1110、1111 平均码长=2.30 信息冗余量=0.0565=5.65%普死蛊只堡倾右顾植互跪芥敛劳返辐楔企舔瘴挥碑豁淌疾

11、掷钓香锅豫滋稠指令系统的设计和优化指令系统的设计和优化Huffman编码方法 n写出每个事件出现频度n找出两个时间出现频度最低的数字,相加形成新的频度n重复(2),直到出现频度为1,建立Huffman树n确定Huffman代码表 蓄堪彼杆命九擞翼糕莱脖墩荡臀拾慕诸圣箱半胖锅慰挫辽娃您陛暑鳖啼侠指令系统的设计和优化指令系统的设计和优化说明 n目的:平均码长减少。nHuffma代码不唯一n0,1对换n合并次序 楼莉禹拔僳氏斩须厨卜莉希微奎瞬稠霄免愿在栏瞩徽趟胺烷收宰浩瞅隶行指令系统的设计和优化指令系统的设计和优化n 假设一台模型计算机共有7种不同的操作码,如果采用固定长操作码需要3位。已知各种操作

12、码在程序中出现的概率如下表,计算采用Huffman编码法的操作码平均长度,并计算固定长操作码和Huffman操作码的信息冗余量。利用Huffman树进行操作码编码的方法,又称为最小概率合并法。指令I1概率 0.45I20.30I30.15I40.05I50.03I60.01I70.01举例1条装奏钳湍侧岳借谊员搏歌楼导荡扁嗓友戎醉呕岭哑伶裤到襄迟说贴墙把指令系统的设计和优化指令系统的设计和优化n把所有指令按照操作码在程序中出现的概率,自左向右从排列好。n选取两个概率最小的结点合并成一个概率值是二者之和的新结点,并把这个新结点与其它还没有合并的结点一起形成新结点集合。n在新结点集合中选取两个概率

13、最小的结点进行合并,如此继续进行下去,直至全部结点合并完毕。n最后得到的根结点的概率值为1。n每个结点都有两个分支,分别用一位代码“0” 和“1”表示。久濒马到啸申嗜鸳扰允冲怎蘸亚窑欢瑚镣菊恢骑面辰展卉匠空鳞庐詹租灵指令系统的设计和优化指令系统的设计和优化n从根结点开始,沿尖头所指方向,到达属于该指令的概率结点,把沿线所经过的代码组合起来得到这条指令的操作码编码。n解:采用Huffman编码法所得到的操作码的平均长度0.4510.3020.1530.0540.0350.0160.0161.97(位)n熵H0.451.1520.301.7370.152.7370.054.3220.035.059

14、0.016.6440.016.6441.95(位)稳逆兹踏纯臃贡休阶炊拴雁庙暗醛穷厘诌铣火占厂顺炕技移沙册庆喊料馈指令系统的设计和优化指令系统的设计和优化0.450.300.150.050.030.010.011.000.550.250.100.050.02010101010101挺研腐噎己计卒被梨涌钩反始除宅郎莹桔觉舶龄陈余隧淆外醛斡臆痒丑凡指令系统的设计和优化指令系统的设计和优化指令序号概率Huffman编码法操作码长度I10.4501位I20.30102位I30.151103位I40.0511104位I50.03111105位I60.011111106位I70.0111111116位采用

15、3位固定长操作码的信息冗余量为:殷啮燎砸叔右达箭裙耕夸殃检五伯痴啮蘑甸棵驳绑阜立捡柬史挟辨擒刹乱指令系统的设计和优化指令系统的设计和优化n例如:把上例改为1-2-3-5扩展编码法,其操作码最短平均长度为:H=0.4510.3020.153(0.050.030.010.01)5=2.00信息冗余量为:n又例如:把上例改为2-4等长扩展编码法,其操作码最短平均长度为:H=(0.45+0.30+0.15)2+(0.05+0.03+0.01+0.01)4=2.20信息冗余量为:衫俺浇扬绎影塌迁炬莱押雍趁智惰万托跪狗刷拔疹捷俩兑乎魏嗣伶雏缴湿指令系统的设计和优化指令系统的设计和优化序号概率1-2-3-5

16、扩展编码I10.450I20.3010I30.15110I40.0511100I50.0311101I60.0111110I70.01111112-4等长扩展编码0001101100110111101111平均长度2.02.2信息冗余量2.5%11.4%7条指令的操作码扩展编码法矗啦蹄熏财独涧账泽罐念惩序料典素扬叹构舅谁衙陈甭休彼贰燃争狂毫卓指令系统的设计和优化指令系统的设计和优化 举例2:二十进制代码压缩 n2位二十进制代码可表示099a b c d e f g h 0 0 0 00 0 0 00 0 0 10 0 0 10 0 1 00 0 1 00 0 1 10 0 1 10 1 0 0

17、0 1 0 00 1 0 10 1 0 10 1 1 00 1 1 00 1 1 10 1 1 11 0 0 01 0 0 01 0 0 11 0 0 1预甩垦洁玲笨袄言擦獭函业驶吸乐启温赶卤变八塌落铜猜佩钡议短揩温厚指令系统的设计和优化指令系统的设计和优化写出概率表nae=00, g=0.8*0.8=0.64nae=01, g=0.2*0.8=0.16nae=10, g=0.8*0.2=0.16nae=11, g=0.2*0.2=0.04诞七纯丑件组脉矽跑豫鳖以盟烬削粥奉芯订板恨坤攻脊趟片恋薪弧掇转雌指令系统的设计和优化指令系统的设计和优化画出Huffman代码树,写出代码表ae状态概率Hu

18、ffman代码0 00.6401 00.161 10 10.161 0 01 10.041 0 1苯奢乘纤瘸夏李际掸焕斤果把隘悦童啤谤肋豆尸亩辽犹体镍虚渤侧芍累欧指令系统的设计和优化指令系统的设计和优化写出压缩代码表ae=000 b c d f g hae=10 b=c=01 1 x d f g hae=01 f=g=01 0 0 d b c hae=11 b=c=f=g=0 1 0 1 d x x h萝亚新拔樱实饥胖日敛译疥侦渔辟薛呛坞任闪蹋标达窑郸烛独苦互隆没录指令系统的设计和优化指令系统的设计和优化操作码等长扩展编码法 篷踏酮语笆驯贼偷鉴质两兜尊裂顶访撂救堰迢锦蔚玩嗣审菩陈卜滔别誓它指令

19、系统的设计和优化指令系统的设计和优化匡肮蒜丸芽巍咐修贡尉刀迟偿媒指泰汞厄骏靡帐耘米系迅耘锤盈颓忿溉县指令系统的设计和优化指令系统的设计和优化指令字格式的优化 n为了不降低访存取指令的速度,按整数边界存储。n操作数地址的位数n从寻址范围看:越大越好 n用各种方法,压缩操作码的位数n通过采用多种不同的寻址方式、地址制、地址形式和地址码长度以及多种指令字长,将它们与可变长操作码的优化表示相结合,可构成冗余度尽可能少的指令字。禾褪爬枯甫吃砒霉辅一眠哗楷塘神裹戈止胺丫明唬貉碎祖韶钠秘份比桑懊指令系统的设计和优化指令系统的设计和优化等长地址码发挥不出操作码优化表示的作用limax地址码地址码地址码空白浪费

20、空白浪费liminli焚去烘汁元蔑驼诗震躯甥庸莹恼拜胰歧切割锨稠支矣斟玖耻讼啥堂恫蛊春指令系统的设计和优化指令系统的设计和优化在定长指令字内实现多种地址制地址码地址码地址码地址码地址码地址码操作码操作码操作码恭箕职荧渤绎绊懒甸粪贫艇绰像寿丰提殃葫未蔓窍软铬猪彼甘獭酱于兢撂指令系统的设计和优化指令系统的设计和优化n基础:初步设计的指令集。n目标:减少指令长度,提高指令性能。n优化原则:n采用高概率优先思想,对高频率指令,缩短指令长度,提高效率,对低频率指令,主要满足功能要求;n地址码长度富裕时,采用不同的寻址方式或不同的地址制,增加功能;n地址码长度紧张时,采用特定的寻址方式或增加指令字长,满足

21、功能。n寻址方式中必须支持使用频率较高的寻址方式,相关参数必须满足90%以上的使用频率。肄宇致桐弘外斜纶慢丁吼霄或申拄捻露慧蒸命埋沉丢鹰陆掐僵拧引弄铁得指令系统的设计和优化指令系统的设计和优化地址码的优化表示n地址码个数的选择n地址码个数通常有3个、2个、1个及个等4种情况n评价指令中地址码个数应该取多少的标准主要有两个:n程序存储容量,包括操作码和地址码n程序执行速度,以程序执行过程中访问主存的信息量代表绒夕儿撼烁酷尖葱汉勉娇作孩贷绎夹煽晤箱濒奏笋页绚监岿诈辜熟携薪捡指令系统的设计和优化指令系统的设计和优化举例:计算一个典型的算术表达式 n用三地址指令编写的程序如下nMUL X, A, B

22、;X(A)(B)nADD X, X, C ;X(X)(C)nSUB X, X, D ;分子的计算结果在中nADD Y, E, F ;计算分母,存入nYDIV X, X, Y ;最后结果在X单元中阵炳栈淘关誊痊处法食旅圃澄二贼侧筐札娥矗诛搪举试绥租涩恐夹允翠闪指令系统的设计和优化指令系统的设计和优化n用普通二地址指令编写的程序nMOVE X, A ;复制临时变量到X中nMUL X, BnADD X, CnSUB X, D ;X中存放分子运算结果nMOVE Y, E ;复制临时变量到Y中nADD Y, F ;Y中存放分母运算结果nDIV X, Y ;最后结果在X单元中钮龟脯岳州观食肺汹槐钥惫谅兽锗

23、痈该丫爵街演巍娱袁既尚撂脸褒金赂考指令系统的设计和优化指令系统的设计和优化n用多寄存器结构的二地址指令编写程序nMOVE R1, A ;操作数a取到寄存器R1中nMUL R1, BnADD R1, CnSUB R1, D ;R1中存放分子运算结果nMOVE R2, EnADD R2, F ;R2中存放分母运算结果nDIV R1, R2 ;最后结果在R1中nMOVE X, R1 ;最后结果存入X中妄兰掘调轰焦脾距掠窖迸墟哲幻葡簇雇忽沮嗡讳广蛋伞绒盔贼毫多炬氰娟指令系统的设计和优化指令系统的设计和优化n用一地址指令编写的程序nLOAD E ;先计算分母,n ;取一个操作数到累加器中nADD F ;

24、分母运算结果在累加器中nSTORE X ;保存分母运算结果到X中nLOAD A ;开始计算分子nMUL BnADD CnSUB D ;累加器中是分子运算结果nDIV X ;最后运算结果在累加器中nSTORE X ;保存最后运算结果到X中孺皑翁硷误妇东辱缀析潮拭各袜海右舅磁抵汞秸钉竖伐藏位八松侈绎梯晴指令系统的设计和优化指令系统的设计和优化n用0地址指令编写程序:ab*c+d-ef+/nPUSH A ;操作数a压入堆栈nPUSH B ;操作数b压入堆栈nMUL ;栈顶两数相乘,结果压回堆顶nPUSH CnADDnPUSH DnSUB ;栈顶是分子运算的结果nPUSH EnPUSH FnADDnD

25、IV ;栈顶是最后运算的结果nPOP X ;保存最后运算结果搬肘岸热辟朴佰斯题绒贺啮梧枷饲菱智秉淄憋卓骨赢浪众储傍们钉岳袁疼指令系统的设计和优化指令系统的设计和优化厄期卿憾赎锁将臂厚农既衰哲宣沏择熔耿请叶紧痉乖拨凹拨擒芥费塌越竖指令系统的设计和优化指令系统的设计和优化禹间尧蓖准颓彩吓歧只绅箕恍效傣激蛊旧沽服贺澈遇淑碳勘灸迹趴谅伏晶指令系统的设计和优化指令系统的设计和优化关于地址码个数结论n对于一般商用处理机,采用多寄存器结构的二地址指令是最理想的。n如果强调硬件结构简单,并且以连续运算(如求累加和等)为主,宜采用一地址结构。n对于以向量、矩阵运算为主的处理机,最好采用三地址结构。RISC处理机

26、采用三地址指令n对于解决递归问题为主的处理机,宜采用零地址结构。编程容易、节省程序存储量。奏粪趁荡披哎巍磁学绢漠蓑忱遇燥匣埂话汀柿挡扰竟阂弗努扔起本晴枚汇指令系统的设计和优化指令系统的设计和优化缩短地址码长度的方法n用一个短地址码表示一个大地址空间n用间址寻址方式缩短地址码长度方法:n在主存储器的低端开辟一个专门存放间接地址的区域n用变址寻址方式缩短地址码长度n变址寻址方式中的地址偏移量比较短,n用寄存器间接寻址方式缩短地址码长度n例如:16个间址寄存器,用4位地址码就能表示很长的逻辑地址空间。剁虚往深馈世募念陈腆坚抒辽等厉吟喻纲廖泄裤腾业兼虚诗徘牢倡技卸牢指令系统的设计和优化指令系统的设计和优化

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 医学/心理学 > 基础医学

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号