数据通路之控制器实现

控制器

控制器实现示意图.png
  • 输入:操作码opcode和功能码func

  • 实现:

    步骤1 将操作码opcode和功能码func接入到一个由与门的逻辑电路中,得到rtypeaddsuborilwswbeq等7组中间信号;
    步骤2 将步骤1产生的7个中间信号接入到一个由或门组成的逻辑电路中,得到控制信号RegDstALUSrcMemtoRegRegWrMemWrnPC_selExtOpALUctr[0]ALUctr[1]等9种控制信号

  • 输出:控制信号RegDstALUSrcMemtoRegRegWrMemWrnPC_selExtOpALUctr[0]ALUctr[1]

输入信号到中间信号

rtype = (~op5)·(~op4)·(~op3)·(~op2)·(~op1)·(~op0)

add = rtype·func5·(~func4)·(~func3)·(~func2)·(~func1)·(~func0)

sub = rtype·func5·(~func4)·(~func3)·(~func2)·(~func1)·(~func0)

ori =  (~op5)·(~op4)·op3·op2·(~op1)·(~op0)

lw =  op5·(~op4)·(~op3)·(~op2)·op1·op0

sw =  op5·(~op4)·op3·(~op2)·(~op1)·(~op0)

beq =  (~op5)·(~op4)·(~op3)·op2·(~op1)·(~op0)

中间信号到控制信号

RegDst = add + sub

ALUSrc = ori + lw + sw

MemtoReg = lw

RegWr = add + sub + ori + lw

MemWr = sw

nPC_sel = beq

ExtOp = lw + sw

ALUctr[0] = sub + beq

ALUctr[1] = or

汇总输入信号、中间信号、控制信号

控制器的输入输出关系总表.png
  • 纵向
    分解出每个指令需要的控制信号;
  • 横向
    通过中间信号,可以建立起输入信号和单个控制信号之间的关系;
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Verilog基本电路设计之一:单bit跨时钟域同步 (帖子链接:bbs.eetop.cn/thread-6054...
  • 选择题部分 1.(),只有在发生短路事故时或者在负荷电流较大时,变流器中才会有足够的二次电流作为继电保护跳闸之用。...
    skystarwuwei阅读 13,468评论 0 7
  • 看过这100个知识点,模电其实也不难 2016-03-18 21ic电子网 模电想必是电子专业的学生头疼的一门课程...
    岳坛阅读 2,744评论 1 16
  • 周末放松,终于有时间看了前一段时间刷屏朋友圈的电影《无名之辈》 看完觉得百感交集。其中几个主角的演技都让人印象深刻...
    木子桃心说阅读 256评论 1 4
  • 某个商店经理听到手下的售货员对一个女顾客说:“已经好几个星期没有了,未来一段时间看来也不会有的”。经理听了,大吃一...
    言又又阅读 466评论 0 0