packages feed

clash-systemverilog-0.6.6: primitives/CLaSH.Prelude.ROM.File.json

[ { "BlackBox" :
    { "name" : "CLaSH.Prelude.ROM.File.asyncRomFile#"
    , "type" :
"asyncRomFile :: KnownNat m -- ARG[0]
              => SNat n     -- sz,   ARG[1]
              -> FilePath   -- file, ARG[2]
              -> Int        -- rd,   ARG[3]
              -> BitVector m"
    , "templateD" :
"// asyncRomFile begin
~SIGDO[~GENSYM[ROM][0]] [0:~LIT[1]-1];

initial begin
  $readmemb(~FILE[~LIT[2]],~SYM[0]);
end

assign ~RESULT = ~SYM[0][~ARG[3]];
// asyncRomFile end"
    }
  }
, { "BlackBox" :
    { "name" : "CLaSH.Prelude.ROM.File.romFile#"
    , "type" :
"romFile# :: KnownNat m      -- ARG[0]
          => SClock clk      -- clk,  ARG[1]
          -> SNat n          -- sz,   ARG[2]
          -> FilePath        -- file, ARG[3]
          -> Signal' clk Int -- rd,   ARG[4]
          -> Signal' clk (BitVector m)"
    , "templateD" :
"// romFile begin
~SIGDO[~GENSYM[ROM][0]] [0:~LIT[2]-1];

initial begin
  $readmemb(~FILE[~LIT[3]],~SYM[0]);
end

~SIGDO[~GENSYM[dout][1]];
always @(posedge ~CLK[1]) begin : ~GENSYM[~COMPNAME_romFile][2]
  ~SYM[1] <= ~SYM[0][~ARG[4]];
end

assign ~RESULT = ~SYM[1];
// romFile end"
    }
  }
]