aboutsummaryrefslogtreecommitdiffstats
path: root/passes/techmap/abc9.cc
diff options
context:
space:
mode:
authorEddie Hung <eddie@fpgeh.com>2020-01-12 15:19:41 -0800
committerEddie Hung <eddie@fpgeh.com>2020-01-12 15:19:41 -0800
commitf9aae90e7a9d238f5063d980e2b1e85a94cff4c7 (patch)
tree90cdb2422cf1194b6ab72997a82c54e5e0b4818c /passes/techmap/abc9.cc
parentf24de88f385a3eeaadd9b9c8c200a7c338f37448 (diff)
parent295e241c074ae275e832fdde9fae6fd897170ac8 (diff)
downloadyosys-f9aae90e7a9d238f5063d980e2b1e85a94cff4c7.tar.gz
yosys-f9aae90e7a9d238f5063d980e2b1e85a94cff4c7.tar.bz2
yosys-f9aae90e7a9d238f5063d980e2b1e85a94cff4c7.zip
Merge remote-tracking branch 'origin/eddie/abc9_refactor' into eddie/abc9_required
Diffstat (limited to 'passes/techmap/abc9.cc')
-rw-r--r--passes/techmap/abc9.cc22
1 files changed, 6 insertions, 16 deletions
diff --git a/passes/techmap/abc9.cc b/passes/techmap/abc9.cc
index 41cfdeece..1be7519b7 100644
--- a/passes/techmap/abc9.cc
+++ b/passes/techmap/abc9.cc
@@ -26,9 +26,6 @@
USING_YOSYS_NAMESPACE
PRIVATE_NAMESPACE_BEGIN
-#define XC7_WIRE_DELAY 300 // Number with which ABC will map a 6-input gate
- // to one LUT6 (instead of a LUT5 + LUT2)
-
struct Abc9Pass : public ScriptPass
{
Abc9Pass() : ScriptPass("abc9", "use ABC9 for technology mapping") { }
@@ -39,8 +36,9 @@ struct Abc9Pass : public ScriptPass
log("\n");
log(" abc9 [options] [selection]\n");
log("\n");
- log("This pass uses the ABC tool [1] for technology mapping of yosys's internal gate\n");
- log("library to a target architecture. Only fully-selected modules are supported.\n");
+ log("This script pass performs a sequence of commands to facilitate the use of the ABC\n");
+ log("tool [1] for technology mapping of the current design to a target FPGA\n");
+ log("architecture. Only fully-selected modules are supported.\n");
log("\n");
log(" -exe <command>\n");
#ifdef ABCEXTERNAL
@@ -59,21 +57,13 @@ struct Abc9Pass : public ScriptPass
log(" replaced with blanks before the string is passed to ABC.\n");
log("\n");
log(" if no -script parameter is given, the following scripts are used:\n");
- log("\n");
- log(" for -lut/-luts (only one LUT size):\n");
- // FIXME
- //log("%s\n", fold_abc9_cmd(ABC_COMMAND_LUT /*"; lutpack {S}"*/).c_str());
- log("\n");
- log(" for -lut/-luts (different LUT sizes):\n");
- // FIXME
+ //FIXME:
//log("%s\n", fold_abc9_cmd(ABC_COMMAND_LUT).c_str());
log("\n");
log(" -fast\n");
log(" use different default scripts that are slightly faster (at the cost\n");
log(" of output quality):\n");
- log("\n");
- log(" for -lut/-luts:\n");
- // FIXME
+ //FIXME:
//log("%s\n", fold_abc9_cmd(ABC_FAST_COMMAND_LUT).c_str());
log("\n");
log(" -D <picoseconds>\n");
@@ -200,10 +190,10 @@ struct Abc9Pass : public ScriptPass
run("select -set abc9_holes A:abc9_holes");
run("flatten -wb @abc9_holes");
run("techmap @abc9_holes");
- run("aigmap");
if (dff_mode || help_mode)
run("abc9_ops -prep_dff", "(only if -dff)");
run("opt -purge @abc9_holes");
+ run("aigmap");
run("wbflip @abc9_holes");
}