mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	iopadmap: Add native support for negative-polarity output enable.
This commit is contained in:
		
							parent
							
								
									4871d8f199
								
							
						
					
					
						commit
						15b0d717ed
					
				
					 12 changed files with 35 additions and 43 deletions
				
			
		| 
						 | 
				
			
			@ -359,11 +359,3 @@ module \$__XILINX_MUXF78 (O, I0, I1, I2, I3, S0, S1);
 | 
			
		|||
  else
 | 
			
		||||
    MUXF8 mux8 (.I0(T0), .I1(T1), .S(S1), .O(O));
 | 
			
		||||
endmodule
 | 
			
		||||
 | 
			
		||||
module \$__XILINX_TINOUTPAD (input I, OE, output O, inout IO);
 | 
			
		||||
  IOBUF _TECHMAP_REPLACE_ (.I(I), .O(O), .T(~OE), .IO(IO));
 | 
			
		||||
endmodule
 | 
			
		||||
 | 
			
		||||
module \$__XILINX_TOUTPAD (input I, OE, output O);
 | 
			
		||||
  OBUFT _TECHMAP_REPLACE_ (.I(I), .O(O), .T(~OE));
 | 
			
		||||
endmodule
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -558,9 +558,10 @@ struct SynthXilinxPass : public ScriptPass
 | 
			
		|||
		}
 | 
			
		||||
 | 
			
		||||
		if (check_label("map_cells")) {
 | 
			
		||||
			// Needs to be done before logic optimization, so that inverters (OE vs T) are handled.
 | 
			
		||||
			// Needs to be done before logic optimization, so that inverters (inserted
 | 
			
		||||
			// here because of negative-polarity output enable) are handled.
 | 
			
		||||
			if (help_mode || !noiopad)
 | 
			
		||||
				run("iopadmap -bits -outpad OBUF I:O -inpad IBUF O:I -toutpad $__XILINX_TOUTPAD OE:I:O -tinoutpad $__XILINX_TINOUTPAD OE:O:I:IO A:top", "(skip if '-noiopad')");
 | 
			
		||||
				run("iopadmap -bits -outpad OBUF I:O -inpad IBUF O:I -toutpad OBUFT ~T:I:O -tinoutpad IOBUF ~T:O:I:IO A:top", "(skip if '-noiopad')");
 | 
			
		||||
			std::string techmap_args = "-map +/techmap.v -map +/xilinx/cells_map.v";
 | 
			
		||||
			if (widemux > 0)
 | 
			
		||||
				techmap_args += stringf(" -D MIN_MUX_INPUTS=%d", widemux);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue