AMF-Placer
2.0
An Open-Source Timing-driven Analytical Mixed-size FPGA Placer
|
class for clock regions on FPGA More...
#include <DeviceInfo.h>
Public Member Functions | |
ClockRegion (DeviceSite *curSite) | |
Construct a new Clock Region object. More... | |
~ClockRegion () | |
void | addSite (DeviceSite *tmpSite) |
add a site in the clock region and update the boundary of the clock region More... | |
void | setLeft (float x) |
void | setRight (float x) |
void | setTop (float y) |
void | setBottom (float y) |
float | getLeft () |
Get the Left boundary of the clock region. More... | |
float | getRight () |
Get the Right boundary of the clock region. More... | |
float | getTop () |
Get the Top boundary of the clock region. More... | |
float | getBottom () |
Get the Bottom boundary of the clock region. More... | |
void | mapSiteToClockColumns () |
for the clock column constraints, we need to map site to columns. More... | |
void | resetClockUtilizationInfo () |
reset the clock utilization for each column in the clock region More... | |
void | addClockAndCell (int clockNetId, int cellId, float x, float y) |
add a cell into the clock region More... | |
int | getMaxUtilizationOfClockColumns () |
Get the Max Utilization Of Clock Columns. More... | |
ClockColumn * | getMaxUtilizationClockColumnsPtr () |
std::vector< std::vector< ClockColumn * > > & | getClockColumns () |
Private Attributes | |
std::vector< DeviceSite * > | sites |
std::set< DeviceTile * > | tiles |
std::vector< std::vector< ClockColumn * > > | clockColumns |
int | columnNumY = 2 |
int | gridX |
int | gridY |
float | leftX |
float | rightX |
float | topY |
float | bottomY |
int | leftSiteX |
int | bottomSiteY |
int | rightSiteX |
int | topSiteY |
int | leftTileIdX = 1000000 |
int | bottomTileIdY = 1000000 |
int | rightTileIdX = -1 |
int | topTileIdY = -1 |
float | colHeight |
float | colWidth |
class for clock regions on FPGA
Clock region is a concept in the FPGA clocking to constrain the number of clocks in a specific region
Definition at line 651 of file DeviceInfo.h.
|
inline |
Construct a new Clock Region object.
curSite | a site in the clock region for some variables' initialization |
Definition at line 659 of file DeviceInfo.h.
|
inline |
Definition at line 675 of file DeviceInfo.h.
|
inline |
add a cell into the clock region
clockNetId | the driver clock net (id) of the cell |
cellId | |
x | cell location X |
y | cell location Y |
Definition at line 802 of file DeviceInfo.h.
|
inline |
add a site in the clock region and update the boundary of the clock region
tmpSite |
Definition at line 694 of file DeviceInfo.h.
|
inline |
Get the Bottom boundary of the clock region.
Definition at line 768 of file DeviceInfo.h.
|
inline |
Definition at line 877 of file DeviceInfo.h.
|
inline |
Get the Left boundary of the clock region.
Definition at line 738 of file DeviceInfo.h.
Referenced by mapSiteToClockColumns().
|
inline |
|
inline |
|
inline |
Get the Right boundary of the clock region.
Definition at line 748 of file DeviceInfo.h.
Referenced by mapSiteToClockColumns().
|
inline |
void DeviceInfo::ClockRegion::mapSiteToClockColumns | ( | ) |
for the clock column constraints, we need to map site to columns.
Definition at line 264 of file DeviceInfo.cc.
|
inline |
reset the clock utilization for each column in the clock region
Definition at line 783 of file DeviceInfo.h.
|
inline |
Definition at line 728 of file DeviceInfo.h.
|
inline |
Definition at line 713 of file DeviceInfo.h.
|
inline |
Definition at line 718 of file DeviceInfo.h.
|
inline |
Definition at line 723 of file DeviceInfo.h.
|
private |
Definition at line 889 of file DeviceInfo.h.
Referenced by mapSiteToClockColumns().
|
private |
Definition at line 890 of file DeviceInfo.h.
Referenced by mapSiteToClockColumns().
|
private |
Definition at line 888 of file DeviceInfo.h.
Referenced by addClockAndCell(), addSite(), ClockRegion(), getBottom(), mapSiteToClockColumns(), and setBottom().
|
private |
Definition at line 885 of file DeviceInfo.h.
Referenced by addClockAndCell(), ClockRegion(), getClockColumns(), getMaxUtilizationClockColumnsPtr(), getMaxUtilizationOfClockColumns(), mapSiteToClockColumns(), resetClockUtilizationInfo(), and ~ClockRegion().
|
private |
Definition at line 891 of file DeviceInfo.h.
Referenced by addClockAndCell(), and mapSiteToClockColumns().
|
private |
Definition at line 886 of file DeviceInfo.h.
Referenced by mapSiteToClockColumns().
|
private |
Definition at line 892 of file DeviceInfo.h.
Referenced by addClockAndCell(), and mapSiteToClockColumns().
|
private |
Definition at line 887 of file DeviceInfo.h.
Referenced by ClockRegion().
|
private |
Definition at line 887 of file DeviceInfo.h.
Referenced by ClockRegion().
|
private |
Definition at line 889 of file DeviceInfo.h.
Referenced by mapSiteToClockColumns().
|
private |
Definition at line 890 of file DeviceInfo.h.
Referenced by mapSiteToClockColumns().
|
private |
Definition at line 888 of file DeviceInfo.h.
Referenced by addClockAndCell(), addSite(), ClockRegion(), getLeft(), mapSiteToClockColumns(), and setLeft().
|
private |
Definition at line 889 of file DeviceInfo.h.
Referenced by mapSiteToClockColumns().
|
private |
Definition at line 890 of file DeviceInfo.h.
Referenced by mapSiteToClockColumns().
|
private |
Definition at line 888 of file DeviceInfo.h.
Referenced by addSite(), ClockRegion(), getRight(), mapSiteToClockColumns(), and setRight().
|
private |
Definition at line 883 of file DeviceInfo.h.
Referenced by addSite(), ClockRegion(), mapSiteToClockColumns(), and ~ClockRegion().
|
private |
Definition at line 884 of file DeviceInfo.h.
Referenced by addSite(), and ClockRegion().
|
private |
Definition at line 889 of file DeviceInfo.h.
Referenced by mapSiteToClockColumns().
|
private |
Definition at line 890 of file DeviceInfo.h.
Referenced by mapSiteToClockColumns().
|
private |
Definition at line 888 of file DeviceInfo.h.
Referenced by addSite(), ClockRegion(), getTop(), mapSiteToClockColumns(), and setTop().