一、Java处理器中指令合并技术的研究与实现(论文文献综述)
聂言硕[1](2021)在《支持数据路径动态重构的浮点处理器的研究与设计》文中研究指明在图形图像、科学计算、大数据分析等高密度计算领域,传统的通用处理器和专用集成电路难以满足高性能和高灵活性的双重需求。可重构处理器将指令流驱动处理器的功能灵活性和数据流驱动处理器的高能量效率结合在一起,因而在高密度计算领域受到了广泛关注。粗粒度可重构处理器以数据流为驱动,基于任务调度可重构阵列的计算过程,适合执行无控制分支和寻址模式规则的计算任务。课题组的异构多核系统面向高密度计算领域,其所集成的通用浮点处理器需要满足高性能和适用性的双重需求。针对高性能计算中非规则寻址模式任务的加速需求,论文设计了一种支持数据路径动态重构的浮点处理器,主要工作和创新点如下:(1)区别于传统的可重构处理器,引入了一种基于融合指令的实现方式。(2)针对浮点计算部件具有硬件规模较大和使用频率差异大的特点,设计了一种相较于交叉开关网络具有较小网络规模的直接互连网络。(3)针对可重构单元对存储器带宽的需求,设计了具有无冲突访问规则的多端口存储器。(4)在可重构处理器中实现了多流水线计算路径的乱序执行和乱序写回,各访存通道根据各访存通道的优先级自动地解决路径间的数据冲突。(5)设计了适用于可重构浮点处理器的编译器,这使得复杂应用程序映射在该处理器上成为可能。论文最后将多个复杂的计算任务映射到可重构浮点处理器上,通过与通用处理器对比证明了该浮点处理器的高性能,通过与其他浮点处理器对比证明了该浮点处理器兼顾高性能的同时相较于已有工作能更好的适应非规则运算。目标应用系统集成了24个可重构浮点处理器,在Xilinx Ultrascale系列xcvu440的FPGA芯片上进行了原型验证,系统可以稳定工作在76 MHz频率。相较于上一代系统,集成可重构浮点处理器的多核系统在执行雷达成像算法时系统性能提升了近2倍。
曹壮[2](2020)在《基于可重构的网络报文处理关键技术及快速生成方法研究》文中认为随着现代互联网络技术的快速发展,各种网络应用已经深深地渗透到了社会的每一个角落:从基本的工作应用需求出发,一直延伸到人们的衣食住行,社交和娱乐需求中。丰富的互联网应用在给人们带来多彩生活的同时,却给支撑起这些应用的基础通信网络带来了各种挑战。这些挑战包括:首先,网络规模的不断扩大,网络用户数量的逐年增加,以及通信数据的海量传输,使得不断增加的互联网带宽仍显捉襟见肘;与此同时,网络特性的变化对网络服务商的网络管理能力和网络的安全带来很大的挑战。其次,随着云计算、大数据技术等新兴技术的发展,诸如数据中心、电商、视频点播等各种新型网络平台及应用的不断涌现,使得封闭僵化的现有网络结构无法对这些新的应用提供足够的支撑。此外,现有网络结构受到既有硬件技术的限制,网络设备的升级换代只能通过更换硬件设备的方式实现,带来巨大的时间成本和费用成本。最后,现有的“产商设计生产设备+网络服务商使用”的网络发展模式,使得各种设备标准林立,网络服务商使用困难,而且不具备话语权;封闭的网络设备研发生产体系,导致网络服务商无法针对网络应用进行合理有效控制,造成服务质量难以令人满意。基于以上原因,网络技术研究人员开始寻求网络处理技术的革新,包括网络处理器在硬件平台、体系结构和开发技术上的改变,以此同时满足高性能、高灵活性和快速开发部署等方面的需求。随着可重构的现场可编程门阵列(Field Programmable Gate Array,FPGA)技术的不断发展,结合计算机技术的进步,比如处理器体系结构的提出和领域特定语言(Domain Specific Language,DSL)比如P4)及其编译工具链的应用和发展,为应对以上挑战提供了可能。本文首先深入研究多核网络处理器(Network Processor,NP)体系结构和可编程的“Match-action”体系结构的特性,以及将两者应用至FPGA这种可重构器件过程中的部分关键技术。然后,针对本文设计的可重构网络报文处理流水线提出了一种使用P4语言的高层次快速开发方法。具体工作分为以下三个部分:首先,针对多核网络处理器结构在可重构芯片的应用展开研究。由于单核性能受限,多核NP结构只能通过不断增加单核数量提高报文处理并行度来提升处理性能。随着核数量的提升,随之而来的是每个内核受到片上存储空间的限制。如果将多核结构运用至资源受限、运行频率低的可重构芯片中,每个内核所分配得到的存储资源将变得更加紧张,运行过程中的访存冲突问题也更为突出,从而造成性能的急剧下降。针对该问题,本文提出了面向网络报文转发的指令集压缩定制的方法,通过使用压缩指令集,降低内核结构的复杂度,提高指令密度,进而减少访存次数,获得更高的指令缓存(Instruction Cache)命中率。本文以开源指令集RISC-V为基础详细描述了该定制方法。实验结果表明,通过该方法定制的新指令集在代码的压缩上有着较原压缩指令集更高的压缩效率及更好的处理性能。其次,针对“Match-action”结构在可重构芯片上实现的不足点,提出了基于流水线结构的报文解析器(Parser)和逆解析器(Deparser)结构及其设计方法。从提高处理性能和减少处理延时的目标出发,对“Match-action”引擎提出了结构的优化方案和依据依赖关系规划流水线的方法。具体工作如下:·基于流水线结构的解析器和逆解析器由多级流水线组成,报文头内的各个协议首部在流水线的传输过程中被逐级解析或编辑,直至所有的协议首部操作完成并输出。通过分析所需支持的报文实例,以及各协议之间的解析关系并将绘制成有向无环图(Directed Acyclic Graph,DAG),以此作为流水线结构的设计依据。该设计方法解决了(逆)解析过程可能存在的协议处理冲突(Conflict)和停顿(Stall),实现完全流水化,并且具有较高的处理性能。·针对“Match-Action”引擎中的多表项(Table)结构,提出将表项间的依赖关系建立表项依赖关系图(Table Dependency Graph,TDG),并依据依赖关系的种类对表项的执行顺序进行调整,从而实现缩短流水线长度,简化流水线结构的目的。此外,通过改变表项中“Action”部分的执行方式,从而彻底摆脱通过执行指令实现各种逻辑操作的低效执行方式。在流水线的结构设计过程中,根据设计的要求定义内部总线的带宽和表项的大小,从而减少非必要的资源占用,提高可重构芯片的资源利用率。实验结果表明,基于这种设计方法生成的网络报文流水线结构具有占用资源少、运行频率高、吞吐率高和延迟低的优点。其中本文所设计的解析器与现有的同类解析器比较,在同等资源使用率的情况下,吞吐率能平均达到两倍以上。最后,针对上述(逆)解析器和“Match-action”结构所组成的报文处理流水线,提出了一个将其快速实现至可重构芯片的转换方法:首先将该流水线结构中的各个功能模块抽象为不同的通用模板并组织成模板库(Template Library),并使用VHDL代码实现;然后将P4高级语言程序描述的网络报文处理功能及控制参数映射至对应的模板中并实例化;最后将各个功能模块按照设计要求进行连接,并生成可综合的VHDL应用代码。此外,在该框架中提出了评估库(Evaluation Library)的概念,并将其应用于流水线的优化和性能估计。该开发方法能够使网络开发人员在不考虑硬件细节的情况下,集中精力于网络应用的开发,以此提高开发效率和降低开发难度。
高振华[3](2012)在《嵌入式实时Java平台设计及其在图像处理中的应用》文中进行了进一步梳理Java以其面向对象、平台无关、安全性等特性成为嵌入式系统的主流设计语言,但Java程序运行速率比较慢,实时处理受到了限制,因此国内外开始出现面向嵌入式的实时Java处理器,如aJile system的aJile-80、aJile-100、Komodo、JOP、FemtoJava等,但有的不支持RTSJ机制,有的无法在低端FPGA芯片上实现,适用于低端嵌入式设备的实时32位RISC型Java处理器JPOR-32应用而生。且Java庞大的图像、视频处理库,使得它在图像处理领域的应用与研究越来越受关注。在不影响JPOR-32实时性、高效性、可扩展性的前提下,在实时Java平台上对图像处理进行实现十分必要。由于传统的JVM的数组创建时间及异常处理时间的不稳定性使得图像处理程序的执行实时性很差。且不能对运行中的程序代码进行实时控制,仍以机器控制或设置程序断点的形式查看运行中的处理结果。针对上述图像处理过程中的实时性问题,本文主要做了以下几个工作:1、在对数据结构分析后,提出了数组创建指令的实时改进,使得多维数组的创建转变成多个一维数组的创建过程。在确保实时性的基础上,提高了执行效率,并实现了执行时钟周期的可预测。2、对异常对象和处理方式进行分类,进而确立了系统抛出系统捕获、系统抛出用户捕获、用户抛出用户捕获三种情况。针对异常机制的实现,提出了一种类线性数据结构,在确保实时性的基础上,大大提高了执行效率,并实现了异常匹配时间呈线性变化。3、在实时Java平台上对原有的硬件体系结构改进,并扩展了四条时间指令,结合异常处理机制,实现了代码段的实时控制,通过异常类型的选择避免了异常处理非实时导致的错误运行结果。最后针对几个图像处理过程中常用到的图像算法进行分析和实现,以处理结果的准确性来验证平台功能扩展实现成果。
叶新栋[4](2011)在《一种Java处理器的体系结构设计与研究》文中研究指明随着普适计算和移动计算的发展,嵌入式系统得到越来越广泛的应用。各种嵌入式设备的不断涌现,对系统的可移植性和开发效率提出了更高的要求。与传统的开发语言C/C++相比,java语言由于其具有可移植性,安全性能高以及简单易学等一系列优势,得到了越来越广泛的应用。然而由于java语言固有的解析执行的特点,其执行效率也限制了其在实时领域的应用。即使目前java虚拟机都引入了即时编译技术(JIT),然而该技术是以消耗更多的内存为代价的。在嵌入式系统内存稀缺的状况下,该技术实际给系统带来的好处也是值得商榷的。同时java程序需要在实际执行前,完成class文件加载和解析等一些列操作,也在一定程度上限制了系统的执行效率。因此如何设计一种能够提高java程序运行效率的方案,成为现在研究的热点和难点。实时java平台主要由执行引擎和支持实时性的软件环境组成。执行引擎有多种实现方式,包括基于软件的解析执行;即时编译;java硬件加速器以及java处理器等。根据国家自然科学基金项目---高可靠实时系统的计算平台(SoPC)研究(基金号:60703106)[1]。本研究小组设计并实现了一种Java处理器引擎——Jpor32(Java Processor Optimized for RTSJ)。该实时java平台主要包括:class文件转换器;Java处理器的实现以及相关类库的实现。在本文中,将详细论述如何将不适合在硬件平台直接执行的class文件转换为一种适合在硬件环境下执行的文件。同时基于该种可执行文件的结构,设计出一种高效的硬件执行引擎来代替传统的java虚拟机的执行,已达到加速java执行的目的。同时还详细描述了基于该平台的垃圾收集库的具体实现。
叶新栋,柴志雷,涂时亮[5](2011)在《一种Java处理器的体系结构设计与研究》文中研究表明Java语言由于其拥有面向对象性、高安全性以及与平台无关性,目前被广泛应用于各个领域.然而在嵌入式实时应用领域J,ava由于其固有的执行速度缺陷往往达不到应用的标准.为了解决这一问题,设计一种支持Java的处理器成为提高Java实时性的一种可靠途径.本文论述一种实时Java处理器--JPOR的最新设计结构.JPOR是一款五级流水线的RISC的处理器.与其他Java处理器相比J,POR拥有指令预取和缓存等一系列不同的机制,很好的适应了嵌入式实时领域的应用.
郭中元,叶新栋[6](2009)在《一种实时Java处理器的指令存取部件设计与实现》文中进行了进一步梳理Java语言目前被广泛应用于各个领域。然而在嵌入式实时应用领域,Java由于其固有的执行速度缺陷往往达不到应用的标准。为了解决这一问题,设计一种支持Java的处理器成为提高Java实时性的一种可靠途径。由于Java虚拟机目前采用的是基于堆栈的实现方式,因而处理器的存储体系结构会出现一些与传统RISC处理器不同的特征。描述了一种Java实时处理的取指令存取部件设计方案,很好地符合了Java特有的体系结构。
郭中元[7](2009)在《汽车计算平台中的智能驾驶技术》文中进行了进一步梳理汽车电子已经从机械时代进入了电控时代,即将进入智能时代和普世时代。目前,汽车电子技术向集中综合控制、智能化、信息化方向发展。本论文结合各个领域的先进技术,设计一套基于OSGi框架的汽车智能驾驶原型系统。其中硬件平台主要是围绕着Total5200开发平台进行搭建,并添加了CAN总线子系统和WSN无线网络子系统;基础软件平台则主要包括VxWorks操作系统、Java虚拟机及其运行环境,在搭建软件平台的同时,还对Java硬件加速策略进行了一定深度的研究,并设计了一种新型的有助于提高Java执行效率的cache结构;应用软件则是基于目前较为流行的OSGi框架——Equinox进行了模块的开发,在完成了Equinox搭建的基础上完成了及汽车控制模块、故障诊断处理模块、通信服务模块、导航服务模块、智能驾驶服务模块和主控显示模块等应用模块的开发。该系统具有安全、舒适、智能的特点。本文涉及到了包括VxWorks操作系统的软件平台、无线传感器网络、Java处理机、OSGi在汽车电子方面的应用,具有很好的前瞻性,是对未来智能汽车领域的一次探索。
程潇[8](2008)在《支持RTSJ的Java处理器的研究与设计》文中研究指明Java语言由于其独特的“一次编译,随处运行”的特点已经成为目前因特网上非常流行的编程语言。平台无关、面向对象、多线程、可靠安全这些特性使得Java在互联网领域得到广泛应用的同时,也引起了嵌入式领域研究人员的高度重视,他们希望能将Java语言改造成嵌入式及实时系统开发的主流语言来提高开发效率及增加系统安全性。然而在现实中,Java语言却很少应用于嵌入式系统,这主要是由于Java如下两方面的不足:⑴Java虚拟机的实现需要大量的硬件资源;⑵Java语言的运行时间不可预测。由于嵌入式系统一般为实时系统,而传统的Java技术对实时问题关注不够。针对传统Java技术在实时性方面的不足,Sun公司联合IBM、Microware等公司制定了实时Java规范(RTSJ),为实时Java平台的实现提供了参考,实时Java规范在内存管理、线程调度、异步事件处理、异步控制转移等多个影响实时性的方面进行了扩展,使得Java能够适用于实时系统。随着实时Java规范的推出,如何实现适用于嵌入式系统的高效实时Java平台就成为了研究热点。目前,常见的实时Java平台实现方式有解释方式、提前编译、硬件加速、硬件翻译以及Java处理器方式。同其它实现方式相比,Java处理器免除了把Java字节码转换为机器代码的工作同时还可以针对Java虚拟机特点提供特殊的硬件支持。因此具有能够直接硬件执行Java字节码、执行效率高、内存占用少、功耗低等特点,所以更适合用于资源受限的嵌入式设备。本论文设计了一种能在低成本FPGA芯片中实现的嵌入式实时Java处理器,并用软件方式实现了RTSJ中的同步机制。论文的主要创新点如下:1.使用基于堆栈的RISC模型处理器实现CISC模型的JVM2.处理器微指令无任何相关性3.提供了对防止优先级逆转的支持4.处理器具备一定的可扩展性,可以逐步添加字节码论文总体上分为五个部分,第一部分介绍了实时Java处理器的设计规范JVM和RTSJ,第二部分为Java处理器的总体设计,第三部分用软件方式实现了免等待的同步机制,第四部分为Java处理器的FPGA实现和功能仿真,第五部分为总结和展望。
傅毅[9](2007)在《基于FPGA的嵌入式系统的研究及设计》文中指出嵌入式设备在生产和消费领域的应用越来越广泛,它一般是针对某个特定领域,而且对代码执行效率、内存空间占用、功耗等方面有更严格的要求。有必要针对特定应用领域设计不同于通用处理器的硬件平台。随着嵌入式技术的不断发展,嵌入式Java技术随之出现。Java语言具有非常好的平台无关性和可移植性,它使用一种与平台无关的字节码,字节码由Java虚拟机解释执行。实时Java规范(RTSJ)通过对Java虚拟机的实时扩展可以使Java具有较好的实时性,从而应用于实时系统的开发。目前国内外在针对嵌入式实时Java处理器的研究上,重点多在提高系统整体性能而忽视了实时性。本文分析研究了当前嵌入式Java技术及FPGA技术的特点。在实验室里设计的适合低成本FPGA芯片的硬实时嵌入式Java处理器基础上,针对其算术逻辑部件进行优化设计。使它符合该JAVA CPU的实时性要求并适应CPU的进一步扩展需求。通过对FPGA互连线延迟的分析,研究了一种FPGA开关盒互连容错算法,主要针对出现错误的开关盒阵列中可执行的路径数量进行评估,通过使用算法找到合适的路径,从而避开错误,提高Java处理器算逻部件的容错性。最后,通过实验验证了基于低成本FPGA的Java处理器结构的正确性和可行性。
张德学[10](2006)在《面积优化的JavaCard处理器的设计与实现》文中认为JavaCard是新一代智能卡标准,具有广泛的应用。目前的JavaCard系统多是采用软件虚拟机的方式来实现,系统软件平台本身占用了大量的资源,执行效率不高,且不能适应有特殊要求的应用(如需要快速加解密运算)。解决这些问题的有效途径之一就是研究JavaCard处理器的硬件实现。 在深入研究了国内外Java硬件处理器设计相关技术,进一步分析了JavaCard系统资源非常有限的特点之后,提出了面积优化的JavaCard处理器AOJCP(Area-Optimized JavaCard Processor)的设计目标:低资源占用(最小芯片面积);低功耗;可选支持硬件AES加解密;设计成支持wishbone接口的IP core。 AOJCP是完全自主设计的,本文给出了为达到设计目标而做的设计决策、微码处理器的总体框架、单周期与控制-应答机制相结合的微码设计、基于指针的常数池解释模型等,给出了AOJCP的实现结果,并可选集成了自主设计的AES硬件模块AESCORE。 本文的成果和创新点如下: 1.针对JavaCard系统资源非常有限、软件实现的JavaCard虚拟机资源占用大、执行效率低、不适应特殊应用的问题,设计了一种基于微码、面积优化、低功耗的JavaCard处理器,在FPGA芯片XC2S400e中实现(JavaCard core连同外部rom,ram)的结果:占用1410个LogicCell(约合16K门)+23个4Kbit BlockRAM,最高时钟频率36.2MHz,平均功耗124mW。 2.单周期与控制-应答机制结合的微码设计 以简化主控逻辑为目的,设计的微码指令均不带后续操作数;数据编码到指令中;单周期与控制-应答机制结合:所有的微码指令均单周期执行,指令内建检测应答信号的硬件逻辑,无需专门的检测应答信号的微码指令,减少了微码指令个数;减少了译码逻辑,降低了资源占用;缩短了微码程序长度。 3.提出一种基于指针的常数池解释模型 常数池解释是JavaCard指令执行中常用操作,常数池解释中token定位是个
二、Java处理器中指令合并技术的研究与实现(论文开题报告)
(1)论文研究背景及目的
此处内容要求:
首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。
写法范例:
本文主要提出一款精简64位RISC处理器存储管理单元结构并详细分析其设计过程。在该MMU结构中,TLB采用叁个分离的TLB,TLB采用基于内容查找的相联存储器并行查找,支持粗粒度为64KB和细粒度为4KB两种页面大小,采用多级分层页表结构映射地址空间,并详细论述了四级页表转换过程,TLB结构组织等。该MMU结构将作为该处理器存储系统实现的一个重要组成部分。
(2)本文研究方法
调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。
观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。
实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。
文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。
实证研究法:依据现有的科学理论和实践的需要提出设计。
定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。
定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。
跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。
功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。
模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。
三、Java处理器中指令合并技术的研究与实现(论文提纲范文)
(1)支持数据路径动态重构的浮点处理器的研究与设计(论文提纲范文)
致谢 |
摘要 |
abstract |
第一章 绪论 |
1.1 研究背景与研究意义 |
1.2 可重构计算技术基础 |
1.3 粗粒度可重构处理器的研究现状 |
1.4 主要工作内容 |
1.5 课题来源 |
1.6 论文组织结构 |
第二章 可重构计算技术的应用需求和相关标准 |
2.1 目标应用系统 |
2.2 可重构处理器的技术标准 |
2.2.1 重构粒度 |
2.2.2 互连网络 |
2.2.3 耦合方式 |
2.2.4 编程深度 |
2.2.5 重构方式 |
第三章 动态可重构浮点处理器的研究与分析 |
3.1 可重构浮点处理器的驱动方式 |
3.2 可重构浮点处理器的互连网络 |
3.3 可重构浮点处理器的耦合方式 |
3.4 可重构浮点处理器的重构方式 |
3.5 多端口存储器的研究 |
3.6 本章小结 |
第四章 动态可重构浮点处理器的设计与实现 |
4.1 通用处理器 |
4.1.1 RISC-V的指令集和DRFP的重构指令集 |
4.1.2 流水线冲突 |
4.1.3 流水线停顿 |
4.2 指令解析单元 |
4.2.1 指令动态解析和融合适合的计算类型 |
4.2.2 指令相关性解析 |
4.3 可重构浮点单元 |
4.3.1 多总线互连网络 |
4.3.2 特殊的基础功能单元 |
4.4 存储器管理单元 |
4.4.1 多端口存储器 |
4.4.2 地址产生单元 |
4.5 寄存器文件 |
4.6 指令发射单元 |
4.7 数据网络接口 |
4.7.1 接收数据网络接口 |
4.7.2 发送数据网络接口 |
4.8 本章小结 |
第五章 编译环境和指令簇拆分 |
5.1 编译器设计 |
5.1.1 预处理 |
5.1.2 分支和子函数展开 |
5.1.3 寄存器分配和表达式拆分 |
5.1.4 生成汇编代码 |
5.1.5 二进制汇编 |
5.1.6 编程规范 |
5.2 融合指令簇拆分 |
5.3 本章小结 |
第六章 系统集成与实验评估 |
6.1 系统集成 |
6.2 编程示例 |
6.3 性能测试 |
6.3.1 DRFP与通用处理器的性能比较 |
6.3.2 DRFP与其他浮点处理器的性能比较 |
6.3.3 多核系统性能测试 |
6.4 本章小结 |
第七章 总结与展望 |
7.1 论文的主要工作和创新点 |
7.2 后续研究展望 |
参考文献 |
附录1 FFT映射的程序代码 |
附录2 雅克比算法映射的程序代码 |
附录3 MUSIC算法映射的程序代码 |
攻读硕士学位期间的学术活动及成果情况 |
(2)基于可重构的网络报文处理关键技术及快速生成方法研究(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 研究背景 |
1.1.1 应用背景 |
1.1.2 技术背景 |
1.2 可重构网络处理器设计 |
1.2.1 可重构芯片FPGA简介 |
1.2.2 可重构网络处理器定义 |
1.2.3 多核NP体系结构的应用及挑战 |
1.2.4 “Match-action”体系结构应用及挑战 |
1.3 应用开发技术简介及挑战 |
1.3.1 针对NP的应用开发 |
1.3.2 针对可重构芯片的开发 |
1.3.3 可重构“Match-action”流水线开发 |
1.4 主要研究内容及创新点 |
1.5 论文结构 |
第二章 相关研究工作 |
2.1 现有指令压缩方法 |
2.1.1 基于字典的压缩方法 |
2.1.2 基于统计的压缩方法 |
2.2 解析器设计相关研究 |
2.3 面向网络的可编程集成电路发展现状 |
2.4 面向网络的高层次综合技术发展现状 |
2.5 本章小结 |
第三章 可重构处理器内核压缩指令集定制 |
3.1 RISC-V指令集简介 |
3.1.1 指令集分类 |
3.1.2 RISC-V的优势及发展 |
3.2 压缩指令集定制方法 |
3.2.1 最小化指令集 |
3.2.2 压缩指令集重定制 |
3.2.3 交叉编译链的移植 |
3.3 实验结果及分析 |
3.3.1 静态代码压缩率 |
3.3.2 指令缓存失效率及性能 |
3.4 本章小结 |
第四章 “Match-action”流水线结构设计及优化 |
4.1 可重构“Match-action”流水线结构设计 |
4.2 主要输入输出端口设计 |
4.2.1 报文头切片端口 |
4.2.2 报文头向量端口和动作向量端口 |
4.3 “外部”功能组件设计 |
4.4 “Match-action”引擎设计与优化 |
4.4.1 “Match-action”表项的结构设计 |
4.4.2 表项依赖关系 |
4.4.3 “Match-action”引擎流水线设计 |
4.5 本章小结 |
第五章 基于流水线的协议无关(逆)解析器设计 |
5.1 解析器简介 |
5.1.1 报文头解析 |
5.1.2 报文头形态 |
5.1.3 报文封装 |
5.1.4 报文头解析过程 |
5.1.5 解析图简介 |
5.1.6 解析器设计所面临的挑战 |
5.2 解析器结构设计 |
5.2.1 解析图优化 |
5.2.2 解析器流水线结构 |
5.3 解析功能模块设计 |
5.3.1 解析处理模块硬件结构 |
5.3.2 协议类型识别器 |
5.3.3 报文头切片移位器 |
5.3.4 字段提取器 |
5.3.5 协议类型生成器 |
5.3.6 其他功能模块 |
5.4 逆解析器结构设计 |
5.4.1 逆解析器硬件结构 |
5.4.2 逆解析器单元设计 |
5.5 实验结果及其分析 |
5.5.1 移位器性能评估 |
5.5.2 解析器性能评估 |
5.6 本章小结 |
第六章 P4-VHDL的快速设计方法 |
6.1 P4 语言及程序开发简介 |
6.1.1 网络领域特定语言P4 |
6.1.2 P4 对(逆)解析器的描述 |
6.1.3 P4 对“Match-action”引擎的描述 |
6.2 转换流程 |
6.2.1 P4 程序解析 |
6.2.2 流水线规划及优化 |
6.2.3 映射及生成代码 |
6.3 模板库设计 |
6.3.1 建立模板 |
6.3.2 添加自定义模板 |
6.4 评估库设计 |
6.4.1 时序估算模型与综合结果 |
6.4.2 生成评估库 |
6.4.3 评估库的应用 |
6.4.4 评估方法 |
6.5 实验结果及分析 |
6.5.1 参数值的影响 |
6.5.2 功能模块比较 |
6.5.3 估计方法评估 |
6.5.4 应用实例评估 |
6.6 本章小结 |
第七章 结论与展望 |
7.1 本文的主要贡献 |
7.2 进一步的工作 |
致谢 |
参考文献 |
作者在学期间取得的学术成果 |
(3)嵌入式实时Java平台设计及其在图像处理中的应用(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 研究背景及意义 |
1.2 研究目标及内容 |
1.3 文章的结构安排 |
第二章 Java 技术及图像处理 |
2.1 引言 |
2.2 Java 图像处理技术 |
2.2.1 Java AWT |
2.2.2 Java 2D API |
2.2.3 Java JAI 的高级图像处理 |
2.3 Java 图像处理软件 |
2.3.1 开源图像处理分析软件—ImageJ |
2.3.2 Netvision |
2.3.3 Java 媒体框架—JMF(Java Media Framework API) |
2.4 本章小结 |
第三章 基于JPOR-32 的实时Java 平台 |
3.1 实时Java 平台简介 |
3.2 转换器 |
3.2.1 转换器的设计思想及处理流程 |
3.2.2 内存映像文件结构 |
3.3 JPOR-32 |
3.3.1 JPOR-32 体系结构及处理流程 |
3.3.2 JPOR-32 模拟器 |
3.4 本章小结 |
第四章 JPOR-32 的数组实现 |
4.1 引言 |
4.2 数组的创建形式及结构 |
4.3 实时Java 平台针对数组的改进 |
4.4 JPOR-32 上数组的实现 |
4.4.1 一维数组 |
4.4.2 多维数组 |
4.5 性能分析 |
4.6 本章小结 |
第五章 异常处理机制 |
5.1 引言 |
5.2 异常及分类 |
5.3 异常处理及处理模式 |
5.3.1 声明异常 |
5.3.2 抛出异常 |
5.3.3 捕获异常 |
5.4 异常实例与性能分析 |
5.4.1 系统抛出系统捕获 |
5.4.2 系统抛出用户捕获 |
5.4.3 用户抛出用户捕获 |
5.5 本章小结 |
第六章 面向CPS 应用的时间控制机制 |
6.1 引言 |
6.2 实时Java 平台上的改进 |
6.3 时间控制机制 |
6.4 实例研究 |
6.5 本章小结 |
第七章 图像处理应用 |
7.1 引言 |
7.2 常用图像处理算法介绍 |
7.3 实时Java 平台上图像处理应用及性能分析 |
7.3.1 图像读取应用及性能分析 |
7.3.2 图像处理应用及性能分析 |
7.4 本章小结 |
第八章 总结与展望 |
致谢 |
参考文献 |
附录1:作者在攻读硕士学位期间发表的论文 |
附录2 |
附录3 |
(4)一种Java处理器的体系结构设计与研究(论文提纲范文)
摘要 |
Abstract |
第1章 绪论 |
1.1 研究背景与意义 |
1.2 研究目标 |
1.3 本文结构安排 |
第2章 Java虚拟机简析 |
2.1 class文件规范 |
2.2 Java虚拟机规范 |
2.3 Java栈 |
2.4 Java指令综述 |
第3章 Class文件转换器 |
3.1 class文件加载 |
3.2 运行时数据布局 |
3.2.1 运行时常量池 |
3.2.2 字段操作 |
3.2.3 运行时方法区 |
3.2.4 实例展示 |
3.3 本章小结 |
第4章 JPOR体系结构设计 |
4.1 指令Cache |
4.2 指令缓存区 |
4.3 微指令ROM |
4.4 执行级与访存级 |
4.5 性能分析 |
4.5.1 复杂指令 |
4.5.2 指令执行时间 |
第5章 垃圾回收库 |
5.1 heap的分布结构 |
5.2 heap初始化 |
5.3 标记活跃对象 |
5.4 回收垃圾对象 |
5.5 整理内存碎片 |
5.6 本章小结 |
第6章 结论与展望 |
附录1: Jpor32指令集 |
附录2: Jpor32寄存器 |
附录3: 可执行文件的内容 |
参考文献 |
读硕士期间公开发表的论文 |
致谢 |
(6)一种实时Java处理器的指令存取部件设计与实现(论文提纲范文)
0 引 言 |
1 相关工作 |
2 取指令部件体系结构 |
2.1 指令Cache |
2.2 指令缓存区 |
2.3 微指令ROM |
3 性能对比分析 |
4 总 结 |
(7)汽车计算平台中的智能驾驶技术(论文提纲范文)
目录 |
摘要 |
ABSTRACT |
第一章 绪论 |
1.1 研究背景 |
1.2 本文内容及结构 |
第二章 汽车电子平台及智能驾驶系统框架 |
2.1 概述 |
2.1.1 汽车的发展 |
2.1.2 汽车产业在中国 |
2.1.3 汽车电子的分类 |
2.2 汽车计算平台 |
2.2.1 国家汽车计算平台概念的提出 |
2.2.2 国家汽车计算平台的框架 |
2.3 智能驾驶系统框架 |
2.4 本章小结 |
第三章 硬件平台搭建 |
3.1 硬件平台框架设计 |
3.1.1 框架图与主控平台 |
3.1.2 信息采集与控制系统 |
3.2 基于POWERPC的TOTAL5200平台 |
3.2.1 PowerPC简介 |
3.2.2 Total5200开发平台及核心部件 |
3.3 基于CAN总线的汽车控制子系统 |
3.3.1 CAN总线简介 |
3.3.2 CAN总线网络模型协议 |
3.3.3 SJA1000芯片与CAN节点 |
3.3.4 CAN总线汽车控制子系统设计 |
3.4 基于WSN的信息采集子系统 |
3.4.1 WSN简介 |
3.4.2 WSN信息采集子系统框图 |
3.4.3 WSN节点设计 |
3.5 本章小结 |
第四章 基础软件平台搭建 |
4.1 基础软件简介 |
4.2 VXWORKS操作系统 |
4.2.1 嵌入式操作系统 |
4.2.2 VxWorks操作系统简介 |
4.2.3 Wind内核 |
4.2.4 BSP及启动优化 |
4.3 JAVA及运行环境 |
4.3.1 Java简介 |
4.3.2 JVM与Java的平台无关性 |
4.3.3 PERC Ultra |
4.4 JAVA加速策略研究 |
4.4.1 Java的加速策略 |
4.4.2 Java处理器 |
4.4.3 一种新的指令存取部件 |
4.4.4 性能比对 |
4.5 本章小结 |
第五章 基于OSGI的模块开发 |
5.1 OSGI JAVA开发框架 |
5.1.1 OSGi介绍 |
5.1.2 OSGi中的Bundle |
5.1.3 OSGi R4规范简介 |
5.2 EQUINOX框架及程序开发 |
5.2.1 Equinox框架简介 |
5.2.2 基于Equinox的程序开发 |
5.2.3 Equinox的部署 |
5.3 应用软件架构及模块开发 |
5.3.1 应用软件架构 |
5.3.2 汽车控制模块 |
5.3.3 故障诊断处理模块 |
5.3.4 通信服务模块 |
5.3.5 导航服务模块 |
5.3.6 智能驾驶服务模块 |
5.3.7 主控显示模块 |
5.4 本章小结 |
第六章 总结与展望 |
6.1 总结 |
6.2 展望 |
参考文献 |
致谢 |
(8)支持RTSJ的Java处理器的研究与设计(论文提纲范文)
摘要 |
ABSTRACT |
第一章 引言 |
1.1 研究背景及意义 |
1.1.1 Java 语言简介 |
1.1.2 Java 用于实时开发的分析 |
1.1.3 Java 平台研究现状 |
1.2 研究内容及目标 |
1.3 论文的组织结构 |
第二章 JAVA 在嵌入式系统中应用的相关问题 |
2.1 JAVA 体系结构 |
2.2 JAVA 虚拟机 |
2.2.1 Java 虚拟机的体系结构 |
2.2.2 Java 虚拟机的运行过程 |
2.3 JAVA 虚拟机的实现方式 |
2.4 实时JAVA 规范 |
2.4.1 线程和调度 |
2.4.2 内存管理 |
2.4.3 同步 |
2.5 实时JAVA 的分析 |
2.6 本章小结 |
第三章 JAVA 处理器的设计 |
3.1 整体架构设计 |
3.2 指令系统设计 |
3.2.1 Java 字节码与使用率 |
3.2.2 指令结构 |
3.2.3 基本指令设计 |
3.2.4 复杂指令设计 |
3.3 系统寄存器设计 |
3.4 JAVA 处理器结构设计 |
3.4.1 字节码取指单元 |
3.4.2 微码取指单元 |
3.4.3 译码单元 |
3.4.4 执行单元 |
3.5 JAVA 处理器外围模块设计 |
3.5.1 扩展控制模块 |
3.5.2 I/O 模块 |
3.5.3 外部存储模块 |
3.6 指令相关性分析 |
3.7 本章小结 |
第四章 RTSJ 中同步机制的实现 |
4.1 传统JAVA 在同步中存在的问题 |
4.1.1 任务的优先级 |
4.1.2 优先级逆转 |
4.1.3 同步方法持有监视器的时间的不确定 |
4.2 RTSJ 中的同步机制 |
4.2.1 等待队列 |
4.2.2 优先级逆转 |
4.3 RTSJ 中的同步机制的实现 |
4.3.1 简单的实现 |
4.3.2 并发的实现 |
4.4 实现的理论分析 |
4.5 本章小结 |
第五章 JAVA 处理器的FPGA 实现与功能验证 |
5.1 实验环境 |
5.2 JAVA 处理器各模块的FPGA 实现与功能仿真 |
5.2.1 字节码取指单元 |
5.2.2 中断处理 |
5.2.3 微指令取指单元 |
5.2.4 译码单元 |
5.2.5 执行单元 |
5.2.6 扩展控制模块 |
5.2.7 I/O模块 |
5.2.8 外部存储模块 |
5.3 本章小结 |
第六章 总结与展望 |
6.1 论文工作总结 |
6.2 进一步需要开展的工作 |
致谢 |
参考文献 |
附录:作者在攻读硕士学位期间发表的论文 |
(9)基于FPGA的嵌入式系统的研究及设计(论文提纲范文)
摘要 |
ABSTRACT |
第一章 绪论 |
1.1 课题的研究背景 |
1.2 国内外研究发展状况 |
1.3 本文的研究内容 |
第二章 嵌入式Java 技术 |
2.1 Java 技术 |
2.2 Java 平台与Java 虚拟机 |
2.2.1 Java 平台 |
2.2.2 Java 虚拟机 |
2.3 嵌入式Java 虚拟机 |
2.3.1 实时系统 |
2.3.2 Java 实时性分析 |
2.3.3 嵌入式Java 虚拟机 |
第三章 JAVA 处理器算逻部件设计 |
3.1 实时Java 处理器总体架构 |
3.2 算术逻辑部件结构设计 |
3.2.1 算逻部件总体架构 |
3.2.2 算逻部件内部结构 |
3.3 加法器设计 |
3.3.1 加法器算法研究 |
3.3.2 动态超前进位加法器设计 |
3.4 乘法器设计 |
3.4.1 改进Booth 算法产生部分积 |
3.4.2 部分积累加及压缩算法优化 |
3.4.3 末级加法器 |
3.4.4 实验结果及性能分析 |
第四章 FPGA 互连延迟的研究 |
4.1 FPGA 的结构及设计特点 |
4.2 互连延迟 |
4.2.1 影响互连延迟的因素 |
4.2.2 互连延迟优化 |
4.3 开关盒互连容错算法研究 |
4.3.1 容错性评估 |
4.3.2 算法 |
4.3.3 结论 |
第五章 结论与展望 |
5.1 实验环境 |
5.2 实现结果比较分析 |
5.3 结论 |
5.4 将来的工作 |
致谢 |
参考文献 |
硕士期间发表的论文 |
(10)面积优化的JavaCard处理器的设计与实现(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 JavaCard概述 |
1.2 硬件实现Javacard处理器的意义 |
1.3 Java硬件处理器研究现状 |
1.4 论文主要研究内容 |
1.5 论文内容安排 |
第二章 面积优化的JavaCard处理器AOJCP的设计 |
2.1 设计决策 |
2.1.1 不支持垃圾收集与32位整型数 |
2.1.2 不增加新指令 |
2.1.3 采用wishbone接口 |
2.1.4 基于微码处理器设计 |
2.1.5 优先使用微码完成硬件功能 |
2.1.6 支持但暂不实现异常处理 |
2.1.7 基于FPGA的低功耗设计 |
2.2 微码处理器设计 |
2.2.1 设计考虑 |
2.2.2 AOJCP的总体结构 |
2.2.3 微码指令集设计 |
2.2.4 微码执行过程 |
2.2.5 两级流水线 |
2.2.6 主控逻辑 |
2.2.7 Java指令执行过程 |
2.3 乘法、除法和取模运算 |
2.4 小结 |
第三章 基于指针的常数池解释模型 |
3.1 JavaCard应用开发流程 |
3.2 常数池解释 |
3.3 基于token的常数池解释模型 |
3.4 基于指针的常数池解释模型 |
3.4.1 类结构 |
3.4.2 对象实例结构 |
3.4.3 方法结构 |
3.4.4 数组结构 |
3.4.5 内存布局模型 |
3.4.6 Frame结构 |
3.4.7 系统寄存器 |
3.4.8 方法调用过程解释 |
3.5 小结 |
第四章 AOJCP的实现结果 |
4.1 性能分析 |
4.2 测试 |
4.2.1 外围接口和模块 |
4.2.2 测试平台框架 |
4.2.3 测试程序1-冒泡排序 |
4.2.4 测试程序2-创建类实例、调用方法、读写域 |
4.3 实现结果 |
4.3.1 实现的指标 |
4.3.2 占用的资源 |
4.3.3 功耗 |
4.4 与JOP比较 |
4.5 小结 |
第五章 AES硬件模块AESCORE的设计与FPGA实现 |
5.1 AES算法 |
5.2 面向低端应用的AES算法的硬件实现现状 |
5.3 AES算法基本操作简介 |
5.4 AES算法的FPGA实现 |
5.4.1 基本数学运算的硬件实现 |
5.4.2 总体框图 |
5.4.3 字节置换操作的实现 |
5.4.4 列混操作的实现 |
5.4.5 密钥扩展的实现 |
5.4.6 密钥存储的实现 |
5.4.7 主控状态机的实现 |
5.5 实现结果 |
5.6 小结 |
第六章 AOJCP中扩展AESCORE |
6.1 硬件支持 |
6.2 JavaCard指令支持 |
6.3 微码支持 |
6.4 测试 |
6.5 性能与资源占用 |
6.6 小结 |
第七章 总结与展望 |
7.1 主要工作 |
7.2 主要成果和创新点 |
7.2.1 完全自主知识产权的JavaCard处理器设计 |
7.2.2 资源占用最少、低功耗的JavaCard硬件实现 |
7.2.3 单周期与控制-应答机制结合的微码设计 |
7.2.4 提出一种基于指针的常数池解释模型 |
7.2.5 自主设计的AES加解密模块 |
7.2.6 可选支持AES硬件加解密 |
7.2.7 AOJCP设计的其他特点 |
7.3 应用展望 |
7.4 进一步研究的方向 |
参考文献 |
附录 |
A AOJCP文件清单 |
B 定点除法与取模运算的软件实现算法c程序 |
博士期间论文与科研工作 |
致谢 |
四、Java处理器中指令合并技术的研究与实现(论文参考文献)
- [1]支持数据路径动态重构的浮点处理器的研究与设计[D]. 聂言硕. 合肥工业大学, 2021(02)
- [2]基于可重构的网络报文处理关键技术及快速生成方法研究[D]. 曹壮. 国防科技大学, 2020(02)
- [3]嵌入式实时Java平台设计及其在图像处理中的应用[D]. 高振华. 江南大学, 2012(08)
- [4]一种Java处理器的体系结构设计与研究[D]. 叶新栋. 复旦大学, 2011(01)
- [5]一种Java处理器的体系结构设计与研究[J]. 叶新栋,柴志雷,涂时亮. 小型微型计算机系统, 2011(03)
- [6]一种实时Java处理器的指令存取部件设计与实现[J]. 郭中元,叶新栋. 计算机应用与软件, 2009(12)
- [7]汽车计算平台中的智能驾驶技术[D]. 郭中元. 复旦大学, 2009(S1)
- [8]支持RTSJ的Java处理器的研究与设计[D]. 程潇. 江南大学, 2008(03)
- [9]基于FPGA的嵌入式系统的研究及设计[D]. 傅毅. 江南大学, 2007(03)
- [10]面积优化的JavaCard处理器的设计与实现[D]. 张德学. 中国科学技术大学, 2006(04)