⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 the_6th_cu.v

📁 一个自己写的8位CPU程序
💻 V
字号:
// **********************************************************************// ** Revision     :1.0// ** File name    :The_6th_CU.v// ** Module name  :The_6th_CU// ** Discription  :本模块定义了一个8位计算机的控制器。包括一个状态转换部分// **               和一个控制信号形成部分。// ** PS           :(1)状态转换部分定义了4个状:// **                  FIRST:计算机处于指令执行的第一个时钟周期// **                  SECOND:计算机处于指令执行的第二个时钟周期// **                  THIRD:计算机处于指令执行的第三个时钟周期// **                  HLT:计算机处于停机状态。当计算机处于指令执行的第三个// **                      时钟周期的时候,如果检测到正在执行的指令是停机指// **                      令,则计算机状态将转入停机状态。如果计算机处于停// **                      机状态,只有reset→0可以来重新触发,否则计算机将// **                      永远处于停机状态;// **               (2)控制信号形成部分首先将CPU各控制信号置0,即系统初始状// **                  态;然后根据计算机的状态和指令寄存器里面的指令,给出// **                  有用的控制信号,从而控制计算机在各时钟周期内进行相应// **                  操作。// ** Simulator    :ModelSim SE 6.0c// **********************************************************************`timescale 1ns / 1psmodule The_6th_CU(CLE, ZLE, ALU_OP, ACLE, GR_address, GRLE, IRLE, ARLE, PCLE, PCCE, mux_DB_sel, mux_AB_sel,                  clk, reset, C_in, Z_in, IR_in, CS, RD, WR, MUL_enable, DIV_enable);        parameter FIRST = 'b00,SECOND = 'b01,THIRD = 'b10,HLT = 'b11;     //控制器输出:     output CLE;              reg CLE;                         // CLE:1b,C标志寄存器载入使能;     output ZLE;              reg ZLE;                         // ZLE:1b,Z标志寄存器载入使能     output ACLE;             reg ACLE;                        // ACLE:1b,累加器AC载入使能;     output GRLE;             reg GRLE;                        // GRLE:1b,通用寄存器GR载入使能;     output ARLE;             reg ARLE;                        // ARLE:1b,地址寄存器AR载入使能;     output IRLE;             reg IRLE;                        // IRLE:1b,指令寄存器IR载入使能;     output PCLE;             reg PCLE;                        // PCLE:1b,程序计数器PC载入使能;     output PCCE;             reg PCCE;                        // PCCE:1b,程序计数器计数使能;     output MUL_enable;       reg MUL_enable;                  //MUL_enable: 1b,乘法器件载入使能;     output DIV_enable;       reg DIV_enable;                  //DIV_enable: 1b,除法器件载入时能;     output [4:0] ALU_OP;     reg [4:0] ALU_OP;                //ALU_OP: 5b,算术逻辑运算部件ALU功能控制码;     output [2:0] GR_address; reg [2:0] GR_address;            //GR_address:3b,通用寄存器GR地址;     output [2:0] mux_DB_sel; reg [2:0] mux_DB_sel;            //mux_DB_sel:3位,通向数据总线DB的八选一开关控制;     output mux_AB_sel;       reg mux_AB_sel;                  //mux_AB_sel:1位,通向地址总线AB的二选一开关控制;     output RD;               reg RD;                          //RD: 1位,存储器读控制

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -