Skip to main content

Posts

Showing posts with the label Verilog Code of Combinational Circuit

Design Engineer - STA, SD, Power, PDN at Dew Software

Hello Dear Readers,   Currently at Dew Software Bangalore vacancy for Design Engineer - STA, SD, Power, PDN role. Dew Software, a leading player in the Digital Transformation space, is seeking a skilled Design Engineer specializing in STA (Static Timing Analysis), SD (Signal Integrity), Power, and PDN (Power Delivery Network) to join our team. Working with Fortune 500 companies to support their digital innovation and transformation strategies, the Design Engineer will be responsible for ensuring the integrity and efficiency of digital designs through comprehensive analysis and optimization. Dew Software is dedicated to delivering exceptional outcomes with cutting-edge technologies, and this is an excellent opportunity to contribute to the growth and success of our clients. Responsibilities: Perform STA (Static Timing Analysis) to ensure design meets timing requirements Conduct signal integrity analysis to optimize signal integrity and minimize signal integrity issues Provide power anal

Carry Lookahead Adder Design And Implementation of Generic Parametrized Adder Using Verilog HDL

  Hello Dear Readers, Today In this post I have designed a carry-lookahead adder design and implemented its parametrized version using Verilog HDL and analysis that design for the desire output. First of all, I have designed CLA based on the theory described in the below video of the Neso Academy.       Verilog Code: module add (a, b, c, g, p, s); // adder and g, p input a, b, c; // inputs: a, b, c; output g, p, s; // outputs: g, p, s; assign s=a ^ b ^ c; // output: sum of inputs assign g = a & b; // output: carry generator assign p = a | b; // output: carry propagator endmodule module gp (g,p,c_in,g_out,p_out,c_out); // carry generator, carry propagator input [1:0] g, p; // lower level 2-set of g, p input c_in; // lower level carry_in output g_out,p_out,c_out; // higher level g, p, carry_out assign g_out = g[1] | p[1] & g[0]; // higher level carry generator assign p_out = p[1] & p[0]; // higher level carry propagator assign c_out = g[0] | p[0] & c_in; // higher level c

Verilog Code of 4bit BCD Adder Using Full Adder

  Hello Dear Readers, Today in this post I will be providing you a complete Verilog code of 4 Bit BCD Adder using the Full Adder instant model. So before the start, the code keep in mind the algorithms for the BCD adder is if the additional sum is greater than 9 will become up then we add 6 on it to make a valid BCD number so here in my code I have used this algorithm so keep in mind. Verilog Code: module bcd_4bit(input [3:0] x,y,input cy_in,output [3:0] sum,output carry,output [4:0] bcd_sum); add4 a1 (carry,sum,x,y,cy_in); assign bcd_sum=carry==1?{carry,(sum+4'b0110)}:sum; endmodule module add4(cy4,sum,x,y,cy_in     ); input [3:0] x,y; input cy_in; output [3:0] sum; output cy4; wire [2:0] carry_out; add b0(carry_out[0],sum[0],x[0],y[0],cy_in); add b1(carry_out[1],sum[1],x[1],y[1],carry_out[0]); add b2(carry_out[2],sum[2],x[2],y[2],carry_out[1]); add b3(cy4,sum[3],x[3],y[3],carry_out[2]); endmodule module add(carry_out,sum,a,b,cy_in     ); input a,b,cy_in; output carry_out,sum; sum