0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

自制CPU(三)流水线

学FPGA,慢慢来 2018-07-16 09:20 次阅读

经过上两篇文章的阅读,大家应该清楚自己的CPU大致是如何处理数据的,而又是如何执行指令的。我们现在来在简略的说一下流水线CPU的设计。(源码在CSDN下载页,请自取)

流水线CPU的基本数据通路和单周期没有什么太大区别,而且也是每个时钟周期都有一条指令执行结束。但是他又和多周期CPU一样一条指令需要多个时钟周期完成。而同时使这两条条件同时满足的就是流水线技术了。先上一张图

由于在多周期CPU中,比如我们正在第三级执行第五条指令的执行操作,对于整个数据通路来讲,其它几级都是空闲状态,那我们为了提高CPU的工作效率,就让他提前后边指令的其他几级操作。这样一来,我们的CPU就像工厂内的流水线一样,每一级都在工作,大大提升了他的工作效率。

在设计中,流水线CPU甚至会比多周期CPU更好实现。由于数据是一级一级向下流,我们都无需进行状态机的状态转移来控制,只需要让数据与他的控制信号同步流向器件。每一个时钟周期数据都是从上一级流向下一级。而对应的寄存器就是在每个时钟上升沿都读出旧数据,写入新数据。

但是在流水线CPU中,分支跳转语句变成了一个难点,当指令发现是分支跳转指令时,输出branch信号,后等待ALU输出比较值是否相等。如果相等,进行跳转。但是跳转时,我们的流水线已将后三条指令读入并操作了一部分了。这时我们便需要清空存储器。或者我们也可以当检测到branch信号时CPU停止读入指令,直到判断结果输出时在进行跳转。、

流水线CPU是非常好用的CPU,在我们后续的程序编写的时候基本上都会使用流水线CPU,偶尔也会用多周期CPU。


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1629

    文章

    21729

    浏览量

    602978
收藏 人收藏

    评论

    相关推荐

    工业读码器解决方案在自动化流水线上扫描条码的应用

    工业读码器解决方案在自动化流水线上的应用主要包括以下几个方面:1、提高生产效率和准确性工业读码器嵌入在工业流水线中,无需人工扫描,大大提高了效率,节约了人力成本。读码效果稳定,准确率非常高,可以通过
    的头像 发表于 11-20 16:28 189次阅读
    工业读码器解决方案在自动化<b class='flag-5'>流水线</b>上扫描条码的应用

    SMT流水线布局优化技巧

    在电子制造领域,SMT(表面贴装技术)流水线的布局优化对于提高生产效率、降低成本和提升产品质量至关重要。一个合理的流水线布局可以减少物料搬运时间,提高设备利用率,减少人为错误,并且提高整体的生产
    的头像 发表于 11-14 09:11 320次阅读

    工业流水线的智能助手——智能计数,效率倍增

    在工业流水线中,每一个产品的计数都至关重要。迪卡尔ITMC-DSeries-x02系列物联网测控终端,您的智能生产伙伴。
    的头像 发表于 11-06 17:11 266次阅读
    工业<b class='flag-5'>流水线</b>的智能助手——智能计数,效率倍增

    行云流水线 满足你对工作流编排的一切幻想~skr

    流水线模型 众所周知,DevOps流水线(DevOps pipeline)的本质是实现自动化工作流程,用于支持软件开发、测试和部署的连续集成、交付和部署(CI/CD)实践。它是DevOps方法论
    的头像 发表于 08-05 13:42 265次阅读

    ADS900高速流水线模数转换器(ADC)数据表

    电子发烧友网站提供《ADS900高速流水线模数转换器(ADC)数据表.pdf》资料免费下载
    发表于 07-30 14:11 0次下载
    ADS900高速<b class='flag-5'>流水线</b>模数转换器(ADC)数据表

    ADS930高速流水线模数转换器(ADC)数据表

    电子发烧友网站提供《ADS930高速流水线模数转换器(ADC)数据表.pdf》资料免费下载
    发表于 07-30 14:10 0次下载
    ADS930高速<b class='flag-5'>流水线</b>模数转换器(ADC)数据表

    ADS5421流水线式模数转换器(ADC)数据表

    电子发烧友网站提供《ADS5421流水线式模数转换器(ADC)数据表.pdf》资料免费下载
    发表于 07-30 11:16 0次下载
    ADS5421<b class='flag-5'>流水线</b>式模数转换器(ADC)数据表

    ADS5413 CMOS流水线模数转换器(ADC)数据表

    电子发烧友网站提供《ADS5413 CMOS流水线模数转换器(ADC)数据表.pdf》资料免费下载
    发表于 07-29 13:21 0次下载
    ADS5413 CMOS<b class='flag-5'>流水线</b>模数转换器(ADC)数据表

    ADS5237流水线式模数转换器(ADC)数据表

    电子发烧友网站提供《ADS5237流水线式模数转换器(ADC)数据表.pdf》资料免费下载
    发表于 07-29 11:46 0次下载
    ADS5237<b class='flag-5'>流水线</b>式模数转换器(ADC)数据表

    ADS828流水线式CMOS模数转换器数据表

    电子发烧友网站提供《ADS828流水线式CMOS模数转换器数据表.pdf》资料免费下载
    发表于 07-23 09:17 0次下载
    ADS828<b class='flag-5'>流水线</b>式CMOS模数转换器数据表

    ADS805流水线模数转换器ADC数据表

    电子发烧友网站提供《ADS805流水线模数转换器ADC数据表.pdf》资料免费下载
    发表于 07-16 11:28 0次下载
    ADS805<b class='flag-5'>流水线</b>模数转换器ADC数据表

    固定式的扫码器在SMT流水线中的使用

    新大陆固定式扫码器作为一种高效的条码扫描设备,广泛应用于各个行业中,尤其是在SMT(表面贴装技术)流水线中有重要的作用。以下是新大陆固定式扫码器在SMT流水线中的具体使用情况。提高生产效率和质量
    的头像 发表于 07-03 10:18 497次阅读
    固定式的扫码器在SMT<b class='flag-5'>流水线</b>中的使用

    RISC-V架构的多级流水线处理

    有的单核RISC-V MCU支持四级流水线,有的只支持流水线,是不是级数越多,带来的开销越大,功耗也越高呢?
    发表于 05-20 16:01

    具有3态输出的多级流水线寄存器数据表

    电子发烧友网站提供《具有3态输出的多级流水线寄存器数据表.pdf》资料免费下载
    发表于 05-16 09:39 0次下载
    具有3态输出的多级<b class='flag-5'>流水线</b>寄存器数据表

    牵引机和挖掘机装配流水线自动互锁防呆系统无线通讯应用

    在挖掘机装配工序中,液压系统检测、调试是其生产工艺中的重要环节。液压检测过程中需要操作铲斗、斗杆、动臂动作,这一过程中流水线挖掘机因带动偏移易发生安全事故及机械损伤故障等情况,需要采用牵引机链条牵引
    的头像 发表于 02-26 08:52 358次阅读
    牵引机和挖掘机装配<b class='flag-5'>流水线</b>自动互锁防呆系统无线通讯应用