`timescale 1ns / 1ps
//////////////////////////////////////////////////////////////////////////////////
// Company:
// Engineer:
//
// Create Date: 04/28/2017 07:27:12 PM
// Design Name:
// Module Name: Interfaces
// Project Name:
// Target Devices:
// Tool Versions:
// Description:
//
// Dependencies:
//
// Revision:
// Revision 0.01 - File Created
// Additional Comments:
//
////////////////////////////////////////////////////////////////////////////////// module Interface(
input clk,
input rst,
output [:] o_seg,AN
); // wire [7:0] o_seg,AN;
wire [:] instr,rdata1,rdata2;
wire [:] pc;
wire [:] reg_data;
wire reg_wena,ram_wena,pc_ena;
wire [:] ram_addr; wire [:] alu_op; wire [:] alu_r;
wire [:] rs,rt,rd; wire [:] hi,lo,cop_data; parameter ENA = 'b1;
parameter DIS = 'b0; wire [:] pc_in,alu_a,alu_b;
wire [:] ram_data;
wire [:] wdata,exc_addr;
wire [:] mult_hi,mult_lo,div_hi,div_lo;
wire [:] waddr;
wire [:] cause;
wire z,c,o,n; wire mtc0,eret;
wire [:] mdu; wire [:] IRAdd = pc>>;
wire [:] mul_out;
wire [:] watch_out;
// wire [31:0] watch_out2=call_code;
wire seg7_cs,teq_exc; wire scan_dir; drive IR(.a(IRAdd[:]), .spo(instr)); pcreg pcreg(
clk,
rst,
pc_ena,
pc_in,
pc); alu alu(
alu_a,
alu_b,
alu_op,
alu_r,
z,c,n,o); RegFiles regfiles(
clk,
rst,
reg_wena,
rs,
rt,
waddr,
wdata,
rdata1,
rdata2
); CP0 CP0(
clk,rst,teq_exc,mtc0,
pc,
rd,rdata2,
eret,cause,
cop_data,exc_addr); ram ram(
clk,
ram_wena,
ram_addr[:],
reg_data,
ram_data,
watch_out
); seg7x16 seg7x16(
clk,rst,
watch_out,
o_seg,AN); MDU MDU(
.mdu(mdu),
.clk(clk),.rst(rst),
.mul_out(mul_out),
.rdata1(rdata1),.rdata2(rdata2),
.hi(hi),.lo(lo),
.pc_ena(pc_ena)); CtrlUnit CtrlUnit(
.instr(instr),
.rdata1(rdata1),
.rdata2(rdata2),
.pc(pc),
.clk(clk),
.ram_data(ram_data),
.mul_out(mul_out[:]),
.rs(rs),.rt(rt),.rd(rd),
.hi(hi),.lo(lo),
.cop_data(cop_data),
.exc_addr(exc_addr),
.teq_exc(teq_exc),
.mtc0(mtc0),.eret(eret),
.mdu(mdu),
.cause(cause),
.reg_wena(reg_wena),.ram_wena(ram_wena),
.waddr(waddr),.ram_addr(ram_addr),
.wdata(wdata),.reg_data(reg_data),
.pc_in(pc_in),
.alu_a(alu_a),.alu_b(alu_b),.alu_r(alu_r),
.alu_op(alu_op));
endmodule

Verilog MIPS32 CPU(九)-- 顶层文件的更多相关文章

  1. Verilog MIPS32 CPU(八)-- 控制器

    Verilog MIPS32 CPU(一)-- PC寄存器 Verilog MIPS32 CPU(二)-- Regfiles Verilog MIPS32 CPU(三)-- ALU Verilog M ...

  2. Verilog MIPS32 CPU(六)-- MDU

    Verilog MIPS32 CPU(一)-- PC寄存器 Verilog MIPS32 CPU(二)-- Regfiles Verilog MIPS32 CPU(三)-- ALU Verilog M ...

  3. Verilog MIPS32 CPU(七)-- DIV、DIVU

    Verilog MIPS32 CPU(一)-- PC寄存器 Verilog MIPS32 CPU(二)-- Regfiles Verilog MIPS32 CPU(三)-- ALU Verilog M ...

  4. Verilog MIPS32 CPU(五)-- CP0

    Verilog MIPS32 CPU(一)-- PC寄存器 Verilog MIPS32 CPU(二)-- Regfiles Verilog MIPS32 CPU(三)-- ALU Verilog M ...

  5. Verilog MIPS32 CPU(四)-- RAM

    Verilog MIPS32 CPU(一)-- PC寄存器 Verilog MIPS32 CPU(二)-- Regfiles Verilog MIPS32 CPU(三)-- ALU Verilog M ...

  6. Verilog MIPS32 CPU(三)-- ALU

    Verilog MIPS32 CPU(一)-- PC寄存器 Verilog MIPS32 CPU(二)-- Regfiles Verilog MIPS32 CPU(三)-- ALU Verilog M ...

  7. Verilog MIPS32 CPU(二)-- Regfiles

    Verilog MIPS32 CPU(一)-- PC寄存器 Verilog MIPS32 CPU(二)-- Regfiles Verilog MIPS32 CPU(三)-- ALU Verilog M ...

  8. Verilog MIPS32 CPU(一)-- PC寄存器

    Verilog MIPS32 CPU(一)-- PC寄存器 Verilog MIPS32 CPU(二)-- Regfiles Verilog MIPS32 CPU(三)-- ALU Verilog M ...

  9. 66.为什么有时候在ISE软件中,顶层文件不能置顶?

    什么时候回出现顶层文件不能置顶呢?嘿嘿,肯定是工程中有错误啦. 如果你的顶层文件包含了include文件,这个时候就会出现这种情况了.但好像出现在刚新建工程的时候,因为当顶层文件不包括Include文 ...

随机推荐

  1. Eclipse/jre/jdk/jvm

    理清一下什么是 jre.jdk.jvm这几个容易混淆的东西. 直接在电脑下安装Eclipse,会提醒你缺少JVM. 1.JVM Java Virtual Machine(Java虚拟机)的缩写. 为了 ...

  2. python十个博客

    1.首先第一个肯定是毋庸置疑的Planet Python这是最出名的python博客其中之一,快去看看,我希望你能找到对你有用的东西,昨天它还更新了呢! 2.第二个博客是lucumr,博主是flask ...

  3. 领域Command

    一.项目结构 二.代码 /// <summary> /// /// </summary> public interface ICommand { } /// <summa ...

  4. LightGBM

    1.简介 lightGBM包含两个关键点:light即轻量级,GBM 梯度提升机 LightGBM 是一个梯度 boosting 框架,使用基于学习算法的决策树.它可以说是分布式的,高效的,有以下优势 ...

  5. 使用NPM在项目中引入【lodash】

    mkdir [文件名 ] 创建项目文件 mkdir lodashDemo cd [文件名] 进入项目文件 cd lodashDemo nvm -v 查看nvm版本,确定nvm已安装 nvm -v No ...

  6. failed to open stream: No such file or directory 报错解决方法

    1.首先检查是否是文件名错误(比如有空格):是否因为路径不完整(比如缺少http://,或者缺少文件扩展名.doc等): 2.若是在本地中文名文件打开报错,我就是因为编码不一致导致: Windows中 ...

  7. SPI子系统分析之一:框架

    内核版本:3.9.5 SPI子系统概述: 一个SPI主控制器对应一条SPI总线,当然在系统中有唯一的总线编号. SPI总线上有两类设备: 其一是主控端,通常作为SOC系统的一个子模块出现,很多嵌入式M ...

  8. 一道容易栽坑的有趣的面试题(关于js,定时器,闭包等)

    1.首先下面代码输出什么? for (var i = 0; i < 5; i++) { console.log(i); } 输出:0 1 2 3 4 2.上面只是普通的输出,没有陷阱再看下面这个 ...

  9. 使用opencv-python画OpenCV LOGO

    OpenCV2-Python 官方教程的练习 代码: #-*- coding:utf-8 -*- import numpy as np import cv2 img = np.zeros((512, ...

  10. Excel VBA入门(六)过程和函数

    前面讲过,VBA代码有两种组织形式,一种就是过程(前面的示例中都在使用),另一种就是函数.其实过程和函数有很多相同之处,除了使用的关键字不同之外,还有不同的是: 函数有返回值,过程没有 函数可以在Ex ...