Skip to content

HisionWang/Loongarch_CPU

Repository files navigation

Loongarch_CPU

龙芯winwinwin

CPU_1: 能过功能测试的七级流水线,取指分成了发请求、接响应两部分,访存分成了发请求、接响应两部分。使用类sram--axi转接桥。注:目前还没有加入【访存发请求】流水级的前推路径,但是没有出错

CPU_2: 七级流水线,取指分成了发请求、接响应两部分,访存分成了发请求、接响应两部分。 仅添加icache,未添加dcache。 8KB大小,两路组相连。每一个块4个32位大小(一组256个块) 后期可改成每个块16个32位大小。 CPU与cache之间类sram握手 周期数6208995ns提升至5199775ns(仿真数据)

CPU_3: 修复了CPU_2的bug,长延迟跑通,剔除了关于icache的关于回写操作的所有东西

CPU_4: icache和dcache全都加上了。 两个cache均8KB大小,两路组相连。每一个块4个32位大小(一组256个块) 但是dcache强制脏位没有改

CPU_5: icache和dcache全都加上了。 两个cache均8KB大小,两路组相连。每一个块4个32位大小(一组256个块) dcache强制脏位修改 修复了没有适配cache中bram下一周期出数据的bug

CPU_6: icache和dcache全都加上了。 两个cache均8KB大小,两路组相连。每一个块4个32位大小(一组256个块) 修复了执行板块未缓存rdata-2的bug 第一个保底版本,频率无法提升至50M 25M性能分0.511

CPU_7: icache和dcache全都加上了。 两个cache均8KB大小,两路组相连。每一个块4个32位大小(一组256个块) 能加入到发布包架构的, 删了一些前推路径(乘除访存读数据),频率可以到47M,发布包性能分0.89

CPU_8: 版本7修改跳转运算到执行板块了 但由于乘法器的作用 频率可以到50M

CPU_9: 版本7加上分支预测bpu 频率可以到47M,发布包性能分1.018

CPU_10: 版本8加上分支预测bpu 并且优化乘法器两个周期出数据 但是这个过不了chiplab,cached信号没有改 频率可以到66M,发布包性能分1.433

CPU_11:修改了cache的行大小,从原来的每块4字变成了每块16字。在66M的频率下性能只有些许的提升。 这个版本应该是第一个能通过chiplab测试的版本修改cache的版本 66M下发布包性能1.450 70M下发布包性能1.562

CPU_12:版本11基础上加上了fd的fifo 频率可以些许提升至75M 发布包性能1.561

CPU_13:版本12(含fifo)剔除了气泡阻塞在流水线中影响性能的情况。但此时频率就提不上去了

双发射的内容还是基于CPU_11的改,加了FIFO有各种奇怪的问题

About

糟糕的五(七?)级流水线

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors