📄 ps2_keyboard_interface.map.eqn
字号:
--D1L03 is div_4:inst2|acc[9]~122
D1L03 = D1_acc[9] & !D1L82 # !D1_acc[9] & (D1L82 # GND);
--D1L13 is div_4:inst2|acc[9]~123
D1L13 = CARRY(!D1L82 # !D1_acc[9]);
--D1L33 is div_4:inst2|acc[10]~124
D1L33 = D1_acc[10] & (D1L13 $ GND) # !D1_acc[10] & !D1L13 & VCC;
--D1L43 is div_4:inst2|acc[10]~125
D1L43 = CARRY(D1_acc[10] & !D1L13);
--D1L63 is div_4:inst2|acc[11]~126
D1L63 = D1_acc[11] & !D1L43 # !D1_acc[11] & (D1L43 # GND);
--D1L73 is div_4:inst2|acc[11]~127
D1L73 = CARRY(!D1L43 # !D1_acc[11]);
--D1L93 is div_4:inst2|acc[12]~128
D1L93 = !D1L73;
--J1L21 is uart_if:inst3|uart:U1|txmit:u2|clkdiv[2]~41
J1L21 = J1_clk1x_enable & J1_clkdiv[1] & J1_clkdiv[0];
--J1L9 is uart_if:inst3|uart:U1|txmit:u2|clkdiv[1]~42
J1L9 = J1_clk1x_enable & J1_clkdiv[0];
--B1L67 is ps2_keyboard_interface:inst|reduce_nor~1
B1L67 = !B1L45 # !B1_q[5];
--B1L02 is ps2_keyboard_interface:inst|hold_released~62
B1L02 = !B1L052 & (B1_hold_released # !B1L67 & !B1_rx_shifting_done);
--B1_timer_5usec_count[1] is ps2_keyboard_interface:inst|timer_5usec_count[1]
B1_timer_5usec_count[1] = DFFEAS(B1L262, C1_clk, , , , , , !B1_m1_state.m1_tx_wait_clk_h, );
--B1_timer_5usec_count[0] is ps2_keyboard_interface:inst|timer_5usec_count[0]
B1_timer_5usec_count[0] = DFFEAS(B1L952, C1_clk, , , , , , !B1_m1_state.m1_tx_wait_clk_h, );
--B1L382 is ps2_keyboard_interface:inst|timer_5usec_done~44
B1L382 = B1_timer_5usec_count[1] # !B1_timer_5usec_count[0];
--B1_timer_5usec_count[2] is ps2_keyboard_interface:inst|timer_5usec_count[2]
B1_timer_5usec_count[2] = DFFEAS(B1L562, C1_clk, , , , , , !B1_m1_state.m1_tx_wait_clk_h, );
--B1_timer_5usec_count[6] is ps2_keyboard_interface:inst|timer_5usec_count[6]
B1_timer_5usec_count[6] = DFFEAS(B1L772, C1_clk, , , , , , !B1_m1_state.m1_tx_wait_clk_h, );
--B1_timer_5usec_count[4] is ps2_keyboard_interface:inst|timer_5usec_count[4]
B1_timer_5usec_count[4] = DFFEAS(B1L172, C1_clk, , , , , , !B1_m1_state.m1_tx_wait_clk_h, );
--B1_timer_5usec_count[5] is ps2_keyboard_interface:inst|timer_5usec_count[5]
B1_timer_5usec_count[5] = DFFEAS(B1L472, C1_clk, , , , , , !B1_m1_state.m1_tx_wait_clk_h, );
--B1_timer_5usec_count[7] is ps2_keyboard_interface:inst|timer_5usec_count[7]
B1_timer_5usec_count[7] = DFFEAS(B1L082, C1_clk, , , , , , !B1_m1_state.m1_tx_wait_clk_h, );
--B1L482 is ps2_keyboard_interface:inst|timer_5usec_done~45
B1L482 = B1_timer_5usec_count[6] # !B1_timer_5usec_count[7] # !B1_timer_5usec_count[5] # !B1_timer_5usec_count[4];
--B1_timer_5usec_count[3] is ps2_keyboard_interface:inst|timer_5usec_count[3]
B1_timer_5usec_count[3] = DFFEAS(B1L862, C1_clk, , , , , , !B1_m1_state.m1_tx_wait_clk_h, );
--B1_timer_5usec_done is ps2_keyboard_interface:inst|timer_5usec_done
B1_timer_5usec_done = B1L382 # B1_timer_5usec_count[2] # B1L482 # !B1_timer_5usec_count[3];
--B1L14 is ps2_keyboard_interface:inst|m1_state~196
B1L14 = reset & B1_ps2_clk_s & B1_m1_state.m1_tx_wait_clk_h & !B1_timer_5usec_done;
--B1L24 is ps2_keyboard_interface:inst|m1_state~197
B1L24 = !B1_ps2_clk_s & !B1_m1_state.m1_rx_clk_h & reset;
--B1_q[10] is ps2_keyboard_interface:inst|q[10]
B1_q[10] = DFFEAS(B1L57, C1_clk, , , B1L46, , , , );
--B1L37 is ps2_keyboard_interface:inst|q~6028
B1L37 = reset & B1_q[10];
--B1_tx_shifting_done is ps2_keyboard_interface:inst|tx_shifting_done
B1_tx_shifting_done = B1_bit_count[0] # B1_bit_count[2] # !B1_bit_count[3] # !B1_bit_count[1];
--B1L34 is ps2_keyboard_interface:inst|m1_state~198
B1L34 = B1_ps2_clk_s & (B1_m1_state.m1_tx_wait_keyboard_ack # B1_m1_state.m1_tx_clk_h & !B1_tx_shifting_done) # !B1_ps2_clk_s & (B1_m1_state.m1_tx_clk_h & !B1_tx_shifting_done);
--B1L782 is ps2_keyboard_interface:inst|timer_60usec_count[0]~232
B1L782 = B1L523 & (B1_timer_60usec_count[0] $ VCC) # !B1L523 & B1_timer_60usec_count[0] & VCC;
--B1L882 is ps2_keyboard_interface:inst|timer_60usec_count[0]~233
B1L882 = CARRY(B1L523 & B1_timer_60usec_count[0]);
--B1L092 is ps2_keyboard_interface:inst|timer_60usec_count[1]~234
B1L092 = B1_timer_60usec_count[1] & !B1L882 # !B1_timer_60usec_count[1] & (B1L882 # GND);
--B1L192 is ps2_keyboard_interface:inst|timer_60usec_count[1]~235
B1L192 = CARRY(!B1L882 # !B1_timer_60usec_count[1]);
--B1_m1_state.m1_rx_clk_l is ps2_keyboard_interface:inst|m1_state.m1_rx_clk_l
B1_m1_state.m1_rx_clk_l = DFFEAS(B1L32, C1_clk, , , , , , !reset, );
--B1L461 is ps2_keyboard_interface:inst|reduce_or~0
B1L461 = !B1_m1_state.m1_rx_clk_l & B1_m1_state.m1_rx_clk_h;
--B1L392 is ps2_keyboard_interface:inst|timer_60usec_count[2]~236
B1L392 = B1_timer_60usec_count[2] & (B1L192 $ GND) # !B1_timer_60usec_count[2] & !B1L192 & VCC;
--B1L492 is ps2_keyboard_interface:inst|timer_60usec_count[2]~237
B1L492 = CARRY(B1_timer_60usec_count[2] & !B1L192);
--B1L692 is ps2_keyboard_interface:inst|timer_60usec_count[3]~238
B1L692 = B1_timer_60usec_count[3] & !B1L492 # !B1_timer_60usec_count[3] & (B1L492 # GND);
--B1L792 is ps2_keyboard_interface:inst|timer_60usec_count[3]~239
B1L792 = CARRY(!B1L492 # !B1_timer_60usec_count[3]);
--B1L992 is ps2_keyboard_interface:inst|timer_60usec_count[4]~240
B1L992 = B1_timer_60usec_count[4] & (B1L792 $ GND) # !B1_timer_60usec_count[4] & !B1L792 & VCC;
--B1L003 is ps2_keyboard_interface:inst|timer_60usec_count[4]~241
B1L003 = CARRY(B1_timer_60usec_count[4] & !B1L792);
--B1L203 is ps2_keyboard_interface:inst|timer_60usec_count[5]~242
B1L203 = B1_timer_60usec_count[5] & !B1L003 # !B1_timer_60usec_count[5] & (B1L003 # GND);
--B1L303 is ps2_keyboard_interface:inst|timer_60usec_count[5]~243
B1L303 = CARRY(!B1L003 # !B1_timer_60usec_count[5]);
--B1L503 is ps2_keyboard_interface:inst|timer_60usec_count[6]~244
B1L503 = B1_timer_60usec_count[6] & (B1L303 $ GND) # !B1_timer_60usec_count[6] & !B1L303 & VCC;
--B1L603 is ps2_keyboard_interface:inst|timer_60usec_count[6]~245
B1L603 = CARRY(B1_timer_60usec_count[6] & !B1L303);
--B1L803 is ps2_keyboard_interface:inst|timer_60usec_count[7]~246
B1L803 = B1_timer_60usec_count[7] & !B1L603 # !B1_timer_60usec_count[7] & (B1L603 # GND);
--B1L903 is ps2_keyboard_interface:inst|timer_60usec_count[7]~247
B1L903 = CARRY(!B1L603 # !B1_timer_60usec_count[7]);
--B1L113 is ps2_keyboard_interface:inst|timer_60usec_count[8]~248
B1L113 = B1_timer_60usec_count[8] & (B1L903 $ GND) # !B1_timer_60usec_count[8] & !B1L903 & VCC;
--B1L213 is ps2_keyboard_interface:inst|timer_60usec_count[8]~249
B1L213 = CARRY(B1_timer_60usec_count[8] & !B1L903);
--B1L413 is ps2_keyboard_interface:inst|timer_60usec_count[9]~250
B1L413 = B1_timer_60usec_count[9] & !B1L213 # !B1_timer_60usec_count[9] & (B1L213 # GND);
--B1L513 is ps2_keyboard_interface:inst|timer_60usec_count[9]~251
B1L513 = CARRY(!B1L213 # !B1_timer_60usec_count[9]);
--B1L713 is ps2_keyboard_interface:inst|timer_60usec_count[10]~252
B1L713 = B1_timer_60usec_count[10] & (B1L513 $ GND) # !B1_timer_60usec_count[10] & !B1L513 & VCC;
--B1L813 is ps2_keyboard_interface:inst|timer_60usec_count[10]~253
B1L813 = CARRY(B1_timer_60usec_count[10] & !B1L513);
--B1L023 is ps2_keyboard_interface:inst|timer_60usec_count[11]~254
B1L023 = B1_timer_60usec_count[11] $ B1L813;
--B1_m1_state.m1_rx_rising_edge_marker is ps2_keyboard_interface:inst|m1_state.m1_rx_rising_edge_marker
B1_m1_state.m1_rx_rising_edge_marker = DFFEAS(B1L64, C1_clk, , , , , , , );
--B1_ps2_data_s is ps2_keyboard_interface:inst|ps2_data_s
B1_ps2_data_s = DFFEAS(A1L5, C1_clk, , , , , , , );
--B1_m1_state.m1_tx_error_no_keyboard_ack is ps2_keyboard_interface:inst|m1_state.m1_tx_error_no_keyboard_ack
B1_m1_state.m1_tx_error_no_keyboard_ack = DFFEAS(B1L72, C1_clk, , , , , , !reset, );
--B1_m1_state.m1_tx_done_recovery is ps2_keyboard_interface:inst|m1_state.m1_tx_done_recovery
B1_m1_state.m1_tx_done_recovery = DFFEAS(B1L62, C1_clk, , , , , , !reset, );
--B1L44 is ps2_keyboard_interface:inst|m1_state~199
B1L44 = B1_ps2_data_s & (B1_m1_state.m1_tx_error_no_keyboard_ack # B1_m1_state.m1_tx_done_recovery) # !B1_m1_state.m1_rx_clk_h;
--B1L54 is ps2_keyboard_interface:inst|m1_state~200
B1L54 = !B1_m1_state.m1_rx_rising_edge_marker & reset & (!B1L44 # !B1_ps2_clk_s);
--B1L47 is ps2_keyboard_interface:inst|q~6029
B1L47 = B1_q[1] & reset;
--B1L42 is ps2_keyboard_interface:inst|m1_next_state.m1_tx_clk_h~47
B1L42 = B1_m1_state.m1_tx_rising_edge_marker # B1_ps2_clk_s & B1_m1_state.m1_tx_clk_h & B1_tx_shifting_done;
--B1L82 is ps2_keyboard_interface:inst|m1_next_state.m1_tx_wait_clk_h~119
B1L82 = B1_ps2_clk_s & (B1_m1_state.m1_tx_clk_l # B1_m1_state.m1_tx_wait_clk_h & B1_timer_5usec_done) # !B1_ps2_clk_s & B1_m1_state.m1_tx_wait_clk_h;
--B1L52 is ps2_keyboard_interface:inst|m1_next_state.m1_tx_clk_l~94
B1L52 = !B1_ps2_clk_s & (B1_m1_state.m1_tx_clk_l # B1_m1_state.m1_tx_clk_h & B1_tx_shifting_done);
--J1_tsr[3] is uart_if:inst3|uart:U1|txmit:u2|tsr[3]
J1_tsr[3] = DFFEAS(J1L46, !J1_clkdiv[3], !B1_rx_released, , J1L65, , , , );
--J1_tbr[2] is uart_if:inst3|uart:U1|txmit:u2|tbr[2]
J1_tbr[2] = DFFEAS(E1_din[2], E1_wrn, !B1_rx_released, , , , , , );
--J1L36 is uart_if:inst3|uart:U1|txmit:u2|tsr~539
J1L36 = J1L03 & J1_tsr[3] # !J1L03 & (J1_tbr[2]);
--E1_din[1] is uart_if:inst3|din[1]
E1_din[1] = DFFEAS(F1L7, E1_cnt[3], !B1_rx_released, , E1L76, , , , );
--F1L3Q is data_buf:inst4|data_in_buf[0]~603
F1L3Q = DFFEAS(F1L2, D1_acc[12], !B1_rx_released, , F1L1, , , , );
--F1L4 is data_buf:inst4|data_in_buf[0]~605
F1L4 = B1_rx_released & (F1L3Q $ F1L2) # !B1_rx_released & B1_rx_ascii[0];
--E1_cnt[3] is uart_if:inst3|cnt[3]
E1_cnt[3] = DFFEAS(E1L41, D1_acc[12], !B1_rx_released, , E1L4, , , , );
--E1_read_en is uart_if:inst3|read_en
E1_read_en = DFFEAS(E1L67, E1_cnt[3], !B1_rx_released, , , , , , );
--E1_read_once is uart_if:inst3|read_once
E1_read_once = DFFEAS(E1L87, E1_cnt[3], , , B1_rx_released, , , E1_read_en, );
--J1_tsre is uart_if:inst3|uart:U1|txmit:u2|tsre
J1_tsre = DFFEAS(J1L95, !J1_clkdiv[3], !B1_rx_released, , !J1_no_bits_sent[1], , , , );
--J1_tbre is uart_if:inst3|uart:U1|txmit:u2|tbre
J1_tbre = DFFEAS(J1L84, D1_acc[12], !B1_rx_released, , , , , , );
--E1L76 is uart_if:inst3|din[6]~63
E1L76 = !E1_read_en & !E1_read_once & !J1_tsre & !J1_tbre;
--B1L952 is ps2_keyboard_interface:inst|timer_5usec_count[0]~156
B1L952 = B1_timer_5usec_done & (B1_timer_5usec_count[0] $ VCC) # !B1_timer_5usec_done & B1_timer_5usec_count[0] & VCC;
--B1L062 is ps2_keyboard_interface:inst|timer_5usec_count[0]~157
B1L062 = CARRY(B1_timer_5usec_done & B1_timer_5usec_count[0]);
--B1L262 is ps2_keyboard_interface:inst|timer_5usec_count[1]~158
B1L262 = B1_timer_5usec_count[1] & !B1L062 # !B1_timer_5usec_count[1] & (B1L062 # GND);
--B1L362 is ps2_keyboard_interface:inst|timer_5usec_count[1]~159
B1L362 = CARRY(!B1L062 # !B1_timer_5usec_count[1]);
--B1L562 is ps2_keyboard_interface:inst|timer_5usec_count[2]~160
B1L562 = B1_timer_5usec_count[2] & (B1L362 $ GND) # !B1_timer_5usec_count[2] & !B1L362 & VCC;
--B1L662 is ps2_keyboard_interface:inst|timer_5usec_count[2]~161
B1L662 = CARRY(B1_timer_5usec_count[2] & !B1L362);
--B1L862 is ps2_keyboard_interface:inst|timer_5usec_count[3]~162
B1L862 = B1_timer_5usec_count[3] & !B1L662 # !B1_timer_5usec_count[3] & (B1L662 # GND);
--B1L962 is ps2_keyboard_interface:inst|timer_5usec_count[3]~163
B1L962 = CARRY(!B1L662 # !B1_timer_5usec_count[3]);
--B1L172 is ps2_keyboard_interface:inst|timer_5usec_count[4]~164
B1L172 = B1_timer_5usec_count[4] & (B1L962 $ GND) # !B1_timer_5usec_count[4] & !B1L962 & VCC;
--B1L272 is ps2_keyboard_interface:inst|timer_5usec_count[4]~165
B1L272 = CARRY(B1_timer_5usec_count[4] & !B1L962);
--B1L472 is ps2_keyboard_interface:inst|timer_5usec_count[5]~166
B1L472 = B1_timer_5usec_count[5] & !B1L272 # !B1_timer_5usec_count[5] & (B1L272 # GND);
--B1L572 is ps2_keyboard_interface:inst|timer_5usec_count[5]~167
B1L572 = CARRY(!B1L272 # !B1_timer_5usec_count[5]);
--B1L772 is ps2_keyboard_interface:inst|timer_5usec_count[6]~168
B1L772 = B1_timer_5usec_count[6] & (B1L572 $ GND) # !B1_timer_5usec_count[6] & !B1L572 & VCC;
--B1L872 is ps2_keyboard_interface:inst|timer_5usec_count[6]~169
B1L872 = CARRY(B1_timer_5usec_count[6] & !B1L572);
--B1L082 is ps2_keyboard_interface:inst|timer_5usec_count[7]~170
B1L082 = B1_timer_5usec_count[7] $ B1L872;
--B1L57 is ps2_keyboard_interface:inst|q~6030
B1L57 = reset & B1_ps2_data_s;
--B1L32 is ps2_keyboard_interface:inst|m1_next_state.m1_rx_clk_l~8
B1L32 = B1_m1_state.m1_rx_falling_edge_marker # B1_m1_state.m1_rx_clk_l & !B1_ps2_clk_s;
--B1L64 is ps2_keyboard_interface:inst|m1_state~201
B1L64 = reset & B1_ps2_clk_s & B1_m1_state.m1_rx_clk_l;
--B1L72 is ps2_keyboard_interface:inst|m1_next_state.m1_tx_error_no_keyboard_ack~52
B1L72 = B1_ps2_data_s & !B1_ps2_clk_s & (B1_m1_state.m1_tx_error_no_keyboard_ack # B1_m1_state.m1_tx_wait_keyboard_ack) # !B1_ps2_data_s & B1_m1_state.m1_tx_error_no_keyboard_ack;
--B1L62 is ps2_keyboard_interface:inst|m1_next_state.m1_tx_done_recovery~62
B1L62 = B1_m1_state.m1_tx_done_recovery & (!B1_ps2_data_s # !B1_ps2_clk_s) # !B1_m1_state.m1_tx_done_recovery & B1_m1_state.m1_tx_wait_keyboard_ack & !B1_ps2_clk_s & !B1_ps2_data_s;
--J1_tsr[4] is uart_if:inst3|uart:U1|txmit:u2|tsr[4]
J1_tsr[4] = DFFEAS(J1L56, !J1_clkdiv[3], !B1_rx_released, , J1L65, , , , );
--J1_tbr[3] is uart_if:inst3|uart:U1|txmit:u2|tbr[3]
J1_tbr[3] = DFFEAS(E1_din[3], E1_wrn, !B1_rx_released, , , , , , );
--J1L46 is uart_if:inst3|uart:U1|txmit:u2|tsr~540
J1L46 = J1L03 & J1_tsr[4] # !J1L03 & (J1_tbr[3]);
--E1_din[2] is uart_if:inst3|din[2]
E1_din[2] = DFFEAS(F1L01, E1_cnt[3], !B1_rx_released, , E1L76, , , , );
--F1L6Q is data_buf:inst4|data_in_buf[1]~606
F1L6Q = DFFEAS(F1L5, D1_acc[12], !B1_rx_released, , F1L1, , , , );
--F1L7 is data_buf:inst4|data_in_buf[1]~608
F1L7 = B1_rx_released & (F1L6Q $ F1L5) # !B1_rx_released & B1_rx_ascii[1];
--F1_i[3] is data_buf:inst4|i[3]
F1_i[3] = DFFEAS(F1L82, D1_acc[12], !B1_rx_released, , , , , , );
--F1_i[2] is data_buf:inst4|i[2]
F1_i[2] = DFFEAS(F1L92, D1_acc[12], !B1_rx_released, , , , , , );
--F1_i[1] is data_buf:inst4|i[1]
F1_i[1] = DFFEAS(F1L03, D1_acc[12], !B1_rx_released, , , , , , );
--F1L1 is data_buf:inst4|LessThan~60
F1L1 = F1_i[3] & F1_i[2] & F1_i[1];
--F1L2 is data_buf:inst4|data_in_buf[0]~41
F1L2 = B1_rx_released & (F1L2) # !B1_rx_released & B1_rx_ascii[0];
--E1_cnt[2] is uart_if:inst3|cnt[2]
E1_cnt[2] = DFFEAS(E1L21, D1_acc[12], !B1_rx_released, , E1L5, , , , );
--E1_cnt[1] is uart_if:inst3|cnt[1]
E1_cnt[1] = DFFEAS(E1L01, D1_acc[12], !B1_rx_released, , E1_cnt[0], , , , );
--E1_cnt[0] is uart_if:inst3|cnt[0]
E1_cnt[0] = DFFEAS(E1L8, D1_acc[12], !B1_rx_released, , , , , , );
--E1L4 is uart_if:inst3|add~202
E1L4 = E1_cnt[2] & E1_cnt[1] & E1_cnt[0];
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -