Question: Bit-level manipulation of multi-bit values is an operation commonly supported by processor instruction sets. A specific type of bit-level manipulation consists in setting or clearing

Bit-level manipulation of multi-bit values is an operation commonly supported by processor instruction sets. A specific type of bit-level manipulation consists in setting or clearing one single bit in a multi-bit value, given its index and its new value. This operation can be implemented in hardware by a BitSet circuit with the following interface:Bit-level manipulation of multi-bit values is an operation commonly supported by processor

Bit-level manipulation of multi-bit values is an operation commonly supported by processor instruction sets. A specific type of bit-level manipulation consists in setting or clearing one single bit in a multi-bit value, given its index and its new value. This operation can be implemented in hardware by a BitSet circuit with the following interface: Input x is a 4-bit value representing the original value. Output y is a 4-bit value representing the modified value, after the bit-set operation. Input index is a 2-bit value, ranging from 0 to 3, indicating the index of the bit to modify. Input value is a 1-bit value set to 0 or1, indicating the value that bit index should take in output y. Every other bit in y should match the corresponding bit in x. a) (2 pt) Show a hierarchical design of a 4-bit Bi.Set circuit using any kind of combinational logie block present in class. For each reused logic block, specify its exact name and size, and label its complete interface. Label the interface of the BirSet circuit, too, matching the inputs and output listed above. b) (2 pt.) Write a Verilog module for the BitSet circuit using a structural model. If your circuit uses any auxiliary combinational block (multiplexer, decoder, ..) you can use any other implementation model for its Verilog module (dataflow or behavioral) c ( pt.) Write a Verilog test-bench for your circuit, exploring at least four different combinations for the inputs. d) ( pt.) Simulate your test-bench on Icarus Verilog and show the output of the simulator. Bit-level manipulation of multi-bit values is an operation commonly supported by processor instruction sets. A specific type of bit-level manipulation consists in setting or clearing one single bit in a multi-bit value, given its index and its new value. This operation can be implemented in hardware by a BitSet circuit with the following interface: Input x is a 4-bit value representing the original value. Output y is a 4-bit value representing the modified value, after the bit-set operation. Input index is a 2-bit value, ranging from 0 to 3, indicating the index of the bit to modify. Input value is a 1-bit value set to 0 or1, indicating the value that bit index should take in output y. Every other bit in y should match the corresponding bit in x. a) (2 pt) Show a hierarchical design of a 4-bit Bi.Set circuit using any kind of combinational logie block present in class. For each reused logic block, specify its exact name and size, and label its complete interface. Label the interface of the BirSet circuit, too, matching the inputs and output listed above. b) (2 pt.) Write a Verilog module for the BitSet circuit using a structural model. If your circuit uses any auxiliary combinational block (multiplexer, decoder, ..) you can use any other implementation model for its Verilog module (dataflow or behavioral) c ( pt.) Write a Verilog test-bench for your circuit, exploring at least four different combinations for the inputs. d) ( pt.) Simulate your test-bench on Icarus Verilog and show the output of the simulator

Step by Step Solution

There are 3 Steps involved in it

1 Expert Approved Answer
Step: 1 Unlock blur-text-image
Question Has Been Solved by an Expert!

Get step-by-step solutions from verified subject matter experts

Step: 2 Unlock
Step: 3 Unlock

Students Have Also Explored These Related Databases Questions!