基于FPGA的ARM核心模块研究与实现

来源 :河北师范大学 | 被引量 : 0次 | 上传用户:walkeronmoon
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
为了提高ARM7嵌入式处理器的系统效率和扩大其应用范围,本文首先对ARM7体系结构及指令系统进行了认真的分析和研究,提出将哈佛结构应用于ARM7体系中,达到数据总线与指令总线相分离的目的,使指令流水与数据流水在保证空间并行性的前提下实现时间并行性。然后对ARM核心模块中的ARM中断向量表和微程序控制器进行深入研究,提出可控ARM异常表和可重构系统指令集的微程序控制器。最后,采用自顶向下的设计方法和Verilog硬件描述语言,按照面向FPGA的EDA开发方式,在Xilinx ISE9.1 i集成环境下实现可控ARM异常表、指令译码器和可重构系统指令集的微程序控制器电路模块,并通过ModelSim XE III 6.2c对所设计的模块进行功能仿真验证。ARM异常表是进行ARM嵌入式开发的关键,由传统的ARM中断向量表优化而来,优化策略包括以下两方面:一方面,将二级映射关系的ARM中断向量表改进为三级树型关系的可控ARM异常表,并通过三级树型结构表示ARM异常表和各类异常的处理路径,提高了ARM异常的处理效率。并且通过改变异常处理分支,实现了异常表的可控制性。另一方面,通过将异常仲裁电路集成到可控ARM异常表中的方法,提高异常的响应速度。微程序控制器是保证ARM处理器正常运行的关键,通过对微程序控制器的功能和结构进行分析,针对其单一系统指令集不能很好应用于实际的问题,引入可重构系统指令集的微程序控制器,并通过动态微程序设计方式对其进行实现,从而使指令系统更加灵活,并且可根据实际应用动态改变指令功能或系统指令集。指令译码器IR对微程序控制器的设计至关重要,通过对IR的深入研究和分析,在其原有功能的基础上,增加了简单译码的功能,在保证指令译码器能够正确分离操作码与操作数的同时,能够实现对操作数地址的译码操作,进而将译出的操作数地址直接输出到寻址部件,提高数据流水的速度。为了验证优化方案的稳定性,在ModelSim中对上述模块优化后的电路实现进行功能仿真,实验结果表明改进的ARM7核心模块能够提高处理器的灵活性和系统的运行效率。同时也验证了以下三个方面:(1)可控ARM异常表能够高效处理异常请求,并可通过改变异常处理分支电路实现其可控性;(2)指令译码器IR除能够正确地从指令中分离操作码和操作数外,还能完成简单的译码操作;(3)可重构系统指令集的微程序控制器能兼容ARM7 Thumb指令系统的部分指令,并实现指令流水与数据流水相互独立且具有时间并行性,提高了指令的执行效率。最后,在以上设计的基础上进行扩展和完善,即可实现高性能、高效率的嵌入式处理器。
其他文献
随着大数据和移动互联网技术的发展,数据量急剧增加,需要备份保护的数据也越来越多,为了减少存储空间的开销和降低网络传输的通信量,数据去重技术已经成为了存储系统中的一个
[摘 要] 新旧动能转换正处于关键时期,需要地方高校大力培养创新创业人才。文章从学生、教师、学校、平台等多维度考量创新创业人才培养的现状及前景。对创新创业人才培养提出了一个目标、两个核心、三个层面、四个内容、五个保障等合理建议。   [关键词] 创新创业;人才培养;策略   [中图分类号]G644 [文獻标志码] A [文章编号] 1008-2549(2019) 09-0030-02
步态识别是根据人走路的姿势进行身份识别的生物识别技术,与其他的生物识别特征相比,步态具有非侵犯性、难以隐藏和可远距离识别等特点,近年来备受计算机视觉研究人员的关注。人