Skip to content

abc: new option to pass extra ABC read_lib args#5721

Merged
Goubermouche merged 6 commits into
YosysHQ:mainfrom
tefantasy:abc-liberty-args
May 8, 2026
Merged

abc: new option to pass extra ABC read_lib args#5721
Goubermouche merged 6 commits into
YosysHQ:mainfrom
tefantasy:abc-liberty-args

Conversation

@tefantasy
Copy link
Copy Markdown
Contributor

This pull request adds an option -liberty_args to the abc command when performing technology mapping with liberty libraries. The option allows user to pass custom arguments to ABC's read_lib command.

This pull request can be regarded as a revival of #4343 but with minimal changes focusing on the -liberty_args feature and without other code restructurings (e.g., the introduction of user_script in #4343).

As noted in #4343, the main purpose of adding this option is to control how ABC generates its internal delay model from timing data in liberty files. This can improve mapping quality by enabling users to tune ABC’s delay modeling. For example, we tested on 12 IWLS'05/OpenCores designs, mapped to NanGate45 library. By adding -liberty_args "-G 250", the averaged (geometric mean) delay improvement (reported by post-synthesis STA) is 12.0%, at the cost of a 4.6% area increase.

Although #4343 has been replaced by #4592 which introduces larger scaled customization of ABC flow, it involves many new features and code refactoring, and possibly requires adding a new command. In contrast, this pull request makes a small modification to the existing abc command to increase the flexibility for mapping quality improvement.

@widlarizer widlarizer self-assigned this Mar 9, 2026
@widlarizer widlarizer self-requested a review March 9, 2026 19:50
@widlarizer widlarizer removed their request for review May 5, 2026 16:18
@widlarizer widlarizer removed their assignment May 5, 2026
@Goubermouche Goubermouche self-requested a review May 6, 2026 11:57
Copy link
Copy Markdown
Contributor

@Goubermouche Goubermouche left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Seems sound to me, but please apply the suggested changes.

Comment thread passes/techmap/abc.cc Outdated
@Goubermouche Goubermouche self-requested a review May 7, 2026 19:20
Comment thread passes/techmap/abc.cc Outdated
@Goubermouche Goubermouche enabled auto-merge May 8, 2026 13:11
@Goubermouche Goubermouche added this pull request to the merge queue May 8, 2026
Merged via the queue into YosysHQ:main with commit db258e6 May 8, 2026
30 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants