Repository navigation
Conversation
kcaisley
commented
Sep 30, 2026
Member
- Add and refine standalone Xilinx behavioral models, including DDR reset/set and inversion behavior.
- Apply HDL formatting and lint fixes; share pyproject.toml configuration between local hooks and separate CI jobs.
- Use Ruff for Python formatting/import sorting and include laboratory instrument driver updates.
- Fix command-sequencer capture alignment and document remaining model limitations.
- Checked 195 primitive tests, DDR/buffer comparisons with AMD models, the failing sequencer test with both ODDR implementations, and Verible/Verilator/Slang checks.
- Add and refine standalone Xilinx primitive models with interface and behavior checks. - Apply automated HDL formatting and remaining Verilog-2005 lint fixes. - Centralize HDL configuration in pyproject.toml with shared tool scripts and separate CI jobs. - Use Ruff for Python formatting and import sorting; extend laboratory instrument controls. - Verify primitive tests against AMD models and fix command-sequencer capture alignment.
- Complete delay, clock and serializer parameter behavior and add focused simulation checks. - Remove nettype directives and obsolete include fragments; align module filenames and references. - Check functional behavior with Icarus and enforce Verilog-2005 with the HDL linters.
- Replace tracked Vivado and ISE projects with per-example Makefiles and Tcl scripts. - Put generated projects, reports and bitstreams under build/fpga. - Preserve source lists, devices and constraints; verify four projects with the installed vendor tools.
- Use four matching check names with comments explaining their complementary coverage. - Reduce tools to run.py, sources.py and install.sh; read shared settings from sources.hdl. - Download pinned native binaries and use pyslang wheels, with CI caches and build output directories. - Remove the pytest fixture override and verify all hooks, 382 Icarus cases and seven Verilator cases.
- Describe missing case defaults and source conventions checked by Verible. - Keep the hook and CI explanations aligned.
- Store Icarus and Verilator outputs in separate build/sim directories. - Reject overlapping POSIX socket-test runners and reap simulator processes. - Add regression checks for output paths and concurrent-run protection.
- Apply the same interface and functional assertions to Basil and AMD models. - Use valid serializer modes and allow documented pipeline settling. - Require PLL reset after reference-clock loss and remove Basil-only assertions.
- Run Icarus on Python 3.10-3.14 and report Verilator separately. - Collect coverage once and simplify runner names and reporting. - Update Ruff while retaining the existing lint rules and add cleanup TODOs. - Simplify shared tool installation and move documentation outputs under build.
Member
Author
|
This pull request is a draft because it is far too large to be reviewed in a single go. My plan is to get the whole thing working, then squash it down and manually break it apart into a dozen or so smaller pull requests when the time comes :) |
- Replace generated Makefiles with runner-based background simulations. - Merge primitive stimulus and launch code and rename family tests to 7series. - Replace primitive configuration environment variables with per-run JSON. - Build directly in simulator-specific directories and check output placement. - Remove cocotb-test and update simulation documentation.
kcaisley
force-pushed
the
hdl-fmt-and-lint
branch
from
October 2, 2026 10:34
9e057b3 to
312e9b2
Compare
- Create the configured basetemp parent for clean local and CI runs. - Check compilation failures using the runner's CalledProcessError. - Verify all 73 affected primitive and runner regression tests.
- Accept the compiler failure exception forms used by Cocotb 2.0 and 2.1. - Check diagnostic text and preserve failed-build cleanup assertions. - Verify runner tests on both versions and all 368 tests on Cocotb 2.1.
cbespin
reviewed
Oct 8, 2026
cbespin
reviewed
Oct 28, 2026
Comment on lines
15
to
+21
| module ODDR ( | ||
| input wire D1, D2, | ||
| input wire C, CE, R, S, | ||
| input wire D1, | ||
| D2, | ||
| input wire C, | ||
| CE, | ||
| R, | ||
| S, |
Contributor
There was a problem hiding this comment.
Not sure if I am a fan of that :/
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.