临汾山东漯河饰品美体美文
投稿投诉
美文创意
爱情通信
用品婚姻
爱好看病
美体软件
影音星座
瑜伽周边
星座办公
饰品塑形
搞笑减肥
幼儿两性
智家潮品
漯河衢州
兴义眉山
桂林阳泉
玉溪简阳
山东遂宁
永城新余
梧州洛阳
泸州温州
临汾清远
营口常熟
浙江大连
桐乡宜昌

RISCV学习笔记28051竟然是复杂指令集CISC?

3月7日 逆落雪投稿
  处理器基础知识合集
  RISCV学习笔记【1】RISCV概述
  【1】8位、16位、32位、64位
  除了CISC与RISC之分,处理器指令集架构的位数也是一个重要的概念。通俗来讲处理器架构的位数是指通用寄存器的宽度,其决定了寻址范围的大小、数据运算能力的强弱譬如32位架构的处理器,其通用寄存器的宽度为32位,能够寻址的范围为232Byte,即4GB的寻址空间,运算指令可以操作的操作数为32位。
  注意:处理器指令集架构的宽度和指令的编码长度无任何关系。并不是说64位架构的指令长度为64位(这是一个常见的误区)。从理论上来讲,指令本身的编码长度越短越好因为可以节省代码的存储空间。因此即便在64位的架构中,也大量存在16位编码的指
  且基本上很少出现过64位长的指令编码。
  综上所述,在不考虑任何实际成本和实现技术的前提下,理论上来讲:。通用寄存器的宽度,即指令集架构的位数越多越好,因为这样可以带来更大的寻址范围和更强的运算能力。
  指令编码的长度越短越好,因为这样可以更加节省代码的存储空间常见的架构位数分为8位、16位、32位和64位。早期的单片机以8位和16位为主,知名的8051单片机是使用广泛的8位架构。
  目前主流的嵌入式微处理器均在向32位架构转移。
  目前主流的移动手持、个人计算机和服务器领域,均使用64位架构。
  【2】CISC、RISC
  常见的指令集架构大体上可以分为两大类:复杂指令集体系(CISC)和精简指令集体系(RISC)。
  RISC全称ReducedInstructionSetCompute,精简指令集计算机。
  CISC全称ComplexInstructionSetComputers,复杂指令集计算机。
  CISC既有简单指令也有复杂指令,后来人们发现典型程序中80的语句都是使用计算机中20的指令,而这20的指令都属于简单指令;因此花再多时间去研究复杂指令,也仅仅只有20的使用概率,并且复杂指令会影响计算机的执行速度。既然典型程序的80都是使用简单指令完成,那剩下的20语句用简单语句来重新组合一下模拟这些复杂指令就行了,而不需要使用这些复杂指令,于是RISC就出现了。
  RISC的主要特点:
  1)选取使用频率较高的一些简单指令以及一些很有用但不复杂的指令,让复杂指令的功能由使用频率高的简单指令的组合来实现。
  2)指令长度固定,指令格式种类少,寻址方式种类少。
  3)只有取数存数指令访问存储器,其余指令的操作都在寄存器内完成。
  4)CPU中有多个通用寄存器(比CISC的多)
  5)采用流水线技术(RISC一定采用流水线),大部分指令在一个时钟周期内完成。采用超标量超流水线技术,可使每条指令的平均时间小于一个时钟周期。
  6)控制器采用组合逻辑控制,不用微程序控制。
  7)采用优化的编译程序
  CICS的主要特点:
  1)指令系统复杂庞大,指令数目一般多达200300条。
  2)指令长度不固定,指令格式种类多,寻址方式种类多。
  3)可以访存的指令不受限制(RISC只有取数存数指令访问存储器)
  4)各种指令执行时间相差很大,大多数指令需多个时钟周期才能完成。
  5)控制器大多数采用微程序控制。
  6)难以用优化编译生成高效的目标代码程序
  RISC与CISC的比较
  1。RISC比CISC更能提高计算机运算速度;RISC寄存器多,就可以减少访存次数,指令数和寻址方式少,因此指令译码较快。
  2。RISC比CISC更便于设计,可降低成本,提高可靠性。
  3。RISC能有效支持高级语言程序。
  4。CISC的指令系统比较丰富,有专用指令来完成特定的功能,因此处理特殊任务效率高。
  复杂指令集最常见的例子是现在绝大多数家用计算机和网络服务器所使用的AMD64指令集(也叫x8664、x8664、Intel64、EM64T等等,本文以发明人为基准称为AMD64。)除此以外有一定使用量,和有历史意义的复杂指令集还有IA32、MC68000、MOS6502、Intel8051、Intel8080等等。复杂指令集其复杂在于指令种类数量巨大,非常多次常用到不常用的功能都会被整合进处理器指令集中。同时复杂指令集系统每条指令的操作数寻址方式复杂,几乎所有指令都可以直接访问内存;相应的指令的机器码编码方式复杂,普遍使用不定长指令等。同时,复杂指令集系统一般没有独立的专用内存访问指令,处理器内所设置的通用寄存器数量也偏少。(例如IA32没有严格意义上的通用整数寄存器,到了AMD64也才勉强设置了八个通用整数寄存器。)
  精简指令集最常见的例子则是常见于智能设备和嵌入式平台的ARM指令集家族。除此以外除此以外有一定使用量,和有历史意义的精简指令集还有龙芯LoongArch、MIPS、RISCV、PowerPC、AVR等等。精简指令集其精简在于指保留最基本最必要的指令,将复杂功能完全交给上层的软件算法和下层的专用外设去解决。同时精简指令集系统指令寻址方式往往非常单一,除了专门的访存指令以外所有指令都只能在寄存器范围内操作,相应的精简指令集系统普遍使用固定长度指令,也会配备相对比较多的通用寄存器。(例如上个世纪的ARMv4T、MIPS32就都已经有2931个通用寄存器了,相比于同时期IA32的0个。)
  实际到了应用层面上,对于高级语言程序来说,对于处理器设计来说,两种指令集架构分类的实际差异已经不大了。Intel和AMD的AMD64实现都使用了微代码,而从复杂指令翻译出来的微代码普遍都用了类RISC设计。本世纪初的时候还普遍认为复杂指令集处理器速度更快,到了现在精简指令集已经很强大了,完全比CISC更快。有些CISC最终也是转化为RISC进行执行了。
  【3】8位的CISC8051
  8位和CISC两个似乎是矛盾的,但是8051活生生的辉煌了40年。
  说起8051内核,几乎无人不知无人不晓。8051作为一款生了数十年之久的微处理器内核,在8位入式微处理器内核领域,它是当之无愧的传前辈
  自从Inlel于1980年为入式系统开发IntelMCS51(通常简称8051)单芯片微控制(单片机)至今,8051内核架构已经走过将近40个年头。Intel还以专利转让的形式8051内核转让给了许多其他半导体公司,这些公司进一步发展出不同型号基于8051内核微控制器芯片,因此形成了一个庞大的8051家族。
  几十年发展下来的庞大的用户群和生态环境,以及多年来众多备受肯定的成功产品,可以说8051内核几乎成为8位微处理器内核的业界标杆。8051内核架构在1998年失去专利保护,久经沙场的它再次进发出强大的二次生命力,各种形式的8051架构MCU(微控制器MicrocontrollerUnit)进一步涌入市场,各种基于8051内核的芯片产品层出不穷,各种免费版本的8051内核IP也可以从各种渠道获取。
  当然由于8051内核并没有一个统一的组织和标准进行管理,所以也存在着体系结构浪乱,各种增强型复杂多样的问题。虽然时常也都自称为8051内核,但是其实各有差别,琅满目让人难以分辨。但是这丝毫不影响8051内核的经典地位,时至今日,虽然目前微处理器内核正在经历着向32位架构迁移的大趋势,但是8051内核仍然有着举足轻重的地位在大量的MCU、数模混合信号芯片、SoC芯片中仍能看到8051内核的身影,并且在相当长的时间内,在适合8位架构处理器内核的应用领域中都将继续使用8051内核,可以说是廉颇虽老,尚能饭也。
  8051内核能在嵌入式领域取得如此成功的地位,可以归功于如下几个方面的原因。广泛的被认知度,简单的体系结构。没有知识产权的限制,商业和开源的版本众多,非常适合中小型芯片公司采用。用庞大的用户群以及相应的生态系统。成熟且免费的软件工具链支持。
  你似乎感受到RISCV从其一诞生就符合以上几条的气质。
  尽管如此,8051作为一款诞生了接近40年的8位CISC(复杂指令集)架构内核,虽然是老骥伏析,壮心不已,但是由于其性能低下,寻址范围受限,已经难以适应更多的新兴应用领域。随着IoT的发展和崛起,虽然嵌入式领域对于处理器内核的需求更加井喷,但是更多的是开始采用32位架构,且很多传统的8位应用领域也在开始向着32位架构迁移。这样ARM的CortexM系列有了成长的机会。
  然而在20世纪80年代该单片机刚刚问世时,半导体的制造工艺还只能达到um级,处理器所能达到的时钟频率偏低。而且当时硬件设计语言还处于起步阶段也缺乏自动设计的工具,软件多以手工汇编编程为主。这就导致流水线设计的优势无法得到发挥,并且每条指令需要多个时钟周期才能完成。由于上述原因,当时的指令集设计往往具有以下特点:
  (1)尽量在每条指令中实现更多的功能。例如8051的CJNE指令,就需要在一条指令中依次实现:
  与累加器做减法
  修改进位标示
  将结果做相等比较
  根据比较结果决定是否跳转
  (2)指令集庞大,以实现更多的复杂功能。例如8051虽然是8位单片机其指令集却包含高达255种不同的指令和格式
  (3)由于以上两点,导致变长指令的出现,以提高内存利用率。8051的指令就有单字节、双字节与三字节三种不同的种类,而且除了对指令解码以外,没有其他的手段帮助判定指令长度。
  (4)寻址方式众多。例如在8051指令集中,对数值的操作包括如下方式
  立即数寻址。将常数包含在指令中。
  直接寻址。将内存地址包含在指令中。
  间接寻址。将内存地址放入寄存器中,然后将寄存器地址包含在指令中。
  寄存器寻址。将操作数放入寄存器中,然后将寄存器地址包含在指令中
  【4】8051具备CISC的所有缺点
  1)尽量在每条指今中实现更多的功能
  为了在实现这些复杂功能的同时保持高吞吐率,流水线的设计者不得不花更多的时间规划流水线的各级。即便如此,有些指令依然无法实现单周期吞吐,例如上文提到的CJNE指令,就需要两个时钟周期。
  另外,现代的8051处理器开发,早已经采用C语言代替了早期的汇编语言而高级语言的编译器往往很难把这类复杂、多功能机器指令的威力全部发挥出来有违当初指令集的设计初衷。
  当然,指令集复杂这个特点也并非一无是处。由于CISC指令集的指令复杂也使得其代码密度(CodeDensity)一般要优于同等字宽的RISC处理器
  2)庞大的指令集浪费逻辑资源
  庞大的指令集必然导致指令的解码阶段变得更为复杂,需要耗费更多的逻辑资源。指令集被分为两部分对它们各自的解码分别占用了流水线的一级。这样设计的原因之一就是为了在庞大指令集下实现高吞吐率、高时钟频率,而不得不做出的妥协。同样时钟频率的RISCV处理器,由于指今集比较精简,就无须做这样的妥协,从而大大节省了逻辑资源,简化了流水线设计。
  3)变长指令的出现,以提高内存利用率
  8051的指令有单字节、双字节和三字节三种不同的种类,除解码(Decode)外没有其他的手段帮助判定指令长度。这种变长的指令结构,导致指令之间的边界很难判定,甚至有可能导致内存的非对齐读取(UnalignedMemoryAccess),从而对流水线的取指器(InstructionFetch)设计带来挑战。
  8051的内存架构是哈佛架构,其代码与数据在不同的地址空间中分开存放。这就使得代码存储部分可以单独做一些优化设计。
  由于8051指令集没有其他辅助手段来帮助判定指令长度,为了确定指令的边界,8051的取指器不得不为此花费比RISCV更多的逻辑资源
  4)众多的寻址方式
  由于8051存在众多的寻址方式,使得指令集中的许多指令都可以访间内存这导致流水线的数据冲突(DataHazard)很难判断,有时不得不通过硬件自动插入空操作(Operation,NOP)来保持数据的正确和完整。这样既消耗了逻辑资源,又降低了流水线的效率,从而对功耗和性能造成双重打击。
  参考资料及书目:
  《基于FPGA与RISCV的嵌入式系统设计》作者:顾长怡
  《RISCV嵌入式开发快速入门》作者:胡振波
  《第六篇:CISCvs。RISC引发的思考》知乎:SerenaWang
  《(计算机组成原理)RISC与CISC的区别》CSDN:我真不聪明
  书籍推荐
投诉 评论

比亚迪海鸥设计出炉,微型市场又添一名猛将近日频繁报道的比亚迪海鸥已现真身,随着近两年电动微市场的火热,比亚迪也随着市民的呼声推出了比亚迪海鸥,可以看作是曾经比亚迪F0的新能源版,昔日的F0就比较受市场欢迎,如今的新能……精神病研究冬天穿短裙美,是一种追求。任何人都有追求美的权利。而任何被冠以美的事物,又是否真的是美?为何美之间无法获得一个稳定的定义?这一切皆因,美,是人为定义出来的概念。或者说,正因为有了一……AI换脸是危险的快乐丨九派时评文关育兵作者系教育工作者近年来,AI换脸走红网络,无论是在手机应用商城还是社交平台、短视频平台,都能看到不少提供AI换脸服务的App和小程序,只需上传一张照片,经过深度合……旅行攻略好吃又好玩儿的成都,来了就不想走,最全成都旅游攻略成都拥有天府之国的美誉,诗仙李白和诗圣杜甫都曾赞扬过这座城池。成都也是一座来了就不想走的城市,它悠闲、乐观、宁静、繁华,是享乐天堂,是美食故里,让人忍不住爱上这里的生活。……老牌大赛又添新赛事,青年比拼创新创效主播君的话为传统行业突破瓶颈增力、为企业发展节本增效蓄力,振兴杯赛场青年用项目诠释创新创效。11月28日至29日,第十七届振兴杯全国青年职业技能大赛(职工组)中核杯……首发评测iGameRTX4070TiAdvancedOC前言今天给各位朋友,评测一款最新的RTX4070Ti显卡,iGameGeForceRTX4070TiAdvancedOC。全局光线追踪的支持更强,游戏光追体验再升级……马云为什么讨厌刘强东?马云为什么讨厌刘强东?因为刘强东的京东一直在和阿里对着干,而且作为挑战者的刘强东在马云面前从来不示弱。曾经有一次,刘强东甚至当着马云的面说道,如果京东不能超越阿里,那么是不对的……很多人迷恋成都的肖家河,都是从开了几十年的美食馆子开始我一度轻轻地迷恋着肖家河。像我这样的新成都人,在肖家河总能嗅到一种久违的人情烟火味,情不自禁地唤起我小时候的记忆:夏天里,红墙砖房铺满爬山虎,翠绿得耀眼;每到饭点,……博士爸爸与不知道娃揭秘人体今天是博士爸爸与不知道娃的第一讲,揭秘人体。本来的选题是考试的,资料都准备的差不多了,看了勒庞的《乌合之众》中写关于法国教育的的部分,又刷到一个视频是关于中国学生从小负累学习的……购机教你简单选择荣耀70Pro小米12Pro以及vivoX8顶流机型最难选择的地方是在于它们的价格非常的相似,但是在性能方面差别也没有大家想象的那么高。那么,如何选择高端的旗舰手机?特别是在618时期,这确实是一个难题。我们今天就……RISCV学习笔记28051竟然是复杂指令集CISC?处理器基础知识合集RISCV学习笔记【1】RISCV概述【1】8位、16位、32位、64位除了CISC与RISC之分,处理器指令集架构的位数也是一个重要的概念……肝脏轻松,每天坚持做这6条!有一个器官,平时默不作声的运转着保护着人们的健康,一旦它开始叫喊,去医院检查,得出的诊断可能是早已经生病,已经到了很难治疗的阶段了,这就是人们的肝脏。肝脏到底在人体起到什么作用……
英格兰队遭重大打击右路飞翼受重伤或无缘世界杯北京时间10月14日,据英国媒体《镜报》报道,切尔西球星里斯詹姆斯的世界杯希望遭遇重大打击,因为他的伤势比预期更严重。在周中切尔西20战胜AC米兰的欧冠小组赛后,里斯詹姆……拳坛大战周日打响!前世界拳王复出,曾KO梅威瑟克星和帕奎奥宿北京时间7月31日中午,34岁的前超轻量级和次中量级世界拳王丹尼加西亚在阔别拳坛一年半之后正式复出,冲击个人第三个级别的世界金腰带,这场比赛也是加西亚第40场职业比赛,而对手是……西方遭打脸!长征五号残骸已再入大气层烧毁,马来西亚目击火球外媒对我国火箭残骸再入大气层的大肆炒作和抹黑终于可以消停了!根据中国载人航天办公室,7月31日0时55分,长征五号B末级残骸已经再入大气层烧毁,化成熊熊燃烧的火球,坠落区位于海……早餐不能吃大米粥吗?医生提醒或不只是大米粥,这3物少吃民以食为天,饮食是维持身体健康的根本!身体经过一晚上的代谢和休息,体内的各个组织和器官正在慢慢苏醒,此时需要及时给身体补充营养,所以早餐是一天当中补充营养的重要时刻。……温故因为被需要!快递这样走入寻常百姓家北京日报客户端记者侯莎莎云南的鲜花、青岛的海鲜、天津的麻花这些在过去只能是远方的味道和思念,如今借助便利的快递已成为人们生活中的日常。特别是在疫情期间,快递更是方便了你我……再见猛龙,伦纳德再迎帮手!鲍尔默重拳出击,快船离冠军更近一步ESPN名嘴帕金斯在做客一档节目时被问到快船队下赛季能否进入NBA总决赛时,他的回答是:废话,当然可以,快船可是我最喜欢的球队,他们在关键位置堆积了很多优秀的球员,没有任何一支……巴黎变天!内马尔成更衣室老大,获梅西拉莫斯支持,姆巴佩不爽根据《进球网》的爆料,在赛季初期,姆巴佩和内马尔的地位正在发生转变,包括梅西和拉莫斯这样的球星都支持内马尔成为更衣室的核心,而姆巴佩为此感到了担忧,而由于法国球星自己耍性子的行……星期六研究报告直播电商收入快速增长,持续推进业务转型(报告出品方作者:国元证券,李典,路璐)1。公司介绍:剥离女鞋业务,携手遥望向轻资产运营转型星期六以鞋业起家,近年来深耕社交电商业务,向轻资产运营转型。公司成立于2002……大结局这波反转,坐实它今年王炸功夫在细节。而细节,注定不为所有人第一时间看见。年初,写过一篇王者荣耀CG故事《玉城之子》。新奇的异域情调、古典的复仇叙事、燃炸的兄弟情谊宏大的世界观感动了无……大学生活第二章什么是大学的孤独感,对于一般人来说大抵就是不同于以往的粘连式抱团,取而代之的则是松散分散式的集合,最终的形态怕只是成双成对的饭搭子。但对于想专注学习的人来说,大学的孤独感是若即……拼尽全力依然失败,这就是北京和辽宁的实力差距?慢了一点儿这是很多人看完京辽大战第二场之后,对北京首钢最直观的感受。岁月催人老这个词,在北京首钢身上显现的淋漓尽致:论阵容深度,看大名单北京首钢一点都不输。正值当打之年的前八一……比刀片电池续航更长更安全?比亚迪新蜂窝电池什么来头?作为传统中国品牌的龙头车企之一,比亚迪在新能源汽车领域的成就大家是有目共睹的,累积了多项雄厚的核心技术,包括动力电池、车规级半导体、DMi超级混动、DMp王者混动、CTB电池车……
友情链接:中准网聚热点快百科快传网快生活快软网快好知文好找