xgdliujie的个人空间 https://blog.eetop.cn/980565 [收藏] [复制] [分享] [RSS]

空间首页 动态 记录 日志 相册 主题 分享 留言板 个人资料

日志

Single Cycle,Multi Cycle vs Pipeline

已有 6403 次阅读| 2013-8-1 13:20

       学习Digital Design and Computer Architecture一书有段时间了,终于到了最核心的环节,微架构的学习。书中罗列了3种微架构,有点混乱,网上搜了下,进一步整理。希望大家也能参考下。数字设计的精髓部分还有待掌握。

       下面是3种微架构的执行timing关系图。

             
  1. Single cycle:Basicly one instruction one Cycle, and critical path more long.

  2. Multi cycle:one instruction many Cycle, buf critical path shorter then Single cycle.Using FSM to implement one instruction.
    1. Break instruction execution into multiple cycles
    2. One clock cycle for each major task
      1. Instruction Fetch
      2. Instruction Decode and Register Fetch
      3. Execution, memory address computation, or branch computation
      4. Memory access / R-type instruction completion
      5. Memory read completion

    3. Share hardware to simplify datapath。

  3. pipeline:Instruction to go through a several clock. A clock to complete an Instruction, but exception of some special exceptions Instruction.
  • Single Cycle

  • 假設有一台全功能洗衣機,4項功能可以全自動做完
    (1)洗衣服(20分鐘)
    (2)脫水(20分鐘)
    (3)烘乾(30分鐘)
    (4)燙衣服(20分鐘)

    這個"洗衣服的工作"必需從頭做到尾才行。
    所以要收衣服,必须要等待最后流程做完。就算是只想烫下衣服,也必须4个流程走完。

  • Multiple Cycle

  • 也是同樣的一台全功能洗衣機,也是一樣4個步驟。
    但它會變成不是全自動的,而是你必需每隔30分鐘去看一次,
    洗衣服的工作是否要進入下一個步驟
    洗衣服->脫水->烘乾->燙衣服
    這樣子的好處是如果有衣服不能烘或不能燙,那就可以跳過該步驟以節省時間。
    但還是一樣有浪費掉的時間,因為每個步驟所花的時間也是必需一樣的。

  • Multiple Cycle with Pipeline

  • 把原本的一台全功能洗衣機,變4台專職的機器
    (1)專門洗衣服的機器
    (2)專門脫水的機器
    (3)專門烘乾的機器
    (4)專門燙衣服的機器
    這樣子一來,當第一批衣服一洗完拿去脫水後,第二批衣服就可以開始洗了,可以加速洗衣服的速度。


    總結一下:
    Single Cycle主要目的是希望所有的指令皆在一個Cycle執行完畢,所以呢,最快的指令必需等待最慢的指令。
    Multi Cycle就是為了解決Single Cycle效率不夠好的情況,讓最快的指令不必去等待最慢的指令。但是通过波形图可以看到,Multi Cycle在该方面的作用适得其反,其执行速度比Single Cycle还要慢。因为虽然有时候能省一两个流程,但是把任务拆分后,每个子任务的时间是要相等的(因为是同步时序)。这样累加起来就比Single效率更低了。Multi Cycle主要是解决了分时复用昂贵资源ALU mem等。代价是要额外增加状态变量。
    Pipeline主要的目的是希望在同一個時間內能執行多道指令,增加效能。

    转载自网络,原文链接http://stenlyho.blogspot.com/2008/07/single-cyclemulti-cycle-vs-pipeline.html


    点赞

    评论 (0 个评论)

    facelist

    您需要登录后才可以评论 登录 | 注册

    • 关注TA
    • 加好友
    • 联系TA
    • 0

      周排名
    • 0

      月排名
    • 0

      总排名
    • 0

      关注
    • 0

      粉丝
    • 0

      好友
    • 0

      获赞
    • 2

      评论
    • 1167

      访问数
    关闭

    站长推荐 上一条 /2 下一条

    小黑屋| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
    ( 京ICP备:10050787号 京公网安备:11010502037710 )

    GMT+8, 2024-4-19 05:22 , Processed in 0.023233 second(s), 13 queries , Gzip On, Redis On.

    eetop公众号 创芯大讲堂 创芯人才网
    返回顶部