Mạch nhân
Lấy thí dụ bài toán nhân 2 số 4 bit Y 4 X 4 Y 3 X 3 Y 2 X 2 Y 1 X 1 Số bị nhânSố nhân ...
Lấy thí dụ bài toán nhân 2 số 4 bit
Y4X4 | Y3X3 | Y2X2 | Y1X1 | Số bị nhânSố nhân | ||||
P44 | P34P43 | P24P33P42 | P14P23P32P41 | P13P22P31 | P12P21 | P11 | Tích từng phần | |
S8 | S7 | S6 | S5 | S4 | S3 | S2 | S1 | Kết quả |
cơ bản
Việc thực hiện bài toán nhân có thể xem như gồm hai bước:
- Tính các tích từng phần: thực hiện bởi các cổng AND
- Tính tổng của các tích từng phần: Áp dụng bài toán tổng chuỗi số (H 6.17)
(H 6.17)
Dùng IC cộng 4 bit (7483 hoặc 4008) mạch nhân hai số 4 bit có dạng (H 6.18)
(H 6.18)
nối tiếp - song song đơn giản (H 6.19)
(H 6.19)
Trong mạch này, một trong hai số được đưa nối tiếp vào mạch (trong trường hợp này là số bị nhân) và số còn lại đưa song song vào mạch.
- Số nhân (b4b3b2b1) đưa song song vào mạch qua các cổng AND đồng thời kiểm soát các cổng này: ứng với bit 1 số bị nhân qua mạch để tới mạch cộng (cổng 2 và 4); ứng với bit 0 ngã ra cổng AND bằng không (cổng 1 và 3)
- Số bị nhân đưa nối tiếp vào mạch theo thứ tự từ bit LSB. Các FF D có tác dụng dịch kết quả của phép nhân (là các tích từng phần) trước khi đưa vào mạch cộng để cộng các tích từng phần này.
Thí dụ 15 : Xem bài toán nhân 10x14. Số nhân là 1010 (1010) và số bị nhân là 1110 (1410). Quá trình nhân giải thích như sau:
100011002 = 14010
Có thể thấy rằng ngã ra A luôn luôn bằng 0 vì bit LSB của số nhân = 0. Ngã ra B có giá trị của số bị nhân được làm trễ 1 bit (1 xung đồng hồ). Ngã ra C được làm trễ 2 bit và luôn bằng 0 (Giống như A). Ngã ra D giống như B nhưng trễ 3 bit. Điều này có thể so sánh với bài toán trên giấy
Muốn không sử dụng mạch cộng số nhiều bit, người ta dùng mạch (H 6.20)
(H 6.20)
Mạch (H 6.20) cần (n-1) mạch cộng và mạch trễ (FF D) cho số nhân n bit. Các cổng AND cho phép các bit của số bị nhân đi qua khi số nhân là 1, số bị nhân (với số bit bất kỳ) được cho vào mạch nối tiếp với bit LSB vào đầu tiên.
Ngã ra cổng 4 sau 4 xung Clock là 1110. Ngã ra cổng 3 luôn luôn bằng 0.
Mạch cộng A cộng số ngã ra 3 và ngã ra 4 bị trễ 1 bit:
Tương tự mạch cộng B cộng số bị nhân với kết quả ở A được làm trễ 1 bit
và mạch cộng C
Lưu ý là ở mạch (H 6.20) kết quả cho ở ngã ra mạch cộng C với bit LSB ra đầu tiên, tuy nhiên mạch này chưa quan tâm tới số nhớ.
Mạch (H 6.21) cho kết quả với số nhớ .
(H 6.21)
Và (H 6.22) là một mạch thực tế dùng ghi dịch 4 bit có ngã vào/ra song song, một mạch cộng 4 bit và một chip 4 cổng AND 2 ngã vào để thực hiện bài toán nhân.
(H 6.22)