aboutsummaryrefslogtreecommitdiffstats
path: root/backends/protobuf
diff options
context:
space:
mode:
authorwhitequark <whitequark@whitequark.org>2020-04-21 21:48:17 +0000
committerwhitequark <whitequark@whitequark.org>2020-04-21 22:08:36 +0000
commitd22a8d157da855ca70ff89ead8406dcd629642fb (patch)
treed0338bc123d7b09e2573f5c25e050a34c85c4a32 /backends/protobuf
parent164b0746d2111be17bd33b04852070fc4b65e48c (diff)
downloadyosys-d22a8d157da855ca70ff89ead8406dcd629642fb.tar.gz
yosys-d22a8d157da855ca70ff89ead8406dcd629642fb.tar.bz2
yosys-d22a8d157da855ca70ff89ead8406dcd629642fb.zip
cxxrtl: add (*cxxrtl.{comb,sync}*) annotations on black box outputs.
If the annotations are not used, this commit does not alter semantics at all, other than removing elision of outputs of black box cells. (Elision of such outputs is expected to be too rare to have any noticeable benefit, and the implementation was somewhat of a hack.) The (* cxxrtl.comb *) annotation alters the semantics of the output of the black box it is applied to such that, if the black box converges immediately, no additional delta cycle is necessary to propagate the computed combinatorial value upwards in hierarchy. The (* cxxrtl.sync *) annotation alters the semantics of the output of the black box it is applied to such as to remove any uses of the black box by the wires connected to this output, and break false feedback arcs arising from conservative modeling of dependencies of the black box. Although currently these attributes are only recognized on black boxes, if separate compilation is added in the future, it could also emit and consume them.
Diffstat (limited to 'backends/protobuf')
0 files changed, 0 insertions, 0 deletions