mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 05:19:11 +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"; }
 | 
						|
	}
 | 
						|
}
 |