CNRV

关注RISC-V和Chisel以及开源IC和EDA在中国的发展

View the Project on GitHub

RISC-V 双周简报 (2018-07-06)

要点新闻:


RV新闻

RISC-V Day 2018 Shanghai圆满成功

2018年6月30日,在复旦大学举办了RISC-V Day 2018 Shanghai活动,短短为期一天的研讨会包含17个演讲,共有约340人参会,分别来自120家国内外公司、26所科研院所和大学。

这次会议上,我们能够看到很多国内的半导体和软件力量在RISC-V领域已经找到自己的位置。在各各厂商纷纷PK自己CPU Core和软件解决方案的背后,是整个RISC-V生态系统的逐渐成熟。相比于过去较为封闭的CPU IP市场,RISC-V的这个平台为用户提供了诸多

相信愿意花时间同学来参与的,都收获了不少新的朋友。

RISC-V Day All Speakers

感谢所有讲者和工作人员辛勤的付出!

RISC-V Day All Speakers

RISC-V Day Tokyo和RISC-V Chennai Workshop

RISC-V Chennai Workshop将于本月17-18号在印度城市金奈举办,现在注册还来得及哦~

注册地址:RISC-V Workshop Chennai: https://tmt.knect365.com/risc-v-workshop-chennai/

之后RISC-V Day Tokyo将于10月18日在东京的Keio University举办,演讲征集已经开始,同事也欢迎参会。

注册地址:RISC-V Day Tokyo: https://tmt.knect365.com/risc-v-day-tokyo/

SiFive发布新E2系列CPU IP扩充其产品线

在最近举行的RISC-V Day Shanghai活动上,来自SiFive的VP Jack Kang发布了他们最新的E2 CPU IP系列,这个系列主打低端MCU市场。

E2系列目前提供两个全新设计的核心,分别是E21和E20。E20主打高效率,对标Cortex-M0+;而E21则功能全面,对标Cortex-M4。

E2系列的一些特性:

在同等GCC参数下:

在E2加入SiFive的IP核系列以后,SiFive自身的产品线已经能够初步满足各领域的应用,分别是:

Link: Introducing The New IP Series By SiFive

编辑:郭雄飞

技术讨论

直接缓存操作(explicit cache control)指令提案

直接缓存操作(explicit cache control)指令提案 (第3版, 第4版, 第5版, 第6版)

继3月份提出的第5版提案,Jacob Bachmeyer 提出了直接缓存操作指令的第6版! 相比第5版,第6版更新了很多指令的描述,更加明确了pinned cachelines (锁定缓存构造临时scratchpad)的操作, 然后明确定义MEM.RWRITE操作应当返回确定的常数(防止侧信道攻击),并为MEM.PF数据预取操作添加了流预取方式。

第6版中的指令定义:(有区别的加粗)

具体的讨论可着重看这么几段:

fix gcc for special bit-manipulation (修复gcc对特殊位操作指令的编译)

Gnanasekar R在RISC-V ISA Dev讨论组询问RISC-V中是否有位操作的指令,Gnanasekar R认为在嵌入式中位操作指令比较重要,可以减小应用程序的体积。但当前在RISC-V标准中没有位操作专用的指令,只能通过掩码和AND指令来实现对寄存器特定位的修改

RISC-V确实有计划加入位操作相关指令,而且成立了相关工作组,但是原工作组的领导是AMD的雇员, AMD由于拒绝签RISC—V基金会成员平等条约而退出,导致工作阶段成果不公开和google讨论组关闭。后面经过社区努力后重新开放了相关的工作成功,社区继续开始相关的工作。

当前risc-v还没有位操作指令,但社区提出了在现有指令的基础实现位操作减少指令长度的办法,同时发现了在编译类操作功能代码时存在不是最精简编码的问题,并由Jim Wilson进行了修复。

讨论中提到了各种主流架构的i386, amd64, Thumb2, ARM, Aarch64, sh4, m68k对位操作的处理情况

相关链接:

Another Intel “optimisation” (intel优化导致的漏洞)

有用户在“RISC-V ISA Dev”讨论组在讨论组询问关于intel的编号为:CVE-2018-3665 的漏洞是否对risc-v产生影响研究人员在intel x86发现一个由于浮点状态延迟保存和读取引起的漏洞,该漏洞通Meltdown一样,是在分支预测执行时触发的. 对于Enterprise Linux用户,该漏洞预警到一个很高的级别,同时只是在intel x86 CPU中存在的漏洞,在AMD中并不存在该漏洞。相关的细节参看

该漏洞需要重新设计处理器才能完美修复。Intel官方也给出了临时的修复方法:

If an XSAVE-enabled feature is disabled, then we recommend either its state component bitmap in the extended control register (XCR0) is set to 0 (e.g. XCR0[bit 2]=0 for AVX, XCR0[bits 7:5]=0 for AVX512) or the corresponding register states of the feature should be cleared prior to being disabled. Also for relevant states (e.g. x87, SSE, AVX, etc.), Intel recommends system software developers utilize Eager FP state restore in lieu of Lazy FP state restore.

这个漏洞会在RISC-V产生影响吗?

从RISC-V特权文档中可以看到,RISC-V的FPU(Floating Point Unit)也是支持延迟切换的。但是触发这个漏洞的罪魁祸首不是FPU的延迟切换,而是一个在处理器设计中滥用延后预测导致的。可以称之为是在已经不再使用的功能模块或者寄存器中的信息泄露的漏洞。

需要明白的是,若是因为这个漏洞从而禁用延迟切换被认为是是武断的、捡了芝麻丢了西瓜的行为。

相关链接:

与SFENCE.VMA的互操作问题(Question on interactions with SFENCE.VMA)

以下信息源自GitHub的 #204 issue中, Alexandre Joannou和Andrew Waterman的互动:

对于当前指令集手册中关于SFENCE.VMA的部分可以做如下解读:

  1. 对内存中的PTEs进行写操作需用SFENCE.VMA进行同步;
  2. 对PMP CSRs进行写操作需用SFENCE.VMA进行同步;
  3. 对satp CSR进行写操作无需使用SFENCE.VMA进行同步(即,紧跟在使能转换的写satp操作后的那条指令的取指地址是会被转换的)。
  4. 对PMP CSRs进行写操作需显式的同步,而对satp的操作则不需要,暗示着某种微架构支持(可能是一种在大多数实现中的流水线阻塞)

从描述上来看,为什么对PMPs的操作描述相较于satp“没有那么严谨”?

一种相关的硬件行为描述如下:某些有效的PTEs已被缓存在系统中,此时更新PMP使那些PTEs无法再被访问。尽管如此,这些PTEs依然可以被命中,直到一个SFENCE.VMA指令(rs1=x0,rs2=x0)的执行。

因缺斯汀

Arm的新网站www.riscv-basics.com

Arm最近发布了一个新的网站www.riscv-basics.com,来向大家介绍像RISC-V这样的开源指令集如何不靠谱。

业内普遍将这个信号解读为:”Arm已经开始正视RISC-V带来的威胁并做出反应”。

以下为这个网站的原文。

Five Things to Consider before Designing a System-on-Chip

The instruction set architecture (ISA) is the foundation of all chip or System-on-Chip (SoC) products. It is therefore one of the most fundamental design choices you will make. If you are considering using an open-source ISA, such as RISC-V, it is critical to understand the key factors you should consider as part of your go-to-market strategy.

  1. Cost: Open-source instruction set architectures, such as RISC-V, hav no license fee and currently no ongoing royalty model, but the instruction set architecture (ISA) is only the foundation of a RISC processor implementation. The cost of licensing any RISC ISA accounts for a small fraction of the total design-to-delivery investment required to create a commercial processor.
  2. A Large supportive ecosystem: it is important an architecture is well supported by a global, mature ecosystem of partners offering a diverse range of software, services and design support. This guarantees market choice, product quality and an optimal time to market. RISC-V ecosystems have not yet reached this stage of development.
  3. Fragmentation risk: The RISC-V instruction set architecture allows IP vendors to add private extensions. This means each implementation may be different or customized. The fragmentation effect makes it more difficult for an ecosystem to coalesce around is ISA.
  4. Security: Cyberthreats mean that robust chip security cannot ever be optional. RISC-V based products are relatively new and have yet to benefit from years of scrutiny from partners and industry experts.
  5. Design assurance: Verification and validation of processor designs can consume 75% of total design time. Modifying an instruction set architecture, as is possible with RISC-V, means expensive re-validation of the central processing unit (CPU or processor) and customization of software tooling. The adds to design costs.

Whether you are looking to create a chip from scratch or looking for a complete solution, take advantage of an architecture that has been tried and tested in more than 125 billion chips and already in processor designs licensed by more 500 partners. Get started with Arm DesignStart – the fastest, simplest route to proven IP.

另外,有不知名的朋友也开辟了未完成的网站:Arm Basics,该网站利用Github Pages搭建,网站主页号召大家向其提交Pull Request来提出自己的看法。

Links:

暴走事件

2018年7月

2018年10月

2018年12月

招聘简讯

CNN-HWPE召集合作开发者

CNN-HWPE是一个基于RISC-V的CNN加速协处理器,目前实现在蜂鸟的EAI接口上。该项目目前尚未完工,需要寻求社区中的爱好者(尤其欢迎有兴趣有时间的在读学生)来完成这个开源的的AIoT平台。 具体工作:将蜂鸟和CNN-HWPE烧录到开发板中(比如perf-v开发板),通过汇编用例测试,完成一个完整的demo。

项目地址:https://github.com/chenhaoc/cnnhwpe

有意者请联系: chenhaocxjtu@163.com chenqiang5233@hotmail.com

CNRV提供为行业公司提供公益性质的一句话的招聘信息发布,若有任何体系结构、IC设计、软件开发的招聘信息,欢迎联系我们!


整理编集: 宋威、黄柏玮、汪平、林容威、傅炜、巍巍、郭雄飞、黄玮


欢迎关注微信公众号CNRV,接收最新最时尚的RISC-V讯息!

CNRV微信公众号


知识共享许可协议
本作品采用知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议进行许可。