Axi5RChannelInterface constructor

Axi5RChannelInterface({
  1. required Axi5BaseRChannelConfig config,
  2. bool useCrediting = false,
  3. bool sharedCredits = false,
  4. int numRp = 0,
  5. bool userMixInEnable = false,
  6. bool dataMixInEnable = false,
  7. bool idMixInEnable = false,
  8. bool tagMixInEnable = false,
  9. bool debugMixInEnable = false,
  10. bool chunkMixInEnable = false,
  11. bool responseMixInEnable = false,
})

Constructor.

Implementation

Axi5RChannelInterface({
  required Axi5BaseRChannelConfig config,
  super.useCrediting = false,
  super.sharedCredits = false,
  super.numRp = 0,
  this.userMixInEnable = false,
  this.dataMixInEnable = false,
  this.idMixInEnable = false,
  this.tagMixInEnable = false,
  this.debugMixInEnable = false,
  this.chunkMixInEnable = false,
  this.responseMixInEnable = false,
})  : userWidth = config.userWidth,
      dataWidth = config.dataWidth,
      useLast = config.useLast,
      idWidth = config.idWidth,
      useIdUnq = config.useIdUnq,
      useTag = config.useTag,
      tagDataWidth = config.tagDataWidth,
      useTagUpdate = config.useTagUpdate,
      useTagMatch = config.useTagMatch,
      tracePresent = config.tracePresent,
      loopWidth = config.loopWidth,
      respWidth = config.respWidth,
      useBusy = config.useBusy,
      chunkNumWidth = config.chunkNumWidth,
      chunkStrbWidth = config.chunkStrbWidth,
      strbWidth = 0,
      usePoison = config.usePoison,
      super(prefix: 'R', main: false) {
  makeDataPorts();
  makeResponsePorts();

  if (userMixInEnable) {
    makeUserPorts();
  }
  if (idMixInEnable) {
    makeIdPorts();
  }
  if (tagMixInEnable) {
    makeRespDataTagPorts();
  }
  if (debugMixInEnable) {
    makeDebugPorts();
  }
  if (chunkMixInEnable) {
    makeChunkPorts();
  }
}