FPGA的16核

Download Report

Transcript FPGA的16核

基于FPGA的
计算机系统模拟
清华大学计算机系高性能计算所
张悠慧
2010.10
需求背景
高端容错计算机的设计合理性问题
系统投资巨大,构建周期长,如何尽早评估设计是否合理?
分析方法 vs.模拟技术
模拟技术被广泛应用于大规模计算机系统的设计
IBM、UIUC的BigSim、BG/LSim
Los Alamos国家实验室的PARSIM
在精度、时间与成本之间的权衡
多核、多芯片、大规模已成为计算机系统的发展趋势
传统的基于软件的模拟(尤其是周期精确模拟)已经无法适应大
规模目标系统的需求
其模拟速度是真实运行速度的千分之一到万分之一
解决思路
基于FPGA的系统模拟
灵活可配
快速
成本相对低
Intel的HASim
UC Berkeley等一些高校以及微软、SUN联合的RAMP课
题
2006年以来的HPCA上都设立了Workshop on
Architecture Research using FPGA Platforms
近几年来,全系统性能模拟从传统的软件实现逐步演化为软硬
件混合模式,或者说是硬件加速模式
基于FPGA的计算机全系统模拟技术
研究目标
研究基于FPGA的多核多处理器计算机系统模拟技术,包括系统功能模型
与时序模型分离的模拟框架、硬件资源时分复用模拟技术、软硬件混合的
模拟方法,并完成相应的模拟平台。
研究内容与指标
功能模型与时序模型分离的模拟框架
功能模型采用内部微码,指令集可调;支持一种主流指令集
时序模型参数可调(包括微体系结构、存储层次结构参数等)
硬件资源时分复用 (目标FPGA: Xilinx Virtex 5 )
可以模拟64~128个处理器核,周期级模拟
可以模拟80~256规模的互连网络
软硬件混合模拟
软件完成外设与系统调用模拟
研究内容与指标(续)
工作频率——80Mhz
Functional
Model
Timing
Model
(ISA + peripherals)
(Micro -architecture)
Host+FPGA
trace
FPGA
Host
Memory
Interleaved Pipeline 16xCPU
SRAM
Cache #0
Cache #1
……
SDRAM
Cache #15
IDE
Cache
Controller
NIOSII
Processor
#0_MMU
NIOSII
Processor
#1_Cplx
NIOSII
Processor
#2_PCI-E
Xilinx Virtex-5 XC5VLX110T
BEE3-LX155T-2C
集成了四片Xilinx LX155T FPGA芯片、64GB
DDR2内存、8个10G以太网接口、4个PCI-E接口的
大规模开发平台。
预计可以模拟几百核至近千核的多核多芯片系统
(采用时分复用模式),包括其互连、存储层次
等结构。
7
预期成果
FPGA模拟器的可综合RTL代码以及相关工程文件
相关开发文档以及使用手册
关键技术说明文档或者技术论文
相应的测试用OS、编译器以及测试代码(采用第三方开源软件)
验收方法
展示FPGA演示系统
功能检查、运行频率检查(根据量化指标)
文档、代码检查
帮助进行系统迁移、安装。
基本目标
规模:64核规模,80结点互连网络规模( 支持虚通道)
频率: 80Mhz
良好目标
规模:128核规模,256结点互连网络规模
挑战目标
规模:128核规模 + 256结点互连网络规模(需要跨片实现)
项目进度
阶段一 (三个月)
确定细化技术方案,给出细致指标;
完成初步的内核模拟代码,以及RTL功能仿真;
完成互连模拟的RTL代码(支持跨片设计)。
阶段二 (七到九个月)
代码综合、上板调试
完成原型系统
集成软件部分
阶段三 (二到三个月)
调整优化
系统展示
1Clk
16Clk
发射16条指令
来自模拟的16个处理器
完成16条指令的执行
Interleaved Pipeline 16xCPU
每条指令依次经过16个流水段
每个流水段上依次经过16个核的指令
多核多处理器互连网络模拟( 用于设计阶段 )
•方法
模拟互连网络系统,采用时钟周期驱动模式,模拟网络中包传送的过程以及每个
节点的处理与发送过程
传输瓶颈分析与不同拓扑结构对比
•输入
互连拓扑结构、网络各节点行为参数(处理/发送时延、连接带宽、工作频率、
转发策略等)
随机负载(强度可调)
•评测项目
包传输时延(平均/最大)
节点处理阻塞时间(平均/最大)
。。。。。。
 软件模拟
 完成了周期精确的可配置互连网络模拟
 模拟网络节点的内部微体系结构
 模拟了物理层、Cache一致性协议层
 灵活统计各项性能参数
 FPGA模拟
 在软件模拟的基础上,完成了周期精确的可配置的互连网络仿真
 拓扑结构、信道个数、缓存大小、网络节点处理时间等可配置
 正在开展扩展工作,争取在4个FPGA片上完成256~512结点网络
规模的高速模拟。
面向IA64的处理器体系结构模拟、故障注入与跟踪(设计
阶段)
•IA64处理器的微体系结构模拟
•提供内核、存储层次、互连网络等多层次的故障注入接口
•内部模拟实现了多种主流容错技术,可以直接配置运行
•提供容错技术开发接口,以开发新的容错功能模块
Application/Benchmark
容错模拟结果、模拟统计
分析、模拟执行记录…
User
启动时配置参数
输入
输出
研究平台
配
置
接
口
体系结构配置参数
…
处理器锁步配置参数
…
互联网络配置参数
…
故障注入参数
…
ECC容错模块
新的容错
处理器锁步模块
模块
互联网络容错模块
检查点设置模块
模块接口
内存容错模块
修改的处理器锁步容错模块
...
系统模拟
高性能服务器
容
错
开
发
接
口
User