1 | ///////////////////////////////////////////////////////////////////// |
---|
2 | //// //// |
---|
3 | //// OPB to WISHBONE interface wrapper //// |
---|
4 | //// //// |
---|
5 | //// //// |
---|
6 | //// Author: Rudolf Usselmann //// |
---|
7 | //// rudi@asics.ws //// |
---|
8 | //// //// |
---|
9 | //// //// |
---|
10 | //// Proprietary and Confidential Information of //// |
---|
11 | //// ASICS World Services, LTD //// |
---|
12 | //// //// |
---|
13 | ///////////////////////////////////////////////////////////////////// |
---|
14 | //// //// |
---|
15 | //// Copyright (C) 2000-2004 ASICS World Services, LTD. //// |
---|
16 | //// www.asics.ws //// |
---|
17 | //// info@asics.ws //// |
---|
18 | //// //// |
---|
19 | //// This software is provided under license and contains //// |
---|
20 | //// proprietary and confidential material which are the //// |
---|
21 | //// property of ASICS World Services, LTD. //// |
---|
22 | //// //// |
---|
23 | //// THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY //// |
---|
24 | //// EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED //// |
---|
25 | //// TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS //// |
---|
26 | //// FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL THE AUTHOR //// |
---|
27 | //// OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, //// |
---|
28 | //// INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES //// |
---|
29 | //// (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE //// |
---|
30 | //// GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR //// |
---|
31 | //// BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF //// |
---|
32 | //// LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT //// |
---|
33 | //// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT //// |
---|
34 | //// OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE //// |
---|
35 | //// POSSIBILITY OF SUCH DAMAGE. //// |
---|
36 | //// //// |
---|
37 | ///////////////////////////////////////////////////////////////////// |
---|
38 | |
---|
39 | // $Id: $ |
---|
40 | |
---|
41 | module opb2wb( OPB_Clk, rst, |
---|
42 | |
---|
43 | // OPB Slave Interface (Connect to OPB Master) |
---|
44 | opb_abus, opb_be, opb_dbus, opb_rnw, opb_select, opb_seqaddr, |
---|
45 | sl_dbus, sl_errack, sl_retry, sl_toutsup, sl_xferack, |
---|
46 | |
---|
47 | // WISHBONE Master Interface (Connect to WB Slave) |
---|
48 | wb_data_o, wb_data_i, wb_addr_o, |
---|
49 | wb_cyc_o, wb_stb_o, wb_sel_o, wb_we_o, wb_ack_i, wb_err_i, wb_rty_i |
---|
50 | ); |
---|
51 | |
---|
52 | //////////////////////////////////////////////////////////////////// |
---|
53 | // |
---|
54 | // Parameter |
---|
55 | // |
---|
56 | |
---|
57 | parameter C_BASEADDR = 32'h8000_0000, |
---|
58 | C_HIGHADDR = 32'h8000_00ff; |
---|
59 | |
---|
60 | //////////////////////////////////////////////////////////////////// |
---|
61 | // |
---|
62 | // Inputs & Outputs |
---|
63 | // |
---|
64 | |
---|
65 | // -------------------------------------- |
---|
66 | // System IO |
---|
67 | input OPB_Clk; |
---|
68 | input rst; |
---|
69 | |
---|
70 | // -------------------------------------- |
---|
71 | // OPB Slave Interface (Connect to OPB Master) |
---|
72 | input [31:0] opb_abus; |
---|
73 | input [3:0] opb_be; |
---|
74 | input [31:0] opb_dbus; |
---|
75 | input opb_rnw; |
---|
76 | input opb_select; |
---|
77 | input opb_seqaddr; |
---|
78 | |
---|
79 | output [31:0] sl_dbus; |
---|
80 | output sl_errack; |
---|
81 | output sl_retry; |
---|
82 | output sl_toutsup; |
---|
83 | output sl_xferack; |
---|
84 | |
---|
85 | // -------------------------------------- |
---|
86 | // WISHBONE Master Interface (Connect to WB Slave) |
---|
87 | output [31:0] wb_data_o; |
---|
88 | input [31:0] wb_data_i; |
---|
89 | output [31:0] wb_addr_o; |
---|
90 | output wb_cyc_o, wb_stb_o; |
---|
91 | output [3:0] wb_sel_o; |
---|
92 | output wb_we_o; |
---|
93 | input wb_ack_i, wb_err_i, wb_rty_i; |
---|
94 | |
---|
95 | endmodule |
---|
96 | |
---|