comparison venus/src/usb/usb_domain_buf.v @ 24:4722b265cb8c

Venus src: USB domain captured
author Mychaela Falconia <falcon@freecalypso.org>
date Sat, 20 Nov 2021 19:44:59 +0000
parents
children
comparison
equal deleted inserted replaced
23:9f70dc110ad7 24:4722b265cb8c
1 /*
2 * This module encapsulates the 74LVC541A buffer in the USB domain.
3 */
4
5 module usb_domain_buf (GND, P_3V3,
6 Int_TxD, Int_RxD, Int_RTS, Int_CTS,
7 Int_DTR, Int_DCD, Int_RI, Int_TxD2, Int_RxD2,
8 Host_TxD, Host_RxD, Host_RTS, Host_CTS,
9 Host_DTR, Host_DCD, Host_RI, Host_TxD2, Host_RxD2);
10
11 input GND, P_3V3;
12
13 input Int_TxD, Int_RTS, Int_DTR, Int_TxD2;
14 output Int_RxD, Int_CTS, Int_DCD, Int_RI, Int_RxD2;
15
16 output Host_TxD, Host_RTS, Host_DTR, Host_TxD2;
17 input Host_RxD, Host_CTS, Host_DCD, Host_RI, Host_RxD2;
18
19 /* buffer common part */
20
21 x541_common common (.Vcc(P_3V3),
22 .GND(GND),
23 .nOE1(GND),
24 .nOE2(GND)
25 );
26
27 capacitor bypass_cap (P_3V3, GND);
28
29 /* input buffers */
30
31 buffer_slot_basic buf_RxD (.A(Host_RxD), .Y(Int_RxD));
32 buffer_slot_basic buf_CTS (.A(Host_CTS), .Y(Int_CTS));
33 buffer_slot_basic buf_DCD (.A(Host_DCD), .Y(Int_DCD));
34 buffer_slot_basic buf_RI (.A(Host_RI), .Y(Int_RI));
35 buffer_slot_basic buf_RxD2 (.A(Host_RxD2), .Y(Int_RxD2));
36
37 /* output buffers */
38
39 buffer_slot_basic buf_TxD (.A(Int_TxD), .Y(Host_TxD));
40 buffer_slot_basic buf_DTR (.A(Int_DTR), .Y(Host_DTR));
41 buffer_slot_basic buf_TxD2 (.A(Int_TxD2), .Y(Host_TxD2));
42
43 /* RTS direct pass-thru: use an 0402 0R jumper */
44 resistor jmp_RTS (Int_RTS, Host_RTS);
45
46 endmodule