Design a 4-bit ALU that performs Arithmetic (add, subtraction), and Logic operations (AND, OR). The following control signals are to be considered: • A/S: add/subtract (0:add, 1:subtract) • A/O: and/or (0:and, 1:or) • A/L: arithmetic/Logic (0:arithmetic, 1:logic) • R/W: read/write signal (0:read, 1:write)
1. Design a 4-bit ALU that performs Arithmetic (add, subtraction), and Logic
operations (AND, OR). The following control signals are to be considered:
• A/S: add/subtract (0:add, 1:subtract)
• A/O: and/or (0:and, 1:or)
• A/L: arithmetic/Logic (0:arithmetic, 1:logic)
• R/W: read/write signal (0:read, 1:write)
The details of each control signal (Unit) are as follows.
Unit 1 (A/S) - Design a 4-bit adder/subtractor that accepts two 4-bits numbers, A and
B, and either add them up (A + B) or subtract them (A – B) depending on a control
signal A/S (when the control signal is 0 perform ADD, otherwise if the signal is 1 then
perform SUB). The result will be stored in C.
Unit 2 (A/O) - Design a 4-bit AND/OR unit that accepts two 4-bits numbers, A and B,
and either AND them or OR them depending on a control signal A/O (when the control
signal is 0 perform AND, otherwise if the signal is 1 then perform OR – bitwise logical
operation). The result will be stored in C.
Unit 3 (A/L) - Design a 4-bit ALU using Unit 1 and Unit 2. The control signal A/L will
indicate which operation the ALU will perform (when the control signal is 0 perform
Arithmetic, otherwise if the signal is 1 then perform Logic).
Unit 4 (R/W)- Design three 4-bit parallel registers to hold A, B, and C where C keeps
the output of the ALU. The registers have a R/W control signal that indicates that they
are being written to or read from.
![](/static/compass_v2/shared-icons/check-mark.png)
Step by step
Solved in 4 steps with 2 images
![Blurred answer](/static/compass_v2/solution-images/blurred-answer.jpg)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![Database System Concepts](https://www.bartleby.com/isbn_cover_images/9780078022159/9780078022159_smallCoverImage.jpg)
![Starting Out with Python (4th Edition)](https://www.bartleby.com/isbn_cover_images/9780134444321/9780134444321_smallCoverImage.gif)
![Digital Fundamentals (11th Edition)](https://www.bartleby.com/isbn_cover_images/9780132737968/9780132737968_smallCoverImage.gif)
![C How to Program (8th Edition)](https://www.bartleby.com/isbn_cover_images/9780133976892/9780133976892_smallCoverImage.gif)
![Database Systems: Design, Implementation, & Manag…](https://www.bartleby.com/isbn_cover_images/9781337627900/9781337627900_smallCoverImage.gif)
![Programmable Logic Controllers](https://www.bartleby.com/isbn_cover_images/9780073373843/9780073373843_smallCoverImage.gif)