diff options
Diffstat (limited to 'tests/simple/usb_phy_tests.v')
-rw-r--r-- | tests/simple/usb_phy_tests.v | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/simple/usb_phy_tests.v b/tests/simple/usb_phy_tests.v new file mode 100644 index 000000000..bc45e71a5 --- /dev/null +++ b/tests/simple/usb_phy_tests.v @@ -0,0 +1,36 @@ + +// from usb_rx_phy +module usb_phy_test01(clk, rst, rx_en, fs_ce); + +input clk, rst; +input rx_en; +output reg fs_ce; +reg [1:0] dpll_next_state; +reg [1:0] dpll_state; + +always @(posedge clk) + dpll_state <= rst ? 0 : dpll_next_state; + +always @* + begin + fs_ce = 1'b0; + case(dpll_state) + 2'h0: + if(rx_en) dpll_next_state = 2'h0; + else dpll_next_state = 2'h1; + 2'h1:begin + fs_ce = 1'b1; + if(rx_en) dpll_next_state = 2'h3; + else dpll_next_state = 2'h2; + end + 2'h2: + if(rx_en) dpll_next_state = 2'h0; + else dpll_next_state = 2'h3; + 2'h3: + if(rx_en) dpll_next_state = 2'h0; + else dpll_next_state = 2'h0; + endcase + end + +endmodule + |