Axi5ArChannelInterface constructor

Axi5ArChannelInterface({
  1. required Axi5BaseArChannelConfig config,
  2. bool useCrediting = false,
  3. bool sharedCredits = false,
  4. int numRp = 0,
  5. bool atomicMixInEnable = false,
  6. bool debugMixInEnable = false,
  7. bool idMixInEnable = false,
  8. bool userMixInEnable = false,
  9. bool mmuMixInEnable = false,
  10. bool qualMixInEnable = false,
  11. bool tagMixInEnable = false,
  12. bool chunkMixInEnable = false,
  13. bool opcodeMixInEnable = false,
})

Constructor.

Implementation

Axi5ArChannelInterface({
  required Axi5BaseArChannelConfig config,
  super.useCrediting = false,
  super.sharedCredits = false,
  super.numRp = 0,
  this.atomicMixInEnable = false,
  this.debugMixInEnable = false,
  this.idMixInEnable = false,
  this.userMixInEnable = false,
  this.mmuMixInEnable = false,
  this.qualMixInEnable = false,
  this.tagMixInEnable = false,
  this.chunkMixInEnable = false,
  this.opcodeMixInEnable = false,
})  : userWidth = config.userWidth,
      idWidth = config.idWidth,
      useIdUnq = config.useIdUnq,
      addrWidth = config.addrWidth,
      lenWidth = config.lenWidth,
      useLock = config.useLock,
      sizeWidth = config.sizeWidth,
      burstWidth = config.burstWidth,
      cacheWidth = config.cacheWidth,
      protWidth = config.protWidth,
      qosWidth = config.qosWidth,
      regionWidth = config.regionWidth,
      rmeSupport = config.rmeSupport,
      instPrivPresent = config.instPrivPresent,
      pasWidth = config.pasWidth,
      mecIdWidth = config.mecIdWidth,
      loopWidth = config.loopWidth,
      tracePresent = config.tracePresent,
      chunkNumWidth = config.chunkNumWidth,
      chunkStrbWidth = config.chunkStrbWidth,
      atOpWidth = config.atopWidth,
      mpamWidth = config.mpamWidth,
      useTagging = config.useTagging,
      secSidWidth = config.secSidWidth,
      sidWidth = config.sidWidth,
      ssidWidth = config.ssidWidth,
      snpWidth = config.snpWidth,
      useNsaId = config.useNsaId,
      usePbha = config.usePbha,
      subSysIdWidth = config.subSysIdWidth,
      actWidth = config.actWidth,
      useFlow = config.useFlow,
      supportGdi = config.supportGdi,
      supportRmeAndPasMmu = config.supportRmeAndPasMmu,
      untranslatedTransVersion = config.untranslatedTransVersion,
      super(prefix: 'AR', main: true) {
  makeRequestPorts();
  makeProtPorts();
  makeMemoryAttributePorts();
  if (userMixInEnable) {
    makeUserPorts();
  }
  if (idMixInEnable) {
    makeIdPorts();
  }
  if (debugMixInEnable) {
    makeDebugPorts();
  }
  if (mmuMixInEnable) {
    makeMmuPorts();
  }
  if (qualMixInEnable) {
    makeQualifierPorts();
  }
  if (atomicMixInEnable) {
    makeAtomicPorts();
  }
  if (tagMixInEnable) {
    makeMemPartTagPorts();
  }
  if (chunkMixInEnable) {
    makeChunkPorts();
  }
  if (opcodeMixInEnable) {
    makeOpcodePorts();
  }
}