![]() |
|
||||||||||||||
| | 首页 | 新闻 | 文库 | 方案 | 技术 | 独家 | 座谈 | 下载 | 图库 | 开发板 | 仿真器 | 邮购 | VIP | 芯片 | 客户评价 | 论坛 | | ||
|
||
|
|||||
| SHARC系列指令系统的组成和分类 | |||||
作者:admin 文章来源:本站原创 点击数: 更新时间:2007-11-16 ![]() |
|||||
|
1.组成 在SHARC的指令系统中,数字运算指令是一个很重要的部分。它是由三个独立的运算单元ALU、MPU、SHIFER在其内部的寄存器中完成的。其中ALU主要完成移加、减、逻辑运算和比较运算等MPU主要完成乘法和乘加运算;而SHIFER主要完成位操作。数学运算指令可以单独执行,也可以与某些其他功能的指令并行执行。数学运算指令与其他指令一起 构成完备的指令集。 2.分类 按照功能划分,SHARC的指令系统可以分为4类: ①计算、搬移或修改指令。可以在执行一个数学运算指令的同时,完成1~2个内存数搬移或寄存器修改指令。这类指令的数目最多,如If EQ R0=R1+R2,DM(1l,M1)=R1。 ②程序流程控制指令。用于控制跳转、循环、返回、子程序调用等等。少量的这类指令可与数学运算指令并行。通常,这样的指令可以附加不同的后缀,如If NE JUMP Mylabel(DB,R0=R1+R5)。 ③立即数搬移指令。用来在内存与寄存器之间交换数据。其中立即数既可以是地址,也可以作为被搬移的数据,但一条指令只能有一个立即数,如DM(12345)=R0。 ④其他指令,如非操作[NOD(No operation)]、Idle等等。 在第①类与第②类指令之前,通常可以加上可选的条件判断(IF)。下面给出完备的SHARC指令:
程序流程控制指令
立即数搬移指令
其它指令
判断条件与结束条件如表8.18所列。
|
|||||
| 文章录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 本站介绍 | 合作联络 | 欢迎投稿 | 广告业务 | 网站地图 | 设为首页 | 加入收藏 | 友情链接 | 网站公告 | 联系我们 | | |||
|