1 / 17

Add

Design a 4-bit ALU that implements the following set of operations with only the following components (assume 2’s complement number representation, no need to implement overflow circuit) 1-bit Full-Adders (FA) 2-input AND/OR/XOR gates Inverters 2:1 MUX. M 2. M 1. M 0. Function Name. F =.

rutz
Télécharger la présentation

Add

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Design a 4-bit ALU that implements the following set of operations with only the following components (assume 2’s complement number representation, no need to implement overflow circuit) • 1-bit Full-Adders (FA) • 2-input AND/OR/XOR gates • Inverters • 2:1 MUX M2 M1 M0 Function Name F = 0 0 0 Add A + B 0 0 1 Subtract A – B 0 1 0 Increment A + 1 0 1 1 Decrement A – 1 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B

  2. M2 M1 M0 Function Name F = 0 0 0 Add A + B 0 0 1 Subtract A – B 0 1 0 Increment A + 1 0 1 1 Decrement A – 1 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B

  3. M2 M1 M0 Function Name F = 0 0 0 Add A + B 0 0 1 Subtract A – B 0 1 0 Increment A + 1 0 1 1 Decrement A – 1 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B 0 1 MUX M2 Fi

  4. M2 M1 M0 Function Name F = 0 0 0 Add A + B 0 0 1 Subtract A – B 0 1 0 Increment A + 1 0 1 1 Decrement A – 1 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B A * 2 = left-shift e.g. 3 * 2 = “011” * 2 = “110” = 6 A / 2 = right-shift e.g. 3 / 2 = “011” / 2 = “001” = 1 0 1 MUX M1 0 1 MUX M2 Fi

  5. M2 M1 M0 Function Name F = 0 0 0 Add A + B 0 0 1 Subtract A – B 0 1 0 Increment A + 1 0 1 1 Decrement A – 1 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B Ai-1 Ai+1 A * 2 = left-shift e.g. 3 * 2 = “011” * 2 = “110” = 6 0 1 MUX M0 A / 2 = right-shift e.g. 3 / 2 = “011” / 2 = “001” = 1 0 1 MUX M1 0 1 MUX M2 Fi

  6. M2 M1 M0 Function Name F = 0 0 0 Add A + B 0 0 1 Subtract A – B 0 1 0 Increment A + 1 0 1 1 Decrement A – 1 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 Ai Bi Ai Bi 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B Ai-1 Ai+1 0 1 MUX 0 1 MUX M0 M0 0 1 MUX M1 0 1 MUX M2 Fi

  7. M2 M1 M0 Function Name F = 0 0 0 Add A + B 0 0 1 Subtract A – B 0 1 0 Increment A + 1 0 1 1 Decrement A – 1 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 Ai Bi Ai Bi 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B Ai-1 Ai+1 0 1 MUX 0 1 MUX M0 M0 0 1 MUX M1 0 1 MUX M2 Fi

  8. M2 M1 M0 Function Name F = 0 0 0 Add A + B 0 0 1 Subtract A – B 0 1 0 Increment A + 1 0 1 1 Decrement A – 1 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 Ai Bi Ai Bi 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B Ai-1 Ai+1 0 1 MUX 0 1 MUX M0 M0 Ai 0 1 MUX M1 FA Ci+1 Ci 0 1 MUX M2 Fi

  9. M2 M1 M0 Function Name F = C0 0 0 0 Add A + B Bi 0 0 0 1 Subtract A – B NOT(Bi) 1 0 1 0 Increment A + 1 “0” 1 0 1 1 Decrement A – 1 “1” 0 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 Ai Bi Ai Bi 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B Ai-1 Ai+1 0 1 MUX 0 1 MUX M0 M0 Ai 0 1 MUX M1 FA Ci+1 Ci 0 1 MUX M2 Fi

  10. M2 M1 M0 Function Name F = C0 0 0 0 Add A + B Bi 0 0 0 1 Subtract A – B NOT(Bi) 1 0 1 0 Increment A + 1 “0” 1 0 1 1 Decrement A – 1 “1” 0 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 Ai Bi Ai Bi 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B Ai-1 Ai+1 Bi M0 0 1 MUX 0 1 MUX M0 M0 Ai 0 1 MUX M1 0 1 MUX M1 FA Ci+1 Ci 0 1 MUX M2 Fi

  11. M2 M1 M0 Function Name F = C0 0 0 0 Add A + B Bi 0 0 0 1 Subtract A – B NOT(Bi) 1 0 1 0 Increment A + 1 “0” 1 0 1 1 Decrement A – 1 “1” 0 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 Ai Bi Ai Bi 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B Ai-1 Ai+1 Bi M0 0 1 MUX 0 1 MUX M0 M0 Ai 0 1 MUX M1 0 1 MUX M1 FA Ci+1 Ci 0 1 MUX M2 Fi

  12. M2 M1 M0 Function Name F = C0 0 0 0 Add A + B Bi 0 0 0 1 Subtract A – B NOT(Bi) 1 0 1 0 Increment A + 1 “0” 1 0 1 1 Decrement A – 1 “1” 0 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 Ai Bi Ai Bi 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B Ai-1 Ai+1 Bi M0 0 1 MUX 0 1 MUX M0 M0 M0 Ai 0 1 MUX M1 0 1 MUX M1 FA Ci+1 Ci 0 1 MUX M2 Fi

  13. M2 M1 M0 Function Name F = C0 0 0 0 Add A + B Bi 0 0 0 1 Subtract A – B NOT(Bi) 1 0 1 0 Increment A + 1 “0” 1 0 1 1 Decrement A – 1 “1” 0 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 Ai Bi Ai Bi 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B Ai-1 Ai+1 Bi M0 0 1 MUX 0 1 MUX M0 M0 M0 Ai 0 1 MUX M1 0 1 MUX M1 FA Ci+1 Ci 0 1 MUX M2 Fi

  14. M1 M0 M2 M1 M0 Function Name F = C0 0 0 0 Add A + B Bi 0 0 0 1 Subtract A – B NOT(Bi) 1 0 1 0 Increment A + 1 “0” 1 0 1 1 Decrement A – 1 “1” 0 C0 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 Ai Bi Ai Bi 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B Ai-1 Ai+1 Bi M0 0 1 MUX 0 1 MUX M0 M0 M0 Ai 0 1 MUX M1 0 1 MUX M1 FA Ci+1 Ci 0 1 MUX M2 Fi

  15. M1 M0 M2 M1 M0 Function Name F = 0 0 0 0 C0 1 1 Ai Bi Ai Bi 1 1 Ai-1 Ai+1 Bi M0 0 1 MUX 0 1 MUX M0 M0 M0 Ai 0 1 MUX M1 0 1 MUX M1 FA Ci+1 Ci 0 1 MUX M2 Fi

  16. M1 M0 M2 M1 M0 Function Name F = 0 0 0 0 C0 1 1 Ai Bi Ai Bi 1 1 0 Bitwise-AND A AND B 1 1 1 Bitwise-OR A OR B Ai-1 Ai+1 Bi M0 0 1 MUX 0 1 MUX M0 M0 M0 Ai 0 1 MUX M1 0 1 MUX M1 FA Ci+1 Ci 0 1 MUX M2 Fi

  17. M1 M0 M2 M1 M0 Function Name F = 0 0 0 0 C0 1 1 0 0 Multiply by 2 A * 2 1 0 1 Divide by 2 A / 2 Ai Bi Ai Bi 1 1 Ai-1 Ai+1 Bi M0 0 1 MUX 0 1 MUX M0 M0 M0 Ai 0 1 MUX M1 0 1 MUX M1 FA Ci+1 Ci 0 1 MUX M2 Fi

More Related