RISC V单片机机输出VPRE代表什么意思

SRAM存储器.器件具有丰富外设和模拟特性,主要用在消费类,工业,医疗电子和.本文介绍了PIC32 MCU主要特性,方框图,以及PIC32 MCU入门开发套件主要特性,方框图,和材料厂清单.
  • 科技从来不会停止前进的步伐峩们已经走过了PC和移动互联网时代,正在迈向AI和IoT的时代驱动时代进步的重要因素之一是计算力的提升,当然每个时代都有其代表性的處理器架构。RISC-V指令集架构(ISA)近年来在全球范围内引发巨大关注不少人认为RISC-V将成为AIoT时代的主要玩家甚至是代表性的指令集。 2019年底开始基于RISC-V的产品将陆陆续续上市。那么RISC-V将如何抢占AIoT市场?RISC-V真的能成为新的时代ISA的代表吗 RISC-V免费是误解,灵活性是最大优势 或许是因为业界对ARM嘚授权费有些意见亦或单纯因为免费的产品更具吸引力,架构简单、完全开源的RISC-V指令集一经推出就引发了巨大的关注 全球范围内,包括西部数据、英伟达、谷歌、高通、华为、联发科等巨头都纷纷加入RISC-V基金会印度甚至在政府的大力支持下,RISC-V成为了印度的国家指令集 此时,有人就把指令集开源和免费划上了等号并且把免费视作RISC-V的优势。RISC-V指令集免费但并不意味着RISC-V处理器免费。 晶心科技总经理林志明吔指出遵循BSD(Berkeley Software Distribution)确实可以免费使用RISC-V指令集设计产品,但RISC-V的CPU并不免费这是一个误解。 晶心科技总经理林志明 有意思的是这虽然是一个誤解,但也是推广RISC-V的好机会 比如晶心科技就有RISC-V FreeStart项目,这个项目可以让开发者免费使用晶心的RISC-V N22核心集成开发环境等,不过基于RISC-V FreeStart项目设计嘚产品量产时则需要缴纳一定的版税芯来科技也有“一分钱计划”,模式与晶心基本相同目的都是为了推广RISC-V。 面对千亿规模的物联网市场和有实力的竞争者ARM也采取了类似的做法。2015年ARM宣布开发者可以免费使用Cortex-M0的知识产权,进行产品的设计和样品开发 RISC-V基金会中国顾问委员会主席方之熙博士此前接受雷锋网采访时表示,RISC-V会将低端的设计完全开源免费ARM也能够把简单的设计开源免费供大家使用,想要使用RISC-V嘚公司还是应该关注RISC-V可以根据应用场景实现的差异化 差异化或者说灵活性确实才是RISC-V的优势所在。林志明表示RISC-V出现的时候,也是晶心成竝11年的时候一是出于职业的直觉,另一个是因为RISC-V的理念和晶心推动的方向很接近比如允许开发者增加指令集,所以我们一开始就很看恏RISC-V “另外,RISC-V的包袱比较小许多应用的并不需要一个非常复杂的处理器,而是需要做一些适度的减法我认为RISC-V在未来三十年最大的优势僦是可以在计算机领域在各种解决方案上都能做到最优化。”林志明同时表示 碎片化和生态不成熟纯属攻击话术 即便拥有灵活性的特性,想要获得市场对于芯片来说PPA(Power Perform Area)指标无法绕开。林志明表示与同级别的ARM产品相比,我们RISC-V IP的CPU的PPA每项指标平均可以提高20%如果做一个粗淺的加法,就可以获得60%到80%的提升 这种显著的提升到底是RISC-V指令集的本身特性带来的还是因为经验的积累?林志明认为各占一半一方面,RISC-V夲身比较精简包袱也比较小,加上我们的编译器做的比较好另外,晶心成立近15年我们协助客户量产的经验也能够发挥作用。 不过對于芯片而言,只有获得客户的认可才可以谈成功这其中,生态至关重要去年,ARM建立了一个网站攻击RISC-V从成本、生态系统、碎片化风險、安全性和设计保证方面攻击RISC-V。谈及ARM的攻击林志明认为,这只是给攻击者自己壮胆用的并没有对RISC-V产生真正的打压,并且现在攻击開源生态,本身就不会得到任何好处反倒会产生反作用力。 那RISC-V的生态系统以及相关工具链的发展情况如何林志明表示,对于那些使用即时操作系统(RTOS)的领域RISC-V已经成熟了。说的更具体一些如果要把RISC-V应用到嵌入式系统,比如验钞机、共享单车、电动车仪表、无人机飞控等都没有问题但如果要用于更多的领域,比如航空航天还需要发展。 晶心对RISC-V工具链和生态的建设有不少贡献比如晶心是DSP工作组的領导,还是快速插入工作组的联合领导在指令集以及软件方面的工作小组也在积极参与。特别值得一提的是RISC-V的32位Linux的主体就由晶心贡献。 至于碎片化林志明表示这纯属攻击的话术。具体而言RISC-V指令集分为基本指令集和模块化扩展指令 只要RISC-V基金会继续保持他的团队,严格偠求所有厂商宣称是RISC-V的CPU就必须保证基本指令集彼此相容,这不可能存在所谓的碎片化 至于扩展指令,不同的厂商就可以根据自身的情況选择是否增加这也是RISC-V具备灵活性特点的原因。 既然是否使用扩展指令不同厂商可以自主选择因此扩展指令不仅不会相互兼容,是否開源也将由厂商自主决定 再看安全性,林志明指出必须强调,安全是全方位的不过RISC-V的标准指令集里还没有安全指令,工作组还在讨論和制定中在标准指令集里的安全指令确定之前,RISC-V也有许多保护措施可选晶心十多年前就已经有安全微处理器产品,目前我们也与很哆的安全厂商合作 既可以用物理不可克隆功能(即PUF,Physical Unclonable Function)这是一种“数字指纹”技术,每个半导体设备(如微处理器)拥有唯一的身份也可以构建信任根(Root Of Trust)的平台环境。当然也有数个其他信任根(Root of Trust)的平台可以采用平头哥的RISC-V处理器就采用可信执行环境TEE的方案。 “我们保证RISC-V处悝器安全的方法会包含但不限于上述的方式对于处理器的安全,不同的公司会采取不同的方式实现不同的安全级别但要实现更多的安铨功能肯定需要付出更高的成本。”林志明表示 RISC-V成为AI和IoT时代代表性的指令集需要机运 至此,无论是RISC-V技术本身还是其生态建设的进展都已經非常清晰接下来需要关注的就是RISC-V未来的发展。 产品进展方面林志明表示:“作为RISC-V CPU IP的领导厂商,我们第一个RISC-V CPU IP是2017年第四季度提出的2018年開始陆陆续续获得客户的采用。客户取得授权后需要设计和投片到现在一年半时间差不多刚好样品出来。再花半年推动量产、上市以及軟硬件的整合今年下半年和明年年初开始RISC-V的产品就会比较多的投入市场。” 林志明透露采用晶心RISC-V IP的产品中,大概50%的产品都与AI和IoT相关囿些是纯AI的。并且边缘计算的产品比较多,也有应用于数据中心和服务器的产品 虽然RISC-V技术本身的优势明显,也已经有平头哥、华米、格兰仕等公司相继推出RISC-V指令集的处理器但未来RISC-V能否成为一个时代标志性的指令集?林志明认为这需要一些机运 回顾已经取得巨大成功嘚x86和ARM,这背后分别是英特尔和微软ARM和谷歌的深度合作甚至是捆绑,打造标准化的平台借助PC和智能手机单体几十亿出货量的市场,成为兩个时代最成功的处理器指令集架构 “RISC-V已经获得了市场的认可,想要获得x86和ARM那样的成功需要与像华为或者苹果这样体量的公司进行组匼,才可以把RISC-V CPU做的很大另外,IoT市场一个明显的特点就是产品种类多但量比较少但RISC-V需要有一个像手机和PC一样出货量很大的产品品类,这鈈是技术的问题而是需要机运。”林志明说到 目前,无论是物联网还是AI都没办法实现标准化的平台那么,在机运到来之前RISC-V可以进軍存量市场,也就是基于RISC-V设计手机处理器林志明认为这最有资格的就是华为。除此之外就是耕耘AI和IoT这样的新兴市场,这时候比拼的僦是谁能够提供更优的解决方案。 上面提到RISC-V指令集架构的灵活性可以让开发者在AI和IoT领域都能实现很多创意。除此之外性能的功耗也是取勝的关键 以挖矿(数字加密货币)为例,刚开始矿工使用CPU挖矿后来转向了GPU,再后来甚至有使用手机挖矿的但最终是ASIC胜出,因为无论CPU還是GPU在这一场景都会有许多指令集用不到,这就不能实现最优化 而ASIC足够高效,耗电也更少RISC-V同样具备这样的优势,能够提供合适的算仂并且兼具低功耗的优势。 还值得关注的是虽然都是RISC-V IP的提供商,但晶心、芯来科技、SiFive之间也有合作林志明表示,我们与他们现在不昰纯粹的竞争者而是竞合者。 在技术上我们是合作关系,希望通过合作壮大RISC-V的生态但在商业层面,如果客户要选择RISC-V IP的时候我们就昰竞争关系。 小结 RISC-V是当下最受关注的指令集特别是在国内大力发展自研芯片的背景下,简单、完全开源的RISC-V指令集架构是一个好的选择受到更大的关注自然也可以理解。而这样的热潮也让ARM感到紧张并且攻击RISC-V。 不过RISC-V在嵌入式领域的工具链已经准备好。并且只要RISC-V基金会保持运作,保证RISC-V处理器基本指令集的相互兼容碎片化更多就是一个攻击的话术。安 全方面RISC-V标准指令集中目前还没有安全指令,但可以鼡多种方式保证RISC-V处理器的安全 至于RISC-V能否成为AI和IoT时代的时代代表性指令集架构,技术本身不存在障碍但林志明认为需要一些机运,与巨頭公司的深度捆绑或者找到PC和手机量级的产品。 毋庸置疑的是随着RISC-V产品的大量上市,AIoT芯片市场x86、ARM、RISC-V的争夺战正变得激烈。

  • “ARM实在太貴了”信息安全芯片公司Dover Microsystems联合创始人Jothy Rosenberg说。你可能对这位创业者不熟悉没关系,众多你天天听说的公司也和他有同感据The Information报道,ARM的昂贵價格把Google、高通、三星等80多家科技公司推到了同一条战线上它们正在合作开发新的开源芯片设计,为自动驾驶等新兴技术的芯片开发提供┅种成本更低的方式△RISC-V原型这个开源芯片设计名为RISC-V,其开发由一个非营利性基金会主导消息人士称,特斯拉近期已加入RISC-V基金会并考慮在新款芯片中使用免费的RISC-V设计。西部数据和英伟达已宣布计划在部分产品中引入这种新的芯片设计。ARM究竟有多贵呢根据Quora上一份不太噺鲜的回答,从几十万美元到几百上千万美元不等法国芯片创业公司Greenwave最近接受The Information采访时说,他们如果使用ARM架构要花掉1500万美元的授权费。攵章开头提到的Jothy就说仅仅从成本来看,这就会导致创业公司转向RISC-V革命性的芯片设计顾名思义,RISC-V是RISC的第五个版本△John ,20049.[3] 朱良辰,胡越黎冉峰.高速MCU核中并行优先级中断系统的设计与实现[J].微电子学,200434(4):482.[4] 张毅刚.RISC V单片机机原理与应用(第1版)[M].北京:高等教育出版社,2004(1):112.

  • 使用嵌叺式微处理器的FPGA设计不断增长。根据Dataquest的统计一年大约启动10万个FPGA设计项目,其中约30%包含某种形式的微处理器  形成这种趋势有几个方面的原因。首先数据流应用更适合可编程硬件,同时嵌入式微处理器更适合于执行控制流的应用第二,要改变设计时嵌入式处理器呈现更大的灵活性。最后用软核的嵌入式微处理器消除了处理器过时的风险。从传统上而言对嵌入式FPGA微处理器有一些限制,包括成夲速度和设计性能。随着工艺技术和设计技术的进步这些限制正在不断改善,现在设计人员更有可能在他们的应用中考虑使用嵌入式FPGA微处理器  与过去相比,现成的微处理器已经大大比嵌入式微处理器便宜但是,今天的低成本FPGA被证明是一个节约成本的解决方案洳果设计中已经使用了FPGA,处理器可以整合到现有的FPGA架构节省了分立器件或新的FPGA成本。设计周期也是一个重要的因素将硬件与微处理器孓系统构成相关的架构并进行实施能有多快?编写测试和在微处理器上调试运行的代码需要多久?在过去几年中在整体功能和易用性方面,针对嵌入式微处理器开发的软件工具也有了明显的改善因此,现在可以在几分钟内运行设计并且进行测试。产品上市的时间缩短了因为现在用软件实现功能比硬件更快,更简单  用现成的微处理器达到的性能有良好的历史记录。随着技术的改进FPGA在功能和整个系统的速度方面有了显著的进步。由于现在的FPGA能够处理更大的带宽嵌入式处理器对于许多设计有很大的吸引力。此外由于FPGA与其他專用模块的紧密配合,软IP核的扩展性提供了一个系统接口就性能和吞吐量方面而言,现在一个片上处理器可以提供卓越的设计方案  当评估诸如LatticeMico32这样的特殊处理器时,使用嵌入式软处理器的优点非常清楚  一个典型的嵌入式处理器子系统  让我们来看看一个典型的嵌入式处理器子系统,例如LatticeMico32软处理器。该处理器需要有能与外界通信的功能因此通常核连接到一个片上总线系统,在此情况下是WISHBONE開放源代码总线然后还需要一个存储系统,用来保存处理器程序代码以及处理器核使用的数据对外部通信而言,在一个典型的系统中囿各种接口从简单的通信接口和连接、更复杂的协议到应用中的专用硬件模块。现在该处理器总线架构需要连接外设和存储器系统一個典型的系统如图1所示。  图1 典型的嵌入式RISC处理器子系统  让我们来看看处理器核本身:LatticeMico32是基于哈佛总线结构的RISC架构的微处理器(图2) RISC体系结构提供了一个简单的指令集和更快的性能。哈佛总线架构提供独立的指令和数据总线能够执行单周期指令。该处理器拥有32个通用寄存器可处理多达32个外部的中断。定制的处理器可以插入乘法器或桶形移位器以及不同的调试功能。图2 LatticeMico32:一个可配置的RISC处理器核  Mico32可以用于各种存储系统同时使用内嵌存储器用于存储指令和数据。内嵌存储器可以建立一个本地哈佛结构并允许单周期访问指令囷数据。对于更大的存储器需求处理器通过一个仲裁器连接到其他的存储器模块或接口。这可以是用FPGA的存储器资源来实现的 “片上”存儲器或接口至外部存储器,诸如SSRAM、Flash和DRAM处理所有访问协议至外部存储器的合适接口模块是由MSB提供的。提供可选的指令和数据高速缓存能够配置成各种选择(高速缓存的大小,高速缓存块的大小等等)  通过一个开放源码Wishbone总线接口,该处理器连接到各种外围元件针對快速周转周期,图形用户界面可以轻松和快速地创建处理器平台除了标准存储器控制器,这可能包括各种接口不仅支持I2C、通用IO、定時器,UART以及SPI还能支持更复杂的模块,如PCI接口或TriSpeed以太网MAC  直接存储器访问(DMA)控制器是可用的,添加主器件(master)至Wishbone总线以免除处理器的数据传输工作。这也允许有DMA功能的外设高效地直接传输数据到存储系统从而节省了片上总线的带宽。  除了外围元件和DMA用户可鉯自定义仲裁方案。总线结构产生器支持主器件(master)方和从器件(Slave)方的总线仲裁如果能够满足系统性能的要求,主器件方总线仲裁提供了┅个简单的低成本解决方案然而,如果在设计中有多个总线主器件和多个从器件在任何时间主器件方总线仲裁限制与单总线主器件通信。在许多设计中通过两个或两个以上的总线主器件同时与独立的从器件进行通信,从器件方仲裁改进了性能图3展示了可用的仲裁方案。 图3 仲裁方案  用户还可以创建自己的基于Wishbone总线的外设元件然后通过整合到MSB自动连接到总线。因此LatticeMico32的架构提供了两种可能性:苐一,人们可以创建定制的元件将它放人MSB中的可用元件列表(图4)。第二可以构建出所谓的Passthru元件,可以将Wishbone接口引出到核的外面因此,用户可以在FPGA的其他部分添加任何逻辑块   图4 创建定制的外围组件  这些配置选项能够针对不同的应用定制LatticeMico32。带宽范围从小的和片內或片外存储器面积优化的控制器到具有多个接口的全功能平台以及访问更大的存储器(可能是片外)。从FPGA访问其他的逻辑模块还允许處理器系统和FPGA专用模块之间的密切互动以便进一步改进性能。取消了传统上使用并行于FPGA的外部控制器的复杂访问机制      可扩展性  由于处理器代码是可读的Verilog RTL代码,用户可以轻松识别IP功能块,诸如取指令单元指令译码或ALU,以及各种流水线阶段因此,通过定制指令这些也可以修改和增强。用户也可以执行操作码因此,在指令字中LatticeMico32提供了备用的操作码域。  遵照以下一些基本的步骤可鉯构建自定义指令:  增强的指令译码器。这是一个简单的情况提取内部操作码的功能,并生成需要整合此命令至LatticeMico32的所有必须的控制信号  写功能的实现并将其整合至LatticeMico32 的ALU。  对于多周期命令构建必要的拖延信号,以便妥善处理处理器流水线  如果需要其他嘚专门逻辑(例如额外的专用寄存器),这可以单独的添加到核  通过定制指令和添加定制外设,扩展处理器核是一个非常有效的方式用来定制处理器的核以便实现系统的性能要求。通常情况下一些专门的功能用硬件实现比软件更好。或并行处理可以获得额外的性能这种机制能够无缝集成硬件加速模块至处理器架构。这将保持用同样的方式处理这些部件的功能如同正常的软件代码或使用标准外設。  对于需要数据/信号处理功能的应用往往需要组合RISC处理器的功能和DSP,以达到系统的性能和吞吐量添加扩展和定制元件还可以包括信号处理单元。可以用硬件非常有效地实现使用专用的DSP块,诸如乘/累加用各种FPGA的硬件都可以实现这些功能。  设计环境  LatticeMico32系统擁有三个集成工具:  MicoSystem Builder(MSB)  针对硬件实现MSB产生平台描述和相关的硬件描述语言(HDL)代码。设计人员可以选择连接到微处理器的外围组件以及指定它们之间的连接。  C/C++软件工程环境(SPE)  C/C++ SPE调用编译器汇编器和连接器,使代码的开发针对运行于用MSB构建的平台可以通过C/C++ SPE来完成,用MSB构建的平台可以作为参考   调试器和Reveal逻辑分析器  在C/C + +源代码调试器提供汇编中的调试功能,并能够观察处悝器的寄存器和存储器设计人员还可以使用莱迪思的Reveal逻辑分析器观察和控制硬件中代码的执行情况。  所有的工具和IP已完全纳入莱迪思的ispLEVER FPGA软件设计环境这使得通过整个FPGA设计流程快速的进行设计。这些工具也有利于有效地使用FPGA的资源  在构建过程中,用完全可读的RTL RTOS  LatticeMico32提供了一个开放源码许可证。莱迪思的开放IP核许可协议将与MSB工具生成的HDL代码一起使用大部分图形用户界面将在Eclipse的授权许可下使用,同时对软件的内部运作如编译器、汇编器,连接器和调试器许可协议将遵循GNU-GPL。  因为这是开放源码软IP这个处理器的IP核还可以免费迁移到其他技术并加以实现。  性能和资源利用  LatticeMico32提供高性能和尽可能高的资源利用率对于关心资源的设计人员,基本配置不使用任何指令或数据高速缓存单周期移位器,也没有乘法器对于那些更关注性能的设计人员,全配置使用8KB的指令高速缓存8K字节的数據高速缓存,3个周期的移位器和一个乘法器对于需要采用折衷方法的用户,标准配置类似于完整的配置但没有8K字节的高速数据缓存。表1展示了针对LatticeECP3 FPGA的资源利用率和性能表1 LatticeMico32资源利用率和使用LatticeECP3的性能  总结  LatticeMico32是一个完整的嵌入式微处理器设计方案。它提供了一个灵活嘚架构并允许用户定制处理器系统以满足系统的要求(性能、成本、功耗)。处理器的IP和专用硬件的密切配合提供了一个易于使用的环境这也可显著提升系统的性能,使设计拥有很大的灵活性  LatticeMico32开发工具可以很容易地在FPGA中实现一个微处理器和与之连接的外围元件。噫用性确保最少的设计时间从而使得产品能够更快的上市。   根据开放源代码许可证和软件开发工具各自的开放源代码许可证如Eclipse囷GNU - GPL,提供生成的HDL莱迪思可以让用户完全控制其设计。开放源代码为设计人员提供所需要的可视性灵活性和便携性。 

  • AVRRISC V单片机机是 Atmel 公司 1997 姩推出的 RISC RISC V单片机机RISC(精简指令系统计算机)是相对于CISC(复杂指令系统计算机)而言的。RISC 并非只是简单地去减少指令而是通过使计算机嘚结构更加简单合理而提高运算速度的。RISC 优先选取使用频率最高的简单指令避免复杂指令:并固定指令宽度,减少指令格式和寻址方式嘚种类从而缩短指令周期,提高运行速度由于 AVR 采用了 RESC 的这种结构,使AVR系列RISC V单片机机都具备了1MIPS/MHz(百万条指令每秒/兆赫兹)的高速处理能仂AVRRISC V单片机机吸收了 DSP 双总线的特点,采用 Harvard 总线结构因此RISC V单片机机的程序存储器和数据存储器是分离的,并且可对具有相同地址的程序存儲器和数据存储器进行独立的寻址在 AVRRISC V单片机机中,CPU 执行当前指令时取出将要执行的下一条指令放入寄存器中从而可以避免传统 MCS51 系列RISC V单爿机机中多指令周期的出现。传统的 MCS51 系列RISC V单片机机所有的数据处理都是基于一个累加器的因此累加器与程序存储器、数据存储器之间的數据转换就成了单睛机的瓶颈;在 AVR RISC V单片机机中,寄存器由32个通用工作寄存器组成并且任何一个寄存器都可以充当累加器,从而有效地避免了累加器的瓶颈效应提高了系统的性能。AVRRISC V单片机机具有良好的集成性能AVR 系列的RISC V单片机机都具备在线编程接口,其中的 Mega 系列还具备JTAG仿嫃和下载功能;都含有片内看门狗电路、片内程序 Flash、同步串行接口 SPI;多数 AVR RISC V单片机机还内嵌了 AD 转换器、EEPROM、摸拟比较器、PWM 定时计数器等多种功能;AVR 片机的 I/O 接口具有很强的驱动能力灌电流可直接驱动继电器、LED等器件,从而省去驱动电路节约系统成本。AVRRISC V单片机机采用低功率、非揮发的 CMOS 工艺制造除具有低功耗、高密度的特点外,还支持低电压的联机 FlashEEPROM 写入功能。AVRRISC V单片机机还支持 Basic、C 等高级语言编程采用高级语言對RISC V单片机机系统进行开发是RISC V单片机机应用的发展趋势。对RISC V单片机机用高级语言编程可很容易地实现系统移植并加快软件的开发过程。AVR RISC V单爿机机具有多个系列包括 ATtiny、AT90、ATmega。每个系列又包括多个产品它们在功能和存储器容量等方面有很大的不同,但基本结构和原理都类似洏且编程方也相同。AVRRISC V单片机机系列齐全,可适用于各种不同场合的要求AVRRISC V单片机机共分为三个系列:低档:ATtiny中档:AT90高档:ATmega

  • 1 引 言随着数字通信囷工业控制领域的高速发展,要求专用集成电路(ASIC)的功能越来越强功耗越来越低,生产周期越来越短这些都对芯片设计提出了巨大嘚挑战,传统的芯片设计方法已经不能适应复杂的应用需求了SoC(System on a Chip)以其高集成度,低功耗等优点越来越受欢迎开发人员不必从单个逻輯门开始去设计ASIC,而是应用己有IC芯片的功能模块称为核(core),或知识产权(IP)宏单元进行快速设计效率大为提高。CPU 的IP核是SoC技术的核心开发出具有自主知识产权的CPU IP核对我国在电子技术方面跟上世界先进的步伐,提高信息产业在世界上的核心竟争力有重大意义 尽管各种CPU嘚性能指标和结构细节不同,但所要完成的基本功能相同从整体上可分为八个基本的部件:时钟发生器、指令寄存器、累加器、RISC CPU算术逻輯运算单元、数据控制器、状态控制器、程序控制器、程序计数器、地址多路器。状态控制器负责控制每一个部件之间的相互操作关系具体的结构和逻辑关系如图1所示。 时钟发生器利用外部时钟信号经过分频生成一系列时钟信号给CPU中的各个部件使用。为了保证分频后信號的跳变性能在设计中采用了同步状态机的方法。 指令寄存器在触发时钟clk1的正跳变触发下将数据总线送来的指令存入寄存器中。数据總线分时复用传递数据和指令由状态控制器的load_ir信号负责判别。load_ir信号通过使能信号ena口线输入到指令寄存器复位后,指令寄存器被清为零每条指令为两个字节16位,高3位是操作码低13位是地址线。CPU的地址总线为是13位位寻址空间为8K 字节。本设计的数据总线是8位每条指令取兩次,每次由变量state控制 累加器用于存放当前的运算结果,是双目运算中的一个数据来源复位后,累加器的值为零当累加器通过使能信号ena 口线收到来自CPU状态控制器load_acc 信号后,在clk1时钟正跳沿时就接收来自数据总线的数据 图1 CPU结构图 算术逻辑运算单元根据输入的不同的操作码汾别实现相应的加、与、异或、跳转等基本运算。 数据控制器其作用是控制累加器的数据输出由于数据总线是各种操作传送数据的公共通道,分时复用有时传输指令,有时要传送数据其余时候,数据总线应呈高阻态以允许其他部件使用。所以任何部件向总线上输絀数据时,都需要一个控制信号的而此控制信号的启、停则由CPU状态控制器输出的各信号控制决定。控制信号datactl_ena决定何时输出累加器中的数據 地址多路器用于输出的地址是PC(程序计数器)地址还是数据/端口地址。每个指令周期的前4个时钟周期用于从ROM中读取指令输出的应是PC哋址,后4个时钟周期用于对RAM或端口的读写该地址由指令给出,地址的选择输出信号由时钟信号的8分频信号fecth提供 程序计数器用于提供指囹地址,以便读取指令指令按地址顺序存放在存储器中,有两种途径可形成指令地址一是顺序执行程序的情况,二是执行JMP指令后获嘚新的指令地址。 状态机控制器接受复位信号RST当RST有效时,能通过信号ena使其为0 输入到状态机中以停止状态机的工作。状态机是CPU 的控制核惢用于产生一系列的控制信号,启动或停止某些部件CPU何时进行读指令来读写I/O端口及RAM区等操作,都是由状态机来控制的状态机的当前狀态,由变量state记录state的值就是当前这个指令周期中已经过的时钟数。指令周期是由8 个时钟组成每个时钟都要完成固定的操作。 3 系统时序 RISC CPU嘚复位和启动操作是通过rst引脚的信号触发执行的当rst信号一进入高电平,RISC CPU就会结束现行操作并且只要rst停留在高电平状态,CPU就维持在复位狀态CPU各状态寄存器都设为无效状态。当信号rst回到低电平接着到来的第一个fetch 上升沿将启动RISC CPU开始工作,从ROM的000处的开始读取指令并 执行相应嘚操作 读指令时序,每个指令的前3个时钟周期用于读指令4~6周期读信号rd有效,第7 个周期读信号无效第8个周期地址总线输出PC地址,为下┅个指令作准备 写指令时序,每个指令的第3.5个时钟周期建立写地址第四个周期输出数据,第5个时钟周期输出写信号第6个时钟结束,苐7.5个时钟周期输出为PC地址为下个指令做准备。 如图2 所示这是ModelSim SE6.0进行波形仿真的结果。 4 微处理器指令 数据处理指令:数据处理指令完成寄存器中数据的算术和逻辑操作其他指令只是传送数据和控制程序执行的顺序.因此,数据处理指令是唯一可以修改数据值的指令数据處理指令一般需两个源操作数,产生单个结果.所有的操作数都是8位宽或者来自寄存器,或者来自指令中定义的立即数.每一个源操作數寄存器和结果寄存器都在指令中独立的指定 图2 读写指令时序 数据传送和控制转移类指令:共有17条,不包括按布尔变量控制程序转移的指令其中有全存储空间的长调用、长转移和按2KB分块的程序空间内的绝对调用和绝对转移;全空间的长度相对转移及一页范围内的短相对轉移;还有条件转移指令。这类指令用到的助记符有ACALL, AJMP, LCALL, LJMP, SJMP, M, JZ, JNZ, ONE,DJNZ控制转移类指令主要用来修改1x指针从而达到对程序流的控制,所用到的寄存器主要囿sp, pc, ir等寄存器指令由操作码和操作数组成,取指令电路的目的就是把指令码和操作数分开组成电路由如图3所示。取指令电路由程序指针程序指针解析模块、ROM, IR(指令寄存器),控制器状态寄存器组成取指令指令的过程如下:PC指针的值经过pc_mux模块赋值,把ROM中的指令取出来送到指囹寄存器的数据输入口。指令寄存器受状态寄存器的控制当取指令信号有效时,ROM中的指令码被保存在指令寄存器中然后经控制器译码,产生控制信号对PC指针的增量加以控制取出下一条指令。 图3 取指令电路 5 汇编 汇编程序是为了调试软核而开发的手工编写机器码很容易絀错并且工作量很大。在调试过程中修改指令集时汇编程序也要作相应的修改。所以要求编译器的结构简单性能可靠在程序中必要的哋方可以用堆叠代码方法实现,不必考虑编程技巧和汇编器效率问题汇编程序用于测试RISC CPU的基本指令集,如果CPU的各条指令执行正确停止茬HLT指令处。如果程序在其它地址暂停运行则有一个指令出错。程序中@符号后的十六进制表示存储器的地址,每行的//后表示注释下面昰一小段程序代码,编译好的汇编机器代码装入虚拟ROM要参加运算的数据装入虚拟RAM就可以开始进行仿真。 机器码 地址 汇编助记符 注释 @00 //地址聲明 101_11000 //00 厂商提供的开发和仿真环境用硬件描述语言编写TESTBENCH,构成一个最小运行环境TESTBENCH产生对目标软核的激励,同时记录软核的输出和预期徝进行比对,可以确定核的设计错误这种方法的好处是实现容易,结果准确但硬件描述语言编码量较大。为了仿真结果的准确性无論功能仿真还是时序仿真,仿真的步长都不能太小结果导致整个系统仿真时间太长。本设计中先对RISC CPU的各个子模块进行了分别综合检查囸确性,如果发现错误可以在较小的范围内来检查并验证子模块综合完毕后,把要综合的RISC CPU的模块与外围器件以及测试模块分离出来组成┅个大模块综合后的的RISC CPU模块如图4所示,这是Xilinx ISE7.1 所综合生成的技术原理图 综合的结果只是通用的门级网表,只是一些与、或、非门的逻辑關系和芯片实际的配置情况还有差距。此时应该使用FPGA/CPLD厂商提供的实现与布局布线工具根据所选芯片的型号,进行芯片内部功能单元的實际连接与映射这种实现与布局布线工具一般要选用所选器件的生产商开发的工具,因为只有生产者最了解器件内部的结构如在ISE的集荿环境中完成实现与布局布线的工具是Flow Engine。图4 time的路径以及不符合约束的路径,进行修改保证数据能被正确的采样在后仿真中将布局布线嘚时延反标到设计中去,使仿真既包含门延时又包含线延时信息。这种后仿真是最准确的仿真能真实地反映芯片的实际工作情况。 7 结 論 复杂的RISC CPU设计是一个从抽象到具体的过程本文根据FPGA的结构特点,围绕在FPGA上设计实现八位微处理器软核设计方法进行探讨研究了片上系統的设计方法和设计复用技术,并给出了指令集和其调试方法提出了一种基于FPGA的微处理器的IP的设计方法。本文作者创新点是:根据Spartan II 的内蔀结构在编码阶段实现了地址和数据的优化,实现阶段对内部布局布线进行重新配置设计实现的微处理器仅占用78个slices,1个Block RAM在10万门的芯爿实现,占用6%的资源 来源:零八我的爱0次

  • 1.1什么是ARMARM(AdvancedRISCMachines)有三种含义,它是一个公司的名称是一类微处理器的通称,还是一种技术的名称ARM公司是微处理器行业的一家知名企业,设计了大量高性能、廉价、低耗能的RISC(ReducedInstructionSetComputing精简指令集计算机处理器)芯片,并开发了相关技术和软件ARM处理器具有性能高、成本低和能耗低的特点,适用于嵌入式控制、消费/教育类多媒体、DSP和移动式应用等领域ARM公司本身不生产芯片,靠转让设计许可由合作伙伴公司来生产各具特色的芯片。ARM这种商业模式的强大之处在于其价格合理它在全世界范围的合作伙伴超过100个,其中包括许多著名的半导体公司ARM公司专注于设计,设计的芯片内核耗电少成本低,功能强特有16/32位双指令集。ARM已成为移动通信、手歭计算和多媒体数字消费等嵌入式解决方案的RISC实际标准1.1.1ARM公司历史1990年11月ARM公司成立于英国,原名AdvancedRISCMachine有限公司是苹果电脑、Acorn电脑集团和VLSITechnology的合资企业。Acorn曾推出世界首个商用单芯片RISC处理器而苹果电脑当时希望将RISC技术应用于自身系统,ARM微处理器新标准因此应运而生ARM公司成功地研制叻首个低成本RISC架构,迅速在市场上崭露头角与此同时,RISC结构的竞争对手都着眼于提高性能发展适合高端工作站处理器的RISC结构。1991年ARM公司嶊出首个嵌入式RISC核心——ARM6?系列处理器后不久VLSI率先获得授权,一年后夏普和GECPlessey也成为授权用户1993年德州仪器和CirrusLogic也签署了授权协议。从此ARM公司的知识产权产品和授权用户都急剧增多1993年NipponInvestmentandFinance(NIF)成为ARM公司股东后,ARM公司开始向全球拓展分别在亚洲、北美洲和欧洲设立了办事处。1998年4朤ARM公司在伦敦证券交易所和纳斯达克交易所上市ARM公司现已发展成为一家全球性大公司,公司在英国、法国和美国设有研发中心在中国、法国、德国、日本、韩国、以色列、英国和美国建立了销售、行政和技术支持办事处。ARM中国—安谋咨询上海有限公司于2002年7月成立1.1.2ARM的商業模式ARMHoldings(伦敦证交所:ARM:纳斯达克:ARMHY)在半导体革新过程中初露峥嵘,被Dataquest誉为世界第一的知识产权供应商20世纪90年代初,ARM公司率先推出32位RISC微处理器芯片系统(SoC)知识产权公开授权概念ARM公司通过出售芯片技术授权而非生产或销售芯片,建立起新型的微处理器设计、生产和销售商业模式采用ARM技术的微处理器遍及各类电子产品,在汽车电子、消费娱乐、成像、工业控制、网络、存储安保和无线等领域ARM技术无处鈈在ARM公司知识产权授权用户众多,其中包括世界顶级的半导体公司全球20家最大的半导体厂商中有19家是ARM公司的用户。这些合作伙伴通过使用ARM公司低价、高效的IP核技术研制生产微处理器、外围设备和系统芯片迄今这些厂商共发售了超过10亿个ARM微处理器内核。为支持和增补ARM公司的现有RISC微处理器内核和SoCIP公司开发了功能强大的软件。ARM公司的伙伴企业能够获得各种基于软件的IP、操作系统端口和软件设计服务从而夶大降低产品开发风险,缩短上市时间首先是ARMPrimeXsys平台。这是一种取出即用的IP以平台的形式为专门应用提供支持。第一个PrimeXsys平台是2001年9月推出嘚PrimeXsysWireless平台它是一个高集成度的可扩展平台,包含了所有必需的硬件、软件和集成工具ARM公司的伙伴企业可以利用这个平台轻松开发一系列基于ARM处理器的面向应用的设备,既迅速风险又低。ARM公司推出的另一新技术是Jazelle这项技术能将Java技术和全球领先的32位嵌入式RISC结构结合在一起,使平台开发人员能够在同一处理器上与现有操作系统、中间软件和应用编码同时运行Java应用程序从而提高性能,降低系统成本比协处悝器和双处理器解决方案能耗更低。

  • Computer)体系结构RISC技术产生于上世纪70年代。其目标是设计出一套能在高时钟频率下单周期执行、简单而有效的指令集RISC的设计重点在于降低硬件执行指令的复杂度,这是因为软件比硬件容易提供更大的灵活性和更高的智能与其相对的传统复雜指令级计算机(CISC)则更侧重于硬件执行指令的功能性,使CISC指令变得更复杂RISC的设计思想主要有以下特性。· Load/Store体系结构Load/Store体系结构也称为寄存器/寄存器体系结构或者RR系统结构。在这类机器中操作数和运算结果不是通过主存储器直接取回而是借用大量标量和矢量寄存器来取囙的。与RR体系结构相反还有一种存储器/存储器体系结构,在这种体系结构中源操作数的中间值和最后的运算结果是直接从主存储器中取回的。这类机器的缩写符号是SS体系结构· 固定长度指令。固定长度指令使得机器译码变得比较容易由于指令简单,需要更多的指令來完成相同的工作但是随着存储器存取速度的提高,处理器可以更快地执行较大代码段(即大量指令)· 硬联控制。RISC机以硬联控制指囹为特点而CISC的微代码指令则相反。使用CISC(常常是可变长度的)指令集时处理器的语义效率最大而简单指令往往容易被机器翻译。像CISC那樣通过执行较少指令来完成工作未必省时因为还要包括微代码译码所需要的时间。因此由硬件实现指令在执行时间方面提供了更好的岼衡。除此之外还节省了芯片上用于存储微代码的空间并且消除了翻译微代码所需的时间。· 流水线指令的处理过程被拆分为几个更尛的、能够被流水线并行执行的单元。在理想情况下流水线每周期前进一步,可获得更高的吞吐率· 寄存器。RICS处理器拥有更多的通用寄存器每个寄存器都可存放数据或地址。寄存器可为所有的数据操作提供快速的局部存储访问表2.1总结了RISC和CISC之间主要的区别。表2.1 RISC和CISC之间主要的区别指 标RISCCISC指令集一个周期执行一条指令通过简单指令的组合实现复杂操作;指令长度固定指令长度不固定,执行需要多个周期流沝线流水线每周期前进一步指令的执行需要调用微代码的一个微程序寄存器更多通用寄存器用于特定目的的专用寄存器Load/Store结构独立的Load和Store指令唍成数据在寄存器和外部存储器之间的传输处理器能够直接处理存储器中的数据为了使ARM指令集能够更好地满足嵌入式应用的需要ARM指令集囷单纯的RISC定义有以下几方面的不同。· 一些特定指令的周期数可变并非所有的ARM指令都是单周期的例如,多寄存器转载/存储的Load/Store指令的周期數就不确定必须根据被传送的寄存器个数而定。如果是访问连续的存储器地址就可以改善性能,因为连续的存储器访问通常比随机访問要快同时,代码密度也得到了提高因为在函数的起始和结尾,多个寄存器的传输是很常用的操作· 内嵌桶形移位器产生更复杂的指令内嵌桶形移位器是一个硬件部件,在一个输入寄存器被一条指令使用之前内嵌桶形移位器可以处理该寄存器中的数据。它扩展了许哆指令的功能改善了内核的性能,提高了代码密度· Thumb指令集ARM处理器根据RICS原理设计,但是由于各种原因在低代码密度上它比其他多数RICS偠好一些,然而它的代码密度仍不如某些CISC处理器在代码密度重要的场合,ARM公司在某些版本的ARM处理器中加入了一个称为Thumb结构的新型机构Thumb指令集是原来32位ARM指令集的16位压缩形式,并在指令流水线中使用了动态解压缩硬件Thumb代码密度优于多数CISC处理器达到的代码密度。· 条件执行呮有当某个特定条件满足时指令才会被执行这个特性可以减少分支指令数目,从而改善性能提高代码密度。· DSP指令一些功能强大的数芓信号处理(DSP)指令被加入到标准的ARM指令中以支持快速的16×16位乘法操作及饱和运算。在某些应用中传统的方法需要微处理器加上DSP才能實现。这些增强指令使得ARM处理器也能够满足这些应用的需要。综上所述ARM体系结构的主要特征如下:· 大量的寄存器,它们都可以用于哆种用途;· Load/Store体系结构;· 每条指令都条件执行;· 多寄存器的Load/Store指令;· 能够在单时钟周期执行的单条指令内完成一项普通的移位操作和┅项普通的ALU操作;· 通过协处理器指令集来扩展ARM指令集包括在编程模式中增加了新的寄存器和数据类型。如果把Thumb指令集也当作ARM体系结构嘚一部分那么还可以加上:· 在Thumb体系结构中以高密度16位压缩形式表示指令集。

  • 目前ARM系列的通用32位RISC微处理器有ARM7、ARM9、ARM9E、ARM10等多个产品,这些處理器可以工作于7种模式下除User模式以外的其它模式都叫做特权模式,除User和System以外的其它5种模式叫做异常模式大部分应用程序都在User模式下運行,当处理器处于User模式下时执行的程序无法访问一些被保护的系统资源,以利于操作系统控制系统资源的使用也不能改变模式,否則就会导致一次异常对于System模式,任何异常都不会导致进入这一模式而且它使用的寄存器和User模式下基本相同,主要是用于有访问系统资源请求而又避免使用额外的寄存器的操作系统任务在特权模式下,它们可以完全访问系统资源可以自由地改变模式。在处理特定的异瑺时系统进入对应的异常模式下。这5种异常模式都有各自额外的寄存器用于避免在发生异常的时候与用户模式下的程序发生冲突。 在任意一种处理器模式中都使用同一个寄存器来标识当前处理器的工作模式,这个寄存器叫做CPSR(当前程序状态寄存器),它的0~4位用来表示CPU模式洏且在每一种处理器异常模式下,都有一个对应的SPSR(缓存程序状态寄存器)用来保存进入异常模式前的CPSR的值。SPSR的作用就是当CPU从异常模式退出時通过一条简单的汇编指令就能够恢复进入异常模式前的CPSR,该值保存在当前异常模式的SPSR中 启动代码的设计 启动代码类似于电脑中的BIOS,咜从系统上电开始接管CPU依次需要负责初始化 CPU在各种模式下的堆栈空间、设定CPU的内存映射、对系统的各种控制寄存器做初始化、对CPU的外部存储器进行初始化、设定各外围设备的基地址、创建正确的中断向量表、为C代码执行创建ZI(零创建)区,然后进入到C代码 在C代码中继续对时鍾、RS232端口进行初始化,然后打开系统中断允许位最后进入到应用代码中执行,执行期间响应各种不同的中断信号并调用预先设置好的中斷服务程序处理这些中断整个过程的流程图如图1所示。图1 启动代码流程图  堆栈初始化 堆栈的初始化要处理的事情是为处理器的7个处理器模式分配堆栈空间以下以FIQ模式下的堆栈设置为例说明: ORR r1, r0, #LOCKOUT ;把FIQ模式下的堆栈起始值赋给当前的SP,FIQ_STACK是分配给FIQ模式堆栈空间(比如说1K字节)的起始哋址按这种方式设置其它模式下的堆栈。 DRAM的初始化根据系统配置信息来决定因为系统不一定会用到DRAM,但是一定要做SDRAM的初始化主要的處理内容是ROM和RAM基址的设定、数据总线的宽度、SDRAM的刷新时间等等,这些可以参照S3C4510B芯片的用户手册特殊寄存器的设置主要是针对I/O口,比方说設定几个I/O位用做系统状态指示灯LED寄存器的设定主要根据硬件的配置情况而定,值得注意的是由于这段启动代码是烧录到ROM中的而中断向量必须位于零地址,所以在存储单元没有重新映射之前ROM基址的设定应该为零地址 拷贝(image)主要是为了提高运行速度,编译生成的映像文件代碼从ROM内拷贝到RAM中去而程序的执行也就在RAM中。当然启动代码对运行速度的要求不是很严格,所以这个拷贝动作可以不用做让代码存放茬ROM中,代码的执行也在ROM中而运行中所需要的数据在RAM中。 内存的初始化是为C代码的运行开辟内存区代码编译后会分为三个区:只读区、鈳读可写区, 零初始化区内存的初始化处理的内容是:当只读区截止地址等于可读可写区基址时,把零初始化区各字节清零;当只读区截圵地址不等于可读可写区基址时如果可读可写区基址小于零初始化基址,就从只读区截止地址处开始把数据拷贝到可读可写区基址处矗到到达零初始化基址,然后把零初始化区各字节清零否则也只用把零初始化区各字节清零。 中断向量表是用于处理异常情况的当发苼异常时,首先要保存当前程序的返回地址和CPSR寄存器的值然后进入到相应的异常向量地址,一般来说在异常向量地址是一个跳转指令使程序进入相应的异常处理过程。由于中断向量表要位于系统的零地址当把启动代码烧录到EEPROM中运行时就需要把ROM的地址定义到零地址,所鉯程序的入口处如下: 系统重新映射当你为了提高运行速度而把ROM的Image拷贝到RAM后中断向量表就不是在零地址处,因此要重新映射存储单元紦RAM的地址重新设定为零地址。映射就是把启动代码从ROM(EEPROM或者Flash)拷贝到SDRAM运行同时再拷贝完毕以后进行内存的重新映射,把SDRAM映射到原来的ROM地址(0x0000)中这样就可以用SDRAM中的代码写Flash,使得程序代码得以更新但是需要注意的是,如果程序进行了映射这样就对在线调试带来了困难,使得在線调试不可以在RAM中进行(如果写入EEPROM的代码是映射了的则在调试器启动的时候必然也会对程序进行映射,使得程序在调试器中不可以定位到原来的地方,使得调试失败)一个折中的方法是,不进行映射就是说在调试的代码中不可以使用下载,这样就可以像普通的代码一样进行調试了  结 语  做完这些初始化后,让CPU切换到用户模式下并把堆栈指针SP指定到用户堆栈区,就可以进入到C代码区运行。在C代码中继續对时钟、RS232端口进行初始化然后打开系统中断允许位,进入到应用代码中执行此程序加载到处理器S3C4510B中经过调试,CPU可以正常启动能够對中断请求做出及时的响应,上层应用的主代码可以加载到Flash中移植实时操作系统RTXC后对多任务的调度控制正常。

  • 相信任何一个计算机专业嘚人都不会对RISC(精简指令集)陌生这次图灵奖获得者就是为RISC发展做出巨大贡献的两个人。 3月21日美国计算机协会(ACM)将2017年图灵奖授予斯坦福大学湔校长约翰·轩尼诗(John L. Hennessy)和加州大学伯克利分校退休教授大卫·帕特森(David A. 详细来说,Hennessy和Patterson为设计更快、更低功耗和精简指令集计算机(RISC)微处理器创建叻一个系统化的量化方法几代的架构师们根据他们的这种方法提取出一些持久、可重复的原则已经被应用于学术和工业中的许多项目。洳今每年生产的超过160亿个微处理器中有99%都是RISC处理器,在几乎所有的智能手机、平板电脑和数十亿台组成物联网(IoT)的嵌入式设备中都可以找箌 此外Hennessy和Patterson在他们合著的经典著作《计算机体系结构(量化研究方法)》(Computer Architecture: A Quantitative Approach)中详细陈述了他们的见解。他们的这些工作巩固了我们对新处理器架構进行建模和分析的能力极大地加速了微处理器设计的进步。 ACM图灵奖通常被称为「计算机领域的诺贝尔奖」,是由美国计算机协会(ACM)于1966姩设立奖项设立的目的之一是为了纪念世界计算机科学的先驱艾伦·图灵(A.M. Turing),并专门奖励对计算机事业作出重要贡献的个人获奖者必须昰在计算机领域具有持久而重大的先进性的技术贡献。由于图灵奖的授予对获奖者要求极高评奖程序也极为严格,一般每年只奖励一到兩名科学家从1966年至今53年的时间里也只有67位获奖者。 图灵奖获得者将被授予100万美元的奖金(2014年后)由Google全额赞助。记者从ACM官网了解到ACM将于2018年6朤23日(星期六)在加利福尼亚州旧金山举行的ACM年度颁奖晚宴上正式将图灵奖颁发给Hennessy和Patterson两人。 约翰·轩尼诗(John L. Hennessy) 约翰·轩尼诗,为 MIPS 科技公司创始人苐十任斯坦福大学校长、Alphabet公司董事长。 Hennessy出生于1953年1973年,他从维拉诺瓦大学获取电机工程学士学位1975年以及1977年,分别从纽约石溪大学获取计算机科学硕士及博士学位 Hennessy于1977年成为斯坦福大学的教师。1981年他开始进行MIPS项目,并研究RISC处理器 1984年,他利用年度休假的时间创建了 1996年到1999年他担任斯坦福大学工程学院院长。 1999年斯坦福大学校长格哈德·卡斯帕(Gerhard Casper)任命Hennessy接任斯坦福大学教务长。 随后 2000年卡斯帕卸任后斯坦福董事會任命Hennessy接替卡斯帕出任校长一职,并一直延续到 2016年在这段时间内斯坦福完成了从一个地区性教育机构到世界顶级大学的蜕变,斯坦福外圍的硅谷也成为了世界创新的引擎而Hennessy教授则成为公认的「硅谷教父」。 此外值得注意的是Hennessy从2004年起便加入了Google(后来的Alphabet公司)的董事会并于2007年擔任独立董事。 在 2018年 2 月伴随着 Alphabet 公司(Google Approach),从1990年以来一直被广泛用作研究生的权威教材 另一方面,Hennessy将 Donald Knuth 的 MIX 处理器更新为 MMIX 做出了贡献 2004年,他1989年匼作的一篇关于高性能缓存层次结构的论文获得了计算机械协会 SIGARCH ISCA 的影响论文奖 出生于1947年,于1969年从加州大学洛杉矶分校获数学学士学位1970姩和1976年,从加州大学洛杉矶分校分别获得计算机硕士和博士学位1976年,博士毕业后加入加州大学伯克利分校计算机系。 1994年当选美国计算机协会会士(ACM Fellow)。 2004年至 2006年任美国计算机协会主席。 2016年DavidPatterson教授宣布从加州大学伯克利分校退休,学校给他举办了一个退休典礼纪念他在计算机架构方面的 40年学术生涯。一年之后教授公开宣布自己加入谷歌 TPU 团队,谷歌的 TPU 论文中也有他的署名 Patterson教授在伯克利大学带领团队长期進行着RISC的研究,对全世界RISC处理器的研发和相关应用做出了巨大贡献;他在 2003年到 2005年间是美国总统信息技术咨询委员会成员2004 到 2006年间任国际计算機学会主席;他还是磁盘阵列 RAID 的研发者之一。 威斯康星大学麦迪逊分校计算机系的主任Mark Hill认为Patterson教授在计算机架构方面是「20世纪后50年里最杰出嘚几个人之一」。他同时还表示Patterson教授与Hennessy教授合著的那本计算机架构书是这个领域近25年来最有影响力的教科书。

我要回帖

更多关于 RISC V单片机 的文章

 

随机推荐