mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 05:19:11 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			60 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
	
		
			1.1 KiB
		
	
	
	
		
			Bash
		
	
	
	
	
	
#!/usr/bin/env bash
 | 
						|
# Simple test of hierarchy -auto-top.
 | 
						|
 | 
						|
set -e
 | 
						|
 | 
						|
echo -n "  TOP first - "
 | 
						|
../../yosys -s - <<- EOY | grep "Automatically selected TOP as design top module"
 | 
						|
  read_verilog << EOV
 | 
						|
    module TOP(a, y);
 | 
						|
      input a;
 | 
						|
      output [31:0] y;
 | 
						|
 | 
						|
      aoi12 p [31:0] (a, y);
 | 
						|
    endmodule
 | 
						|
 | 
						|
    module aoi12(a, y);
 | 
						|
      input a;
 | 
						|
      output y;
 | 
						|
      assign y = ~a;
 | 
						|
    endmodule
 | 
						|
  EOV
 | 
						|
  hierarchy -auto-top
 | 
						|
EOY
 | 
						|
 | 
						|
echo -n "  TOP last - "
 | 
						|
../../yosys -s - <<- EOY | grep "Automatically selected TOP as design top module"
 | 
						|
  read_verilog << EOV
 | 
						|
    module aoi12(a, y);
 | 
						|
      input a;
 | 
						|
      output y;
 | 
						|
      assign y = ~a;
 | 
						|
    endmodule
 | 
						|
 | 
						|
    module TOP(a, y);
 | 
						|
      input a;
 | 
						|
      output [31:0] y;
 | 
						|
 | 
						|
      aoi12 foo (a, y);
 | 
						|
    endmodule
 | 
						|
  EOV
 | 
						|
  hierarchy -auto-top
 | 
						|
EOY
 | 
						|
 | 
						|
echo -n "  no explicit top - "
 | 
						|
../../yosys -s - <<- EOY | grep "Automatically selected noTop as design top module."
 | 
						|
  read_verilog << EOV
 | 
						|
    module aoi12(a, y);
 | 
						|
      input a;
 | 
						|
      output y;
 | 
						|
      assign y = ~a;
 | 
						|
    endmodule
 | 
						|
 | 
						|
    module noTop(a, y);
 | 
						|
      input a;
 | 
						|
      output [31:0] y;
 | 
						|
      assign y = a;
 | 
						|
    endmodule
 | 
						|
  EOV
 | 
						|
  hierarchy -auto-top
 | 
						|
EOY
 |