1*730cfbc0SXuan Hupackage xiangshan.backend.issue 2*730cfbc0SXuan Hu 3*730cfbc0SXuan Huimport chisel3._ 4*730cfbc0SXuan Huimport freechips.rocketchip.diplomacy.DisableMonitors 5*730cfbc0SXuan Huimport top.{ArgParser, BaseConfig, Generator} 6*730cfbc0SXuan Huimport xiangshan.{XSCoreParameters, XSCoreParamsKey} 7*730cfbc0SXuan Hu 8*730cfbc0SXuan Huobject DataArrayMain extends App { 9*730cfbc0SXuan Hu override def main(args: Array[String]): Unit = { 10*730cfbc0SXuan Hu val (config, firrtlOpts, firrtlComplier) = ArgParser.parse(args) 11*730cfbc0SXuan Hu val backendParams = config(XSCoreParamsKey).backendParams 12*730cfbc0SXuan Hu 13*730cfbc0SXuan Hu val iqParams: IssueBlockParams = backendParams.intSchdParams.get.issueBlockParams.head 14*730cfbc0SXuan Hu 15*730cfbc0SXuan Hu Generator.execute( 16*730cfbc0SXuan Hu firrtlOpts, 17*730cfbc0SXuan Hu // DataArray 18*730cfbc0SXuan Hu DisableMonitors(p => 19*730cfbc0SXuan Hu new DataArray(Vec(iqParams.dataBitsMax, Bool()), iqParams.numDeq, iqParams.numEnq, iqParams.numEntries)( 20*730cfbc0SXuan Hu p.alterPartial({ 21*730cfbc0SXuan Hu case XSCoreParamsKey => XSCoreParameters() 22*730cfbc0SXuan Hu })))(config), 23*730cfbc0SXuan Hu firrtlComplier 24*730cfbc0SXuan Hu ) 25*730cfbc0SXuan Hu } 26*730cfbc0SXuan Hu}