AMF-Placer
2.0
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
This header file contains the definitions of ParallelCLBPacker class and its internal modules and APIs which finally packs LUT/FF/MUX/CARRY elements into legal CLB sites in a parallel approach. More...
#include "DesignInfo.h"
#include "DeviceInfo.h"
#include "KDTree/KDTree.h"
#include "MaximalCardinalityMatching/MaximalCardinalityMatching.h"
#include "PlacementInfo.h"
#include "PlacementTimingOptimizer.h"
#include "WirelengthOptimizer.h"
#include "const.h"
#include "dumpZip.h"
#include "readZip.h"
#include "strPrint.h"
#include "stringCheck.h"
#include <assert.h>
#include <cmath>
#include <fstream>
#include <iostream>
#include <map>
#include <omp.h>
#include <queue>
#include <set>
#include <sstream>
#include <string>
#include <vector>
Go to the source code of this file.
Classes | |
struct | Packing_PUcompare |
a utility struct for the comparison between PlacementInfo::PlacementUnit according to PU ID More... | |
struct | Packing_Netcompare |
class | ParallelCLBPacker |
ParallelCLBPacker will finally pack LUT/FF/MUX/CARRY elements into legal CLB sites in a parallel approach. More... | |
class | ParallelCLBPacker::PackedControlSet |
PackedControlSet stores the data of a combination of FFs within one control set (clock enable/preset-reset/clock) that can be packed in a site. More... | |
class | ParallelCLBPacker::PackingCLBSite |
PackingCLBSite is a container for the packing information (parameters, candidates and packing status) of a specific DeviceInfo::DeviceSite. More... | |
class | ParallelCLBPacker::PackingCLBSite::PackingCLBCluster |
PackingCLBCluster is a container of cells/PlacementUnits which can be packed in the corresponding CLB site. More... | |
class | ParallelCLBPacker::PackingCLBSite::SiteBELMapping |
SiteBELMapping is a contain recording the mapping between cells and BELs. More... | |
struct | ParallelCLBPacker::_siteWithScore |
helper struct for candidate site sorting More... | |
struct | ParallelCLBPacker::_PUWithScore |
helper struct for candidate site sorting More... | |
class | ParallelCLBPacker::PULocation |
PULocation is a helper class to find the neighbor PlacementUnits with KD-Tree. More... | |
Functions | |
std::ostream & | operator<< (std::ostream &os, const ParallelCLBPacker::PackingCLBSite::PackingCLBCluster *tmpCluster) |
This header file contains the definitions of ParallelCLBPacker class and its internal modules and APIs which finally packs LUT/FF/MUX/CARRY elements into legal CLB sites in a parallel approach.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Definition in file ParallelCLBPacker.h.
std::ostream& operator<< | ( | std::ostream & | os, |
const ParallelCLBPacker::PackingCLBSite::PackingCLBCluster * | tmpCluster | ||
) |
Definition at line 923 of file ParallelCLBPacker_PackingCLBCluster.cc.