计算机组成课程设计之二——微程序控制的存储器读写系统设计

如果部分电路图显示不清楚可放大页面后查看

设计要求

课程设计平台为设计环境提供了容量为256×8的随机存储器。在此基础上,设计相应的外围电路和时序对随机存储器进行读写操作。结构框图如下图所示,设计完成后可以根据pc访问内存,取出地址Ad1,根据Ad1访问取出数据X,将X保存在Ad2地址单元。

结构与信号索引

上图中MAR为地址寄存器。R寄存器必须为具有三态输出的寄存器,直接调用74374即可。PC为带清零端的8位增1计数器(在上一部分的运算器设计中已经实现过)。FPGA引脚信号如下:

①A7~A0   地址信号,方向指向RAM。

②D7~D0数据信号,双向,RAM的数据通过该数据线读出或写入。

③存储器读命令RD,低电平有效。

④存储器写命令WR,低电平有效。

微指令格式及微指令编制

μIR3为1产生CPR;μIR2为1产生CPMAR;μIR4为1产生CPPC;μIR1为1产生 WR;μIR0为1产生 RD;μIR5为1产生XMAR选择信号;μIR6为1产生XPC选择信号;μIR7为1产生寄存器R的三态允许信号OE。

因为利用微程序,还必须设计微地址增1计数器µPC。

微程序的编制,由存储器的操作确定:

  1. 读出地址ad1放入MAR寄存器:

XPC、RD、CPMAR有效,即微指令:000045H

  1. M(ad1)即 x 送入寄存器R:

    XMAR、RD、CPR、CPPC(PC增1)即微指令:000039H

  2. 读出ad2送入MAR ,即微指令:000045

  3. x 送入地址ad2中

XMAR、WR、OE有效,即微指令:0000A2H

调试步骤:

  1. 设计存储器外围逻辑并下载至FPGA中。

  2. 设计微程序并将微程序以十六进制代码键入ROM3# 、ROM2#、ROM1#中

  3.  按一次脉冲键读出并执行一条微指令,并检查微指令执行情况,直至结束。

  4. 在RAM中,预先写入ad1、ad2、x具体数据。

该部分的关键电路图

二选一选择器:

主电路图



本项目的完整报告已发布到百度文库,地址为:
https://wenku.baidu.com/view/5082b9052bf90242a8956bec0975f46527d3a7e4.html?from=search
完整的Quartus II电路源码文件也已上传至CSDN文件库:

https://download.csdn.net/download/john_bian/10408632





















  • 16
    点赞
  • 76
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值