mirror of https://github.com/YosysHQ/yosys.git
Added cells.lib
This commit is contained in:
parent
dff8bd3b2a
commit
3ed4e34380
|
@ -15,4 +15,5 @@ $(eval $(call add_share_file,share,techlibs/common/techmap.v))
|
|||
$(eval $(call add_share_file,share,techlibs/common/blackbox.v))
|
||||
$(eval $(call add_share_file,share,techlibs/common/pmux2mux.v))
|
||||
$(eval $(call add_share_file,share,techlibs/common/adff2dff.v))
|
||||
$(eval $(call add_share_file,share,techlibs/common/cells.lib))
|
||||
|
||||
|
|
|
@ -0,0 +1,108 @@
|
|||
library(yosys_cells) {
|
||||
cell(DFF_N) {
|
||||
ff(IQ, IQN) {
|
||||
clocked_on: "!C";
|
||||
next_state: "D";
|
||||
}
|
||||
pin(D) { direction: input; }
|
||||
pin(C) { direction: input; clock: true; }
|
||||
pin(Q) { direction: output; function: "IQ"; }
|
||||
}
|
||||
cell(DFF_P) {
|
||||
ff(IQ, IQN) {
|
||||
clocked_on: "C";
|
||||
next_state: "D";
|
||||
}
|
||||
pin(D) { direction: input; }
|
||||
pin(C) { direction: input; clock: true; }
|
||||
pin(Q) { direction: output; function: "IQ"; }
|
||||
}
|
||||
cell(DFF_NN0) {
|
||||
ff(IQ, IQN) {
|
||||
clocked_on: "!C";
|
||||
next_state: "D";
|
||||
clear: "!R";
|
||||
}
|
||||
pin(D) { direction: input; }
|
||||
pin(R) { direction: input; }
|
||||
pin(C) { direction: input; clock: true; }
|
||||
pin(Q) { direction: output; function: "IQ"; }
|
||||
}
|
||||
cell(DFF_NN1) {
|
||||
ff(IQ, IQN) {
|
||||
clocked_on: "!C";
|
||||
next_state: "D";
|
||||
preset: "!R";
|
||||
}
|
||||
pin(D) { direction: input; }
|
||||
pin(R) { direction: input; }
|
||||
pin(C) { direction: input; clock: true; }
|
||||
pin(Q) { direction: output; function: "IQ"; }
|
||||
}
|
||||
cell(DFF_NP0) {
|
||||
ff(IQ, IQN) {
|
||||
clocked_on: "!C";
|
||||
next_state: "D";
|
||||
clear: "R";
|
||||
}
|
||||
pin(D) { direction: input; }
|
||||
pin(R) { direction: input; }
|
||||
pin(C) { direction: input; clock: true; }
|
||||
pin(Q) { direction: output; function: "IQ"; }
|
||||
}
|
||||
cell(DFF_NP1) {
|
||||
ff(IQ, IQN) {
|
||||
clocked_on: "!C";
|
||||
next_state: "D";
|
||||
preset: "R";
|
||||
}
|
||||
pin(D) { direction: input; }
|
||||
pin(R) { direction: input; }
|
||||
pin(C) { direction: input; clock: true; }
|
||||
pin(Q) { direction: output; function: "IQ"; }
|
||||
}
|
||||
cell(DFF_PN0) {
|
||||
ff(IQ, IQN) {
|
||||
clocked_on: "C";
|
||||
next_state: "D";
|
||||
clear: "!R";
|
||||
}
|
||||
pin(D) { direction: input; }
|
||||
pin(R) { direction: input; }
|
||||
pin(C) { direction: input; clock: true; }
|
||||
pin(Q) { direction: output; function: "IQ"; }
|
||||
}
|
||||
cell(DFF_PN1) {
|
||||
ff(IQ, IQN) {
|
||||
clocked_on: "C";
|
||||
next_state: "D";
|
||||
preset: "!R";
|
||||
}
|
||||
pin(D) { direction: input; }
|
||||
pin(R) { direction: input; }
|
||||
pin(C) { direction: input; clock: true; }
|
||||
pin(Q) { direction: output; function: "IQ"; }
|
||||
}
|
||||
cell(DFF_PP0) {
|
||||
ff(IQ, IQN) {
|
||||
clocked_on: "C";
|
||||
next_state: "D";
|
||||
clear: "R";
|
||||
}
|
||||
pin(D) { direction: input; }
|
||||
pin(R) { direction: input; }
|
||||
pin(C) { direction: input; clock: true; }
|
||||
pin(Q) { direction: output; function: "IQ"; }
|
||||
}
|
||||
cell(DFF_PP1) {
|
||||
ff(IQ, IQN) {
|
||||
clocked_on: "C";
|
||||
next_state: "D";
|
||||
preset: "R";
|
||||
}
|
||||
pin(D) { direction: input; }
|
||||
pin(R) { direction: input; }
|
||||
pin(C) { direction: input; clock: true; }
|
||||
pin(Q) { direction: output; function: "IQ"; }
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue