| Age | Commit message (Collapse) | Author |
|
|
|
Co-authored-by: chick <chick@qrhino.com>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
|
|
This should speed up the common case
as the compiler never operates on the
unescaped string.
The new escape function also fixes a bug
where ']' was not escaped even though it
is the delimiting character for FileInfo.
In order to maintain backwards
compatibility for the ProtoBuf format,
this patch adds escape/unescape calls
when going from/to protobuf format.
For better performance we should consider
changing the protobuf format.
|
|
* Define 'same clock' in a syntactic sense
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
|
|
|
|
* Add assume, assert, cover statements
* Assert submodule assumptions
* Add warning when removing verification statements
* Remove System Verilog behaviour emitter warning
* Add option to disable AssertSubmoduleAssumptions
* Document verification statements in the spec
The syntax for the new statements is
assert(clk, cond, en, msg)
assume(clk, cond, en, msg)
cover(clk, cond, en, msg)
With assert as a representative example, the semantics is as follows:
`clk` is the clock, `cond` is the expression being asserted, `en` is the
enable signal (if `en` is low then the assert is not checked) and `msg`
is a string message intended to be reported as an error message by the
model checker if the assertion fails.
In the Verilog emitter, the new statements are handled by a new
`formals` map, which groups the statements by clock domain. All model
checking statements are then emitted within the context of an `ifdef
FORMAL` block, which allows model checking tools (like Symbiyosys) to
utilize the statements while keeping them out of synthesis flows.
Co-authored-by: Albert Magyar <albert.magyar@gmail.com>
|
|
* Closes #1597
|
|
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
|
|
Signed-off-by: Schuyler Eldridge <schuyler.eldridge@ibm.com>
|
|
Signed-off-by: Schuyler Eldridge <schuyler.eldridge@ibm.com>
|
|
Co-authored-by: Schuyler Eldridge <schuyler.eldridge@ibm.com>
Co-authored-by: Albert Magyar <albert.magyar@gmail.com>
Signed-off-by: Schuyler Eldridge <schuyler.eldridge@ibm.com>
|
|
* [spec] Add Fixed to spec
* Fixes #1195
* Define type & parameters
* Add Fixed as argument type to type conversions
* Add Fixed as argument type to relevent PrimOps (with link to tables)
* Add asFixed PrimOp
* Add IncP/DecP/SetP primops
* Add fixed-point width/point propagation tables
* Update spec pdf
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
|
|
|
|
|
|
* Closes #890
|
|
|
|
|
|
|
|
Co-authored-by: Jim Lawson <ucbjrl@berkeley.edu>
Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>
|
|
* Add spec for Analog type and attach statement
* Describe role of attaches in partial connection algorithm
* Change references that describe ground types where appropriate
* Closes #1194
* Fix typo
|
|
* Define read-write collison for independently clocked mem ports
* Included definition of initiating write/read operation
|
|
Signed-off-by: Schuyler Eldridge <schuyler.eldridge@ibm.com>
|
|
* Check mems for legal latencies; ban zero write latency.
* Trigger
|
|
|
|
This updates the spec to refelect the changes made in #587.
It also fixes issue #968.
|
|
|
|
|
|
* Merge makefile changes from dev/specification-fixes
- New top level makefile target: `specification`
- Builds the specification document.
* Number all code examples.
This is more a change of convenience than anything. Referring to syntax
examples is much easier when they are numbered!
This commit is in the context of freechipsproject/firrtl#890 - Updating
examples and syntax specification is made easier if they are numbered.
- Change `verbatim` environments to `lstlisting`
- Add very basic keyword highlighting.
- Rebuild specification PDF.
On branch dev/number-code-examples
Changes to be committed:
modified: spec/spec.pdf
modified: spec/spec.tex
|
|
|
|
|
|
Fixes #450
Signed-off-by: Schuyler Eldridge <schuyler.eldridge@ibm.com>
|
|
|
|
SInt representation is no longer 2's complement, but instead a positive number (hex or base 10) that is optionally preceded by a sign (-+).
|
|
Replace with more sensible comment to see LICENSE rather than including the
whole license in every file
|
|
|
|
Fixes #308
Fixes #193
|
|
* Updated FIRRTL spec + related code for readwrite ports.
(write) data -> wdata & mask -> wmask for clarity
* Also removed simple.fir that snuck into master branch.
|
|
Also added clock to reg's abstract syntax
|
|
Added future-release.txt
|
|
Keeps track of proposed changes to add to the next version of the Firrtl spec.
|
|
|
|
just be a string. Removed symbols from identifiers except '_'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|