Question: design a 16-bit shifter unit Problem 2: (20 pts) Design a 16-bit Shifter unit with A, B, Type and Direction as inputs and ShiftOut as
Problem 2: (20 pts) Design a 16-bit Shifter unit with A, B, Type and Direction as inputs and ShiftOut as output. The value of A should be shifted or rotated by the value specified in B. The "Direction" bit is used to determine whether to shift/rotate left(0) or right(1). The "Op_Type" bit is used to determine whether to Shift(0) or Rotate (1) the data. This 16-bit Shifter has the following entity declaration: entity ShiftUnit16Bits is port (A, B : IN std_logic_vector (15 downto 0); Direction, Op_Type IN std_logic; Shiftout : OUT std_logic_vector (15 downto 0)); end Shift Unit16Bits; The "Direction" bit is used to determine whether to shift/rotate left (0) or right (1). The "Op_Type" bit is used to determine whether to shift(0) or rotate(1) The value of A should be shifted by the value specified in B. The shifted bits are replaced by 0. Write a test bench that verifies the functionality of your design, make sure to have all possible operations of this unit in your test bench. Below table describes this unit's behavior: Op_Type Direction Operation Shift Left(A,B) Shift Right(A,B) Rotate Left(A,B) Rotate Right(A,B) 0
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
