基于可重构数据流系统芯片阵列的3D图学渲染加速系统技术方案

技术编号:16780621 阅读:22 留言:0更新日期:2017-12-13 00:31
本发明专利技术提供了一种基于可重构数据流系统芯片阵列的3D图学渲染加速系统,包括:单核或多核的CPU芯片;N个3D图学渲染加速卡;带有N个PCIe插槽的母板;其中:N个3D图学渲染加速卡经由所述母板上的PCIe插槽以及PCIe总线与所述CPU芯片相连;每个3D图学渲染加速卡包括:一个3DX‑FPGA芯片阵列和M个SDRAM芯片;其中,所述3DX‑FPGA芯片阵列包括:X×Y个用于3D图学渲染加速的3DX‑FPGA芯片;所述SDRAM芯片用于存储3D数据;每个3DX‑FPGA芯片的逻辑由K个XPU模块组成,每个XPU模块由J个个射线跟踪核组成。本发明专利技术可取代传统的基于多核CPU或GPU群的超级计算机而在3D图学应用的速度、功耗、体积与成本上取得较好的效果。

【技术实现步骤摘要】
基于可重构数据流系统芯片阵列的3D图学渲染加速系统
本专利技术涉及3D图学
,尤其涉及一种基于可重构数据流系统芯片阵列的3D图学渲染加速系统。
技术介绍
3D图学渲染技术是现今3D计算机图学(3DComputerGraphics)的应用中需求性最高的技术。这个技术的最高诉求是在实时应用中产生真实的视觉影像。朝着这个方向,3D图学渲染技术的实现至今有3种方式:1.基于中央处理器(CentralProcessingUnit,简称CPU)或图形处理器(GraphicProcessingUnit,简称GPU)的3D图学渲染技术。2.基于专用集成电路(Application-SpecificIntegratedCircuit,简称ASIC)芯片固定逻辑的3D图学渲染技术。3.基于FPGA芯片可重构逻辑的3D图学渲染技术。在许多大规模的3D应用中,最耗时间的任务是将3D影像的视觉信息表达在2D的平面上。尤其是在如3D工业设计、3D动画、3D电影特效编辑等的应用中做大规模、复杂的绘图设计(例如飞机、汽车的模型设计或城市景观设计),能够迅速完成切面(CuttingPlane)、模型合并(ModelInterrogation)、复杂着色(SophisticatedShading)是一个基本的关键操作。这些不同的3D图学应用有一个共同的技术要求,就是高速的3D数字信号处理功能。在罗聪翼著的《Blender权威指南》书第7章第5节《渲染农场》中叙述:著名的电影特效工作室WetaDigital在制作电影《2012》(注:2009年美国科幻灾难片)的过程中,花费在单帧画面上的渲染时间平均为20个小时,而整个地震场景的特效帧数超过7000帧,所以总共的渲染时间大约为141,120小时。根据Wikipedia报导,现在3D应用市场上的3D图学工具几乎全由基于光栅法的系统(Rasterization-BasedSystem)。这个系统的软件部分由OpenGLAPI(www.opengl.org)的库函数以及它们的应用组成,硬件部分全是CPU或GPU以及少数设计使用的专用定制芯片。自70年代开始至今,随着CPU/GPU芯片设计技术以及超深亚微米工艺芯片制造工艺的高度发展,基于光栅法的3D图学工具的品质与操作速度有特别的进步,但由于它的操作在本质上是指令级串行执行的方式,速度的上升远远跟不上超深亚微米工艺根据摩尔定律(Moore’sLaw)的进步。也就是说,虽然超深亚微米工艺技术已使微电子电路达到Giga赫兹级的操作能力,但迄今为止,光栅法3D图学应用的速度仍未达到实时应用的要求。近10年来,一些利用多核与配合CPU的定制硬件的光栅法系统报导略超过每秒24帧的视频效果,但它们的开发周期漫长而成本昂贵。自70年代,一个基于物理光学的光线跟踪法出现,企图得到一个物理上逼真的视觉效果,将光学中的反射、折射、透视与阴影的物理现象利用几何光学的射线法计算出来。由于光线跟踪法本质上避免了不可见部分的跟踪,计算量是物体复杂度的对数函数,与光栅法计算量是情景复杂度的线性函数相比,在针对复杂情景的3D图学应用中有明显的优势。但是它的计算量对现今的计算机软件运行速度而言是过分大的负担。自2001年开始,德国萨尔州大学(SaarlandUniversity)由PhilippSlusallek教授带领的计算机图学小组研究以基于光线跟踪法的硬件平行计算架构来实践3D图学建模与渲染。在2006年9月的美国犹他州举办的IEEE会议(IEEESymposiumonInteractiveRayTracing)上,该小组宣布了一个实时光线跟踪的ASIC芯片设计,可以达到每秒200帧高品质的画面。根据德国汽车公司Volkswagan报导,该芯片技术已为汽车工业提供一个新的汽车模型的可视化设计方法,避免了昂贵耗时的原型设计,使得汽车工业的设计成本与产品上市周期都降低30%。综合上述前两种3D图学应用系统,即纯软件(基于CPU/GPU)系统与纯硬件(基于ASIC芯片)系统,在建模、渲染的性能与成本两方面的优劣势:纯硬件的ASIC芯片虽然能产生远较纯软件的CPU或GPU方法高质量、高性能的画面,但成本太高,而且灵活度远不如前者,对多种3D图学应用不同的要求不能提供一种如利用CPU或GPU软件的可编程性调适的解决方案。朝着这个方向努力,基于传统的FPGA的3D图学应用系统虽然一方面能提供ASIC占优势而CPU/GPU所缺的性能而又具有ASIC所缺的CPU/GPU占优势的可编程灵活性,但它在片上逻辑资源上的浪费所造成相对于ASIC的高成本、高运算延迟与高功耗一直是未解决的问题。从高性能计算(High-PerformanceComputing,简称HPC)的发展方向来看,利用单核顺序处理器设计的计算机系统,由于芯片的逻辑密度与运行速度遵循摩尔定律每18-24个月速度提升一倍而迅速发展,但是到2002年,由于散热问题而无法继续提升。CPU因此进入多核平行处理器的发展期,但由于平行编程的复杂性至今一直都处于缓慢进步的状态。斯坦福大学的MichaelJ.Flynn教授提出一个结合多核CPU与一般用途FPGA(General-PurposeFPGA)的方案来解决超级计算机中基于超深亚微米工艺的CPU散热问题:即利用数据流机(DataFlowMachine)的加速功能来降低超级计算机对CPU速度的要求,从而降低在应用中CPU芯片的散热量,同时提升系统的运行性能。公开内容(一)要解决的技术问题本专利技术提供了一种基于可重构数据流系统芯片阵列的3D图学渲染加速系统,以至少部分解决以上所提出的技术问题。有鉴于本专利技术的
技术介绍
,本专利技术的主要目的在于:1.提供一种将3D图学渲染计算转换成一个可重构多平行数据流的计算架构(ReconfigurableMultipleParallelDataFlowComputingArchitecture)的超级计算加速(SupercomputingAcceleration)方法。换言之,提供一种将3D图学渲染计算转换成由少数的基本逻辑模块在X方向、Y方向与时间方向上做重复性展开的计算方法。2.提供一种最适合前述可重构多平行数据流计算架构的FPGA架构,即一种最能体现可重构多平行数据流计算优势的FPGA架构,简称3DX-FPGA架构。3.提供一种最适合前述3D超算的FPGA架构的基于硬件语言(HardwareDescriptionLanguage,简称HDL)的描述与其产生的方法。4.提供一种用于3D图学渲染加速的FPGA芯片的设计方法(即在下面说明的VDS),利用该方法设计一个专用型FPGA芯片组(Application-SpecificFPGAChipset)以提升3D图学渲染速度(性能)及芯片逻辑密度(体积与成本),同时降低逻辑操作的功耗(散热)。5.提供一种将前述可重构多平行数据流计算架构映射至3D超算FPGA架构的高效率技术映射(TechnologyMapping)方法,包括6部分:A.系统级HDL分割(System-LevelHDLPartition)B.综合(Synthesis)C.映射(Mapping)D.布局(Place)E.布线(Rout本文档来自技高网
...
基于可重构数据流系统芯片阵列的3D图学渲染加速系统

【技术保护点】
一种基于可重构数据流系统芯片阵列的3D图学渲染加速系统,包括:单核或多核的CPU芯片;N个3D图学渲染加速卡;带有N个PCIe插槽的母板;其中:N个3D图学渲染加速卡经由所述母板上的PCIe插槽以及PCIe总线与所述CPU芯片相连;每个3D图学渲染加速卡包括:一个3DX‑FPGA芯片阵列和M个SDRAM芯片;其中,所述3DX‑FPGA芯片阵列包括:X×Y个用于3D图学渲染加速的3DX‑FPGA芯片;所述SDRAM芯片用于存储3D数据;每个3DX‑FPGA芯片的逻辑由K个XPU模块组成,每个XPU模块由J个射线跟踪核组成;其中,N、X、Y、M、K、J均为大于0的整数。

【技术特征摘要】
1.一种基于可重构数据流系统芯片阵列的3D图学渲染加速系统,包括:单核或多核的CPU芯片;N个3D图学渲染加速卡;带有N个PCIe插槽的母板;其中:N个3D图学渲染加速卡经由所述母板上的PCIe插槽以及PCIe总线与所述CPU芯片相连;每个3D图学渲染加速卡包括:一个3DX-FPGA芯片阵列和M个SDRAM芯片;其中,所述3DX-FPGA芯片阵列包括:X×Y个用于3D图学渲染加速的3DX-FPGA芯片;所述SDRAM芯片用于存储3D数据;每个3DX-FPGA芯片的逻辑由K个XPU模块组成,每个XPU模块由J个射线跟踪核组成;其中,N、X、Y、M、K、J均为大于0的整数。2.根据权利要求1所述的3D图学渲染加速系统,还包括:GPU芯片,该GPU芯片经由PCIe总线与CPU芯片相连而成为CPU的协处理器。3.根据权利要求1所述的3D图学渲染加速系统,所述的3DX-FPGA芯片阵列包含的X×Y个3DX-FPGA芯片利用3D图学渲染加速卡上的焊接金属线以X-Y矩阵的形式连接。4.根据权利要求1所述的3D图学渲染加速系统,所述3DX-FPGA芯片的设计流程分成两部分:应用逻辑部分与应用平台部分,其中:所述应用逻辑部分采取3D数据流机(3DDataflowMachine)的硬件语言(HardwareDescriptionLanguage,简称HDL)的设计流程;所述应用平台部分采取3DX-FPGA全能设计流程(VersatileDesignSystem,简称VDS)。5.根据权利要求1所述的3D图学渲染加速系统,所述3DX-FPGA芯片是一个具有两层逻辑结构的电路;其中,上层的可重构层电路与下层的逻辑层电路并存而相互叠加成为一体,形成一个平行叠加而相互信号紧密连接的完整应用电路。6.根据权利要求5所述的3D图学渲染加速系统,所述的逻辑层电路是一个以X-Y二维矩阵形式排列的逻辑模块阵列;其中,该逻辑模块阵列包括:一个四面环绕的可重构输入-输出模块环(ReconfigurableInput-OutputBlockRing);以及一个被可重构输入-输出模块环包围的可重构核心逻辑矩阵模块阵列(ReconfigurableCoreLogicMatrixBlockArray)。7.根据权利要求6所述的3D图学渲染加速系统,所述的可重构输入-输出模块环由多种不同型的输入-输出模块组成;各个不同型的输入-输出模块的功能为实时可重构(real-timereconfigurable),即各个不同输入-输出模块体现在应用中的功能由它在3D图学渲染计算加速中的功能需求实时决定。8.根据权利要求7所述的3D图学渲染加速系统,所述的可重构核心逻辑矩阵模块阵列由3DX-FPGA芯片上层的可重构层电路控制而重构为5个不同的巨函数模块(MegafunctionBlock):A.PCIEC(PCIECore)巨函数模块,其功能为:基于PCIE总线协议的DMA(DirectMemoryAccess);B.PCIEA(PCIEApplication)巨函数模块,其功能为:读写DMA数据并分配至寄存器与RAM块(RAMBlock,简称RAMB);C.SDCTL(SDRAMControl)巨函数模块,其功能为:3DX-FPGA外SDRAM的控制;D.CACHE(CacheMemoryandCacheControl)巨函数模块,其功能为:3D数据中间缓存与控制;E.RENDER(RenderFrame),其功能为:3D渲染计算模块;其中,每一个巨函数模块都是根据不同的应用规格而可重构的。9.根据权利要求8所述的3D图学渲染加速系统,所述的PCIEC巨函数模块包括2个巨函数子模块(MegafunctionSub-Block):PCIEIF(PCIEInterface)巨函数子模块,其功能为:与PCIe总线相连,负责DMA巨函数子模块对PCIe总线的数据进出;DMA(DirectMemoryAccess)巨函数子模块,其功能为:与PCIEAPPRT巨函数子模块相连,负责主内存与PCIEAPPRT巨函数子模块之间的大量数据进出的控制。10.根据权利要求8所述的3D图学渲染加速系统,所述的PCIEA巨函数模块包括3个巨函数子模块:PCIEAPPRT(PCIEAPPRAYTRACE)巨函数子模块,其功能为:与LOADREG、LOADRAMB二巨函数子模块相连,负责主内存的大量数据进出LOADREG、LOADRAMB的分流/合流(multiplexing/de-multiplexing);LOADREG(LOADREGISTER)巨函数子模块,其功能为:送给或收自主内存的寄存器数据;LOADRAMB(LOADRAMB)巨函数子模块,其功能为:送给或收自主内存的存储器数据。11.根据权利要求8所述的3D图学渲染加速系统,所述的SDCTL巨函数模块包括5个巨函数子模块:SDCTL_FB(SDRAMCONTROLFB)巨函数子模块,其功能为:与外部的FB_SDRAM相连,负责外部的FB_SDRAM的数据读与写;SDCTL_KD(SDRAMCONTROLKD)巨函数子模块,其功能为:与外部的KD_SDRAM相连,负责外部的KD_SDRAM的数据读与写;SDCTL_PRIMO(SDRAMCONTROLPRIMO)巨函数子模块,其功能为:与外部的PRIMO_SDRAM相连,负责外部的PRIMO_SDRAM的数据读与写;SDCTL_PRIM1(SDRAMCONTROLPRIM1)巨函数子模块,其功能为:与外部的PRIM1_SDRAM相连,负责外部的PRIM1_SDRAM的数据读与写;SDCTL_TEXTURE(SDRAMCONTROLTEXTURE)巨函数子模块,其功能为:与外部的TEXTURE_SDRAM相连,负责外部的TEXTURE_SDRAM的数据读与写。12.根据权利要求8所述的3D图学渲染加速系统,所述的CACHE巨函数模块包括4个巨函数子模块:CACHE_TRAV(CACHETRAV)巨函数子模块,其功能为:中间缓存应TRAV模块逻辑要求而来自外部KD_SDRAM的数据;CACHE_LIST(CACHELIST)巨函数子模块,其功能为:中间缓存应LIST模块逻辑要求而来自外部PRIMO_SDRAM的数据;CACHE_INT(CACHEINT)巨函数子模块,其功能为:中间缓存应INT模块逻辑要求而来自外部PRIM1_SDRAM的数据;CACHE_SHADE(CACHESHADE)巨函数子模块,其功能为:中间缓存应SHADE模块逻辑要求而来自外部TEXTURE_SDRAM的数据。13.根据权利要求8所述的3D图学渲染加速系统,所述的RENDER巨函数模块包括7个巨函数子模块:RENDER_RAYGEN(RENDERRAYGEN)巨函数子模块,其功能为:计算并产生帧渲染(FRAMERENDER)模块所需的穿过一个像素块(PixelTile)的主射线(PrimaryRay);RENDER_T...

【专利技术属性】
技术研发人员:陈陵都
申请(专利权)人:南京华磊易晶微电子有限公司
类型:发明
国别省市:江苏,32

相关技术
    暂无相关专利
网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1