mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 19:52:31 +00:00 
			
		
		
		
	* xilinx: add SCC test for DSP48E1 * xilinx: Gate DSP48E1 being a whitebox behind ALLOW_WHITEBOX_DSP48E1 Have a test that checks it works through ABC9 when enabled * abc9 to break SCCs using $__ABC9_SCC_BREAKER module * Add test * abc9_ops: remove refs to (* abc9_keep *) on wires * abc9_ops: do not bypass cells in an SCC * Add myself to CODEOWNERS for abc9* * Fix compile * abc9_ops: run -prep_hier before scc * Fix tests * Remove bug reference pending fix * abc9: fix for -prep_hier -dff * xaiger: restore PI handling * abc9_ops: -prep_xaiger sigmap * abc9_ops: -mark_scc -> -break_scc * abc9: eliminate hard-coded abc9.box from tests Also tidy up * Address review
		
			
				
	
	
		
			29 lines
		
	
	
	
		
			653 B
		
	
	
	
		
			Verilog
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
	
		
			653 B
		
	
	
	
		
			Verilog
		
	
	
	
	
	
| (* abc9_box *)
 | |
| module $__ABC9_DELAY (input I, output O);
 | |
|   parameter DELAY = 0;
 | |
|   specify
 | |
|     (I => O) = DELAY;
 | |
|   endspecify
 | |
| endmodule
 | |
| 
 | |
| module $__ABC9_SCC_BREAKER (input [WIDTH-1:0] I, output [WIDTH-1:0] O);
 | |
| parameter WIDTH = 0;
 | |
| endmodule
 | |
| 
 | |
| (* abc9_flop, abc9_box, lib_whitebox *)
 | |
| module $__DFF_N__$abc9_flop (input C, D, Q, output n1);
 | |
|   assign n1 = D;
 | |
|   specify
 | |
|     $setup(D, posedge C, 0);
 | |
|     (posedge C => (n1:D)) = 0;
 | |
|   endspecify
 | |
| endmodule
 | |
| 
 | |
| (* abc9_flop, abc9_box, lib_whitebox *)
 | |
| module $__DFF_P__$abc9_flop (input C, D, Q, output n1);
 | |
|   assign n1 = D;
 | |
|   specify
 | |
|     $setup(D, posedge C, 0);
 | |
|     (posedge C => (n1:D)) = 0;
 | |
|   endspecify
 | |
| endmodule
 |