Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- `timescale 1ns / 1ps
- //////////////////////////////////////////////////////////////////////////////////
- // Company:
- // Engineer:
- //
- // Create Date: 01:56:55 11/12/2015
- // Design Name:
- // Module Name: rotary_glitech
- // Project Name:
- // Target Devices:
- // Tool versions:
- // Description:
- //
- // Dependencies:
- //
- // Revision:
- // Revision 0.01 - File Created
- // Additional Comments:
- //
- //////////////////////////////////////////////////////////////////////////////////
- module rotary_glitech(
- input ROT_X,
- output reg ROT_X_FREE,
- input rst
- );
- parameter
- zero = 2'd0,
- wait_one = 2'd1,
- one = 2'd2,
- wait_zero = 2'd3;
- reg[1:0] state = 2'b00;
- always@(posedge rst) begin
- ROT_X_FREE = 1'b0;
- state = zero;
- end
- always@* begin
- case(state)
- zero:
- begin
- ROT_X_FREE <= 0;
- state <= wait_one;
- end
- wait_one:
- begin
- #10
- if(!ROT_X)
- state = zero;
- else
- state = one;
- end
- one:
- begin
- ROT_X_FREE = 1;
- state = wait_zero;
- end
- wait_zero:
- begin
- #10
- if(!ROT_X)
- state = zero;
- end
- endcase
- end
- endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement