MLIR-AIE 1.4.5.dev
AIEGenerateColumnControlOverlay.h
Go to the documentation of this file.
1//===- AIEGenerateColumnControlOverlay.h ------------------------*- C++ -*-===//
2//
3// Copyright (C) 2024 Advanced Micro Devices, Inc.
4// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
5//
6//===----------------------------------------------------------------------===//
7
8#ifndef AIE_ASSIGN_BUFFER_DESCRIPTOR_IDS_H
9#define AIE_ASSIGN_BUFFER_DESCRIPTOR_IDS_H
10
12
13using namespace mlir;
14using namespace xilinx::AIE;
15
16// Populate column control streaming interconnect overlay
17void populateAIEColumnControlOverlay(DeviceOp &device);
18
19// AIE arch-specific row id to shim dma mm2s channel mapping. All shim mm2s
20// channels were assumed to be available for control packet flow routing (i.e.
21// not reserved by any aie.flow circuit-switched routing).
22DenseMap<int, int> getRowToShimChanMap(const AIETargetModel &targetModel,
23 WireBundle bundle);
24
25// AIE arch-specific tile id to controller id mapping. Users can use those
26// packet ids for design but run into risk of deadlocking control packet flows.
27DenseMap<TileID, int>
28getTileToControllerIdMap(bool clColumnWiseUniqueIDs,
29 const AIETargetModel &targetModel);
30
31#endif
DenseMap< int, int > getRowToShimChanMap(const AIETargetModel &targetModel, WireBundle bundle)
void populateAIEColumnControlOverlay(DeviceOp &device)
DenseMap< TileID, int > getTileToControllerIdMap(bool clColumnWiseUniqueIDs, const AIETargetModel &targetModel)