一、时序电路状态测试与精简方法研究(论文文献综述)
刘先强[1](2021)在《基于RISC-V的五级流水线处理器的设计与研究》文中进行了进一步梳理从超低功耗微控制器到大数据高性能计算,再到人工智能的异构计算,CPU均扮演着核心角色。不同的应用场景对CPU性能的要求各不相同,目前基于x86处理器架构的指令集复杂,投入成本高以及研发难度大等原因,使得其在嵌入式领域逐渐不在具有优势。而基于ARM指令集架构的处理器,虽然占据嵌入式处理器很大市场份额,但是其并非国产微处理器核心,授权受制于国外公司,在国产替代的战略要求下亟需用国产微处理器进行替代。公开指令集的RISC-V微处理器正是由于其低功耗、低研发难度、自主研发等优势,已逐渐得到嵌入式微处理器开发的认可和重视。本文设计主要通过对RISC-V指令集架构、E203处理器以及HBird-E200-SoC的研究,提出了基于RISC-V架构的五级流水处理器内核设计。在完成处理器内核设计的基础上,以Freedom-E310 SoC为参考,对于UART、SPI、GPIO、和I2C等外设模块充分利用和修改已有的IP,完成基于RISC-V的五级流水线处理器的SoC搭建;最后搭建仿真测试平台,对设计的处理器内核以及外设模块进行仿真测试,并将构建的SoC用FPGA进行了原型验证。首先针对处理器核的流水线设计,采用了经典的5级流水线架构,为了提高流水线的利用率,解决流水线产生的数据冒险问题以及访存操作所产生的暂停而造成性能降低。在“取指”单元设计中,指令寄存器采用了指令耦合寄存器设计,保证了“快速”取指,同时采用分支预测设计,有效避免了条件跳转指令造成的流水线冲刷而带来的性能丢失;“执行”单元针对流水线存在的WAW和RAW两种数据相关性而设计了旁路电路模块;“访存”单元设计增加访存控制信号,判断是否需要暂停,从而提高硬件模块的利用率和吞吐率。仿真测试平台首先对处理器核进行了仿真测试,根据指令集架构中的各指令编写汇编测试程序,对处理器核进行功能测试;然后对SoC中各外设模块进行了仿真,根据不同外设的功能和时序特点编写不同的测试代码,完成对各外设模块的仿真和测试,以确保其功能的完整;最后基于Xilinx ARTY A7 FPGA开发板,将设计的SoC用Vivado工具进行原型验证。
魏忠军[2](2021)在《RISC-V精简指令架构的研究及基于RV32I指令集的处理器内核设计》文中认为目前,通用处理器架构主要以X86架构和ARM架构为主,X86架构的处理器具有超高的时钟主频、强大的计算能力,广泛用于服务器和个人电脑,而ARM架构处理器兼顾高主频外还考虑低功耗性能,其产品主要应用于手机终端和嵌入式设备。近年来,人工智能、物联网、边缘计算等技术开始显现出巨大的应用前景,但对处理器的低成本、低功耗、定制化等方面提出了更高的要求。相比较前两种架构,RISC-V架构的指令集更加精简,指令集模块化且开源,这些优势特别是开源带来的低成本优势,能够极大地满足这些需求。RISC-V架构的出现受到许多初创公司的追捧,但也存在不足。首先,RISC-V已经有许多商业应用,但由于知识产权问题,目前,大部分开发依然被严格保密。其次,大部分商用项目不允许在其成果上进行修改和扩展,例如增加流水线级数和采用多核技术。基于上述原因,本文基于RISC-V RV32I指令集设计出了32位顺序执行的单周期处理器和五级流水线处理器。本文具体研究内容包括:(1)研究RV32I指令集和处理器微架构相关理论知识,设计了带8K字节紧耦合存储器的单周期处理器;(2)在单周期处理器设计基础上,研究流水线技术,设计了五级流水线处理器;(3)为该处理器设计了总线接口和定义一种新的接口协议,实现了处理器内核访问外设和外设访问处理器的紧耦合存储器的功能。整个设计采用Verilog行为级建模、RTL级描述,最后在Xilinx AX7A035开发板上完成FPGA原型验证。验证结果表明,设计的单周期处理器能够支持RV32I指令集的28条基本指令,其时钟频率为25MHz,单周期处理器内核功耗为1m W,包含紧耦合存储器和总线接口的单周期处理器功耗为2m W,共占用LUT单元819个,寄存器1024个,多路选择器228个。
白博[3](2021)在《基于高层次设计的MCU的研究》文中研究说明在数字电路中,控制设备是整个设计的一个重要的环节。在现代化的设计中,一般都会选择采用微控制器(MCU)作为控制模块,并且也占有很大的市场分额。但目前国产的MCU竞争力稍显不足,对于MCU的深入研究也显得十分必要。本文主要内容为基于高层次设计的MCU的研究,使用更加抽象的硬件描述语言(CHISEL)与各种EDA工具的相互协同完成工作。目前,大部分的MCU都选用Cortex系列的芯片实现控制功能。但是,随着全球的需求量不断增加,许多企业都纷纷投入设计制造后,ARM等闭源处理器架构的弊端也在近几年显现出来了。一方面,其授权费用极高,一般的企业难以承担;另一方面,主动权始终掌握在别人手中,自身的发展很容易受到限制。本文的处理器核采用的是一款近几年兴起的指令集架构:RISC-V。这款指令集架构有着开源的特性,并且架构设计简洁,适合开发与研究使用。在研究的过程中,首先对RISC-V架构以及CHISEL硬件设计语言进行了分析,同时搭建了适用于RISC-V架构的编译平台以及适用于CHISEL硬件描述语言的编译平台。然后从RISC-V官网选取了基于Verilog描述的处理器核,分析内部工作原理后采用CHISEL实现对应的功能。在设计的过程中进行逻辑优化,并且进行功能仿真测试。除此之外,采用55nm工艺库进行逻辑综合,实现CHISEL设计与原版设计的对比。并且将代码移植至Zedboard平台进行了FPGA的测试与对比。最后,对RISC-V的自定义指令进行了研究,添加了单周期乘法累加指令,并且配置对应的编译工具与硬件设计,对自定义指令进行了测试。通过本文的研究工作,完成了基于CHISEL语言的MCU的设计,并且完成了各项指令测试以及外设的功能测试,实现了MCU的软核设计。在55nm工艺库的综合测试中,综合面积基本相同,CHISEL设计下的内核工作频率更高,性能相较于原版设计有较大提升。在Zedboard的测试中,设置相同频率,CHISEL设计比原版设计占用的资源更少。在最终的自定义指令研究中,采用内联汇编的方式生成指令测试程序,并且成功通过测试,验证了自定义指令的功能的正确性。
刘攀[4](2021)在《基于AMBA总线的低功耗MCU设计》文中研究指明二十一世纪以来,随着集成电路的迅速发展以及其代工厂工艺节点的不断缩小,我们的工作和生活早已与集成电路密不可分。5G、自动驾驶、工业控制、物联网等新兴产业更是依赖于集成电路,而其中微控制单元(MCU)则是必不可少的核心模块之一。目前绝大多数MCU产品都是基于ARM公司提供的CPU针对不同的应用场景进行设计,最为普遍的是八位和十六位的MCU,能够基本满足中低端的市场需求,但是在未来,高效、低功耗的三十二位MCU一定会成为市场的主流。本文基于高性能以及低功耗的需求,选取了ARM公司的Cortex-M0作为CPU,基于AMBA总线协议,结合FPGA上板调试完成了一款32位MCU芯片的设计、流片以及验证。本文遵循由上到下的设计原则,首先分析了Cortex-M0核内部结构以及AMBA总线协议,为后续MCU架构的设计以及各个模块的设计提供了理论基础。接着阐述了数字IC功耗的来源以及低功耗的具体实施方法,为各个模块的低功耗设计提供理论基础。本文基于MCU系统功能定义以及模块的划分,完成了MCU架构设计,并对各个子模块进行Verilog硬件语言的编写及仿真,在此过程中基于功耗优化理论经行了低功耗设计。在完成各个模块的设计之后编写顶层例化,至此完成源码的设计阶段。之后结合Keil开发工具和FPGA实现软硬件的联合仿真,极大增强了设计的可靠性。本文设计了两版MCU,第一版在完成了源码编写以及仿真之后,基于CMOS180nm工艺,继续完成了DC综合、INNOVUS布局布线、后仿真以及版图的输出。设计PCB以及测试平台的搭建完成芯片测试。3.3V给IO供电,1.8V给内核供电情况下,工作电流在0.01A左右,时钟频率最高能跑到50MHz,逻辑输出基本符合预期。第二版在第一版的基础之上,改进了MCU架构以及增加了核心的中断服务模块,极大地降低了功耗,增强了MCU的实用性。基于CMOS 65nm工艺,继续完成了DC综合、INNOVUS布局布线、后仿真以及FPGA验证。应用软硬件结合方式并结合FPGA对MCU进行了验证,时钟频率最高能跑到80MHz,在给予不同的外部中断时,MCU能正确响应中断并在指定从设备将结果正确输出,与仿真结果一致,符合设计预期。
刘和娜[5](2020)在《多模式动态可切换低功耗处理器设计》文中提出处理器作为计算机的核心部件,广泛运用于物联网、便携式设备、人工智能等领域。由于物联网终端节点不宜更换电源,故对低功耗要求较高。随着物联网的发展,数据处理及传输阶段包含大量复杂运算,该阶段处理器需要具备足够高的性能。因此,低功耗的数据采集和高性能的数据处理及传输是保证物联网应用正常工作的关键。本文针对物联网应用中不同的应用场景,基于RV32IM指令集,提出了一种多模式动态可切换低功耗处理器设计方案。首先,为了分析处理器的功耗特性,需要对构成处理器的不同单元进行功耗测试。本文设计了 RISC-V五级流水处理器架构,并对其进行功耗测试,其中流水寄存器、通用寄存器、乘法运算单元、除法运算单元的功耗较高,为总功耗的83.7%;其次,针对处理器中部分模块功耗占比较大的现象,提出了模式切换的概念,在不同工作模式下动态地控制模块的电源开关以降低功耗。使用System Verilog语言实现多模式动态可切换低功耗处理器的硬件电路结构设计;最后,采用power gating技术进行低功耗设计,该过程中使用UPF对电源连接进行描述。处理器的工作模式切换采用的是软硬件协同的方式。最终实现了一种包含高性能模式、低速模式、低功耗模式以及超低功耗模式的处理器。本文以DMIPS程序作为测试基准,在1MHz的工作频率下,采用TSMC 40nm工艺,对多模式动态可切换低功耗处理器进行低功耗功能仿真、逻辑综合及功耗分析。结果表明,相较于五级流水处理器,多模式动态可切换低功耗处理器的硬件资源增加了 7.12%,高性能模式下处理器的功耗仅增长了 9.0%,低速模式、低功耗模式、超低功耗模式下处理器的功耗分别降低了 32.3%、70.2%、77.9%。多模式动态可切换低功耗处理器以较小的硬件开销换得了显着的功耗优化。
黎余亮[6](2020)在《数字电路功能建模及控制通路的验证方法研究》文中认为随着集成电路工艺技术的迅速发展,集成电路的设计规模与日俱增,设计的功能复杂度随设计规模呈指数增长,功能验证的时间占整个设计周期的50%~80%,显然功能验证已经成为大规模芯片设计的一个瓶颈。本文对集成电路功能验证工作展开研究。我们采用一种基于功能规范的半形式化验证方法,其将模拟验证方法与形式化验证方法结合,通过采用形式化模型来描述设计功能点并遍历功能模型生成测试激励来进行模拟验证,该方法克服了模拟验证完备性差与形式化验证适用性差的问题。本文的研究工作以及创新点主要有以下几个方面:1、提出基于实体状态转移的功能点模型。该模型基于功能规范对电路功能行为及内部结构进行描述,只关注功能相关的设计行为,隐藏设计细节;同时该模型还对电路内部功能行为和硬件资源进行统一建模,从而保证功能模型的完备性。2、探索基于功能点模型的控制通路功能验证方法。该方法通过遍历控制敏感型阶段转移关系中控制通路类端口的全部合法值域,并采用数据敏感型阶段转移关系测试空间的特定边界情况的全覆盖加上一定规模的随机覆盖,用以生成高质量的测试激励,提高测试空间覆盖率。3、完成基于功能点模型的自动化验证平台的搭建。该平台可实现功能点模型的高效建模、测试激励的自动生成等验证工作,从而提高验证效率。为了检验功能点模型的有效性,本文对控制通路密集型DMA电路进行了实例验证。实验表明采用我们提出的基于功能点模型的半形式化验证方法以及实现的自动化验证平台,相比于传统的人工验证方法能够大大缩短验证周期,提高验证效率。
祝倩[7](2020)在《基于龙芯LS132软核处理器的SoC设计与实现》文中研究指明随着我国航天工程领域任务的日趋复杂化、多样化,业界对航天器的控制中枢——处理器系统的性能要求日益增加,相关研究日益加深。针对进一步降低航天器中的处理器系统的成本,提升系统稳定性,加快运行速度等基本要求,本课题以龙芯LS132处理器软核为核心单元,设计了包含软硬件在内的片上系统So C。本课题的主体内容展开如下:首先,基于完备的资料调研与总结,对So C、FPGA、CPU、片上总线与MIPS32指令集等相关特征进行了论述。在此基础上,开展了LS132处理器核源码仿真实验,从而验证了该处理器核的正确性与功能完整性。其次,归纳了本课题中So C系统的硬件架构的设计以及软件部分的设计流程。在硬件平台设计方面,除对总线模块的设计进行说明并仿真验证之外,实现了系统的程序存储器——Nor Flash控制器的设计与优化。从算法创新的角度,提出了使用解锁省略与写入缓冲器编程算法协同优化的方式提升控制器读写速率,并且通过仿真结果证明本优化设计算法比标准编程算法速度提升约3.5倍,比硬件解锁单字编程算法速度提升约2倍。在So C系统的软件设计部分,包含搭建GCC交叉编译环境,编译启动代码PMON以及设计相关应用文件等内容。最后,基于本课题所设计的So C系统功能进行了一系列的测试实验,主要包括启动代码PMON的编译结果验证,以及所设计的应用文件的平台验证,验证结果表明该片上系统So C的功能完全正确。随后,对So C系统的资源占用情况与系统性能进行了表征与评估,结果表示该So C系统可稳定运行在43MHz的时钟频率下,符合设计要求。从应用创新的角度,本课题基于设计的硬件平台对Vx Works的板级支持包BSP进行了设计与开发,实现了Vx Works操作系统在LS132软核处理器平台上的正确移植。本课题工作为实现航天领域国产芯片自主可控奠定了良好基础,同时为我国航天领域中处理器系统的设计提供了新的思路,具有显着的工程现实意义。
牛云鹏[8](2020)在《可重构多核系统软硬件协同验证技术研究》文中进行了进一步梳理随着集成电路工业设计技术和半导体制造技术的进步,计算机的处理器已经由最初的单核单线程过渡到多核多线程,同时为了满足诸如机器学习训练和图像处理等特定场景需求,集成专用IP可重构多核系统开始出现。可重构多核系统是多核处理器的可配置性功能延展,其极高的硬件设计和功能复杂度加大了系统验证难度和成本投入。针对这类问题,如何取得一种高效且通用的解决方案以覆盖全系统验证需求,成为学术界的关注热点。本文基于软件控制、硬件协同加速的思想设计并实现了一套面向可重构多核系统的软硬件协同的多线程仿真加速平台,在满足验证需求前提下构建出与硬件侧配套的软件系统框架。主要工作如下:首先平台采用分层设计和任务执行驱动策略,整合了硬件目标系统的多精度模型作为控制层负责任务配置下发、源数据生成、输出校验和误差分析。下游硬件原型作为计算型仿真任务的可重构硬件加速节点,根据模拟器控制层配置规则执行子任务并发,其输出通过SCE-MI流接口回传上游模拟器,由模拟器内部的输出校验和时序探针模块对硬件原型工作状态进行实时监控和对外反馈。其次,论文结合目标硬件系统任务并发优势,软件侧适配硬件侧PCIe接口驱动,系统模拟器设计多线程编程接口以支持任务并发编程。软件模拟器在全系统仿真时承担的数据计算将被并下发至多核系统加速执行。为了简化目标系统工作线程管理,模拟器内部采用了线程池模式的任务监控策略。接下来,本文为加快任务预处理速度,在系统混合精度模拟器基础上设计编译优化层,根据系统二级编程架构的硬件指令集规范,利用编译预处理以及热点代码本地化映射,对系统任务程序进行编译和执行优化。平台组件设计根据目标系统片上网络通信细节以及运算簇架构特点,以接口封装对路由节点和运算簇通信接口重新进行归一化设计,使系统组件对外呈现统一的编程规范,提高了扩展性和移植性。最后,本文对设计平台进行软硬件联调,评估多种算法运算场景下的仿真速度和精度和系统任务并发性能。
蔡志荣[9](2020)在《基于PyHCL的RISC-V架构处理器的研究与实现》文中认为处理器作为信息的核心载体,在人们的工作、学习和生活中扮演着重要的角色。随着处理器使用场景的多样化和复杂化,处理器的设计复杂性日益提高。直接采用以Verilog HDL为代表的传统硬件设计和UVM验证方式,其设计代码密度低,验证方法复杂,对开发人员的编程能力和设计经验要求较高,这些因素制约着半导体数字设计快速前进的步伐,基于面向对象的敏捷设计方法正逐渐成为数字芯片设计的主流和趋势。本文致力于研究基于Python的PyHCL硬件构造语言并借助其面向对象的高级语言特性,完成RISC-V架构五级流水线处理器以及BIU总线的快速开发,并提出一种基于Python的验证框架,完成处理器的仿真与验证测试。整个设计流程打破了高级语言与底层硬件之间的界限,实现从处理器的敏捷设计到仿真验证的“Python”统一,最终部署到FPGA中能够正确运行。本文具体研究内容如下:(1)研究RISC-V开源指令集架构中的RV32I精简指令集,对指令进行功能介绍,对指令编码格式和指令特点进行详细分析,总结指令简洁高效的原因。(2)对基于Python构建的PyHCL硬件构造语言进行介绍,分析采用敏捷设计方法以及PyHCL编程语言在硬件系统设计中的可行性和优势,结合案例说明PyHCL的具体用法和特点。(3)基于PyHCL编程语言,采用RV32I指令集设计RISC-V架构的五级流水线处理器,研究并设计BIU总线系统,完善处理器的功能实现。(4)提出一种基于Python的验证框架,借助riscv-tests开源工具生成大规模测试指令,采用Cocotb编写Python测试文件,调用Verilator仿真器完成处理器的仿真与验证测试,整合Vivado软件对Verilog代码进行综合与实现,并在Nexys4开发板的Artix-7FPGA平台上对其进行原型验证。本文采用敏捷设计方法学,以PyHCL编程语言替代传统HDL的编程方式进行RISC-V处理器的设计,有效降低了处理器的设计门槛。采用基于Python的验证框架完成处理器的验证,实现了处理器从设计到验证流程Python全栈开发的创新。此外,该设计方案为加速现代处理器设计进程提供了新思路。
周强[10](2020)在《基于RISC-V指令集架构的微控制器的设计与实现》文中进行了进一步梳理在即将到来的智能互联时代,“万物互联”的理念给微控制器的应用带来了宽广的想象空间,但同时也给微控制器的设计和研发带来了新的难题:一方面,物联网时代对芯片的数据计算、处理和传输能力的要求越来越高;另一方面,复杂而多样的应用场景又给芯片带来了低功耗、低成本的要求。目前市场上基于主流指令集进行研发的微控制器由于难度大,投入成本高,开发时间长等原因,在面对新形势下的市场环境已经显得力不从心。而第五代精简指令集架构以其开源免费、开发难度低和综合性能强的特点,为物联网时代微控制器的研发注入了全新的思路和力量。本文所实现的微控制器采用了基于第五代精简指令集架构的内核,在对各模块进行实现的过程中充分利用和修改已有IP核,并强调软件平台和硬件平台的配合设计。AXI总线和APB总线则分别作为微控制器的高速总线和低速总线,分别挂载系统的高速模块和低速模块,使系统内各个速度不同的模块能够互联互通,起到串联整个系统的作用,并最终实现MCU系统的一体化。在完成了系统的架构设计之后,本设计又搭建了测试平台,对微控制器进行了测试与验证。首先验证了中央处理器的功能正确性,包括RISC-V基本指令的测试和运行高级语言程序的测试;其次是对各个外设模块的测试,根据每个模块的功能和时序特点编写了不同的测试程序,对微控制器中的SPI控制器、GPIO控制器等模块进行了仿真与测试,以确保各模块本身功能的正确性以及模块之间交互的正确性。最后,在完成所有设计和验证工作后,本文基于SMIC 130纳米制造工艺对微控制器进行了逻辑综合,并根据综合得到的网表文件对微控制器进行了物理设计,包括布局规划、标准单元的摆放、时钟树综合以及布线等步骤,最终得到了微控制器的版图并成功流片,为基于RISC-V指令集的微控制器系统设计与实现提供了良好的思路和现实的借鉴意义。
二、时序电路状态测试与精简方法研究(论文开题报告)
(1)论文研究背景及目的
此处内容要求:
首先简单简介论文所研究问题的基本概念和背景,再而简单明了地指出论文所要研究解决的具体问题,并提出你的论文准备的观点或解决方法。
写法范例:
本文主要提出一款精简64位RISC处理器存储管理单元结构并详细分析其设计过程。在该MMU结构中,TLB采用叁个分离的TLB,TLB采用基于内容查找的相联存储器并行查找,支持粗粒度为64KB和细粒度为4KB两种页面大小,采用多级分层页表结构映射地址空间,并详细论述了四级页表转换过程,TLB结构组织等。该MMU结构将作为该处理器存储系统实现的一个重要组成部分。
(2)本文研究方法
调查法:该方法是有目的、有系统的搜集有关研究对象的具体信息。
观察法:用自己的感官和辅助工具直接观察研究对象从而得到有关信息。
实验法:通过主支变革、控制研究对象来发现与确认事物间的因果关系。
文献研究法:通过调查文献来获得资料,从而全面的、正确的了解掌握研究方法。
实证研究法:依据现有的科学理论和实践的需要提出设计。
定性分析法:对研究对象进行“质”的方面的研究,这个方法需要计算的数据较少。
定量分析法:通过具体的数字,使人们对研究对象的认识进一步精确化。
跨学科研究法:运用多学科的理论、方法和成果从整体上对某一课题进行研究。
功能分析法:这是社会科学用来分析社会现象的一种方法,从某一功能出发研究多个方面的影响。
模拟法:通过创设一个与原型相似的模型来间接研究原型某种特性的一种形容方法。
三、时序电路状态测试与精简方法研究(论文提纲范文)
(1)基于RISC-V的五级流水线处理器的设计与研究(论文提纲范文)
摘要 |
ABSTRACT |
第1章 绪论 |
1.1 课题背景 |
1.2 国内外研究现状 |
1.3 本文的主要内容与结构安排 |
第2章 RISC-V处理器相关研究 |
2.1 指令集架构概述 |
2.1.1 处理器设计技术的概述 |
2.1.2 CISC与RISC指令集 |
2.1.3 RISC-V指令集 |
2.2 RISC-V内核简介 |
2.2.1 流水线架构 |
2.2.2 分支预测 |
2.2.3 流水线中的冒险 |
2.3 总线协议概述 |
2.3.1 AXI与AHB总线协议 |
2.3.2 ICB总线协议 |
第3章 RISC-V处理器核5级流水线的研究与设计 |
3.1 总体设计思路 |
3.1.1 五级流水线的冒险处理 |
3.2 流水线设计 |
3.2.1 取指 |
3.2.2 译码 |
3.2.3 执行 |
3.2.4 写回 |
3.2.5 访存以及存储系统 |
3.3 异常处理机制 |
3.4 硬件实现 |
第4章 基于RISC-V的SoC设计与实现 |
4.1 五级流水线SoC设计概述 |
4.2 UART |
4.2.1 UART通信协议 |
4.2.2 UART模块的设计和实现 |
4.3 SPI |
4.3.1 SPI通信协议 |
4.3.2 SPI模块的设计和实现 |
4.4 I~2C |
4.4.1 I~2C总线协议 |
4.4.2 I~2C模块的设计和实现 |
4.5 GPIO |
第5章 基于RISC-V的SoC平台验证 |
5.1 仿真以及编译平台搭建 |
5.2 CPU仿真测试 |
5.3 UART的仿真与测试 |
5.4 GPIO仿真与测试 |
5.5 QSPI仿真与测试 |
5.6 I~2C仿真与测试 |
5.7 基于五级流水处理器SoC的FPGA原型验证 |
5.7.1 建立项目工程 |
5.7.2 搭建完整的FPGA原型平台 |
第6章 结论与展望 |
6.1 结论 |
6.2 展望 |
参考文献 |
致谢 |
学位论文评阅及答辩情况表 |
(2)RISC-V精简指令架构的研究及基于RV32I指令集的处理器内核设计(论文提纲范文)
摘要 |
abstract |
第一章 绪论 |
1.1 研究工作的背景和意义 |
1.2 RISC-V指令架构国内外研究现状 |
1.2.1 国外研究现状 |
1.2.2 国内研究现状 |
1.3 本文研究内容与结构安排 |
1.4 本文的研究目的和目标 |
第二章 处理器设计的基本原理 |
2.1 指令集架构 |
2.1.1 RISC-V指令集指令格式 |
2.1.2 RV32I六种类型指令及特点 |
2.2 处理器微架构 |
2.2.1 单周期结构处理器 |
2.2.2 流水线结构的处理器 |
2.2.3 状态机结构的处理器 |
2.2.4 存储器结构 |
2.3 处理器验证 |
2.3.1 处理器的验证方法 |
2.3.2 C代码的编译 |
2.4 本章小结 |
第三章 处理器设计 |
3.1 单周期处理器内核的设计 |
3.1.1 单周期处理器内核的功能描述和模块划分 |
3.1.2 单周期处理器内核取指模块的设计 |
3.1.3 单周期处理器内核译码模块的设计 |
3.1.4 单周期处理器内核执行模块的设计 |
3.1.5 单周期处理器内核访存模块的设计 |
3.1.6 单周期处理器内核写回模块的设计 |
3.1.7 单周期处理器内核的整体结构 |
3.2 紧耦合存储器ITCM和 DTCM的设计 |
3.3 RISC-V处理器总线接口的设计 |
3.3.1 总线接口的功能描述 |
3.3.2 总线接口的数据通路 |
3.3.3 总线接口的逻辑综合 |
3.3.4 总线接口协议 |
3.4 测试平台的设计 |
3.4.1 测试平台的功能描述 |
3.4.2 测试平台的架构设计 |
3.4.3 只读存储器ROM模块的设计 |
3.4.4 数据串行发送模块的设计 |
3.4.5 测试平台的驱动模块Instr Data_load的设计 |
3.4.6 其它辅助模块 |
3.5 五级流水线处理器的设计 |
3.5.1 五级流水线处理器的功能描述和整体设计 |
3.5.2 五级流水线处理器取指模块的设计 |
3.5.3 五级流水线译码模块的设计 |
3.5.4 五级流水线执行模块的设计 |
3.5.5 五级流水线访存模块的设计 |
3.5.6 五级流水线写回模块的设计 |
3.5.7 五级流水线处理器的整体结构 |
3.6 本章小结 |
第四章 处理器的FPGA验证 |
4.1 功能验证 |
4.1.1 处理器内核Core基本模块的功能验证 |
4.1.2 自带紧耦合存储器的CPU的功能验证 |
4.1.3 测试平台主要模块的功能仿真 |
4.1.4 测试平台与处理器CPU的联合功能仿真 |
4.2 验证程序的编译 |
4.2.1 RISC-V C代码的编译步骤 |
4.2.2 coe文件的生成 |
4.3 FPGA原型验证 |
4.3.1 验证流程 |
4.3.2 性能分析 |
4.3.3 验证结果 |
4.4 本章小结 |
第五章 总结及展望 |
5.1 工作总结 |
5.2 未来展望 |
致谢 |
参考文献 |
附件一:符号对照表 |
附件二:RV32I指令集28 条指令 |
(3)基于高层次设计的MCU的研究(论文提纲范文)
摘要 |
abstract |
第一章 绪论 |
1.1 选题背景及意义 |
1.2 国内外发展现状 |
1.3 论文研究内容与结构安排 |
第二章 RISC-V与 CHISEL |
2.1 RISC-V简介 |
2.1.1 RISC-V指令集 |
2.1.2 RISC-V寄存器设计 |
2.1.3 RISC-V工具链 |
2.2 CHISEL与相关工具 |
2.2.1 CHISEL硬件语言 |
2.2.2 FIRRTL转化工具 |
2.2.3 SBT工作平台 |
2.3 本章小结 |
第三章 开源处理器分析以及CHISEL设计实现 |
3.1 处理器整体结构 |
3.2 处理器核的流水线分析与CHISEL实现 |
3.2.1 取指 |
3.2.2 译码 |
3.2.3 执行 |
3.3 其余设计实现 |
3.3.1 总线通信 |
3.3.2 调试模块 |
3.3.3 外部设备 |
3.4 设计改进 |
3.5 本章小结 |
第四章 测试与设计对比 |
4.1 测试流程分析 |
4.2 仿真验证 |
4.2.1 内核仿真测试 |
4.2.2 其余模块仿真测试 |
4.3 逻辑综合与形式验证 |
4.3.1 设计约束 |
4.3.2 逻辑综合结果 |
4.3.3 形式验证结果 |
4.4 FPGA测试 |
4.5 设计对比 |
4.5.1 代码对比 |
4.5.2 硬件设计对比 |
4.6 本章小结 |
第五章 RISC-V自定义指令的测试 |
5.1 自定义指令设计 |
5.2 编译测试 |
5.3 硬件模块设计 |
5.4 硬件测试 |
5.5 本章小结 |
第六章 总结与展望 |
6.1 工作总结 |
6.2 论文创新 |
6.3 后续工作安排 |
致谢 |
参考文献 |
(4)基于AMBA总线的低功耗MCU设计(论文提纲范文)
摘要 |
abstract |
第一章 绪论 |
1.1 引言 |
1.2 课题的研究背景 |
1.3 国内外研究现状 |
1.4 论文的主体内容 |
1.5 论文的组织结构 |
第二章 Cortex-M0 结构及芯片设计流程简介 |
2.1 Cortex-M0 CPU简介 |
2.1.1 Cortex-M0 处理器寄存器组 |
2.1.2 Cortex-M0 存储器空间映射 |
2.1.3 Cortex-M0 异常及处理 |
2.1.4 Cortex-M0 向量表及异常类型 |
2.2 AMBA总线协议简介 |
2.2.1 AHB-Lite及 APB-Lite总线信号概述 |
2.2.2 AHB-Lite及 APB-Lite总线结构 |
2.2.3 AHB-Lite及 APB-Lite总线时序 |
2.3 芯片设计流程 |
2.4 本章小结 |
第三章 数字低功耗实现 |
3.1 数字电路功耗来源 |
3.2 降低数字功耗的方法 |
3.2.1 系统与架构级低功耗设计 |
3.2.2 RTL级低功耗设计 |
3.2.3 门级电路低功耗设计 |
3.2.4 物理级低功耗设计 |
3.3 Cortex-M0 低功耗特性 |
3.3.1 低功耗要求 |
3.3.2 Cortex-M0 低功耗特性 |
3.3.3 Cortex-M0 休眠模式及中断唤醒 |
3.4 本章小结 |
第四章 MCU架构、模块设计及仿真 |
4.1 MCU整体架构设计 |
4.2 MCU模块设计 |
4.2.1 总线及SRAM设计 |
4.2.2 GPIO设计 |
4.2.3 Water-light设计 |
4.2.4 中断设计 |
4.2.5 AHB-to-APB桥设计 |
4.3 关键模块仿真 |
4.3.1 SRAM仿真 |
4.3.2 GPIO及 water-light仿真 |
4.3.3 中断仿真 |
4.4 本章小结 |
第五章 FPGA验证及MCU后端实现与芯片测试 |
5.1 FPGA验证 |
5.2 MCU后端实现 |
5.2.1 DC综合 |
5.2.2 STA静态时序分析 |
5.2.3 INNOVUS布局布线 |
5.2.4 MCU后仿 |
5.3 芯片测试 |
5.4 本章小结 |
第六章 论文总结与展望 |
致谢 |
参考文献 |
附录 |
在学期间参与项目 |
(5)多模式动态可切换低功耗处理器设计(论文提纲范文)
摘要 |
abstract |
1 绪论 |
1.1 研究背景及意义 |
1.2 国内外研究现状 |
1.3 本文研究内容及章节安排 |
2 低功耗设计及RISC-V处理器概述 |
2.1 集成电路功耗组成 |
2.1.1 动态功耗 |
2.1.2 静态功耗 |
2.2 IC设计中的低功耗技术 |
2.2.1 系统设计级 |
2.2.2 RTL设计级 |
2.2.3 逻辑综合级 |
2.2.4 物理设计级 |
2.2.5 工艺级 |
2.3 RISC-V处理器概述 |
2.3.1 RISC-V处理器的特点 |
2.3.2 RISC-V指令集架构 |
2.3.3 流水线技术 |
2.3.4 流水线上的冒险 |
2.4 本章小结 |
3 RISC-V五级流水处理器设计 |
3.1 处理器的硬件结构设计 |
3.1.1 系统模块设计 |
3.1.2 流水线划分 |
3.1.3 流水线控制模块设计 |
3.2 SystemC编译 |
3.3 功能仿真验证 |
3.4 处理器逻辑综合 |
3.5 处理器的功耗分析 |
3.6 本章小结 |
4 多模式动态可切换低功耗处理器设计 |
4.1 硬件结构设计 |
4.1.1 处理器架构设计 |
4.1.2 工作模式划分 |
4.1.3 系统模式控制部分架构设计 |
4.2 电源门控技术实现低功耗设计 |
4.2.1 电源域的划分 |
4.2.2 Power Switch及 Isolation结构设计 |
4.2.3 UPF描述 |
4.3 软硬件协同的模式切换方式设计 |
4.4 本章小结 |
5 多模式动态可切换低功耗处理器仿真及性能分析 |
5.1 功能仿真结果 |
5.1.1 各模式下处理器的仿真结果 |
5.1.2 模式切换时的仿真结果 |
5.2 逻辑综合及性能分析 |
5.2.1 面积及频率分析 |
5.2.2 功耗及计算效率分析 |
5.2.3 指令功耗分析 |
5.3 本章小结 |
6 总结与展望 |
致谢 |
参考文献 |
(6)数字电路功能建模及控制通路的验证方法研究(论文提纲范文)
摘要 |
ABSTRACT |
符号对照表 |
缩略语对照表 |
第一章 绪论 |
1.1 研究背景 |
1.2 集成电路功能验证方法研究 |
1.2.1 模拟验证方法 |
1.2.2 形式化验证方法 |
1.2.3 半形式化验证方法 |
1.3 本文主要工作 |
1.4 本文组织结构 |
第二章 基于实体状态转移的功能点模型 |
2.1 功能描述方法相关研究 |
2.2 基于实体状态转移的功能点模型 |
2.2.1 功能点层的阶段转移关系图模型 |
2.2.2 实体层的精简拓展有限状态机模型 |
2.3 模型特点 |
2.4 本章小结 |
第三章 基于功能点模型的控制通路功能验证方法 |
3.1 控制通路的验证难点 |
3.2 基于功能点模型测试空间覆盖的控制通路激励生成方法 |
3.2.1 控制敏感型的阶段转移关系测试空间覆盖算法 |
3.2.2 数据敏感型的阶段转移关系测试空间覆盖算法 |
3.3 基于功能点模型的功能覆盖率评估 |
3.4 本章小结 |
第四章 基于功能点模型的自动化验证平台设计与实现 |
4.1 验证平台框架 |
4.2 平台设计与实现 |
4.2.1 功能点模型建模工具 |
4.2.2 边界数据库 |
4.2.3 编译器 |
4.3 本章小结 |
第五章 基于功能点模型的控制通路实例验证 |
5.1 实验环境搭建 |
5.2 控制通路密集型DMA电路的验证与分析 |
5.2.1 DMA功能介绍 |
5.2.2 DMA功能点建模 |
5.2.3 DMA验证边界值设置 |
5.2.4 测试结果输出 |
5.3 本章小结 |
第六章 结束语 |
6.1 本文总结 |
6.2 工作展望 |
参考文献 |
致谢 |
作者简介 |
1.基本情况 |
2.教育背景 |
3.攻读硕士学位期间的研究成果 |
3.1 发表学术论文 |
3.2 参与科研项目 |
(7)基于龙芯LS132软核处理器的SoC设计与实现(论文提纲范文)
摘要 |
abstract |
缩略词对照表 |
第1章 绪论 |
1.1 课题研究背景 |
1.2 课题相关技术 |
1.2.1 系统级芯片SoC |
1.2.2 软核处理器 |
1.2.3 片上总线 |
1.2.4 硬件开发平台 |
1.3 课题研究内容 |
1.4 课题研究目标 |
1.5 课题研究意义 |
1.6 论文组织结构 |
第2章 课题设计技术和流程 |
2.1 课题设计技术 |
2.1.1 IP核复用技术 |
2.1.2 软硬件协同设计技术 |
2.2 课题设计流程 |
2.2.1 FPGA设计流程 |
2.2.2 课题设计流程 |
2.3 本章小结 |
第3章 MIPS32 指令集与软核处理器LS132 |
3.1 MIPS指令集 |
3.1.1 数据类型 |
3.1.2 寄存器 |
3.1.3 指令集 |
3.1.4协处理器CP0 |
3.1.5 异常 |
3.2 LS132软核处理器 |
3.2.1 LS132简介 |
3.2.2 LS132编程功能实现 |
3.2.3 LS132源码仿真测试 |
3.3 本章小结 |
第4章 基于LS132的SoC设计 |
4.1 AXI总线协议 |
4.1.1 读写架构 |
4.1.2 信号描述 |
4.1.3 读写时序 |
4.1.4 握手过程 |
4.2 SoC硬件部分设计 |
4.2.1 整体SoC平台架构 |
4.2.2 总线模块的实现 |
4.2.3 Nor Flash控制器设计与实现 |
4.2.4 其他模块说明 |
4.3 SoC软件部分设计 |
4.3.1 交叉编译环境的搭建 |
4.3.2 启动代码的编译和烧写 |
4.3.3 应用程序的设计 |
4.4 本章小结 |
第5章 基于LS132的SoC平台测试与验证 |
5.1 FPGA开发平台 |
5.2 PMON的编译与验证 |
5.3 应用程序的验证 |
5.4 系统性能分析 |
5.5 本章小结 |
第6章 VxWorks操作系统移植 |
6.1 VxWorks操作系统 |
6.2 BSP的设计 |
6.3 VxWorks操作系统的移植 |
6.4 本章小结 |
第7章 总结与展望 |
7.1 课题总结 |
7.2 工作展望 |
参考文献 |
致谢 |
作者简历及攻读学位期间发表的学术论文与研究成果 |
(8)可重构多核系统软硬件协同验证技术研究(论文提纲范文)
致谢 |
摘要 |
abstract |
第一章 绪论 |
1.1 课题背景 |
1.1.1 片上多核与多线程技术 |
1.1.2 片上网络 |
1.1.3 可重构多核系统 |
1.2 多核SoC验证技术的发展 |
1.2.1 SoC验证面临的挑战 |
1.2.2 UVM验证技术 |
1.2.3 软硬件协同验证技术 |
1.3 国内外相关研究 |
1.4 课题来源 |
1.5 论文组织结构 |
第二章 SoC自动化验证概述 |
2.1 系统级验证 |
2.2 传统RMCS验证技术 |
2.2.1 软件模拟器理论 |
2.2.2 形式化验证 |
2.2.3 硬件仿真器 |
2.3 软硬件协同仿真加速 |
2.3.1 平台编程架构 |
2.3.2 多精度系统组件建模 |
2.3.3 平台通信机制 |
2.4 本章小结 |
第三章 可重构多核系统验证平台设计 |
3.1 目标系统RMCS |
3.2 系统建模关键技术实现 |
3.2.1 整体架构 |
3.2.2 数据网络组件建模 |
3.2.3 状态及配置网组件建模 |
3.2.4 指令模拟器建模 |
3.3 指令执行优化 |
3.3.1 前置编译优化 |
3.3.2 执行期优化 |
3.4 资源管理与输出校验层 |
3.4.1 资源请求异步响应设计 |
3.4.2 时钟探针设计 |
3.4.3 通信管道接口设计 |
3.4.4 基于SCE-MI通信协议的逻辑通道 |
3.5 本章小结 |
第四章 仿真平台性能测试和误差统计 |
4.1 实验目标与测试环境 |
4.2 平台仿真性能测试与分析 |
4.2.1 模式切换测试 |
4.2.2 指令精确仿真 |
4.2.3 时钟探针测试 |
4.3 矩阵运算仿真并行度测试 |
4.4 大点FFT任务加载测试 |
4.5 本章小结 |
第五章 总结与展望 |
5.1 工作总结 |
5.2 展望 |
参考文献 |
攻读硕士学位期间的学术活动及成果情况 |
(9)基于PyHCL的RISC-V架构处理器的研究与实现(论文提纲范文)
摘要 |
Abstract |
第一章 绪论 |
1.1 研究背景 |
1.2 国内外研究现状 |
1.2.1 国外研究现状 |
1.2.2 国内研究现状 |
1.3 当前研究存在的问题 |
1.4 本文创新点及难点概述 |
1.5 本文的主要工作与章节安排 |
第二章 RISC-V指令集架构研究 |
2.1 RISC-V架构简介 |
2.2 RISC-V指令集特点 |
2.3 RV32I指令格式 |
2.4 RV32I指令功能说明 |
2.5 本章小结 |
第三章 PyHCL语言及用法研究 |
3.1 PyHCL简介 |
3.2 PyHCL用法研究及示例 |
3.3 本章小结 |
第四章 PyHCL实践之处理器设计 |
4.1 处理器设计理论与基础 |
4.1.1 单周期处理器设计方案 |
4.1.2 多周期处理器设计方案 |
4.1.3 流水线处理器设计方案 |
4.1.4 流水线冲突 |
4.2 五级流水线处理器的整体设计 |
4.3 处理器模块设计与分析 |
4.3.1 数据冲突检测与处理模块设计 |
4.3.2 分支预测模块设计 |
4.3.3 PC模块设计 |
4.3.4 存储器模块设计 |
4.3.5 立即数生成模块设计 |
4.3.6 ALU模块设计 |
4.3.7 主控制器模块设计 |
4.3.8 通用寄存器组模块设计 |
4.3.9 流水线寄存器模块设计 |
4.3.10 CSR模块设计 |
4.3.11 数据通路模块设计 |
4.4 机器模式下的异常与中断实现 |
4.4.1 异常与中断概述 |
4.4.2 异常与中断相关寄存器简介与设计 |
4.4.3 异常与中断实现 |
4.5 本章小结 |
第五章 PyHCL实践之BIU总线设计 |
5.1 总线设计方案 |
5.2 BIU总线架构整体设计 |
5.3 ICB总线协议 |
5.4 BIU模块设计与实现 |
5.4.1 仲裁模块的设计与实现 |
5.4.2 缓存模块的设计与实现 |
5.4.3 分发模块的设计与实现 |
5.5 处理器与BIU的交互设计 |
5.6 本章小结 |
第六章 基于Python的验证框架的搭建 |
6.1 基于Python的验证框架 |
6.2 基于riscv-tests的测试指令生成 |
6.3 基于Cocotb的 Python测试文件编写 |
6.4 FPGA流程的构建 |
6.5 基于Python验证框架的处理器测试与分析 |
6.5.1 大规模指令测试 |
6.5.2 冒泡排序算法测试 |
6.5.3 处理器资源消耗概况 |
6.6 本章小结 |
结论 |
参考文献 |
附录1 RISC-V模块化指令集表 |
附录2 处理器整体结构图 |
附录3 控制信号译码表 |
附录4 冒泡排序测试汇编代码 |
攻读博士/硕士学位期间取得的研究成果 |
致谢 |
附件 |
(10)基于RISC-V指令集架构的微控制器的设计与实现(论文提纲范文)
摘要 |
abstract |
第一章 绪论 |
1.1 课题背景 |
1.2 国内外发展现状 |
1.3 研究意义 |
1.4 本论文的结构安排 |
第二章 微控制器相关研究理论与实现技术 |
2.1 指令集发展概述 |
2.1.1 复杂指令集架构与精简指令集架构 |
2.1.2 第五代精简指令集概述 |
2.2 微控制器实现方法与技术 |
2.2.1 软件和硬件协同设计与实现技术 |
2.2.2 IP核重复使用技术 |
2.2.3 片上互联总线实现技术 |
2.3 AXI总线的结构及其传输操作 |
2.3.1 AXI总线的系统结构 |
2.3.2 AXI总线的传输详解 |
2.3.3 AXI总线的握手过程 |
2.4 APB总线的结构及其传输操作 |
2.4.1 APB总线系统组成和工作状态 |
2.4.2 APB总线的读写传输及时序 |
2.5 本章小结 |
第三章 微控制器系统的研究与实现 |
3.1 基于RISC-V指令集的内核模块的研究与实现 |
3.1.1 内核的结构特点 |
3.1.2 四级流水线介绍 |
3.1.3 核心模块介绍 |
3.2 SPI控制器模块的设计与实现 |
3.2.1 SPI控制模块的信号端口与寄存器 |
3.2.2 SPI控制器的结构 |
3.2.3 SPI控制状态机的实现 |
3.3 GPIO控制器模块的设计与实现 |
3.3.1 GPIO控制器介绍 |
3.3.2 GPIO控制器接口信号与寄存器 |
3.4 UART模块的设计与实现 |
3.4.1 UART协议介绍 |
3.4.2 UART模块的结构 |
3.4.3 UART接收状态机的实现 |
3.4.4 UART的配置和控制寄存器 |
3.5 I~2C控制器的设计与实现 |
3.5.1 I~2C协议时序介绍 |
3.5.2 I~2C控制器的结构与实现 |
3.5.3 命令控制状态机的实现 |
3.6 DPWM模块的设计与实现 |
3.6.1 DPWM技术原理简介 |
3.6.2 DPWM模块的结构 |
3.6.3 DPWM模块的实现 |
3.7 本章小结 |
第四章 微控制器的仿真和验证 |
4.1 微控制器内核的仿真与测试 |
4.1.1 对内核进行RISC-V指令的官方测试 |
4.1.2 在内核上运行高级语言(C语言)编写的软件程序 |
4.2 SPI控制器的仿真与测试 |
4.3 GPIO控制器的仿真与测试 |
4.4 UART的仿真与测试 |
4.5 I~2C控制器的仿真与测试 |
4.6 DPWM模块的仿真与测试 |
4.7 本章小结 |
第五章 基于SMIC130 纳米工艺的微控制器的综合及物理实现 |
5.1 逻辑综合流程和步骤 |
5.1.1 逻辑综合流程和步骤 |
5.1.2 静态时序分析和时序约束 |
5.1.3 逻辑综合过程及结果分析 |
5.2 基于深亚微米工艺的物理实现方法及流程 |
5.2.1 芯片的布局规划 |
5.2.2 芯片的电源规划和标准单元的放置 |
5.2.3 芯片的时钟树综合 |
5.2.4 芯片的布线 |
5.3 物理实现结果 |
5.4 本章小结 |
第六章 总结与展望 |
6.1 工作总结 |
6.2 创新点分析 |
6.3 不足与展望 |
致谢 |
参考文献 |
攻读硕士学位期间取得的成果 |
四、时序电路状态测试与精简方法研究(论文参考文献)
- [1]基于RISC-V的五级流水线处理器的设计与研究[D]. 刘先强. 山东大学, 2021(12)
- [2]RISC-V精简指令架构的研究及基于RV32I指令集的处理器内核设计[D]. 魏忠军. 电子科技大学, 2021(01)
- [3]基于高层次设计的MCU的研究[D]. 白博. 电子科技大学, 2021(01)
- [4]基于AMBA总线的低功耗MCU设计[D]. 刘攀. 电子科技大学, 2021(01)
- [5]多模式动态可切换低功耗处理器设计[D]. 刘和娜. 西安理工大学, 2020(01)
- [6]数字电路功能建模及控制通路的验证方法研究[D]. 黎余亮. 西安电子科技大学, 2020(05)
- [7]基于龙芯LS132软核处理器的SoC设计与实现[D]. 祝倩. 中国科学院大学(中国科学院国家空间科学中心), 2020(02)
- [8]可重构多核系统软硬件协同验证技术研究[D]. 牛云鹏. 合肥工业大学, 2020
- [9]基于PyHCL的RISC-V架构处理器的研究与实现[D]. 蔡志荣. 华南理工大学, 2020(02)
- [10]基于RISC-V指令集架构的微控制器的设计与实现[D]. 周强. 电子科技大学, 2020(07)