// /////////////////////////////////////////////////////////////////////////////////////////// // Copyright © 2010-2013, Xilinx, Inc. // This file contains confidential and proprietary information of Xilinx, Inc. and is // protected under U.S. and international copyright and other intellectual property laws. /////////////////////////////////////////////////////////////////////////////////////////// // // Disclaimer: // This disclaimer is not a license and does not grant any rights to the materials // distributed herewith. Except as otherwise provided in a valid license issued to // you by Xilinx, and to the maximum extent permitted by applicable law: (1) THESE // MATERIALS ARE MADE AVAILABLE "AS IS" AND WITH ALL FAULTS, AND XILINX HEREBY // DISCLAIMS ALL WARRANTIES AND CONDITIONS, EXPRESS, IMPLIED, OR STATUTORY, // INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, NON-INFRINGEMENT, // OR FITNESS FOR ANY PARTICULAR PURPOSE; and (2) Xilinx shall not be liable // (whether in contract or tort, including negligence, or under any other theory // of liability) for any loss or damage of any kind or nature related to, arising // under or in connection with these materials, including for any direct, or any // indirect, special, incidental, or consequential loss or damage (including loss // of data, profits, goodwill, or any type of loss or damage suffered as a result // of any action brought by a third party) even if such damage or loss was // reasonably foreseeable or Xilinx had been advised of the possibility of the same. // // CRITICAL APPLICATIONS // Xilinx products are not designed or intended to be fail-safe, or for use in any // application requiring fail-safe performance, such as life-support or safety // devices or systems, Class III medical devices, nuclear facilities, applications // related to the deployment of airbags, or any other applications that could lead // to death, personal injury, or severe property or environmental damage // (individually and collectively, "Critical Applications"). Customer assumes the // sole risk and liability of any use of Xilinx products in Critical Applications, // subject only to applicable laws and regulations governing limitations on product // liability. // // THIS COPYRIGHT NOTICE AND DISCLAIMER MUST BE RETAINED AS PART OF THIS FILE AT ALL TIMES. // /////////////////////////////////////////////////////////////////////////////////////////// // // // Definition of a program memory for KCPSM6 including generic parameters for the // convenient selection of device family, program memory size and the ability to include // the JTAG Loader hardware for rapid software development. // // This file is primarily for use during code development and it is recommended that the // appropriate simplified program memory definition be used in a final production design. // // // Generic Values Comments // Parameter Supported // // C_FAMILY "S6" Spartan-6 device // "V6" Virtex-6 device // "7S" 7-Series device // (Artix-7, Kintex-7, Virtex-7 or Zynq) // // C_RAM_SIZE_KWORDS 1, 2 or 4 Size of program memory in K-instructions // // C_JTAG_LOADER_ENABLE 0 or 1 Set to '1' to include JTAG Loader // // Notes // // If your design contains MULTIPLE KCPSM6 instances then only one should have the // JTAG Loader enabled at a time (i.e. make sure that C_JTAG_LOADER_ENABLE is only set to // '1' on one instance of the program memory). Advanced users may be interested to know // that it is possible to connect JTAG Loader to multiple memories and then to use the // JTAG Loader utility to specify which memory contents are to be modified. However, // this scheme does require some effort to set up and the additional connectivity of the // multiple BRAMs can impact the placement, routing and performance of the complete // design. Please contact the author at Xilinx for more detailed information. // // Regardless of the size of program memory specified by C_RAM_SIZE_KWORDS, the complete // 12-bit address bus is connected to KCPSM6. This enables the generic to be modified // without requiring changes to the fundamental hardware definition. However, when the // program memory is 1K then only the lower 10-bits of the address are actually used and // the valid address range is 000 to 3FF hex. Likewise, for a 2K program only the lower // 11-bits of the address are actually used and the valid address range is 000 to 7FF hex. // // Programs are stored in Block Memory (BRAM) and the number of BRAM used depends on the // size of the program and the device family. // // In a Spartan-6 device a BRAM is capable of holding 1K instructions. Hence a 2K program // will require 2 BRAMs to be used and a 4K program will require 4 BRAMs to be used. It // should be noted that a 4K program is not such a natural fit in a Spartan-6 device and // the implementation also requires a small amount of logic resulting in slightly lower // performance. A Spartan-6 BRAM can also be split into two 9k-bit memories suggesting // that a program containing up to 512 instructions could be implemented. However, there // is a silicon errata which makes this unsuitable and therefore it is not supported by // this file. // // In a Virtex-6 or any 7-Series device a BRAM is capable of holding 2K instructions so // obviously a 2K program requires only a single BRAM. Each BRAM can also be divided into // 2 smaller memories supporting programs of 1K in half of a 36k-bit BRAM (generally // reported as being an 18k-bit BRAM). For a program of 4K instructions, 2 BRAMs are used. // // // Program defined by 'S:\work\picoblaze\picoblaze_test_v2_iic\src\pb_dev\prog_clk_config_boot.psm'. // // Generated by KCPSM6 Assembler: 24 Jan 2015 - 15:50:53. // // Assembler used ROM_form template: ROM_form_JTAGLoader_14March13.v // // `timescale 1ps/1ps module prog_clk_config_boot (address, instruction, enable, rdl, clk); // parameter integer C_JTAG_LOADER_ENABLE = 1; parameter C_FAMILY = "S6"; parameter integer C_RAM_SIZE_KWORDS = 1; // input clk; input [11:0] address; input enable; output [17:0] instruction; output rdl; // // wire [15:0] address_a; wire pipe_a11; wire [35:0] data_in_a; wire [35:0] data_out_a; wire [35:0] data_out_a_l; wire [35:0] data_out_a_h; wire [35:0] data_out_a_ll; wire [35:0] data_out_a_lh; wire [35:0] data_out_a_hl; wire [35:0] data_out_a_hh; wire [15:0] address_b; wire [35:0] data_in_b; wire [35:0] data_in_b_l; wire [35:0] data_in_b_ll; wire [35:0] data_in_b_hl; wire [35:0] data_out_b; wire [35:0] data_out_b_l; wire [35:0] data_out_b_ll; wire [35:0] data_out_b_hl; wire [35:0] data_in_b_h; wire [35:0] data_in_b_lh; wire [35:0] data_in_b_hh; wire [35:0] data_out_b_h; wire [35:0] data_out_b_lh; wire [35:0] data_out_b_hh; wire enable_b; wire clk_b; wire [7:0] we_b; wire [3:0] we_b_l; wire [3:0] we_b_h; // wire [11:0] jtag_addr; wire jtag_we; wire jtag_clk; wire [17:0] jtag_din; wire [17:0] jtag_dout; wire [17:0] jtag_dout_1; wire [0:0] jtag_en; // wire [0:0] picoblaze_reset; wire [0:0] rdl_bus; // parameter integer BRAM_ADDRESS_WIDTH = addr_width_calc(C_RAM_SIZE_KWORDS); // // function integer addr_width_calc; input integer size_in_k; if (size_in_k == 1) begin addr_width_calc = 10; end else if (size_in_k == 2) begin addr_width_calc = 11; end else if (size_in_k == 4) begin addr_width_calc = 12; end else begin if (C_RAM_SIZE_KWORDS != 1 && C_RAM_SIZE_KWORDS != 2 && C_RAM_SIZE_KWORDS != 4) begin //#0; $display("Invalid BlockRAM size. Please set to 1, 2 or 4 K words..\n"); $finish; end end endfunction // // generate if (C_RAM_SIZE_KWORDS == 1) begin : ram_1k_generate // if (C_FAMILY == "S6") begin: s6 // assign address_a[13:0] = {address[9:0], 4'b0000}; assign instruction = {data_out_a[33:32], data_out_a[15:0]}; assign data_in_a = {34'b0000000000000000000000000000000000, address[11:10]}; assign jtag_dout = {data_out_b[33:32], data_out_b[15:0]}; // if (C_JTAG_LOADER_ENABLE == 0) begin : no_loader assign data_in_b = {2'b00, data_out_b[33:32], 16'b0000000000000000, data_out_b[15:0]}; assign address_b[13:0] = 14'b00000000000000; assign we_b[3:0] = 4'b0000; assign enable_b = 1'b0; assign rdl = 1'b0; assign clk_b = 1'b0; end // no_loader; // if (C_JTAG_LOADER_ENABLE == 1) begin : loader assign data_in_b = {2'b00, jtag_din[17:16], 16'b0000000000000000, jtag_din[15:0]}; assign address_b[13:0] = {jtag_addr[9:0], 4'b0000}; assign we_b[3:0] = {jtag_we, jtag_we, jtag_we, jtag_we}; assign enable_b = jtag_en[0]; assign rdl = rdl_bus[0]; assign clk_b = jtag_clk; end // loader; // RAMB16BWER #(.DATA_WIDTH_A (18), .DOA_REG (0), .EN_RSTRAM_A ("FALSE"), .INIT_A (9'b000000000), .RST_PRIORITY_A ("CE"), .SRVAL_A (9'b000000000), .WRITE_MODE_A ("WRITE_FIRST"), .DATA_WIDTH_B (18), .DOB_REG (0), .EN_RSTRAM_B ("FALSE"), .INIT_B (9'b000000000), .RST_PRIORITY_B ("CE"), .SRVAL_B (9'b000000000), .WRITE_MODE_B ("WRITE_FIRST"), .RSTTYPE ("SYNC"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .SIM_DEVICE ("SPARTAN6"), .INIT_00 (256'hDDCD01C13800170160AADDA501C1183A1798B01501F81AE71B02B00601BB01EE), .INIT_01 (256'h01F81A341B042061201DD0042096D103310301003007900201F81A6E1B0360AA), .INIT_02 (256'h1910183B175A01A312101900183A17DA01F81AD01B0320252039D101204DD100), .INIT_03 (256'h12101900183A17EA01F81AE91B0321671F0101A312281920183B17EA01A31210), .INIT_04 (256'h01F81A021B0421671F0101A312281920183C173A01A312101910183B176A01A3), .INIT_05 (256'h1F0101A312281920183C178A01A312101910183B177A01A312101900183A17FA), .INIT_06 (256'h12101900183A17AA01F81AD01B0320692078D1012087D10001F81A1B1B042167), .INIT_07 (256'h01A312101900183A17BA01F81AE91B0321671F0001A312101910183B172A01A3), .INIT_08 (256'h174A01A312101900183A17CA01F81A021B0421671F0001A312101910183B173A), .INIT_09 (256'h183B171A01A312101900183A179A01F81AB61B0321671F0001A312101910183B), .INIT_0A (256'h01003007900201F81A8B1B0321671F0001A312281920183B179A01A312101910), .INIT_0B (256'h01AB151016001A0219081802170701F81AB61B0320D02111D00420B6D1033103), .INIT_0C (256'h21671F0001AB152816201A0219601802175701AB151016101A0219231802171F), .INIT_0D (256'h16001A02190A1802170901F81AD01B0320D820EBD10120FED10001F81A1B1B04), .INIT_0E (256'h1802170B01F81AE91B0321671F0001AB151016101A02192B1802172701AB1510), .INIT_0F (256'h1A021B0421671F0001AB151016101A0219331802172F01AB151016001A02190C), .INIT_10 (256'h1F0001AB151016101A02193B1802173701AB151016001A02190E1802170D01F8), .INIT_11 (256'h1A0219151802170F01F81AD01B0321192133D101214DD10001F81A341B042167), .INIT_12 (256'h152816201A02197E1802176901AB151016101A0219431802173F01AB15101600), .INIT_13 (256'h194B1802174701AB151016001A02191C1802171B01F81AE91B0321671F0101AB), .INIT_14 (256'h01F81A021B0421671F0101AB152816201A0219A81802179301AB151016101A02), .INIT_15 (256'h180217BD01AB151016101A0219531802174F01AB151016001A02191E1802171D), .INIT_16 (256'hDF0001921B101A10100101921B101A00100221671F0101AB152816201A0219D2), .INIT_17 (256'hB001B00001F81AAD1B04019C01F81A801B04217BDF0001921B281A2010044187), .INIT_18 (256'h1A701B04218BD1109102B02601F81A4C1B0421862186B016B005B004B003B002), .INIT_19 (256'h1B04219C3008900221921A0110009B0101DBA1A01A011000D2FFA2A0500001F8), .INIT_1A (256'h4A9016010320E260487021A338001701190110009201ED9001C1500001F81A9F), .INIT_1B (256'h61BD9001E10011FF107F21AB3A001901380017011601100095011000D3FFE260), .INIT_1C (256'h90000537052005709000053705200580900005370520450615500513050F5000), .INIT_1D (256'h01E4032001E41300D0035000051A05350D50052A900005370520450715500513), .INIT_1E (256'h110D1203500061E5B00100009401BFF14300D502053014085000B00301E40310), .INIT_1F (256'hB04621F83B001A0102021000D9004BA0500061F2B200B1009001000021F21040), .INIT_20 (256'h124512FF12FF12FF12FF12FF12FF12FF12FF5000D9006202D00490005000B006), .INIT_21 (256'h124512FF12FF12FF12FF12FF1201120812001233120112FF125A123D124B124A), .INIT_22 (256'h124512FF12011280120112FF125A1251124512FF12011280120112FF125A1251), .INIT_23 (256'h124512FF12011280120012FF125A1251124512FF12011280120012FF125A1251), .INIT_24 (256'h124512FF12011280120012FF125A1251124512FF12011280120012FF125A1251), .INIT_25 (256'h12FF12411240123F123E123D120A1200120012FF12011280120012FF125A1251), .INIT_26 (256'h120C120B1206120512041200120012FF12011201120312031203121112101230), .INIT_27 (256'h1210123012FF125A12451253125112411240123F123E123D120A120912081207), .INIT_28 (256'h1280128012021201120312031203120812701247120012011200120312001202), .INIT_29 (256'h123E123D120A120912081207120C120B1206120512041200120012FF12011202), .INIT_2A (256'h1200120112001203120012021210123012FF125A12451253125112411240123F), .INIT_2B (256'h12041200120012FF120112021280128012021202120312031203120812701247), .INIT_2C (256'h12451253125112411240123F123E123D120A120912081207120C120B12061205), .INIT_2D (256'h1203120312031240127012471200120112001203120012021210123012FF125A), .INIT_2E (256'h192A192A192A192A192A192A192A192A190D12FF120112021280128012021202), .INIT_2F (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_30 (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_31 (256'h192A192A192A19201920192019201920190D192A192A192A192A192A192A192A), .INIT_32 (256'h196B1963196F196C1943192019331976192019501952194119571920192A192A), .INIT_33 (256'h192A192A192A192019651972196F19431920196719691966196E196F19431920), .INIT_34 (256'h196D196119721967196F19721950192019201920192019201920190D192A192A), .INIT_35 (256'h1920193A196519741961194419201979196C1962196D19651973197319411920), .INIT_36 (256'h196F19461900190D190D19351931193019321920196E1961194A192019341932), .INIT_37 (256'h192019611974196119641920196719691966196E196F196319201964196E1975), .INIT_38 (256'h196F19631920196F194E1900190D194D194F19521950194519451920196E1969), .INIT_39 (256'h1950194519451920196E1969192019611974196119641920196719691966196E), .INIT_3A (256'h196119661965194419201967196E1969197319551920192D1920194D194F1952), .INIT_3B (256'h194D1920196B1963196F196C19431920196F194E1900190D19731974196C1975), .INIT_3C (256'h1900190D1964196519741963196519741965194419201965196C19751964196F), .INIT_3D (256'h19721975196719691966196E196F196319201967196E196919641961196F194C), .INIT_3E (256'h1967196E196919641961196F194C1900190D19411920196E196F196919741961), .INIT_3F (256'h19421920196E196F19691974196119721975196719691966196E196F19631920), .INITP_00 (256'h802088020082DD82200802008220080200822008020082DD82CD008365D8282A), .INITP_01 (256'h08800200082200080020B7608800200080020B34020880200802088020082200), .INITP_02 (256'hA828360360202200080020008220008002000822000800200082DD8220008002), .INITP_03 (256'hA5B6B5480B8660A888AA2E92E8E8E92AD825577692A576A8309D874A0C282AAA), .INITP_04 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0A), .INITP_05 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_06 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_07 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA)) kcpsm6_rom( .ADDRA (address_a[13:0]), .ENA (enable), .CLKA (clk), .DOA (data_out_a[31:0]), .DOPA (data_out_a[35:32]), .DIA (data_in_a[31:0]), .DIPA (data_in_a[35:32]), .WEA (4'b0000), .REGCEA (1'b0), .RSTA (1'b0), .ADDRB (address_b[13:0]), .ENB (enable_b), .CLKB (clk_b), .DOB (data_out_b[31:0]), .DOPB (data_out_b[35:32]), .DIB (data_in_b[31:0]), .DIPB (data_in_b[35:32]), .WEB (we_b[3:0]), .REGCEB (1'b0), .RSTB (1'b0)); end // s6; // // if (C_FAMILY == "V6") begin: v6 // assign address_a[13:0] = {address[9:0], 4'b1111}; assign instruction = data_out_a[17:0]; assign data_in_a[17:0] = {16'b0000000000000000, address[11:10]}; assign jtag_dout = data_out_b[17:0]; // if (C_JTAG_LOADER_ENABLE == 0) begin : no_loader assign data_in_b[17:0] = data_out_b[17:0]; assign address_b[13:0] = 14'b11111111111111; assign we_b[3:0] = 4'b0000; assign enable_b = 1'b0; assign rdl = 1'b0; assign clk_b = 1'b0; end // no_loader; // if (C_JTAG_LOADER_ENABLE == 1) begin : loader assign data_in_b[17:0] = jtag_din[17:0]; assign address_b[13:0] = {jtag_addr[9:0], 4'b1111}; assign we_b[3:0] = {jtag_we, jtag_we, jtag_we, jtag_we}; assign enable_b = jtag_en[0]; assign rdl = rdl_bus[0]; assign clk_b = jtag_clk; end // loader; // RAMB18E1 #(.READ_WIDTH_A (18), .WRITE_WIDTH_A (18), .DOA_REG (0), .INIT_A (18'b000000000000000000), .RSTREG_PRIORITY_A ("REGCE"), .SRVAL_A (18'b000000000000000000), .WRITE_MODE_A ("WRITE_FIRST"), .READ_WIDTH_B (18), .WRITE_WIDTH_B (18), .DOB_REG (0), .INIT_B (18'b000000000000000000), .RSTREG_PRIORITY_B ("REGCE"), .SRVAL_B (18'b000000000000000000), .WRITE_MODE_B ("WRITE_FIRST"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .RAM_MODE ("TDP"), .RDADDR_COLLISION_HWCONFIG ("DELAYED_WRITE"), .SIM_DEVICE ("VIRTEX6"), .INIT_00 (256'hDDCD01C13800170160AADDA501C1183A1798B01501F81AE71B02B00601BB01EE), .INIT_01 (256'h01F81A341B042061201DD0042096D103310301003007900201F81A6E1B0360AA), .INIT_02 (256'h1910183B175A01A312101900183A17DA01F81AD01B0320252039D101204DD100), .INIT_03 (256'h12101900183A17EA01F81AE91B0321671F0101A312281920183B17EA01A31210), .INIT_04 (256'h01F81A021B0421671F0101A312281920183C173A01A312101910183B176A01A3), .INIT_05 (256'h1F0101A312281920183C178A01A312101910183B177A01A312101900183A17FA), .INIT_06 (256'h12101900183A17AA01F81AD01B0320692078D1012087D10001F81A1B1B042167), .INIT_07 (256'h01A312101900183A17BA01F81AE91B0321671F0001A312101910183B172A01A3), .INIT_08 (256'h174A01A312101900183A17CA01F81A021B0421671F0001A312101910183B173A), .INIT_09 (256'h183B171A01A312101900183A179A01F81AB61B0321671F0001A312101910183B), .INIT_0A (256'h01003007900201F81A8B1B0321671F0001A312281920183B179A01A312101910), .INIT_0B (256'h01AB151016001A0219081802170701F81AB61B0320D02111D00420B6D1033103), .INIT_0C (256'h21671F0001AB152816201A0219601802175701AB151016101A0219231802171F), .INIT_0D (256'h16001A02190A1802170901F81AD01B0320D820EBD10120FED10001F81A1B1B04), .INIT_0E (256'h1802170B01F81AE91B0321671F0001AB151016101A02192B1802172701AB1510), .INIT_0F (256'h1A021B0421671F0001AB151016101A0219331802172F01AB151016001A02190C), .INIT_10 (256'h1F0001AB151016101A02193B1802173701AB151016001A02190E1802170D01F8), .INIT_11 (256'h1A0219151802170F01F81AD01B0321192133D101214DD10001F81A341B042167), .INIT_12 (256'h152816201A02197E1802176901AB151016101A0219431802173F01AB15101600), .INIT_13 (256'h194B1802174701AB151016001A02191C1802171B01F81AE91B0321671F0101AB), .INIT_14 (256'h01F81A021B0421671F0101AB152816201A0219A81802179301AB151016101A02), .INIT_15 (256'h180217BD01AB151016101A0219531802174F01AB151016001A02191E1802171D), .INIT_16 (256'hDF0001921B101A10100101921B101A00100221671F0101AB152816201A0219D2), .INIT_17 (256'hB001B00001F81AAD1B04019C01F81A801B04217BDF0001921B281A2010044187), .INIT_18 (256'h1A701B04218BD1109102B02601F81A4C1B0421862186B016B005B004B003B002), .INIT_19 (256'h1B04219C3008900221921A0110009B0101DBA1A01A011000D2FFA2A0500001F8), .INIT_1A (256'h4A9016010320E260487021A338001701190110009201ED9001C1500001F81A9F), .INIT_1B (256'h61BD9001E10011FF107F21AB3A001901380017011601100095011000D3FFE260), .INIT_1C (256'h90000537052005709000053705200580900005370520450615500513050F5000), .INIT_1D (256'h01E4032001E41300D0035000051A05350D50052A900005370520450715500513), .INIT_1E (256'h110D1203500061E5B00100009401BFF14300D502053014085000B00301E40310), .INIT_1F (256'hB04621F83B001A0102021000D9004BA0500061F2B200B1009001000021F21040), .INIT_20 (256'h124512FF12FF12FF12FF12FF12FF12FF12FF5000D9006202D00490005000B006), .INIT_21 (256'h124512FF12FF12FF12FF12FF1201120812001233120112FF125A123D124B124A), .INIT_22 (256'h124512FF12011280120112FF125A1251124512FF12011280120112FF125A1251), .INIT_23 (256'h124512FF12011280120012FF125A1251124512FF12011280120012FF125A1251), .INIT_24 (256'h124512FF12011280120012FF125A1251124512FF12011280120012FF125A1251), .INIT_25 (256'h12FF12411240123F123E123D120A1200120012FF12011280120012FF125A1251), .INIT_26 (256'h120C120B1206120512041200120012FF12011201120312031203121112101230), .INIT_27 (256'h1210123012FF125A12451253125112411240123F123E123D120A120912081207), .INIT_28 (256'h1280128012021201120312031203120812701247120012011200120312001202), .INIT_29 (256'h123E123D120A120912081207120C120B1206120512041200120012FF12011202), .INIT_2A (256'h1200120112001203120012021210123012FF125A12451253125112411240123F), .INIT_2B (256'h12041200120012FF120112021280128012021202120312031203120812701247), .INIT_2C (256'h12451253125112411240123F123E123D120A120912081207120C120B12061205), .INIT_2D (256'h1203120312031240127012471200120112001203120012021210123012FF125A), .INIT_2E (256'h192A192A192A192A192A192A192A192A190D12FF120112021280128012021202), .INIT_2F (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_30 (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_31 (256'h192A192A192A19201920192019201920190D192A192A192A192A192A192A192A), .INIT_32 (256'h196B1963196F196C1943192019331976192019501952194119571920192A192A), .INIT_33 (256'h192A192A192A192019651972196F19431920196719691966196E196F19431920), .INIT_34 (256'h196D196119721967196F19721950192019201920192019201920190D192A192A), .INIT_35 (256'h1920193A196519741961194419201979196C1962196D19651973197319411920), .INIT_36 (256'h196F19461900190D190D19351931193019321920196E1961194A192019341932), .INIT_37 (256'h192019611974196119641920196719691966196E196F196319201964196E1975), .INIT_38 (256'h196F19631920196F194E1900190D194D194F19521950194519451920196E1969), .INIT_39 (256'h1950194519451920196E1969192019611974196119641920196719691966196E), .INIT_3A (256'h196119661965194419201967196E1969197319551920192D1920194D194F1952), .INIT_3B (256'h194D1920196B1963196F196C19431920196F194E1900190D19731974196C1975), .INIT_3C (256'h1900190D1964196519741963196519741965194419201965196C19751964196F), .INIT_3D (256'h19721975196719691966196E196F196319201967196E196919641961196F194C), .INIT_3E (256'h1967196E196919641961196F194C1900190D19411920196E196F196919741961), .INIT_3F (256'h19421920196E196F19691974196119721975196719691966196E196F19631920), .INITP_00 (256'h802088020082DD82200802008220080200822008020082DD82CD008365D8282A), .INITP_01 (256'h08800200082200080020B7608800200080020B34020880200802088020082200), .INITP_02 (256'hA828360360202200080020008220008002000822000800200082DD8220008002), .INITP_03 (256'hA5B6B5480B8660A888AA2E92E8E8E92AD825577692A576A8309D874A0C282AAA), .INITP_04 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0A), .INITP_05 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_06 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_07 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA)) kcpsm6_rom( .ADDRARDADDR (address_a[13:0]), .ENARDEN (enable), .CLKARDCLK (clk), .DOADO (data_out_a[15:0]), .DOPADOP (data_out_a[17:16]), .DIADI (data_in_a[15:0]), .DIPADIP (data_in_a[17:16]), .WEA (2'b00), .REGCEAREGCE (1'b0), .RSTRAMARSTRAM (1'b0), .RSTREGARSTREG (1'b0), .ADDRBWRADDR (address_b[13:0]), .ENBWREN (enable_b), .CLKBWRCLK (clk_b), .DOBDO (data_out_b[15:0]), .DOPBDOP (data_out_b[17:16]), .DIBDI (data_in_b[15:0]), .DIPBDIP (data_in_b[17:16]), .WEBWE (we_b[3:0]), .REGCEB (1'b0), .RSTRAMB (1'b0), .RSTREGB (1'b0)); end // v6; // // if (C_FAMILY == "7S") begin: akv7 // assign address_a[13:0] = {address[9:0], 4'b1111}; assign instruction = data_out_a[17:0]; assign data_in_a[17:0] = {16'b0000000000000000, address[11:10]}; assign jtag_dout = data_out_b[17:0]; // if (C_JTAG_LOADER_ENABLE == 0) begin : no_loader assign data_in_b[17:0] = data_out_b[17:0]; assign address_b[13:0] = 14'b11111111111111; assign we_b[3:0] = 4'b0000; assign enable_b = 1'b0; assign rdl = 1'b0; assign clk_b = 1'b0; end // no_loader; // if (C_JTAG_LOADER_ENABLE == 1) begin : loader assign data_in_b[17:0] = jtag_din[17:0]; assign address_b[13:0] = {jtag_addr[9:0], 4'b1111}; assign we_b[3:0] = {jtag_we, jtag_we, jtag_we, jtag_we}; assign enable_b = jtag_en[0]; assign rdl = rdl_bus[0]; assign clk_b = jtag_clk; end // loader; // RAMB18E1 #(.READ_WIDTH_A (18), .WRITE_WIDTH_A (18), .DOA_REG (0), .INIT_A (18'b000000000000000000), .RSTREG_PRIORITY_A ("REGCE"), .SRVAL_A (18'b000000000000000000), .WRITE_MODE_A ("WRITE_FIRST"), .READ_WIDTH_B (18), .WRITE_WIDTH_B (18), .DOB_REG (0), .INIT_B (18'b000000000000000000), .RSTREG_PRIORITY_B ("REGCE"), .SRVAL_B (18'b000000000000000000), .WRITE_MODE_B ("WRITE_FIRST"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .RAM_MODE ("TDP"), .RDADDR_COLLISION_HWCONFIG ("DELAYED_WRITE"), .SIM_DEVICE ("7SERIES"), .INIT_00 (256'hDDCD01C13800170160AADDA501C1183A1798B01501F81AE71B02B00601BB01EE), .INIT_01 (256'h01F81A341B042061201DD0042096D103310301003007900201F81A6E1B0360AA), .INIT_02 (256'h1910183B175A01A312101900183A17DA01F81AD01B0320252039D101204DD100), .INIT_03 (256'h12101900183A17EA01F81AE91B0321671F0101A312281920183B17EA01A31210), .INIT_04 (256'h01F81A021B0421671F0101A312281920183C173A01A312101910183B176A01A3), .INIT_05 (256'h1F0101A312281920183C178A01A312101910183B177A01A312101900183A17FA), .INIT_06 (256'h12101900183A17AA01F81AD01B0320692078D1012087D10001F81A1B1B042167), .INIT_07 (256'h01A312101900183A17BA01F81AE91B0321671F0001A312101910183B172A01A3), .INIT_08 (256'h174A01A312101900183A17CA01F81A021B0421671F0001A312101910183B173A), .INIT_09 (256'h183B171A01A312101900183A179A01F81AB61B0321671F0001A312101910183B), .INIT_0A (256'h01003007900201F81A8B1B0321671F0001A312281920183B179A01A312101910), .INIT_0B (256'h01AB151016001A0219081802170701F81AB61B0320D02111D00420B6D1033103), .INIT_0C (256'h21671F0001AB152816201A0219601802175701AB151016101A0219231802171F), .INIT_0D (256'h16001A02190A1802170901F81AD01B0320D820EBD10120FED10001F81A1B1B04), .INIT_0E (256'h1802170B01F81AE91B0321671F0001AB151016101A02192B1802172701AB1510), .INIT_0F (256'h1A021B0421671F0001AB151016101A0219331802172F01AB151016001A02190C), .INIT_10 (256'h1F0001AB151016101A02193B1802173701AB151016001A02190E1802170D01F8), .INIT_11 (256'h1A0219151802170F01F81AD01B0321192133D101214DD10001F81A341B042167), .INIT_12 (256'h152816201A02197E1802176901AB151016101A0219431802173F01AB15101600), .INIT_13 (256'h194B1802174701AB151016001A02191C1802171B01F81AE91B0321671F0101AB), .INIT_14 (256'h01F81A021B0421671F0101AB152816201A0219A81802179301AB151016101A02), .INIT_15 (256'h180217BD01AB151016101A0219531802174F01AB151016001A02191E1802171D), .INIT_16 (256'hDF0001921B101A10100101921B101A00100221671F0101AB152816201A0219D2), .INIT_17 (256'hB001B00001F81AAD1B04019C01F81A801B04217BDF0001921B281A2010044187), .INIT_18 (256'h1A701B04218BD1109102B02601F81A4C1B0421862186B016B005B004B003B002), .INIT_19 (256'h1B04219C3008900221921A0110009B0101DBA1A01A011000D2FFA2A0500001F8), .INIT_1A (256'h4A9016010320E260487021A338001701190110009201ED9001C1500001F81A9F), .INIT_1B (256'h61BD9001E10011FF107F21AB3A001901380017011601100095011000D3FFE260), .INIT_1C (256'h90000537052005709000053705200580900005370520450615500513050F5000), .INIT_1D (256'h01E4032001E41300D0035000051A05350D50052A900005370520450715500513), .INIT_1E (256'h110D1203500061E5B00100009401BFF14300D502053014085000B00301E40310), .INIT_1F (256'hB04621F83B001A0102021000D9004BA0500061F2B200B1009001000021F21040), .INIT_20 (256'h124512FF12FF12FF12FF12FF12FF12FF12FF5000D9006202D00490005000B006), .INIT_21 (256'h124512FF12FF12FF12FF12FF1201120812001233120112FF125A123D124B124A), .INIT_22 (256'h124512FF12011280120112FF125A1251124512FF12011280120112FF125A1251), .INIT_23 (256'h124512FF12011280120012FF125A1251124512FF12011280120012FF125A1251), .INIT_24 (256'h124512FF12011280120012FF125A1251124512FF12011280120012FF125A1251), .INIT_25 (256'h12FF12411240123F123E123D120A1200120012FF12011280120012FF125A1251), .INIT_26 (256'h120C120B1206120512041200120012FF12011201120312031203121112101230), .INIT_27 (256'h1210123012FF125A12451253125112411240123F123E123D120A120912081207), .INIT_28 (256'h1280128012021201120312031203120812701247120012011200120312001202), .INIT_29 (256'h123E123D120A120912081207120C120B1206120512041200120012FF12011202), .INIT_2A (256'h1200120112001203120012021210123012FF125A12451253125112411240123F), .INIT_2B (256'h12041200120012FF120112021280128012021202120312031203120812701247), .INIT_2C (256'h12451253125112411240123F123E123D120A120912081207120C120B12061205), .INIT_2D (256'h1203120312031240127012471200120112001203120012021210123012FF125A), .INIT_2E (256'h192A192A192A192A192A192A192A192A190D12FF120112021280128012021202), .INIT_2F (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_30 (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_31 (256'h192A192A192A19201920192019201920190D192A192A192A192A192A192A192A), .INIT_32 (256'h196B1963196F196C1943192019331976192019501952194119571920192A192A), .INIT_33 (256'h192A192A192A192019651972196F19431920196719691966196E196F19431920), .INIT_34 (256'h196D196119721967196F19721950192019201920192019201920190D192A192A), .INIT_35 (256'h1920193A196519741961194419201979196C1962196D19651973197319411920), .INIT_36 (256'h196F19461900190D190D19351931193019321920196E1961194A192019341932), .INIT_37 (256'h192019611974196119641920196719691966196E196F196319201964196E1975), .INIT_38 (256'h196F19631920196F194E1900190D194D194F19521950194519451920196E1969), .INIT_39 (256'h1950194519451920196E1969192019611974196119641920196719691966196E), .INIT_3A (256'h196119661965194419201967196E1969197319551920192D1920194D194F1952), .INIT_3B (256'h194D1920196B1963196F196C19431920196F194E1900190D19731974196C1975), .INIT_3C (256'h1900190D1964196519741963196519741965194419201965196C19751964196F), .INIT_3D (256'h19721975196719691966196E196F196319201967196E196919641961196F194C), .INIT_3E (256'h1967196E196919641961196F194C1900190D19411920196E196F196919741961), .INIT_3F (256'h19421920196E196F19691974196119721975196719691966196E196F19631920), .INITP_00 (256'h802088020082DD82200802008220080200822008020082DD82CD008365D8282A), .INITP_01 (256'h08800200082200080020B7608800200080020B34020880200802088020082200), .INITP_02 (256'hA828360360202200080020008220008002000822000800200082DD8220008002), .INITP_03 (256'hA5B6B5480B8660A888AA2E92E8E8E92AD825577692A576A8309D874A0C282AAA), .INITP_04 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0A), .INITP_05 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_06 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_07 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA)) kcpsm6_rom( .ADDRARDADDR (address_a[13:0]), .ENARDEN (enable), .CLKARDCLK (clk), .DOADO (data_out_a[15:0]), .DOPADOP (data_out_a[17:16]), .DIADI (data_in_a[15:0]), .DIPADIP (data_in_a[17:16]), .WEA (2'b00), .REGCEAREGCE (1'b0), .RSTRAMARSTRAM (1'b0), .RSTREGARSTREG (1'b0), .ADDRBWRADDR (address_b[13:0]), .ENBWREN (enable_b), .CLKBWRCLK (clk_b), .DOBDO (data_out_b[15:0]), .DOPBDOP (data_out_b[17:16]), .DIBDI (data_in_b[15:0]), .DIPBDIP (data_in_b[17:16]), .WEBWE (we_b[3:0]), .REGCEB (1'b0), .RSTRAMB (1'b0), .RSTREGB (1'b0)); end // akv7; // end // ram_1k_generate; endgenerate // generate if (C_RAM_SIZE_KWORDS == 2) begin : ram_2k_generate // if (C_FAMILY == "S6") begin: s6 // assign address_a[13:0] = {address[10:0], 3'b000}; assign instruction = {data_out_a_h[32], data_out_a_h[7:0], data_out_a_l[32], data_out_a_l[7:0]}; assign data_in_a = {35'b00000000000000000000000000000000000, address[11]}; assign jtag_dout = {data_out_b_h[32], data_out_b_h[7:0], data_out_b_l[32], data_out_b_l[7:0]}; // if (C_JTAG_LOADER_ENABLE == 0) begin : no_loader assign data_in_b_l = {3'b000, data_out_b_l[32], 24'b000000000000000000000000, data_out_b_l[7:0]}; assign data_in_b_h = {3'b000, data_out_b_h[32], 24'b000000000000000000000000, data_out_b_h[7:0]}; assign address_b[13:0] = 14'b00000000000000; assign we_b[3:0] = 4'b0000; assign enable_b = 1'b0; assign rdl = 1'b0; assign clk_b = 1'b0; end // no_loader; // if (C_JTAG_LOADER_ENABLE == 1) begin : loader assign data_in_b_h = {3'b000, jtag_din[17], 24'b000000000000000000000000, jtag_din[16:9]}; assign data_in_b_l = {3'b000, jtag_din[8], 24'b000000000000000000000000, jtag_din[7:0]}; assign address_b[13:0] = {jtag_addr[10:0], 3'b000}; assign we_b[3:0] = {jtag_we, jtag_we, jtag_we, jtag_we}; assign enable_b = jtag_en[0]; assign rdl = rdl_bus[0]; assign clk_b = jtag_clk; end // loader; // RAMB16BWER #(.DATA_WIDTH_A (9), .DOA_REG (0), .EN_RSTRAM_A ("FALSE"), .INIT_A (9'b000000000), .RST_PRIORITY_A ("CE"), .SRVAL_A (9'b000000000), .WRITE_MODE_A ("WRITE_FIRST"), .DATA_WIDTH_B (9), .DOB_REG (0), .EN_RSTRAM_B ("FALSE"), .INIT_B (9'b000000000), .RST_PRIORITY_B ("CE"), .SRVAL_B (9'b000000000), .WRITE_MODE_B ("WRITE_FIRST"), .RSTTYPE ("SYNC"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .SIM_DEVICE ("SPARTAN6"), .INIT_00 (256'hF83404611D04960303000702F86E03AACDC10001AAA5C13A9815F8E70206BBEE), .INIT_01 (256'h10003AEAF8E9036701A328203BEAA310103B5AA310003ADAF8D0032539014D00), .INIT_02 (256'h01A328203C8AA310103B7AA310003AFAF802046701A328203C3AA310103B6AA3), .INIT_03 (256'hA310003ABAF8E9036700A310103B2AA310003AAAF8D0036978018700F81B0467), .INIT_04 (256'h3B1AA310003A9AF8B6036700A310103B4AA310003ACAF802046700A310103B3A), .INIT_05 (256'hAB100002080207F8B603D01104B60303000702F88B036700A328203B9AA31010), .INIT_06 (256'h00020A0209F8D003D8EB01FE00F81B046700AB282002600257AB10100223021F), .INIT_07 (256'h02046700AB10100233022FAB1000020C020BF8E9036700AB1010022B0227AB10), .INIT_08 (256'h0215020FF8D0031933014D00F834046700AB1010023B0237AB1000020E020DF8), .INIT_09 (256'h4B0247AB1000021C021BF8E9036701AB2820027E0269AB10100243023FAB1000), .INIT_0A (256'h02BDAB10100253024FAB1000021E021DF802046701AB282002A80293AB101002), .INIT_0B (256'h0100F8AD049CF880047B0092282004870092101001921000026701AB282002D2), .INIT_0C (256'h049C080292010001DBA00100FFA000F870048B100226F84C0486861605040302), .INIT_0D (256'hBD0100FF7FAB0001000101000100FF609001206070A3000101000190C100F89F), .INIT_0E (256'hE420E40003001A35502A00372007501300372070003720800037200650130F00), .INIT_0F (256'h46F80001020000A000F200000100F2400D0300E5010001F1000230080003E410), .INIT_10 (256'h45FFFFFFFFFF0108003301FF5A3D4B4A45FFFFFFFFFFFFFFFF00000204000006), .INIT_11 (256'h45FF018000FF5A5145FF018000FF5A5145FF018001FF5A5145FF018001FF5A51), .INIT_12 (256'hFF41403F3E3D0A0000FF018000FF5A5145FF018000FF5A5145FF018000FF5A51), .INIT_13 (256'h1030FF5A45535141403F3E3D0A0908070C0B0605040000FF0101030303111030), .INIT_14 (256'h3E3D0A0908070C0B0605040000FF010280800201030303087047000100030002), .INIT_15 (256'h040000FF0102808002020303030870470001000300021030FF5A45535141403F), .INIT_16 (256'h0303034070470001000300021030FF5A45535141403F3E3D0A0908070C0B0605), .INIT_17 (256'h2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A0DFF010280800202), .INIT_18 (256'h2A2A2A20202020200D2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_19 (256'h2A2A2A2065726F43206769666E6F43206B636F6C432033762050524157202A2A), .INIT_1A (256'h203A6574614420796C626D65737341206D6172676F72502020202020200D2A2A), .INIT_1B (256'h2061746164206769666E6F6320646E756F46000D0D35313032206E614A203432), .INIT_1C (256'h504545206E692061746164206769666E6F63206F4E000D4D4F52504545206E69), .INIT_1D (256'h4D206B636F6C43206F4E000D73746C756166654420676E697355202D204D4F52), .INIT_1E (256'h72756769666E6F6320676E6964616F4C000D646574636574654420656C75646F), .INIT_1F (256'h42206E6F69746172756769666E6F6320676E6964616F4C000D41206E6F697461), .INIT_20 (256'h6365746544000D43206E6F69746172756769666E6F6320676E6964616F4C000D), .INIT_21 (256'h2D4D43206465746365746544000D656C75646F4D2058434D4D2D4D4320646574), .INIT_22 (256'h4C502064696C617620726F6620676E6974696157000D656C75646F4D204C4C50), .INIT_23 (256'h000D2164696C6176206B6C6320666572002E2E2E2E2E2E6B6C6320666572204C), .INIT_24 (256'h50002E2E2E6B636F6C204C4C502031313539444120726F6620676E6974696157), .INIT_25 (256'h656C706D6F43206769666E6F43206B636F6C43000D0D2164656B636F6C204C4C), .INIT_26 (256'h2A2A2A0D737365636F725020746F6F4220676E69756E69746E6F43202D206574), .INIT_27 (256'h2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_28 (256'h0047553E5444003A5544543E4700040201000D0D2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_29 (256'h0401005404FE00014A3047003A553E5444002B014A0821000E30472644251080), .INIT_2A (256'h0000005B0131005A5A5A5A5A003A57000203573E54470004020004FD00400103), .INIT_2B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_30 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_31 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_32 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_33 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_34 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_35 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_36 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_37 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_38 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_39 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_00 (256'h7CB96F972D2DF2E5CB5397AD6B7AD6F5ADEB5A5BD6B5BD6B5BD6B5A5A1CAD6AB), .INITP_01 (256'h635291E3F3DF777EB54A259AC9C17AE02EF9E67972E5BE5CB96F972E5BFBE5CB), .INITP_02 (256'hFFFFFF8000000000000000000000000000000000000000000000000000000020), .INITP_03 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_04 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_05 (256'h000000000000000000000000000000000000000011F73DB4DDEFBEFF7DFBFFFF), .INITP_06 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_07 (256'h0000000000000000000000000000000000000000000000000000000000000000)) kcpsm6_rom_l( .ADDRA (address_a[13:0]), .ENA (enable), .CLKA (clk), .DOA (data_out_a_l[31:0]), .DOPA (data_out_a_l[35:32]), .DIA (data_in_a[31:0]), .DIPA (data_in_a[35:32]), .WEA (4'b0000), .REGCEA (1'b0), .RSTA (1'b0), .ADDRB (address_b[13:0]), .ENB (enable_b), .CLKB (clk_b), .DOB (data_out_b_l[31:0]), .DOPB (data_out_b_l[35:32]), .DIB (data_in_b_l[31:0]), .DIPB (data_in_b_l[35:32]), .WEB (we_b[3:0]), .REGCEB (1'b0), .RSTB (1'b0)); // RAMB16BWER #(.DATA_WIDTH_A (9), .DOA_REG (0), .EN_RSTRAM_A ("FALSE"), .INIT_A (9'b000000000), .RST_PRIORITY_A ("CE"), .SRVAL_A (9'b000000000), .WRITE_MODE_A ("WRITE_FIRST"), .DATA_WIDTH_B (9), .DOB_REG (0), .EN_RSTRAM_B ("FALSE"), .INIT_B (9'b000000000), .RST_PRIORITY_B ("CE"), .SRVAL_B (9'b000000000), .WRITE_MODE_B ("WRITE_FIRST"), .RSTTYPE ("SYNC"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .SIM_DEVICE ("SPARTAN6"), .INIT_00 (256'h000D0D10906890E818001848000D0DB0EE009C8BB0EE000C0B58000D0D580000), .INIT_01 (256'h090C0C0B000D0D100F00090C0C0B00090C0C0B00090C0C0B000D0D1090E890E8), .INIT_02 (256'h0F00090C0C0B00090C0C0B00090C0C0B000D0D100F00090C0C0B00090C0C0B00), .INIT_03 (256'h00090C0C0B000D0D100F00090C0C0B00090C0C0B000D0D1090E890E8000D0D10), .INIT_04 (256'h0C0B00090C0C0B000D0D100F00090C0C0B00090C0C0B000D0D100F00090C0C0B), .INIT_05 (256'h000A0B0D0C0C0B000D0D10906890E818001848000D0D100F00090C0C0B00090C), .INIT_06 (256'h0B0D0C0C0B000D0D1090E890E8000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B), .INIT_07 (256'h0D0D100F000A0B0D0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A), .INIT_08 (256'h0D0C0C0B000D0D1090E890E8000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B00), .INIT_09 (256'h0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B000A0B), .INIT_0A (256'h0C0B000A0B0D0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A0B0D), .INIT_0B (256'h5858000D0D00000D0D90EF000D0D08A0EF000D0D08000D0D08100F000A0B0D0C), .INIT_0C (256'h0D901848108D88CD00508D88E95128000D0D90684858000D0D10105858585858), .INIT_0D (256'hB0C8700808109D8C9C8B8B88CA88E971258B017124109C8B8C88C9760028000D), .INIT_0E (256'h00010009682802020602C80202A20A02C8020202C8020202C80202A20A020228), .INIT_0F (256'h58109D8D0188EC2528B0D9D8C8001008080928B05800CA5FA16A020A28580001), .INIT_10 (256'h09090909090909090909090909090909090909090909090909286CB168482858), .INIT_11 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_12 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_13 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_14 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_15 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_16 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_17 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C09090909090909), .INIT_18 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_19 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1A (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1B (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1C (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1D (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1E (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1F (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_20 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_21 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_22 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_23 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_24 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_25 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_26 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_27 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_28 (256'h28020202020228020202020202286F2F0F0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_29 (256'h6F2F28026F1F286A02120228020202020228B2C8020812C8A002021202B26208), .INIT_2A (256'h000028B2C808280202020202280202A2684802020202286F2F286F1F28926848), .INIT_2B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_30 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_31 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_32 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_33 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_34 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_35 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_36 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_37 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_38 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_39 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_00 (256'h2810250204D4A040813412842128425084A109A9421094210942109A9A094A67), .INITP_01 (256'hCDC2394EAF79EEE7A4159C5E4A93267FE6514450204094081025020409A94081), .INITP_02 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3), .INITP_03 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_04 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_05 (256'h000000000000000000000000000000000000000033FE3F6CBAFFEB7CFFFE7FFF), .INITP_06 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_07 (256'h0000000000000000000000000000000000000000000000000000000000000000)) kcpsm6_rom_h( .ADDRA (address_a[13:0]), .ENA (enable), .CLKA (clk), .DOA (data_out_a_h[31:0]), .DOPA (data_out_a_h[35:32]), .DIA (data_in_a[31:0]), .DIPA (data_in_a[35:32]), .WEA (4'b0000), .REGCEA (1'b0), .RSTA (1'b0), .ADDRB (address_b[13:0]), .ENB (enable_b), .CLKB (clk_b), .DOB (data_out_b_h[31:0]), .DOPB (data_out_b_h[35:32]), .DIB (data_in_b_h[31:0]), .DIPB (data_in_b_h[35:32]), .WEB (we_b[3:0]), .REGCEB (1'b0), .RSTB (1'b0)); end // s6; // // if (C_FAMILY == "V6") begin: v6 // assign address_a = {1'b1, address[10:0], 4'b1111}; assign instruction = {data_out_a[33:32], data_out_a[15:0]}; assign data_in_a = {35'b00000000000000000000000000000000000, address[11]}; assign jtag_dout = {data_out_b[33:32], data_out_b[15:0]}; // if (C_JTAG_LOADER_ENABLE == 0) begin : no_loader assign data_in_b = {2'b00, data_out_b[33:32], 16'b0000000000000000, data_out_b[15:0]}; assign address_b = 16'b1111111111111111; assign we_b = 8'b00000000; assign enable_b = 1'b0; assign rdl = 1'b0; assign clk_b = 1'b0; end // no_loader; // if (C_JTAG_LOADER_ENABLE == 1) begin : loader assign data_in_b = {2'b00, jtag_din[17:16], 16'b0000000000000000, jtag_din[15:0]}; assign address_b = {1'b1, jtag_addr[10:0], 4'b1111}; assign we_b = {jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we}; assign enable_b = jtag_en[0]; assign rdl = rdl_bus[0]; assign clk_b = jtag_clk; end // loader; // RAMB36E1 #(.READ_WIDTH_A (18), .WRITE_WIDTH_A (18), .DOA_REG (0), .INIT_A (36'h000000000), .RSTREG_PRIORITY_A ("REGCE"), .SRVAL_A (36'h000000000), .WRITE_MODE_A ("WRITE_FIRST"), .READ_WIDTH_B (18), .WRITE_WIDTH_B (18), .DOB_REG (0), .INIT_B (36'h000000000), .RSTREG_PRIORITY_B ("REGCE"), .SRVAL_B (36'h000000000), .WRITE_MODE_B ("WRITE_FIRST"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .RAM_MODE ("TDP"), .RDADDR_COLLISION_HWCONFIG ("DELAYED_WRITE"), .EN_ECC_READ ("FALSE"), .EN_ECC_WRITE ("FALSE"), .RAM_EXTENSION_A ("NONE"), .RAM_EXTENSION_B ("NONE"), .SIM_DEVICE ("VIRTEX6"), .INIT_00 (256'hDDCD01C13800170160AADDA501C1183A1798B01501F81AE71B02B00601BB01EE), .INIT_01 (256'h01F81A341B042061201DD0042096D103310301003007900201F81A6E1B0360AA), .INIT_02 (256'h1910183B175A01A312101900183A17DA01F81AD01B0320252039D101204DD100), .INIT_03 (256'h12101900183A17EA01F81AE91B0321671F0101A312281920183B17EA01A31210), .INIT_04 (256'h01F81A021B0421671F0101A312281920183C173A01A312101910183B176A01A3), .INIT_05 (256'h1F0101A312281920183C178A01A312101910183B177A01A312101900183A17FA), .INIT_06 (256'h12101900183A17AA01F81AD01B0320692078D1012087D10001F81A1B1B042167), .INIT_07 (256'h01A312101900183A17BA01F81AE91B0321671F0001A312101910183B172A01A3), .INIT_08 (256'h174A01A312101900183A17CA01F81A021B0421671F0001A312101910183B173A), .INIT_09 (256'h183B171A01A312101900183A179A01F81AB61B0321671F0001A312101910183B), .INIT_0A (256'h01003007900201F81A8B1B0321671F0001A312281920183B179A01A312101910), .INIT_0B (256'h01AB151016001A0219081802170701F81AB61B0320D02111D00420B6D1033103), .INIT_0C (256'h21671F0001AB152816201A0219601802175701AB151016101A0219231802171F), .INIT_0D (256'h16001A02190A1802170901F81AD01B0320D820EBD10120FED10001F81A1B1B04), .INIT_0E (256'h1802170B01F81AE91B0321671F0001AB151016101A02192B1802172701AB1510), .INIT_0F (256'h1A021B0421671F0001AB151016101A0219331802172F01AB151016001A02190C), .INIT_10 (256'h1F0001AB151016101A02193B1802173701AB151016001A02190E1802170D01F8), .INIT_11 (256'h1A0219151802170F01F81AD01B0321192133D101214DD10001F81A341B042167), .INIT_12 (256'h152816201A02197E1802176901AB151016101A0219431802173F01AB15101600), .INIT_13 (256'h194B1802174701AB151016001A02191C1802171B01F81AE91B0321671F0101AB), .INIT_14 (256'h01F81A021B0421671F0101AB152816201A0219A81802179301AB151016101A02), .INIT_15 (256'h180217BD01AB151016101A0219531802174F01AB151016001A02191E1802171D), .INIT_16 (256'hDF0001921B101A10100101921B101A00100221671F0101AB152816201A0219D2), .INIT_17 (256'hB001B00001F81AAD1B04019C01F81A801B04217BDF0001921B281A2010044187), .INIT_18 (256'h1A701B04218BD1109102B02601F81A4C1B0421862186B016B005B004B003B002), .INIT_19 (256'h1B04219C3008900221921A0110009B0101DBA1A01A011000D2FFA2A0500001F8), .INIT_1A (256'h4A9016010320E260487021A338001701190110009201ED9001C1500001F81A9F), .INIT_1B (256'h61BD9001E10011FF107F21AB3A001901380017011601100095011000D3FFE260), .INIT_1C (256'h90000537052005709000053705200580900005370520450615500513050F5000), .INIT_1D (256'h01E4032001E41300D0035000051A05350D50052A900005370520450715500513), .INIT_1E (256'h110D1203500061E5B00100009401BFF14300D502053014085000B00301E40310), .INIT_1F (256'hB04621F83B001A0102021000D9004BA0500061F2B200B1009001000021F21040), .INIT_20 (256'h124512FF12FF12FF12FF12FF12FF12FF12FF5000D9006202D00490005000B006), .INIT_21 (256'h124512FF12FF12FF12FF12FF1201120812001233120112FF125A123D124B124A), .INIT_22 (256'h124512FF12011280120112FF125A1251124512FF12011280120112FF125A1251), .INIT_23 (256'h124512FF12011280120012FF125A1251124512FF12011280120012FF125A1251), .INIT_24 (256'h124512FF12011280120012FF125A1251124512FF12011280120012FF125A1251), .INIT_25 (256'h12FF12411240123F123E123D120A1200120012FF12011280120012FF125A1251), .INIT_26 (256'h120C120B1206120512041200120012FF12011201120312031203121112101230), .INIT_27 (256'h1210123012FF125A12451253125112411240123F123E123D120A120912081207), .INIT_28 (256'h1280128012021201120312031203120812701247120012011200120312001202), .INIT_29 (256'h123E123D120A120912081207120C120B1206120512041200120012FF12011202), .INIT_2A (256'h1200120112001203120012021210123012FF125A12451253125112411240123F), .INIT_2B (256'h12041200120012FF120112021280128012021202120312031203120812701247), .INIT_2C (256'h12451253125112411240123F123E123D120A120912081207120C120B12061205), .INIT_2D (256'h1203120312031240127012471200120112001203120012021210123012FF125A), .INIT_2E (256'h192A192A192A192A192A192A192A192A190D12FF120112021280128012021202), .INIT_2F (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_30 (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_31 (256'h192A192A192A19201920192019201920190D192A192A192A192A192A192A192A), .INIT_32 (256'h196B1963196F196C1943192019331976192019501952194119571920192A192A), .INIT_33 (256'h192A192A192A192019651972196F19431920196719691966196E196F19431920), .INIT_34 (256'h196D196119721967196F19721950192019201920192019201920190D192A192A), .INIT_35 (256'h1920193A196519741961194419201979196C1962196D19651973197319411920), .INIT_36 (256'h196F19461900190D190D19351931193019321920196E1961194A192019341932), .INIT_37 (256'h192019611974196119641920196719691966196E196F196319201964196E1975), .INIT_38 (256'h196F19631920196F194E1900190D194D194F19521950194519451920196E1969), .INIT_39 (256'h1950194519451920196E1969192019611974196119641920196719691966196E), .INIT_3A (256'h196119661965194419201967196E1969197319551920192D1920194D194F1952), .INIT_3B (256'h194D1920196B1963196F196C19431920196F194E1900190D19731974196C1975), .INIT_3C (256'h1900190D1964196519741963196519741965194419201965196C19751964196F), .INIT_3D (256'h19721975196719691966196E196F196319201967196E196919641961196F194C), .INIT_3E (256'h1967196E196919641961196F194C1900190D19411920196E196F196919741961), .INIT_3F (256'h19421920196E196F19691974196119721975196719691966196E196F19631920), .INIT_40 (256'h196719691966196E196F196319201967196E196919641961196F194C1900190D), .INIT_41 (256'h196319651974196519441900190D19431920196E196F19691974196119721975), .INIT_42 (256'h19751964196F194D192019581943194D194D192D194D19431920196419651974), .INIT_43 (256'h192D194D19431920196419651974196319651974196519441900190D1965196C), .INIT_44 (256'h19741969196119571900190D1965196C19751964196F194D1920194C194C1950), .INIT_45 (256'h194C1950192019641969196C1961197619201972196F196619201967196E1969), .INIT_46 (256'h1900192E192E192E192E192E192E196B196C196319201966196519721920194C), .INIT_47 (256'h1900190D192119641969196C196119761920196B196C19631920196619651972), .INIT_48 (256'h193519391944194119201972196F196619201967196E19691974196919611957), .INIT_49 (256'h19501900192E192E192E196B1963196F196C1920194C194C1950192019311931), .INIT_4A (256'h196F196C19431900190D190D192119641965196B1963196F196C1920194C194C), .INIT_4B (256'h1965196C1970196D196F19431920196719691966196E196F19431920196B1963), .INIT_4C (256'h19201967196E19691975196E19691974196E196F19431920192D192019651974), .INIT_4D (256'h192A192A192A190D1973197319651963196F1972195019201974196F196F1942), .INIT_4E (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_4F (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_50 (256'h1F011900190D190D192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_51 (256'h500005470555053E055405445000053A055505440554053E05475000DF045F02), .INIT_52 (256'h05445000652B9101054A110825219000410E05300547252605446525C5101180), .INIT_53 (256'hDF045F0150000554DF043FFE5000D501054A253005475000053A0555053E0554), .INIT_54 (256'hD00290030557053E055405475000DF045F025000DF043FFD50002540D0019003), .INIT_55 (256'h000000005000655B900110315000055A055A055A055A055A5000053A05574500), .INIT_56 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_57 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_58 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_59 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_60 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_61 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_62 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_63 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_64 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_65 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_66 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_67 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_68 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_69 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_70 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_71 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_72 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_73 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_74 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_75 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_76 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_77 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_78 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_79 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_00 (256'h802088020082DD82200802008220080200822008020082DD82CD008365D8282A), .INITP_01 (256'h08800200082200080020B7608800200080020B34020880200802088020082200), .INITP_02 (256'hA828360360202200080020008220008002000822000800200082DD8220008002), .INITP_03 (256'hA5B6B5480B8660A888AA2E92E8E8E92AD825577692A576A8309D874A0C282AAA), .INITP_04 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0A), .INITP_05 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_06 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_07 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_08 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_09 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_0A (256'h00000000000000000B4AAAA90AAA28B08A88AAAAAD8B6AB0AAAAAAA82AAAAAAA), .INITP_0B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0F (256'h0000000000000000000000000000000000000000000000000000000000000000)) kcpsm6_rom( .ADDRARDADDR (address_a), .ENARDEN (enable), .CLKARDCLK (clk), .DOADO (data_out_a[31:0]), .DOPADOP (data_out_a[35:32]), .DIADI (data_in_a[31:0]), .DIPADIP (data_in_a[35:32]), .WEA (4'b0000), .REGCEAREGCE (1'b0), .RSTRAMARSTRAM (1'b0), .RSTREGARSTREG (1'b0), .ADDRBWRADDR (address_b), .ENBWREN (enable_b), .CLKBWRCLK (clk_b), .DOBDO (data_out_b[31:0]), .DOPBDOP (data_out_b[35:32]), .DIBDI (data_in_b[31:0]), .DIPBDIP (data_in_b[35:32]), .WEBWE (we_b), .REGCEB (1'b0), .RSTRAMB (1'b0), .RSTREGB (1'b0), .CASCADEINA (1'b0), .CASCADEINB (1'b0), .CASCADEOUTA (), .CASCADEOUTB (), .DBITERR (), .ECCPARITY (), .RDADDRECC (), .SBITERR (), .INJECTDBITERR (1'b0), .INJECTSBITERR (1'b0)); end // v6; // // if (C_FAMILY == "7S") begin: akv7 // assign address_a = {1'b1, address[10:0], 4'b1111}; assign instruction = {data_out_a[33:32], data_out_a[15:0]}; assign data_in_a = {35'b00000000000000000000000000000000000, address[11]}; assign jtag_dout = {data_out_b[33:32], data_out_b[15:0]}; // if (C_JTAG_LOADER_ENABLE == 0) begin : no_loader assign data_in_b = {2'b00, data_out_b[33:32], 16'b0000000000000000, data_out_b[15:0]}; assign address_b = 16'b1111111111111111; assign we_b = 8'b00000000; assign enable_b = 1'b0; assign rdl = 1'b0; assign clk_b = 1'b0; end // no_loader; // if (C_JTAG_LOADER_ENABLE == 1) begin : loader assign data_in_b = {2'b00, jtag_din[17:16], 16'b0000000000000000, jtag_din[15:0]}; assign address_b = {1'b1, jtag_addr[10:0], 4'b1111}; assign we_b = {jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we}; assign enable_b = jtag_en[0]; assign rdl = rdl_bus[0]; assign clk_b = jtag_clk; end // loader; // RAMB36E1 #(.READ_WIDTH_A (18), .WRITE_WIDTH_A (18), .DOA_REG (0), .INIT_A (36'h000000000), .RSTREG_PRIORITY_A ("REGCE"), .SRVAL_A (36'h000000000), .WRITE_MODE_A ("WRITE_FIRST"), .READ_WIDTH_B (18), .WRITE_WIDTH_B (18), .DOB_REG (0), .INIT_B (36'h000000000), .RSTREG_PRIORITY_B ("REGCE"), .SRVAL_B (36'h000000000), .WRITE_MODE_B ("WRITE_FIRST"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .RAM_MODE ("TDP"), .RDADDR_COLLISION_HWCONFIG ("DELAYED_WRITE"), .EN_ECC_READ ("FALSE"), .EN_ECC_WRITE ("FALSE"), .RAM_EXTENSION_A ("NONE"), .RAM_EXTENSION_B ("NONE"), .SIM_DEVICE ("7SERIES"), .INIT_00 (256'hDDCD01C13800170160AADDA501C1183A1798B01501F81AE71B02B00601BB01EE), .INIT_01 (256'h01F81A341B042061201DD0042096D103310301003007900201F81A6E1B0360AA), .INIT_02 (256'h1910183B175A01A312101900183A17DA01F81AD01B0320252039D101204DD100), .INIT_03 (256'h12101900183A17EA01F81AE91B0321671F0101A312281920183B17EA01A31210), .INIT_04 (256'h01F81A021B0421671F0101A312281920183C173A01A312101910183B176A01A3), .INIT_05 (256'h1F0101A312281920183C178A01A312101910183B177A01A312101900183A17FA), .INIT_06 (256'h12101900183A17AA01F81AD01B0320692078D1012087D10001F81A1B1B042167), .INIT_07 (256'h01A312101900183A17BA01F81AE91B0321671F0001A312101910183B172A01A3), .INIT_08 (256'h174A01A312101900183A17CA01F81A021B0421671F0001A312101910183B173A), .INIT_09 (256'h183B171A01A312101900183A179A01F81AB61B0321671F0001A312101910183B), .INIT_0A (256'h01003007900201F81A8B1B0321671F0001A312281920183B179A01A312101910), .INIT_0B (256'h01AB151016001A0219081802170701F81AB61B0320D02111D00420B6D1033103), .INIT_0C (256'h21671F0001AB152816201A0219601802175701AB151016101A0219231802171F), .INIT_0D (256'h16001A02190A1802170901F81AD01B0320D820EBD10120FED10001F81A1B1B04), .INIT_0E (256'h1802170B01F81AE91B0321671F0001AB151016101A02192B1802172701AB1510), .INIT_0F (256'h1A021B0421671F0001AB151016101A0219331802172F01AB151016001A02190C), .INIT_10 (256'h1F0001AB151016101A02193B1802173701AB151016001A02190E1802170D01F8), .INIT_11 (256'h1A0219151802170F01F81AD01B0321192133D101214DD10001F81A341B042167), .INIT_12 (256'h152816201A02197E1802176901AB151016101A0219431802173F01AB15101600), .INIT_13 (256'h194B1802174701AB151016001A02191C1802171B01F81AE91B0321671F0101AB), .INIT_14 (256'h01F81A021B0421671F0101AB152816201A0219A81802179301AB151016101A02), .INIT_15 (256'h180217BD01AB151016101A0219531802174F01AB151016001A02191E1802171D), .INIT_16 (256'hDF0001921B101A10100101921B101A00100221671F0101AB152816201A0219D2), .INIT_17 (256'hB001B00001F81AAD1B04019C01F81A801B04217BDF0001921B281A2010044187), .INIT_18 (256'h1A701B04218BD1109102B02601F81A4C1B0421862186B016B005B004B003B002), .INIT_19 (256'h1B04219C3008900221921A0110009B0101DBA1A01A011000D2FFA2A0500001F8), .INIT_1A (256'h4A9016010320E260487021A338001701190110009201ED9001C1500001F81A9F), .INIT_1B (256'h61BD9001E10011FF107F21AB3A001901380017011601100095011000D3FFE260), .INIT_1C (256'h90000537052005709000053705200580900005370520450615500513050F5000), .INIT_1D (256'h01E4032001E41300D0035000051A05350D50052A900005370520450715500513), .INIT_1E (256'h110D1203500061E5B00100009401BFF14300D502053014085000B00301E40310), .INIT_1F (256'hB04621F83B001A0102021000D9004BA0500061F2B200B1009001000021F21040), .INIT_20 (256'h124512FF12FF12FF12FF12FF12FF12FF12FF5000D9006202D00490005000B006), .INIT_21 (256'h124512FF12FF12FF12FF12FF1201120812001233120112FF125A123D124B124A), .INIT_22 (256'h124512FF12011280120112FF125A1251124512FF12011280120112FF125A1251), .INIT_23 (256'h124512FF12011280120012FF125A1251124512FF12011280120012FF125A1251), .INIT_24 (256'h124512FF12011280120012FF125A1251124512FF12011280120012FF125A1251), .INIT_25 (256'h12FF12411240123F123E123D120A1200120012FF12011280120012FF125A1251), .INIT_26 (256'h120C120B1206120512041200120012FF12011201120312031203121112101230), .INIT_27 (256'h1210123012FF125A12451253125112411240123F123E123D120A120912081207), .INIT_28 (256'h1280128012021201120312031203120812701247120012011200120312001202), .INIT_29 (256'h123E123D120A120912081207120C120B1206120512041200120012FF12011202), .INIT_2A (256'h1200120112001203120012021210123012FF125A12451253125112411240123F), .INIT_2B (256'h12041200120012FF120112021280128012021202120312031203120812701247), .INIT_2C (256'h12451253125112411240123F123E123D120A120912081207120C120B12061205), .INIT_2D (256'h1203120312031240127012471200120112001203120012021210123012FF125A), .INIT_2E (256'h192A192A192A192A192A192A192A192A190D12FF120112021280128012021202), .INIT_2F (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_30 (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_31 (256'h192A192A192A19201920192019201920190D192A192A192A192A192A192A192A), .INIT_32 (256'h196B1963196F196C1943192019331976192019501952194119571920192A192A), .INIT_33 (256'h192A192A192A192019651972196F19431920196719691966196E196F19431920), .INIT_34 (256'h196D196119721967196F19721950192019201920192019201920190D192A192A), .INIT_35 (256'h1920193A196519741961194419201979196C1962196D19651973197319411920), .INIT_36 (256'h196F19461900190D190D19351931193019321920196E1961194A192019341932), .INIT_37 (256'h192019611974196119641920196719691966196E196F196319201964196E1975), .INIT_38 (256'h196F19631920196F194E1900190D194D194F19521950194519451920196E1969), .INIT_39 (256'h1950194519451920196E1969192019611974196119641920196719691966196E), .INIT_3A (256'h196119661965194419201967196E1969197319551920192D1920194D194F1952), .INIT_3B (256'h194D1920196B1963196F196C19431920196F194E1900190D19731974196C1975), .INIT_3C (256'h1900190D1964196519741963196519741965194419201965196C19751964196F), .INIT_3D (256'h19721975196719691966196E196F196319201967196E196919641961196F194C), .INIT_3E (256'h1967196E196919641961196F194C1900190D19411920196E196F196919741961), .INIT_3F (256'h19421920196E196F19691974196119721975196719691966196E196F19631920), .INIT_40 (256'h196719691966196E196F196319201967196E196919641961196F194C1900190D), .INIT_41 (256'h196319651974196519441900190D19431920196E196F19691974196119721975), .INIT_42 (256'h19751964196F194D192019581943194D194D192D194D19431920196419651974), .INIT_43 (256'h192D194D19431920196419651974196319651974196519441900190D1965196C), .INIT_44 (256'h19741969196119571900190D1965196C19751964196F194D1920194C194C1950), .INIT_45 (256'h194C1950192019641969196C1961197619201972196F196619201967196E1969), .INIT_46 (256'h1900192E192E192E192E192E192E196B196C196319201966196519721920194C), .INIT_47 (256'h1900190D192119641969196C196119761920196B196C19631920196619651972), .INIT_48 (256'h193519391944194119201972196F196619201967196E19691974196919611957), .INIT_49 (256'h19501900192E192E192E196B1963196F196C1920194C194C1950192019311931), .INIT_4A (256'h196F196C19431900190D190D192119641965196B1963196F196C1920194C194C), .INIT_4B (256'h1965196C1970196D196F19431920196719691966196E196F19431920196B1963), .INIT_4C (256'h19201967196E19691975196E19691974196E196F19431920192D192019651974), .INIT_4D (256'h192A192A192A190D1973197319651963196F1972195019201974196F196F1942), .INIT_4E (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_4F (256'h192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_50 (256'h1F011900190D190D192A192A192A192A192A192A192A192A192A192A192A192A), .INIT_51 (256'h500005470555053E055405445000053A055505440554053E05475000DF045F02), .INIT_52 (256'h05445000652B9101054A110825219000410E05300547252605446525C5101180), .INIT_53 (256'hDF045F0150000554DF043FFE5000D501054A253005475000053A0555053E0554), .INIT_54 (256'hD00290030557053E055405475000DF045F025000DF043FFD50002540D0019003), .INIT_55 (256'h000000005000655B900110315000055A055A055A055A055A5000053A05574500), .INIT_56 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_57 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_58 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_59 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_60 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_61 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_62 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_63 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_64 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_65 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_66 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_67 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_68 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_69 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_70 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_71 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_72 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_73 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_74 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_75 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_76 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_77 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_78 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_79 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_00 (256'h802088020082DD82200802008220080200822008020082DD82CD008365D8282A), .INITP_01 (256'h08800200082200080020B7608800200080020B34020880200802088020082200), .INITP_02 (256'hA828360360202200080020008220008002000822000800200082DD8220008002), .INITP_03 (256'hA5B6B5480B8660A888AA2E92E8E8E92AD825577692A576A8309D874A0C282AAA), .INITP_04 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAB0A), .INITP_05 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_06 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_07 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_08 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_09 (256'hAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA), .INITP_0A (256'h00000000000000000B4AAAA90AAA28B08A88AAAAAD8B6AB0AAAAAAA82AAAAAAA), .INITP_0B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0F (256'h0000000000000000000000000000000000000000000000000000000000000000)) kcpsm6_rom( .ADDRARDADDR (address_a), .ENARDEN (enable), .CLKARDCLK (clk), .DOADO (data_out_a[31:0]), .DOPADOP (data_out_a[35:32]), .DIADI (data_in_a[31:0]), .DIPADIP (data_in_a[35:32]), .WEA (4'b0000), .REGCEAREGCE (1'b0), .RSTRAMARSTRAM (1'b0), .RSTREGARSTREG (1'b0), .ADDRBWRADDR (address_b), .ENBWREN (enable_b), .CLKBWRCLK (clk_b), .DOBDO (data_out_b[31:0]), .DOPBDOP (data_out_b[35:32]), .DIBDI (data_in_b[31:0]), .DIPBDIP (data_in_b[35:32]), .WEBWE (we_b), .REGCEB (1'b0), .RSTRAMB (1'b0), .RSTREGB (1'b0), .CASCADEINA (1'b0), .CASCADEINB (1'b0), .CASCADEOUTA (), .CASCADEOUTB (), .DBITERR (), .ECCPARITY (), .RDADDRECC (), .SBITERR (), .INJECTDBITERR (1'b0), .INJECTSBITERR (1'b0)); end // akv7; // end // ram_2k_generate; endgenerate // generate if (C_RAM_SIZE_KWORDS == 4) begin : ram_4k_generate if (C_FAMILY == "S6") begin: s6 // assign address_a[13:0] = {address[10:0], 3'b000}; assign data_in_a = 36'b000000000000000000000000000000000000; // FD s6_a11_flop ( .D (address[11]), .Q (pipe_a11), .C (clk)); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_mux0_lut( .I0 (data_out_a_ll[0]), .I1 (data_out_a_hl[0]), .I2 (data_out_a_ll[1]), .I3 (data_out_a_hl[1]), .I4 (pipe_a11), .I5 (1'b1), .O5 (instruction[0]), .O6 (instruction[1])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_mux2_lut( .I0 (data_out_a_ll[2]), .I1 (data_out_a_hl[2]), .I2 (data_out_a_ll[3]), .I3 (data_out_a_hl[3]), .I4 (pipe_a11), .I5 (1'b1), .O5 (instruction[2]), .O6 (instruction[3])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_mux4_lut( .I0 (data_out_a_ll[4]), .I1 (data_out_a_hl[4]), .I2 (data_out_a_ll[5]), .I3 (data_out_a_hl[5]), .I4 (pipe_a11), .I5 (1'b1), .O5 (instruction[4]), .O6 (instruction[5])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_mux6_lut( .I0 (data_out_a_ll[6]), .I1 (data_out_a_hl[6]), .I2 (data_out_a_ll[7]), .I3 (data_out_a_hl[7]), .I4 (pipe_a11), .I5 (1'b1), .O5 (instruction[6]), .O6 (instruction[7])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_mux8_lut( .I0 (data_out_a_ll[32]), .I1 (data_out_a_hl[32]), .I2 (data_out_a_lh[0]), .I3 (data_out_a_hh[0]), .I4 (pipe_a11), .I5 (1'b1), .O5 (instruction[8]), .O6 (instruction[9])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_mux10_lut( .I0 (data_out_a_lh[1]), .I1 (data_out_a_hh[1]), .I2 (data_out_a_lh[2]), .I3 (data_out_a_hh[2]), .I4 (pipe_a11), .I5 (1'b1), .O5 (instruction[10]), .O6 (instruction[11])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_mux12_lut( .I0 (data_out_a_lh[3]), .I1 (data_out_a_hh[3]), .I2 (data_out_a_lh[4]), .I3 (data_out_a_hh[4]), .I4 (pipe_a11), .I5 (1'b1), .O5 (instruction[12]), .O6 (instruction[13])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_mux14_lut( .I0 (data_out_a_lh[5]), .I1 (data_out_a_hh[5]), .I2 (data_out_a_lh[6]), .I3 (data_out_a_hh[6]), .I4 (pipe_a11), .I5 (1'b1), .O5 (instruction[14]), .O6 (instruction[15])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_mux16_lut( .I0 (data_out_a_lh[7]), .I1 (data_out_a_hh[7]), .I2 (data_out_a_lh[32]), .I3 (data_out_a_hh[32]), .I4 (pipe_a11), .I5 (1'b1), .O5 (instruction[16]), .O6 (instruction[17])); // if (C_JTAG_LOADER_ENABLE == 0) begin : no_loader assign data_in_b_ll = {3'b000, data_out_b_ll[32], 24'b000000000000000000000000, data_out_b_ll[7:0]}; assign data_in_b_lh = {3'b000, data_out_b_lh[32], 24'b000000000000000000000000, data_out_b_lh[7:0]}; assign data_in_b_hl = {3'b000, data_out_b_hl[32], 24'b000000000000000000000000, data_out_b_hl[7:0]}; assign data_in_b_hh = {3'b000, data_out_b_hh[32], 24'b000000000000000000000000, data_out_b_hh[7:0]}; assign address_b[13:0] = 14'b00000000000000; assign we_b_l[3:0] = 4'b0000; assign we_b_h[3:0] = 4'b0000; assign enable_b = 1'b0; assign rdl = 1'b0; assign clk_b = 1'b0; assign jtag_dout = {data_out_b_h[32], data_out_b_h[7:0], data_out_b_l[32], data_out_b_l[7:0]}; end // no_loader; // if (C_JTAG_LOADER_ENABLE == 1) begin : loader assign data_in_b_lh = {3'b000, jtag_din[17], 24'b000000000000000000000000, jtag_din[16:9]}; assign data_in_b_ll = {3'b000, jtag_din[8], 24'b000000000000000000000000, jtag_din[7:0]}; assign data_in_b_hh = {3'b000, jtag_din[17], 24'b000000000000000000000000, jtag_din[16:9]}; assign data_in_b_hl = {3'b000, jtag_din[8], 24'b000000000000000000000000, jtag_din[7:0]}; assign address_b[13:0] = {jtag_addr[10:0], 3'b000}; // LUT6_2 # ( .INIT (64'h8000000020000000)) s6_4k_jtag_we_lut( .I0 (jtag_we), .I1 (jtag_addr[11]), .I2 (1'b1), .I3 (1'b1), .I4 (1'b1), .I5 (1'b1), .O5 (jtag_we_l), .O6 (jtag_we_h)); // assign we_b_l[3:0] = {jtag_we_l, jtag_we_l, jtag_we_l, jtag_we_l}; assign we_b_h[3:0] = {jtag_we_h, jtag_we_h, jtag_we_h, jtag_we_h}; // assign enable_b = jtag_en[0]; assign rdl = rdl_bus[0]; assign clk_b = jtag_clk; // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_jtag_mux0_lut( .I0 (data_out_b_ll[0]), .I1 (data_out_b_hl[0]), .I2 (data_out_b_ll[1]), .I3 (data_out_b_hl[1]), .I4 (jtag_addr[11]), .I5 (1'b1), .O5 (jtag_dout[0]), .O6 (jtag_dout[1])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_jtag_mux2_lut( .I0 (data_out_b_ll[2]), .I1 (data_out_b_hl[2]), .I2 (data_out_b_ll[3]), .I3 (data_out_b_hl[3]), .I4 (jtag_addr[11]), .I5 (1'b1), .O5 (jtag_dout[2]), .O6 (jtag_dout[3])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_jtag_mux4_lut( .I0 (data_out_b_ll[4]), .I1 (data_out_b_hl[4]), .I2 (data_out_b_ll[5]), .I3 (data_out_b_hl[5]), .I4 (jtag_addr[11]), .I5 (1'b1), .O5 (jtag_dout[4]), .O6 (jtag_dout[5])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_jtag_mux6_lut( .I0 (data_out_b_ll[6]), .I1 (data_out_b_hl[6]), .I2 (data_out_b_ll[7]), .I3 (data_out_b_hl[7]), .I4 (jtag_addr[11]), .I5 (1'b1), .O5 (jtag_dout[6]), .O6 (jtag_dout[7])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_jtag_mux8_lut( .I0 (data_out_b_ll[32]), .I1 (data_out_b_hl[32]), .I2 (data_out_b_lh[0]), .I3 (data_out_b_hh[0]), .I4 (jtag_addr[11]), .I5 (1'b1), .O5 (jtag_dout[8]), .O6 (jtag_dout[9])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_jtag_mux10_lut( .I0 (data_out_b_lh[1]), .I1 (data_out_b_hh[1]), .I2 (data_out_b_lh[2]), .I3 (data_out_b_hh[2]), .I4 (jtag_addr[11]), .I5 (1'b1), .O5 (jtag_dout[10]), .O6 (jtag_dout[11])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_jtag_mux12_lut( .I0 (data_out_b_lh[3]), .I1 (data_out_b_hh[3]), .I2 (data_out_b_lh[4]), .I3 (data_out_b_hh[4]), .I4 (jtag_addr[11]), .I5 (1'b1), .O5 (jtag_dout[12]), .O6 (jtag_dout[13])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_jtag_mux14_lut( .I0 (data_out_b_lh[5]), .I1 (data_out_b_hh[5]), .I2 (data_out_b_lh[6]), .I3 (data_out_b_hh[6]), .I4 (jtag_addr[11]), .I5 (1'b1), .O5 (jtag_dout[14]), .O6 (jtag_dout[15])); // LUT6_2 # ( .INIT (64'hFF00F0F0CCCCAAAA)) s6_4k_jtag_mux16_lut( .I0 (data_out_b_lh[7]), .I1 (data_out_b_hh[7]), .I2 (data_out_b_lh[32]), .I3 (data_out_b_hh[32]), .I4 (jtag_addr[11]), .I5 (1'b1), .O5 (jtag_dout[16]), .O6 (jtag_dout[17])); // end // loader; // RAMB16BWER #(.DATA_WIDTH_A (9), .DOA_REG (0), .EN_RSTRAM_A ("FALSE"), .INIT_A (9'b000000000), .RST_PRIORITY_A ("CE"), .SRVAL_A (9'b000000000), .WRITE_MODE_A ("WRITE_FIRST"), .DATA_WIDTH_B (9), .DOB_REG (0), .EN_RSTRAM_B ("FALSE"), .INIT_B (9'b000000000), .RST_PRIORITY_B ("CE"), .SRVAL_B (9'b000000000), .WRITE_MODE_B ("WRITE_FIRST"), .RSTTYPE ("SYNC"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .SIM_DEVICE ("SPARTAN6"), .INIT_00 (256'hF83404611D04960303000702F86E03AACDC10001AAA5C13A9815F8E70206BBEE), .INIT_01 (256'h10003AEAF8E9036701A328203BEAA310103B5AA310003ADAF8D0032539014D00), .INIT_02 (256'h01A328203C8AA310103B7AA310003AFAF802046701A328203C3AA310103B6AA3), .INIT_03 (256'hA310003ABAF8E9036700A310103B2AA310003AAAF8D0036978018700F81B0467), .INIT_04 (256'h3B1AA310003A9AF8B6036700A310103B4AA310003ACAF802046700A310103B3A), .INIT_05 (256'hAB100002080207F8B603D01104B60303000702F88B036700A328203B9AA31010), .INIT_06 (256'h00020A0209F8D003D8EB01FE00F81B046700AB282002600257AB10100223021F), .INIT_07 (256'h02046700AB10100233022FAB1000020C020BF8E9036700AB1010022B0227AB10), .INIT_08 (256'h0215020FF8D0031933014D00F834046700AB1010023B0237AB1000020E020DF8), .INIT_09 (256'h4B0247AB1000021C021BF8E9036701AB2820027E0269AB10100243023FAB1000), .INIT_0A (256'h02BDAB10100253024FAB1000021E021DF802046701AB282002A80293AB101002), .INIT_0B (256'h0100F8AD049CF880047B0092282004870092101001921000026701AB282002D2), .INIT_0C (256'h049C080292010001DBA00100FFA000F870048B100226F84C0486861605040302), .INIT_0D (256'hBD0100FF7FAB0001000101000100FF609001206070A3000101000190C100F89F), .INIT_0E (256'hE420E40003001A35502A00372007501300372070003720800037200650130F00), .INIT_0F (256'h46F80001020000A000F200000100F2400D0300E5010001F1000230080003E410), .INIT_10 (256'h45FFFFFFFFFF0108003301FF5A3D4B4A45FFFFFFFFFFFFFFFF00000204000006), .INIT_11 (256'h45FF018000FF5A5145FF018000FF5A5145FF018001FF5A5145FF018001FF5A51), .INIT_12 (256'hFF41403F3E3D0A0000FF018000FF5A5145FF018000FF5A5145FF018000FF5A51), .INIT_13 (256'h1030FF5A45535141403F3E3D0A0908070C0B0605040000FF0101030303111030), .INIT_14 (256'h3E3D0A0908070C0B0605040000FF010280800201030303087047000100030002), .INIT_15 (256'h040000FF0102808002020303030870470001000300021030FF5A45535141403F), .INIT_16 (256'h0303034070470001000300021030FF5A45535141403F3E3D0A0908070C0B0605), .INIT_17 (256'h2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A0DFF010280800202), .INIT_18 (256'h2A2A2A20202020200D2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_19 (256'h2A2A2A2065726F43206769666E6F43206B636F6C432033762050524157202A2A), .INIT_1A (256'h203A6574614420796C626D65737341206D6172676F72502020202020200D2A2A), .INIT_1B (256'h2061746164206769666E6F6320646E756F46000D0D35313032206E614A203432), .INIT_1C (256'h504545206E692061746164206769666E6F63206F4E000D4D4F52504545206E69), .INIT_1D (256'h4D206B636F6C43206F4E000D73746C756166654420676E697355202D204D4F52), .INIT_1E (256'h72756769666E6F6320676E6964616F4C000D646574636574654420656C75646F), .INIT_1F (256'h42206E6F69746172756769666E6F6320676E6964616F4C000D41206E6F697461), .INIT_20 (256'h6365746544000D43206E6F69746172756769666E6F6320676E6964616F4C000D), .INIT_21 (256'h2D4D43206465746365746544000D656C75646F4D2058434D4D2D4D4320646574), .INIT_22 (256'h4C502064696C617620726F6620676E6974696157000D656C75646F4D204C4C50), .INIT_23 (256'h000D2164696C6176206B6C6320666572002E2E2E2E2E2E6B6C6320666572204C), .INIT_24 (256'h50002E2E2E6B636F6C204C4C502031313539444120726F6620676E6974696157), .INIT_25 (256'h656C706D6F43206769666E6F43206B636F6C43000D0D2164656B636F6C204C4C), .INIT_26 (256'h2A2A2A0D737365636F725020746F6F4220676E69756E69746E6F43202D206574), .INIT_27 (256'h2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_28 (256'h0047553E5444003A5544543E4700040201000D0D2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_29 (256'h0401005404FE00014A3047003A553E5444002B014A0821000E30472644251080), .INIT_2A (256'h0000005B0131005A5A5A5A5A003A57000203573E54470004020004FD00400103), .INIT_2B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_30 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_31 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_32 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_33 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_34 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_35 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_36 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_37 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_38 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_39 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_00 (256'h7CB96F972D2DF2E5CB5397AD6B7AD6F5ADEB5A5BD6B5BD6B5BD6B5A5A1CAD6AB), .INITP_01 (256'h635291E3F3DF777EB54A259AC9C17AE02EF9E67972E5BE5CB96F972E5BFBE5CB), .INITP_02 (256'hFFFFFF8000000000000000000000000000000000000000000000000000000020), .INITP_03 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_04 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_05 (256'h000000000000000000000000000000000000000011F73DB4DDEFBEFF7DFBFFFF), .INITP_06 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_07 (256'h0000000000000000000000000000000000000000000000000000000000000000)) kcpsm6_rom_ll( .ADDRA (address_a[13:0]), .ENA (enable), .CLKA (clk), .DOA (data_out_a_ll[31:0]), .DOPA (data_out_a_ll[35:32]), .DIA (data_in_a[31:0]), .DIPA (data_in_a[35:32]), .WEA (4'b0000), .REGCEA (1'b0), .RSTA (1'b0), .ADDRB (address_b[13:0]), .ENB (enable_b), .CLKB (clk_b), .DOB (data_out_b_ll[31:0]), .DOPB (data_out_b_ll[35:32]), .DIB (data_in_b_ll[31:0]), .DIPB (data_in_b_ll[35:32]), .WEB (we_b_l[3:0]), .REGCEB (1'b0), .RSTB (1'b0)); // RAMB16BWER #(.DATA_WIDTH_A (9), .DOA_REG (0), .EN_RSTRAM_A ("FALSE"), .INIT_A (9'b000000000), .RST_PRIORITY_A ("CE"), .SRVAL_A (9'b000000000), .WRITE_MODE_A ("WRITE_FIRST"), .DATA_WIDTH_B (9), .DOB_REG (0), .EN_RSTRAM_B ("FALSE"), .INIT_B (9'b000000000), .RST_PRIORITY_B ("CE"), .SRVAL_B (9'b000000000), .WRITE_MODE_B ("WRITE_FIRST"), .RSTTYPE ("SYNC"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .SIM_DEVICE ("SPARTAN6"), .INIT_00 (256'h000D0D10906890E818001848000D0DB0EE009C8BB0EE000C0B58000D0D580000), .INIT_01 (256'h090C0C0B000D0D100F00090C0C0B00090C0C0B00090C0C0B000D0D1090E890E8), .INIT_02 (256'h0F00090C0C0B00090C0C0B00090C0C0B000D0D100F00090C0C0B00090C0C0B00), .INIT_03 (256'h00090C0C0B000D0D100F00090C0C0B00090C0C0B000D0D1090E890E8000D0D10), .INIT_04 (256'h0C0B00090C0C0B000D0D100F00090C0C0B00090C0C0B000D0D100F00090C0C0B), .INIT_05 (256'h000A0B0D0C0C0B000D0D10906890E818001848000D0D100F00090C0C0B00090C), .INIT_06 (256'h0B0D0C0C0B000D0D1090E890E8000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B), .INIT_07 (256'h0D0D100F000A0B0D0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A), .INIT_08 (256'h0D0C0C0B000D0D1090E890E8000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B00), .INIT_09 (256'h0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B000A0B), .INIT_0A (256'h0C0B000A0B0D0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A0B0D), .INIT_0B (256'h5858000D0D00000D0D90EF000D0D08A0EF000D0D08000D0D08100F000A0B0D0C), .INIT_0C (256'h0D901848108D88CD00508D88E95128000D0D90684858000D0D10105858585858), .INIT_0D (256'hB0C8700808109D8C9C8B8B88CA88E971258B017124109C8B8C88C9760028000D), .INIT_0E (256'h00010009682802020602C80202A20A02C8020202C8020202C80202A20A020228), .INIT_0F (256'h58109D8D0188EC2528B0D9D8C8001008080928B05800CA5FA16A020A28580001), .INIT_10 (256'h09090909090909090909090909090909090909090909090909286CB168482858), .INIT_11 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_12 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_13 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_14 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_15 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_16 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_17 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C09090909090909), .INIT_18 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_19 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1A (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1B (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1C (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1D (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1E (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1F (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_20 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_21 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_22 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_23 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_24 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_25 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_26 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_27 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_28 (256'h28020202020228020202020202286F2F0F0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_29 (256'h6F2F28026F1F286A02120228020202020228B2C8020812C8A002021202B26208), .INIT_2A (256'h000028B2C808280202020202280202A2684802020202286F2F286F1F28926848), .INIT_2B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_30 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_31 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_32 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_33 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_34 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_35 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_36 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_37 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_38 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_39 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_00 (256'h2810250204D4A040813412842128425084A109A9421094210942109A9A094A67), .INITP_01 (256'hCDC2394EAF79EEE7A4159C5E4A93267FE6514450204094081025020409A94081), .INITP_02 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3), .INITP_03 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_04 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_05 (256'h000000000000000000000000000000000000000033FE3F6CBAFFEB7CFFFE7FFF), .INITP_06 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_07 (256'h0000000000000000000000000000000000000000000000000000000000000000)) kcpsm6_rom_lh( .ADDRA (address_a[13:0]), .ENA (enable), .CLKA (clk), .DOA (data_out_a_lh[31:0]), .DOPA (data_out_a_lh[35:32]), .DIA (data_in_a[31:0]), .DIPA (data_in_a[35:32]), .WEA (4'b0000), .REGCEA (1'b0), .RSTA (1'b0), .ADDRB (address_b[13:0]), .ENB (enable_b), .CLKB (clk_b), .DOB (data_out_b_lh[31:0]), .DOPB (data_out_b_lh[35:32]), .DIB (data_in_b_lh[31:0]), .DIPB (data_in_b_lh[35:32]), .WEB (we_b_l[3:0]), .REGCEB (1'b0), .RSTB (1'b0)); // RAMB16BWER #(.DATA_WIDTH_A (9), .DOA_REG (0), .EN_RSTRAM_A ("FALSE"), .INIT_A (9'b000000000), .RST_PRIORITY_A ("CE"), .SRVAL_A (9'b000000000), .WRITE_MODE_A ("WRITE_FIRST"), .DATA_WIDTH_B (9), .DOB_REG (0), .EN_RSTRAM_B ("FALSE"), .INIT_B (9'b000000000), .RST_PRIORITY_B ("CE"), .SRVAL_B (9'b000000000), .WRITE_MODE_B ("WRITE_FIRST"), .RSTTYPE ("SYNC"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .SIM_DEVICE ("SPARTAN6"), .INIT_00 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_01 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_02 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_03 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_04 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_05 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_06 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_07 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_08 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_09 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_10 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_11 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_12 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_13 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_14 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_15 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_16 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_17 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_18 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_19 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_20 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_21 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_22 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_23 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_24 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_25 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_26 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_27 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_28 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_29 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_30 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_31 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_32 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_33 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_34 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_35 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_36 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_37 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_38 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_39 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3F (256'h0000000000000000000000000000000000000000000000000000000000000000), .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)) kcpsm6_rom_hl( .ADDRA (address_a[13:0]), .ENA (enable), .CLKA (clk), .DOA (data_out_a_hl[31:0]), .DOPA (data_out_a_hl[35:32]), .DIA (data_in_a[31:0]), .DIPA (data_in_a[35:32]), .WEA (4'b0000), .REGCEA (1'b0), .RSTA (1'b0), .ADDRB (address_b[13:0]), .ENB (enable_b), .CLKB (clk_b), .DOB (data_out_b_hl[31:0]), .DOPB (data_out_b_hl[35:32]), .DIB (data_in_b_hl[31:0]), .DIPB (data_in_b_hl[35:32]), .WEB (we_b_h[3:0]), .REGCEB (1'b0), .RSTB (1'b0)); // RAMB16BWER #(.DATA_WIDTH_A (9), .DOA_REG (0), .EN_RSTRAM_A ("FALSE"), .INIT_A (9'b000000000), .RST_PRIORITY_A ("CE"), .SRVAL_A (9'b000000000), .WRITE_MODE_A ("WRITE_FIRST"), .DATA_WIDTH_B (9), .DOB_REG (0), .EN_RSTRAM_B ("FALSE"), .INIT_B (9'b000000000), .RST_PRIORITY_B ("CE"), .SRVAL_B (9'b000000000), .WRITE_MODE_B ("WRITE_FIRST"), .RSTTYPE ("SYNC"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .SIM_DEVICE ("SPARTAN6"), .INIT_00 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_01 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_02 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_03 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_04 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_05 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_06 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_07 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_08 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_09 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_0F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_10 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_11 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_12 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_13 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_14 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_15 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_16 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_17 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_18 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_19 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_1F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_20 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_21 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_22 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_23 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_24 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_25 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_26 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_27 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_28 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_29 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_30 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_31 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_32 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_33 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_34 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_35 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_36 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_37 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_38 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_39 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3F (256'h0000000000000000000000000000000000000000000000000000000000000000), .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)) kcpsm6_rom_hh( .ADDRA (address_a[13:0]), .ENA (enable), .CLKA (clk), .DOA (data_out_a_hh[31:0]), .DOPA (data_out_a_hh[35:32]), .DIA (data_in_a[31:0]), .DIPA (data_in_a[35:32]), .WEA (4'b0000), .REGCEA (1'b0), .RSTA (1'b0), .ADDRB (address_b[13:0]), .ENB (enable_b), .CLKB (clk_b), .DOB (data_out_b_hh[31:0]), .DOPB (data_out_b_hh[35:32]), .DIB (data_in_b_hh[31:0]), .DIPB (data_in_b_hh[35:32]), .WEB (we_b_h[3:0]), .REGCEB (1'b0), .RSTB (1'b0)); // end // s6; // // if (C_FAMILY == "V6") begin: v6 // assign address_a = {1'b1, address[11:0], 3'b111}; assign instruction = {data_out_a_h[32], data_out_a_h[7:0], data_out_a_l[32], data_out_a_l[7:0]}; assign data_in_a = 36'b00000000000000000000000000000000000; assign jtag_dout = {data_out_b_h[32], data_out_b_h[7:0], data_out_b_l[32], data_out_b_l[7:0]}; // if (C_JTAG_LOADER_ENABLE == 0) begin : no_loader assign data_in_b_l = {3'b000, data_out_b_l[32], 24'b000000000000000000000000, data_out_b_l[7:0]}; assign data_in_b_h = {3'b000, data_out_b_h[32], 24'b000000000000000000000000, data_out_b_h[7:0]}; assign address_b = 16'b1111111111111111; assign we_b = 8'b00000000; assign enable_b = 1'b0; assign rdl = 1'b0; assign clk_b = 1'b0; end // no_loader; // if (C_JTAG_LOADER_ENABLE == 1) begin : loader assign data_in_b_h = {3'b000, jtag_din[17], 24'b000000000000000000000000, jtag_din[16:9]}; assign data_in_b_l = {3'b000, jtag_din[8], 24'b000000000000000000000000, jtag_din[7:0]}; assign address_b = {1'b1, jtag_addr[11:0], 3'b111}; assign we_b = {jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we}; assign enable_b = jtag_en[0]; assign rdl = rdl_bus[0]; assign clk_b = jtag_clk; end // loader; // RAMB36E1 #(.READ_WIDTH_A (9), .WRITE_WIDTH_A (9), .DOA_REG (0), .INIT_A (36'h000000000), .RSTREG_PRIORITY_A ("REGCE"), .SRVAL_A (36'h000000000), .WRITE_MODE_A ("WRITE_FIRST"), .READ_WIDTH_B (9), .WRITE_WIDTH_B (9), .DOB_REG (0), .INIT_B (36'h000000000), .RSTREG_PRIORITY_B ("REGCE"), .SRVAL_B (36'h000000000), .WRITE_MODE_B ("WRITE_FIRST"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .RAM_MODE ("TDP"), .RDADDR_COLLISION_HWCONFIG ("DELAYED_WRITE"), .EN_ECC_READ ("FALSE"), .EN_ECC_WRITE ("FALSE"), .RAM_EXTENSION_A ("NONE"), .RAM_EXTENSION_B ("NONE"), .SIM_DEVICE ("VIRTEX6"), .INIT_00 (256'hF83404611D04960303000702F86E03AACDC10001AAA5C13A9815F8E70206BBEE), .INIT_01 (256'h10003AEAF8E9036701A328203BEAA310103B5AA310003ADAF8D0032539014D00), .INIT_02 (256'h01A328203C8AA310103B7AA310003AFAF802046701A328203C3AA310103B6AA3), .INIT_03 (256'hA310003ABAF8E9036700A310103B2AA310003AAAF8D0036978018700F81B0467), .INIT_04 (256'h3B1AA310003A9AF8B6036700A310103B4AA310003ACAF802046700A310103B3A), .INIT_05 (256'hAB100002080207F8B603D01104B60303000702F88B036700A328203B9AA31010), .INIT_06 (256'h00020A0209F8D003D8EB01FE00F81B046700AB282002600257AB10100223021F), .INIT_07 (256'h02046700AB10100233022FAB1000020C020BF8E9036700AB1010022B0227AB10), .INIT_08 (256'h0215020FF8D0031933014D00F834046700AB1010023B0237AB1000020E020DF8), .INIT_09 (256'h4B0247AB1000021C021BF8E9036701AB2820027E0269AB10100243023FAB1000), .INIT_0A (256'h02BDAB10100253024FAB1000021E021DF802046701AB282002A80293AB101002), .INIT_0B (256'h0100F8AD049CF880047B0092282004870092101001921000026701AB282002D2), .INIT_0C (256'h049C080292010001DBA00100FFA000F870048B100226F84C0486861605040302), .INIT_0D (256'hBD0100FF7FAB0001000101000100FF609001206070A3000101000190C100F89F), .INIT_0E (256'hE420E40003001A35502A00372007501300372070003720800037200650130F00), .INIT_0F (256'h46F80001020000A000F200000100F2400D0300E5010001F1000230080003E410), .INIT_10 (256'h45FFFFFFFFFF0108003301FF5A3D4B4A45FFFFFFFFFFFFFFFF00000204000006), .INIT_11 (256'h45FF018000FF5A5145FF018000FF5A5145FF018001FF5A5145FF018001FF5A51), .INIT_12 (256'hFF41403F3E3D0A0000FF018000FF5A5145FF018000FF5A5145FF018000FF5A51), .INIT_13 (256'h1030FF5A45535141403F3E3D0A0908070C0B0605040000FF0101030303111030), .INIT_14 (256'h3E3D0A0908070C0B0605040000FF010280800201030303087047000100030002), .INIT_15 (256'h040000FF0102808002020303030870470001000300021030FF5A45535141403F), .INIT_16 (256'h0303034070470001000300021030FF5A45535141403F3E3D0A0908070C0B0605), .INIT_17 (256'h2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A0DFF010280800202), .INIT_18 (256'h2A2A2A20202020200D2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_19 (256'h2A2A2A2065726F43206769666E6F43206B636F6C432033762050524157202A2A), .INIT_1A (256'h203A6574614420796C626D65737341206D6172676F72502020202020200D2A2A), .INIT_1B (256'h2061746164206769666E6F6320646E756F46000D0D35313032206E614A203432), .INIT_1C (256'h504545206E692061746164206769666E6F63206F4E000D4D4F52504545206E69), .INIT_1D (256'h4D206B636F6C43206F4E000D73746C756166654420676E697355202D204D4F52), .INIT_1E (256'h72756769666E6F6320676E6964616F4C000D646574636574654420656C75646F), .INIT_1F (256'h42206E6F69746172756769666E6F6320676E6964616F4C000D41206E6F697461), .INIT_20 (256'h6365746544000D43206E6F69746172756769666E6F6320676E6964616F4C000D), .INIT_21 (256'h2D4D43206465746365746544000D656C75646F4D2058434D4D2D4D4320646574), .INIT_22 (256'h4C502064696C617620726F6620676E6974696157000D656C75646F4D204C4C50), .INIT_23 (256'h000D2164696C6176206B6C6320666572002E2E2E2E2E2E6B6C6320666572204C), .INIT_24 (256'h50002E2E2E6B636F6C204C4C502031313539444120726F6620676E6974696157), .INIT_25 (256'h656C706D6F43206769666E6F43206B636F6C43000D0D2164656B636F6C204C4C), .INIT_26 (256'h2A2A2A0D737365636F725020746F6F4220676E69756E69746E6F43202D206574), .INIT_27 (256'h2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_28 (256'h0047553E5444003A5544543E4700040201000D0D2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_29 (256'h0401005404FE00014A3047003A553E5444002B014A0821000E30472644251080), .INIT_2A (256'h0000005B0131005A5A5A5A5A003A57000203573E54470004020004FD00400103), .INIT_2B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_30 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_31 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_32 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_33 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_34 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_35 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_36 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_37 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_38 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_39 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_40 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_41 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_42 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_43 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_44 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_45 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_46 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_47 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_48 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_49 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_50 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_51 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_52 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_53 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_54 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_55 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_56 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_57 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_58 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_59 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_60 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_61 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_62 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_63 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_64 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_65 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_66 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_67 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_68 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_69 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_70 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_71 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_72 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_73 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_74 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_75 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_76 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_77 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_78 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_79 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_00 (256'h7CB96F972D2DF2E5CB5397AD6B7AD6F5ADEB5A5BD6B5BD6B5BD6B5A5A1CAD6AB), .INITP_01 (256'h635291E3F3DF777EB54A259AC9C17AE02EF9E67972E5BE5CB96F972E5BFBE5CB), .INITP_02 (256'hFFFFFF8000000000000000000000000000000000000000000000000000000020), .INITP_03 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_04 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_05 (256'h000000000000000000000000000000000000000011F73DB4DDEFBEFF7DFBFFFF), .INITP_06 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_07 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_08 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_09 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0F (256'h0000000000000000000000000000000000000000000000000000000000000000)) kcpsm6_rom_l( .ADDRARDADDR (address_a), .ENARDEN (enable), .CLKARDCLK (clk), .DOADO (data_out_a_l[31:0]), .DOPADOP (data_out_a_l[35:32]), .DIADI (data_in_a[31:0]), .DIPADIP (data_in_a[35:32]), .WEA (4'b0000), .REGCEAREGCE (1'b0), .RSTRAMARSTRAM (1'b0), .RSTREGARSTREG (1'b0), .ADDRBWRADDR (address_b), .ENBWREN (enable_b), .CLKBWRCLK (clk_b), .DOBDO (data_out_b_l[31:0]), .DOPBDOP (data_out_b_l[35:32]), .DIBDI (data_in_b_l[31:0]), .DIPBDIP (data_in_b_l[35:32]), .WEBWE (we_b), .REGCEB (1'b0), .RSTRAMB (1'b0), .RSTREGB (1'b0), .CASCADEINA (1'b0), .CASCADEINB (1'b0), .CASCADEOUTA (), .CASCADEOUTB (), .DBITERR (), .ECCPARITY (), .RDADDRECC (), .SBITERR (), .INJECTDBITERR (1'b0), .INJECTSBITERR (1'b0)); // RAMB36E1 #(.READ_WIDTH_A (9), .WRITE_WIDTH_A (9), .DOA_REG (0), .INIT_A (36'h000000000), .RSTREG_PRIORITY_A ("REGCE"), .SRVAL_A (36'h000000000), .WRITE_MODE_A ("WRITE_FIRST"), .READ_WIDTH_B (9), .WRITE_WIDTH_B (9), .DOB_REG (0), .INIT_B (36'h000000000), .RSTREG_PRIORITY_B ("REGCE"), .SRVAL_B (36'h000000000), .WRITE_MODE_B ("WRITE_FIRST"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .RAM_MODE ("TDP"), .RDADDR_COLLISION_HWCONFIG ("DELAYED_WRITE"), .EN_ECC_READ ("FALSE"), .EN_ECC_WRITE ("FALSE"), .RAM_EXTENSION_A ("NONE"), .RAM_EXTENSION_B ("NONE"), .SIM_DEVICE ("VIRTEX6"), .INIT_00 (256'h000D0D10906890E818001848000D0DB0EE009C8BB0EE000C0B58000D0D580000), .INIT_01 (256'h090C0C0B000D0D100F00090C0C0B00090C0C0B00090C0C0B000D0D1090E890E8), .INIT_02 (256'h0F00090C0C0B00090C0C0B00090C0C0B000D0D100F00090C0C0B00090C0C0B00), .INIT_03 (256'h00090C0C0B000D0D100F00090C0C0B00090C0C0B000D0D1090E890E8000D0D10), .INIT_04 (256'h0C0B00090C0C0B000D0D100F00090C0C0B00090C0C0B000D0D100F00090C0C0B), .INIT_05 (256'h000A0B0D0C0C0B000D0D10906890E818001848000D0D100F00090C0C0B00090C), .INIT_06 (256'h0B0D0C0C0B000D0D1090E890E8000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B), .INIT_07 (256'h0D0D100F000A0B0D0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A), .INIT_08 (256'h0D0C0C0B000D0D1090E890E8000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B00), .INIT_09 (256'h0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B000A0B), .INIT_0A (256'h0C0B000A0B0D0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A0B0D), .INIT_0B (256'h5858000D0D00000D0D90EF000D0D08A0EF000D0D08000D0D08100F000A0B0D0C), .INIT_0C (256'h0D901848108D88CD00508D88E95128000D0D90684858000D0D10105858585858), .INIT_0D (256'hB0C8700808109D8C9C8B8B88CA88E971258B017124109C8B8C88C9760028000D), .INIT_0E (256'h00010009682802020602C80202A20A02C8020202C8020202C80202A20A020228), .INIT_0F (256'h58109D8D0188EC2528B0D9D8C8001008080928B05800CA5FA16A020A28580001), .INIT_10 (256'h09090909090909090909090909090909090909090909090909286CB168482858), .INIT_11 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_12 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_13 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_14 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_15 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_16 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_17 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C09090909090909), .INIT_18 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_19 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1A (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1B (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1C (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1D (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1E (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1F (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_20 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_21 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_22 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_23 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_24 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_25 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_26 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_27 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_28 (256'h28020202020228020202020202286F2F0F0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_29 (256'h6F2F28026F1F286A02120228020202020228B2C8020812C8A002021202B26208), .INIT_2A (256'h000028B2C808280202020202280202A2684802020202286F2F286F1F28926848), .INIT_2B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_30 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_31 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_32 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_33 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_34 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_35 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_36 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_37 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_38 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_39 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_40 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_41 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_42 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_43 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_44 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_45 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_46 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_47 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_48 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_49 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_50 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_51 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_52 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_53 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_54 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_55 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_56 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_57 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_58 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_59 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_60 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_61 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_62 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_63 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_64 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_65 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_66 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_67 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_68 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_69 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_70 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_71 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_72 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_73 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_74 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_75 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_76 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_77 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_78 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_79 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_00 (256'h2810250204D4A040813412842128425084A109A9421094210942109A9A094A67), .INITP_01 (256'hCDC2394EAF79EEE7A4159C5E4A93267FE6514450204094081025020409A94081), .INITP_02 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3), .INITP_03 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_04 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_05 (256'h000000000000000000000000000000000000000033FE3F6CBAFFEB7CFFFE7FFF), .INITP_06 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_07 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_08 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_09 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0F (256'h0000000000000000000000000000000000000000000000000000000000000000)) kcpsm6_rom_h( .ADDRARDADDR (address_a), .ENARDEN (enable), .CLKARDCLK (clk), .DOADO (data_out_a_h[31:0]), .DOPADOP (data_out_a_h[35:32]), .DIADI (data_in_a[31:0]), .DIPADIP (data_in_a[35:32]), .WEA (4'b0000), .REGCEAREGCE (1'b0), .RSTRAMARSTRAM (1'b0), .RSTREGARSTREG (1'b0), .ADDRBWRADDR (address_b), .ENBWREN (enable_b), .CLKBWRCLK (clk_b), .DOBDO (data_out_b_h[31:0]), .DOPBDOP (data_out_b_h[35:32]), .DIBDI (data_in_b_h[31:0]), .DIPBDIP (data_in_b_h[35:32]), .WEBWE (we_b), .REGCEB (1'b0), .RSTRAMB (1'b0), .RSTREGB (1'b0), .CASCADEINA (1'b0), .CASCADEINB (1'b0), .CASCADEOUTA (), .CASCADEOUTB (), .DBITERR (), .ECCPARITY (), .RDADDRECC (), .SBITERR (), .INJECTDBITERR (1'b0), .INJECTSBITERR (1'b0)); end // v6; // // if (C_FAMILY == "7S") begin: akv7 // assign address_a = {1'b1, address[11:0], 3'b111}; assign instruction = {data_out_a_h[32], data_out_a_h[7:0], data_out_a_l[32], data_out_a_l[7:0]}; assign data_in_a = 36'b00000000000000000000000000000000000; assign jtag_dout = {data_out_b_h[32], data_out_b_h[7:0], data_out_b_l[32], data_out_b_l[7:0]}; // if (C_JTAG_LOADER_ENABLE == 0) begin : no_loader assign data_in_b_l = {3'b000, data_out_b_l[32], 24'b000000000000000000000000, data_out_b_l[7:0]}; assign data_in_b_h = {3'b000, data_out_b_h[32], 24'b000000000000000000000000, data_out_b_h[7:0]}; assign address_b = 16'b1111111111111111; assign we_b = 8'b00000000; assign enable_b = 1'b0; assign rdl = 1'b0; assign clk_b = 1'b0; end // no_loader; // if (C_JTAG_LOADER_ENABLE == 1) begin : loader assign data_in_b_h = {3'b000, jtag_din[17], 24'b000000000000000000000000, jtag_din[16:9]}; assign data_in_b_l = {3'b000, jtag_din[8], 24'b000000000000000000000000, jtag_din[7:0]}; assign address_b = {1'b1, jtag_addr[11:0], 3'b111}; assign we_b = {jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we, jtag_we}; assign enable_b = jtag_en[0]; assign rdl = rdl_bus[0]; assign clk_b = jtag_clk; end // loader; // RAMB36E1 #(.READ_WIDTH_A (9), .WRITE_WIDTH_A (9), .DOA_REG (0), .INIT_A (36'h000000000), .RSTREG_PRIORITY_A ("REGCE"), .SRVAL_A (36'h000000000), .WRITE_MODE_A ("WRITE_FIRST"), .READ_WIDTH_B (9), .WRITE_WIDTH_B (9), .DOB_REG (0), .INIT_B (36'h000000000), .RSTREG_PRIORITY_B ("REGCE"), .SRVAL_B (36'h000000000), .WRITE_MODE_B ("WRITE_FIRST"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .RAM_MODE ("TDP"), .RDADDR_COLLISION_HWCONFIG ("DELAYED_WRITE"), .EN_ECC_READ ("FALSE"), .EN_ECC_WRITE ("FALSE"), .RAM_EXTENSION_A ("NONE"), .RAM_EXTENSION_B ("NONE"), .SIM_DEVICE ("7SERIES"), .INIT_00 (256'hF83404611D04960303000702F86E03AACDC10001AAA5C13A9815F8E70206BBEE), .INIT_01 (256'h10003AEAF8E9036701A328203BEAA310103B5AA310003ADAF8D0032539014D00), .INIT_02 (256'h01A328203C8AA310103B7AA310003AFAF802046701A328203C3AA310103B6AA3), .INIT_03 (256'hA310003ABAF8E9036700A310103B2AA310003AAAF8D0036978018700F81B0467), .INIT_04 (256'h3B1AA310003A9AF8B6036700A310103B4AA310003ACAF802046700A310103B3A), .INIT_05 (256'hAB100002080207F8B603D01104B60303000702F88B036700A328203B9AA31010), .INIT_06 (256'h00020A0209F8D003D8EB01FE00F81B046700AB282002600257AB10100223021F), .INIT_07 (256'h02046700AB10100233022FAB1000020C020BF8E9036700AB1010022B0227AB10), .INIT_08 (256'h0215020FF8D0031933014D00F834046700AB1010023B0237AB1000020E020DF8), .INIT_09 (256'h4B0247AB1000021C021BF8E9036701AB2820027E0269AB10100243023FAB1000), .INIT_0A (256'h02BDAB10100253024FAB1000021E021DF802046701AB282002A80293AB101002), .INIT_0B (256'h0100F8AD049CF880047B0092282004870092101001921000026701AB282002D2), .INIT_0C (256'h049C080292010001DBA00100FFA000F870048B100226F84C0486861605040302), .INIT_0D (256'hBD0100FF7FAB0001000101000100FF609001206070A3000101000190C100F89F), .INIT_0E (256'hE420E40003001A35502A00372007501300372070003720800037200650130F00), .INIT_0F (256'h46F80001020000A000F200000100F2400D0300E5010001F1000230080003E410), .INIT_10 (256'h45FFFFFFFFFF0108003301FF5A3D4B4A45FFFFFFFFFFFFFFFF00000204000006), .INIT_11 (256'h45FF018000FF5A5145FF018000FF5A5145FF018001FF5A5145FF018001FF5A51), .INIT_12 (256'hFF41403F3E3D0A0000FF018000FF5A5145FF018000FF5A5145FF018000FF5A51), .INIT_13 (256'h1030FF5A45535141403F3E3D0A0908070C0B0605040000FF0101030303111030), .INIT_14 (256'h3E3D0A0908070C0B0605040000FF010280800201030303087047000100030002), .INIT_15 (256'h040000FF0102808002020303030870470001000300021030FF5A45535141403F), .INIT_16 (256'h0303034070470001000300021030FF5A45535141403F3E3D0A0908070C0B0605), .INIT_17 (256'h2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A0DFF010280800202), .INIT_18 (256'h2A2A2A20202020200D2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_19 (256'h2A2A2A2065726F43206769666E6F43206B636F6C432033762050524157202A2A), .INIT_1A (256'h203A6574614420796C626D65737341206D6172676F72502020202020200D2A2A), .INIT_1B (256'h2061746164206769666E6F6320646E756F46000D0D35313032206E614A203432), .INIT_1C (256'h504545206E692061746164206769666E6F63206F4E000D4D4F52504545206E69), .INIT_1D (256'h4D206B636F6C43206F4E000D73746C756166654420676E697355202D204D4F52), .INIT_1E (256'h72756769666E6F6320676E6964616F4C000D646574636574654420656C75646F), .INIT_1F (256'h42206E6F69746172756769666E6F6320676E6964616F4C000D41206E6F697461), .INIT_20 (256'h6365746544000D43206E6F69746172756769666E6F6320676E6964616F4C000D), .INIT_21 (256'h2D4D43206465746365746544000D656C75646F4D2058434D4D2D4D4320646574), .INIT_22 (256'h4C502064696C617620726F6620676E6974696157000D656C75646F4D204C4C50), .INIT_23 (256'h000D2164696C6176206B6C6320666572002E2E2E2E2E2E6B6C6320666572204C), .INIT_24 (256'h50002E2E2E6B636F6C204C4C502031313539444120726F6620676E6974696157), .INIT_25 (256'h656C706D6F43206769666E6F43206B636F6C43000D0D2164656B636F6C204C4C), .INIT_26 (256'h2A2A2A0D737365636F725020746F6F4220676E69756E69746E6F43202D206574), .INIT_27 (256'h2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_28 (256'h0047553E5444003A5544543E4700040201000D0D2A2A2A2A2A2A2A2A2A2A2A2A), .INIT_29 (256'h0401005404FE00014A3047003A553E5444002B014A0821000E30472644251080), .INIT_2A (256'h0000005B0131005A5A5A5A5A003A57000203573E54470004020004FD00400103), .INIT_2B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_30 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_31 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_32 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_33 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_34 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_35 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_36 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_37 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_38 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_39 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_40 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_41 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_42 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_43 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_44 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_45 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_46 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_47 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_48 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_49 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_50 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_51 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_52 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_53 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_54 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_55 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_56 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_57 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_58 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_59 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_60 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_61 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_62 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_63 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_64 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_65 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_66 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_67 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_68 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_69 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_70 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_71 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_72 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_73 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_74 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_75 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_76 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_77 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_78 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_79 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_00 (256'h7CB96F972D2DF2E5CB5397AD6B7AD6F5ADEB5A5BD6B5BD6B5BD6B5A5A1CAD6AB), .INITP_01 (256'h635291E3F3DF777EB54A259AC9C17AE02EF9E67972E5BE5CB96F972E5BFBE5CB), .INITP_02 (256'hFFFFFF8000000000000000000000000000000000000000000000000000000020), .INITP_03 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_04 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_05 (256'h000000000000000000000000000000000000000011F73DB4DDEFBEFF7DFBFFFF), .INITP_06 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_07 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_08 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_09 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0F (256'h0000000000000000000000000000000000000000000000000000000000000000)) kcpsm6_rom_l( .ADDRARDADDR (address_a), .ENARDEN (enable), .CLKARDCLK (clk), .DOADO (data_out_a_l[31:0]), .DOPADOP (data_out_a_l[35:32]), .DIADI (data_in_a[31:0]), .DIPADIP (data_in_a[35:32]), .WEA (4'b0000), .REGCEAREGCE (1'b0), .RSTRAMARSTRAM (1'b0), .RSTREGARSTREG (1'b0), .ADDRBWRADDR (address_b), .ENBWREN (enable_b), .CLKBWRCLK (clk_b), .DOBDO (data_out_b_l[31:0]), .DOPBDOP (data_out_b_l[35:32]), .DIBDI (data_in_b_l[31:0]), .DIPBDIP (data_in_b_l[35:32]), .WEBWE (we_b), .REGCEB (1'b0), .RSTRAMB (1'b0), .RSTREGB (1'b0), .CASCADEINA (1'b0), .CASCADEINB (1'b0), .CASCADEOUTA (), .CASCADEOUTB (), .DBITERR (), .ECCPARITY (), .RDADDRECC (), .SBITERR (), .INJECTDBITERR (1'b0), .INJECTSBITERR (1'b0)); // RAMB36E1 #(.READ_WIDTH_A (9), .WRITE_WIDTH_A (9), .DOA_REG (0), .INIT_A (36'h000000000), .RSTREG_PRIORITY_A ("REGCE"), .SRVAL_A (36'h000000000), .WRITE_MODE_A ("WRITE_FIRST"), .READ_WIDTH_B (9), .WRITE_WIDTH_B (9), .DOB_REG (0), .INIT_B (36'h000000000), .RSTREG_PRIORITY_B ("REGCE"), .SRVAL_B (36'h000000000), .WRITE_MODE_B ("WRITE_FIRST"), .INIT_FILE ("NONE"), .SIM_COLLISION_CHECK ("ALL"), .RAM_MODE ("TDP"), .RDADDR_COLLISION_HWCONFIG ("DELAYED_WRITE"), .EN_ECC_READ ("FALSE"), .EN_ECC_WRITE ("FALSE"), .RAM_EXTENSION_A ("NONE"), .RAM_EXTENSION_B ("NONE"), .SIM_DEVICE ("7SERIES"), .INIT_00 (256'h000D0D10906890E818001848000D0DB0EE009C8BB0EE000C0B58000D0D580000), .INIT_01 (256'h090C0C0B000D0D100F00090C0C0B00090C0C0B00090C0C0B000D0D1090E890E8), .INIT_02 (256'h0F00090C0C0B00090C0C0B00090C0C0B000D0D100F00090C0C0B00090C0C0B00), .INIT_03 (256'h00090C0C0B000D0D100F00090C0C0B00090C0C0B000D0D1090E890E8000D0D10), .INIT_04 (256'h0C0B00090C0C0B000D0D100F00090C0C0B00090C0C0B000D0D100F00090C0C0B), .INIT_05 (256'h000A0B0D0C0C0B000D0D10906890E818001848000D0D100F00090C0C0B00090C), .INIT_06 (256'h0B0D0C0C0B000D0D1090E890E8000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B), .INIT_07 (256'h0D0D100F000A0B0D0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A), .INIT_08 (256'h0D0C0C0B000D0D1090E890E8000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B00), .INIT_09 (256'h0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A0B0D0C0C0B000A0B), .INIT_0A (256'h0C0B000A0B0D0C0C0B000A0B0D0C0C0B000D0D100F000A0B0D0C0C0B000A0B0D), .INIT_0B (256'h5858000D0D00000D0D90EF000D0D08A0EF000D0D08000D0D08100F000A0B0D0C), .INIT_0C (256'h0D901848108D88CD00508D88E95128000D0D90684858000D0D10105858585858), .INIT_0D (256'hB0C8700808109D8C9C8B8B88CA88E971258B017124109C8B8C88C9760028000D), .INIT_0E (256'h00010009682802020602C80202A20A02C8020202C8020202C80202A20A020228), .INIT_0F (256'h58109D8D0188EC2528B0D9D8C8001008080928B05800CA5FA16A020A28580001), .INIT_10 (256'h09090909090909090909090909090909090909090909090909286CB168482858), .INIT_11 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_12 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_13 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_14 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_15 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_16 (256'h0909090909090909090909090909090909090909090909090909090909090909), .INIT_17 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C09090909090909), .INIT_18 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_19 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1A (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1B (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1C (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1D (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1E (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_1F (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_20 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_21 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_22 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_23 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_24 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_25 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_26 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_27 (256'h0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_28 (256'h28020202020228020202020202286F2F0F0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C), .INIT_29 (256'h6F2F28026F1F286A02120228020202020228B2C8020812C8A002021202B26208), .INIT_2A (256'h000028B2C808280202020202280202A2684802020202286F2F286F1F28926848), .INIT_2B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_2F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_30 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_31 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_32 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_33 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_34 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_35 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_36 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_37 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_38 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_39 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_3F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_40 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_41 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_42 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_43 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_44 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_45 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_46 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_47 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_48 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_49 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_4F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_50 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_51 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_52 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_53 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_54 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_55 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_56 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_57 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_58 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_59 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_5F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_60 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_61 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_62 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_63 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_64 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_65 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_66 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_67 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_68 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_69 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_6F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_70 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_71 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_72 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_73 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_74 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_75 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_76 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_77 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_78 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_79 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INIT_7F (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_00 (256'h2810250204D4A040813412842128425084A109A9421094210942109A9A094A67), .INITP_01 (256'hCDC2394EAF79EEE7A4159C5E4A93267FE6514450204094081025020409A94081), .INITP_02 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF3), .INITP_03 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_04 (256'hFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF), .INITP_05 (256'h000000000000000000000000000000000000000033FE3F6CBAFFEB7CFFFE7FFF), .INITP_06 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_07 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_08 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_09 (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0A (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0B (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0C (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0D (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0E (256'h0000000000000000000000000000000000000000000000000000000000000000), .INITP_0F (256'h0000000000000000000000000000000000000000000000000000000000000000)) kcpsm6_rom_h( .ADDRARDADDR (address_a), .ENARDEN (enable), .CLKARDCLK (clk), .DOADO (data_out_a_h[31:0]), .DOPADOP (data_out_a_h[35:32]), .DIADI (data_in_a[31:0]), .DIPADIP (data_in_a[35:32]), .WEA (4'b0000), .REGCEAREGCE (1'b0), .RSTRAMARSTRAM (1'b0), .RSTREGARSTREG (1'b0), .ADDRBWRADDR (address_b), .ENBWREN (enable_b), .CLKBWRCLK (clk_b), .DOBDO (data_out_b_h[31:0]), .DOPBDOP (data_out_b_h[35:32]), .DIBDI (data_in_b_h[31:0]), .DIPBDIP (data_in_b_h[35:32]), .WEBWE (we_b), .REGCEB (1'b0), .RSTRAMB (1'b0), .RSTREGB (1'b0), .CASCADEINA (1'b0), .CASCADEINB (1'b0), .CASCADEOUTA (), .CASCADEOUTB (), .DBITERR (), .ECCPARITY (), .RDADDRECC (), .SBITERR (), .INJECTDBITERR (1'b0), .INJECTSBITERR (1'b0)); end // akv7; // end // ram_4k_generate; endgenerate // // JTAG Loader // generate if (C_JTAG_LOADER_ENABLE == 1) begin: instantiate_loader jtag_loader_6 #( .C_FAMILY (C_FAMILY), .C_NUM_PICOBLAZE (1), .C_JTAG_LOADER_ENABLE (C_JTAG_LOADER_ENABLE), .C_BRAM_MAX_ADDR_WIDTH (BRAM_ADDRESS_WIDTH), .C_ADDR_WIDTH_0 (BRAM_ADDRESS_WIDTH)) jtag_loader_6_inst(.picoblaze_reset (rdl_bus), .jtag_en (jtag_en), .jtag_din (jtag_din), .jtag_addr (jtag_addr[BRAM_ADDRESS_WIDTH-1 : 0]), .jtag_clk (jtag_clk), .jtag_we (jtag_we), .jtag_dout_0 (jtag_dout), .jtag_dout_1 (jtag_dout), // ports 1-7 are not used .jtag_dout_2 (jtag_dout), // in a 1 device debug .jtag_dout_3 (jtag_dout), // session. However, Synplify .jtag_dout_4 (jtag_dout), // etc require all ports are .jtag_dout_5 (jtag_dout), // connected .jtag_dout_6 (jtag_dout), .jtag_dout_7 (jtag_dout)); end //instantiate_loader endgenerate // // endmodule // // // // /////////////////////////////////////////////////////////////////////////////////////////// // // JTAG Loader // /////////////////////////////////////////////////////////////////////////////////////////// // // // JTAG Loader 6 - Version 6.00 // // Kris Chaplin - 4th February 2010 // Nick Sawyer - 3rd March 2011 - Initial conversion to Verilog // Ken Chapman - 16th August 2011 - Revised coding style // `timescale 1ps/1ps module jtag_loader_6 (picoblaze_reset, jtag_en, jtag_din, jtag_addr, jtag_clk, jtag_we, jtag_dout_0, jtag_dout_1, jtag_dout_2, jtag_dout_3, jtag_dout_4, jtag_dout_5, jtag_dout_6, jtag_dout_7); // parameter integer C_JTAG_LOADER_ENABLE = 1; parameter C_FAMILY = "V6"; parameter integer C_NUM_PICOBLAZE = 1; parameter integer C_BRAM_MAX_ADDR_WIDTH = 10; parameter integer C_PICOBLAZE_INSTRUCTION_DATA_WIDTH = 18; parameter integer C_JTAG_CHAIN = 2; parameter [4:0] C_ADDR_WIDTH_0 = 10; parameter [4:0] C_ADDR_WIDTH_1 = 10; parameter [4:0] C_ADDR_WIDTH_2 = 10; parameter [4:0] C_ADDR_WIDTH_3 = 10; parameter [4:0] C_ADDR_WIDTH_4 = 10; parameter [4:0] C_ADDR_WIDTH_5 = 10; parameter [4:0] C_ADDR_WIDTH_6 = 10; parameter [4:0] C_ADDR_WIDTH_7 = 10; // output [C_NUM_PICOBLAZE-1:0] picoblaze_reset; output [C_NUM_PICOBLAZE-1:0] jtag_en; output [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_din; output [C_BRAM_MAX_ADDR_WIDTH-1:0] jtag_addr; output jtag_clk ; output jtag_we; input [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_0; input [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_1; input [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_2; input [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_3; input [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_4; input [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_5; input [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_6; input [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_7; // // wire [2:0] num_picoblaze; wire [4:0] picoblaze_instruction_data_width; // wire drck; wire shift_clk; wire shift_din; wire shift_dout; wire shift; wire capture; // reg control_reg_ce; reg [C_NUM_PICOBLAZE-1:0] bram_ce; wire [C_NUM_PICOBLAZE-1:0] bus_zero; wire [C_NUM_PICOBLAZE-1:0] jtag_en_int; wire [7:0] jtag_en_expanded; reg [C_BRAM_MAX_ADDR_WIDTH-1:0] jtag_addr_int; reg [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_din_int; wire [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] control_din; wire [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] control_dout; reg [7:0] control_dout_int; wire [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] bram_dout_int; reg jtag_we_int; wire jtag_clk_int; wire bram_ce_valid; reg din_load; // wire [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_0_masked; wire [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_1_masked; wire [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_2_masked; wire [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_3_masked; wire [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_4_masked; wire [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_5_masked; wire [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_6_masked; wire [C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:0] jtag_dout_7_masked; reg [C_NUM_PICOBLAZE-1:0] picoblaze_reset_int; // initial picoblaze_reset_int = 0; // genvar i; // generate for (i = 0; i <= C_NUM_PICOBLAZE-1; i = i+1) begin : npzero_loop assign bus_zero[i] = 1'b0; end endgenerate // generate // if (C_JTAG_LOADER_ENABLE == 1) begin : jtag_loader_gen // // Insert BSCAN primitive for target device architecture. // if (C_FAMILY == "S6") begin : BSCAN_SPARTAN6_gen BSCAN_SPARTAN6 # (.JTAG_CHAIN (C_JTAG_CHAIN)) BSCAN_BLOCK_inst (.CAPTURE (capture), .DRCK (drck), .RESET (), .RUNTEST (), .SEL (bram_ce_valid), .SHIFT (shift), .TCK (), .TDI (shift_din), .TMS (), .UPDATE (jtag_clk_int), .TDO (shift_dout)); end // if (C_FAMILY == "V6") begin : BSCAN_VIRTEX6_gen BSCAN_VIRTEX6 # ( .JTAG_CHAIN (C_JTAG_CHAIN), .DISABLE_JTAG ("FALSE")) BSCAN_BLOCK_inst (.CAPTURE (capture), .DRCK (drck), .RESET (), .RUNTEST (), .SEL (bram_ce_valid), .SHIFT (shift), .TCK (), .TDI (shift_din), .TMS (), .UPDATE (jtag_clk_int), .TDO (shift_dout)); end // if (C_FAMILY == "7S") begin : BSCAN_7SERIES_gen BSCANE2 # ( .JTAG_CHAIN (C_JTAG_CHAIN), .DISABLE_JTAG ("FALSE")) BSCAN_BLOCK_inst (.CAPTURE (capture), .DRCK (drck), .RESET (), .RUNTEST (), .SEL (bram_ce_valid), .SHIFT (shift), .TCK (), .TDI (shift_din), .TMS (), .UPDATE (jtag_clk_int), .TDO (shift_dout)); end // // Insert clock buffer to ensure reliable shift operations. // BUFG upload_clock (.I (drck), .O (shift_clk)); // // // Shift Register // always @ (posedge shift_clk) begin if (shift == 1'b1) begin control_reg_ce <= shift_din; end end // always @ (posedge shift_clk) begin if (shift == 1'b1) begin bram_ce[0] <= control_reg_ce; end end // for (i = 0; i <= C_NUM_PICOBLAZE-2; i = i+1) begin : loop0 if (C_NUM_PICOBLAZE > 1) begin always @ (posedge shift_clk) begin if (shift == 1'b1) begin bram_ce[i+1] <= bram_ce[i]; end end end end // always @ (posedge shift_clk) begin if (shift == 1'b1) begin jtag_we_int <= bram_ce[C_NUM_PICOBLAZE-1]; end end // always @ (posedge shift_clk) begin if (shift == 1'b1) begin jtag_addr_int[0] <= jtag_we_int; end end // for (i = 0; i <= C_BRAM_MAX_ADDR_WIDTH-2; i = i+1) begin : loop1 always @ (posedge shift_clk) begin if (shift == 1'b1) begin jtag_addr_int[i+1] <= jtag_addr_int[i]; end end end // always @ (posedge shift_clk) begin if (din_load == 1'b1) begin jtag_din_int[0] <= bram_dout_int[0]; end else if (shift == 1'b1) begin jtag_din_int[0] <= jtag_addr_int[C_BRAM_MAX_ADDR_WIDTH-1]; end end // for (i = 0; i <= C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-2; i = i+1) begin : loop2 always @ (posedge shift_clk) begin if (din_load == 1'b1) begin jtag_din_int[i+1] <= bram_dout_int[i+1]; end if (shift == 1'b1) begin jtag_din_int[i+1] <= jtag_din_int[i]; end end end // assign shift_dout = jtag_din_int[C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1]; // // always @ (bram_ce or din_load or capture or bus_zero or control_reg_ce) begin if ( bram_ce == bus_zero ) begin din_load <= capture & control_reg_ce; end else begin din_load <= capture; end end // // // Control Registers // assign num_picoblaze = C_NUM_PICOBLAZE-3'h1; assign picoblaze_instruction_data_width = C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-5'h01; // always @ (posedge jtag_clk_int) begin if (bram_ce_valid == 1'b1 && jtag_we_int == 1'b0 && control_reg_ce == 1'b1) begin case (jtag_addr_int[3:0]) 0 : // 0 = version - returns (7:4) illustrating number of PB // and [3:0] picoblaze instruction data width control_dout_int <= {num_picoblaze, picoblaze_instruction_data_width}; 1 : // 1 = PicoBlaze 0 reset / status if (C_NUM_PICOBLAZE >= 1) begin control_dout_int <= {picoblaze_reset_int[0], 2'b00, C_ADDR_WIDTH_0-5'h01}; end else begin control_dout_int <= 8'h00; end 2 : // 2 = PicoBlaze 1 reset / status if (C_NUM_PICOBLAZE >= 2) begin control_dout_int <= {picoblaze_reset_int[1], 2'b00, C_ADDR_WIDTH_1-5'h01}; end else begin control_dout_int <= 8'h00; end 3 : // 3 = PicoBlaze 2 reset / status if (C_NUM_PICOBLAZE >= 3) begin control_dout_int <= {picoblaze_reset_int[2], 2'b00, C_ADDR_WIDTH_2-5'h01}; end else begin control_dout_int <= 8'h00; end 4 : // 4 = PicoBlaze 3 reset / status if (C_NUM_PICOBLAZE >= 4) begin control_dout_int <= {picoblaze_reset_int[3], 2'b00, C_ADDR_WIDTH_3-5'h01}; end else begin control_dout_int <= 8'h00; end 5: // 5 = PicoBlaze 4 reset / status if (C_NUM_PICOBLAZE >= 5) begin control_dout_int <= {picoblaze_reset_int[4], 2'b00, C_ADDR_WIDTH_4-5'h01}; end else begin control_dout_int <= 8'h00; end 6 : // 6 = PicoBlaze 5 reset / status if (C_NUM_PICOBLAZE >= 6) begin control_dout_int <= {picoblaze_reset_int[5], 2'b00, C_ADDR_WIDTH_5-5'h01}; end else begin control_dout_int <= 8'h00; end 7 : // 7 = PicoBlaze 6 reset / status if (C_NUM_PICOBLAZE >= 7) begin control_dout_int <= {picoblaze_reset_int[6], 2'b00, C_ADDR_WIDTH_6-5'h01}; end else begin control_dout_int <= 8'h00; end 8 : // 8 = PicoBlaze 7 reset / status if (C_NUM_PICOBLAZE >= 8) begin control_dout_int <= {picoblaze_reset_int[7], 2'b00, C_ADDR_WIDTH_7-5'h01}; end else begin control_dout_int <= 8'h00; end 15 : control_dout_int <= C_BRAM_MAX_ADDR_WIDTH -1; default : control_dout_int <= 8'h00; // endcase end else begin control_dout_int <= 8'h00; end end // assign control_dout[C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-1:C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-8] = control_dout_int; // always @ (posedge jtag_clk_int) begin if (bram_ce_valid == 1'b1 && jtag_we_int == 1'b1 && control_reg_ce == 1'b1) begin picoblaze_reset_int[C_NUM_PICOBLAZE-1:0] <= control_din[C_NUM_PICOBLAZE-1:0]; end end // // // Assignments // if (C_PICOBLAZE_INSTRUCTION_DATA_WIDTH > 8) begin assign control_dout[C_PICOBLAZE_INSTRUCTION_DATA_WIDTH-9:0] = 10'h000; end // // Qualify the blockram CS signal with bscan select output assign jtag_en_int = (bram_ce_valid) ? bram_ce : bus_zero; // assign jtag_en_expanded[C_NUM_PICOBLAZE-1:0] = jtag_en_int; // for (i = 7; i >= C_NUM_PICOBLAZE; i = i-1) begin : loop4 if (C_NUM_PICOBLAZE < 8) begin : jtag_en_expanded_gen assign jtag_en_expanded[i] = 1'b0; end end // assign bram_dout_int = control_dout | jtag_dout_0_masked | jtag_dout_1_masked | jtag_dout_2_masked | jtag_dout_3_masked | jtag_dout_4_masked | jtag_dout_5_masked | jtag_dout_6_masked | jtag_dout_7_masked; // assign control_din = jtag_din_int; // assign jtag_dout_0_masked = (jtag_en_expanded[0]) ? jtag_dout_0 : 18'h00000; assign jtag_dout_1_masked = (jtag_en_expanded[1]) ? jtag_dout_1 : 18'h00000; assign jtag_dout_2_masked = (jtag_en_expanded[2]) ? jtag_dout_2 : 18'h00000; assign jtag_dout_3_masked = (jtag_en_expanded[3]) ? jtag_dout_3 : 18'h00000; assign jtag_dout_4_masked = (jtag_en_expanded[4]) ? jtag_dout_4 : 18'h00000; assign jtag_dout_5_masked = (jtag_en_expanded[5]) ? jtag_dout_5 : 18'h00000; assign jtag_dout_6_masked = (jtag_en_expanded[6]) ? jtag_dout_6 : 18'h00000; assign jtag_dout_7_masked = (jtag_en_expanded[7]) ? jtag_dout_7 : 18'h00000; // assign jtag_en = jtag_en_int; assign jtag_din = jtag_din_int; assign jtag_addr = jtag_addr_int; assign jtag_clk = jtag_clk_int; assign jtag_we = jtag_we_int; assign picoblaze_reset = picoblaze_reset_int; // end endgenerate // endmodule // /////////////////////////////////////////////////////////////////////////////////////////// // // END OF FILE prog_clk_config_boot.v // /////////////////////////////////////////////////////////////////////////////////////////// //