//
// Written by Synplify Pro 
// Product Version "Q-2020.03G-Beta1"
// Program "Synplify Pro", Mapper "mapgw, Build 1618R"
// Tue May 26 09:34:32 2020
//
// Source file index table:
// Object locations will have the form <file>:<line>
// file 0 "\e:\gowin\gowin_v1.9.5.02beta\synplifypro\lib\generic\gw2a.v "
// file 1 "\e:\gowin\gowin_v1.9.5.02beta\synplifypro\lib\vlog\hypermods.v "
// file 2 "\e:\gowin\gowin_v1.9.5.02beta\synplifypro\lib\vlog\umr_capim.v "
// file 3 "\e:\gowin\gowin_v1.9.5.02beta\synplifypro\lib\vlog\scemi_objects.v "
// file 4 "\e:\gowin\gowin_v1.9.5.02beta\synplifypro\lib\vlog\scemi_pipes.svh "
// file 5 "\e:\gowin\gowin_v1.9.5.02beta\ide\ipcore\ddr3\data\ddr3_1_2code.v "
// file 6 "\f:\gwip_test\refdesign_sdc\ddr_psram_refdesign\new_ref_design_v1_9_5_02\gowin_ddr3_memory_interface_refdesign\ddr3_mc_phy_1vs2_2a55k\project\src\ddr3_memory_interface\temp\ddr3\ddr3_name.v "
// file 7 "\f:\gwip_test\refdesign_sdc\ddr_psram_refdesign\new_ref_design_v1_9_5_02\gowin_ddr3_memory_interface_refdesign\ddr3_mc_phy_1vs2_2a55k\project\src\ddr3_memory_interface\temp\ddr3\gwmc_param.v "
// file 8 "\e:\gowin\gowin_v1.9.5.02beta\ide\ipcore\ddr3\data\gwmc_local_param.v "
// file 9 "\f:\gwip_test\refdesign_sdc\ddr_psram_refdesign\new_ref_design_v1_9_5_02\gowin_ddr3_memory_interface_refdesign\ddr3_mc_phy_1vs2_2a55k\project\src\ddr3_memory_interface\temp\ddr3\ddr3_define.v "
// file 10 "\f:\gwip_test\refdesign_sdc\ddr_psram_refdesign\new_ref_design_v1_9_5_02\gowin_ddr3_memory_interface_refdesign\ddr3_mc_phy_1vs2_2a55k\project\src\ddr3_memory_interface\temp\ddr3\ddr3_pll_config.v "
// file 11 "\e:\gowin\gowin_v1.9.5.02beta\ide\ipcore\ddr3\data\ddr3_top.v "
// file 12 "\e:\gowin\gowin_v1.9.5.02beta\synplifypro\lib\nlconst.dat "

`timescale 100 ps/100 ps
`pragma protect begin_protected
`pragma protect version=1
`pragma protect author="default"
`pragma protect author_info="default"
`pragma protect encrypt_agent="Synplify encryptP1735.pl"
`pragma protect encrypt_agent_info="Synplify encryptP1735.pl Version 1.1"

`pragma protect encoding=(enctype="base64", line_length=76, bytes=256)
`pragma protect key_keyowner="Synplicity"
`pragma protect key_keyname="SYNP05_001"
`pragma protect key_method="rsa"
`pragma protect key_block
MzqsvMUIVVOLJl+apoXGO5epObc0fQoVesf3zQywq77QTj0NdhgHDZtnV1oPGZNeSgJeNqAG7EpN
3o7ivGJ8Vuw/iq07Ot3dhOR+z7Q7sXU4wIWJPxUKoxnT7nGVIKg0V3Dd3n4BiwXdxRHKohF/J+wF
+zrrJ9Wf6LgAznRVSMyQZSERhJM8R2iNV+A87utRsdonKrpnBHrt6Tmq09E96FtV0WV33tHNtGHa
blBving0OzTNimork2erY2mb3eBivWltTa2sJ6VfEXYAcSjJP1RyZFEo2mXfSQWvuGSNto68dJl6
nmtYV/54GVVoBniPqMFVpE1QHCYGQ7/CNC4UvA==

`pragma protect encoding=(enctype="base64", line_length=76, bytes=256)
`pragma protect key_keyowner="GoWin"
`pragma protect key_keyname="GoWin2016"
`pragma protect key_method="rsa"
`pragma protect key_block
UtjPPl9IOs/ZjRIOjp1vqg88SwPKPSdLLVw4dSILWp9ljwxgiicngpNOWhLUyiQzM4tRAAr9LKAu
iMRUNZNv1nYsH83Ou38iJsOnAtYK0BNuuKYLETKokotSxATS+vK5921AYOKs9I5T0nc9eXJ9WdmD
mh0xRHxDU4VNcR5PCU/4LOgXIygUO0hwj/qc6siPMJYsymS6oqvyeUBv81o6TO8QLFGCTLwdAayk
AqhM6NLd0SlrUPPOZi4vuXbvyfTRxOjpVlHIqWrhOiU6HSuGTMdf+ipUm5jXZeAjHg4B+YfWN+9b
bm+7YCRakk8nb4Mt9PAH5j1z2uSYA4O5wLd94Q==

`pragma protect data_keyowner="default-ip-vendor"
`pragma protect data_keyname="default-ip-key"
`pragma protect data_method="aes128-cbc"
`pragma protect encoding=(enctype="base64", line_length=76, bytes=586688)
`pragma protect data_block
[encoded data, 782252 characters]
`pragma protect end_protected
module DDR3_Memory_Interface_Top (
  clk,
  rst_n,
  app_burst_number,
  cmd_ready,
  cmd,
  cmd_en,
  addr,
  wr_data_rdy,
  wr_data,
  wr_data_en,
  wr_data_end,
  wr_data_mask,
  rd_data,
  rd_data_valid,
  rd_data_end,
  sr_req,
  ref_req,
  sr_ack,
  ref_ack,
  init_calib_complete,
  clk_out,
  ddr_rst,
  burst,
  O_ddr_addr,
  O_ddr_ba,
  O_ddr_cs_n,
  O_ddr_ras_n,
  O_ddr_cas_n,
  O_ddr_we_n,
  O_ddr_clk,
  O_ddr_clk_n,
  O_ddr_cke,
  O_ddr_odt,
  O_ddr_reset_n,
  O_ddr_dqm,
  IO_ddr_dq,
  IO_ddr_dqs,
  IO_ddr_dqs_n
)
;

/*  Synopsys
.origName=DDR3_Memory_Interface_Top
.langParams="DRAM_TYPE nCK_PER_CLK tCK REG_CTRL DQ_WIDTH DRAM_WIDTH ECC RANK_WIDTH BANK_WIDTH ROW_WIDTH COL_WIDTH tRP tRRD tRTP tRCD tRC tRAS tFAW tWTR tCKE tREFI tRFC tDLLK BURST_MODE BURST_TYPE CL CWL AL WR_CYC SLOT_0_CONFIG SLOT_1_CONFIG RTT_NOM RTT_WR USER_REFRESH ADDR_CMD_MODE OUTPUT_DRV"
DRAM_TYPE="DDR3"
nCK_PER_CLK=2
tCK=3333
REG_CTRL="OFF"
DQ_WIDTH=16
DRAM_WIDTH=8
ECC="OFF"
RANK_WIDTH=1
BANK_WIDTH=3
ROW_WIDTH=15
COL_WIDTH=10
tRP=12500
tRRD=7500
tRTP=7500
tRCD=12500
tRC=5500
tRAS=37500
tFAW=40000
tWTR=7500
tCKE=75000
tREFI=7800000
tRFC=160000
tDLLK=512
BURST_MODE="4"
BURST_TYPE="SEQ"
CL=11
CWL=5
AL="0"
WR_CYC=6
SLOT_0_CONFIG=8'b00000001
SLOT_1_CONFIG=8'b00000000
RTT_NOM="40"
RTT_WR="OFF"
USER_REFRESH="OFF"
ADDR_CMD_MODE="1T"
OUTPUT_DRV="LOW"
 */
input clk ;
input rst_n ;
input [5:0] app_burst_number ;
output cmd_ready ;
input [2:0] cmd ;
input cmd_en ;
input [28:0] addr ;
output wr_data_rdy ;
input [63:0] wr_data ;
input wr_data_en ;
input wr_data_end ;
input [7:0] wr_data_mask ;
output [63:0] rd_data ;
output rd_data_valid ;
output rd_data_end ;
input sr_req ;
input ref_req ;
output sr_ack ;
output ref_ack ;
output init_calib_complete ;
output clk_out ;
output ddr_rst ;
input burst ;
output [14:0] O_ddr_addr ;
output [2:0] O_ddr_ba ;
output O_ddr_cs_n ;
output O_ddr_ras_n ;
output O_ddr_cas_n ;
output O_ddr_we_n ;
output O_ddr_clk ;
output O_ddr_clk_n ;
output O_ddr_cke ;
output O_ddr_odt ;
output O_ddr_reset_n ;
output [1:0] O_ddr_dqm /* synthesis syn_tristate = 1 */ ;
inout [15:0] IO_ddr_dq /* synthesis syn_tristate = 1 */ ;
inout [1:0] IO_ddr_dqs /* synthesis syn_tristate = 1 */ ;
inout [1:0] IO_ddr_dqs_n /* synthesis syn_tristate = 1 */ ;
wire clk ;
wire rst_n ;
wire cmd_ready ;
wire cmd_en ;
wire wr_data_rdy ;
wire wr_data_en ;
wire wr_data_end ;
wire rd_data_valid ;
wire rd_data_end ;
wire sr_req ;
wire ref_req ;
wire sr_ack ;
wire ref_ack ;
wire init_calib_complete ;
wire clk_out ;
wire ddr_rst ;
wire burst ;
wire O_ddr_cs_n ;
wire O_ddr_ras_n ;
wire O_ddr_cas_n ;
wire O_ddr_we_n ;
wire O_ddr_clk ;
wire O_ddr_clk_n ;
wire O_ddr_cke ;
wire O_ddr_odt ;
wire O_ddr_reset_n ;
wire [1:0] \genblk1.un1_gw3mc_top_3 ;
wire GND ;
wire VCC ;
  GSR GSR (
	.GSRI(VCC)
);
// @11:146
  \~gw3_phy_mc.DDR3_Memory_Interface_Top_  \genblk1.gw3mc_top  (
	.clk(clk),
	.rst_n(rst_n),
	.cmd_ready(cmd_ready),
	.cmd(cmd[2:0]),
	.cmd_en(cmd_en),
	.addr({GND, addr[27:0]}),
	.wr_data_rdy(wr_data_rdy),
	.wr_data(wr_data[63:0]),
	.wr_data_en(wr_data_en),
	.wr_data_end(wr_data_end),
	.wr_data_mask(wr_data_mask[7:0]),
	.rd_data(rd_data[63:0]),
	.rd_data_valid(rd_data_valid),
	.rd_data_end(rd_data_end),
	.sr_req(sr_req),
	.ref_req(GND),
	.sr_act(sr_ack),
	.ref_ack(ref_ack),
	.init_calib_complete(init_calib_complete),
	.clk_out(clk_out),
	.ecc_err(\genblk1.un1_gw3mc_top_3 [1:0]),
	.burst(burst),
	.ddr_rst(ddr_rst),
	.O_ddr_addr(O_ddr_addr[14:0]),
	.O_ddr_ba(O_ddr_ba[2:0]),
	.O_ddr_cs_n(O_ddr_cs_n),
	.O_ddr_ras_n(O_ddr_ras_n),
	.O_ddr_cas_n(O_ddr_cas_n),
	.O_ddr_we_n(O_ddr_we_n),
	.O_ddr_clk(O_ddr_clk),
	.O_ddr_clk_n(O_ddr_clk_n),
	.O_ddr_cke(O_ddr_cke),
	.O_ddr_odt(O_ddr_odt),
	.O_ddr_reset_n(O_ddr_reset_n),
	.O_ddr_dqm(O_ddr_dqm[1:0]),
	.IO_ddr_dq(IO_ddr_dq[15:0]),
	.IO_ddr_dqs(IO_ddr_dqs[1:0]),
	.IO_ddr_dqs_n(IO_ddr_dqs_n[1:0])
);
  GND GND_cZ (
	.G(GND)
);
  VCC VCC_cZ (
	.V(VCC)
);
endmodule /* DDR3_Memory_Interface_Top */

