#include <vector>
#include <iostream>
#include <unordered_map>
#include <unordered_set>
#include <CGRA/CGRA.h>
#include <CGRA/ConfigStore.h>
#include <CGRA/MRRG.h>
#include <CGRA/OpGraph.h>
Go to the source code of this file.
◆ MappingGraphCycleAssignment
◆ MappingStatus
Enumerator |
---|
success | |
failure | |
timeout | |
Definition at line 26 of file Mapping.h.
◆ createMappingGraph()
Generates a mapping graph and the mapping to and from mapping graph nodes to mrrg nodes.
Definition at line 468 of file Mapping.cpp.
◆ latencyCheck()
Checks the mapping to make sure that the latencies are balanced.
Algorithm:
- Conduct BFS from unvisited nodes, moving in both directions, fanouts and fanins, tracking the latency needed to reach nodes.
- During BFS, if a search visits a node with t(n) + II = t(f) + latency, then it should be added to the set of nodes to check for cycles
- For the nodes to check for cycles: Conduct a BFS and ensure that a) we visit these nodes again to confirm cycle and b) the latency is t (n) + II.
Definition at line 582 of file Mapping.cpp.
◆ operator<<()
◆ removeIsolatedRoutingNodes()
Fixes the mapping by removing clusters of nodes that do not contain functional units
Definition at line 504 of file Mapping.cpp.
◆ withRemappedOps()
Returns a near copy of src
, but for each key-value of forward_mappings
, the nodes that were mapped to key are now mapped to value, and key is not present.
Definition at line 288 of file Mapping.cpp.