clk_gen.v.bak
来自「夏宇闻8位RISC_CPU的完整代码+TESTBENCH(已调试) model」· BAK 代码 · 共 90 行
BAK
90 行
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; //M state<=S2; end S2: begin clk2<=~clk2; clk4<=~clk4; alu_clk<=~alu_clk; //M 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 + =
减小字号Ctrl + -
显示快捷键?