1 |
2 |
olegodints |
// This file has been generated automatically
|
2 |
|
|
// by the GenStates tool
|
3 |
|
|
// Copyright (c) Oleg Odintsov
|
4 |
|
|
// This tool is a part of Agat hardware project
|
5 |
|
|
|
6 |
|
|
// Level of optimization: infinite
|
7 |
|
|
// Total number of actions: 82
|
8 |
|
|
wire E_AB__PC;
|
9 |
|
|
wire E_AB__EA;
|
10 |
|
|
wire E_AB__S;
|
11 |
|
|
wire E_PC__PC_1;
|
12 |
|
|
wire E_T__0;
|
13 |
|
|
wire E_N_Z__SB;
|
14 |
|
|
wire E_N_Z__RES;
|
15 |
|
|
wire E_N_Z__SB_RES;
|
16 |
|
|
wire E_C__RES;
|
17 |
|
|
wire E_V__RES;
|
18 |
|
|
wire E_V__SB_6_;
|
19 |
|
|
wire A_ALU_CF_0;
|
20 |
|
|
wire A_ALU_DF_0;
|
21 |
|
|
wire A_ALU_OP_ADC;
|
22 |
|
|
wire A_SB_0;
|
23 |
|
|
wire A_ALU_B_SB;
|
24 |
|
|
wire A_ALU_CF_1;
|
25 |
|
|
wire A_ALU_CF_ALUC;
|
26 |
|
|
wire A_ALU_B_NOTSB;
|
27 |
|
|
wire A_ALU_OP_ORA;
|
28 |
|
|
wire A_ALU_A_DB;
|
29 |
|
|
wire A_SB_X;
|
30 |
|
|
wire A_ALU_A_EAL;
|
31 |
|
|
wire A_SB_PCL;
|
32 |
|
|
wire A_SB_Y;
|
33 |
|
|
wire A_ALU_A_ALU;
|
34 |
|
|
wire A_ALU_A_S;
|
35 |
|
|
wire E_CF__IR_5_;
|
36 |
|
|
wire E_IF__IR_5_;
|
37 |
|
|
wire E_DF__IR_5_;
|
38 |
|
|
wire E_VF__0;
|
39 |
|
|
wire E_T__0IFNF__IR_5_;
|
40 |
|
|
wire E_T__0IFVF__IR_5_;
|
41 |
|
|
wire E_T__0IFCF__IR_5_;
|
42 |
|
|
wire E_T__0IFZF__IR_5_;
|
43 |
|
|
wire E_EA__DB;
|
44 |
|
|
wire E_EAL__DB;
|
45 |
|
|
wire E_PCL__RES;
|
46 |
|
|
wire E_T__0IF_C7F;
|
47 |
|
|
wire A_ALU_A_SIGN;
|
48 |
|
|
wire A_SB_PCH;
|
49 |
|
|
wire E_PCH__RES;
|
50 |
|
|
wire E_EAH__DB;
|
51 |
|
|
wire E_EAL__ALU;
|
52 |
|
|
wire E_T__T_1IF_ALUCZ;
|
53 |
|
|
wire E_EAH__ALU;
|
54 |
|
|
wire E_PCL__ALU;
|
55 |
|
|
wire A_SB_DB;
|
56 |
|
|
wire E_AC__SB;
|
57 |
|
|
wire A_ALU_A_AC;
|
58 |
|
|
wire E_AC__RES;
|
59 |
|
|
wire A_ALU_OP_AND;
|
60 |
|
|
wire A_ALU_OP_EOR;
|
61 |
|
|
wire A_ALU_A_X;
|
62 |
|
|
wire A_ALU_A_Y;
|
63 |
|
|
wire A_ALU_DF_D;
|
64 |
|
|
wire A_ALU_CF_C;
|
65 |
|
|
wire A_ALU_OP_ASL;
|
66 |
|
|
wire A_RW_W;
|
67 |
|
|
wire A_SB_ALU;
|
68 |
|
|
wire E_DB__SB;
|
69 |
|
|
wire A_ALU_OP_LSR;
|
70 |
|
|
wire A_ALU_OP_ROL;
|
71 |
|
|
wire A_ALU_OP_ROR;
|
72 |
|
|
wire A_SB_AC;
|
73 |
|
|
wire E_X__SB;
|
74 |
|
|
wire E_Y__SB;
|
75 |
|
|
wire A_SB_S;
|
76 |
|
|
wire E_S__SB;
|
77 |
|
|
wire E_PC__EA;
|
78 |
|
|
wire E_S__ALU;
|
79 |
|
|
wire A_SB_P;
|
80 |
|
|
wire E_P__SB;
|
81 |
|
|
wire E_X__RES;
|
82 |
|
|
wire E_Y__RES;
|
83 |
|
|
wire E_DB__ALU;
|
84 |
|
|
wire E_DB__PCH;
|
85 |
|
|
wire E_PCL__EAL;
|
86 |
|
|
wire E_DB__PCL;
|
87 |
|
|
wire E_DB__P;
|
88 |
|
|
wire E_P__DB;
|
89 |
|
|
wire E_PCL__DB;
|
90 |
|
|
|
91 |
|
|
// Actions assignments
|
92 |
|
|
|
93 |
|
|
// action: AB <= PC:
|
94 |
|
|
assign E_AB__PC = (!L[10] && ((!L[0] && ((!L[1] && ((!L[2] && ((!L[9] && (!L[3] || (L[3] && ((!L[4] && (!L[7] || ({L[7],L[8]} == 2'b10))) || (L[4] && ((!L[5] && ((!L[6] && (!L[8] || ({L[7],L[8]} == 2'b01))) || L[6])) || L[5])))))) || ({L[3],L[4],L[9]} == 3'b011))) || (L[2] && (!L[9] || ({L[3],L[8],L[9]} == 3'b101))))) || (L[1] && ((!L[9] && ((!L[2] && ((!L[8] && (({L[3],L[4],L[7]} == 3'b001) || L[3])) || ({L[3],L[4],L[7],L[8]} == 4'b0011))) || L[2])) || ({L[2],L[3],L[8],L[9]} == 4'b1101))))) || (L[0] && ((!L[9] && (!L[1] || (L[1] && ((!L[2] && (!L[3] || (L[3] && ((!L[4] && ((!L[5] && ((!L[6] && (!L[8] || ({L[7],L[8]} == 2'b01))) || L[6])) || L[5])) || L[4])))) || L[2])))) || (({L[3],L[8],L[9]} == 3'b101) && (({L[2],L[4]} == 2'b01) || L[2])))))) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[7],L[8],L[9],L[10]} == 10'b0000010101);
|
95 |
|
|
|
96 |
|
|
// action: AB <= EA:
|
97 |
|
|
assign E_AB__EA = (({L[9],L[10]} == 2'b01) && ((!L[2] && (({L[0],L[1],L[3],L[4],L[5],L[6],L[7],L[8]} == 8'b00000001) || (L[0] && (!L[3] || ({L[3],L[4],L[8]} == 3'b110))))) || (({L[2],L[3],L[8]} == 3'b110) && (({L[0],L[1],L[4],L[5],L[6],L[7]} == 6'b000110) || L[4])))) || (L[9] && ((!L[10] && ((({L[0],L[2]} == 2'b01) && ((!L[3] && (({L[4],L[8]} == 2'b00) || L[4])) || ({L[3],L[8]} == 2'b11))) || (L[0] && ((!L[3] && ((!L[1] && (!L[2] || (L[2] && (({L[4],L[8]} == 2'b00) || L[4])))) || (L[1] && (!L[2] || (L[2] && (({L[4],L[8]} == 2'b00) || L[4])))))) || (({L[3],L[8]} == 2'b11) && (({L[2],L[4]} == 2'b01) || L[2])))))) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[10]} == 10'b0000000001)));
|
98 |
|
|
|
99 |
|
|
// action: AB <= S:
|
100 |
|
|
assign E_AB__S = (({L[0],L[1],L[2],L[3],L[4],L[7],L[9],L[10]} == 8'b00000001) && (!L[8] || ({L[5],L[6],L[8]} == 3'b011))) || (({L[0],L[1],L[2],L[4],L[7],L[9],L[10]} == 7'b0000010) && (!L[3] || (L[3] && (({L[5],L[8]} == 2'b00) || L[5]))));
|
101 |
|
|
|
102 |
|
|
// action: PC <= PC + 1:
|
103 |
|
|
assign E_PC__PC_1 = (!L[10] && ((!L[9] && ((!L[0] && ((!L[1] && ((!L[2] && (!L[8] || (({L[3],L[8]} == 2'b01) && ((!L[4] && (({L[5],L[6],L[7]} == 3'b100) || L[7])) || L[4])))) || L[2])) || (L[1] && ((!L[2] && ((!L[8] && (({L[3],L[4],L[7]} == 3'b001) || L[3])) || ({L[3],L[4],L[7],L[8]} == 4'b0011))) || L[2])))) || (L[0] && (!L[1] || (L[1] && ((!L[2] && (!L[3] || (L[3] && ((!L[4] && ((!L[5] && ((!L[6] && (!L[8] || ({L[7],L[8]} == 2'b01))) || L[6])) || L[5])) || L[4])))) || L[2])))))) || (({L[3],L[8],L[9]} == 3'b101) && (({L[0],L[2],L[4]} == 3'b101) || (L[2] && ((!L[0] && ((!L[1] && ((!L[4] && (!L[5] || (L[5] && (({L[6],L[7]} == 2'b00) || L[7])))) || L[4])) || L[1])) || L[0])))))) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000110101);
|
104 |
|
|
|
105 |
|
|
// action: T <= 0:
|
106 |
|
|
assign E_T__0 = (!L[0] && ((!L[1] && ((!L[2] && ((!L[10] && ((({L[3],L[8],L[9]} == 3'b101) && (({L[4],L[5],L[7]} == 3'b000) || (L[4] && ((!L[5] && (({L[6],L[7]} == 2'b00) || L[6])) || L[5])))) || (L[8] && ((({L[7],L[9]} == 2'b01) && (({L[3],L[4],L[5]} == 3'b101) || ({L[3],L[4]} == 2'b01))) || (L[7] && ((!L[9] && (!L[4] || ({L[3],L[4],L[5],L[6]} == 4'b1100))) || ({L[3],L[4],L[9]} == 3'b011))))))) || (({L[3],L[4],L[7],L[10]} == 4'b0001) && (({L[5],L[6],L[8],L[9]} == 4'b0001) || (({L[8],L[9]} == 2'b10) && (({L[5],L[6]} == 2'b01) || L[5])))))) || (L[2] && ((({L[3],L[8],L[9],L[10]} == 4'b1001) && (({L[4],L[5],L[6],L[7]} == 4'b0110) || L[4])) || (({L[9],L[10]} == 2'b10) && ((!L[4] && (({L[3],L[8]} == 2'b00) || (({L[3],L[8]} == 2'b11) && (!L[5] || (L[5] && (({L[6],L[7]} == 2'b00) || L[7])))))) || ({L[3],L[4],L[8]} == 3'b011))))))) || (L[1] && ((({L[2],L[8],L[9],L[10]} == 4'b0100) && (({L[3],L[4],L[7]} == 3'b001) || L[3])) || (L[2] && ((({L[6],L[7],L[9],L[10]} == 4'b0110) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011))) || (L[10] && ((!L[9] && ((!L[3] && ((({L[4],L[8]} == 2'b00) && (({L[6],L[7]} == 2'b00) || L[6])) || (({L[4],L[8]} == 2'b11) && (({L[6],L[7]} == 2'b00) || L[6])))) || (L[3] && (({L[4],L[6],L[7],L[8]} == 4'b1010) || (({L[4],L[8]} == 2'b01) && (({L[6],L[7]} == 2'b00) || L[6])))))) || (({L[3],L[4],L[8],L[9]} == 4'b1101) && (({L[6],L[7]} == 2'b00) || L[6])))))))))) || (L[0] && ((!L[9] && ((!L[2] && (({L[3],L[4],L[8],L[10]} == 4'b1101) || (L[8] && ((!L[4] && (({L[3],L[10]} == 2'b01) || ({L[3],L[10]} == 2'b10))) || ({L[3],L[4],L[10]} == 3'b011))))) || ({L[2],L[3],L[4],L[8],L[10]} == 5'b11101))) || (({L[2],L[9],L[10]} == 3'b110) && ((!L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b101)))));
|
107 |
|
|
|
108 |
|
|
// action: N,Z <= SB:
|
109 |
|
|
assign E_N_Z__SB = (({L[6],L[7]} == 2'b01) && ((({L[0],L[2],L[3],L[5],L[8],L[9],L[10]} == 7'b0010100) && (({L[1],L[4]} == 2'b01) || ({L[1],L[4]} == 2'b10))) || (L[5] && ((!L[9] && ((!L[2] && (({L[0],L[1],L[3],L[4],L[8],L[10]} == 6'b101101) || (L[8] && ((!L[10] && ((!L[4] && (({L[0],L[3]} == 2'b00) || L[3])) || ({L[0],L[1],L[3],L[4]} == 4'b0111))) || ({L[0],L[3],L[10]} == 3'b101))))) || ({L[2],L[3],L[4],L[8],L[10]} == 5'b11101))) || (({L[2],L[9],L[10]} == 3'b110) && ((!L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b101))))))) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00010110110);
|
110 |
|
|
|
111 |
|
|
// action: N,Z <= RES:
|
112 |
|
|
assign E_N_Z__RES = (!L[9] && ((({L[2],L[4],L[8],L[10]} == 4'b0010) && (({L[0],L[1],L[3],L[6],L[7]} == 5'b00011) || (L[3] && ((!L[0] && ((({L[1],L[7]} == 2'b01) && (({L[5],L[6]} == 2'b00) || L[6])) || (L[1] && (!L[7] || ({L[5],L[6],L[7]} == 3'b011))))) || (L[0] && (({L[1],L[6],L[7]} == 3'b000) || (L[6] && (({L[1],L[5]} == 2'b00) || (L[5] && (({L[1],L[7]} == 2'b00) || L[7])))))))))) || (L[10] && ((({L[0],L[1],L[2]} == 3'b011) && ((({L[3],L[4],L[8]} == 3'b010) && (({L[6],L[7]} == 2'b00) || L[6])) || (L[3] && ((({L[4],L[8]} == 2'b00) && (({L[6],L[7]} == 2'b00) || L[6])) || (({L[4],L[8]} == 2'b11) && (({L[6],L[7]} == 2'b00) || L[6])))))) || (({L[0],L[1]} == 2'b10) && ((({L[2],L[3],L[4],L[8]} == 4'b0001) && (({L[6],L[7]} == 2'b00) || L[6])) || (L[4] && ((({L[2],L[3],L[8]} == 3'b001) && (({L[6],L[7]} == 2'b00) || L[6])) || (({L[3],L[8]} == 2'b10) && (({L[6],L[7]} == 2'b00) || L[6])))))))))) || (({L[2],L[9],L[10]} == 3'b110) && ((!L[1] && ((({L[0],L[4],L[6],L[7]} == 4'b0011) && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || (L[0] && ((!L[4] && ((({L[3],L[8]} == 2'b00) && (({L[6],L[7]} == 2'b00) || L[6])) || (({L[3],L[8]} == 2'b11) && (({L[6],L[7]} == 2'b00) || L[6])))) || (({L[3],L[4],L[8]} == 3'b011) && (({L[6],L[7]} == 2'b00) || L[6])))))) || (({L[0],L[1],L[3],L[4],L[8]} == 5'b01001) && (({L[6],L[7]} == 2'b00) || L[6]))));
|
113 |
|
|
|
114 |
|
|
// action: N,Z <= SB,RES:
|
115 |
|
|
assign E_N_Z__SB_RES = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00100100010) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00110100110);
|
116 |
|
|
|
117 |
|
|
// action: C <= RES:
|
118 |
|
|
assign E_C__RES = (({L[0],L[1],L[6],L[7]} == 4'b0100) && (({L[2],L[3],L[4],L[8],L[9],L[10]} == 6'b010100) || (L[2] && ((({L[9],L[10]} == 2'b01) && (({L[3],L[4],L[8]} == 3'b010) || (L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))))) || ({L[3],L[4],L[8],L[9],L[10]} == 5'b00110))))) || (L[6] && ((!L[9] && ((({L[2],L[4],L[8],L[10]} == 4'b0010) && (({L[0],L[1],L[3],L[7]} == 4'b0001) || (L[3] && (({L[0],L[1],L[7]} == 3'b010) || (L[0] && (({L[1],L[5],L[7]} == 3'b001) || (L[5] && (({L[1],L[7]} == 2'b00) || L[7])))))))) || (L[10] && ((({L[0],L[1],L[2],L[7]} == 4'b0110) && (({L[3],L[4],L[8]} == 3'b010) || (L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))))) || (({L[0],L[1]} == 2'b10) && ((({L[2],L[3],L[4],L[8]} == 4'b0001) && (({L[5],L[7]} == 2'b01) || L[5])) || (L[4] && ((({L[2],L[3],L[8]} == 3'b001) && (({L[5],L[7]} == 2'b01) || L[5])) || (({L[3],L[8]} == 2'b10) && (({L[5],L[7]} == 2'b01) || L[5])))))))))) || (({L[2],L[9],L[10]} == 3'b110) && ((!L[1] && ((!L[4] && ((({L[0],L[5],L[7]} == 3'b110) && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || (L[7] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))))) || (({L[0],L[3],L[4],L[8]} == 4'b1011) && (({L[5],L[7]} == 2'b01) || L[5])))) || ({L[0],L[1],L[3],L[4],L[7],L[8]} == 6'b010001)))));
|
119 |
|
|
|
120 |
|
|
// action: V <= RES:
|
121 |
|
|
assign E_V__RES = (({L[0],L[5],L[6],L[9]} == 4'b1110) && ((!L[2] && (({L[1],L[3],L[4],L[8],L[10]} == 5'b01101) || (L[8] && ((!L[4] && (({L[1],L[3],L[10]} == 3'b001) || (({L[3],L[10]} == 2'b10) && (({L[1],L[7]} == 2'b00) || L[7])))) || ({L[1],L[3],L[4],L[10]} == 4'b0011))))) || ({L[1],L[2],L[3],L[4],L[8],L[10]} == 6'b011101))) || (({L[0],L[1],L[2],L[5],L[6],L[9],L[10]} == 7'b1011110) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011)));
|
122 |
|
|
|
123 |
|
|
// action: V <= SB[6]:
|
124 |
|
|
assign E_V__SB_6_ = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00100100010) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00110100110);
|
125 |
|
|
|
126 |
|
|
// action: ALU_CF = 0:
|
127 |
|
|
assign A_ALU_CF_0 = (!L[10] && ((({L[2],L[3],L[8],L[9]} == 4'b0001) && (({L[0],L[1],L[4],L[6],L[7]} == 5'b00000) || (L[4] && (({L[0],L[1]} == 2'b00) || L[0])))) || (L[8] && ((!L[9] && ((!L[2] && ((({L[0],L[4],L[5]} == 3'b000) && (({L[1],L[3],L[6],L[7]} == 4'b0000) || (L[3] && (({L[1],L[6]} == 2'b00) || (L[6] && (({L[1],L[7]} == 2'b00) || ({L[1],L[7]} == 2'b11))))))) || (L[0] && (({L[3],L[4]} == 2'b00) || ({L[3],L[4]} == 2'b11))))) || ({L[2],L[4]} == 2'b11))) || (({L[0],L[3],L[9]} == 3'b001) && ((({L[1],L[2]} == 2'b00) && (({L[4],L[6],L[7]} == 3'b000) || L[4])) || ({L[1],L[2],L[4],L[5],L[6],L[7]} == 6'b110011))))))) || (({L[0],L[1],L[2],L[5],L[6],L[7],L[9],L[10]} == 8'b01101101) && (({L[3],L[4],L[8]} == 3'b010) || (L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11)))));
|
128 |
|
|
|
129 |
|
|
// action: ALU_DF = 0:
|
130 |
|
|
assign A_ALU_DF_0 = (!L[9] && ((({L[8],L[10]} == 2'b01) && (({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7]} == 8'b00000000) || (L[6] && (({L[0],L[1],L[2],L[3],L[4],L[5],L[7]} == 7'b0000000) || (L[7] && (({L[0],L[1],L[2],L[3],L[4],L[5]} == 6'b100110) || (L[2] && (({L[0],L[1],L[3],L[4],L[5]} == 5'b10110) || (({L[0],L[1]} == 2'b01) && (({L[3],L[4]} == 2'b01) || ({L[3],L[4]} == 2'b10))))))))))) || (L[8] && ((!L[10] && ((!L[2] && ((({L[0],L[4]} == 2'b00) && ((({L[1],L[3]} == 2'b00) && (({L[5],L[6],L[7]} == 3'b000) || L[6])) || (L[3] && ((!L[5] && (({L[1],L[6]} == 2'b00) || (L[6] && (({L[1],L[7]} == 2'b00) || L[7])))) || (({L[1],L[5]} == 2'b01) && (({L[6],L[7]} == 2'b00) || L[6])))))) || (L[0] && ((!L[1] && (!L[3] || (L[3] && (({L[4],L[5],L[6],L[7]} == 4'b0011) || L[4])))) || (L[1] && (({L[3],L[4]} == 2'b00) || L[4])))))) || ({L[2],L[4]} == 2'b11))) || (({L[6],L[7],L[10]} == 3'b111) && (({L[0],L[1],L[2],L[3],L[4],L[5]} == 6'b100000) || (L[4] && (({L[0],L[1],L[2],L[3],L[5]} == 5'b10000) || ({L[0],L[1],L[2],L[3]} == 4'b0111))))))))) || (({L[9],L[10]} == 2'b10) && ((!L[0] && ((({L[1],L[2],L[3]} == 3'b000) && ((({L[4],L[7]} == 2'b00) && (!L[5] || (L[5] && (!L[8] || ({L[6],L[8]} == 2'b01))))) || L[4])) || (L[2] && ((({L[3],L[4],L[6],L[7]} == 4'b0011) && (({L[1],L[8]} == 2'b00) || ({L[1],L[8]} == 2'b11))) || (L[3] && ((!L[8] && (({L[1],L[4],L[5],L[6],L[7]} == 5'b00110) || L[4])) || ({L[1],L[4],L[6],L[7],L[8]} == 5'b00111))))))) || (L[0] && ((!L[1] && ((!L[2] && (({L[3],L[4],L[8]} == 3'b000) || (L[4] && (!L[8] || ({L[3],L[8]} == 2'b01))))) || (L[2] && ((({L[3],L[5],L[6],L[7]} == 4'b0011) && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))) || (L[3] && (({L[4],L[5],L[6],L[7],L[8]} == 5'b00111) || ({L[4],L[8]} == 2'b10))))))) || (L[1] && (({L[2],L[3],L[4],L[8]} == 4'b0000) || (L[4] && ((!L[8] && (({L[2],L[3]} == 2'b00) || L[3])) || ({L[2],L[3],L[8]} == 3'b001)))))))));
|
131 |
|
|
|
132 |
|
|
// action: ALU_OP = ADC:
|
133 |
|
|
assign A_ALU_OP_ADC = (!L[9] && ((({L[8],L[10]} == 2'b01) && (({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7]} == 8'b00000000) || (L[6] && ((!L[1] && (({L[0],L[2],L[3],L[4],L[5],L[7]} == 6'b000000) || (({L[0],L[3],L[4]} == 3'b111) && (({L[5],L[7]} == 2'b01) || L[5])))) || (({L[0],L[1],L[2],L[7]} == 4'b0111) && (({L[3],L[4]} == 2'b01) || ({L[3],L[4]} == 2'b10))))))) || (L[8] && ((!L[2] && ((!L[10] && ((({L[0],L[4]} == 2'b00) && ((({L[1],L[3]} == 2'b00) && (({L[5],L[6],L[7]} == 3'b000) || L[6])) || (L[3] && ((!L[5] && (({L[1],L[6]} == 2'b00) || (L[6] && (({L[1],L[7]} == 2'b00) || L[7])))) || (({L[1],L[5]} == 2'b01) && (({L[6],L[7]} == 2'b00) || L[6])))))) || (L[0] && ((!L[1] && (!L[3] || (L[3] && ((({L[4],L[6]} == 2'b01) && (({L[5],L[7]} == 2'b01) || L[5])) || L[4])))) || (L[1] && (!L[3] || (L[3] && (({L[4],L[5],L[6],L[7]} == 4'b0111) || L[4])))))))) || (({L[0],L[1],L[3],L[6],L[10]} == 5'b10011) && (({L[5],L[7]} == 2'b01) || L[5])))) || (({L[2],L[4]} == 2'b11) && (!L[10] || ({L[0],L[1],L[3],L[6],L[7],L[10]} == 6'b011111))))))) || (({L[9],L[10]} == 2'b10) && ((!L[0] && ((({L[1],L[2],L[3]} == 3'b000) && ((({L[4],L[7]} == 2'b00) && (!L[5] || (L[5] && (!L[8] || ({L[6],L[8]} == 2'b01))))) || L[4])) || (L[2] && ((({L[3],L[4],L[6],L[7]} == 4'b0011) && (({L[1],L[8]} == 2'b00) || ({L[1],L[8]} == 2'b11))) || (L[3] && ((!L[8] && (({L[1],L[4],L[5],L[6],L[7]} == 5'b00110) || L[4])) || ({L[1],L[4],L[6],L[7],L[8]} == 5'b00111))))))) || (L[0] && ((!L[1] && ((!L[2] && (({L[3],L[4],L[8]} == 3'b000) || (L[4] && (!L[8] || ({L[3],L[8]} == 2'b01))))) || (L[2] && (({L[3],L[4],L[6],L[8]} == 4'b1100) || (L[6] && ((!L[3] && ((({L[4],L[8]} == 2'b00) && (({L[5],L[7]} == 2'b01) || L[5])) || (({L[4],L[8]} == 2'b11) && (({L[5],L[7]} == 2'b01) || L[5])))) || (L[3] && ((({L[4],L[8]} == 2'b01) && (({L[5],L[7]} == 2'b01) || L[5])) || ({L[4],L[8]} == 2'b10))))))))) || (L[1] && (({L[2],L[3],L[4],L[8]} == 4'b0000) || (L[4] && ((!L[8] && (({L[2],L[3]} == 2'b00) || L[3])) || ({L[2],L[3],L[8]} == 3'b001)))))))));
|
134 |
|
|
|
135 |
|
|
// action: SB = 0:
|
136 |
|
|
assign A_SB_0 = (!L[10] && ((({L[2],L[8],L[9]} == 3'b010) && ((!L[3] && ((({L[0],L[1],L[4],L[7]} == 4'b0000) && (({L[5],L[6]} == 2'b00) || L[6])) || ({L[0],L[4]} == 2'b11))) || (({L[0],L[3],L[4]} == 3'b010) && ((!L[5] && (({L[1],L[6]} == 2'b00) || (L[6] && (({L[1],L[7]} == 2'b00) || L[7])))) || (({L[1],L[5]} == 2'b01) && (({L[6],L[7]} == 2'b00) || L[6])))))) || (L[9] && ((!L[0] && (({L[1],L[2],L[3],L[4],L[7]} == 5'b00000) || (L[2] && ((({L[1],L[3]} == 2'b01) && ((!L[8] && (({L[4],L[5],L[6],L[7]} == 4'b0110) || L[4])) || ({L[4],L[5],L[6],L[7],L[8]} == 5'b01101))) || (L[1] && ((!L[3] && ((({L[6],L[7]} == 2'b00) && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))) || (L[6] && (({L[4],L[8]} == 2'b00) || (L[8] && (({L[4],L[7]} == 2'b01) || L[4])))))) || (L[3] && ((({L[4],L[8]} == 2'b01) && (({L[6],L[7]} == 2'b00) || L[6])) || ({L[4],L[8]} == 2'b10))))))))) || (L[0] && ((!L[2] && ((!L[3] && (!L[4] || ({L[4],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b110))) || ({L[2],L[3],L[4],L[8]} == 4'b1110))))))) || (({L[0],L[10]} == 2'b01) && ((!L[9] && ((({L[1],L[2],L[3],L[4],L[7]} == 5'b00000) && (!L[5] || (L[5] && (({L[6],L[8]} == 2'b01) || ({L[6],L[8]} == 2'b10))))) || (L[2] && (({L[1],L[3],L[4],L[5],L[6],L[7],L[8]} == 7'b0101100) || (L[1] && (({L[3],L[4],L[6],L[7],L[8]} == 5'b01110) || (L[3] && (({L[4],L[6],L[7],L[8]} == 4'b0110) || (L[4] && (({L[6],L[7],L[8]} == 3'b000) || (L[6] && (({L[7],L[8]} == 2'b00) || L[7])))))))))))) || ({L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9]} == 9'b000000001)));
|
137 |
|
|
|
138 |
|
|
// action: ALU_B = SB:
|
139 |
|
|
assign A_ALU_B_SB = (!L[0] && ((({L[1],L[2]} == 2'b00) && ((!L[4] && ((!L[7] && ((({L[3],L[5]} == 2'b00) && ((({L[6],L[10]} == 2'b01) && (!L[9] || ({L[8],L[9]} == 2'b01))) || (L[6] && ((!L[9] && (({L[8],L[10]} == 2'b01) || L[8])) || ({L[9],L[10]} == 2'b10))))) || (L[5] && ((!L[9] && (({L[3],L[6],L[8],L[10]} == 4'b0101) || (L[8] && ((!L[10] && (({L[3],L[6]} == 2'b01) || L[3])) || ({L[3],L[6],L[10]} == 3'b001))))) || ({L[3],L[6],L[9],L[10]} == 4'b0110))))) || ({L[3],L[6],L[7],L[8],L[9],L[10]} == 6'b111100))) || ({L[3],L[4],L[9],L[10]} == 4'b0110))) || (L[2] && ((!L[9] && ((({L[3],L[4],L[5],L[6],L[8],L[10]} == 6'b101101) && (({L[1],L[7]} == 2'b00) || ({L[1],L[7]} == 2'b11))) || (L[4] && (({L[1],L[8],L[10]} == 3'b010) || (L[1] && ((({L[8],L[10]} == 2'b01) && (({L[3],L[5],L[6],L[7]} == 4'b0111) || (L[3] && (({L[6],L[7]} == 2'b00) || L[6])))) || (L[8] && (!L[10] || ({L[3],L[5],L[6],L[7],L[10]} == 5'b11111))))))))) || (({L[9],L[10]} == 2'b10) && ((!L[1] && (({L[3],L[4],L[5],L[6],L[7],L[8]} == 6'b001000) || (L[3] && ((!L[8] && (({L[4],L[5],L[6],L[7]} == 4'b0110) || L[4])) || ({L[4],L[5],L[7],L[8]} == 4'b0101))))) || (L[1] && ((!L[3] && ((({L[6],L[7]} == 2'b00) && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))) || (L[6] && (({L[4],L[8]} == 2'b00) || (L[8] && (({L[4],L[5],L[7]} == 3'b011) || L[4])))))) || (L[3] && ((({L[4],L[8]} == 2'b01) && (({L[6],L[7]} == 2'b00) || L[6])) || ({L[4],L[8]} == 2'b10))))))))))) || (L[0] && ((!L[10] && ((({L[8],L[9]} == 2'b01) && ((!L[3] && (!L[2] || ({L[1],L[2],L[4],L[7]} == 4'b0100))) || ({L[3],L[4]} == 2'b11))) || (L[8] && ((!L[1] && ((!L[2] && ((!L[9] && (!L[3] || (L[3] && (({L[4],L[7]} == 2'b00) || L[4])))) || ({L[3],L[9]} == 2'b01))) || (L[2] && (({L[3],L[4],L[7],L[9]} == 4'b1001) || (L[4] && (!L[9] || ({L[3],L[7],L[9]} == 3'b001))))))) || (L[1] && ((!L[3] && (({L[2],L[4]} == 2'b00) || (L[4] && (!L[9] || ({L[2],L[9]} == 2'b01))))) || ({L[3],L[4],L[9]} == 3'b110))))))) || (({L[1],L[7],L[9],L[10]} == 4'b0001) && (({L[2],L[3],L[4],L[8]} == 4'b0001) || (L[4] && (({L[2],L[3],L[8]} == 3'b001) || ({L[3],L[8]} == 2'b10)))))));
|
140 |
|
|
|
141 |
|
|
// action: ALU_CF = 1:
|
142 |
|
|
assign A_ALU_CF_1 = (!L[2] && ((!L[1] && ((!L[9] && ((!L[5] && ((!L[3] && (({L[0],L[4],L[7],L[8],L[10]} == 5'b00001) || (L[8] && (({L[0],L[4],L[6],L[10]} == 4'b0010) || (L[0] && (({L[4],L[6],L[7],L[10]} == 4'b0111) || (L[4] && (!L[10] || ({L[6],L[7],L[10]} == 3'b111))))))))) || (({L[3],L[6],L[7]} == 3'b111) && (({L[0],L[4],L[8],L[10]} == 4'b0010) || (L[0] && (({L[4],L[8],L[10]} == 3'b010) || ({L[4],L[8],L[10]} == 3'b101))))))) || (({L[5],L[8],L[10]} == 3'b110) && ((!L[3] && (({L[0],L[4],L[6]} == 3'b001) || ({L[0],L[4]} == 2'b11))) || (({L[0],L[3],L[4]} == 3'b010) && (({L[6],L[7]} == 2'b00) || L[6])))))) || (({L[3],L[4],L[9],L[10]} == 4'b0010) && ((!L[8] && (({L[0],L[6],L[7]} == 3'b010) || L[0])) || ({L[0],L[5],L[6],L[7],L[8]} == 5'b00101))))) || (({L[0],L[1],L[3],L[10]} == 4'b1100) && (({L[4],L[8],L[9]} == 3'b001) || ({L[4],L[8],L[9]} == 3'b110))))) || (({L[2],L[6]} == 2'b11) && (({L[0],L[1],L[3],L[4],L[5],L[7],L[8],L[9],L[10]} == 9'b001010010) || (L[7] && ((!L[1] && (({L[0],L[3],L[4],L[5],L[8],L[9],L[10]} == 7'b1110001) || (({L[9],L[10]} == 2'b10) && ((!L[4] && ((({L[3],L[8]} == 2'b00) && (!L[5] || ({L[0],L[5]} == 2'b01))) || (({L[3],L[8]} == 2'b11) && (!L[5] || ({L[0],L[5]} == 2'b01))))) || ({L[0],L[3],L[4],L[5],L[8]} == 5'b10101))))) || (({L[0],L[1],L[5]} == 3'b011) && ((({L[9],L[10]} == 2'b01) && (({L[3],L[4],L[8]} == 3'b010) || (L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))))) || ({L[3],L[4],L[8],L[9],L[10]} == 5'b00110)))))));
|
143 |
|
|
|
144 |
|
|
// action: ALU_CF = ALUC:
|
145 |
|
|
assign A_ALU_CF_ALUC = ({L[0],L[2],L[3],L[4],L[8],L[9],L[10]} == 7'b0111010) || (({L[0],L[4],L[9],L[10]} == 4'b1110) && ((!L[2] && (({L[3],L[8]} == 2'b01) || ({L[3],L[8]} == 2'b10))) || ({L[2],L[3],L[8]} == 3'b110)));
|
146 |
|
|
|
147 |
|
|
// action: ALU_B = NOT SB:
|
148 |
|
|
assign A_ALU_B_NOTSB = (({L[0],L[1],L[2],L[4],L[6],L[10]} == 6'b000000) && ((!L[7] && ((!L[5] && (({L[3],L[8],L[9]} == 3'b001) || (L[8] && (!L[9] || ({L[3],L[9]} == 2'b01))))) || ({L[3],L[5],L[9]} == 3'b011))) || ({L[3],L[5],L[7],L[8],L[9]} == 5'b10110))) || (L[6] && (({L[0],L[1],L[2],L[3],L[4],L[5],L[7],L[8],L[9],L[10]} == 10'b0001000100) || (L[7] && ((!L[9] && ((({L[2],L[4],L[8],L[10]} == 4'b0010) && (({L[0],L[1],L[3]} == 3'b000) || (L[3] && (({L[0],L[1],L[5]} == 3'b010) || (L[0] && (({L[1],L[5]} == 2'b00) || L[5])))))) || (L[10] && ((({L[0],L[1],L[2],L[5]} == 4'b0110) && (({L[3],L[4],L[8]} == 3'b010) || (L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))))) || (({L[0],L[1]} == 2'b10) && (({L[2],L[3],L[4],L[8]} == 4'b0001) || (L[4] && (({L[2],L[3],L[8]} == 3'b001) || ({L[3],L[8]} == 2'b10))))))))) || (({L[2],L[9],L[10]} == 3'b110) && ((!L[1] && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[0],L[3],L[4],L[8]} == 4'b1011))) || ({L[0],L[1],L[3],L[4],L[5],L[8]} == 6'b010001)))))));
|
149 |
|
|
|
150 |
|
|
// action: ALU_OP = ORA:
|
151 |
|
|
assign A_ALU_OP_ORA = (!L[0] && ((({L[1],L[2],L[3],L[4],L[7]} == 5'b00000) && (({L[5],L[6],L[8],L[9],L[10]} == 5'b11110) || (L[10] && ((!L[9] && (({L[5],L[6],L[8]} == 3'b110) || (L[8] && (!L[6] || ({L[5],L[6]} == 2'b01))))) || ({L[5],L[6],L[8],L[9]} == 4'b0001))))) || (L[2] && ((({L[1],L[3],L[4],L[5],L[6],L[7]} == 6'b010110) && (({L[8],L[9],L[10]} == 3'b001) || ({L[8],L[9],L[10]} == 3'b110))) || (L[1] && ((({L[3],L[4],L[8],L[9],L[10]} == 5'b11001) && (({L[6],L[7]} == 2'b00) || L[6])) || (({L[9],L[10]} == 2'b10) && ((!L[4] && ((({L[3],L[8]} == 2'b00) && (({L[6],L[7]} == 2'b00) || L[6])) || (({L[3],L[8]} == 2'b11) && (({L[6],L[7]} == 2'b00) || L[6])))) || (({L[3],L[4],L[8]} == 3'b011) && (({L[6],L[7]} == 2'b00) || L[6])))))))))) || (L[0] && ((!L[5] && ((!L[6] && ((!L[7] && ((!L[10] && ((!L[4] && (({L[1],L[2],L[3],L[8],L[9]} == 5'b01001) || (L[8] && ((!L[2] && (({L[1],L[3],L[9]} == 3'b010) || ({L[3],L[9]} == 2'b01))) || ({L[1],L[2],L[3],L[9]} == 4'b0111))))) || ({L[1],L[2],L[3],L[4],L[8],L[9]} == 6'b010111))) || (({L[1],L[9],L[10]} == 3'b001) && (({L[2],L[3],L[4],L[8]} == 4'b0001) || (L[4] && (({L[2],L[3],L[8]} == 3'b001) || ({L[3],L[8]} == 2'b10))))))) || ({L[2],L[3],L[4],L[7],L[8],L[9],L[10]} == 7'b0001110))) || ({L[2],L[3],L[4],L[6],L[8],L[9],L[10]} == 7'b0001110))) || ({L[2],L[3],L[4],L[5],L[8],L[9],L[10]} == 7'b0001110)));
|
152 |
|
|
|
153 |
|
|
// action: ALU_A = DB:
|
154 |
|
|
assign A_ALU_A_DB = (!L[10] && ((({L[8],L[9]} == 2'b01) && ((({L[0],L[1],L[2],L[3],L[4]} == 5'b01100) && (({L[6],L[7]} == 2'b00) || L[6])) || (L[4] && (({L[0],L[2],L[3]} == 3'b011) || (L[0] && (!L[2] || ({L[2],L[3]} == 2'b11))))))) || (L[8] && ((!L[0] && (({L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[9]} == 8'b00001101) || (L[2] && ((({L[3],L[4],L[9]} == 3'b101) && (({L[1],L[5],L[6],L[7]} == 4'b0110) || (L[1] && (({L[6],L[7]} == 2'b00) || L[6])))) || (L[4] && (!L[9] || (({L[1],L[3],L[9]} == 3'b101) && (({L[6],L[7]} == 2'b00) || L[6])))))))) || (L[0] && ((!L[2] && (!L[3] || ({L[3],L[4],L[9]} == 3'b110))) || ({L[2],L[4],L[9]} == 3'b110))))))) || (({L[0],L[10]} == 2'b01) && ((!L[9] && ((!L[7] && ((({L[1],L[4]} == 2'b00) && ((({L[2],L[3]} == 2'b00) && (({L[5],L[6],L[8]} == 3'b110) || (L[8] && (!L[6] || ({L[5],L[6]} == 2'b01))))) || ({L[2],L[3],L[5],L[6],L[8]} == 5'b11110))) || ({L[1],L[2],L[3],L[4],L[8]} == 5'b11110))) || ({L[1],L[2],L[3],L[4],L[6],L[7],L[8]} == 7'b1111110))) || ({L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9]} == 9'b000000001)));
|
155 |
|
|
|
156 |
|
|
// action: SB = X:
|
157 |
|
|
assign A_SB_X = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b01100001010) || (({L[8],L[10]} == 2'b10) && ((!L[9] && ((!L[2] && ((!L[4] && (({L[0],L[1],L[3],L[5],L[6],L[7]} == 6'b011001) || ({L[0],L[3]} == 2'b10))) || ({L[0],L[1],L[3],L[4],L[5],L[6],L[7]} == 7'b0111001))) || (({L[2],L[4]} == 2'b11) && ((!L[0] && (!L[1] || (L[1] && (({L[6],L[7]} == 2'b00) || L[6])))) || (L[0] && (!L[1] || (L[1] && (({L[6],L[7]} == 2'b00) || L[6])))))))) || (({L[0],L[1],L[2],L[5],L[6],L[7],L[9]} == 7'b0110011) && (({L[3],L[4]} == 2'b01) || ({L[3],L[4]} == 2'b10)))));
|
158 |
|
|
|
159 |
|
|
// action: ALU_A = EAL:
|
160 |
|
|
assign A_ALU_A_EAL = (({L[0],L[1],L[2],L[3],L[8]} == 5'b00000) && (({L[4],L[5],L[6],L[7],L[9],L[10]} == 6'b000001) || ({L[4],L[9],L[10]} == 3'b110))) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00110110010);
|
161 |
|
|
|
162 |
|
|
// action: SB = PCL:
|
163 |
|
|
assign A_SB_PCL = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000100001) || ({L[0],L[1],L[2],L[3],L[4],L[8],L[9],L[10]} == 8'b00001010);
|
164 |
|
|
|
165 |
|
|
// action: SB = Y:
|
166 |
|
|
assign A_SB_Y = (({L[0],L[1],L[2],L[4],L[5],L[6],L[7],L[9],L[10]} == 9'b001000110) && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || (({L[4],L[10]} == 2'b10) && (({L[0],L[2],L[3],L[8],L[9]} == 5'b10001) || (L[8] && ((!L[9] && (({L[1],L[2],L[3],L[6],L[7]} == 5'b11001) || (L[3] && ((!L[2] && (({L[0],L[1],L[5],L[6],L[7]} == 5'b00001) || L[0])) || ({L[1],L[2],L[6],L[7]} == 4'b1101))))) || ({L[0],L[1],L[2],L[3],L[5],L[6],L[7],L[9]} == 8'b00100011)))));
|
167 |
|
|
|
168 |
|
|
// action: ALU_A = ALU:
|
169 |
|
|
assign A_ALU_A_ALU = (!L[3] && ((!L[4] && (({L[0],L[1],L[2],L[5],L[6],L[7],L[8],L[9],L[10]} == 9'b000010001) || (({L[9],L[10]} == 2'b10) && ((!L[2] && ((!L[8] && ((({L[0],L[1],L[7]} == 3'b000) && (({L[5],L[6]} == 2'b00) || L[6])) || L[0])) || (({L[0],L[1],L[7],L[8]} == 4'b0001) && (!L[6] || ({L[5],L[6]} == 2'b01))))) || (({L[0],L[1],L[2],L[8]} == 4'b0111) && (({L[6],L[7]} == 2'b00) || L[6])))))) || (({L[0],L[1],L[2],L[4],L[8],L[9],L[10]} == 7'b0111001) && (({L[6],L[7]} == 2'b00) || L[6])))) || (({L[0],L[1],L[2],L[3],L[9],L[10]} == 6'b011101) && ((({L[4],L[8]} == 2'b00) && (({L[6],L[7]} == 2'b00) || L[6])) || (({L[4],L[8]} == 2'b11) && (({L[6],L[7]} == 2'b00) || L[6]))));
|
170 |
|
|
|
171 |
|
|
// action: ALU_A = S:
|
172 |
|
|
assign A_ALU_A_S = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000100010) || (({L[0],L[1],L[2],L[4],L[7],L[8],L[9],L[10]} == 8'b00000100) && ((!L[3] && (({L[5],L[6]} == 2'b00) || L[6])) || L[3]));
|
173 |
|
|
|
174 |
|
|
// action: CF <= IR[5]:
|
175 |
|
|
assign E_CF__IR_5_ = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00011000010) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00011100010);
|
176 |
|
|
|
177 |
|
|
// action: IF <= IR[5]:
|
178 |
|
|
assign E_IF__IR_5_ = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00011010010) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00011110010);
|
179 |
|
|
|
180 |
|
|
// action: DF <= IR[5]:
|
181 |
|
|
assign E_DF__IR_5_ = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00011011010) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00011111010);
|
182 |
|
|
|
183 |
|
|
// action: VF <= 0:
|
184 |
|
|
assign E_VF__0 = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00011101010);
|
185 |
|
|
|
186 |
|
|
// action: T <= 0 IF NF != IR[5]:
|
187 |
|
|
assign E_T__0IFNF__IR_5_ = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00001000100) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00001100100);
|
188 |
|
|
|
189 |
|
|
// action: T <= 0 IF VF != IR[5]:
|
190 |
|
|
assign E_T__0IFVF__IR_5_ = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00001010100) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00001110100);
|
191 |
|
|
|
192 |
|
|
// action: T <= 0 IF CF != IR[5]:
|
193 |
|
|
assign E_T__0IFCF__IR_5_ = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00001001100) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00001101100);
|
194 |
|
|
|
195 |
|
|
// action: T <= 0 IF ZF == IR[5]:
|
196 |
|
|
assign E_T__0IFZF__IR_5_ = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00001011100) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00001111100);
|
197 |
|
|
|
198 |
|
|
// action: EA <= DB:
|
199 |
|
|
assign E_EA__DB = ({L[0],L[2],L[3],L[8],L[9],L[10]} == 6'b010100) || ({L[0],L[3],L[8],L[9],L[10]} == 5'b10100);
|
200 |
|
|
|
201 |
|
|
// action: EAL <= DB:
|
202 |
|
|
assign E_EAL__DB = (({L[0],L[1],L[2],L[3],L[8],L[9],L[10]} == 7'b0000100) && (({L[4],L[5],L[6],L[7]} == 4'b0100) || L[4])) || (({L[3],L[8],L[9],L[10]} == 4'b1100) && (({L[0],L[2],L[4]} == 3'b101) || L[2]));
|
203 |
|
|
|
204 |
|
|
// action: PCL <= RES:
|
205 |
|
|
assign E_PCL__RES = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000110110) || ({L[0],L[1],L[2],L[3],L[4],L[8],L[9],L[10]} == 8'b00001010);
|
206 |
|
|
|
207 |
|
|
// action: T <= 0 IF_C7F:
|
208 |
|
|
assign E_T__0IF_C7F = ({L[0],L[1],L[2],L[3],L[4],L[5],L[8],L[9],L[10]} == 9'b000010010) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[8],L[9],L[10]} == 9'b000011010);
|
209 |
|
|
|
210 |
|
|
// action: ALU_A = SIGN:
|
211 |
|
|
assign A_ALU_A_SIGN = ({L[0],L[1],L[2],L[3],L[4],L[5],L[8],L[9],L[10]} == 9'b000010110) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[8],L[9],L[10]} == 9'b000011110);
|
212 |
|
|
|
213 |
|
|
// action: SB = PCH:
|
214 |
|
|
assign A_SB_PCH = ({L[0],L[1],L[2],L[3],L[4],L[5],L[8],L[9],L[10]} == 9'b000010110) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[8],L[9],L[10]} == 9'b000011110);
|
215 |
|
|
|
216 |
|
|
// action: PCH <= RES:
|
217 |
|
|
assign E_PCH__RES = (({L[0],L[1],L[2],L[3]} == 4'b0000) && ((!L[7] && (({L[4],L[8],L[9],L[10]} == 4'b1110) || (({L[4],L[10]} == 2'b01) && ((!L[9] && (({L[5],L[6],L[8]} == 3'b011) || (L[5] && (({L[6],L[8]} == 2'b01) || ({L[6],L[8]} == 2'b10))))) || ({L[5],L[6],L[8],L[9]} == 4'b0001))))) || ({L[4],L[7],L[8],L[9],L[10]} == 5'b11110))) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00110110001);
|
218 |
|
|
|
219 |
|
|
// action: EAH <= DB:
|
220 |
|
|
assign E_EAH__DB = (!L[8] && (({L[0],L[2],L[3],L[4],L[9],L[10]} == 6'b100001) || (({L[3],L[9],L[10]} == 3'b110) && (({L[0],L[2],L[4]} == 3'b101) || L[2])))) || ({L[0],L[2],L[3],L[4],L[8],L[9],L[10]} == 7'b1001110);
|
221 |
|
|
|
222 |
|
|
// action: EAL <= ALU:
|
223 |
|
|
assign E_EAL__ALU = (({L[2],L[3],L[4],L[9],L[10]} == 5'b00001) && (({L[0],L[1],L[5],L[6],L[7],L[8]} == 6'b000001) || ({L[0],L[8]} == 2'b10))) || (({L[9],L[10]} == 2'b10) && ((({L[0],L[2]} == 2'b01) && (({L[1],L[3],L[4],L[5],L[6],L[7],L[8]} == 7'b0101101) || ({L[4],L[8]} == 2'b10))) || (L[0] && ((!L[2] && (!L[3] || ({L[3],L[4],L[8]} == 3'b110))) || ({L[2],L[4],L[8]} == 3'b110)))));
|
224 |
|
|
|
225 |
|
|
// action: T <= T + 1 IF_ALUCZ:
|
226 |
|
|
assign E_T__T_1IF_ALUCZ = (({L[0],L[2],L[3],L[4],L[8],L[9],L[10]} == 7'b0111010) && ((({L[1],L[5]} == 2'b00) && (({L[6],L[7]} == 2'b00) || L[6])) || (L[5] && ((!L[6] && (({L[1],L[7]} == 2'b00) || L[7])) || ({L[1],L[6]} == 2'b01))))) || (({L[0],L[4],L[9],L[10]} == 4'b1110) && ((!L[2] && ((({L[3],L[8]} == 2'b01) && (({L[1],L[7]} == 2'b00) || (L[7] && (({L[5],L[6]} == 2'b01) || L[5])))) || (({L[3],L[8]} == 2'b10) && (({L[1],L[7]} == 2'b00) || (L[7] && (({L[5],L[6]} == 2'b01) || L[5])))))) || (({L[2],L[3],L[8]} == 3'b110) && ((({L[1],L[5]} == 2'b00) && (({L[6],L[7]} == 2'b00) || L[6])) || (L[5] && (({L[1],L[7]} == 2'b00) || L[7]))))));
|
227 |
|
|
|
228 |
|
|
// action: EAH <= ALU:
|
229 |
|
|
assign E_EAH__ALU = ({L[0],L[2],L[3],L[4],L[8],L[9],L[10]} == 7'b0111110) || (({L[0],L[4]} == 2'b11) && ((!L[2] && (({L[3],L[8],L[9],L[10]} == 4'b0001) || ({L[3],L[8],L[9],L[10]} == 4'b1110))) || ({L[2],L[3],L[8],L[9],L[10]} == 5'b11110)));
|
230 |
|
|
|
231 |
|
|
// action: PCL <= ALU:
|
232 |
|
|
assign E_PCL__ALU = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000000011) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00110110001);
|
233 |
|
|
|
234 |
|
|
// action: SB = DB:
|
235 |
|
|
assign A_SB_DB = (!L[1] && ((!L[9] && ((!L[2] && ((({L[0],L[3],L[4],L[7],L[8],L[10]} == 6'b000110) && (({L[5],L[6]} == 2'b01) || L[5])) || (L[0] && ((({L[3],L[4],L[8],L[10]} == 4'b1101) && ((!L[5] && (({L[6],L[7]} == 2'b00) || L[6])) || L[5])) || (L[8] && ((!L[4] && ((({L[3],L[10]} == 2'b01) && ((!L[5] && (({L[6],L[7]} == 2'b00) || L[6])) || L[5])) || (({L[3],L[10]} == 2'b10) && ((!L[5] && (({L[6],L[7]} == 2'b00) || L[6])) || L[5])))) || (({L[3],L[4],L[10]} == 3'b011) && ((!L[5] && (({L[6],L[7]} == 2'b00) || L[6])) || L[5])))))))) || (({L[2],L[3],L[4],L[8],L[10]} == 5'b11101) && (({L[0],L[5],L[6],L[7]} == 4'b0101) || (L[0] && ((!L[5] && (({L[6],L[7]} == 2'b00) || L[6])) || L[5])))))) || (({L[9],L[10]} == 2'b10) && (({L[0],L[2],L[3],L[4],L[5],L[7],L[8]} == 7'b0010101) || (L[2] && ((!L[3] && ((({L[4],L[8]} == 2'b00) && ((!L[0] && (({L[5],L[6],L[7]} == 3'b011) || (L[5] && (({L[6],L[7]} == 2'b00) || L[7])))) || (L[0] && ((!L[5] && (({L[6],L[7]} == 2'b00) || L[6])) || L[5])))) || (({L[4],L[8]} == 2'b11) && (({L[0],L[5],L[6],L[7]} == 4'b0101) || (L[0] && ((!L[5] && (({L[6],L[7]} == 2'b00) || L[6])) || L[5])))))) || (({L[3],L[4],L[8]} == 3'b101) && ((!L[0] && (({L[5],L[6],L[7]} == 3'b011) || (L[5] && (({L[6],L[7]} == 2'b00) || L[7])))) || (L[0] && ((!L[5] && (({L[6],L[7]} == 2'b00) || L[6])) || L[5])))))))))) || (({L[1],L[5],L[7]} == 3'b111) && ((!L[6] && ((({L[2],L[8],L[9]} == 3'b010) && (({L[0],L[3],L[4],L[10]} == 4'b0000) || (L[0] && ((!L[4] && (({L[3],L[10]} == 2'b01) || ({L[3],L[10]} == 2'b10))) || ({L[3],L[4],L[10]} == 3'b011))))) || (L[2] && (({L[3],L[4],L[8],L[9],L[10]} == 5'b11001) || (({L[9],L[10]} == 2'b10) && ((!L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b101))))))) || ({L[0],L[2],L[3],L[4],L[6],L[8],L[9],L[10]} == 8'b10101100)));
|
236 |
|
|
|
237 |
|
|
// action: AC <= SB:
|
238 |
|
|
assign E_AC__SB = (({L[6],L[7]} == 2'b01) && ((({L[0],L[2],L[3],L[5],L[8],L[9],L[10]} == 7'b0010100) && (({L[1],L[4]} == 2'b01) || ({L[1],L[4]} == 2'b10))) || (({L[0],L[5]} == 2'b11) && ((!L[9] && ((!L[2] && (({L[1],L[3],L[4],L[8],L[10]} == 5'b01101) || (L[8] && ((!L[4] && (({L[3],L[10]} == 2'b01) || ({L[3],L[10]} == 2'b10))) || ({L[3],L[4],L[10]} == 3'b011))))) || ({L[2],L[3],L[4],L[8],L[10]} == 5'b11101))) || (({L[2],L[9],L[10]} == 3'b110) && ((!L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b101))))))) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00010110110);
|
239 |
|
|
|
240 |
|
|
// action: ALU_A = AC:
|
241 |
|
|
assign A_ALU_A_AC = (!L[1] && ((({L[0],L[2],L[4],L[5],L[6],L[7],L[9],L[10]} == 8'b01010010) && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || (L[0] && ((!L[9] && ((({L[2],L[3],L[4],L[8],L[10]} == 5'b01010) && (({L[6],L[7]} == 2'b00) || L[6])) || (L[10] && ((({L[2],L[3],L[4],L[8]} == 4'b0001) && (({L[6],L[7]} == 2'b00) || L[6])) || (L[4] && ((({L[2],L[3],L[8]} == 3'b001) && (({L[6],L[7]} == 2'b00) || L[6])) || (({L[3],L[8]} == 2'b10) && (({L[6],L[7]} == 2'b00) || L[6])))))))) || (({L[2],L[9],L[10]} == 3'b110) && ((!L[4] && ((({L[3],L[8]} == 2'b00) && (({L[6],L[7]} == 2'b00) || L[6])) || (({L[3],L[8]} == 2'b11) && (({L[6],L[7]} == 2'b00) || L[6])))) || (({L[3],L[4],L[8]} == 3'b011) && (({L[6],L[7]} == 2'b00) || L[6])))))))) || (({L[1],L[2],L[3],L[4],L[8],L[9],L[10]} == 7'b1010100) && (({L[0],L[7]} == 2'b00) || ({L[0],L[5],L[6],L[7]} == 4'b1111)));
|
242 |
|
|
|
243 |
|
|
// action: AC <= RES:
|
244 |
|
|
assign E_AC__RES = ({L[0],L[1],L[2],L[3],L[4],L[7],L[8],L[9],L[10]} == 9'b010100100) || (L[0] && ((!L[9] && ((!L[2] && ((({L[1],L[3],L[4],L[8],L[10]} == 5'b01101) && (!L[7] || ({L[5],L[6],L[7]} == 3'b111))) || (L[8] && ((!L[4] && ((({L[1],L[3],L[10]} == 3'b001) && (!L[7] || ({L[5],L[6],L[7]} == 3'b111))) || (({L[3],L[10]} == 2'b10) && (({L[1],L[5],L[7]} == 3'b000) || (L[5] && (({L[1],L[6],L[7]} == 3'b000) || (L[6] && (({L[1],L[7]} == 2'b00) || L[7])))))))) || (({L[1],L[3],L[4],L[10]} == 4'b0011) && (!L[7] || ({L[5],L[6],L[7]} == 3'b111))))))) || (({L[1],L[2],L[3],L[4],L[8],L[10]} == 6'b011101) && (!L[7] || ({L[5],L[6],L[7]} == 3'b111))))) || (({L[1],L[2],L[9],L[10]} == 4'b0110) && ((!L[4] && ((!L[7] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || (({L[5],L[6],L[7]} == 3'b111) && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))))) || (({L[3],L[4],L[8]} == 3'b011) && (!L[7] || ({L[5],L[6],L[7]} == 3'b111)))))));
|
245 |
|
|
|
246 |
|
|
// action: ALU_OP = AND:
|
247 |
|
|
assign A_ALU_OP_AND = (({L[0],L[1],L[2],L[4],L[5],L[6],L[7],L[9],L[10]} == 9'b001010010) && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || (({L[0],L[1],L[5],L[6],L[7]} == 5'b10100) && ((!L[9] && (({L[2],L[3],L[4],L[8],L[10]} == 5'b01010) || (L[10] && (({L[2],L[3],L[4],L[8]} == 4'b0001) || (L[4] && (({L[2],L[3],L[8]} == 3'b001) || ({L[3],L[8]} == 2'b10))))))) || (({L[2],L[9],L[10]} == 3'b110) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011)))));
|
248 |
|
|
|
249 |
|
|
// action: ALU_OP = EOR:
|
250 |
|
|
assign A_ALU_OP_EOR = (({L[0],L[1],L[5],L[6],L[7],L[9]} == 6'b100100) && (({L[2],L[3],L[4],L[8],L[10]} == 5'b01010) || (L[10] && (({L[2],L[3],L[4],L[8]} == 4'b0001) || (L[4] && (({L[2],L[3],L[8]} == 3'b001) || ({L[3],L[8]} == 2'b10))))))) || (({L[0],L[1],L[2],L[5],L[6],L[7],L[9],L[10]} == 8'b10101010) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011)));
|
251 |
|
|
|
252 |
|
|
// action: ALU_A = X:
|
253 |
|
|
assign A_ALU_A_X = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b01010011100) || (({L[0],L[1],L[4],L[5],L[6],L[7],L[10]} == 7'b0001110) && (({L[2],L[3],L[8],L[9]} == 4'b1001) || (L[8] && (({L[2],L[3],L[9]} == 3'b000) || (L[3] && (({L[2],L[9]} == 2'b00) || ({L[2],L[9]} == 2'b11)))))));
|
254 |
|
|
|
255 |
|
|
// action: ALU_A = Y:
|
256 |
|
|
assign A_ALU_A_Y = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00010001100) || (({L[0],L[1],L[4],L[5],L[6],L[7],L[10]} == 7'b0000110) && (({L[2],L[3],L[8],L[9]} == 4'b1001) || (L[8] && (({L[2],L[3],L[9]} == 3'b000) || (L[3] && (({L[2],L[9]} == 2'b00) || ({L[2],L[9]} == 2'b11)))))));
|
257 |
|
|
|
258 |
|
|
// action: ALU_DF = D:
|
259 |
|
|
assign A_ALU_DF_D = (({L[0],L[5],L[6],L[9]} == 4'b1110) && ((!L[2] && (({L[1],L[3],L[4],L[8],L[10]} == 5'b01101) || (L[8] && ((!L[4] && (({L[1],L[3],L[10]} == 3'b001) || (({L[3],L[10]} == 2'b10) && (({L[1],L[7]} == 2'b00) || L[7])))) || ({L[1],L[3],L[4],L[10]} == 4'b0011))))) || ({L[1],L[2],L[3],L[4],L[8],L[10]} == 6'b011101))) || (({L[0],L[1],L[2],L[5],L[6],L[9],L[10]} == 7'b1011110) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011)));
|
260 |
|
|
|
261 |
|
|
// action: ALU_CF = C:
|
262 |
|
|
assign A_ALU_CF_C = (({L[0],L[1],L[5],L[6]} == 4'b1011) && ((!L[9] && (({L[2],L[3],L[4],L[8],L[10]} == 5'b01010) || (L[10] && (({L[2],L[3],L[4],L[8]} == 4'b0001) || (L[4] && (({L[2],L[3],L[8]} == 3'b001) || ({L[3],L[8]} == 2'b10))))))) || (({L[2],L[9],L[10]} == 3'b110) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011))))) || (L[1] && ((({L[0],L[7]} == 2'b00) && (({L[2],L[3],L[4],L[8],L[9],L[10]} == 6'b010100) || (L[2] && ((({L[9],L[10]} == 2'b01) && (({L[3],L[4],L[8]} == 3'b010) || (L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))))) || ({L[3],L[4],L[8],L[9],L[10]} == 5'b00110))))) || ({L[0],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 10'b1010111100)));
|
263 |
|
|
|
264 |
|
|
// action: ALU_OP = ASL:
|
265 |
|
|
assign A_ALU_OP_ASL = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b01010000100) || (({L[0],L[1],L[2],L[5],L[6],L[7]} == 6'b011000) && ((({L[9],L[10]} == 2'b01) && (({L[3],L[4],L[8]} == 3'b010) || (L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))))) || ({L[3],L[4],L[8],L[9],L[10]} == 5'b00110)));
|
266 |
|
|
|
267 |
|
|
// action: RW = W:
|
268 |
|
|
assign A_RW_W = (!L[1] && ((!L[6] && ((!L[5] && ((({L[0],L[2],L[4],L[7]} == 4'b0000) && ((!L[8] && (({L[3],L[9],L[10]} == 3'b001) || ({L[9],L[10]} == 2'b10))) || ({L[3],L[8],L[9],L[10]} == 4'b0110))) || (L[7] && ((({L[0],L[2],L[9],L[10]} == 4'b0110) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011))) || (L[0] && ((({L[2],L[9],L[10]} == 3'b001) && (({L[3],L[4],L[8]} == 3'b001) || (L[4] && (({L[3],L[8]} == 2'b01) || ({L[3],L[8]} == 2'b10))))) || (L[2] && (({L[3],L[4],L[8],L[9],L[10]} == 5'b11001) || (({L[9],L[10]} == 2'b10) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011))))))))))) || (({L[0],L[2],L[3],L[4],L[5],L[7]} == 6'b000010) && (({L[8],L[9],L[10]} == 3'b001) || ({L[8],L[9],L[10]} == 3'b110))))) || ({L[0],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 10'b0010010010))) || (({L[0],L[1],L[2]} == 3'b011) && ((({L[9],L[10]} == 2'b01) && ((({L[6],L[7]} == 2'b00) && ((!L[3] && (({L[4],L[8]} == 2'b00) || L[4])) || (L[3] && (({L[4],L[8]} == 2'b00) || L[8])))) || (L[6] && ((!L[3] && (({L[4],L[8]} == 2'b00) || L[4])) || (L[3] && (({L[4],L[8]} == 2'b00) || L[8])))))) || (L[9] && ((!L[10] && ((!L[4] && (({L[3],L[5],L[6],L[7],L[8]} == 5'b00010) || (L[8] && ((!L[5] && ((!L[6] && (({L[3],L[7]} == 2'b00) || ({L[3],L[7]} == 2'b11))) || ({L[3],L[6]} == 2'b01))) || (({L[3],L[5]} == 2'b01) && (({L[6],L[7]} == 2'b00) || L[6])))))) || ({L[3],L[4],L[5],L[6],L[7],L[8]} == 6'b010011))) || (({L[3],L[4],L[8],L[10]} == 4'b1101) && (({L[6],L[7]} == 2'b00) || L[6]))))));
|
269 |
|
|
|
270 |
|
|
// action: SB = ALU:
|
271 |
|
|
assign A_SB_ALU = ({L[0],L[1],L[2],L[3],L[4],L[7],L[8],L[9],L[10]} == 9'b011000110) || (({L[0],L[1],L[2],L[7],L[10]} == 5'b01101) && ((!L[9] && ((!L[3] && (({L[4],L[8]} == 2'b00) || L[4])) || (L[3] && (({L[4],L[8]} == 2'b00) || L[8])))) || ({L[3],L[4],L[8],L[9]} == 4'b1101)));
|
272 |
|
|
|
273 |
|
|
// action: DB <= SB:
|
274 |
|
|
assign E_DB__SB = (!L[1] && ((!L[5] && ((!L[6] && (({L[0],L[2],L[3],L[4],L[7],L[8],L[9],L[10]} == 8'b00100010) || (L[7] && ((({L[0],L[2],L[9],L[10]} == 4'b0110) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011))) || (L[0] && ((({L[2],L[9],L[10]} == 3'b001) && (({L[3],L[4],L[8]} == 3'b001) || (L[4] && (({L[3],L[8]} == 2'b01) || ({L[3],L[8]} == 2'b10))))) || (L[2] && (({L[3],L[4],L[8],L[9],L[10]} == 5'b11001) || (({L[9],L[10]} == 2'b10) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011))))))))))) || ({L[0],L[2],L[3],L[4],L[6],L[7],L[8],L[9],L[10]} == 9'b001010010))) || ({L[0],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 10'b0000100001))) || (({L[0],L[1],L[2]} == 3'b011) && ((!L[7] && (({L[3],L[4],L[8],L[9],L[10]} == 5'b00110) || (L[10] && ((!L[9] && ((!L[3] && (({L[4],L[8]} == 2'b00) || L[4])) || (L[3] && (({L[4],L[8]} == 2'b00) || L[8])))) || ({L[3],L[4],L[8],L[9]} == 4'b1101))))) || (({L[5],L[6],L[7],L[9],L[10]} == 5'b00110) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011)))));
|
275 |
|
|
|
276 |
|
|
// action: ALU_OP = LSR:
|
277 |
|
|
assign A_ALU_OP_LSR = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b01010010100) || (({L[0],L[1],L[2],L[5],L[6],L[7]} == 6'b011010) && ((({L[9],L[10]} == 2'b01) && (({L[3],L[4],L[8]} == 3'b010) || (L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))))) || ({L[3],L[4],L[8],L[9],L[10]} == 5'b00110)));
|
278 |
|
|
|
279 |
|
|
// action: ALU_OP = ROL:
|
280 |
|
|
assign A_ALU_OP_ROL = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b01010100100) || (({L[0],L[1],L[2],L[5],L[6],L[7]} == 6'b011100) && ((({L[9],L[10]} == 2'b01) && (({L[3],L[4],L[8]} == 3'b010) || (L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))))) || ({L[3],L[4],L[8],L[9],L[10]} == 5'b00110)));
|
281 |
|
|
|
282 |
|
|
// action: ALU_OP = ROR:
|
283 |
|
|
assign A_ALU_OP_ROR = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b01010110100) || (({L[0],L[1],L[2],L[5],L[6],L[7]} == 6'b011110) && ((({L[9],L[10]} == 2'b01) && (({L[3],L[4],L[8]} == 3'b010) || (L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))))) || ({L[3],L[4],L[8],L[9],L[10]} == 5'b00110)));
|
284 |
|
|
|
285 |
|
|
// action: SB = AC:
|
286 |
|
|
assign A_SB_AC = (!L[1] && ((!L[5] && (({L[0],L[2],L[3],L[4],L[6],L[7],L[8],L[9],L[10]} == 9'b001010010) || (({L[0],L[6],L[7]} == 3'b101) && ((({L[2],L[9],L[10]} == 3'b001) && (({L[3],L[4],L[8]} == 3'b001) || (L[4] && (({L[3],L[8]} == 2'b01) || ({L[3],L[8]} == 2'b10))))) || (L[2] && (({L[3],L[4],L[8],L[9],L[10]} == 5'b11001) || (({L[9],L[10]} == 2'b10) && ((!L[4] && (({L[3],L[8]} == 2'b00) || ({L[3],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b011))))))))) || ({L[0],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 10'b0010101100))) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b01010101100);
|
287 |
|
|
|
288 |
|
|
// action: X <= SB:
|
289 |
|
|
assign E_X__SB = (({L[1],L[2],L[5],L[6],L[7],L[8],L[9]} == 7'b1010110) && ((!L[10] && (({L[0],L[3],L[4]} == 3'b000) || (L[3] && (!L[4] || ({L[0],L[4]} == 2'b01))))) || ({L[0],L[3],L[10]} == 3'b101))) || (({L[1],L[2],L[5],L[6],L[7]} == 5'b11101) && (({L[3],L[4],L[8],L[9],L[10]} == 5'b11001) || (({L[9],L[10]} == 2'b10) && ((!L[3] && (({L[4],L[8]} == 2'b00) || ({L[4],L[8]} == 2'b11))) || ({L[3],L[4],L[8]} == 3'b101)))));
|
290 |
|
|
|
291 |
|
|
// action: Y <= SB:
|
292 |
|
|
assign E_Y__SB = (({L[0],L[1],L[5],L[6],L[7],L[10]} == 6'b001010) && ((!L[4] && (({L[2],L[3],L[8],L[9]} == 4'b1001) || (L[8] && (({L[2],L[3],L[9]} == 3'b000) || (L[3] && (({L[2],L[9]} == 2'b00) || ({L[2],L[9]} == 2'b11))))))) || ({L[2],L[3],L[4],L[8],L[9]} == 5'b10111))) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00111101001);
|
293 |
|
|
|
294 |
|
|
// action: SB = S:
|
295 |
|
|
assign A_SB_S = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b01011101100);
|
296 |
|
|
|
297 |
|
|
// action: S <= SB:
|
298 |
|
|
assign E_S__SB = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b01011001100);
|
299 |
|
|
|
300 |
|
|
// action: PC <= EA:
|
301 |
|
|
assign E_PC__EA = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00110010110);
|
302 |
|
|
|
303 |
|
|
// action: S <= ALU:
|
304 |
|
|
assign E_S__ALU = (({L[0],L[1],L[2],L[4],L[7],L[8]} == 6'b000000) && ((({L[3],L[9],L[10]} == 3'b001) && (!L[6] || ({L[5],L[6]} == 2'b01))) || (({L[9],L[10]} == 2'b10) && ((!L[3] && (({L[5],L[6]} == 2'b00) || L[6])) || L[3])))) || ({L[0],L[1],L[2],L[3],L[4],L[7],L[8],L[9],L[10]} == 9'b000000110);
|
305 |
|
|
|
306 |
|
|
// action: SB = P:
|
307 |
|
|
assign A_SB_P = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00010000010);
|
308 |
|
|
|
309 |
|
|
// action: P <= SB:
|
310 |
|
|
assign E_P__SB = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00010100110);
|
311 |
|
|
|
312 |
|
|
// action: X <= RES:
|
313 |
|
|
assign E_X__RES = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00010111100) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b01010011100);
|
314 |
|
|
|
315 |
|
|
// action: Y <= RES:
|
316 |
|
|
assign E_Y__RES = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00010001100) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00010011100);
|
317 |
|
|
|
318 |
|
|
// action: DB <= ALU:
|
319 |
|
|
assign E_DB__ALU = ({L[0],L[1],L[2],L[3],L[4],L[6],L[7],L[8],L[9],L[10]} == 10'b0110011110) || (({L[0],L[1],L[2],L[6],L[7],L[10]} == 6'b011111) && ((!L[9] && ((!L[3] && (({L[4],L[8]} == 2'b00) || L[4])) || (L[3] && (({L[4],L[8]} == 2'b00) || L[8])))) || ({L[3],L[4],L[8],L[9]} == 4'b1101)));
|
320 |
|
|
|
321 |
|
|
// action: DB <= PCH:
|
322 |
|
|
assign E_DB__PCH = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000000010) || ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000100110);
|
323 |
|
|
|
324 |
|
|
// action: PCL <= EAL:
|
325 |
|
|
assign E_PCL__EAL = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000100101);
|
326 |
|
|
|
327 |
|
|
// action: DB <= PCL:
|
328 |
|
|
assign E_DB__PCL = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000000110);
|
329 |
|
|
|
330 |
|
|
// action: DB <= P:
|
331 |
|
|
assign E_DB__P = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000000001);
|
332 |
|
|
|
333 |
|
|
// action: P <= DB:
|
334 |
|
|
assign E_P__DB = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000010110);
|
335 |
|
|
|
336 |
|
|
// action: PCL <= DB:
|
337 |
|
|
assign E_PCL__DB = ({L[0],L[1],L[2],L[3],L[4],L[5],L[6],L[7],L[8],L[9],L[10]} == 11'b00000010001);
|