blob: 2b4d1c058cfa427586f52720dd56ca81794831c5 [file] [log] [blame] [edit]
// ========== Copyright Header Begin ==========================================
//
// OpenSPARC T1 Processor File: ctu_clsp_cmpgif.v
// Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
// DO NOT ALTER OR REMOVE COPYRIGHT NOTICES.
//
// The above named program is free software; you can redistribute it and/or
// modify it under the terms of the GNU General Public
// License version 2 as published by the Free Software Foundation.
//
// The above named program is distributed in the hope that it will be
// useful, but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
// General Public License for more details.
//
// You should have received a copy of the GNU General Public
// License along with this work; if not, write to the Free Software
// Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
//
// ========== Copyright Header End ============================================
//
// Cluster Name: CTU
// Unit Name: ctu_clsp_dramif
//
//-----------------------------------------------------------------------------
`include "sys.h"
module ctu_clsp_cmpgif(/*AUTOARG*/
// Outputs
cmp_grst_out_l, cmp_arst_l, cmp_gdbginit_out_l, cmp_adbginit_l,
ctu_dram_tx_sync_out, ctu_dram_rx_sync_out, ctu_jbus_tx_sync_out,
ctu_jbus_rx_sync_out, ctu_ccx_cmp_cken, ctu_dram02_cmp_cken,
ctu_dram13_cmp_cken, ctu_fpu_cmp_cken, ctu_iob_cmp_cken,
ctu_jbi_cmp_cken, ctu_scdata0_cmp_cken, ctu_scdata1_cmp_cken,
ctu_scdata2_cmp_cken, ctu_scdata3_cmp_cken, ctu_sctag0_cmp_cken,
ctu_sctag1_cmp_cken, ctu_sctag2_cmp_cken, ctu_sctag3_cmp_cken,
ctu_sparc0_cmp_cken, ctu_sparc1_cmp_cken, ctu_sparc2_cmp_cken,
ctu_sparc3_cmp_cken, ctu_sparc4_cmp_cken, ctu_sparc5_cmp_cken,
ctu_sparc6_cmp_cken, ctu_sparc7_cmp_cken,
// Inputs
io_pwron_rst_l, cmp_gclk, start_clk_cl, cmp_grst_cl_l,
cmp_dbginit_cl_l, ctu_dram_tx_sync_cl, ctu_dram_rx_sync_cl,
ctu_jbus_tx_sync_cl, ctu_jbus_rx_sync_cl, ctu_ccx_cmp_cken_cg,
ctu_dram02_cmp_cken_cg, ctu_dram13_cmp_cken_cg, ctu_fpu_cmp_cken_cg,
ctu_iob_cmp_cken_cg, ctu_jbi_cmp_cken_cg, ctu_scdata0_cmp_cken_cg,
ctu_scdata1_cmp_cken_cg, ctu_scdata2_cmp_cken_cg,
ctu_scdata3_cmp_cken_cg, ctu_sctag0_cmp_cken_cg,
ctu_sctag1_cmp_cken_cg, ctu_sctag2_cmp_cken_cg,
ctu_sctag3_cmp_cken_cg, ctu_sparc0_cmp_cken_cg,
ctu_sparc1_cmp_cken_cg, ctu_sparc2_cmp_cken_cg,
ctu_sparc3_cmp_cken_cg, ctu_sparc4_cmp_cken_cg,
ctu_sparc5_cmp_cken_cg, ctu_sparc6_cmp_cken_cg,
ctu_sparc7_cmp_cken_cg
);
input io_pwron_rst_l;
input cmp_gclk;
input start_clk_cl;
input cmp_grst_cl_l;
input cmp_dbginit_cl_l;
input ctu_dram_tx_sync_cl;
input ctu_dram_rx_sync_cl;
input ctu_jbus_tx_sync_cl;
input ctu_jbus_rx_sync_cl;
input ctu_ccx_cmp_cken_cg;
input ctu_dram02_cmp_cken_cg;
input ctu_dram13_cmp_cken_cg;
input ctu_fpu_cmp_cken_cg;
input ctu_iob_cmp_cken_cg;
input ctu_jbi_cmp_cken_cg;
input ctu_scdata0_cmp_cken_cg;
input ctu_scdata1_cmp_cken_cg;
input ctu_scdata2_cmp_cken_cg;
input ctu_scdata3_cmp_cken_cg;
input ctu_sctag0_cmp_cken_cg;
input ctu_sctag1_cmp_cken_cg;
input ctu_sctag2_cmp_cken_cg;
input ctu_sctag3_cmp_cken_cg;
input ctu_sparc0_cmp_cken_cg;
input ctu_sparc1_cmp_cken_cg;
input ctu_sparc2_cmp_cken_cg;
input ctu_sparc3_cmp_cken_cg;
input ctu_sparc4_cmp_cken_cg;
input ctu_sparc5_cmp_cken_cg;
input ctu_sparc6_cmp_cken_cg;
input ctu_sparc7_cmp_cken_cg;
output cmp_grst_out_l;
output cmp_arst_l;
output cmp_gdbginit_out_l;
output cmp_adbginit_l;
output ctu_dram_tx_sync_out;
output ctu_dram_rx_sync_out;
output ctu_jbus_tx_sync_out;
output ctu_jbus_rx_sync_out;
output ctu_ccx_cmp_cken;
output ctu_dram02_cmp_cken;
output ctu_dram13_cmp_cken;
output ctu_fpu_cmp_cken;
output ctu_iob_cmp_cken;
output ctu_jbi_cmp_cken;
output ctu_scdata0_cmp_cken;
output ctu_scdata1_cmp_cken;
output ctu_scdata2_cmp_cken;
output ctu_scdata3_cmp_cken;
output ctu_sctag0_cmp_cken;
output ctu_sctag1_cmp_cken;
output ctu_sctag2_cmp_cken;
output ctu_sctag3_cmp_cken;
output ctu_sparc0_cmp_cken;
output ctu_sparc1_cmp_cken;
output ctu_sparc2_cmp_cken;
output ctu_sparc3_cmp_cken;
output ctu_sparc4_cmp_cken;
output ctu_sparc5_cmp_cken;
output ctu_sparc6_cmp_cken;
output ctu_sparc7_cmp_cken;
wire start_clk_cg;
// -----------------------------------------
//
// Global signals
//
// -----------------------------------------
assign cmp_arst_l = io_pwron_rst_l ;
assign cmp_adbginit_l = io_pwron_rst_l ;
dffrl_async_ns u_start_clk_cg(
.din (start_clk_cl),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (start_clk_cg));
dffrl_async_ns u_cmp_grst_l(
.din (cmp_grst_cl_l & start_clk_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (cmp_grst_out_l));
dffrl_async_ns u_cmp_dbginit_l(
.din (cmp_dbginit_cl_l & start_clk_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (cmp_gdbginit_out_l));
dffrl_async_ns u_ctu_dram_rx_sync_cl(
.din (ctu_dram_rx_sync_cl),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_dram_rx_sync_out));
dffrl_async_ns u_ctu_dram_tx_sync_cl(
.din (ctu_dram_tx_sync_cl),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_dram_tx_sync_out));
dffrl_async_ns u_ctu_jbus_rx_sync_cl(
.din (ctu_jbus_rx_sync_cl),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_jbus_rx_sync_out));
dffrl_async_ns u_ctu_jbus_tx_sync_cl(
.din (ctu_jbus_tx_sync_cl),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_jbus_tx_sync_out));
dffrl_async_ns u_ctu_sparc0_cmp_cken_nsr(
.din (ctu_sparc0_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sparc0_cmp_cken));
dffrl_async_ns u_ctu_sparc1_cmp_cken_nsr(
.din (ctu_sparc1_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sparc1_cmp_cken));
dffrl_async_ns u_ctu_sparc2_cmp_cken_nsr(
.din (ctu_sparc2_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sparc2_cmp_cken));
dffrl_async_ns u_ctu_sparc3_cmp_cken_nsr(
.din (ctu_sparc3_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sparc3_cmp_cken));
dffrl_async_ns u_ctu_sparc4_cmp_cken_nsr(
.din (ctu_sparc4_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sparc4_cmp_cken));
dffrl_async_ns u_ctu_sparc5_cmp_cken_nsr(
.din (ctu_sparc5_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sparc5_cmp_cken));
dffrl_async_ns u_ctu_sparc6_cmp_cken_nsr(
.din (ctu_sparc6_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sparc6_cmp_cken));
dffrl_async_ns u_ctu_sparc7_cmp_cken_nsr(
.din (ctu_sparc7_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sparc7_cmp_cken));
dffrl_async_ns u_ctu_scdata0_cmp_cken_nsr(
.din (ctu_scdata0_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_scdata0_cmp_cken));
dffrl_async_ns u_ctu_scdata1_cmp_cken_nsr(
.din (ctu_scdata1_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_scdata1_cmp_cken));
dffrl_async_ns u_ctu_scdata2_cmp_cken_nsr(
.din (ctu_scdata2_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_scdata2_cmp_cken));
dffrl_async_ns u_ctu_scdata3_cmp_cken_nsr(
.din (ctu_scdata3_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_scdata3_cmp_cken));
dffrl_async_ns u_ctu_sctag0_cmp_cken_nsr(
.din (ctu_sctag0_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sctag0_cmp_cken));
dffrl_async_ns u_ctu_sctag1_cmp_cken_nsr(
.din (ctu_sctag1_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sctag1_cmp_cken));
dffrl_async_ns u_ctu_sctag2_cmp_cken_nsr(
.din (ctu_sctag2_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sctag2_cmp_cken));
dffrl_async_ns u_ctu_sctag3_cmp_cken_nsr(
.din (ctu_sctag3_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_sctag3_cmp_cken));
dffrl_async_ns u_ctu_ccx_cmp_cken_nsr(
.din (ctu_ccx_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_ccx_cmp_cken));
dffrl_async_ns u_ctu_fpu_cmp_cken_nsr(
.din (ctu_fpu_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_fpu_cmp_cken));
dffrl_async_ns u_ctu_iob_cmp_cken_nsr(
.din (ctu_iob_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_iob_cmp_cken));
dffrl_async_ns u_ctu_jbi_cmp_cken_nsr(
.din (ctu_jbi_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_jbi_cmp_cken));
dffrl_async_ns u_ctu_dram02_cmp_cken_nsr(
.din (ctu_dram02_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_dram02_cmp_cken));
dffrl_async_ns u_ctu_dram13_cmp_cken_nsr(
.din (ctu_dram13_cmp_cken_cg),
.clk (cmp_gclk),
.rst_l (io_pwron_rst_l),
.q (ctu_dram13_cmp_cken));
endmodule // cmpif
// Local Variables:
// verilog-library-directories:("." "../common/rtl")
// verilog-auto-sense-defines-constant:t
// End: