../src/lowrisc_prim_abstract_ram_2p_0/prim_ram_2p.sv Cov: 96.7%

   1: // Copyright lowRISC contributors.
   2: // Licensed under the Apache License, Version 2.0, see LICENSE for details.
   3: // SPDX-License-Identifier: Apache-2.0
   4: 
   5: // This file is auto-generated.
   6: 
   7: `ifndef PRIM_DEFAULT_IMPL
   8:   `define PRIM_DEFAULT_IMPL prim_pkg::ImplGeneric
   9: `endif
  10: 
  11: module prim_ram_2p
  12: 
  13: #(
  14: 
  15:   parameter  int Width           = 32, // bit
  16:   parameter  int Depth           = 128,
  17:   parameter  int DataBitsPerMask = 1, // Number of data bits per bit of write mask
  18:   parameter      MemInitFile     = "", // VMEM file to initialize the memory with
  19: 
  20:   localparam int Aw              = $clog2(Depth)  // derived parameter
  21: 
  22: ) (
  23:   input clk_a_i,
  24:   input clk_b_i,
  25: 
  26:   input                    a_req_i,
  27:   input                    a_write_i,
  28:   input        [Aw-1:0]    a_addr_i,
  29:   input        [Width-1:0] a_wdata_i,
  30:   input  logic [Width-1:0] a_wmask_i,
  31:   output logic [Width-1:0] a_rdata_o,
  32: 
  33: 
  34:   input                    b_req_i,
  35:   input                    b_write_i,
  36:   input        [Aw-1:0]    b_addr_i,
  37:   input        [Width-1:0] b_wdata_i,
  38:   input  logic [Width-1:0] b_wmask_i,
  39:   output logic [Width-1:0] b_rdata_o
  40: );
  41:   parameter prim_pkg::impl_e Impl = `PRIM_DEFAULT_IMPL;
  42: 
  43:   if (1) begin : gen_generic
  44:     prim_generic_ram_2p #(
  45:       .DataBitsPerMask(DataBitsPerMask),
  46:       .Depth(Depth),
  47:       .MemInitFile(MemInitFile),
  48:       .Width(Width)
  49:     ) u_impl_generic (
  50:       .*
  51:     );
  52: 
  53:   end
  54: 
  55: endmodule
  56: