|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
1 V; T5 g+ `6 ^ 无论是人工智能、高性能计算,还是汽车或TWS,我们已经在各种产品形态中看到了RISC-V的身影。然而,有一种产品却成了RISC-V长久以来的痛,那就是GPU。固然,RISC-V在某些方面已经有了不逊色与ARM的计算能力表现,但在图形处理上还是没能匹敌ARM多年来的积累。但境况似乎正在慢慢好转,近年来RISC-V的GPU生态也已经开始发力了。) I+ n# k4 m# e! n
% o' R; S$ I% Z已有GPU生态的支持
, O6 l: o) n% q" Y9 M0 b- V7 e去年1月,赛昉科技发布了可运行Linux操作系统的星光RISC-V单板计算机,搭载了赛昉的惊鸿7100 RISC-V视觉处理芯片。为了添加更加强大的图形性能,赛昉授权采用imagination的B系列GPU IP,并计划在该单板计算机的后续量产版本中使用Imagination的BXE-4-32。
W2 H# o% W' P![]()
2 u, z7 l' q/ D1 [. KIMG B系列GPU IP / Imagination
/ n2 k _' @1 d% P+ A: H$ @: h' ?! D& o8 {' R: z! z R
同样用到Imagination B系列GPU的还有晶心,今年1月,晶心科技宣布已经完成IMG BXE-2-32 GPU与其AX45 RISC-V GPU的联合验证工作,在FPGA上使用Linux系统完成了渲染大量图形的工作负载和基准测试。而此前RIOS Labs的RISC-V微型计算机PicoRio也宣布与Imagination达成合作,宣称计划在PicoRio 2.0版本中引入Imagination的PowerVR GE7800 XE系列GPU。: B5 F' f9 S* v) _, N" O0 u
6 R% G" G2 v% f' |- D5 [$ p7 G
Imagination的GPU具备与多种处理器架构协同工作的潜质,其B系列更是可以达到最高6TFLOPS的算力,对于视觉计算优异但3D图形处理仍然偏科的RISC-V来说,可以说是一个很好的辅助,尤其是对于图形性能有一定要求的消费类设备。* `- b- X3 X; S$ C2 S" q
尽管这种异构的设计已经见怪不怪了,但归根结底这并非基于RISC-V架构的GPU,而ARM在GPU上的崛起,靠得正是Mali和Adreno之类的arm架构GPU,RISC-V要想在架构之战站稳脚跟,也必须得打造基于自身架构的GPU。不过Imagination已经开始在做Catapult系列RISC-V CPU,有朝一日把RISC-V引入其GPU设计中也说不准。, t4 I3 e8 J, L: Y4 r8 w
/ B, O3 _' G5 i) U* w
8 l$ a8 x z- C7 u1 ?6 S! v# zRISC-V架构下的3D GPU
! t4 I0 n* T0 `3 M# x4 p0 O7 \; K# j- q: U5 b. \4 S4 W
Think Silicon是一家罕见的来自希腊的IP公司,早在2007年就已成立,主要致力于小型超低功耗的2D/3D GPU核心,用于移动和可穿戴设备。然而在希腊的企业环境下,半导体初创企业难以找到资本投入,导致公司十余年来没有盈利,直到近几年才有所好转。2020年,这家公司被半导体设备厂商应用材料公司给收购,成为其全资子公司。2021年3月,这家公司推出了业界首个基于RISC-V的3D GPU NEOX。% U' i% O* Q$ G% P) S) v* h
9 L5 K% ]7 F& s! p
NEOX架构图 / Think Silicon
. V3 w5 t4 k y8 h$ ]9 [8 r' F/ Q. P# J9 A
NEOX是一个并行多核多线程的GPU架构,基于RISC-V的RV64C指令集与自适应NoC。NEOX可内置1到16个簇元素,集成4到64颗核心,每个簇都可以配置缓存大小和线程数。取决于簇/核心数量的配置,NEOX GPU的算力在12.8到409.6GFLOPS(800MHz)之间,支持FP16和FP32的浮点精度。% A, g2 j: Z% Y6 g& `0 o# }# [
0 R9 c1 _& ?/ T- p [/ D) g0 }4 r
+ l* m# o5 _4 R$ R2 K+ |NEOX不同配置下的算力 / Think Silicon
, X( w6 G" G: o, u) ?! r/ y# b, g& o9 K
Think Silicon提供NEOX的SDK、系统Verilog RTL、集成测试、LLVM C/C++编译器、GCC C/C++编译器。目前NEOX 支持开放图形框架,比如OpenGL ES和Vulkan。其次NEOX也有很强的定制性,支持计算机视觉、AI计算与用户自定义的扩展。7 k5 t7 H1 U, L) q% x. `# r3 j# M9 ~9 s1 J
2 |# R# U) A. k* u不过目前NEOX对系统的支持还很有限,仅支持Linux、RTOS和WearOS,要想作为消费级的GPU的话,没有Windows和安卓这两大平台的支持的话,也是很难做起来的。但考虑到Think Silicon的老本行就是主要做IoT设备、可穿戴和小屏嵌入式设备,在系统支持和算力上其实也无需多高的要求。/ `0 h/ |0 J! B5 a1 L. o: T
' t6 E+ t# j( H! g- o
根据Think Silicon的说法,他们将NEOX视为一种灵活可扩展的GPU方案,支持在资源有限的设备上快速部署AI、机器学习和GPGPU应用程序,并以超低功耗的优势显著延长电池寿命。0 R: Y/ }/ d& {5 h: P' ^9 z2 Y
, X! b) h; D9 m7 U该芯片的产品开发总监Iakovos Stamoulis博士也是从业20余年的半导体老将了,20年前还在Advanced Rendering Technology工作期间,他就联合开发首个光追图形引擎芯片AR350。在这样的大佬带领下,Think Silicon或许有机会更进一步,把RISC-V GPU往光追这样的先进图形技术上发展。
+ u6 s9 V' B9 e+ f
, S1 A; A6 H' a* S) u# x3 Z( E6 K9 k; \
开源GPU生态
# N& ~3 k) K% A/ X5 c7 t/ x* @% V* C
RISC-V作为一个开源指令集,自然也少不了开源的RISC-V GPU。同样在去年,一个RISC-V开发小组发布了一个项目,名为RV64X,其目的就是为了补全RISC-V的3D图形与多媒体处理指令集,将GPU集成在RISC-V处理器上。RV64X小组的成员来自于各大参与RISC-V标准制定与开发的公司,包括Pixilica、高云半导体和西部数据。8 v$ j/ [5 }! @3 B/ ~
# L$ G2 f3 s) {
( g* B: h2 W/ L* |; _ L
RV64X的扩展性 / Pixilica
1 z, Y; z9 r6 H% s0 { ?$ l1 c! h" t1 |" \
首个RV64X的原型GPU设计主要面向mcu,且将仅限于支持Vulkan图形API,但他们承诺未来也会增加对OpenGL乃至Direct X的支持。RV64X的另一大特殊之处在于它将作为一个CPU-GPU混合的ISA迭代,这样在完成通用计算任务的同时也能完成图形计算任务。此外,RV64X采用了单内存模型的设计,消除了处理3D API运算时,GPU内存与CPU之间的额外调用。/ a& b0 l @/ o# R) @0 V/ V: Q5 p
2 x& ?( a0 R3 C6 u7 _ k' b
根据Pixilica CEO Atif Zafar的回复,RV64X小组已经被RISC-V国际基金会认可为图形工作组,他们也已经准备好了初期的规范以供审核,后续会整合到RISC-V规范中。但新扩展的推出往往需要一段时间,所以在此之前都不会有任何代码或RTL公布。
! g0 P; E- O2 @. r
2 p' G j( M/ {- G0 L G. q
8 W6 @. R2 ^) d8 I) p2 MVortex开发路线图 / Georgia Tech
4 m/ `9 R" I. Q& S9 a" U0 O- P- F7 q9 m* g
再者就是去年因为开发CUDA移植而火了一把的Vortex GPU,Vortex是一个低成本的RISC-V GPGPU加速器方案,利用了现有的ISA和软件栈,当下的FPGA就能满足其资源要求,比如英特尔的Arria 10和Stratix 10等等。不过目前的软件栈暂时仅支持OpenCL 1.1 API,除了正在开展移植工作的CUDA外,Vortex还计划支持Vulkan、OpenVision和TensoRFlow等,并移植到xilinx的FPGA上。& k# G3 O' D8 s" Y1 `
2 u+ B7 D. g/ X2 g3 k/ I0 f% ?
: w7 x2 X+ z; [- Y/ Z结语
; K2 Y( p7 g, k
' Y6 k6 P& J7 q* R/ C0 V: l& b从以上进展来看,RISC-V的GPU生态发展还在初期,但无论是RISC-V公司、老牌GPU企业和开源社区都开了个好头,未来相信会有更多玩家的加入。国内近年来也涌现了不少优秀的GPU公司,或许他们也会就着这个势头跟进。 |
-
1.png
(79.97 KB, 下载次数: 2)
|