异步RISC微处理器核设计关键技术研究
发布时间:2020-06-25 01:40
【摘要】: 处理器是计算机系统最核心的部件,同步处理器在过去几十年间获得了突飞猛进的发展。然而,随着特征尺寸的不断减小和电路规模的不断增加,时钟偏移、最坏速度、系统功耗及电磁辐射等问题日益成为同步处理器性能提高的瓶颈。因此,能较好地解决上述问题的异步处理器设计技术逐渐成为世界范围内的研究热点。 我国的处理器设计刚刚起步,而异步处理器的设计则处于起步前的探索阶段。本文针对异步RISC微处理器的设计技术进行研究,采用自顶向下的方法设计实现了一款带有Booth乘法器、桶式移位器、经典5级带反馈流水线、具有中断和例外管理功能、采用四相数据绑定握手协议和匹配延迟等技术的异步RISC微处理器核。 本文完成的主要工作包括: 论文紧紧围绕微处理器设计中具有“异步”和“RISC”特色的关键技术进行研究。论文首先研究了异步电路设计原理,对握手协议、延迟模型、指示原则及马勒流水线等进行深入分析;然后研究了RISC单发射微处理器的特点,重点研究了指令系统、流水线组织以及中断和例外管理。 论文对异步微处理器的体系结构、异步流水线结构和异步功能单元的设计进行了研究。论文在对异步流水线控制、死锁、数据相关、转移相关、中断与例外、异步功能单元设计等关键问题进行了深入研究的基础上,给出了较为详尽的设计方案。论文用异步电路硬件描述语言Balsa对所做设计进行了建模,并完成了ASIC综合。论文采用基于仿真的验证方法,从单元验证和结构验证两个方面,分别设计验证程序,对所设计的异步微处理器进行了功能验证。 论文在研究、设计、建模和验证过程中针对出现的问题提出了以下一些策略或方法:论文对流水线的共有问题和异步流水线特有的新问题进行分析,在此基础上提出了一种异步流水线控制策略,该策略能对异步流水线控制问题提供较好的解决方案:针对异步电路中特有的死锁问题,论文提出了一种建立死锁模型的方法,通过该死锁模型可以快速定位死锁原因:针对RISC微处理器中所有数据相关难以考虑周全的现状,论文提出了一种基于指令事件类的数据相关彻查方法,该方法既能找到所有情况的数据相关,又有较小的彻查工作量;论文结合本设计的指令构成和流水线事件的特点,提出了一种基于指令事件类的验证程序生成方法,该方法具有针对性强、功能覆盖率高、仿真时间短等优点。 实验结果表明,本文设计的异步RISC微处理器核功能正确,与对应的同步微处理器核相比,本设计既有较好的性能和扩展性,又有较高的功率效率。
【学位授予单位】:解放军信息工程大学
【学位级别】:硕士
【学位授予年份】:2008
【分类号】:TP332
【图文】:
数据输入请求(前三行红色条状信号),但处理器中只有拉信道(接收方主动索要数据的信道)上有索要数据的请求却没有应答,推信道(发送方主动发出数据的信道)上的握手和全部数据传输都止步不前,如图6.5(a)所示’。图6.5(a)发生流水线死锁时的仿真结果‘注:由于仿真信道较多,图中只截取了一部分信道以说明问题。这种令人十分困惑的仿真结果就是死锁造成的。利用本文第四章提出的建立死锁模型的方法很容易确定死锁的具体原因:电路中的前推逻辑和异常管理逻辑造成流水线死锁。解决办法是在设计中加上死锁控制单元。图6.5(b)给出了解决流水线死锁后的仿真结果。从图中可以看出指令流在开始时依次进入流水线各级,然后开始执行。图6.5(b)解决流水线死锁后的仿真结果图6.5不相关指令序列验证阶段的仿真结果在这一阶段的验证计划概括如下:了所有指令的指令格式、寻址方式、指令操作、运算结果正确;了所有指令对流水线的影响正确,包括PC值的更改、指令流的转移、流水线的冲刷等:了处理器外部的硬件信号如interruPt、reset等功能正确;了用伪随机序列进行抽检(检查结果时指令相关性影响的结果被忽略)。根据验证计划本文设计了验证程序,对上述的具体功能验证点进行验证。在对流水线死锁和一些设计细节上的缺陷改正之后,上述验证计划中的功能验证点全部正确通过。第62少之
数据输入请求(前三行红色条状信号),但处理器中只有拉信道(接收方主动索要数据的信道)上有索要数据的请求却没有应答,推信道(发送方主动发出数据的信道)上的握手和全部数据传输都止步不前,如图6.5(a)所示’。图6.5(a)发生流水线死锁时的仿真结果‘注:由于仿真信道较多,图中只截取了一部分信道以说明问题。这种令人十分困惑的仿真结果就是死锁造成的。利用本文第四章提出的建立死锁模型的方法很容易确定死锁的具体原因:电路中的前推逻辑和异常管理逻辑造成流水线死锁。解决办法是在设计中加上死锁控制单元。图6.5(b)给出了解决流水线死锁后的仿真结果。从图中可以看出指令流在开始时依次进入流水线各级,然后开始执行。图6.5(b)解决流水线死锁后的仿真结果图6.5不相关指令序列验证阶段的仿真结果在这一阶段的验证计划概括如下:了所有指令的指令格式、寻址方式、指令操作、运算结果正确;了所有指令对流水线的影响正确,包括PC值的更改、指令流的转移、流水线的冲刷等:了处理器外部的硬件信号如interruPt、reset等功能正确;了用伪随机序列进行抽检(检查结果时指令相关性影响的结果被忽略)。根据验证计划本文设计了验证程序,对上述的具体功能验证点进行验证。在对流水线死锁和一些设计细节上的缺陷改正之后,上述验证计划中的功能验证点全部正确通过。第62少之
本文编号:2728672
【学位授予单位】:解放军信息工程大学
【学位级别】:硕士
【学位授予年份】:2008
【分类号】:TP332
【图文】:
数据输入请求(前三行红色条状信号),但处理器中只有拉信道(接收方主动索要数据的信道)上有索要数据的请求却没有应答,推信道(发送方主动发出数据的信道)上的握手和全部数据传输都止步不前,如图6.5(a)所示’。图6.5(a)发生流水线死锁时的仿真结果‘注:由于仿真信道较多,图中只截取了一部分信道以说明问题。这种令人十分困惑的仿真结果就是死锁造成的。利用本文第四章提出的建立死锁模型的方法很容易确定死锁的具体原因:电路中的前推逻辑和异常管理逻辑造成流水线死锁。解决办法是在设计中加上死锁控制单元。图6.5(b)给出了解决流水线死锁后的仿真结果。从图中可以看出指令流在开始时依次进入流水线各级,然后开始执行。图6.5(b)解决流水线死锁后的仿真结果图6.5不相关指令序列验证阶段的仿真结果在这一阶段的验证计划概括如下:了所有指令的指令格式、寻址方式、指令操作、运算结果正确;了所有指令对流水线的影响正确,包括PC值的更改、指令流的转移、流水线的冲刷等:了处理器外部的硬件信号如interruPt、reset等功能正确;了用伪随机序列进行抽检(检查结果时指令相关性影响的结果被忽略)。根据验证计划本文设计了验证程序,对上述的具体功能验证点进行验证。在对流水线死锁和一些设计细节上的缺陷改正之后,上述验证计划中的功能验证点全部正确通过。第62少之
数据输入请求(前三行红色条状信号),但处理器中只有拉信道(接收方主动索要数据的信道)上有索要数据的请求却没有应答,推信道(发送方主动发出数据的信道)上的握手和全部数据传输都止步不前,如图6.5(a)所示’。图6.5(a)发生流水线死锁时的仿真结果‘注:由于仿真信道较多,图中只截取了一部分信道以说明问题。这种令人十分困惑的仿真结果就是死锁造成的。利用本文第四章提出的建立死锁模型的方法很容易确定死锁的具体原因:电路中的前推逻辑和异常管理逻辑造成流水线死锁。解决办法是在设计中加上死锁控制单元。图6.5(b)给出了解决流水线死锁后的仿真结果。从图中可以看出指令流在开始时依次进入流水线各级,然后开始执行。图6.5(b)解决流水线死锁后的仿真结果图6.5不相关指令序列验证阶段的仿真结果在这一阶段的验证计划概括如下:了所有指令的指令格式、寻址方式、指令操作、运算结果正确;了所有指令对流水线的影响正确,包括PC值的更改、指令流的转移、流水线的冲刷等:了处理器外部的硬件信号如interruPt、reset等功能正确;了用伪随机序列进行抽检(检查结果时指令相关性影响的结果被忽略)。根据验证计划本文设计了验证程序,对上述的具体功能验证点进行验证。在对流水线死锁和一些设计细节上的缺陷改正之后,上述验证计划中的功能验证点全部正确通过。第62少之
【参考文献】
相关期刊论文 前2条
1 张文婧,吕述望,刘鸣,刘振华;一种适用于分组密码算法芯片的IP核设计研究[J];计算机工程与应用;2002年22期
2 高玲;祝翔;李鸥;;异步处理器设计中的关键技术研究[J];微计算机信息;2006年08期
相关博士学位论文 前1条
1 周莉;RISC/DSP处理器的结构、微结构设计研究[D];浙江大学;2004年
本文编号:2728672
本文链接:https://www.wllwen.com/kejilunwen/jisuanjikexuelunwen/2728672.html