`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. 【转】iphone - ios app maximum memory budget

    https://stackoverflow.com/questions/5887248/ios-app-maximum-memory-budget device: (crash amount/tota ...

  2. jar 运行报错:找不到或无法加载主类

    NIFEST.MF文件中指定的,如下所示:Manifest-Version: 1.0Class-Path: .Main-Class: com.webex.app.Main             // ...

  3. 安装mongodb时报错 configure: error: Cannot find OpenSSL's libraries

    请安装这些包以便继续: apt-get install build-essential libexpat1-dev libgeoip-dev libpng-dev libpcre3-dev libss ...

  4. onload函数和自执行函数的区别(jquery API网址:http://jquery.cuishifeng.cn/)

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  5. jsp出现getOutputStream() has already been called for this response异常的原因和解决方法

    jsp出现getOutputStream() has already been called for this response异常的原因和解决方法 在tomcat5下jsp中出现此错误一般都是在js ...

  6. js是函数式的面向对象编程语言

    js是函数式的面向对象编程语言,而非类式的面向对象编程语言

  7. Oracle 下基于 DBMS_RESOURCE_MANAGER 包估算数据库存储 IO 性能

    :first-child { margin-top: 0; } blockquote > :last-child { margin-bottom: 0; } img { border: 0; m ...

  8. Nginx源码完全注释(2)ngx_array.h / ngx_array.c

    数组头文件 ngx_array.h #include <ngx_config.h> #include <ngx_core.h> struct ngx_array_s { voi ...

  9. dpdk中log的使用方法

    1 log简介    dpdk中通过log系统记录相关的日志信息,每一条日志除日志内容外,还有两个附加信息,log级别和log类型.开发人员可根据级别和类型对日志信息进行过滤,只记录必要的日志.1.1 ...

  10. 文件操作putc

    putc是把一个字符写入到指定文件中,每写一个字符,文件指针自动加1. 我写了一个随机生成255字符到d:/456.txt的程序. int main() { FILE *p; int num[255] ...