<feed xmlns='http://www.w3.org/2005/Atom'>
<title>montreal/verif/formal, branch feature/fu</title>
<subtitle>RV32E core for TinyTapeout, codename "Montréal". Mirror of https://github.com/ubc-asic/montreal.git.
</subtitle>
<id>https://git.warricklo.net/montreal/atom?h=feature%2Ffu</id>
<link rel='self' href='https://git.warricklo.net/montreal/atom?h=feature%2Ffu'/>
<link rel='alternate' type='text/html' href='https://git.warricklo.net/montreal/'/>
<updated>2026-06-24T07:58:06+00:00</updated>
<entry>
<title>Add CI pipeline for formal verification</title>
<updated>2026-06-24T07:58:06+00:00</updated>
<author>
<name>Warrick Lo</name>
<email>wlo@warricklo.net</email>
</author>
<published>2026-06-24T07:58:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.warricklo.net/montreal/commit/?id=adce21a91f4b55cad1126fa4d453b4d6eef79f7f'/>
<id>urn:sha1:adce21a91f4b55cad1126fa4d453b4d6eef79f7f</id>
<content type='text'>
* Add formal verification tests with sby to CI
* Fix reviewdog having insufficient API permissions

See-also: #15
Signed-off-by: Warrick Lo &lt;wlo@warricklo.net&gt;
</content>
</entry>
<entry>
<title>Minor refactor to regfile formal test module</title>
<updated>2026-06-20T11:50:19+00:00</updated>
<author>
<name>Warrick Lo</name>
<email>wlo@warricklo.net</email>
</author>
<published>2026-06-20T11:50:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.warricklo.net/montreal/commit/?id=c348e393521750d8dd6d7ba57bd91e4b935dbbd7'/>
<id>urn:sha1:c348e393521750d8dd6d7ba57bd91e4b935dbbd7</id>
<content type='text'>
Signed-off-by: Warrick Lo &lt;wlo@warricklo.net&gt;
</content>
</entry>
<entry>
<title>Add formal verification for regfile</title>
<updated>2026-06-19T06:20:11+00:00</updated>
<author>
<name>Warrick Lo</name>
<email>wlo@warricklo.net</email>
</author>
<published>2026-06-19T06:20:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.warricklo.net/montreal/commit/?id=c8261a040bf328d4d2296f0c91a85a4193195844'/>
<id>urn:sha1:c8261a040bf328d4d2296f0c91a85a4193195844</id>
<content type='text'>
Successfully verifies the following requirements:
* REQ-REGFILE-010
* REQ-REGFILE-020
* REQ-REGFILE-030
* REQ-REGFILE-041
* REQ-REGFILE-042
* REQ-REGFILE-043
* REQ-REGFILE-050
* REQ-REGFILE-051
* REQ-REGFILE-052
* REQ-REGFILE-053
* REQ-REGFILE-060

Verified through construction of regfile:
* REQ-REGFILE-040

See-also: #14
Signed-off-by: Warrick Lo &lt;wlo@warricklo.net&gt;
</content>
</entry>
<entry>
<title>Pass linter</title>
<updated>2026-05-19T08:31:06+00:00</updated>
<author>
<name>Chat</name>
<email>63841542+chatrajaman3@users.noreply.github.com</email>
</author>
<published>2026-05-19T08:31:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.warricklo.net/montreal/commit/?id=429dd4fa609a5b8c71f8cd6ae6f8d74fd59f2280'/>
<id>urn:sha1:429dd4fa609a5b8c71f8cd6ae6f8d74fd59f2280</id>
<content type='text'>
  - simple_alu.sv: rename ports with suffixes (clk_i, rst_ni, a_i, b_i,
    sel_i, y_o, overflow_o); add default case to sel case statement;
    add y_next and overflow_next combinational signals; simplify
    always_ff to only register y_next and overflow_next
  - simple_alu_fv.sv: rename ports to match RTL (clk_i, rst_ni, a_i, b_i,
    sel_i, y_i, overflow_i); remove trailing spaces
  - simple_alu_top_fv.sv: rename ports; replace .* with explicit
    connections to match updated port names
  - simple_alu_bind.sv: add missing posix newline at EOF
</content>
</entry>
<entry>
<title>Add simple_alu RTL and formal verification</title>
<updated>2026-05-15T02:58:51+00:00</updated>
<author>
<name>Chat</name>
<email>63841542+ChillZero@users.noreply.github.com</email>
</author>
<published>2026-05-15T02:58:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.warricklo.net/montreal/commit/?id=1fcb70209582fd05c03919b31502deb2b7af472a'/>
<id>urn:sha1:1fcb70209582fd05c03919b31502deb2b7af472a</id>
<content type='text'>
  - simple_alu.sv: 32-bit ALU with add/sub, 33-bit extended overflow
    detection, and active-low synchronous reset
  - simple_alu_bind.sv: attaches checker to simple_alu without modifying RTL
  - simple_alu_top_fv.sv: replace bind (unsupported in open-source Yosys)
    with explicit wrapper that instantiates DUT and checker side-by-side
  - simple_alu_fv.sv: bind-based checker module observing DUT signals
  - simple_alu.sby: SymbiYosys config running BMC and cover tasks
  - README.md: verification plan tracking implemented and planned properties
  - .gitignore: exclude SymbiYosys output directories
</content>
</entry>
</feed>
