粗粒度可配置计算结构的研究与发展
发布时间:2008/5/29 0:00:00 访问次数:400
摘要:论述了粗粒度可配置计算结构的特点、发展现状和未来发展方向。
关键词:粗粒度 配置 并行计算
可配置计算又称为自适应计算。它是由多个具有可重配置功能的功能单元(pe)和可以配置不同数据传递方向的连续线路一起构成的计算机结构,如图1所示。现在,可重配置计算分为两类:细粒度配置和粗粒度配置。细粒度配置计算主要体现在fpga(现场可编程逻辑阵列),它在数字逻辑芯片开发和系统设计等方面应用非常广泛,但由于细粒度的原因,其实际逻辑单元仅占实际芯片面积的10%,其余被开关、ram、布线网络所占有,功耗和工作频率都不是非常理想,在处理一些规则运算,如乘法时效率不高。相对的,粗粒度配置计算的粒度一般为4、8、16、32位,非常适合进行算法级操作。试想一下,如果要处理10000×20000像素的图片,用现在的计算机能够实时完成吗?但应用粗粒度可配置计算结构设计的计算机能够完成。在数字信号处理领域,算法一般都遵循90/10的规律。即在一个算法中,90%是重复单一或类似功能的规则操作,不规则的静态操作只占10%。如果针对算法中的规则操作设计处理单元(pe),并通过多个处理单元(pe)组成网络进行并行计算,在功耗比较小时,其计算能力或者说处理速度将非常快,能够完成大数据量、大运算量的算法。同时随着超大规模集成电路的发展,特别是soc(单芯片系统集成)技术的兴起,在一个芯片中,可以很容易集成几百万门的电路,为粗粒度可配置计算的研究和应用提供了基础。
1 粗粒度可配置结构的数据处理
在可重配置计算中,一般提供了配置过程和计算过程。根据计算任务的不同,首先对处理单元和连接网络进行相应的配置,之后再对数据流进行计算。图2是传统的处理器与粗粒度可重配置结构数据处理流程的比较。从图2中可以看到,冯·诺曼类型的指令流被配置流和数据流所代替。粗粒度可配置计算结构将软件的灵活与硬件的高速结合在一起,从崭新的角度设计数字信号处理器。与传统的处理器相比,具有以下特点:
(1)传统数据处理的指令流被配置流所代替,不再是单个指令的乘加或移位运算,而是不同功能如滤波、fft、矩阵相乘等的顺序执行。
(2)各单元功能可以配置,与传统的处理器指令不同,设计全新的配置指令。通过配置为不同功能单元的组合,完成相应的功能。由于是用硬件实现各功能,功耗低。
(3)不存在传统处理器从ram中读取指令问题,且结构中有多个ram区和i/o可用,可有效解决冯·诺曼瓶颈,加快数据处理速度。
(4)多个单元的网络结构,链路可配,具有极强的并行处理能力。将编译之后的算子网表与实际结构中的处理单元一一对应的过程是映射与路径寻优的过程,主要指map(映射)、place(放置)、route(路由)三步。涉及的优化算法主要有:模拟退火算法、遗传算法、谈判拥塞算法等。
2 发现现状
粗粒度重配置计算最早见于20世纪60年代,是gerald estrin教授提出的“固定加可变结构计算机”,但因为受当时芯片制造水平的限制,只是一个概念而已。进入90年代,随着vlsi(超大规模集成电路)技术的发展,以“可编程开关(programswitch)”为基础的粗粒度可配置计算结构不断被开发出来,并在图像滤波、特征提取、目标识别与跟踪、通讯算法等方面展示出了非凡的性能与潜力。表1列出的是国外部分粗粒度计算项目,国内此项研究尚未见报道。在商业应用中,做得比较好的是pact极端并行处理公司,其包含64个pe的xpp64a1在主频200mhz时mac(乘加)运算已经达到了12.8gigamacs/秒。
从表1可以发现,现有粗粒度可重配置计算都有其相应的应用领域,没有形成一个统一固定的模式,系统结构、组织方式、粒度大小及编译环境各不相同。开发高效通用的粗粒度计算结构仍有一定的难度,这也是可配置计算结构的重要研究方向。
表1 粗粒度结构技
摘要:论述了粗粒度可配置计算结构的特点、发展现状和未来发展方向。
关键词:粗粒度 配置 并行计算
可配置计算又称为自适应计算。它是由多个具有可重配置功能的功能单元(pe)和可以配置不同数据传递方向的连续线路一起构成的计算机结构,如图1所示。现在,可重配置计算分为两类:细粒度配置和粗粒度配置。细粒度配置计算主要体现在fpga(现场可编程逻辑阵列),它在数字逻辑芯片开发和系统设计等方面应用非常广泛,但由于细粒度的原因,其实际逻辑单元仅占实际芯片面积的10%,其余被开关、ram、布线网络所占有,功耗和工作频率都不是非常理想,在处理一些规则运算,如乘法时效率不高。相对的,粗粒度配置计算的粒度一般为4、8、16、32位,非常适合进行算法级操作。试想一下,如果要处理10000×20000像素的图片,用现在的计算机能够实时完成吗?但应用粗粒度可配置计算结构设计的计算机能够完成。在数字信号处理领域,算法一般都遵循90/10的规律。即在一个算法中,90%是重复单一或类似功能的规则操作,不规则的静态操作只占10%。如果针对算法中的规则操作设计处理单元(pe),并通过多个处理单元(pe)组成网络进行并行计算,在功耗比较小时,其计算能力或者说处理速度将非常快,能够完成大数据量、大运算量的算法。同时随着超大规模集成电路的发展,特别是soc(单芯片系统集成)技术的兴起,在一个芯片中,可以很容易集成几百万门的电路,为粗粒度可配置计算的研究和应用提供了基础。
1 粗粒度可配置结构的数据处理
在可重配置计算中,一般提供了配置过程和计算过程。根据计算任务的不同,首先对处理单元和连接网络进行相应的配置,之后再对数据流进行计算。图2是传统的处理器与粗粒度可重配置结构数据处理流程的比较。从图2中可以看到,冯·诺曼类型的指令流被配置流和数据流所代替。粗粒度可配置计算结构将软件的灵活与硬件的高速结合在一起,从崭新的角度设计数字信号处理器。与传统的处理器相比,具有以下特点:
(1)传统数据处理的指令流被配置流所代替,不再是单个指令的乘加或移位运算,而是不同功能如滤波、fft、矩阵相乘等的顺序执行。
(2)各单元功能可以配置,与传统的处理器指令不同,设计全新的配置指令。通过配置为不同功能单元的组合,完成相应的功能。由于是用硬件实现各功能,功耗低。
(3)不存在传统处理器从ram中读取指令问题,且结构中有多个ram区和i/o可用,可有效解决冯·诺曼瓶颈,加快数据处理速度。
(4)多个单元的网络结构,链路可配,具有极强的并行处理能力。将编译之后的算子网表与实际结构中的处理单元一一对应的过程是映射与路径寻优的过程,主要指map(映射)、place(放置)、route(路由)三步。涉及的优化算法主要有:模拟退火算法、遗传算法、谈判拥塞算法等。
2 发现现状
粗粒度重配置计算最早见于20世纪60年代,是gerald estrin教授提出的“固定加可变结构计算机”,但因为受当时芯片制造水平的限制,只是一个概念而已。进入90年代,随着vlsi(超大规模集成电路)技术的发展,以“可编程开关(programswitch)”为基础的粗粒度可配置计算结构不断被开发出来,并在图像滤波、特征提取、目标识别与跟踪、通讯算法等方面展示出了非凡的性能与潜力。表1列出的是国外部分粗粒度计算项目,国内此项研究尚未见报道。在商业应用中,做得比较好的是pact极端并行处理公司,其包含64个pe的xpp64a1在主频200mhz时mac(乘加)运算已经达到了12.8gigamacs/秒。
从表1可以发现,现有粗粒度可重配置计算都有其相应的应用领域,没有形成一个统一固定的模式,系统结构、组织方式、粒度大小及编译环境各不相同。开发高效通用的粗粒度计算结构仍有一定的难度,这也是可配置计算结构的重要研究方向。
表1 粗粒度结构技