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

📄 clk_gen.v

📁 精简CPU设计
💻 V
字号:
module clk_gen(clk,reset,clk1,clk2,clk4,fetch,alu_clk);    input clk,reset;    output clk1,clk2,clk4,fetch,alu_clk;    wire clk;    reg clk2,clk4,fetch,alu_clk;    reg[7:0] state;    parameter  S1=8'b0000_0001,               S2=8'b0000_0010,               S3=8'b0000_0100,               S4=8'b0000_1000,               S5=8'b0001_0000,               S6=8'b0010_0000,               S7=8'b0100_0000,               S8=8'b1000_0000,             idle=8'b0000_0000;                 assign clk1=~clk;        always @(negedge clk)      if(!reset)         begin            clk2<=0;            clk4<=1;            fetch<=0;            alu_clk<=0;            state<=idle;         end      else        begin            case(state)                S1:                    begin                       clk2<=~clk2;                    //   alu_clk<=~alu_clk;                       state<=S2;                    end                S2:                    begin                        clk2<=~clk2;                        clk4<=~clk4;                      //  alu_clk<=~alu_clk;                        state<=S3;                    end                S3:                    begin                        clk2<=~clk2;                        state<=S4;                    end                S4:                    begin                        clk2<=~clk2;                        clk4<=~clk4;                        fetch<=~fetch;                        state<=S5;                    end                S5:                    begin                        clk2<=~clk2;                        state<=S6;                                            end                S6:                    begin                        clk2<=~clk2;                        clk4<=~clk4;                        alu_clk<=~alu_clk;                        state<=S7;                    end                S7:                    begin                        clk2<=~clk2;                        state<=S8;                        alu_clk<=~alu_clk;                    end                S8:                    begin                        clk2<=~clk2;                        clk4<=~clk4;                        fetch<=~fetch;                        state<=S1;                    end                idle: state<=S1;                default: state<=idle;                           endcase       endendmodule                                                

⌨️ 快捷键说明

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