发布日期:2021-05-18 作者:芯灵
异构计算(Heterogeneous computing)主要是指使用不同类型指令集和体系架构的计算单元组成的计算方式。异构计算技术在上世纪80年代中期产生,具有高性能计算能力、可扩展性好、计算资源利用率高等特点,成功应用于并行/分布计算领域。常见的计算载体类别包括CPU、GPU、DSP、FPGA、ASIC等。
最直接的原因是计算密集型领域的快速崛起,面对计算需求的快速增长,单一芯片的架构已经不能满足算力需求,出现了诸多如并行度不高、带宽不够、时延长等限制。
单一芯片的架构之所以不能满足增长的计算需求,一方面是由于近几年半导体技术在纵向提速上已经达到了物理极限,电路越来越复杂,数十亿美元才能形成新产品投产能力;另一方面,摩尔定律对英特尔几近失效,处理器性能再无法按照摩尔定律进行增长,数据增长对计算性能要求超过了按摩尔定律增长的速度。
为了满足市场需求、解决算力问题,利用异构并行计算把任务分发给不同架构的硬件计算单元运行,以软件来最大程度充分发挥硬件性能和屏蔽硬件差异,协同不同类型的计算单元协同工作。目前主流的异构架构如下图所示:
通过异构计算实现不同类型计算载体的协同工作
面对国内高端通用芯片自给率极低、国产化芯片需求不断加大的现状,如何突破制约我国发展高端IC瓶颈问题,对于国产半导体公司来说,这将是一个艰难的挑战,同时也带来了前所未有的机遇。
一方面,要重视通用芯片研发,加大GPU、CPU、可编程逻辑芯片等芯片的自主率。目前,由于GPU专利壁垒很高,开发难度很大,国产GPU还处于初级阶段。相对于GPU而言,国产CPU和国产可编程逻辑芯片近年来发展相对成熟稳定,已形成了一批国产芯片产品,但相较于国际高端芯片仍存在一定差距,需要加速发展。
另一方面,除了分布式CPU计算、通用GPU计算外,具有高能效、高并行度、异构计算等特点的基于可编程逻辑芯片的高性能计算正在快速发展,将大大提升国产芯片在高速并行计算方面的应用。国产CPU+国产可编程逻辑芯片的异构架构将成为国产化异构架构的必然趋势,综合软硬一体,发挥整体效力,提高计算能力,进而帮助用户提升整个系统的性能水平。
当前,国产异构处理系统技术逐渐完善,应用越来越广泛,其中典型代表为中国科学院的国产异构处理系统。该系统采用国产可编程逻辑芯片搭配国产CPU芯片,构建国产化异构处理系统。可编程逻辑芯片采用中科亿海微电子科技(苏州)有限公司研制的一款国产高性能千万门级可编程逻辑芯片EQ6HL130,有效门容量达到1360万门;处理器采用国产CPU芯片。
在基于EQ6HL130的国产异构处理系统中,CPU作为整个系统的控制调度单元,负责把一组任务切分成多组小任务,把小任务分配给更合适的计算单元处理。可编程逻辑芯片在系统中的最大优势就是流水线并行和数据并行,作为CPU的硬件加速器。该架构可以充分发挥CPU和可编程逻辑芯片各自的优势。
基于EQ6HL130的国产异构处理系统提供三速以太网、串口、USB和通用扩展接口,保证了系统的通用性及灵活性。
系统框图
在国产可编程逻辑芯片的发展远比国产GPU更为成熟的情况下,发展基于可编程逻辑芯片的高性能计算对于发展人工智能、机器视觉、高速信号处理具有非常重要的现实意义;
异构处理系统中的可编程逻辑芯片、CPU均为全国产化器件,实现特种应用,量产可控,安全性高;
在国产芯片性能暂时落后于国外水平的情况下,利用国产CPU+国产可编程逻辑芯片构建的异构处理系统可以提升硬件性能和产业应用的整体水平;
软硬件一体化设计,采用软件定义硬件的设计方法,有利于设计的重用和新设计快速成型;
异构处理系统可广泛运用于图形计算、信号处理、数据分析等应用领域,可在数据中心、人工智能、工业制造、物流、物联网、安防、智慧城市等市场领域进行应用推广。