{"id":13649318,"url":"https://github.com/chipsalliance/synlig","last_synced_at":"2026-02-01T22:02:43.173Z","repository":{"id":36964025,"uuid":"382298947","full_name":"chipsalliance/synlig","owner":"chipsalliance","description":"SystemVerilog synthesis tool","archived":false,"fork":false,"pushed_at":"2025-03-10T07:05:34.000Z","size":3667,"stargazers_count":226,"open_issues_count":88,"forks_count":28,"subscribers_count":14,"default_branch":"main","last_synced_at":"2026-01-31T14:41:43.068Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Verilog","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/chipsalliance.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-02T09:37:34.000Z","updated_at":"2026-01-26T23:57:17.000Z","dependencies_parsed_at":"2023-10-29T10:24:15.804Z","dependency_job_id":"3f0f2ac6-63cf-4238-8a64-17d9adbb7a12","html_url":"https://github.com/chipsalliance/synlig","commit_stats":null,"previous_names":["chipsalliance/systemverilog-plugin","antmicro/yosys-systemverilog"],"tags_count":533,"template":false,"template_full_name":null,"purl":"pkg:github/chipsalliance/synlig","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chipsalliance%2Fsynlig","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chipsalliance%2Fsynlig/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chipsalliance%2Fsynlig/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chipsalliance%2Fsynlig/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chipsalliance","download_url":"https://codeload.github.com/chipsalliance/synlig/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chipsalliance%2Fsynlig/sbom","scorecard":{"id":278088,"data":{"date":"2025-08-11","repo":{"name":"github.com/chipsalliance/synlig","commit":"2d838edc951fed056d2b5bf21a40ce1d161c24ba"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":4.8,"checks":[{"name":"Maintained","score":4,"reason":"0 commit(s) and 5 issue activity found in the last 90 days -- score normalized to 4","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: jobLevel 'contents' permission set to 'write': .github/workflows/main.yml:314","Warn: no topLevel permission defined: .github/workflows/bsg-test-diff.yml:1","Warn: no topLevel permission defined: .github/workflows/cmake.yml:1","Warn: no topLevel permission defined: .github/workflows/formal-verification.yml:1","Warn: no topLevel permission defined: .github/workflows/large-designs.yml:1","Warn: no topLevel permission defined: .github/workflows/main.yml:1","Warn: no topLevel permission defined: .github/workflows/parsing-tests.yml:1","Warn: no topLevel permission defined: .github/workflows/tests-lint-review.yml:1"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: Apache License 2.0: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Signed-Releases","score":0,"reason":"Project has not signed or included provenance with any releases.","details":["Warn: release artifact 2024-12-10-2d838ed not signed: https://api.github.com/repos/chipsalliance/synlig/releases/189913434","Warn: release artifact 2024-11-29-10efd31 not signed: https://api.github.com/repos/chipsalliance/synlig/releases/188239796","Warn: release artifact 2024-11-28-90f3a82 not signed: https://api.github.com/repos/chipsalliance/synlig/releases/188030703","Warn: release artifact 2024-11-26-fa2bcb1 not signed: https://api.github.com/repos/chipsalliance/synlig/releases/187490389","Warn: release artifact 2024-11-25-84ab47c not signed: https://api.github.com/repos/chipsalliance/synlig/releases/187252596","Warn: release artifact 2024-12-10-2d838ed does not have provenance: https://api.github.com/repos/chipsalliance/synlig/releases/189913434","Warn: release artifact 2024-11-29-10efd31 does not have provenance: https://api.github.com/repos/chipsalliance/synlig/releases/188239796","Warn: release artifact 2024-11-28-90f3a82 does not have provenance: https://api.github.com/repos/chipsalliance/synlig/releases/188030703","Warn: release artifact 2024-11-26-fa2bcb1 does not have provenance: https://api.github.com/repos/chipsalliance/synlig/releases/187490389","Warn: release artifact 2024-11-25-84ab47c does not have provenance: https://api.github.com/repos/chipsalliance/synlig/releases/187252596"],"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Info: Possibly incomplete results: error parsing shell code: ternary operator missing ? before :: .github/scripts/set-up-common-debian-configuration.sh:0","Info: Possibly incomplete results: error parsing shell code: ternary operator missing ? before :: .github/scripts/set-up-common-ubuntu-configuration.sh:0","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/bsg-test-diff.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/bsg-test-diff.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/bsg-test-diff.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/bsg-test-diff.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/bsg-test-diff.yml:80: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/bsg-test-diff.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/bsg-test-diff.yml:89: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/bsg-test-diff.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/cmake.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/cmake.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/cmake.yml:39: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/cmake.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/cmake.yml:71: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/cmake.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/cmake.yml:120: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/cmake.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/formal-verification.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/formal-verification.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/formal-verification.yml:48: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/formal-verification.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/formal-verification.yml:57: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/formal-verification.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/formal-verification.yml:79: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/formal-verification.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/formal-verification.yml:86: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/formal-verification.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:391: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:409: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:421: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:428: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:19: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:37: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:58: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:126: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:144: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:167: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:186: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:193: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:337: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:355: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:367: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:374: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:445: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:463: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:475: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:486: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:501: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:514: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:526: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:533: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:72: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:90: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:102: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:109: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:210: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:228: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:243: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:250: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:278: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:296: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:312: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/large-designs.yml:323: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/large-designs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:457: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:118: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:167: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:183: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:191: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:206: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:271: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:279: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:325: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:331: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/main.yml:360: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/main.yml:381: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:27: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:38: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/main.yml:401: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/main.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/parsing-tests.yml:114: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/parsing-tests.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/parsing-tests.yml:119: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/parsing-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/parsing-tests.yml:154: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/parsing-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/parsing-tests.yml:201: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/parsing-tests.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/parsing-tests.yml:211: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/parsing-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/parsing-tests.yml:61: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/parsing-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/parsing-tests.yml:79: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/parsing-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/parsing-tests.yml:91: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/parsing-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/parsing-tests.yml:100: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/parsing-tests.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tests-lint-review.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/tests-lint-review.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/tests-lint-review.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/tests-lint-review.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/tests-lint-review.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/chipsalliance/synlig/tests-lint-review.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/large-designs.yml:240","Warn: downloadThenRun not pinned by hash: .github/workflows/main.yml:259","Info:   0 out of  72 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   1 pipCommand dependencies pinned","Info:   0 out of   1 downloadThenRun dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-17T15:01:27.911Z","repository_id":36964025,"created_at":"2025-08-17T15:01:27.912Z","updated_at":"2025-08-17T15:01:27.912Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28992652,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-01T22:01:47.507Z","status":"ssl_error","status_checked_at":"2026-02-01T21:58:37.335Z","response_time":56,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T01:04:56.744Z","updated_at":"2026-02-01T22:02:43.145Z","avatar_url":"https://github.com/chipsalliance.png","language":"Verilog","funding_links":[],"categories":["Verilog","Circuit Compilers"],"sub_categories":[],"readme":"\u003c!-- # Synlig --\u003e\n\n![Synlig logo](images/synlig-logo.svg)\n\nSynlig is a SystemVerilog synthesis tool that uses [Surelog](https://github.com/chipsalliance/Surelog) as a SystemVerilog 2017 preprocessor, parser and elaborator, with [Yosys](https://github.com/YosysHQ/yosys) as a framework for synthesis.\n\n## Installation\n\n### Download Synlig\n\nYou can download Synlig from the GitHub [release page](https://github.com/chipsalliance/synlig/releases).\nFirst, make sure you have all required dependencies installed with:\n\n\u003c!-- name=\"install-dependencies-package\" --\u003e\n```\napt install -y jq curl wget tk\n```\n\nthen use the following script to download Synlig:\n\n\u003c!-- name=\"download-release\" --\u003e\n```bash\n    curl https://api.github.com/repos/chipsalliance/synlig/releases/latest | jq -r '.assets | .[] | select(.name | startswith(\"synlig\")) | .browser_download_url' | xargs wget -O - | tar -xz\n```\n\nTo use Synlig, make sure to either use absolute paths, or update the `PATH` variable before use.\n\n\u003c!-- name=\"path-setup\" --\u003e\n``` bash\n    export PATH=`pwd`/synlig:$PATH\n```\n\nSynlig is now ready to be used.\nGo to the [Usage](#usage) section of this document to learn how to use it.\n\n### Installation from source\n\nDebian Bookworm:\n\n#### Install dependencies\n\n\u003c!-- name=\"install-dependencies\" --\u003e\n``` bash\n    apt install -y gcc-11 g++-11 build-essential cmake tclsh ant default-jre swig google-perftools libgoogle-perftools-dev python3 python3-dev python3-pip uuid uuid-dev tcl-dev flex libfl-dev git pkg-config libreadline-dev bison libffi-dev wget python3-orderedmultidict\n```\n\n#### Build required binaries\n\nYou can build all required binaries using the provided `Makefile`.\n`make install` will build and install Synlig in `/usr/local` directory.\n\n\u003c!-- name=\"make-install\" --\u003e\n``` bash\n    git submodule sync\n    git submodule update --init --recursive third_party/{surelog,yosys}\n    make install -j$(nproc)\n```\n\n## Usage\n\nYou can now start Synlig by executing the `synlig` command.\nTo read SystemVerilog files, use:\n\n* `read_systemverilog [options] [filenames]` - reads SystemVerilog files.\n* `read_uhdm  [options] [filename]` - allows reading UHDM files - SystemVerilog files already processed by Surelog.\nAfterwards, it works similarly to `read_systemverilog`.\n\n### Quick start examples\n\n#### Counter\n\nConsider the following SystemVerilog code:\n\n\u003c!-- name=\"counter.sv\" --\u003e\n``` SystemVerilog\n    module top (\n      input clk,\n      output [3:0] led\n    );\n      localparam BITS = 4;\n      localparam LOG2DELAY = 22;\n\n      wire bufg;\n      BUFG bufgctrl (\n          .I(clk),\n          .O(bufg)\n      );\n      reg [BITS+LOG2DELAY-1:0] counter = 0;\n      always @(posedge bufg) begin\n        counter \u003c= counter + 1;\n      end\n      assign led[3:0] = counter \u003e\u003e LOG2DELAY;\n    endmodule\n```\n\nRunning synthesis using Synlig is very simple:\n\n\u003c!-- name=\"synthesis-example\" --\u003e\n``` tcl\n    \u003e read_systemverilog counter.sv\n    1. Executing SystemVerilog frontend.\n    (...)\n\n    \u003e synth_xilinx\n    2. Executing SYNTH_XILINX pass.\n    (...)\n\n    Number of wires:                 10\n    Number of wire bits:            167\n    Number of public wires:           4\n    Number of public wire bits:      32\n    Number of ports:                  2\n    Number of port bits:              5\n    Number of memories:               0\n    Number of memory bits:            0\n    Number of processes:              0\n    Number of cells:                 40\n      BUFG                            1\n      CARRY4                          7\n      FDRE                           26\n      IBUF                            1\n      INV                             1\n      OBUF                            4\n    (...)\n\n    \u003e write_edif counter.edif\n    3. Executing Synlig EDIF backend.\n```\n\nAs a result, we get a `counter.edif` file that can be further processed to generate the bitstream.\n\n#### Parsing multiple files\n\nTo parse a multi-file design with the `read_systemverilog` command, all files have to be listed simultaneously.\nThis can be troublesome for larger designs.\nTo mitigate this issue, Synlig supports a flow that allows users to pass files and link them separately.\nFiles can be loaded one by one using the `-defer` flag.\nOnce all files are uploaded, you should call `read_systemverilog -link` to elaborate them.\nThe described flow looks like the following:\n\n\u003c!-- name=\"example-multiple-files\" --\u003e\n``` tcl\n    # Read each file separately\n    read_systemverilog -defer tests/separate_compilation/separate_compilation.v\n    read_systemverilog -defer tests/separate_compilation/separate_compilation_buf.sv\n    read_systemverilog -defer tests/separate_compilation/separate_compilation_pkg.sv\n    # Finish reading files, elaborate the design\n    read_systemverilog -link\n    # Continue Synlig flow...\n    exit\n```\n\nThe `-defer` flag is experimental.\nIf you encounter any problems with it, please compare the results with a single `read_systemverilog` command, check the [open issues](https://github.com/chipsalliance/synlig/issues), and open a new issue if required.\n\n## Testing locally\n\n### Formal verification\n\nSynlig runs formal verification tests to make sure it provides results comparable with other synthesis tools.\nMore information about formal verification can be found in this [README](https://github.com/chipsalliance/synlig/tree/main/tests/formal).\n\n#### Prerequisites\n\n##### Dependencies\n\nBuilding `sv2v` requires Haskell Stack, you can install it by running:\n\n\u003c!-- name=\"get-haskell\" --\u003e\n``` bash\n   wget -qO- https://get.haskellstack.org/ | sh -s - -f -d /usr/local/bin\n```\n\n##### Installation\n\nAll required prerequisites can be installed by running:\n\n\u003c!-- name=\"install-tools\" --\u003e\n``` bash\n    git submodule update --init --recursive --checkout third_party/{sv2v,eqy,sby,yosys}\n    make tools -j $(nproc)\n```\n\n#### Running formal verification\n\nTo start formal verification tests, use the dedicated script:\n\n\u003c!-- name=\"formal-verification-run\" --\u003e\n``` bash\n    ./tests/scripts/run_formal.sh --name=\u003ctest_suite_name\u003e run\n```\n\nTo gather formal verification results, run:\n\n\u003c!-- name=\"formal-verification-gather-results\" --\u003e\n``` bash\n    ./tests/scripts/run_formal.sh --name=\u003ctest_suite_name\u003e gather_results\n```\n\n#### Available targets\n\nYou can see the available `test_suite_name` options by running:\n\n\u003c!-- name=\"formal-verification-help\" --\u003e\n``` bash\n    ./tests/scripts/run_formal.sh --help\n```\n\n### Design tests\n\nSynlig is also tested by synthesizing several designs:\n\n* [OpenTitan](https://github.com/lowRISC/opentitan),\n* [Ibex](https://github.com/lowRISC/ibex),\n* [VeeR](https://github.com/chipsalliance/Cores-VeeR-EH1),\n* [BlackParrot](https://github.com/black-parrot/black-parrot).\n\nFor more details, check `.github/workflows/large-designs.yml` or run:\n\n\u003c!-- name=\"large-designs-help\" --\u003e\n``` bash\n    ./tests/scripts/run_large_designs.sh --help\n```\n\n### Parsing tests\n\nSynlig is additionally tested with parsing tests. For more details check `.github/workflows/parsing-tests.yml` or run:\n\n\u003c!-- name=\"parsing-tests-help\" --\u003e\n``` bash\n    ./tests/scripts/run_parsing.sh --help\n```\n\n## General \u0026 debugging tips\n\n1. You can print the UHDM tree by adding the `-debug` flag to `read_uhdm` or `read_systemverilog`.\nThis flag also prints the converted Yosys AST.\n1. The order of the files matters.\nSurelog requires all definitions to be already defined when a file is parsed (e.g. if file `B` is defining a type used in file `A`, file `B` needs to be parsed before file `A`).\n\n## Embedding Synlig in a larger cmake-based project\n\n1. An alternative build mechanism defined in the CMakeLists.txt file is provided to allow Synlig to be built as part of a larger cmake-based project.\nSimply include `add_subsystem(synlig)` in your parent CMake.\nSee CMakeLists.txt for compilation options (with or without vendored Yosys and Surelog).\n1. To test this build system locally, use `make -f cmake-makefile`.\n\n## Plugin mode\n\nSynlig is also available as a Yosys plugin.\nNote that almost all tests are made using the Synlig binary instead of the plugin version, and there is no guarantee that the plugin version will be still developed in the future.\n\n### Installation from source\n\n#### Install dependencies\n\n\u003c!-- name=\"install-dependencies-plugin\" --\u003e\n``` bash\n    apt install -y gcc-11 g++-11 build-essential cmake tclsh ant default-jre swig google-perftools libgoogle-perftools-dev python3 python3-dev python3-pip uuid uuid-dev tcl-dev flex libfl-dev git pkg-config libreadline-dev bison libffi-dev wget python3-orderedmultidict\n```\n\n#### Build required binaries\n\nYou can build all required binaries using the provided `Makefile`.\n`make install-plugin` will build Yosys and Synlig as a plugin, and place them in the `out` directory.\nYou need to add `out/bin` to your `PATH` variable to ensure you are using correct versions of the binaries.\n\n\u003c!-- name=\"build-plugin\" --\u003e\n``` bash\n    git submodule update --init --recursive third_party/{surelog,yosys}\n    make install-plugin -j$(nproc)\n```\n\nTo use Yosys built from a submodule, make sure to either use absolute paths, or update the `PATH` variable before use.\n\n\u003c!-- name=\"path-setup-plugin\" --\u003e\n``` bash\n    export PATH=`pwd`/out/bin:$PATH\n```\n### Loading Synlig as a plugin into Yosys\n\nYou can now start Yosys by executing the `yosys` command.\nIn order to use the SystemVerilog plugin, you first need to load it in Yosys by executing the following command in Yosys prompt: `plugin -i systemverilog`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchipsalliance%2Fsynlig","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchipsalliance%2Fsynlig","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchipsalliance%2Fsynlig/lists"}