2021年4月6日 星期二

使用Quartus-II 9.1SP2 + ModelSim 6.5b-Aletra + Altera DE2-115 FPGA開發平台,設計2's Complement為例(FPGA開發平台)

使用Quartus-II 9.1SP2 + ModelSim 6.5b-Aletra + Altera DE2-115 FPGA開發平台,設計2's Complement為例(FPGA開發平台) 



module DE2_115 (SW, LEDR, LEDG , CLOCK_50 ,KEY ,HEX0 ,HEX1 ,HEX2,HEX3,HEX4 ,HEX5 ,HEX6,HEX7, GPIO );
 input  [17:0] SW;   // toggle switches
 input  [7:0] KEY;       // Push bottom
 input  CLOCK_50;   //Clock 27MHz , 50Mhz
 output [17:0] LEDR;   // red  LEDS
 output [8:0] LEDG;   // green LEDs
 output [6:0] HEX0,HEX1,HEX2,HEX3; //7-segment display
 output [6:0] HEX4,HEX5,HEX6,HEX7; //7-segment display
 inout  [35:0] GPIO;
 assign HEX0=7'b111_1111;
 assign HEX1=7'b111_1111;
 assign HEX2=7'b111_1111;
 assign HEX3=7'b111_1111;
 assign HEX4=7'b111_1111;
 assign HEX5=7'b111_1111;
 assign HEX6=7'b111_1111;
 assign HEX7=7'b111_1111;
 
 
//module Two_complement(Y, A);
//   output [7:0]  Y;   
//   input  [7:0]  A;   
Two_complement U0(LEDR[7:0],SW[7:0]);

endmodule  

module Two_complement(Y,A);
   output [7:0]Y;   // Result.
   input  [7:0]A;   // input.
   
   wire [7:0]p;
   
   assign Y[0]=A[0];
   assign p[0]=A[0];
   
   Modified_twos u1(A[1],p[0],Y[1],p[1]);
   Modified_twos u2(A[2],p[1],Y[2],p[2]);
   Modified_twos u3(A[3],p[2],Y[3],p[3]);
   Modified_twos u4(A[4],p[3],Y[4],p[4]);
   Modified_twos u5(A[5],p[4],Y[5],p[5]);
   Modified_twos u6(A[6],p[5],Y[6],p[6]);
   Modified_twos u7(A[7],p[6],Y[7],p[7]);
      
endmodule // Two_complement

module Modified_twos(in1,in0,out,pass);
   output out,pass;   // Result.
   input  in1,in0;  // input.
   or (pass ,in1,in0);
   xor(out , in1,in0);
endmodule // Two_complement

沒有留言:

張貼留言

OPEN DATA AQI 空氣品質監測網 + NODE-RED

OPEN DATA AQI 空氣品質監測網 + NODE-RED  首頁 - 空氣品質監測網  https://airtw.moenv.gov.tw/ https://data.gov.tw/datasets/search?p=1&size=10&s=_score...