../src/lowrisc_prim_abstract_ram_1p_0/prim_ram_1p.sv Cov: 95.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_1p
  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  logic             clk_i,
  24: 
  25:   input  logic             req_i,
  26:   input  logic             write_i,
  27:   input  logic [Aw-1:0]    addr_i,
  28:   input  logic [Width-1:0] wdata_i,
  29:   input  logic [Width-1:0] wmask_i,
  30:   output logic [Width-1:0] rdata_o // Read data. Data is returned one cycle after req_i is high.
  31: );
  32:   parameter prim_pkg::impl_e Impl = `PRIM_DEFAULT_IMPL;
  33: 
  34:   if (1) begin : gen_generic
  35:     prim_generic_ram_1p #(
  36:       .DataBitsPerMask(DataBitsPerMask),
  37:       .Depth(Depth),
  38:       .MemInitFile(MemInitFile),
  39:       .Width(Width)
  40:     ) u_impl_generic (
  41:       .*
  42:     );
  43: 
  44:   end
  45: 
  46: endmodule
  47: