mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 19:52:31 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			108 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			108 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
| 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"; }
 | |
| 	}
 | |
| }
 |