mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-10-31 03:32:29 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			273 lines
		
	
	
	
		
			8.2 KiB
		
	
	
	
		
			Verilog
		
	
	
	
	
	
			
		
		
	
	
			273 lines
		
	
	
	
		
			8.2 KiB
		
	
	
	
		
			Verilog
		
	
	
	
	
	
| module case_lage_top (
 | |
|     input wire [127:0] x,
 | |
|     output reg [31:0] y
 | |
| );
 | |
|     localparam A = 32'hDEAD_BEEF;
 | |
|     localparam B = 32'h0BAD_0B01;
 | |
|     localparam C = 32'hC001_D00D;
 | |
|     localparam D = 32'h1234_5678;
 | |
| 
 | |
|     always @*
 | |
|         case (x)
 | |
| 
 | |
|             {C,A,D,B}: y = 142;
 | |
|             {C,A,D,A}: y = 141;
 | |
|             {D,D,A,A}: y = 241;
 | |
|             {A,C,C,D}: y = 44;
 | |
|             {A,A,A,C}: y = 3;
 | |
|             {A,B,A,C}: y = 19;
 | |
|             {A,D,C,C}: y = 59;
 | |
|             {A,A,C,C}: y = 11;
 | |
|             {D,C,B,B}: y = 230;
 | |
|             {A,A,D,D}: y = 16;
 | |
|             {A,C,A,A}: y = 33;
 | |
|             {A,D,D,D}: y = 64;
 | |
|             {D,B,C,B}: y = 218;
 | |
|             {A,C,B,D}: y = 40;
 | |
|             {C,A,B,B}: y = 134;
 | |
|             {A,C,C,C}: y = 43;
 | |
|             {D,A,D,D}: y = 208;
 | |
|             {A,B,C,A}: y = 25;
 | |
|             {B,A,B,B}: y = 70;
 | |
|             {A,C,B,B}: y = 38;
 | |
|             {C,C,C,B}: y = 170;
 | |
|             {C,D,A,C}: y = 179;
 | |
|             {B,C,D,B}: y = 110;
 | |
|             {A,D,A,C}: y = 51;
 | |
|             {C,C,B,B}: y = 166;
 | |
|             {D,D,D,B}: y = 254;
 | |
|             {C,A,D,C}: y = 143;
 | |
|             {C,D,D,B}: y = 190;
 | |
|             {C,B,A,A}: y = 145;
 | |
|             {C,B,A,C}: y = 147;
 | |
|             {B,C,C,B}: y = 106;
 | |
|             {C,D,C,A}: y = 185;
 | |
|             {C,D,B,D}: y = 184;
 | |
|             {D,D,D,D}: y = 256;
 | |
|             {D,C,C,C}: y = 235;
 | |
|             {D,C,D,B}: y = 238;
 | |
|             {A,B,D,C}: y = 31;
 | |
|             {A,C,A,D}: y = 36;
 | |
|             {C,B,C,B}: y = 154;
 | |
|             {A,B,A,A}: y = 17;
 | |
|             {C,B,B,A}: y = 149;
 | |
|             {B,B,D,C}: y = 95;
 | |
|             {B,D,C,B}: y = 122;
 | |
|             {D,B,A,A}: y = 209;
 | |
|             {B,A,B,A}: y = 69;
 | |
|             {B,A,D,A}: y = 77;
 | |
|             {A,B,B,B}: y = 22;
 | |
|             {C,C,C,C}: y = 171;
 | |
|             {C,A,C,B}: y = 138;
 | |
|             {B,A,D,D}: y = 80;
 | |
|             {C,D,D,C}: y = 191;
 | |
|             {B,A,A,C}: y = 67;
 | |
|             {D,C,D,C}: y = 239;
 | |
|             {C,D,D,D}: y = 192;
 | |
|             {C,D,B,B}: y = 182;
 | |
|             {B,B,A,C}: y = 83;
 | |
|             {D,A,A,D}: y = 196;
 | |
|             {A,C,C,B}: y = 42;
 | |
|             {B,C,A,A}: y = 97;
 | |
|             {A,D,B,A}: y = 53;
 | |
|             {D,D,B,C}: y = 247;
 | |
|             {A,A,C,A}: y = 9;
 | |
|             {D,A,C,B}: y = 202;
 | |
|             {A,C,B,C}: y = 39;
 | |
|             {B,C,B,A}: y = 101;
 | |
|             {B,B,B,C}: y = 87;
 | |
|             {C,B,A,B}: y = 146;
 | |
|             {B,D,A,D}: y = 116;
 | |
|             {A,B,D,D}: y = 32;
 | |
|             {B,A,B,C}: y = 71;
 | |
|             {C,A,A,A}: y = 129;
 | |
|             {B,A,D,C}: y = 79;
 | |
|             {B,A,C,B}: y = 74;
 | |
|             {B,B,D,B}: y = 94;
 | |
|             {B,B,C,C}: y = 91;
 | |
|             {D,C,C,A}: y = 233;
 | |
|             {C,A,B,A}: y = 133;
 | |
|             {D,A,B,A}: y = 197;
 | |
|             {D,B,B,D}: y = 216;
 | |
|             {C,C,A,C}: y = 163;
 | |
|             {D,D,B,A}: y = 245;
 | |
|             {B,A,D,B}: y = 78;
 | |
|             {A,B,C,D}: y = 28;
 | |
|             {C,C,C,D}: y = 172;
 | |
|             {D,C,A,D}: y = 228;
 | |
|             {A,C,D,A}: y = 45;
 | |
|             {B,D,C,C}: y = 123;
 | |
|             {C,B,A,D}: y = 148;
 | |
|             {B,D,B,B}: y = 118;
 | |
|             {A,D,A,B}: y = 50;
 | |
|             {C,B,B,C}: y = 151;
 | |
|             {A,A,A,A}: y = 1;
 | |
|             {A,A,B,B}: y = 6;
 | |
|             {B,B,B,B}: y = 86;
 | |
|             {A,D,A,A}: y = 49;
 | |
|             {A,A,A,B}: y = 2;
 | |
|             {B,D,D,A}: y = 125;
 | |
|             {C,C,D,B}: y = 174;
 | |
|             {D,A,D,B}: y = 206;
 | |
|             {D,D,B,D}: y = 248;
 | |
|             {A,A,A,D}: y = 4;
 | |
|             {B,A,A,B}: y = 66;
 | |
|             {B,C,C,A}: y = 105;
 | |
|             {B,C,C,C}: y = 107;
 | |
|             {D,D,D,C}: y = 255;
 | |
|             {B,C,D,D}: y = 112;
 | |
|             {A,D,B,C}: y = 55;
 | |
|             {C,C,C,A}: y = 169;
 | |
|             {C,D,B,C}: y = 183;
 | |
|             {A,A,B,D}: y = 8;
 | |
|             {D,C,B,A}: y = 229;
 | |
|             {C,B,D,A}: y = 157;
 | |
|             {A,D,D,C}: y = 63;
 | |
|             {D,A,D,A}: y = 205;
 | |
|             {A,A,B,C}: y = 7;
 | |
|             {A,C,A,B}: y = 34;
 | |
|             {C,B,D,C}: y = 159;
 | |
|             {C,C,D,D}: y = 176;
 | |
|             {D,D,D,A}: y = 253;
 | |
|             {A,B,B,D}: y = 24;
 | |
|             {B,B,C,A}: y = 89;
 | |
|             {B,D,C,A}: y = 121;
 | |
|             {A,B,C,C}: y = 27;
 | |
|             {A,A,D,C}: y = 15;
 | |
|             {A,B,B,A}: y = 21;
 | |
|             {A,D,A,D}: y = 52;
 | |
|             {D,D,C,C}: y = 251;
 | |
|             {C,D,A,B}: y = 178;
 | |
|             {A,A,D,B}: y = 14;
 | |
|             {D,B,D,B}: y = 222;
 | |
|             {A,C,C,A}: y = 41;
 | |
|             {D,D,A,C}: y = 243;
 | |
|             {A,C,D,B}: y = 46;
 | |
|             {B,B,B,D}: y = 88;
 | |
|             {D,B,B,B}: y = 214;
 | |
|             {C,C,B,D}: y = 168;
 | |
|             {A,D,D,A}: y = 61;
 | |
|             {D,A,C,C}: y = 203;
 | |
|             {D,C,A,C}: y = 227;
 | |
|             {C,D,C,D}: y = 188;
 | |
|             {D,B,D,D}: y = 224;
 | |
|             {A,C,D,C}: y = 47;
 | |
|             {B,A,B,D}: y = 72;
 | |
|             {A,B,B,C}: y = 23;
 | |
|             {C,C,D,A}: y = 173;
 | |
|             {D,B,C,C}: y = 219;
 | |
|             {D,B,C,A}: y = 217;
 | |
|             {A,D,C,D}: y = 60;
 | |
|             {B,B,D,A}: y = 93;
 | |
|             {A,D,C,A}: y = 57;
 | |
|             {C,C,A,A}: y = 161;
 | |
|             {C,B,B,D}: y = 152;
 | |
|             {B,B,B,A}: y = 85;
 | |
|             {B,D,A,A}: y = 113;
 | |
|             {D,C,D,A}: y = 237;
 | |
|             {B,C,B,C}: y = 103;
 | |
|             {A,B,C,B}: y = 26;
 | |
|             {C,D,A,D}: y = 180;
 | |
|             {A,D,B,D}: y = 56;
 | |
|             {D,C,A,B}: y = 226;
 | |
|             {D,B,B,C}: y = 215;
 | |
|             {D,A,B,C}: y = 199;
 | |
|             {B,D,A,C}: y = 115;
 | |
|             {C,B,C,D}: y = 156;
 | |
|             {B,D,D,B}: y = 126;
 | |
|             {D,D,C,B}: y = 250;
 | |
|             {D,C,C,D}: y = 236;
 | |
|             {B,C,B,D}: y = 104;
 | |
|             {C,B,C,A}: y = 153;
 | |
|             {C,B,B,B}: y = 150;
 | |
|             {C,D,C,B}: y = 186;
 | |
|             {C,D,C,C}: y = 187;
 | |
|             {A,D,B,B}: y = 54;
 | |
|             {D,C,C,B}: y = 234;
 | |
|             {C,B,D,D}: y = 160;
 | |
|             {A,B,A,D}: y = 20;
 | |
|             {C,C,B,A}: y = 165;
 | |
|             {C,D,D,A}: y = 189;
 | |
|             {C,C,D,C}: y = 175;
 | |
|             {D,B,D,C}: y = 223;
 | |
|             {B,C,A,B}: y = 98;
 | |
|             {C,C,A,B}: y = 162;
 | |
|             {B,C,D,A}: y = 109;
 | |
|             {D,A,B,D}: y = 200;
 | |
|             {B,D,C,D}: y = 124;
 | |
|             {D,D,C,A}: y = 249;
 | |
|             {B,A,C,C}: y = 75;
 | |
|             {A,A,C,B}: y = 10;
 | |
|             {C,A,B,D}: y = 136;
 | |
|             {B,B,C,D}: y = 92;
 | |
|             {D,D,C,D}: y = 252;
 | |
|             {B,C,A,D}: y = 100;
 | |
|             {C,A,C,C}: y = 139;
 | |
|             {C,A,C,D}: y = 140;
 | |
|             {D,C,A,A}: y = 225;
 | |
|             {A,D,C,B}: y = 58;
 | |
|             {D,B,C,D}: y = 220;
 | |
|             {D,C,B,D}: y = 232;
 | |
|             {B,A,C,D}: y = 76;
 | |
|             {B,B,D,D}: y = 96;
 | |
|             {D,D,B,B}: y = 246;
 | |
|             {C,D,A,A}: y = 177;
 | |
|             {D,D,A,B}: y = 242;
 | |
|             {A,A,D,A}: y = 13;
 | |
|             {B,B,A,D}: y = 84;
 | |
|             {B,C,D,C}: y = 111;
 | |
|             {D,A,A,B}: y = 194;
 | |
|             {C,A,B,C}: y = 135;
 | |
|             {D,A,A,C}: y = 195;
 | |
|             {B,B,A,B}: y = 82;
 | |
|             {D,C,D,D}: y = 240;
 | |
|             {B,C,C,D}: y = 108;
 | |
|             {D,B,A,C}: y = 211;
 | |
|             {A,C,D,D}: y = 48;
 | |
|             {D,A,A,A}: y = 193;
 | |
|             {C,A,A,B}: y = 130;
 | |
|             {D,B,A,D}: y = 212;
 | |
|             {D,A,B,B}: y = 198;
 | |
|             {A,C,B,A}: y = 37;
 | |
|             {B,D,B,D}: y = 120;
 | |
|             {C,C,B,C}: y = 167;
 | |
|             {D,B,A,B}: y = 210;
 | |
|             {A,B,A,B}: y = 18;
 | |
|             {B,C,B,B}: y = 102;
 | |
|             {B,B,A,A}: y = 81;
 | |
|             {D,D,A,D}: y = 244;
 | |
|             {A,B,D,B}: y = 30;
 | |
|             {A,C,A,C}: y = 35;
 | |
|             {A,A,C,D}: y = 12;
 | |
|             {B,D,B,C}: y = 119;
 | |
|             {B,C,A,C}: y = 99;
 | |
|             {D,A,C,A}: y = 201;
 | |
|             {B,A,A,D}: y = 68;
 | |
|             {C,A,A,D}: y = 132;
 | |
|             {B,A,C,A}: y = 73;
 | |
|             {C,C,A,D}: y = 164;
 | |
|             {B,D,B,A}: y = 117;
 | |
|             {A,D,D,B}: y = 62;
 | |
|             {B,D,D,C}: y = 127;
 | |
|             {A,B,D,A}: y = 29;
 | |
|             {C,D,B,A}: y = 181;
 | |
|             {B,B,C,B}: y = 90;
 | |
|             {B,D,A,B}: y = 114;
 | |
|             {B,D,D,D}: y = 128;
 | |
|             {C,A,C,A}: y = 137;
 | |
|             {A,A,B,A}: y = 5;
 | |
|             {C,A,D,D}: y = 144;
 | |
|             {D,C,B,C}: y = 231;
 | |
|             {D,A,C,D}: y = 204;
 | |
|             {C,A,A,C}: y = 131;
 | |
|             {C,B,D,B}: y = 158;
 | |
|             {B,A,A,A}: y = 65;
 | |
|             {D,A,D,C}: y = 207;
 | |
|             {D,B,B,A}: y = 213;
 | |
|             {D,B,D,A}: y = 221;
 | |
|             {C,B,C,C}: y = 155;
 | |
| 
 | |
|             default: y = 0;
 | |
| 
 | |
|         endcase
 | |
| endmodule
 |