D0I:10.13374/j.issn1001-053x.2001.04.027 第23卷第4期 北京科技大学学报 Vol.23 No.4 2001年8月 Journal of University of Science and Technology Beijing Aug.2001 可重构计算机体系结构 王昭顺王沁 曲英杰 北京科技大学信息工程学院,北京100083 摘要介绍可重构的概念、可重构计算系统的基本结构、技术基础和技术关键;提出可重构 计算机设计中存在的问题与解决方案. 关键词可重构;可重构计算系统;可重构计算系统结构 分类号TP303 1可重构的概念 殊的计算支持,以实现大计算量指令和子程序 的执行.这种提高通用计算机性能的重构方法 可重构是在软件的控制下,利用可重用资 称为指令级可重构. 源,重构或重组成另一个计算平台,以适应不同 (4)芯片级可重构:在多处理器互连的基础 的应用需求,.具有可重构特征的计算系统称为 上,使处理器位数可变、处理器个数可变或处理 可重构计算系统 器间互连可变的计算机结构,称为芯片级可重 重构与重组是可重构计算系统改变其功能 构或结构级可重构, 的2种方式).重构是指新计算系统的功能部 件,在旧的计算系统中不存在,利用旧计算系统 2可重构计算的系统结构 的可重用资源重新构造生成.重组是指新计算 系统的功能部件,在旧的计算系统中存在,通过 可重构计算系统一般采用标准处理器单元 重新组合形成新的计算结构. 与可重构阵列紧密耦合的设计方法,其基本的 可重构的基础是可重用资源.在FPGA出 系统结构如图1所示网 现之前,可重构计算机系统采用重组的方式,其 存储器 重用资源是功能部件;FPGA出现之后,使重构 方式成为可能,其重用资源是基本门和线,通过 指令Cache 数据Cache 配置文件,定义每个门的性质和线的连接,改变 硬件的功能。 可重构的目的是为解决硬件结构与应用不 标准处理器 可重构阵列 匹配.按解决问题的层次不同,可将可重构分为 4类0: 图1可重构计算系统的蓄本结构 (1)门级可重构.从基本门级入手重构计算 Fig.1 Basic structure of reconfigurable computation system 系统.即将功能部件的逻辑用FPGA实现,当应 可重构阵列可以访问标准处理器单元的高 用算法改变时,通过改变FPGA的配置来改变 速缓存,但可重构阵列可以与标准处理器单元 其功能.这种重构也称为电路级可重构. 独立执行(指令来自于缓存),也可以在标准处 (②)部件级可重构.早期的重构从功能部件 理器单元的控制下执行(指令来自于标准处理 入手,通过对功能部件的重新组合来适应不同 器).可重构计算的技术基础是可重构阵列.可 的计算需求 重构阵列结构如图2所示. (3)指令级可重构.在标准处理器单元的基 其中可重构阵列的构成元素可以是基本 础上增加专用的计算设备,为通用计算提供特 门,也可以是功能部件(如寄存器等).可重构计 收稿日期2000-10-31男,31岁,讲师,预士 算的技术关键有:
摘 卷 第 期 的 年 月 北 京 科 技 大 学 学 报 工 处汀 恤 、 】 乡 可重构计算机体系结构 王 昭 顺 王 沁 曲 英 杰 北京科技大学信息工程学院 , 北京 摘 要 介绍可重构的概念 、 可重构计算系统的基本结构 、 技术基础 和技术关键 提出可重构 计算机设计中存在的间题与解决方案 关扭词 可重构 可重构计算系统 可重构计算系统结构 分类号 可重构的概念 可重构是在软件 的控制下 , 利用 可重用资 源 , 重构或重组成另一个计算平 台 , 以适应不 同 的应用需求 具有可重构特征的计算系统称为 可重构计算系统 重构与重组是可重构计算系统改变其功能 的 种方式 【 重构是指新计算系统的功能部 件 , 在 旧 的计算系统 中不存在 , 利用 旧计算系统 的可重用资源重新构造生成 重组是指新计算 系统的功能部件 , 在 旧 的计算系统 中存在 , 通过 重新组合形成新 的计算结构 可重构 的基础是可重用资源 在 出 现之前 , 可重构计算机系统采用重组的方式 , 其 重用资源是功能部件 出现之后 , 使重构 方式成为可能 , 其重用资源是基本门和线 , 通过 配置文件 , 定义每个门的性质和线 的连接 , 改变 硬件 的功能 可重构 的 目的是为解决硬件结构与应用不 匹配 按解决问题的层次不 同 , 可将可重构分为 类‘,, 门级可重构 从基本 门级人手重构计算 系统 即将功能部件的逻辑用 实现 , 当应 用算法改变时 , 通过改变 的配置来改变 其功能 这种重构也称为 电路级可重构 部件级可重构 早期 的重构从功能部件 人手 , 通过对功能部件 的重新组合来适应不 同 的计算需求 指令级可重构 在标准处理器单元的基 础上增加专用 的计算设备 , 为通用 计算提供特 收稿 日期 犯 男 , 岁 , 讲师 , 硕士 殊的计算支持 , 以实现大计算量指令和子程序 的执行 这种提高通用计算机性能 的重构方法 称为指令级可重构 芯片级可重构 在多处理器互连 的基础 上 , 使处理器位数可变 、 处理器个数可变或处理 器间互连可 变 的计算机结构 , 称为芯 片级可重 构或结构级可 重构 可重构计算的系统结构 可重构计算系统一般采用标准处理器单元 与可 重构阵列 紧密藕合 的设计方法 , 其基本 的 系统结构如图 所示 数据 可重构阵列 翻 可,构计算系统的落本结构 棺 花 沈 四 卜 月。 叮 可重构阵列可 以访间标准处理器单元的高 速缓存 , 但可重构阵列可 以 与标准处理器单元 独立执行 指令来 自于缓存 , 也可 以在标准处 理器单元 的控制下执行 指令来 自于标准处理 器 可重构计算 的技术基础是可重构阵列” 可 重构阵列结构如图 所示 其 中可 重 构 阵列 的构成元 素可 以 是基本 门 , 也可 以是功能部件 如寄存器等 可重构计 算 的技术关键有 DOI :10.13374/j .issn1001-053x.2001.04.027
VoL.23 No.4 王昭顺等:可重构计算机体系结构 ●387· (1)可重构阵列元素的构造.确定可重构阵 系统的具体应用来确定其组合方式,以便确定 列元素的功能以及其功能实现方法 构造单元之间的连接与控制 (2)可重构阵列元素的物理连接.由于可重 确定了可重构计算机系统的应用需求之 构阵列需要适应不同的计算需求,理想的物理 后,设计师面临的第3问题是构造单元之间的 连接方式是全连通. 连接与控制.虽然根据具体的应用来确定连接 (3)可重构阵列元素RE(Reconfigurable El- 关系,减少了部分连线,但从芯片实现的角度, ement)的连接控制.不同的计算需求需要不同 可重构阵列内部的连线依然太多,增加芯片布 的连接方式,如何控制可重构阵列元素的连接 局布线的复杂度.一种解决方案是可重构阵列 方式,使应用灵活方便 内部的连接采用总线连接方式,如图4所示. RE RE RE RE RE RE RE 分8 RE RE RE RE 图2可重构阵列结构 RE RE RE Fig.2 Reconfigurable Arrag structure 图4可重构阵列的总线结构 3 可重构计算机系统设计中存在的 Fig.4 Bus structure of reconfigurable arrag 问题与解决方案 我们在设计一个可重构密码芯片RCCU (ReConfigurable Cryptogram Unit)时,采用了这 在可重构计算机系统设计过程中,设计师 种方法,RCCU的结构如图5所示 首先面临的问题是可重构阵列元素的构造.基 RCU为可重构单元,RF为寄存器堆.RCCU 本的构造元素有操作单元和存储单元两类,如 芯片可以完成4种不同密码算法的加/解密.可 图3所示 重构阵列的控制一般采用配置文件的方法,即 (a) (b) 提取可重构阵列的控制节点,用控制存储单元 MUX 中的编码控制他们.对于一个计算算法,所有控 MUX 制节点所需的编码写在一个配置文件中,用一 段程序将配置文件中的数据写入控制存储单 LOG LAT 元,由控制存储单元控制算法的执行.对于大规 模可重构阵列,配置文件较大,可重构阵列的重 图3可重构阵列元素构造单元,()操作单元,(b)存储 构时间将较长,设计师另一种可选的方案是采 单元 Fig.3 Construction unit of reconfigurable arrag element 用部分重构的思想.通过运行时的部分重构,使 重构阵列的硬件资源成为一种可以动态再分配 操作单元完成可重构阵列元素的功能,这 的计算资源,有效提高系统的资源利用率,减少 些构造元素的不同组合可以完成不同的应用需 了重构时间,所需的数据量比全部重构少 求;存储单元完成对操作单元结果的存储. 设计师面临的第2问题是面向何种应用需 1/60-1/3.Brigham Young大学研制的DISC(Dy- 求.当构造单元很多时,他们的组合方式成千上 namic Instruction Set Computer)是部分重构的一 个典型范例 万(组合爆炸问题),因此应根据可重构计算机
王昭顺等 可 重构计算机 体系结构 可重构阵列元素的构造 确定可重构 阵 列元泰的功能以及其功 能实现方法 可重构 阵列元素的物理连接 由于可重 构阵列需要适应不 同的计算需求 , 理想 的物理 连接方式是全连通 可 重构 阵列元素 叮 的连接控制 不 同的计算需求需要不 同 的连接方式 , 如何控制可重构阵列元素的连接 方式 , 使应用灵活方便 系统 的具体应用来确定其组合方式 , 以便确定 构造单元之间的连接与控制 确 定 了 可 重 构 计算机 系统 的应 用 需 求 之 后 , 设计师面临 的第 问题是构造单元之间的 连接与控制 虽 然根据具体的应用来确定连 接 关系 , 减少 了部分连线 , 但从芯片实现 的角度 , 可 重构阵列 内部 的连线依然太多 , 增加 芯片布 局布线 的复杂度 一种解决方案是可重构阵列 内部 白侧座接采用 总线连接方式 , 如 图 所示 一画 萦 萦 兮 单去 一二 吸 ‘ 一土 丁一 丁一… 晋士 图 可重构 阵列 结构 · 吨 加 向令 向今 向备 向令 自 向 可重构计算机系统设计中存在的 问题与解决方案 在可重构计算机系统设计过程 中 , 设计师 首先面临的问题是可重构 阵列元素 的构造 , 基 本 的构造元素有操作单元和存储单元两类 , 如 图 所示 图 可兹构 阵列 的 总 线结构 加 画 选幽 圈 可,中构 阵列元素构造单元 中, 操作单元 , 助存储 单元 她 操作单元完成可重构阵列元素的功能 , 这 些构造元素的不 同组合可 以完成不 同的应用需 求 存储单元完成对操作单元结果 的存储 设计师面临 的第 问题是 面 向何种应用需 求 当构造单元很多时 , 他们的组合方式成千上 万 组合爆炸问题 , 因此应根据可重构计算机 我 们 在 设 计一 个 可 重 构 密码 芯 片 叮 时 , 采用 了这 种方法 , 的结构如 图 所示 为可重构单元 , 为寄存器堆 芯 片可 以完成 种不 同密码算法 的加 解密 可 重构 阵列 的控制一般采用 配置文件 的方法 , 即 提取可重构 阵列 的控制节点 , 用 控制存储单元 中的编码控制他们 对于一个计算算法 , 所有控 制节点所需 的 编码写在一个配置文件 中 , 用一 段程 序将 配 置文 件 中 的 数据 写 人控 制存储单 元 , 由控制存储单元控制算法 的执行 对于大规 模可重构阵列 , 配置文件较大 , 可重构阵列的重 构 时 间将较长 , 设计师另一种 可选 的方案是采 用部分重构的思想 通过运行时 的部分重构 , 使 重构阵列 的硬件资源成为一种 可 以动态再分配 的计算资源 , 有效提高系统 的资源利用率 , 减少 了 重 构 时 间 , 所 需 的 数 据 量 比 全 部 重 构 少 一 大学研制 的 是部分重构 的一 个典型范例
●388· 北京科技大学学报 2001年第4期 RCU RCU RCU RCU RCU RCU RCU RCU ! 一 控制寄存器 RCU RCU RCU RCU RCU RCU RCU RCU RF IN OUT 图5RCCU芯片结构 Fig.5 Stracture of RCCU clip 4 结束语 所作为,也为我国刚刚起步的集成电路设计与 开发指出了一条途径. 可重构计算为计算机体系结构提供了一个 新的发展方向,提高了并行处理的效率和并行 参考文献 处理的应用领域.在模式识别、图像处理、密码1佟冬,胡铭曾,方滨兴.可重构计算和可重构计算机 学等领域得到成功应用.可重构计算机特别适 技术.计算机科学,1998(4:7 2罗金平,杜贵然,周兴铭.计算机体系结构的新发展: 合由位级(Bit Level)操作组成的算法m,在我国 通用重构计算技术.计算机工程,1999(9):1 研究密码算法与密码芯片等领域的过程中将有 3黄海鹰,黄华.可重构计算机.微处理机,1999(2)39 Reconfigurable Computer Architecture WANG ZhaoShun,WANG Oin,OU YingJie Information Engineering School,UST Beijing,Beijing 100083,China ABSTRACT Introduced the concepts of reconfigurable and basic structure,key technology of reconfigur- able computing system,then presented some problems and their solutions in design of reconfigurable com- puter. KEY WORDS reconfigurable;reconfigurable computing system;reconfigurable computer architecture
北 京 科 技 大 学 学 报 年 第 期 一 甲一 一 控 制 ,尸 寄 存 卜应匆 · 器 二 二甲 日中‘ 甲 , , 仲, 日梦 件 森中 认嚓 〕 , 厂一一一 , 一, 匕孚 ’ 甘 日 卜 结束语 圈 芯片结构 褚 口 如 所作为 , 也为我 国刚刚起步 的集成 电路设计与 可重构计算为计算机体系结构提供了一个 新 的发展方 向 , 提高了并行处理的效率和并行 处理的应用 领域 在模式识别 、 图像处理 、 密码 学等领域得到成功应用 可重构计算机特别适 合 由位级 操作组成 的算法叭 在我 国 研究密码算法与密码芯片等领域的过程 中将有 开发指 出了一条途径 今 考 文 献 伶冬 , 胡铭曾 , 方滨兴 可重构计算和可重构计算机 技术 , 计算机科学 , 罗 金平 , 杜贵然 , 周兴铭 计算机体系结构的新发展 通用重构计算技术 计算机工程 , 黄海鹰 , 黄华 可重构计算机 微处理机 , 讲 甘 环月刀召 , 洲刃 , 万心 加允仙鱿 运 血 , 响吨 , 加川 权 理 , 叮 琳 , 也即 ‘ 别盼 叮 即叮 仪止