mirror of
https://github.com/YosysHQ/yosys
synced 2025-11-02 12:37:53 +00:00
Pack Y register
This commit is contained in:
parent
5e70b8a22b
commit
304cefbbe2
2 changed files with 38 additions and 22 deletions
|
|
@ -143,17 +143,21 @@ endcode
|
|||
match ffS
|
||||
if muxAB
|
||||
select ffS->type.in($dff)
|
||||
select nusers(port(ffS, \D)) == 2
|
||||
index <SigSpec> port(ffS, \D) === port(muxAB, \Y)
|
||||
index <SigSpec> port(ffS, \Q) === sigS
|
||||
filter nusers(port(muxAB, \Y)) == 2
|
||||
filter includes(port(ffS, \D).to_sigbit_set(), port(muxAB, \Y).to_sigbit_set())
|
||||
optional
|
||||
endmatch
|
||||
|
||||
code clock clock_pol
|
||||
code clock clock_pol sigS
|
||||
if (ffS) {
|
||||
SigBit c = port(ffS, \CLK).as_bit();
|
||||
bool cp = param(ffS, \CLK_POLARITY).as_bool();
|
||||
|
||||
if (port(ffS, \Q) != sigS) {
|
||||
sigS = port(muxAB, \Y);
|
||||
sigS.replace(port(ffS, \D), port(ffS, \Q));
|
||||
}
|
||||
|
||||
if (clock != SigBit() && (c != clock || cp != clock_pol))
|
||||
reject;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue