中文第一计算机图形学社区OpenGPU 版权所有2007-2018

 找回密码
 注册

扫一扫,访问微社区

搜索
查看: 17934|回复: 64

讨论一下Reconfigurable Architecture和Stream Processing的关系?

[复制链接]
发表于 2009-10-13 04:06:40 | 显示全部楼层 |阅读模式
我觉得无论是对于粗粒度的可重构还是对于细粒度得可重构来说,Stream Processing Programming Model都是唯一一种可以开发可重构计算的编程模型。毕竟重构的代价相对比较大,如果没有DLP类型的应用给与支持的话,效率就会成为最大的隐患。

不过这方面我研究不多,希望有学识的大牛能指点一二,引用相关论文也可以 :〉
发表于 2009-10-13 08:52:55 | 显示全部楼层
1# ic.expert
不知道ic大侠讲的可重构的具体意味是什么?好像没看到哪个stream processor是可重构的?
scott mahlke的工作很出色,这篇paper:Bridging the Computation Gap Between Programmable Processors and Hardwired Accelerators

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

1

查看全部评分

 楼主| 发表于 2009-10-13 21:49:47 | 显示全部楼层
其实TIle-base Manycore都是Stream Processing Programming Model,也就是所谓的粗粒度可重构。软件流水线可以使这种架构获得最好的加速比。

而细粒度可重构情况就复杂了~
发表于 2009-10-13 23:06:23 | 显示全部楼层
scott mahlke的那篇paper探討的就是,到底多大粒度的可重構是合適的?他們的PLA是介于ASIC和FPGA之間的一種針對循環的可重構arch。tile的arch沒有研究過,ic能不能具體講講它是怎么做粗粒度可重構的?是不是把一個tile當作一個computational primitive?那就相當于macro-pipelining了。那個的話我倒是知道wisc有人做過類似的~
发表于 2009-10-14 00:49:15 | 显示全部楼层
IC,两个问题:你怎么定义重构的?打算用什么实现这种重构?
 楼主| 发表于 2009-10-14 01:03:11 | 显示全部楼层
我打算讨论的重构的范围,从基于LUT的门级可重构到基于Tile-baes Arch的多核心处理器可重构。

另外,queeten 大牛说的没错~ 我就是那个意思 :〉
发表于 2009-10-14 21:19:12 | 显示全部楼层
那ic大侠认为怎么样粒度的重构是合适的?重构应当以遵循什么宗旨呢?ic是否认为一个可重构的FU应当在一定程度上是fixed function的?
发表于 2009-10-15 00:01:05 | 显示全部楼层
我们以前讨论过,重构广义的来说,可以是去改变数据流向或者是改变运算的功能。如果是改变流向,那就是走指令处理器的路子,如果是改变运算单元,还可以再细分为,改变内部细颗粒的连接和颗粒单元的功能。这是一个嵌套的过程。嵌套的最后一步,IC设计的极致,那就是改变transistor的连接了。肯定是有一个最基本的固定功能的单元,粒度越小,越灵活;粒度越大,越高效。但是怎么样的粒度,就我个人来看,跟具体的应用有关吧。
发表于 2009-10-15 00:07:11 | 显示全部楼层
我们论坛里,似乎很少人涉及容错性和。不论是物理故障还是性能故障,重构技术是稳定系统最得力的保障啊。从这个角度看,未必一定要是流处理模型。

评分

1

查看全部评分

发表于 2009-10-15 01:15:09 | 显示全部楼层
jr0jr大侠能不能具体讲讲应用怎么决定重构的粒度呢?比如对于图形应用,应当是什么级别的粒度呢?另外,应用千变万化,怎么结合可重构这个角度来分析应用呢?
发表于 2009-10-15 19:16:30 | 显示全部楼层
我是新手
上这里来纯学习的
今天貌似看到有一篇关于这方面的论文
现在传上来(貌似是ic 大牛提供的下载链接,我只是下了下,再传了下)

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

1

查看全部评分

发表于 2009-10-15 19:21:24 | 显示全部楼层
本帖最后由 heiyeliu 于 2009-10-15 19:23 编辑

呵呵
顺便把二楼大牛提到的论文也传下
赚点积分

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

评分

1

查看全部评分

发表于 2009-10-15 21:58:52 | 显示全部楼层
我对可重构的概念理解不是很深入,我认为的可重构技术是对硬件结构的改变。可重构的具体实现方法,我还想请牛人解答
发表于 2009-10-16 00:30:02 | 显示全部楼层
本帖最后由 jr0jr 于 2009-10-16 00:31 编辑
jr0jr大侠能不能具体讲讲应用怎么决定重构的粒度呢?比如对于图形应用,应当是什么级别的粒度呢?另外,应用千变万化,怎么结合可重构这个角度来分析应用呢? ...
queeten 发表于 2009-10-15 01:15


广义的重构,或者说可编程性,是追求在有限的芯片空间内“组合”出无限的实现的技术,换句话说就是用时间换空间的技术。对于不同的应用,产品有不同的设计朝向,有的为了容错,有的为了低耗,等等等等,所以重构也有不同的考虑,没有普适的准则。如果只追求效率的话,重构是没有意义的。我以前举过一个例子,如果有足够大的芯片面积,我们甚至可以把一个操作系统硬件化,这样肯定最高效,但是肯定最不经济。重构,一定是在满足其它必要条件的基础上再追求性能。所以,重构不是追求的目的,它永远都是当前技术水平下的一种折衷的手段。

图形运算这么高深的东西我可不敢乱讲。如果是图像编解操码作的话,以在下的愚见,DCT显然是一个最基本的操作。这个单元足够可以作为一级的固定单元。在同一个芯片系统里,重构的颗粒可以是混合的。有些单元可以进行指令级的重构,比如DCT单元的输入输出连接,有些单元可以进行门级重构,比如编解码的字长。还是那句老话,看你最最基本的要求是什么了,体积?功耗?容错?要用这些标准去约束设计,然后再用性能标准去优化它。

评分

1

查看全部评分

发表于 2009-10-16 01:11:25 | 显示全部楼层
本帖最后由 jr0jr 于 2009-10-16 01:19 编辑
我对可重构的概念理解不是很深入,我认为的可重构技术是对硬件结构的改变。可重构的具体实现方法,我还想请牛人解答
zhouhong 发表于 2009-10-15 21:58


对这个问题,在下大胆应和一下,是在不敢僭越。

正如你所说的那样,重构可以定义为一种改变硬件结构的过程。如果你大学必修课里有数字电子技术的话,相信它的最后部分肯定有涉及,比如PLD技术的原理等等。有这个作基础,只要再看一些芯片的技术资料,或者直接上wikipedia搜一搜就可以了。没有什么难度,无非是改变晶体管通与不通的状态而已。不过如何定义“改变硬件结构”,就要看你站在什么样的高度上看了。狭义的重构是指改变电路的连接组合,广义的重构可以是指硬件系统的可编程性。在下个人的经验是,如果站在广义的重构的角度来整体规划设计系统,也许自由空间会大一些。请各位高人们斧正!

评分

1

查看全部评分

 楼主| 发表于 2009-10-16 15:52:14 | 显示全部楼层
晶体管本身的位置是不会动的,所谓的可重构充其量就是就是改变晶体管之间的连线。但是硬件连线也不会动,再出场的时候就设计好的,所以目前集成电路技术中的可重构仅仅是改变两个模块之间逻辑连接,而非物力连接。这导致了Routing的复杂度飙升,FPGA就是个很好的例子……。

的确,可重构和Stream Processing不是一一对应的 :〉
发表于 2009-10-17 11:16:12 | 显示全部楼层
IC讲的非常清晰易懂!不愧是本站老大之一,佩服!

FPGA的粒度太小了。。。用它做产品,灵活有余,性价比不足啊。除非用在军工上,可以不计成本,否则会亏死的。
发表于 2009-10-17 11:25:34 | 显示全部楼层
mahlke的paper里有这么一句话:
FPGAs achieve extremely high performance for bit-level parallel computation. But, the overhead of gate-level reconfigurability often causes them to fall short in applications that have limited parallelism or rely on more expensive computations, such as multiplies

评分

1

查看全部评分

发表于 2009-10-17 12:03:16 | 显示全部楼层
FPGA在教学上还是很有优势的。在讲述一些定制计算的原理上,现场编程,所见即所得,方便的很。除此之外,我想不出还有什么更好的地方了。大家怎么看?

评分

1

查看全部评分

发表于 2009-10-17 21:46:20 | 显示全部楼层
如果按照jr0jr的说法,FPGA还真的是一个典型的可重构系统。按照楼上的说法,FPGA的运用很窄。我所知道的是现在很多的硬件加速器都是用很大的FPGA阵列来完成的。

评分

1

查看全部评分

发表于 2009-10-17 23:20:12 | 显示全部楼层
你也会看到更多更多更多的硬件加速器是ASIC的 :) 。FPGA在初代产品或者小批量生产中或有些应用,但是一旦设计成熟以后,对于大批量生产,为了减少成本一般就需要流片了。目前FPGA芯片在所有VLSI产品中的比例我没有统计过哦,但是估计不会超过1%吧,不然就太贵了。

评分

1

查看全部评分

 楼主| 发表于 2009-10-18 11:14:21 | 显示全部楼层
类似HardCopy这种东西应该算是FPOA了吧?不知道未来前景怎么样。



HardCopy III ASIC Architecture



HardCopy® III ASICs are built from the ground-up to enable Stratix® III FPGA-based seamless prototyping. First, base members of the HardCopy III family are defined by using Stratix III-compatible I/O module rings. Then, the base dies are embedded with equivalent hard intellectual property (IP) blocks, such as I/O buffers, clock networks, phase-locked loops (PLLs), DLLs, and M9K and M144K memory blocks, from Stratix III FPGAs. The remaining die area is filled with proven, fine-grained HCells for logic, digital signal processing (DSP) functions, and distributed MLAB memories. The result is an ASIC that is interchangeable with a Stratix III FPGA on your system board. Figure 1 shows the HardCopy III architecture.

Figure 1. HardCopy III ASIC Architecture




Altera’s Quartus® II development software offers the industry’s only “design-once” tool for both HardCopy ASICs and prototyping FPGAs. You use one register transfer level (RTL) design, one set of timing constraints, one IP set, and one design tool for two device implementations. Furthermore, design-for-test, design-for-manufacturing, and design-for-yield are pre-built into the base layer and metal structures of the HardCopy silicon. There is no need for you to spend time and money on any design for test, design for manufacturability, and design for yield activities. The result is an ASIC with the lowest risk and lowest total cost that also provides the benefit of faster time-to-market and time-to-profit.

更多可以参考 : http://www.altera.com.cn/literature/lit-hrd.jsp

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
发表于 2009-10-18 18:57:27 | 显示全部楼层
我好像以前在一个讲座里试过用这个东西,跟matlab配合在一起很方便。很遗憾就是没有仔细研究。不过总体感觉是它比FPGA更有工业实用价值。谁有第一手经验愿意共享一下?

评分

1

查看全部评分

 楼主| 发表于 2009-10-19 03:20:36 | 显示全部楼层
Altera 2007会议的时候听过一次讲座,说主要是给DSP用的,我感觉用的也是Stream Processing模型,适合大规模的Data-intansive Computing。年代久远,我目前没有PPT。
发表于 2009-10-19 22:10:08 | 显示全部楼层
PPT简直就是学习必不可少的资料。书太老,论文字太多,还是PPT最好。
发表于 2009-10-31 11:04:51 | 显示全部楼层
FPOA是个什么东西,对FPGA的结构不是很了解,请牛人们解答一下。

评分

1

查看全部评分

 楼主| 发表于 2009-10-31 11:41:57 | 显示全部楼层
FPOA是个什么东西,对FPGA的结构不是很了解,请牛人们解答一下。
zhouhong 发表于 2009-10-31 11:04


可以看看这个帖子 http://www.opengpu.org/bbs/viewt ... p;fromuid=33#pid938
发表于 2009-11-14 04:09:24 | 显示全部楼层
可以看看这个帖子 http://www.opengpu.org/bbs/viewt ... p;fromuid=33#pid938
ic.expert 发表于 2009-10-31 03:41


我还以为是什么技术贴呢,原来是这个幻想贴。。。
发表于 2009-11-20 10:24:52 | 显示全部楼层
Hardcopy技术实际上就是将FPGA的可编程特性去掉,变成ASIC,从而减少面积。使用和FPGA内部完全一致的IP资源。
发表于 2009-11-25 02:49:20 | 显示全部楼层
22# ic.expert

HardCopy仅仅是Xilinx或Altera的商业模式的扩展和降低成本的途径。其芯片设计与全功能FPGA无异,但确去掉了现场可编程能力。可以想象,由于需要检测的功能模块因定制的需要而减少或降低,HardCopy的yield率会高出全功能的FPGA的若干数量级。但HardCopy已不具备可重构能力,和ASIC没有区别了,但其性能远不如ASIC,尤其是当设计以通用逻辑为主时,因为它的内部结构还是FPGA,逻辑依然是查找表,走线依然是开关网络。

RA于SP没有任何关系,前者是对架构的设计方式的改进,后者只是一种架构。SP不考虑处理机间的直接通信,通信依然是靠(共享)存储完成。但RA的互联是可重构的(现场或非现场),处理机(或功能模块)可以直接相连。但RA付出的代价是非常巨大的,并非一个或两个数量级。你可以看到NVIDIA,AMD推出新的GPU时,大吹大擂自己的芯片有多大,有多少个晶体管,但你绝无可能问到Xilinx的V5LX330的面积有多大,因为那样等面积的等效门数量会低到让人耸肩的程度。

RA只适合于作原型研究和某些特定领域。而SP也只能适用于相应的领域,也不是全能的。

评分

1

查看全部评分

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关于我们|小黑屋|Archiver|手机版|中文第一计算机图形学社区OpenGPU

GMT+8, 2018-5-23 07:10 , Processed in 0.082073 second(s), 36 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表