Data Logic Cells-unit3-asic

# Data Logic Cells-unit3-asic - UNIT-3 Data Logic Cells Data...

• 34

This preview shows page 1 - 14 out of 34 pages.

UNIT-3 Data Logic Cells Data Path Elements, Adders, Multiplier, Arithmetic Operator, I/O cell, Cell Compilers.

Subscribe to view the full document.

What is Data Path A datapath is a collecton of functonal units , as arithmetc logic units or multpliers , that perform data processing operatons. It is a central part of many central processing units (CPUs) along with the control unit , which largely regulates interacton between the datapath and the data itself, usually stored in registers or main memory .
Data Path Logic Cells Datapath layout automatcally takes care of most of the interconnect between the cells with the following advantages: – Regular layout produces predictable and equal delay for each bit. – Interconnect between cells can be built into each cell.

Subscribe to view the full document.

Digital Device Components
Why Datapaths? The speed of these elements often dominates the overall system performance so optimization techniques are important. However, as we will see, the task is non-trivial since there are multiple equivalent logic and circuit topologies to choose from, each with adv./disadv. in terms of speed, power and area.

Subscribe to view the full document.

BIT SLICING

Subscribe to view the full document.

SHIFTER
VERILOG CODE module shifter(Con,A,Y); input [1:0] Con; input[2:0] A; output[2:0] Y; reg [2:0] Y; always @(A or Con) begin case(Con) 0: Y=A; 1: Y=A<<1;(LEFT) 2: Y=A>>1;(RIGHT) default: Y=3’b0; endcase end endmodule

Subscribe to view the full document.

Combinatonal logic shifters with shiftin and shiftout
Verilog Code [email protected](Sel or A or ShiftLeftIn or ShiftRightIn); begin A_wide={ShiftLeftIn,A,ShiftRightIn}; case(Sel) 0: Y_wide=A_wide; 1: Y_wide=A_wide<<1; 2: Y_wide=A_wide>>1; 3:Y_wide=5’b0; default: Y=A_wide; endcase ShiftLeftOut=Y_wide[0]; Y=Y_wide[2:0]; ShiftRightOut=Y_wide[4]; end

Subscribe to view the full document.

Combinatonal 6 bit Barrel Shifter
Verilog Coding functon [2:0] rotate_left; input [5:0] A; input [2:0] NumberShifts; reg [5:0] Shifting; integer N; begin Shifting = A; for(N=1;N<=NumberShifts;N=N+1) begin Shifting={Shifting[4:0],Shifting[5])}; end rotate_left=Shifting; end endfuncton

Subscribe to view the full document.

• Fall '15

{[ snackBarMessage ]}

### What students are saying

• As a current student on this bumpy collegiate pathway, I stumbled upon Course Hero, where I can find study resources for nearly all my courses, get online help from tutors 24/7, and even share my old projects, papers, and lecture notes with other students.

Kiran Temple University Fox School of Business ‘17, Course Hero Intern

• I cannot even describe how much Course Hero helped me this summer. It’s truly become something I can always rely on and help me. In the end, I was not only able to survive summer classes, but I was able to thrive thanks to Course Hero.

Dana University of Pennsylvania ‘17, Course Hero Intern

• The ability to access any university’s resources through Course Hero proved invaluable in my case. I was behind on Tulane coursework and actually used UCLA’s materials to help me move forward and get everything together on time.

Jill Tulane University ‘16, Course Hero Intern