tag 标签: architecture

相关博文
  • 热度 14
    2018-5-21 13:12
    6119 次阅读|
    7 个评论
    最近开源架构的话题又在国内火了,这次是RISC-V。开源架构并不新鲜, Sparc也开源,Power也开源,MIPS开源支持Android还让好些人激动了一把,但都是热闹了一阵以后就曲终人散了,然后几年以后再来一轮,媒体再炒一轮。其实我觉得这一次RISC-V也没什么不一样。 摆上茶水瓜子点心,给大家慢慢讲:首先所有推崇RISC-V的文章都在说RISC-V架构简单,功耗面积低,这其实跟以前夸MIPS没什么不同。在CPU设计里,指令集是其中最简单最基础的一部分,可以说,采用RISC架构的指令集都差不多,无非是在寄存器数目,分支跳转,数据存取等指令方面做一些取舍,达到某种平衡,满足某些特定需要。在学院派那儿PK的功耗面积,在工程派眼中离实用还远的很。做出一个demo和做出真正工程上能用的产品还隔着十万八千里,而工程上能用距离商业成功又隔了十万八千里。因为一个指令集就把某种架构夸上天实在没必要。 少年啊,心态要平稳,不要太浮躁 开源架构受到追捧隐含的另一个意思是Arm等IP厂商授权太贵,所以总有人揭竿而起要革商业公司的命,用免费打败收费。这里面有两重误会,我一一道来: 第一个误会是指令集架构授权和CPU 核的授权被刻意模糊了。Arm的CPU核授权门槛其实很低,甚至有Design Start你们可以了解一下,基本可以免费获取Cortex-M0和Cortex-M3,一些媒体文章动辄说Arm授权费要千万美金,钱真有那么好赚吗?Arm被孙正义收购的时候营收一年也就10多亿美金,这生意绝对说不上大。架构授权的客户都是财大气粗玩的起的主儿,如我大苹果、大高通、大三星等,初创公司完全有很多很便宜的选择,干嘛一上手就搞架构授权?刻意强调千万美金授权不能不说是有意误导。 第二个误会则是来自开源社区。 很多人说开源架构免费多好呀,但我要说从架构定义到CPU核实现这中间有很长的路要走,这一部分并 不免费 , 不免费,不免费 (重要的事情强调三遍)像SiFive等公司都是要收钱的,与Arm的CPU核授权并无多少区别。把开源解读为免费恐怕是一个中英文翻译中的误会。在开源社区的概念刚刚被引入的时候就有人把Free Software翻译为免费软件,但其实更准确的翻译是自由软件或开源软件,开源不等于免费,免费也不等于开源。开源指的是源代码公开,任何人可以免费获取自行编译或重新开发,只是要遵循相应的版权协议,像Linux遵循的是GPL协议,用GPL开源协议的代码重新开发的软件也必须开源。免费指的是软件不收钱,但是不一定开源。大名鼎鼎的Redhat Linux是开源的,但是也不影响Redhat公司靠服务费收钱。在开源架构社区也是一样,指令集是开源的,遵循BSD协议,各家开发的产品不是必须要开源回馈给社区。各家公司在这个指令集基础上开发的自己的CPU核产品都是要收费的,毕竟开发CPU核产品也是要投入人力研发的啊,总不能都去做雷锋吧。 以上这些都是老生常谈。开源架构每过几年就要来一轮,背后其实大家都懂,就是学院派总是要有点新的研究成果,“国外一开源,我们就自主”的风气决定了,国外有什么新的指令集架构开源都会在国内激起一阵躁动。但学术不等于商业。CPU架构从上世纪90年代的10多家到现在以X86和Arm为主,背后其实是更深刻的产业和商业规律在主导。在我看来,有几下几个要素: 1.指令集架构创新不具有革命性 有多篇论文分析过指令集架构和性能功耗的关系,结论是指令集的差别与性能和能耗没有关系,两者性能的差异是由于需求的不同在硬件设计上的反映,例如指令发射速度、分支预测、乱序执行等方面,提升这些方面的性能需要使用到大量的硬件,使得硬件设计变得更加复杂,并且带来了更多的能耗。正如吴军在《浪潮之巅》中所说,“数量级是判断一项新技术是革命性还是革新性的关键”。Arm处理器功耗相比于x86有了数量级的提升,手机市场又比PC市场出货量要大一个数量级,这才有了Arm在移动互联网市场占据了端侧的优势,取代了x86指令集,也让架构授权模式为更多玩家所认可。在开源架构和Arm的PK中,没有这种数量级上的差异。Arm和RISC-V都是RISC架构的,只是指令集定义的不同,这就决定了不可能从指令集PK中获得什么优势,还是看具体的硬件实现和功能取舍。 2.技术先进性不等于商业成功 每次有人强调新的指令集比原有的指令集要高效的时候我就笑了,大家想想键盘布局的故事。现在的QWERT键盘布局虽然奇怪,但延续了这么多年,已经有了强大的惯性,即使有人发明了更高效的键盘布局也无法得到广泛支持。指令集上的故事也是类似。Intel的x86指令集是CISC架构的,曾被人Diss架构臃肿。历史上也有多次“x86革命”想取代x86架构,但都因为得不到广泛的支持最终以失败告终。巨大的商业利益和强劲的软硬件的支持可以使得x86架构难以撼动,这些都不是一个简单的技术问题。 3.指令集架构是一个昂贵的公共品。 对学院派来说,能运行软件跑成Demo发论文就是成功,对商业公司来说则是要完成从指令集定义到CPU微架构的设计,到整个芯片的设计和相应软件,工具链的开发和维护,以及在上面运行的操作系统,丰富的函数库以及应用程序,还需要得到大量用户认可,这些都不是一朝一夕之功。设计指令集不难,让一个指令集得到市场认可很难,而一旦得到认可,人们要迁移的成本也很高,这就是Intel能多年在PC和服务器市场称霸的原因。Intel也因为x86指令集的成功获得了巨大的商业利益。指令集架构这一公共品是如此昂贵,无法通过社区自发成长起来,而必须结合商业公司的力量。Linux也是在Android采用以后才得到了大发展。 Arm通过授权模式让众多CPU厂商可以共享一套指令集和编译工具,极大的降低了众多CPU厂商的开发门槛,其实相当于众多CPU厂商众筹了一个Arm指令集,节省的是各家自己开发并维护一套指令集的开销。也正因为这个原因,市场对CPU架构的人员需求减少了,对应用程序开发者的需求增多了,Arm生态系统才有了今天的发展。 现在众多厂商众筹另一个指令集,然后呢?也一样有巨大的生态开发成本,从指令集定义到真正成熟得到广泛应用,没有一二十年起不来。硬件不像软件,有什么错误可以发布新版本去修正,一旦流片了再修改就难了。一个IP要做好不是那么容易的事情,需要有客户一起去趟早期开发过程中的坑,稍有不慎出现一个Bug,前期投入就要打水漂。对商业公司来说开发成本损失还是小事,错失了市场机遇才是最大的损失。即使新指令集生态真能起来,大多数公司要么维护自己的CPU核开发团队,要么从IP授权公司购买相应的架构实现,真的能省钱吗?还是到时候再切换一次指令集,把这些坑再趟一遍? 另外,开源架构采用的指令集架构开源,各家可以自己设计自己的CPU核的方式从一开始就埋下了碎片化的种子,各家IP公司自己设计自己的扩展,并且不需要回馈社区,其结果就是各自有一套自己的开发工具和软件库,重新走到了上世纪90年代有多家指令集架构的局面,对芯片开发公司来说并没有节省什么成本,反而因为各自微架构的特殊性带来操作系统和应用程序的不兼容,这是与商业世界成本尽量降低相矛盾的。 指令集是越多人使用价值越大,指令集架构也就更贵,而CPU核只是部分公司使用,相对于指令集架构就便宜一些,这是Arm的商业模式,是目前经受了实践的检验的一种模式。当年MIPS指令集架构授权很便宜,CPU核卖的贵,是从成本而不是用户需求定价,正好搞反了。结果就是各家都拿了指令集自己去设计MIPS核,造成碎片化和分裂。现在开源社区也是类似的问题。指令集开源,准入门槛很低,IP设计厂商各搞一摊。开源社区没有力量去维护各家实现的统一标准,各家也只能通过低价来抢市场,芯片设计厂商则需要面对不同IP厂商的CPU核实现,不能发挥统一架构的优势,构成恶性循环。 以上是一点对开源架构的浅见,供参考。最近RISC-V一片赞歌之中,我们更需要有一些不同的声音,RISC-V发展前景到底如何,拭目以待。
  • 热度 12
    2018-5-21 13:10
    6335 次阅读|
    7 个评论
    RISC-V 到底是什么?其实他并不是开源的 CPU 设计方案 大家可能都觉得 RISC-V 是个开源的精简指令集 CPU 设计方案,其实这是错误的。 RISC-V 仅仅是一套精简指令集的定义,开源的意思是任何人都可以免费获得指令集,并且自己去实现指令集,不需要支付任何费用。打个不专业的比方,指令集可以看成一张大楼效果图,图上有大楼漂亮的外观,完整的功能划分,超前的设计理念等等。你可以免费的从网上下载这张效果图,然后找人把效果图造成大楼,租售出去。出效果图的人保证不会来向你收钱。我也有更专业的比方,我把 x86 的指令集免费送给你,你可以自己实现兼容这套指令集的 CPU ,如果你的 CPU 做的足够好,你还可以在这个 CPU 上支持 Windows 。是不是很爽?但爽也是有代价的,我们接着说。 RISC-V 真的免费吗?免费,但成本着实不低 免费,必须免费。指令集在网站上可以直接下载,文档清晰,解释清楚,扩展灵活,一看就是高手高手高高手的作品。由于没有兼容性的累赘,又是最新的设计,肯定非常贴合目前业界对 CPU 指令集的需求,可以说是众望所归。但是问题这个高手只给了一页 A4 纸的指令集, CPU 怎么实现他没告诉你,高手没有提供 HLS 或 RTL 源代码,没有告诉你应该怎么 Layout 。这一切需要你自己想办法解决。就好像给你一张大楼效果图,免费使用。但是想要把这栋大楼造出来,你必须解决一个最重要的问题“ 没有施工图纸 ”。你必须要有一大堆工程师去设计结构,材料,水电管道,电梯楼梯,智能楼宇系统,监控系统。。。。。。,还要有工程队,还要有物业团队。。。。。。所以想把他造出来实在是太困难了。至少需要上市公司的实力,不然可能就只能造个外观接近效果图的小屋子给自己挡挡风了。反正我是用不起这免费的效果图。 为什么不少人喜欢 RISC-V ?喜欢的不一定是合适的。 为什么喜欢?我觉得有以下几个原因: 1. 指令集设计太高超了,精简而高效,既严谨又可以灵活扩展,又有众多业界领袖参与设计。什么 x86, Arm, PowerPC, MIPS 统统都是为了兼容以前的产品拖累了产品创新。就如同贝聿铭团队推出了一份大楼的效果图,各大地产商巨头都说我以后都准备盖这样的大楼,这个楼实在太漂亮了,功能太强大了,设计太先进了,造出来了肯定火,现有的大楼以后都会住着不舒服。 2. 指令集架构开源免费,谁都可以设计兼容的芯片。大楼效果图不要钱,拿来就可以拉几个兄弟开始造, 还可以用效果图找大款亲戚入伙。谁让这图人见人爱呢? 3. RISC-V 还有很好的扩展性,可以根据需求,增加扩展的指令集实现客户化的功能。就好像在大楼上还可以定制一些密室,满足一下自己的小小愿望。 4. 指令集的实现方法自主可控,源代码都是自己写的,可不是放心么。就好像自己造的楼肯定安全,每块砖都是自己选的,物业保安也都是自己雇的,放心 5. 指令集架构的生态链正在成长和完善, toolchain , IDE ,仿真,虚拟机一个不会少。就好像以后可能全国到处都有这样的楼,物业,水电,管理都一套规范。如果要搬到其他城市,家具都不用换,拎包入住。 恋爱容易结婚难,合不合适只有用的人才知道。我来分析一下大家就明白了。 1. 指令集架构好也要有好的设计才能体现出来,涉及 RTL 编码, layout ,半导体制程,封装等一系列技术,这是一个系统工程。 Intel 和 AMD 的 CPU 指令集基本一样,但性能功耗的差异地球人都知道。还有 TI , Cyrix ,这些 PC CPU 先烈们也是用了同样的指令集。采用 Arm 指令集架构的产品就更多了,做的好的也不少,但你能说出名字的可能也就那么几家。所以指令集架构先进不代表 CPU 一定就好,设计水平,工艺,测试标准,等等一样都不能差。就像大楼效果图确实漂亮,但真能造出来的估计不会太多,毕竟自备设计团队,施工队和物业公司的大款太少。而且施工难度着实不小,造出来有没有质量问题还真难说。 2. 指令集架构开源免费,但 HLS 或 RTL 不一定。业界已经有很多免费开源的实现代码了,但没有人会为质量负责,没有三包。解决方法有:买商用的版本, SiFive, Andes 等,但要服务费。也可以自己做,工程师成本自己扛。我感觉都不便宜,出来的东西能不能用现在也不好说,风险不是一般的大。回到大楼效果图的比方,效果图是不要钱,但想要住着个楼。要么买现成的造好的,要么自己设计施工图,材料也要自己买,水电煤还要自己接,造出来有质量问题也要自己负责。都是时间和钱啊。 3. 扩展性好确实很重要,但扩展的指令集就和 RISC-V 关系不大了,虽然组织制定了一系列规范来保证兼容性,但效果怎么样确实不好说。就像效果图上留了一片空白方框,给你做密室,还试图规定密室的布局,但毕竟密室都是自己做的,而且一定是秘密的,一切还是要自己从头来做,感觉没占到免费效果图的光啊。 4. 指令集架构的生态系统的成长是个很复杂和漫长的过程, 5 年 -10 年都很正常。还需要一个领头羊,就像 x86 有了 windows , x86 才真正建立起生态系统,然后是 Linux ; Arm 有谷歌 Android 才能造就现在的成功。同时碎片化也是一个很难处理的问题,特别是对开源的架构,这个问题会更挑战。就像效果图大楼的住户搬到其他城市同样效果图的大楼住,发现楼看上去是一样,但房门比原来的楼小了点,家具搬不进去,密室是有,但里面没有床和卫生间,不好用啊。 基于 RISC-V 的芯片会是个什么样子?什么样子的应该都会有 开源项目参与的人多,当然会丰富多彩,百家争鸣。所以 RISC-V 的芯片肯定会有很多形态。当然也就会有良莠不齐的问题。水平高的团队的产品肯定会好一些,但也不能阻止不太懂的人不尝试吧。所以会有 Intel 的成功典范,也会有 Cyrix 这样的先烈;会有 ARM 在智能手机产业的成功,也会有 MIPS 的逐渐的没落。还有一个特点就是 RISC-V 的芯片应该 SoC 为多,所以 CPU 主频,外围接口,功能模块会比 PC CPU 这样的通用 CPU 要丰富的多。林子大了,肯定什么鸟都会有,我觉得用淘宝买家秀和卖家秀来比喻最贴切,你不能说货不对版,但差距咋就这么大呢?说好的瓜子脸咋就变成南瓜子了,说好的大长腿咋就罗圈了呢?这都是因为虽然基本指令集都一样,但设计的方法和思路各不相同,扩展指令集千差万别。做个不恰当的比喻,虽然衣服一样,但身材不一样,脸不一样,搭配的首饰和配饰也不一样,所以出来的效果可以完全不一样。 RISC-V 到底有没有前途?现在说不准。 可以说有,也可以说没有,说有前途是觉得免费又好用的东西肯定能成功,但还需要考虑更多的因素。原因如下: 1. 大厂可能真的能把好的架构变成成功的产品。就像 Intel 做 x86 CPU, 高通做的 Arm 指令集智能手机芯片。回到效果图的比喻,万科和万达有能力把大楼效果图变成高科技大楼,租金很高,大家抢着租。这个肯定可以有,谁让人家牛 B 呢? 2. 但并不是每个公司都可以免费的从 RISC-V 指令集架构受益,因为他对技术水平,资金投入和时间的要求都不低。可以从第三方买,但一份价钱一份货。我没法自己盖楼,但我从大厂那租或买。但感觉这跟效果图免不免费已经没关系了 3. RISC-V 目前还处于早期的阶段,没有太多的实现和验证,先行者肯定要承担更多的验证,测试等小白老鼠的工作。这是必然的过程,中间的不可控因素就会很多,所以你会发现大公司都加入了组织,但并没有大动作,都是在试水的阶段。就像有公司把施工图纸做出来了,你可以去买,然后找施工队按施工图纸施工,但造出来的房子能不能通过检测人家不保证,因为还没人真把这房子造出来多,到底好不好还不确定。所以谁都会谨慎对待这件事 4. 正因为成熟的过程会比较漫长,所以不确定因素会很多,最后有没有赢家不一定,是大家共赢还是一两家独大也不好说,赢家是因为指令集架构的成功而成功,还是因为其他原因而成功都不好说。是否能达到 RISC-V 设计者的初衷,真的还说不准。但是钻石总会发光的,现在 RISC-V 这颗原石能不能被打造成海洋之星这颗宝石,请大家拭目以待。
  • 2016-1-24 16:31
    66 次阅读|
    0 个评论
    3.2.2 Digital smart home gateway In the IOT system, smart gateway is very important part. It is the interface of user and it is responsible for the digital home IOT platform for all the specific service. The smart gateway hardware scheme has not only simple and stylish appearance, but also good physical and electrical performance and extensibility, at the same time it has good security. Hardware platform requirements: Hardware platform must own strong power, sufficient resource to satisfy extension requirements. Platform can support multiple format AV encoding and decoding.Platform should be designed modular so as to form various types of products quickly. Digital smart home gateway product form   Typical product form includes: Ø   smart phone Ø   smart TV Ø   STB  
  • 2016-1-22 17:02
    67 次阅读|
    0 个评论
    3.2 Gateway hardware configuration  Some professional integration system own their special gateway, for example, security host. But we can use some universal home appliances to work as gateway, Internet router, smart TV, STB, smart phone etc. As mentioned above, it only need Home IOT middleware which is a set of predefined rules for home sensors and can be ported to different hardware platform.   3.2.1 Internet Router Now common router on the market owns one interface, X LAN interface and support 802.11 WLAN protocol. It use Linux OS. Pic 3.1    
  • 2015-10-9 16:02
    53 次阅读|
    0 个评论
    3.Home IOT Gateway 3.1 Home IOT Gateway overall description Gateway is the core of Home IOT at home. It is the key control unit with the server platform and home IOT sensors. In some ways, Gateway entered user home is the key step of Home IOT marketing, SP could provide more value-added APP to user based on it. That ’ s is so called  “ Hardware is base, Software is core ” .  Gateway should satisfy these features as below and there are also the key features of the Home IOT middleware. 3.1.1 Follow standard protocol of smart home In China IT filed, the most popular smart home protocol include  ITopHome and  IG RS. But in fact it is more chaos. You can define the IOT rule. Follow standard protocol means that the gateway owns strong  Openness and compatibility. We know standard protocol is nothing to do with hardware platform, this result in the program can be ported to different gateway hardware system. It is not only for technology, but also for resources integration. It can be accessed the third APP easily.  3.1.2 Router and Network management In fact, being the core connection device of the Server and Home network device, Router and Network management is the necessary function of Gateway. 3.1.3 Sensor device inspection and dynamic management As the core device of Home IOT control unit at home, the most important function of gateway is sensor device management, including inspection and dynamic management. This is the most important function of Home IOT middleware. 3.1.4 Wired network and wireless network interconnection At home, there exist different networks: LAN, WLAN, BT etc. Different home appliances and sensor devices own different communication mode. Home Gateway must abstract these difference in middleware then the devices can be accessed with a unified manner.  At the same time, multi-screen interaction is the most popular entertainment at home. PC, the media resource can be shared among TV, PAD, smart phone by DLNA protocol.
相关资源