URL
https://opencores.org/ocsvn/amber/amber/trunk
Subversion Repositories amber
[/] [amber/] [trunk/] [hw/] [vlog/] [lib/] [xs6_sram_2048x32_byte_en.v] - Rev 2
Compare with Previous | Blame | View Log
////////////////////////////////////////////////////////////////// // // // Wrapper for Xilinx Spartan-6 RAM Block // // // // This file is part of the Amber project // // http://www.opencores.org/project,amber // // // // Description // // 2048 words x 32 bits with a per byte write enable // // // // Author(s): // // - Conor Santifort, csantifort.amber@gmail.com // // // ////////////////////////////////////////////////////////////////// // // // Copyright (C) 2010 Authors and OPENCORES.ORG // // // // This source file may be used and distributed without // // restriction provided that this copyright statement is not // // removed from the file and that any derivative work contains // // the original copyright notice and the associated disclaimer. // // // // This source file is free software; you can redistribute it // // and/or modify it under the terms of the GNU Lesser General // // Public License as published by the Free Software Foundation; // // either version 2.1 of the License, or (at your option) any // // later version. // // // // This source 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 Lesser General Public License for more // // details. // // // // You should have received a copy of the GNU Lesser General // // Public License along with this source; if not, download it // // from http://www.opencores.org/lgpl.shtml // // // ////////////////////////////////////////////////////////////////// module xs6_sram_2048x32_byte_en #( parameter SRAM0_INIT_0 = 256'h0, parameter SRAM0_INIT_1 = 256'h0, parameter SRAM0_INIT_2 = 256'h0, parameter SRAM0_INIT_3 = 256'h0, parameter SRAM0_INIT_4 = 256'h0, parameter SRAM0_INIT_5 = 256'h0, parameter SRAM0_INIT_6 = 256'h0, parameter SRAM0_INIT_7 = 256'h0, parameter SRAM0_INIT_8 = 256'h0, parameter SRAM0_INIT_9 = 256'h0, parameter SRAM0_INIT_10 = 256'h0, parameter SRAM0_INIT_11 = 256'h0, parameter SRAM0_INIT_12 = 256'h0, parameter SRAM0_INIT_13 = 256'h0, parameter SRAM0_INIT_14 = 256'h0, parameter SRAM0_INIT_15 = 256'h0, parameter SRAM0_INIT_16 = 256'h0, parameter SRAM0_INIT_17 = 256'h0, parameter SRAM0_INIT_18 = 256'h0, parameter SRAM0_INIT_19 = 256'h0, parameter SRAM0_INIT_20 = 256'h0, parameter SRAM0_INIT_21 = 256'h0, parameter SRAM0_INIT_22 = 256'h0, parameter SRAM0_INIT_23 = 256'h0, parameter SRAM0_INIT_24 = 256'h0, parameter SRAM0_INIT_25 = 256'h0, parameter SRAM0_INIT_26 = 256'h0, parameter SRAM0_INIT_27 = 256'h0, parameter SRAM0_INIT_28 = 256'h0, parameter SRAM0_INIT_29 = 256'h0, parameter SRAM0_INIT_30 = 256'h0, parameter SRAM0_INIT_31 = 256'h0, parameter SRAM0_INIT_32 = 256'h0, parameter SRAM0_INIT_33 = 256'h0, parameter SRAM0_INIT_34 = 256'h0, parameter SRAM0_INIT_35 = 256'h0, parameter SRAM0_INIT_36 = 256'h0, parameter SRAM0_INIT_37 = 256'h0, parameter SRAM0_INIT_38 = 256'h0, parameter SRAM0_INIT_39 = 256'h0, parameter SRAM0_INIT_40 = 256'h0, parameter SRAM0_INIT_41 = 256'h0, parameter SRAM0_INIT_42 = 256'h0, parameter SRAM0_INIT_43 = 256'h0, parameter SRAM0_INIT_44 = 256'h0, parameter SRAM0_INIT_45 = 256'h0, parameter SRAM0_INIT_46 = 256'h0, parameter SRAM0_INIT_47 = 256'h0, parameter SRAM0_INIT_48 = 256'h0, parameter SRAM0_INIT_49 = 256'h0, parameter SRAM0_INIT_50 = 256'h0, parameter SRAM0_INIT_51 = 256'h0, parameter SRAM0_INIT_52 = 256'h0, parameter SRAM0_INIT_53 = 256'h0, parameter SRAM0_INIT_54 = 256'h0, parameter SRAM0_INIT_55 = 256'h0, parameter SRAM0_INIT_56 = 256'h0, parameter SRAM0_INIT_57 = 256'h0, parameter SRAM0_INIT_58 = 256'h0, parameter SRAM0_INIT_59 = 256'h0, parameter SRAM0_INIT_60 = 256'h0, parameter SRAM0_INIT_61 = 256'h0, parameter SRAM0_INIT_62 = 256'h0, parameter SRAM0_INIT_63 = 256'h0, parameter SRAM1_INIT_0 = 256'h0, parameter SRAM1_INIT_1 = 256'h0, parameter SRAM1_INIT_2 = 256'h0, parameter SRAM1_INIT_3 = 256'h0, parameter SRAM1_INIT_4 = 256'h0, parameter SRAM1_INIT_5 = 256'h0, parameter SRAM1_INIT_6 = 256'h0, parameter SRAM1_INIT_7 = 256'h0, parameter SRAM1_INIT_8 = 256'h0, parameter SRAM1_INIT_9 = 256'h0, parameter SRAM1_INIT_10 = 256'h0, parameter SRAM1_INIT_11 = 256'h0, parameter SRAM1_INIT_12 = 256'h0, parameter SRAM1_INIT_13 = 256'h0, parameter SRAM1_INIT_14 = 256'h0, parameter SRAM1_INIT_15 = 256'h0, parameter SRAM1_INIT_16 = 256'h0, parameter SRAM1_INIT_17 = 256'h0, parameter SRAM1_INIT_18 = 256'h0, parameter SRAM1_INIT_19 = 256'h0, parameter SRAM1_INIT_20 = 256'h0, parameter SRAM1_INIT_21 = 256'h0, parameter SRAM1_INIT_22 = 256'h0, parameter SRAM1_INIT_23 = 256'h0, parameter SRAM1_INIT_24 = 256'h0, parameter SRAM1_INIT_25 = 256'h0, parameter SRAM1_INIT_26 = 256'h0, parameter SRAM1_INIT_27 = 256'h0, parameter SRAM1_INIT_28 = 256'h0, parameter SRAM1_INIT_29 = 256'h0, parameter SRAM1_INIT_30 = 256'h0, parameter SRAM1_INIT_31 = 256'h0, parameter SRAM1_INIT_32 = 256'h0, parameter SRAM1_INIT_33 = 256'h0, parameter SRAM1_INIT_34 = 256'h0, parameter SRAM1_INIT_35 = 256'h0, parameter SRAM1_INIT_36 = 256'h0, parameter SRAM1_INIT_37 = 256'h0, parameter SRAM1_INIT_38 = 256'h0, parameter SRAM1_INIT_39 = 256'h0, parameter SRAM1_INIT_40 = 256'h0, parameter SRAM1_INIT_41 = 256'h0, parameter SRAM1_INIT_42 = 256'h0, parameter SRAM1_INIT_43 = 256'h0, parameter SRAM1_INIT_44 = 256'h0, parameter SRAM1_INIT_45 = 256'h0, parameter SRAM1_INIT_46 = 256'h0, parameter SRAM1_INIT_47 = 256'h0, parameter SRAM1_INIT_48 = 256'h0, parameter SRAM1_INIT_49 = 256'h0, parameter SRAM1_INIT_50 = 256'h0, parameter SRAM1_INIT_51 = 256'h0, parameter SRAM1_INIT_52 = 256'h0, parameter SRAM1_INIT_53 = 256'h0, parameter SRAM1_INIT_54 = 256'h0, parameter SRAM1_INIT_55 = 256'h0, parameter SRAM1_INIT_56 = 256'h0, parameter SRAM1_INIT_57 = 256'h0, parameter SRAM1_INIT_58 = 256'h0, parameter SRAM1_INIT_59 = 256'h0, parameter SRAM1_INIT_60 = 256'h0, parameter SRAM1_INIT_61 = 256'h0, parameter SRAM1_INIT_62 = 256'h0, parameter SRAM1_INIT_63 = 256'h0, parameter SRAM2_INIT_0 = 256'h0, parameter SRAM2_INIT_1 = 256'h0, parameter SRAM2_INIT_2 = 256'h0, parameter SRAM2_INIT_3 = 256'h0, parameter SRAM2_INIT_4 = 256'h0, parameter SRAM2_INIT_5 = 256'h0, parameter SRAM2_INIT_6 = 256'h0, parameter SRAM2_INIT_7 = 256'h0, parameter SRAM2_INIT_8 = 256'h0, parameter SRAM2_INIT_9 = 256'h0, parameter SRAM2_INIT_10 = 256'h0, parameter SRAM2_INIT_11 = 256'h0, parameter SRAM2_INIT_12 = 256'h0, parameter SRAM2_INIT_13 = 256'h0, parameter SRAM2_INIT_14 = 256'h0, parameter SRAM2_INIT_15 = 256'h0, parameter SRAM2_INIT_16 = 256'h0, parameter SRAM2_INIT_17 = 256'h0, parameter SRAM2_INIT_18 = 256'h0, parameter SRAM2_INIT_19 = 256'h0, parameter SRAM2_INIT_20 = 256'h0, parameter SRAM2_INIT_21 = 256'h0, parameter SRAM2_INIT_22 = 256'h0, parameter SRAM2_INIT_23 = 256'h0, parameter SRAM2_INIT_24 = 256'h0, parameter SRAM2_INIT_25 = 256'h0, parameter SRAM2_INIT_26 = 256'h0, parameter SRAM2_INIT_27 = 256'h0, parameter SRAM2_INIT_28 = 256'h0, parameter SRAM2_INIT_29 = 256'h0, parameter SRAM2_INIT_30 = 256'h0, parameter SRAM2_INIT_31 = 256'h0, parameter SRAM2_INIT_32 = 256'h0, parameter SRAM2_INIT_33 = 256'h0, parameter SRAM2_INIT_34 = 256'h0, parameter SRAM2_INIT_35 = 256'h0, parameter SRAM2_INIT_36 = 256'h0, parameter SRAM2_INIT_37 = 256'h0, parameter SRAM2_INIT_38 = 256'h0, parameter SRAM2_INIT_39 = 256'h0, parameter SRAM2_INIT_40 = 256'h0, parameter SRAM2_INIT_41 = 256'h0, parameter SRAM2_INIT_42 = 256'h0, parameter SRAM2_INIT_43 = 256'h0, parameter SRAM2_INIT_44 = 256'h0, parameter SRAM2_INIT_45 = 256'h0, parameter SRAM2_INIT_46 = 256'h0, parameter SRAM2_INIT_47 = 256'h0, parameter SRAM2_INIT_48 = 256'h0, parameter SRAM2_INIT_49 = 256'h0, parameter SRAM2_INIT_50 = 256'h0, parameter SRAM2_INIT_51 = 256'h0, parameter SRAM2_INIT_52 = 256'h0, parameter SRAM2_INIT_53 = 256'h0, parameter SRAM2_INIT_54 = 256'h0, parameter SRAM2_INIT_55 = 256'h0, parameter SRAM2_INIT_56 = 256'h0, parameter SRAM2_INIT_57 = 256'h0, parameter SRAM2_INIT_58 = 256'h0, parameter SRAM2_INIT_59 = 256'h0, parameter SRAM2_INIT_60 = 256'h0, parameter SRAM2_INIT_61 = 256'h0, parameter SRAM2_INIT_62 = 256'h0, parameter SRAM2_INIT_63 = 256'h0, parameter SRAM3_INIT_0 = 256'h0, parameter SRAM3_INIT_1 = 256'h0, parameter SRAM3_INIT_2 = 256'h0, parameter SRAM3_INIT_3 = 256'h0, parameter SRAM3_INIT_4 = 256'h0, parameter SRAM3_INIT_5 = 256'h0, parameter SRAM3_INIT_6 = 256'h0, parameter SRAM3_INIT_7 = 256'h0, parameter SRAM3_INIT_8 = 256'h0, parameter SRAM3_INIT_9 = 256'h0, parameter SRAM3_INIT_10 = 256'h0, parameter SRAM3_INIT_11 = 256'h0, parameter SRAM3_INIT_12 = 256'h0, parameter SRAM3_INIT_13 = 256'h0, parameter SRAM3_INIT_14 = 256'h0, parameter SRAM3_INIT_15 = 256'h0, parameter SRAM3_INIT_16 = 256'h0, parameter SRAM3_INIT_17 = 256'h0, parameter SRAM3_INIT_18 = 256'h0, parameter SRAM3_INIT_19 = 256'h0, parameter SRAM3_INIT_20 = 256'h0, parameter SRAM3_INIT_21 = 256'h0, parameter SRAM3_INIT_22 = 256'h0, parameter SRAM3_INIT_23 = 256'h0, parameter SRAM3_INIT_24 = 256'h0, parameter SRAM3_INIT_25 = 256'h0, parameter SRAM3_INIT_26 = 256'h0, parameter SRAM3_INIT_27 = 256'h0, parameter SRAM3_INIT_28 = 256'h0, parameter SRAM3_INIT_29 = 256'h0, parameter SRAM3_INIT_30 = 256'h0, parameter SRAM3_INIT_31 = 256'h0, parameter SRAM3_INIT_32 = 256'h0, parameter SRAM3_INIT_33 = 256'h0, parameter SRAM3_INIT_34 = 256'h0, parameter SRAM3_INIT_35 = 256'h0, parameter SRAM3_INIT_36 = 256'h0, parameter SRAM3_INIT_37 = 256'h0, parameter SRAM3_INIT_38 = 256'h0, parameter SRAM3_INIT_39 = 256'h0, parameter SRAM3_INIT_40 = 256'h0, parameter SRAM3_INIT_41 = 256'h0, parameter SRAM3_INIT_42 = 256'h0, parameter SRAM3_INIT_43 = 256'h0, parameter SRAM3_INIT_44 = 256'h0, parameter SRAM3_INIT_45 = 256'h0, parameter SRAM3_INIT_46 = 256'h0, parameter SRAM3_INIT_47 = 256'h0, parameter SRAM3_INIT_48 = 256'h0, parameter SRAM3_INIT_49 = 256'h0, parameter SRAM3_INIT_50 = 256'h0, parameter SRAM3_INIT_51 = 256'h0, parameter SRAM3_INIT_52 = 256'h0, parameter SRAM3_INIT_53 = 256'h0, parameter SRAM3_INIT_54 = 256'h0, parameter SRAM3_INIT_55 = 256'h0, parameter SRAM3_INIT_56 = 256'h0, parameter SRAM3_INIT_57 = 256'h0, parameter SRAM3_INIT_58 = 256'h0, parameter SRAM3_INIT_59 = 256'h0, parameter SRAM3_INIT_60 = 256'h0, parameter SRAM3_INIT_61 = 256'h0, parameter SRAM3_INIT_62 = 256'h0, parameter SRAM3_INIT_63 = 256'h0, parameter UNUSED = 1'd1 ) ( input i_clk, input [31:0] i_write_data, input i_write_enable, input [10:0] i_address, input [3:0] i_byte_enable, output [31:0] o_read_data ); wire [3:0] wea; wire [31:0] data_out [3:0]; assign o_read_data = { data_out[3][7:0], data_out[2][7:0], data_out[1][7:0], data_out[0][7:0] }; assign wea = {4{i_write_enable}} & i_byte_enable; RAMB16BWER #( .INIT_00 ( SRAM0_INIT_0 ), .INIT_01 ( SRAM0_INIT_1 ), .INIT_02 ( SRAM0_INIT_2 ), .INIT_03 ( SRAM0_INIT_3 ), .INIT_04 ( SRAM0_INIT_4 ), .INIT_05 ( SRAM0_INIT_5 ), .INIT_06 ( SRAM0_INIT_6 ), .INIT_07 ( SRAM0_INIT_7 ), .INIT_08 ( SRAM0_INIT_8 ), .INIT_09 ( SRAM0_INIT_9 ), .INIT_0A ( SRAM0_INIT_10 ), .INIT_0B ( SRAM0_INIT_11 ), .INIT_0C ( SRAM0_INIT_12 ), .INIT_0D ( SRAM0_INIT_13 ), .INIT_0E ( SRAM0_INIT_14 ), .INIT_0F ( SRAM0_INIT_15 ), .INIT_10 ( SRAM0_INIT_16 ), .INIT_11 ( SRAM0_INIT_17 ), .INIT_12 ( SRAM0_INIT_18 ), .INIT_13 ( SRAM0_INIT_19 ), .INIT_14 ( SRAM0_INIT_20 ), .INIT_15 ( SRAM0_INIT_21 ), .INIT_16 ( SRAM0_INIT_22 ), .INIT_17 ( SRAM0_INIT_23 ), .INIT_18 ( SRAM0_INIT_24 ), .INIT_19 ( SRAM0_INIT_25 ), .INIT_1A ( SRAM0_INIT_26 ), .INIT_1B ( SRAM0_INIT_27 ), .INIT_1C ( SRAM0_INIT_28 ), .INIT_1D ( SRAM0_INIT_29 ), .INIT_1E ( SRAM0_INIT_30 ), .INIT_1F ( SRAM0_INIT_31 ), .INIT_20 ( SRAM0_INIT_32 ), .INIT_21 ( SRAM0_INIT_33 ), .INIT_22 ( SRAM0_INIT_34 ), .INIT_23 ( SRAM0_INIT_35 ), .INIT_24 ( SRAM0_INIT_36 ), .INIT_25 ( SRAM0_INIT_37 ), .INIT_26 ( SRAM0_INIT_38 ), .INIT_27 ( SRAM0_INIT_39 ), .INIT_28 ( SRAM0_INIT_40 ), .INIT_29 ( SRAM0_INIT_41 ), .INIT_2A ( SRAM0_INIT_42 ), .INIT_2B ( SRAM0_INIT_43 ), .INIT_2C ( SRAM0_INIT_44 ), .INIT_2D ( SRAM0_INIT_45 ), .INIT_2E ( SRAM0_INIT_46 ), .INIT_2F ( SRAM0_INIT_47 ), .INIT_30 ( SRAM0_INIT_48 ), .INIT_31 ( SRAM0_INIT_49 ), .INIT_32 ( SRAM0_INIT_50 ), .INIT_33 ( SRAM0_INIT_51 ), .INIT_34 ( SRAM0_INIT_52 ), .INIT_35 ( SRAM0_INIT_53 ), .INIT_36 ( SRAM0_INIT_54 ), .INIT_37 ( SRAM0_INIT_55 ), .INIT_38 ( SRAM0_INIT_56 ), .INIT_39 ( SRAM0_INIT_57 ), .INIT_3A ( SRAM0_INIT_58 ), .INIT_3B ( SRAM0_INIT_59 ), .INIT_3C ( SRAM0_INIT_60 ), .INIT_3D ( SRAM0_INIT_61 ), .INIT_3E ( SRAM0_INIT_62 ), .INIT_3F ( SRAM0_INIT_63 ), .DATA_WIDTH_A ( 9 ), .DATA_WIDTH_B ( 9 ), .DOA_REG ( 0 ), .DOB_REG ( 0 ), .EN_RSTRAM_A ( "FALSE" ), .EN_RSTRAM_B ( "FALSE" ), .SRVAL_A ( 36'h000000000 ), .RSTTYPE ( "SYNC" ), .RST_PRIORITY_A ( "CE" ), .RST_PRIORITY_B ( "CE" ), .SIM_COLLISION_CHECK ( "ALL" ), .SIM_DEVICE ( "SPARTAN6" ), .INIT_A ( 36'h000000000 ), .INIT_B ( 36'h000000000 ), .WRITE_MODE_A ( "READ_FIRST" ), .WRITE_MODE_B ( "READ_FIRST" ), .SRVAL_B ( 36'h000000000 ) ) u_sram0 ( .REGCEA ( 1'd0 ), .CLKA ( i_clk ), .ENB ( 1'd0 ), .RSTB ( 1'd0 ), .CLKB ( 1'd0 ), .REGCEB ( 1'd0 ), .RSTA ( 1'd0 ), .ENA ( 1'd1 ), .DIPA ( 4'd0 ), .WEA ( {wea[3], wea[3], wea[3], wea[3]} ), .DOA ( data_out[3] ), .ADDRA ( {i_address[10:0], 3'd0} ), .ADDRB ( 14'd0 ), .DIB ( 32'd0 ), .DOPA ( ), .DIPB ( 4'd0 ), .DOPB ( ), .DOB ( ), .WEB ( 4'd0 ), .DIA ( {24'd0, i_write_data[31:24]} ) ); RAMB16BWER #( .INIT_00 ( SRAM1_INIT_0 ), .INIT_01 ( SRAM1_INIT_1 ), .INIT_02 ( SRAM1_INIT_2 ), .INIT_03 ( SRAM1_INIT_3 ), .INIT_04 ( SRAM1_INIT_4 ), .INIT_05 ( SRAM1_INIT_5 ), .INIT_06 ( SRAM1_INIT_6 ), .INIT_07 ( SRAM1_INIT_7 ), .INIT_08 ( SRAM1_INIT_8 ), .INIT_09 ( SRAM1_INIT_9 ), .INIT_0A ( SRAM1_INIT_10 ), .INIT_0B ( SRAM1_INIT_11 ), .INIT_0C ( SRAM1_INIT_12 ), .INIT_0D ( SRAM1_INIT_13 ), .INIT_0E ( SRAM1_INIT_14 ), .INIT_0F ( SRAM1_INIT_15 ), .INIT_10 ( SRAM1_INIT_16 ), .INIT_11 ( SRAM1_INIT_17 ), .INIT_12 ( SRAM1_INIT_18 ), .INIT_13 ( SRAM1_INIT_19 ), .INIT_14 ( SRAM1_INIT_20 ), .INIT_15 ( SRAM1_INIT_21 ), .INIT_16 ( SRAM1_INIT_22 ), .INIT_17 ( SRAM1_INIT_23 ), .INIT_18 ( SRAM1_INIT_24 ), .INIT_19 ( SRAM1_INIT_25 ), .INIT_1A ( SRAM1_INIT_26 ), .INIT_1B ( SRAM1_INIT_27 ), .INIT_1C ( SRAM1_INIT_28 ), .INIT_1D ( SRAM1_INIT_29 ), .INIT_1E ( SRAM1_INIT_30 ), .INIT_1F ( SRAM1_INIT_31 ), .INIT_20 ( SRAM1_INIT_32 ), .INIT_21 ( SRAM1_INIT_33 ), .INIT_22 ( SRAM1_INIT_34 ), .INIT_23 ( SRAM1_INIT_35 ), .INIT_24 ( SRAM1_INIT_36 ), .INIT_25 ( SRAM1_INIT_37 ), .INIT_26 ( SRAM1_INIT_38 ), .INIT_27 ( SRAM1_INIT_39 ), .INIT_28 ( SRAM1_INIT_40 ), .INIT_29 ( SRAM1_INIT_41 ), .INIT_2A ( SRAM1_INIT_42 ), .INIT_2B ( SRAM1_INIT_43 ), .INIT_2C ( SRAM1_INIT_44 ), .INIT_2D ( SRAM1_INIT_45 ), .INIT_2E ( SRAM1_INIT_46 ), .INIT_2F ( SRAM1_INIT_47 ), .INIT_30 ( SRAM1_INIT_48 ), .INIT_31 ( SRAM1_INIT_49 ), .INIT_32 ( SRAM1_INIT_50 ), .INIT_33 ( SRAM1_INIT_51 ), .INIT_34 ( SRAM1_INIT_52 ), .INIT_35 ( SRAM1_INIT_53 ), .INIT_36 ( SRAM1_INIT_54 ), .INIT_37 ( SRAM1_INIT_55 ), .INIT_38 ( SRAM1_INIT_56 ), .INIT_39 ( SRAM1_INIT_57 ), .INIT_3A ( SRAM1_INIT_58 ), .INIT_3B ( SRAM1_INIT_59 ), .INIT_3C ( SRAM1_INIT_60 ), .INIT_3D ( SRAM1_INIT_61 ), .INIT_3E ( SRAM1_INIT_62 ), .INIT_3F ( SRAM1_INIT_63 ), .DATA_WIDTH_A ( 9 ), .DATA_WIDTH_B ( 9 ), .DOA_REG ( 0 ), .DOB_REG ( 0 ), .EN_RSTRAM_A ( "FALSE" ), .EN_RSTRAM_B ( "FALSE" ), .SRVAL_A ( 36'h000000000 ), .INITP_00 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_01 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_02 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_03 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_04 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_05 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_06 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_07 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .RSTTYPE ( "SYNC" ), .RST_PRIORITY_A ( "CE" ), .RST_PRIORITY_B ( "CE" ), .SIM_COLLISION_CHECK ( "ALL" ), .SIM_DEVICE ( "SPARTAN6" ), .INIT_A ( 36'h000000000 ), .INIT_B ( 36'h000000000 ), .WRITE_MODE_A ( "READ_FIRST" ), .WRITE_MODE_B ( "READ_FIRST" ), .SRVAL_B ( 36'h000000000 ) ) u_sram1 ( .REGCEA(1'd0), .CLKA ( i_clk ), .ENB ( 1'd0 ), .RSTB ( 1'd0 ), .CLKB ( 1'd0 ), .REGCEB ( 1'd0 ), .RSTA ( 1'd0 ), .ENA ( 1'd1 ), .DIPA ( 4'd0 ), .WEA ({wea[2], wea[2], wea[2], wea[2]} ), .DOA ( data_out[2] ), .ADDRA ( {i_address[10:0], 3'd0} ), .ADDRB ( 14'd0 ), .DIB ( 32'd0 ), .DOPA ( ), .DIPB ( 4'd0 ), .DOPB ( ), .DOB ( ), .WEB ( 4'd0 ), .DIA ( {24'd0, i_write_data[23:16]} ) ); RAMB16BWER #( .INIT_00 ( SRAM2_INIT_0 ), .INIT_01 ( SRAM2_INIT_1 ), .INIT_02 ( SRAM2_INIT_2 ), .INIT_03 ( SRAM2_INIT_3 ), .INIT_04 ( SRAM2_INIT_4 ), .INIT_05 ( SRAM2_INIT_5 ), .INIT_06 ( SRAM2_INIT_6 ), .INIT_07 ( SRAM2_INIT_7 ), .INIT_08 ( SRAM2_INIT_8 ), .INIT_09 ( SRAM2_INIT_9 ), .INIT_0A ( SRAM2_INIT_10 ), .INIT_0B ( SRAM2_INIT_11 ), .INIT_0C ( SRAM2_INIT_12 ), .INIT_0D ( SRAM2_INIT_13 ), .INIT_0E ( SRAM2_INIT_14 ), .INIT_0F ( SRAM2_INIT_15 ), .INIT_10 ( SRAM2_INIT_16 ), .INIT_11 ( SRAM2_INIT_17 ), .INIT_12 ( SRAM2_INIT_18 ), .INIT_13 ( SRAM2_INIT_19 ), .INIT_14 ( SRAM2_INIT_20 ), .INIT_15 ( SRAM2_INIT_21 ), .INIT_16 ( SRAM2_INIT_22 ), .INIT_17 ( SRAM2_INIT_23 ), .INIT_18 ( SRAM2_INIT_24 ), .INIT_19 ( SRAM2_INIT_25 ), .INIT_1A ( SRAM2_INIT_26 ), .INIT_1B ( SRAM2_INIT_27 ), .INIT_1C ( SRAM2_INIT_28 ), .INIT_1D ( SRAM2_INIT_29 ), .INIT_1E ( SRAM2_INIT_30 ), .INIT_1F ( SRAM2_INIT_31 ), .INIT_20 ( SRAM2_INIT_32 ), .INIT_21 ( SRAM2_INIT_33 ), .INIT_22 ( SRAM2_INIT_34 ), .INIT_23 ( SRAM2_INIT_35 ), .INIT_24 ( SRAM2_INIT_36 ), .INIT_25 ( SRAM2_INIT_37 ), .INIT_26 ( SRAM2_INIT_38 ), .INIT_27 ( SRAM2_INIT_39 ), .INIT_28 ( SRAM2_INIT_40 ), .INIT_29 ( SRAM2_INIT_41 ), .INIT_2A ( SRAM2_INIT_42 ), .INIT_2B ( SRAM2_INIT_43 ), .INIT_2C ( SRAM2_INIT_44 ), .INIT_2D ( SRAM2_INIT_45 ), .INIT_2E ( SRAM2_INIT_46 ), .INIT_2F ( SRAM2_INIT_47 ), .INIT_30 ( SRAM2_INIT_48 ), .INIT_31 ( SRAM2_INIT_49 ), .INIT_32 ( SRAM2_INIT_50 ), .INIT_33 ( SRAM2_INIT_51 ), .INIT_34 ( SRAM2_INIT_52 ), .INIT_35 ( SRAM2_INIT_53 ), .INIT_36 ( SRAM2_INIT_54 ), .INIT_37 ( SRAM2_INIT_55 ), .INIT_38 ( SRAM2_INIT_56 ), .INIT_39 ( SRAM2_INIT_57 ), .INIT_3A ( SRAM2_INIT_58 ), .INIT_3B ( SRAM2_INIT_59 ), .INIT_3C ( SRAM2_INIT_60 ), .INIT_3D ( SRAM2_INIT_61 ), .INIT_3E ( SRAM2_INIT_62 ), .INIT_3F ( SRAM2_INIT_63 ), .DATA_WIDTH_A ( 9 ), .DATA_WIDTH_B ( 9 ), .DOA_REG ( 0 ), .DOB_REG ( 0 ), .EN_RSTRAM_A ( "FALSE" ), .EN_RSTRAM_B ( "FALSE" ), .SRVAL_A ( 36'h000000000 ), .INITP_00 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_01 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_02 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_03 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_04 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_05 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_06 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_07 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .RSTTYPE ( "SYNC" ), .RST_PRIORITY_A ( "CE" ), .RST_PRIORITY_B ( "CE" ), .SIM_COLLISION_CHECK ( "ALL" ), .SIM_DEVICE ( "SPARTAN6" ), .INIT_A ( 36'h000000000 ), .INIT_B ( 36'h000000000 ), .WRITE_MODE_A ( "READ_FIRST" ), .WRITE_MODE_B ( "READ_FIRST" ), .SRVAL_B ( 36'h000000000 ) ) u_sram2 ( .REGCEA ( 1'd0 ), .CLKA ( i_clk ), .ENB ( 1'd0 ), .RSTB ( 1'd0 ), .CLKB ( 1'd0 ), .REGCEB ( 1'd0 ), .RSTA ( 1'd0 ), .ENA ( 1'd1 ), .DIPA ( 4'd0 ), .WEA ( {wea[1], wea[1], wea[1], wea[1]} ), .DOA ( data_out[1] ), .ADDRA ( {i_address[10:0], 3'd0} ), .ADDRB ( 14'd0 ), .DIB ( 32'd0 ), .DOPA ( ), .DIPB ( 4'd0 ), .DOPB ( ), .DOB ( ), .WEB ( 4'd0 ), .DIA ( {24'd0, i_write_data[15:08]} ) ); RAMB16BWER #( .INIT_00 ( SRAM3_INIT_0 ), .INIT_01 ( SRAM3_INIT_1 ), .INIT_02 ( SRAM3_INIT_2 ), .INIT_03 ( SRAM3_INIT_3 ), .INIT_04 ( SRAM3_INIT_4 ), .INIT_05 ( SRAM3_INIT_5 ), .INIT_06 ( SRAM3_INIT_6 ), .INIT_07 ( SRAM3_INIT_7 ), .INIT_08 ( SRAM3_INIT_8 ), .INIT_09 ( SRAM3_INIT_9 ), .INIT_0A ( SRAM3_INIT_10 ), .INIT_0B ( SRAM3_INIT_11 ), .INIT_0C ( SRAM3_INIT_12 ), .INIT_0D ( SRAM3_INIT_13 ), .INIT_0E ( SRAM3_INIT_14 ), .INIT_0F ( SRAM3_INIT_15 ), .INIT_10 ( SRAM3_INIT_16 ), .INIT_11 ( SRAM3_INIT_17 ), .INIT_12 ( SRAM3_INIT_18 ), .INIT_13 ( SRAM3_INIT_19 ), .INIT_14 ( SRAM3_INIT_20 ), .INIT_15 ( SRAM3_INIT_21 ), .INIT_16 ( SRAM3_INIT_22 ), .INIT_17 ( SRAM3_INIT_23 ), .INIT_18 ( SRAM3_INIT_24 ), .INIT_19 ( SRAM3_INIT_25 ), .INIT_1A ( SRAM3_INIT_26 ), .INIT_1B ( SRAM3_INIT_27 ), .INIT_1C ( SRAM3_INIT_28 ), .INIT_1D ( SRAM3_INIT_29 ), .INIT_1E ( SRAM3_INIT_30 ), .INIT_1F ( SRAM3_INIT_31 ), .INIT_20 ( SRAM3_INIT_32 ), .INIT_21 ( SRAM3_INIT_33 ), .INIT_22 ( SRAM3_INIT_34 ), .INIT_23 ( SRAM3_INIT_35 ), .INIT_24 ( SRAM3_INIT_36 ), .INIT_25 ( SRAM3_INIT_37 ), .INIT_26 ( SRAM3_INIT_38 ), .INIT_27 ( SRAM3_INIT_39 ), .INIT_28 ( SRAM3_INIT_40 ), .INIT_29 ( SRAM3_INIT_41 ), .INIT_2A ( SRAM3_INIT_42 ), .INIT_2B ( SRAM3_INIT_43 ), .INIT_2C ( SRAM3_INIT_44 ), .INIT_2D ( SRAM3_INIT_45 ), .INIT_2E ( SRAM3_INIT_46 ), .INIT_2F ( SRAM3_INIT_47 ), .INIT_30 ( SRAM3_INIT_48 ), .INIT_31 ( SRAM3_INIT_49 ), .INIT_32 ( SRAM3_INIT_50 ), .INIT_33 ( SRAM3_INIT_51 ), .INIT_34 ( SRAM3_INIT_52 ), .INIT_35 ( SRAM3_INIT_53 ), .INIT_36 ( SRAM3_INIT_54 ), .INIT_37 ( SRAM3_INIT_55 ), .INIT_38 ( SRAM3_INIT_56 ), .INIT_39 ( SRAM3_INIT_57 ), .INIT_3A ( SRAM3_INIT_58 ), .INIT_3B ( SRAM3_INIT_59 ), .INIT_3C ( SRAM3_INIT_60 ), .INIT_3D ( SRAM3_INIT_61 ), .INIT_3E ( SRAM3_INIT_62 ), .INIT_3F ( SRAM3_INIT_63 ), .DATA_WIDTH_A ( 9 ), .DATA_WIDTH_B ( 9 ), .DOA_REG ( 0 ), .DOB_REG ( 0 ), .EN_RSTRAM_A ( "FALSE" ), .EN_RSTRAM_B ( "FALSE" ), .SRVAL_A ( 36'h000000000 ), .INITP_00 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_01 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_02 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_03 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_04 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_05 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_06 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .INITP_07 ( 256'h0000000000000000000000000000000000000000000000000000000000000000 ), .RSTTYPE ( "SYNC" ), .RST_PRIORITY_A ( "CE" ), .RST_PRIORITY_B ( "CE" ), .SIM_COLLISION_CHECK ( "ALL" ), .SIM_DEVICE ( "SPARTAN6" ), .INIT_A ( 36'h000000000 ), .INIT_B ( 36'h000000000 ), .WRITE_MODE_A ( "READ_FIRST" ), .WRITE_MODE_B ( "READ_FIRST" ), .SRVAL_B ( 36'h000000000 ) ) u_sram3 ( .REGCEA ( 1'd0 ), .CLKA ( i_clk ), .ENB ( 1'd0 ), .RSTB ( 1'd0 ), .CLKB ( 1'd0 ), .REGCEB ( 1'd0 ), .RSTA ( 1'd0 ), .ENA ( 1'd1 ), .WEA ({wea[0], wea[0], wea[0], wea[0]} ), .DOA ( data_out[0] ), .ADDRA ({i_address[10:0], 3'd0} ), .ADDRB ( 14'd0 ), .DIA ( {24'd0, i_write_data[7:0]} ), .DIB ( 32'd0 ), .DIPA ( 4'd0 ), .DIPB ( 4'd0 ), .DOPA ( ), .DOPB ( ), .DOB ( ), .WEB ( 4'd0 ) ); endmodule