预览加载中,请您耐心等待几秒...
1/8
2/8
3/8
4/8
5/8
6/8
7/8
8/8

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

一种可重构的处理器架构 刘小明;潘勇先 【摘要】本文介绍了一种可重构数字信号处理器架构.该处理器基于VLIW+SIMD 结构,以粗粒度的运算宏作为可重构部件,采用静态重构的方式实现架构的重组,可实 现1~4个逻辑核,每个逻辑核可集成1~16个运算宏. 【期刊名称】《科技视界》 【年(卷),期】2018(000)016 【总页数】4页(P32-34,41) 【关键词】数字信号处理器;48bit指令集;逻辑核 【作者】刘小明;潘勇先 【作者单位】中国电子科技集团公司第38研究所,安徽合肥230031;中国电子科 技集团公司第38研究所,安徽合肥230031 【正文语种】中文 【中图分类】TP332 0引言 现代信号处理应用中,任务级并行与数据级并行两种处理模式两极分化的情况日益 严重。工程实现中,针对不同应用领域的要求,需构建不同的处理器硬件平台。面 向任务级并行,需构建多核处理器平台,适应多任务并发的要求;而数据级并行, 则需构建单核处理器平台,面向单任务应用,选择处理能力强的单核处理器搭建系 统。具有可重构架构的处理器可针对不同应用需求,进行处理器结构重组,力求解 决不同应用特征下,计算平台通用化的问题,是国内外研究热点。 1处理器架构 1.1重构方案选择 可重构处理器的重构方式较FPGA存在显著的差异。可重构处理器的重构部件的 颗粒度普遍较粗,多为处理器核级或运算部件级[1]。 相较于处理器核重构,采用运算部件级重构亦存在以下不足: (1)用户程序移植难度较大,即放在可重构逻辑上实现的函数在移植过程中因处 理器架构的差异,需要重新设计; (2)类似FPGA开发,需要根据每种应用重新设计配置信息,开发效率没有利用 编程方式实现效率高; (3)针对该种结构验证所有信号处理应用的难度较大,若不充分验证可能导致后 续实际应用过程中,无法满足部分特殊运算需求的情况出现; (4)运算宏(运算部件的组合)为实现可重构功能添加了大量的连线及选择器, 严重影响主频的提升。 基于上述原因本文提出的可重构处理器架构,放弃基于运算部件的重构方式,加大 重构部件的粒度,使用静态可重构的方式实现甚颗粒度的逻辑核可重构,这也是目 前国内外可重构处理器广泛采取的实现方案之一。 本文以一组运算及存储部件构建的运算宏为最小重构颗粒,采用静态重构方式,完 成处理器内部架构重组,适用不用应用场景需求。该处理器架构内部包含4条独 立的指令流水、16个运算宏及相应外设。通过重构可将处理器配置1-4个处理器 逻辑核,每个处理器逻辑核包含1-16个运算宏。处理器采用VLIW+SIMD结构, 每条指令总线一次可发射8条48bit指令字,单指令最多可驱动16运算宏参与计 算。 1.2具体实施方式 (1)逻辑核重构 处理器主要包含两种工作模式:初始和重组模式:初始模式:该模式下的处理器形 成一个逻辑核,包含16个运算宏。 图1可重构方式 重组模式:该模式可将运算宏及指令流水进行重组,构建不同规模的逻辑核。在此 条件下,处理器内部根据需要可以是一个核,也可以是2个核、3个核或者4个 核,每一个核内部的运算单元宏的个数可以不一样,内部不使用的指令流水和运算 宏均可设置成低功耗模式。 其中,运算宏作为最小重构颗粒,每个运算宏包含私有的数据存储器、分配译码逻 辑、运算部件及DMA控制器。运算部件由1个本地通用寄存器组、8个算数逻辑 单元(ALU)、4个乘法器、2个移位器和1个超算器(SPU)构成,支持16bit、 32bit、单精度和双精度浮点格式数据计算。通用寄存器作为数据暂存设备负责运 算部件与宏内私有数据存储器之间的数据交互。运算宏内部包含3条独立的64bit 数据总线,最多可同时实现2写1读或2读1写操作。宏内数据存储空间划分为 6个block。如图2所示。 图2运算宏微架构 重构流程如下: (1)增设一重构配置模块(core_fusion_config),将其作为共享外设挂接在核内 总线上。该重构配置模块包含一组配置寄存器,用于设置重构信息,如指令流水的 选择寄存器。 (2)上电复位后,首先通过访存指令设置重构配置模块,待所有配置寄存器设置 完成后,通过重构指令(core_fusion)完成结构重组。 (3)上电复位后,处理器进入用户代码的加载过程,此时处理器处于初始工作模 式,等同一个核加载过程; (4)与引导程序的末尾执行处理器重构。在完成core_fusion指令后才开始用户 代码的执行,运行于不同流水线上的用户程序。 逻辑核取指: 处理器指令总线采用流水方式,共15级,划分为前段和后段两个部分,前段7级 流水,后段8级。其