炼金术:一个基于MSP430的重构处理器体系结构外文翻译资料

 2022-11-25 15:15:54

英语原文共 4 页,剩余内容已隐藏,支付完成后下载完整资料


毕业论文(设计)

英文翻译

原文标题 Alchemy: An MSP430-based Reconfigurable Processor Architecture

译文标题 炼金术:一个基于MSP430的重构处理器体系结构

炼金术:一个基于MSP430的重构处理器体系结构

Caio Souza Oliveira

研究生课程在米纳斯吉拉斯联邦大学的电气工程Belo Horizonte, Brazil

工程部巴西米纳斯吉拉斯州Belo Horizonte, Brazil

摘要:可重构体系结构能为中低端嵌入式处理器提供显著的优势。通用处理器实现新的应用程序特定的指令,使嵌入式系统的实施更灵活,更便宜的设计师和公司。炼金术是一种新的低端的开源嵌入式可重构架构,将通用处理器与FPGA。本文介绍了建筑和建筑功能提出了炼金术的实际测试。

关键词:msp430、FPGA、可重构处理器

1 简介

在技术领域的快速发展和应用程序复杂度的快速增加,使得它成为计算机系统的一种强制性,提供某种程度的适应性。数字电路可以采取特殊的优势,这种适应性在1984 [ 1 ]从Xilinx的FPGA的到来,带来了硬连线电路可能承担不同的配置,根据设计师的要求,提供应用程序特定的计算在一个标准的现成的装置。而ASIC仍然是嵌入式系统中的应用具体计算的主要来源,FPGA可以为设备提供通用性。把一条FPGA CPU可以使用一个通用的硬件架构,对需求的系统提供了新的功能配置。FPGA能够提供新的硬件设置为每个应用程序,增加灵活性和适应性,一种新的嵌入式系统设计的可能性层。

本文提出了一种低端的开源嵌入式处理器体系结构称为炼金术,密切夫妇一个标准的可编程处理器与一个绑在一个处理器的协处理器的方式重构电路。建筑延伸德克萨斯仪器MSP430 ISA提供的适应性和更高的性能,通过定义一个简单的,低开销的通信协议。炼金术获得简单需要更少的控制信号和简单的控制逻辑实现CPU-FPGA接口。它是非常适合于应用程序,提供的工作负载与计算繁重的任务。作为一个硬件加速器,炼金术可以用FPGA等领域的数据分析,实现复杂的算法,模式识别,图像分析、网络数据包处理、数据库加速、机器学习或数据处理、压缩和加密。

978-1-4799-8332-2/15/$31.00 copy;2015 IEEE

建筑像英特尔的Atome6x5c不同,它由一个外部接口与PCI总线[1]意味着FPGA的CPU,炼金术的夫妇两块在同一模具在高速局部总线。炼金术也不同于方法如XillinxZynq-7000或AlteraNiosII,在可重构资源的部分分配给处理器几乎之上创建一个FPGA两块,一旦身体实现CPU和FPGA,使可重构面料是用户逻辑完全可用。此外,“金”提供了一个接口控制器,以简化设备管理过程,并允许用户集中更多的应用程序,而不是在安装任务。从建筑如Spyder [1]和GARP不同,炼金术提供了很好的控制在FPGA允许程序员使用HDL作为土生土长的描述语言,虽然高水平的合成方法如c-to-verilog也可以用。本文还描述了一个编译器/合成器的基础设施,提出了与实验结果证明的体系结构能力。

2 体系结构概述

炼金术是一个封闭的耦合的可重构体系结构的通用16位RISC CPU的资源共享与FPGA。各单位可单独运行或配合执行某些任务。

该架构提供高层次的指令集定制。这意味着,可以建立一个广泛的完全定制的应用程序,这是加速直接在硬件,允许更快的处理时间和更好的能源资源管理。炼金术的CPU-FPGA通信协议要求五的指令被完全控制。

图1 炼金术的结构方框图。1:CPU。2:FPGA。3:桥。4:CPU局部总线桥。5:FPGA局部总线桥。6:控制总线。7:地址总线。8:数据总线。9:程序存储器。10:共享数据存储器。通用I / O 11 12:配置存储器。

炼金术的CPU是基于MSP430的ISA,包括27个通用指令、多循环的核心,可以运行任意代码MSP430。MSP430系列是一个具有16个通用寄存器广泛流行的微架构,16位地址/数据总线和正交寻址模式[5]。这些特点使得CPU简单和节能是FPGA整合一个强有力的候选人。炼金术FPGA细粒度的岛式可重构器件。这意味着,逻辑块被布置在一二维网格与路由资源被均匀地分布在整个网格[2]。逻辑块的意思是提供基本的逻辑功能,使其设计更简单,更高效的比其粗粒度的同行。金术提供了256个通用逻辑块,由16个16矩阵组织起来,并与一个巨大的单长路由资源和64个通用输入/输出块进行了联系。

FPGA可以直接通过一个特殊的桥接口处理内存。此接口实现了一个特定的通信协议,使其能够访问16位宽的可寻址空间。这座桥是用来与CPU接口的FPGA。炼金术定义三大内存资源:共享内存的CPU和FPGA使用;程序存储器程序指令;和配置存储器来存储配置位。每个内存是64KB的8位宽。炼金术程序模型是基于C的软件编程和硬件描述语言。一个编译的C代码称为软件图像和合成的Verilog代码称为硬件图像[2]。C代码的编译工具链的使用msp-gcc[6]和Verilog代码使用录像机7工具链的合成[4]。建筑是通过自上而下的方法是基于一个高层次的TLM描述和一个较低的水平结构的RTL模型。

3 CPU构建

炼金术的目的是提供简单的RISC。

CPU的功能增加了FPGA的控制指令在一个标准的MSP430的ISA。指令可以被组织在四个主要群体,这取决于操作数或指令的性质。在一个16位字的单个操作数运行指令,执行位操作和系统控制,如推值到堆栈,调用子程序,并从中断返回。有六个条件跳转指令和一个单一的无条件跳转。双操作数指令是二进制算术,逻辑和位测试操作。有五座桥的指令让桥寄存器进行读或写,发出FPGA电话或控制桥梁专用寄存器。FPGA称允许FPGA时钟信号发生变化,使得合成的逻辑电路操作的并行或顺序的CPU。中央处理器还提供了不同的寻址和索引可用于内存或寄存器操作数的机制。一个固定的发电机也使用寻址模式,以直接进料的操作数与恒定值,避免了必要性,以负载即时或寄存器/内存为基础的内容。

中央处理器使用了一组16个通用寄存器。除了被寻址,登记R0,R1,R2和R3具有特殊的功能,程序计数器,堆栈指针,身份登记和常数发生器,分别。中央处理器还实现了一组16个中断,其中13个是屏蔽和非屏蔽三。非可屏蔽中断处理系统非法指令调用、启动/复位中断和FPGA返回中断。控制单元运行一个多周期控制器,其中一个指令发出每个平均四个时钟周期。机器周期的持续时间可能会根据不同类型的操作数和寻址模式。

4 FPGA构建

炼金术FPGA由CLB(可配置逻辑块),可编程互连和I/O模块。CLB包围整个网格互连路由信号和I/O模块。CLB提供的组合逻辑和时序逻辑的能力。它是由一组四个可配置的输入,两输入查找表(LUT,一个8位)登记并设置了四个可配置的输出。一个表可以在三个不同的编程模式。第一,允许任何输入逻辑功能的实现由两LUTS作为一。二,允许一对三个输入功能独立控制的实施,从彼此。第三种模式,实现了对独立的三个输入的逻辑功能由一个CLB的输入选择。该登记单点存储为CLB提供。它可以直接或通过一个CLB的输入复位可在一个时钟边沿触发。输出可以连接到LUT或其他CLB。比简单的电线,术语“互连”包括可编程开关,路由电线和开关矩阵。可编程开关三态缓冲器,允许或拒绝的信号传输在FPGA两元素之间。这些三态缓冲区总是一个CLB和布线的输出或输入之间。路由导线是双向单长四通道互连,即连接双交换矩阵。切换矩阵的程序,以正向信号之间的通道。一个开关矩阵可以在通道中的信号通道独立地,针对任何四个方向[ 3 ]。

I/O模块是双向通道,将信号到FPGA或者到外面的世界。在合成时间和2个功能不能同时启用,我/块功能的定义。I/O模块连接的桥梁,是CPU和FPGA之间唯一的通信路径。

5配置

FPGA只能配置在系统启动时间。整个过程大约需要1200个时钟周期。配置是通过一种特殊的电路称为配置控制器,读取配置存储器进行选择和配置,每个FPGA元。配置可以选择禁用如果FPGA不使用。初始配置的开销是“配置延迟和包容整个配置过程和桥梁的安装时间。无论是由设计器加载的配置,它始终是不变的。

6桥控制器

这座桥是主要负责交换的数据通过总线,可以为CPU和内存/FPGA/FPGA对。桥的数据一个位。位被组织在四组中有16个元素,组成一个寄存器,这是总是分配给一个单一的所有者。CPU完全访问桥位和FPGA。

I/O模块直接与他们。当CPU或FPGA有过一点的所有权,它是允许读取和写入内容当没有任何一种所有权被允许时,只允许读取。FPGA总是读根据由合成器提供的配置写桥位。这些位是等价的Verilog代码的输入和输出,设计者无法控制他们。该处理器只能读或写整个16位桥寄存器,而不是一个单一的位。桥位作为C代码来发送或接收数据到/从FPGA高层实体。这些实体作为普通函数的参数时,发射FPGA呼叫处理。FPGA使用的桥梁作为一个协议simplifer直接存储器访问。该存储器可以是读或写在它的全面扩展。它不仅要求设计师来实现一个简单的标准状态机的模板,包括一套合适的输入和输出信号的Verilog代码。

这座桥也是在控制FPGA的执行流程负责,CPU的要求下。CPU可以在两种不同的模式启动FPGA桥:顺序或并行。连续调用被视为一个标准的指令执行。CPU是提示空闲状态和FPGA自由运转直到执行完毕。并行调用允许FPGA与CPU同时运行。并行和顺序调用可以有2个不同的中止模式。不定期的悬浮液中断驱动和通知CPU执行通过一个非屏蔽中断方式。CPU执行然后搬到一个ISR,即复制桥寄存器CPU寄存器。返回中断直接由Verilog模块信号控制,这是与中断控制器。一个内部桥梁寄存器,设置在C 代码,达到零的预定悬浮液。它将在每个时钟周期和问题返回中断信号,通过桥梁的控制。FPGA可以运行多达65536个时钟周期,在一个单一的电话。如果返回的中断发出的FPGA时钟计数达到零之前,该桥清除计数器。图2显示了非标准语言结构定义的炼金术提供CPU-FPGA通信接口。

图2 炼金术的非标准C(左)和Verilog代码(右)

7 编译器和合成器

炼金术的C代码的编译工具链的使用msp-gcc,包括编译器、汇编器和链接器,用于化和编译代码的软件图像msp430-isa兼容设备。一种设备编程工具开发的对象代码格式转成一个兼容的内存文件。Verilog代码是由vtr-7.0工具链,包括逻辑综合,技术映射和砂矿由器。一个设备的包装工具,以覆盖一些设备的奇异性和产生的硬件图像存储文件。

炼金术C程序指令和变量直接请求CPU执行任务和使用桥与FPGA互动收藏。炼金术的Verilog模块组成的描述语句,如信号和寄存器来实现组合逻辑和时序逻辑结构元素,为执行任务和与互动的桥梁。C和Verilog代码的层次结构,可以有多个外部。h头文件和V模块。为了避免直接msp-gcc和vtr7.0修补代码,一套炼金术工具孕育包编译/合成它们的输入和结果的流程和操作。两msp-gcc和vtr-7.0接收源代码版本共同创造的设计师包括预处理信息和样本标注不规范的语言结构有关。前处理工具识别和评估使用非标准或要求的代码结构。在编译过程的最后一步,图像合并工具联邦软件图像合成数据维护FPGA的电话。这个建造过程的输出两个二进制存储文件64 KB。

8体系结构评价

为了评价的优势,设计了一台炼金术。它包括执行程序,两种可能的情况:一个使用CPU和FPGA(设置1)和另一个只使用处理器(设置2)。测试的目的是暴露影响分区的工作量和CPU之间的FPGA和如何确定桥的通信协议可以影响系统的整体性能。每个测试安装程序执行与一个25 MHz的时钟频率。

方案五:方案一:选取5000位整数乘法循环内执行;B计划:5000个随机的16位整数比较;C计划:一个50x50灰阶的8位图像滤波(使用一个单一的样品Sobel矩阵);方案D:一个奇偶校验算法执行5000次;程序E:FIR滤波器超过12000的16位整数。将数据进行分析,以使任何技术的具体参数可以偏置的结果。分析了在执行时钟周期数(T1和T2的设置1设置2),数量的内存访问和桥接协议延迟。由于FPGA的配置是系统的序幕,这是不是在最后的结果。同样,对于堆栈指针设置,CPU的寄存器设置的序幕,中断控制器安装在其他程序中不占。系统关机结语也不占机构并没有预定的FPGA电话进行。

表我展示了测试结果。对于程序一个,设置1可以执行大大优于设置2(约1

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[29887],资料为PDF文档或Word文档,PDF文档可免费转换为Word

您需要先支付 30元 才能查看全部内容!立即支付

发小红书推广免费获取该资料资格。点击链接进入获取推广文案即可: Ai一键组稿 | 降AI率 | 降重复率 | 论文一键排版