mirror of https://github.com/YosysHQ/yosys.git
commit
9ee3c57e46
|
@ -262,10 +262,14 @@ struct ExtractFaWorker
|
|||
pool<SigBit> new_leaves = leaves;
|
||||
|
||||
new_leaves.erase(bit);
|
||||
if (cell->hasPort(ID::A)) new_leaves.insert(sigmap(SigBit(cell->getPort(ID::A))));
|
||||
if (cell->hasPort(ID::B)) new_leaves.insert(sigmap(SigBit(cell->getPort(ID::B))));
|
||||
if (cell->hasPort(ID(C))) new_leaves.insert(sigmap(SigBit(cell->getPort(ID(C)))));
|
||||
if (cell->hasPort(ID(D))) new_leaves.insert(sigmap(SigBit(cell->getPort(ID(D)))));
|
||||
for (auto port : {ID::A, ID::B, ID(C), ID(D)}) {
|
||||
if (!cell->hasPort(port))
|
||||
continue;
|
||||
auto bit = sigmap(SigBit(cell->getPort(port)));
|
||||
if (!bit.wire)
|
||||
continue;
|
||||
new_leaves.insert(bit);
|
||||
}
|
||||
|
||||
if (GetSize(new_leaves) > maxbreadth)
|
||||
continue;
|
||||
|
|
|
@ -0,0 +1,13 @@
|
|||
read_ilang << EOF
|
||||
module \top
|
||||
wire input 1 \A
|
||||
wire output 2 \Y
|
||||
cell $_AND_ \sub
|
||||
connect \A \A
|
||||
connect \B 1'0
|
||||
connect \Y \Y
|
||||
end
|
||||
end
|
||||
EOF
|
||||
|
||||
extract_fa
|
Loading…
Reference in New Issue