Advertisement
Guest User

Untitled

a guest
Dec 7th, 2019
109
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. module project(mrst,sw,key,clk,hex3,hex2,hex1,hex0,led);
  2.  
  3. input [8:0] sw;
  4. input [3:0] key;
  5. input mrst,clk;
  6.  
  7. reg [199:0] ctr;
  8.  
  9. //hex display
  10. output [6:0] hex3, hex2, hex1, hex0;
  11. reg [6:0] hex3, hex2, hex1, hex0;
  12.  
  13. //red and green led
  14. output [17:0] led;
  15. reg [17:0] led;
  16.  
  17. //this is for switch deboun ce
  18. reg p_not1, p_not2, p_not0, p_not3;
  19. reg [3:0] trig;
  20.  
  21. //temp reg for seconds and minutes, hours. 6 bits because 60 decimal kasya sa 6 bits
  22. reg [3:0] tr_ss_ones, tr_mm_ones, tr_hr_ones, tr_hr_tens;
  23. reg [2:0] tr_ss_tens, tr_mm_tens;
  24.  
  25. //set scoreboard
  26. reg [2:0] set1_p1, set1_p2; //set1
  27. reg [2:0] set2_p1, set2_p2; //set2
  28. reg [2:0] set3_p1, set3_p2; //set3
  29. reg [2:0] set4_p1, set4_p2; //set4
  30. reg [2:0] set;
  31.  
  32. //game scoreboard
  33. reg [5:0] gm_p1, gm_p2;
  34.  
  35. //tiebreaker scoreboard
  36. reg [5:0] gm_p1_tb, gm_p2_tb;
  37. reg [3:0] tbones_p1, tbtens_p1, tbones_p2, tbtens_p2;
  38. reg [3:0] tbones_s1_p1, tbtens_s1_p1, tbones_s1_p2, tbtens_s1_p2; // for 1st set
  39. reg [3:0] tbones_s2_p1, tbtens_s2_p1, tbones_s2_p2, tbtens_s2_p2; // for 2nd set
  40. reg [3:0] tbones_s3_p1, tbtens_s3_p1, tbones_s3_p2, tbtens_s3_p2; // for 3rd set
  41. reg [3:0] tbones_s4_p1, tbtens_s4_p1, tbones_s4_p2, tbtens_s4_p2; // for 4th set
  42.  
  43. parameter n0 = 1;
  44. parameter n1 = 79;
  45. parameter n2 = 18;
  46. parameter n3 = 6;
  47. parameter n4 = 76;
  48. parameter n5 = 36;
  49. parameter n6 = 32;
  50. parameter n7 = 15;
  51. parameter n8 = 0;
  52. parameter n9 = 4;
  53.  
  54. parameter sA = 8; //letter A
  55. parameter sd = 66; //letter d
  56. parameter dash = 126; // - dash
  57. parameter S = 36;
  58. parameter E = 48;
  59. parameter t = 112;
  60. parameter I = 121;
  61.        
  62.        
  63. initial hex0 = n0;
  64. initial hex1 = n0;
  65. initial hex2 = n0;
  66. initial hex3 = n0;
  67.  
  68.  
  69. //key debounce method
  70. always @ (posedge clk)
  71.     begin
  72.         p_not0 <= ~key[0];
  73.         trig[0] <= key[0] & p_not0;
  74.        
  75.         p_not1 <= ~key[1];
  76.         trig[1] <= key[1] & p_not1;
  77.        
  78.         p_not2 <= ~key[2];
  79.         trig[2] <= key[2] & p_not2;
  80.        
  81.         p_not3 <= ~key[3];
  82.         trig[3] <= key[3] & p_not3;  
  83.     end
  84.    
  85. // ctr for ss
  86. always @ (posedge clk)
  87.     if (mrst == 1)
  88.         ctr <= 0;
  89.     else if (ctr == 500000)
  90.         ctr <= 0;
  91.     else if (trig[1] == 1)
  92.         ctr <= ctr;
  93.     else
  94.         ctr <= ctr + 1;
  95. //tennis match clock
  96. always @ (posedge clk)
  97. begin
  98.     if (mrst == 1 || (trig[0] == 1 && sw[8] == 1) )
  99.     begin
  100.         tr_ss_ones <= 0;
  101.         tr_ss_tens <= 0;
  102.         tr_mm_ones <= 0;
  103.         tr_mm_tens <= 0;
  104.         tr_hr_ones <= 0;
  105.         tr_hr_tens <= 0;
  106.     end
  107.     //seconds  
  108.     else if (ctr == 500000)
  109.     begin
  110.         tr_ss_ones <= tr_ss_ones + 1;
  111.         if (tr_ss_ones == 9)
  112.             begin
  113.                 tr_ss_ones <=0;
  114.                 tr_ss_tens <= tr_ss_tens + 1;
  115.                 //if within if kasi satisfy niya muna then go
  116.                 if (tr_ss_tens == 5)
  117.                     begin
  118.                         tr_ss_tens <= 0;
  119.                         tr_mm_ones <= tr_mm_ones + 1;
  120.                         //
  121.                         if (tr_mm_ones == 9)
  122.                             begin
  123.                                 tr_mm_ones <= 0;
  124.                                 tr_mm_tens <= tr_mm_tens + 1;
  125.                                     //
  126.                                     if (tr_mm_tens == 5)
  127.                                         begin
  128.                                             tr_mm_tens <= 0;
  129.                                             tr_hr_ones <= tr_hr_ones + 1;
  130.                                             //
  131.                                             if (tr_hr_ones == 9)
  132.                                                 begin
  133.                                                     tr_hr_ones <= 0;
  134.                                                     tr_hr_tens <= tr_hr_tens + 1;
  135.                                                     //
  136.                                                     if(tr_hr_tens == 9)
  137.                                                         begin
  138.                                                             tr_hr_tens <= 0;
  139.                                                         end
  140.                                                 end
  141.                                         end
  142.                             end
  143.                     end
  144.             end
  145.     end                                                                                                            
  146. end
  147.        
  148. // case for different displays
  149. always @ (posedge clk)
  150. begin
  151.     case (sw)
  152.     9'b100000000:
  153.     //display for tennis match clock
  154.     begin
  155.         if (key[3] == 0)
  156.             begin
  157.             // this is for ones place in seconds
  158.             case (tr_ss_ones)
  159.                 0: hex0 <= n0;
  160.                 1: hex0 <= n1;
  161.                 2: hex0 <= n2;
  162.                 3: hex0 <= n3;
  163.                 4: hex0 <= n4;
  164.                 5: hex0 <= n5;
  165.                 6: hex0 <= n6;
  166.                 7: hex0 <= n7;
  167.                 8: hex0 <= n8;
  168.                 9: hex0 <= n9;
  169.                 default: hex0 <= n0;
  170.             endcase
  171.    
  172.             // tenths place ng seconds pwede yata mag case dito?
  173.             if (tr_ss_tens < 1)
  174.                 hex1 <= n0;
  175.             else if (tr_ss_tens >= 1 && tr_ss_tens < 2)
  176.                 hex1 <= n1;
  177.             else if (tr_ss_tens >= 2 && tr_ss_tens < 3)
  178.                 hex1 <= n2;
  179.             else if (tr_ss_tens >= 3 && tr_ss_tens < 4)
  180.                 hex1 <= n3;
  181.             else if (tr_ss_tens >= 4 && tr_ss_tens < 5)
  182.                 hex1 <= n4;
  183.             else if (tr_ss_tens >= 5 && tr_ss_tens < 6)
  184.                 hex1 <= n5;
  185.                
  186.             case (tr_mm_ones)
  187.                 0: hex2 <= n0;
  188.                 1: hex2 <= n1;
  189.                 2: hex2 <= n2;
  190.                 3: hex2 <= n3;
  191.                 4: hex2 <= n4;
  192.                 5: hex2 <= n5;
  193.                 6: hex2 <= n6;
  194.                 7: hex2 <= n7;
  195.                 8: hex2 <= n8;
  196.                 9: hex2 <= n9;
  197.                 default: hex2 <= n0;
  198.             endcase
  199.    
  200.             if (tr_mm_tens < 1)
  201.                 hex3 <= n0;
  202.             else if (tr_mm_tens >= 1 && tr_mm_tens < 2)
  203.                 hex3 <= n1;
  204.             else if (tr_mm_tens >= 2 && tr_mm_tens < 3)
  205.                 hex3 <= n2;
  206.             else if (tr_mm_tens >= 3 && tr_mm_tens < 4)
  207.                 hex3 <= n3;
  208.             else if (tr_mm_tens >= 4 && tr_mm_tens < 5)
  209.                 hex3 <= n4;
  210.             else if (tr_mm_tens >= 5 && tr_mm_tens < 6)
  211.                 hex3 <= n5;
  212.        
  213.     end
  214.     //
  215.     //
  216.     else  //hh:mm
  217.         begin
  218.             // this is for ones place in mm
  219.             case (tr_mm_ones)
  220.                 0: hex0 <= n0;
  221.                 1: hex0 <= n1;
  222.                 2: hex0 <= n2;
  223.                 3: hex0 <= n3;
  224.                 4: hex0 <= n4;
  225.                 5: hex0 <= n5;
  226.                 6: hex0 <= n6;
  227.                 7: hex0 <= n7;
  228.                 8: hex0 <= n8;
  229.                 9: hex0 <= n9;
  230.                 default: hex0 <= n0;
  231.             endcase
  232.    
  233.     // tenths place ng minutes pwede yata mag case dito?
  234.             if (tr_mm_tens < 1)
  235.                 hex1 <= n0;
  236.             else if (tr_mm_tens >= 1 && tr_mm_tens < 2)
  237.                 hex1 <= n1;
  238.             else if (tr_mm_tens >= 2 && tr_mm_tens < 3)
  239.                 hex1 <= n2;
  240.             else if (tr_mm_tens >= 3 && tr_mm_tens < 4)
  241.                 hex1 <= n3;
  242.             else if (tr_mm_tens >= 4 && tr_mm_tens < 5)
  243.                 hex1 <= n4;
  244.             else if (tr_mm_tens >= 5 && tr_mm_tens < 6)
  245.                 hex1 <= n5;
  246.        
  247.                 //hours ones
  248.                 case (tr_hr_ones)
  249.                     0: hex2 <= n0;
  250.                     1: hex2 <= n1;
  251.                     2: hex2 <= n2;
  252.                     3: hex2 <= n3;
  253.                     4: hex2 <= n4;
  254.                     5: hex2 <= n5;
  255.                     6: hex2 <= n6;
  256.                     7: hex2 <= n7;
  257.                     8: hex2 <= n8;
  258.                     9: hex2 <= n9;
  259.                     default: hex2 <= n0;
  260.                 endcase
  261.                     //hours tenths
  262.                 if (tr_hr_tens < 1)
  263.                     hex3 <= n0;
  264.                 else if (tr_hr_tens >= 1 && tr_hr_tens < 2)
  265.                     hex3 <= n1;
  266.                 else if (tr_hr_tens >= 2 && tr_hr_tens < 3)
  267.                     hex3 <= n2;
  268.                 else if (tr_hr_tens >= 3 && tr_hr_tens < 4)
  269.                     hex3 <= n3;
  270.                 else if (tr_hr_tens >= 4 && tr_hr_tens < 5)
  271.                     hex3 <= n4;
  272.                 else if (tr_hr_tens >= 5 && tr_hr_tens < 6)
  273.                     hex3 <= n5;
  274.         end
  275.     end
  276.     9'b010000000:
  277.     //display for game scoreboard
  278.         begin
  279.             case (gm_p1)
  280.             0: begin hex3 <= n0; led[7:4]= 4'b0000; end
  281.             15: begin hex3 <= n1; led[7:4]= 4'b1000; end
  282.             30: begin hex3 <= n3; led[7:4] <= 4'b1100; end
  283.             45: begin hex3 <= n4; led[7:4] <= 4'b1110; end
  284.             50: begin hex3 <= dash; led[7:4] <= 4'b1110; end
  285.             55: begin hex3 <= sA; led[7:4] <= 4'b1110; end
  286.             default: hex3 <= n0;
  287.             endcase
  288.            
  289.             case (gm_p1)
  290.             0: hex2 <= n0;
  291.             15: hex2 <= n5;
  292.             30: hex2 <= n0;
  293.             45: hex2 <= n0;
  294.             50: hex2 <= dash;
  295.             55: hex2 <= sd;
  296.             default: hex2 <= n0;
  297.             endcase
  298.            
  299.             case (gm_p2)
  300.             0: begin hex1 <= n0; led[3:0] <= 4'b0000; end
  301.             15: begin hex1 <= n1; led[3:0] <= 4'b1000; end
  302.             30: begin hex1 <= n3; led[3:0] <= 4'b1100; end
  303.             45: begin hex1 <= n4; led[3:0] <= 4'b1110; end
  304.             50: begin hex1 <= dash; led[3:0] <= 4'b1110; end
  305.             55: begin hex1 <= sA; led[3:0] <= 4'b1110; end
  306.             default: hex1 <= n0;
  307.             endcase
  308.            
  309.             case (gm_p2)
  310.             0: hex0 <= n0;
  311.             15: hex0 <= n5;
  312.             30: hex0 <= n0;
  313.             45: hex0 <= n0;
  314.             50: hex0 <= dash;
  315.             55: hex0 <= sd;
  316.             default: hex0 <= n0;
  317.             endcase    
  318.         end
  319.  
  320.     9'b001000000:
  321.     //display for set scoreboard
  322.         begin
  323.         hex3 <= S; //s
  324.         hex2 <= E; //e
  325.         hex1 <= t; //t
  326.         hex0 <= 7'h7f;
  327.         if (key[3] == 0)
  328.         begin
  329.         case (set1_p1)
  330.             0:  hex3 <= n0;
  331.             1:  hex3 <= n1;
  332.             2:  hex3 <= n2;
  333.             3:  hex3 <= n3;
  334.             4:  hex3 <= n4;
  335.             5:  hex3 <= n5;
  336.             6:  hex3 <= n6;
  337.             7:  hex3 <= n7;
  338.             default:  hex3 <= n0;
  339.         endcase
  340.         case (set2_p1)
  341.             0:  hex2 <= n0;
  342.             1:  hex2 <= n1;
  343.             2:  hex2 <= n2;
  344.             3:  hex2 <= n3;
  345.             4:  hex2 <= n4;
  346.             5:  hex2 <= n5;
  347.             6:  hex2 <= n6;
  348.             7:  hex2 <= n7;
  349.             default:  hex2 <= n0;
  350.         endcase
  351.         case (set3_p1)
  352.             0:  hex1 <= n0;
  353.             1:  hex1 <= n1;
  354.             2:  hex1 <= n2;
  355.             3:  hex1 <= n3;
  356.             4:  hex1 <= n4;
  357.             5:  hex1 <= n5;
  358.             6:  hex1 <= n6;
  359.             7:  hex1 <= n7;
  360.             default:   hex1 <= n0;
  361.         endcase
  362.         case (set4_p1)
  363.             0: hex0 <= n0;
  364.             1: hex0 <= n1;
  365.             2: hex0 <= n2;
  366.             3: hex0 <= n3;
  367.             4: hex0 <= n4;
  368.             5: hex0 <= n5;
  369.             6: hex0 <= n6;
  370.             7: hex0 <= n7;
  371.             default: hex0 <= n0;
  372.         endcase
  373.     end
  374.         else if (key[2] == 0)
  375.         begin
  376.         case (set1_p2)
  377.             0:  hex3 <= n0;
  378.             1:  hex3 <= n1;
  379.             2:  hex3 <= n2;
  380.             3:  hex3 <= n3;
  381.             4:  hex3 <= n4;
  382.             5:  hex3 <= n5;
  383.             6:  hex3 <= n6;
  384.             7:  hex3 <= n7;
  385.             default:  hex3 <= n0;
  386.         endcase
  387.         case (set2_p2)
  388.             0:  hex2 <= n0;
  389.             1:  hex2 <= n1;
  390.             2:  hex2 <= n2;
  391.             3:  hex2 <= n3;
  392.             4:  hex2 <= n4;
  393.             5:  hex2 <= n5;
  394.             6:  hex2 <= n6;
  395.             7:  hex2 <= n7;
  396.             default:  hex2 <= n0;
  397.         endcase
  398.         case (set3_p2)
  399.             0:  hex1 <= n0;
  400.             1:  hex1 <= n1;
  401.             2:  hex1 <= n2;
  402.             3:  hex1 <= n3;
  403.             4:  hex1 <= n4;
  404.             5:  hex1 <= n5;
  405.             6:  hex1 <= n6;
  406.             7:  hex1 <= n7;
  407.             default:  hex1 <= n0;
  408.         endcase
  409.         case (set4_p2)
  410.             0: hex0 <= n0;
  411.             1: hex0 <= n1;
  412.             2: hex0 <= n2;
  413.             3: hex0 <= n3;
  414.             4: hex0 <= n4;
  415.             5: hex0 <= n5;
  416.             6: hex0 <= n6;
  417.             7: hex0 <= n7; // if nanalo si p2 sa tiebreaker set 4
  418.             default: hex0 <= n0;
  419.         endcase
  420.     end
  421.            
  422. end
  423. //  9'b000100000:
  424. //  //display for tiebreaker game set scoreboard
  425. //      begin
  426. //          hex3 <= t;
  427. //          hex2 <= I;
  428. //          hex1 <= E;
  429. //          hex0 <= 7'h7f;
  430. //          case (trig) //if any key is pressed switch to score during tiebreaker
  431. //              default:
  432. //                  begin
  433. //                      hex3 <= tbtens_p1;
  434. //                      hex2 <= tbones_p1;
  435. //                      hex1 <= tbtens_p2;
  436. //                      hex0 <= tbones_p2;
  437. //                  end
  438. //          endcase
  439. //      end
  440. // 
  441. //  9'b000010000:
  442. //  //display for tiebreaker game score for first four sets
  443. //      begin
  444. //          hex3 <= n0;
  445. //          hex2 <= n0;
  446. //          hex1 <= n0;
  447. //          hex0 <= n0;
  448. //         
  449. //          if ( (set1_p1 != set1_p2) || (set2_p1 != set2_p2) || (set3_p1 != set3_p2) || (set4_p1 != set4_p2) ) //if no tiebreaker happened
  450. //              hex3 <= dash;
  451. //              hex2 <= dash;
  452. //              hex1 <= dash;
  453. //              hex0 <= dash;
  454. //             
  455. //          case (set)
  456. //              1:
  457. //                  begin
  458. //                      if (trig[3] == 1)
  459. //                          hex3 <= tbtens_s1_p1;
  460. //                          hex2 <= tbones_s1_p1;
  461. //                          hex1 <= tbtens_s1_p2;
  462. //                          hex0 <= tbones_s1_p2;
  463. //                  end
  464. //              2:
  465. //                  begin
  466. //                      if (trig[2] == 1)
  467. //                          hex3 <= tbtens_s2_p1;
  468. //                          hex2 <= tbones_s2_p1;
  469. //                          hex1 <= tbtens_s2_p2;
  470. //                          hex0 <= tbones_s2_p2;
  471. //                  end
  472. //              3:
  473. //                  begin
  474. //                      if (trig[1] == 1)
  475. //                          hex3 <= tbtens_s3_p1;
  476. //                          hex2 <= tbones_s3_p1;
  477. //                          hex1 <= tbtens_s3_p2;
  478. //                          hex0 <= tbones_s3_p2;
  479. //                  end
  480. //              4:
  481. //                  begin
  482. //                      if (trig[0] == 1)
  483. //                          hex3 <= tbtens_s4_p1;
  484. //                          hex2 <= tbones_s4_p1;
  485. //                          hex1 <= tbtens_s4_p2;
  486. //                          hex0 <= tbones_s4_p2;
  487. //                  end
  488. //          endcase
  489. //         
  490. //      end
  491.        
  492. endcase
  493. end
  494.  
  495. always @ (posedge clk)
  496. case (sw)
  497. 9'b010000000:
  498. //game scoreboard
  499. begin
  500. if (gm_p1 < 45 || gm_p2 < 45)
  501.     begin
  502.     if (trig[3] == 1)
  503.         gm_p1 <= gm_p1 + 15;
  504.     else if(trig[2] == 1)
  505.         gm_p1 <= gm_p1 - 15;
  506.     else if(trig[1] == 1)
  507.         gm_p2 <= gm_p2 + 15;
  508.     else if(trig[0] == 1)
  509.         gm_p2 <= gm_p2 - 15;
  510.     end
  511.    
  512. else if (gm_p1 == 60 || gm_p2 == 60)
  513.         begin
  514.         gm_p1 <= 0;
  515.         gm_p2 <= 0;
  516.          if (gm_p1 == 60)
  517.             begin
  518.                 set1_p1 <= set1_p1 + 1;
  519.                 if (set1_p1 == 6 && set2_p1 < 6)
  520.                 begin
  521.                 set1_p1 <= 6;
  522.                 set2_p1 <= set2_p1 + 1;
  523.                 end
  524.                 else if (set2_p1 == 6 && set3_p1 < 6)
  525.                 begin
  526.                 set2_p1 <= 6;
  527.                 set3_p1 <= set3_p1 + 1;
  528.                 end
  529.                 else if (set3_p1 == 6 && set4_p1 < 6)
  530.                 begin
  531.                 set3_p1 <= 6;
  532.                 set4_p1 <= set4_p1 + 1;
  533.                 end
  534.             end
  535.         end
  536.    
  537.    
  538. else if (gm_p1 == 45 && gm_p2 == 45)
  539.     begin
  540.     if (trig[3] ==1)
  541.         begin
  542.         gm_p1 <= gm_p1 +10;
  543.         gm_p2 <= gm_p2 +5;
  544.         end
  545.     else if  (trig[1] ==1)
  546.         begin
  547.         gm_p1 <= gm_p1 +5;
  548.         gm_p2 <= gm_p2 +10;
  549.         end
  550.     else if(trig[2] == 1)
  551.         gm_p1 <= gm_p1 - 15;
  552.     else if(trig[0] == 1)
  553.         gm_p2 <= gm_p2 - 15;
  554.     end
  555.    
  556. else if ((gm_p1 == 55 && gm_p2 == 50) || (gm_p1 == 50 && gm_p2 == 55))
  557. begin
  558.     if (trig[2] ==1)
  559.         begin
  560.         gm_p1 <= gm_p1 -10;
  561.         gm_p2 <= gm_p2 -5;
  562.         end
  563.     else if (trig[0] ==1)
  564.         begin
  565.         gm_p1 <= gm_p1 -5;
  566.         gm_p2 <= gm_p2 -10;
  567.         end
  568.     else if (trig[3] ==1)
  569.         begin
  570.         if (gm_p1 == 55 && gm_p2 == 50)
  571.         begin
  572.         gm_p1 <= gm_p1 + 5;
  573.         gm_p2 <= 0;
  574.         gm_p1 <= 0;
  575. //      set1_p1 <= set1_p1 +1;
  576.         end
  577.         else if (gm_p1 == 50 && gm_p2 == 55)
  578.         begin
  579.             gm_p1 <= 45;
  580.             gm_p2 <= 45;
  581.         end
  582.         end
  583.     else if (trig[1] ==1)
  584.         begin
  585.         if (gm_p1 == 50 && gm_p2 == 55)
  586.         begin
  587.         gm_p2 <= gm_p2 + 5;
  588.         gm_p1 <= 0;
  589.         gm_p2 <= 0;
  590. //      set1_p2 <= set1_p2 +1;
  591.         end
  592.         else if (gm_p1 == 55 && gm_p2 == 50)
  593.         begin
  594.             gm_p1 <= 45;
  595.             gm_p2 <= 45;
  596.         end
  597.         end
  598.         end
  599.  
  600. end
  601. //9'b001000000:
  602. ////set scoreboard
  603. //
  604. //begin
  605.    
  606.        
  607. //        set <= 1;
  608. //        if (set1_p1 >= 6)
  609. //          begin
  610. //              led[17] <= 1;
  611. //              set2_p1 <= set1_p1 - 6;
  612. //              set <= 2;
  613. //              if (set2_p1 == 6)
  614. //                  begin
  615. //                      led[16] <= 1;
  616. //                      set3_p1 <= set3_p1 + 1;
  617. //                      set <= 3;
  618. //                      if (set3_p1 == 6)
  619. //                          begin
  620. //                              led[16] <= 1;
  621. //                              set4_p1 <= set4_p1 + 1;
  622. //                              set <= 4;
  623. //                              if (set4_p1 == 6)
  624. //                                  begin
  625. //                                      led[15] <= 1;
  626. //                                      //place for set5?
  627. //                                  end
  628. //                          end
  629. //                  end
  630. //          end
  631. //    
  632. //    
  633. //    if (gm_p2 == 60 && ( (gm_p2 - gm_p1) <= 2 ) && gm_p1 != 60 ) //yung score ni p2 - score ni p1 dahil sa kailangan dalawa lamang para manalo
  634. //    begin
  635. //        set1_p2 <= set1_p2 + 1;
  636. //        set <= 1;
  637. //        if (set1_p2 == 6)
  638. //          begin
  639. //              led[12] <= 1;
  640. //              set2_p2 <= set2_p2 + 1;
  641. //              set <= 2;
  642. //          end
  643. //            if (set2_p2 == 6)
  644. //              begin
  645. //                  led[11] <= 1;
  646. //                  set3_p2 <= set3_p2 + 1;
  647. //                  set <= 3;
  648. //              end
  649. //                if (set3_p2 == 6)
  650. //                  begin
  651. //                      led[10] <= 1;
  652. //                      set4_p2 <= set4_p2 + 1;
  653. //                      set <= 4;
  654. //                  end
  655. //                      if (set4_p2 == 6)
  656. //                          begin
  657. //                              led[9] <= 1;
  658. //                              //place for 5th set
  659. //                          end
  660. //    end  
  661. //end //end ng case ng set scoreboard
  662.  
  663. //9'b000100000:
  664. ////tiebreaker live scoreboard
  665. //begin
  666. //  if ( ( (set1_p1 == set1_p2) || (set2_p1 == set2_p2) || (set3_p1 == set3_p2) || (set4_p1 == set4_p2) ) && ( set1_p1 < 5 || set1_p2 < 5 || set2_p1 < 5 || set2_p2 < 5  || set3_p1 < 5 || set3_p2 < 5 || set4_p1 < 5 || set4_p2 < 5)  )
  667. //  //if score is 6-6 and first four sets, TIEBREAKER
  668. //    begin  
  669. //      case(trig)
  670. //          4'b1000: //if nakascore si p1
  671. //              begin
  672. //                  gm_p1_tb <= gm_p1_tb + 1;
  673. //                  tbones_p1 <= tbones_p1 + 1;
  674. //              end
  675. //          4'b0100: //if nakascore si p2
  676. //              begin
  677. //                  gm_p2_tb <= gm_p2_tb + 1;
  678. //                  tbones_p2 <= tbones_p2 + 1;
  679. //              end
  680. //          4'b0001: //reset in tiebreaker
  681. //              begin
  682. //                  gm_p1_tb <= 0;
  683. //                  gm_p2_tb <= 0;
  684. //                  tbones_p1 <= 0;
  685. //                  tbtens_p1 <= 0;
  686. //                  tbones_p2 <= 0;
  687. //                  tbtens_p2 <= 0;
  688. //              end
  689. //      endcase
  690. //     
  691. //      if (tbones_p1 == 9)
  692. //          begin
  693. //              tbones_p1 <= 0;
  694. //              tbtens_p1 <= tbtens_p1 + 1;
  695. //          end
  696. //      else if (tbones_p2 == 9)
  697. //          begin
  698. //              tbones_p2 <= 0;
  699. //              tbtens_p2 <= tbtens_p2 + 1;
  700. //          end
  701. //         
  702. //      else if (gm_p1_tb >= 7 && ( (gm_p1_tb - gm_p2_tb) <= 2) ) //if nanalo si p1 sa tiebreaker set
  703. //          begin
  704. //              if (set1_p1 == set1_p2)
  705. //                      set1_p1 <= set1_p1 + 1;
  706. //              else if (set2_p1 == set2_p2)
  707. //                      set2_p1 <= set2_p1 + 1;
  708. //              else if (set3_p1 == set3_p2)
  709. //                      set3_p1 <= set3_p1 + 1;
  710. //              else if (set4_p1 == set4_p2)
  711. //                      set4_p1 <= set4_p1 + 1;
  712. //          end
  713. //         
  714. //      else if (gm_p2_tb >= 7 && ( (gm_p2_tb - gm_p1_tb) <= 2) ) //if nanalo si p2 sa tiebreaker set
  715. //          begin
  716. //              if (set1_p2 == set1_p2)
  717. //                      set1_p2 <= set1_p2 + 1;
  718. //              else if (set2_p1 == set2_p2)
  719. //                      set2_p2 <= set2_p2 + 1;
  720. //              else if (set3_p1 == set3_p2)
  721. //                      set3_p2 <= set3_p2 + 1;
  722. //              else if (set4_p1 == set4_p2)
  723. //                      set4_p2 <= set4_p2 + 1;
  724. //          end    
  725. //         
  726. //    end //end para sa begin nung sa if ng tiebreaker
  727. //end
  728. //
  729. //9'b000010000:
  730. ////tiebreaker game score for first four sets
  731. //begin
  732. //  if (set == 1) // para ma display yung score nila per tiebreaker set
  733. //      begin
  734. //                  tbones_s1_p1 <= tbones_p1;
  735. //                  tbtens_s1_p1 <= tbones_p1;
  736. //                  tbones_s1_p2 <= tbones_p1;
  737. //                  tbtens_s1_p2 <= tbones_p1;
  738. //      end
  739. //  else if (set == 2)
  740. //      begin
  741. //                  tbones_s2_p1 <= tbones_p1;
  742. //                  tbtens_s2_p1 <= tbones_p1;
  743. //                  tbones_s2_p2 <= tbones_p1;
  744. //                  tbtens_s2_p2 <= tbones_p1;
  745. //      end
  746. //  else if (set == 3)
  747. //      begin
  748. //                  tbones_s3_p1 <= tbones_p1;
  749. //                  tbtens_s3_p1 <= tbones_p1;
  750. //                  tbones_s3_p2 <= tbones_p1;
  751. //                  tbtens_s3_p2 <= tbones_p1;
  752. //      end
  753. //  else if (set == 4)
  754. //      begin
  755. //                  tbones_s4_p1 <= tbones_p1;
  756. //                  tbtens_s4_p1 <= tbones_p1;
  757. //                  tbones_s4_p2 <= tbones_p1;
  758. //                  tbtens_s4_p2 <= tbones_p1;
  759. //      end
  760. //end
  761.  
  762. endcase      
  763.            
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770. endmodule
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement