../src/lowrisc_ip_usb_fs_nb_pe_0.1/rtl/usb_fs_tx_mux.sv Cov: 100%
1: // Copyright lowRISC contributors.
2: // Copyright ETH Zurich.
3: // Copyright Luke Valenty (TinyFPGA project, https://github.com/tinyfpga/TinyFPGA-Bootloader).
4: // Licensed under the Apache License, Version 2.0, see LICENSE for details.
5: // SPDX-License-Identifier: Apache-2.0
6:
7: module usb_fs_tx_mux (
8: // interface to IN Protocol Engine
9: input logic in_tx_pkt_start_i,
10: input logic [3:0] in_tx_pid_i,
11:
12: // interface to OUT Protocol Engine
13: input logic out_tx_pkt_start_i,
14: input logic [3:0] out_tx_pid_i,
15:
16: // interface to tx module
17: output logic tx_pkt_start_o,
18: output logic [3:0] tx_pid_o
19: );
20:
21: assign tx_pkt_start_o = in_tx_pkt_start_i | out_tx_pkt_start_i;
22: assign tx_pid_o = out_tx_pkt_start_i ? out_tx_pid_i : in_tx_pid_i;
23:
24: endmodule
25: