MẠCH CỘNG 2.1 Mạch cộng nửa Gọi A là số được cộng B là số cộng S là tổng của A và B C là số nhớ ra từ phép cộng
Trước hết để đơn giản, xét mạch cộng nhị phân 1 bit
Với tổ hợp 4 trạng thái logic của A và B thì trạng thái logic ngõ ra S và C như sau:
Rút gọn biểu thức logic ta có S = AB + AB
C = AB
Nhận thấy S là ngõ ra của cổng EXOR 2 ngõ vào A và B; còn C là ngõ ra của cổng AND Từ đây vẽ được cấu trúc logic của mạch
Đây là mạch cộng nửa hay cộng chưa đủ (haft adder : HA) vì chưa có số nhớ ban đầu của phép cộng trước đó.
Bây giờ giả sử mạch đã thực hiện phép cộng lần đầu rồi nên được tổng là S0 và số nhớ C0, nếu tiếp tục cộng lần 2 khi trạng thái logic của A và B thay đổi thì S không chỉ là tổng của A và B mà gồm cả C0 trước đó. Khi này ta có mạch cộng đủ: full adder (FA)
Rút gọn biểu thức ta được S = C0 Å (A Å B) C = AB + (A Å B)
Cấu trúc của mạch logic sẽ là :
Hình 2.3.10 Mạch cộng đủ
Nhận thấy rằng : FA thực ra bao gồm trong nó 2 HA và cổng OR ở ngõ ra cho số nhớ C Cả 2 mạch HA và FA ở trên mới chỉ làm phép cộng 1 bit
2.3 cộng nhiều bit
Cộng song song
Bây giờ nếu 2 số cộng có nhiều bit hơn thì cách cộng cũng sẽ tương tự : trước hết cộng 2 bit LSB để cho bit tổng (LSB). Số nhớ được đưa tới để cộng chung với 2 bit kế tiếp bit LSB để cho bit tổng ở hàng kế tiếp cho đến phép cộng cuối cùng giữa 2 bit MSB để được bit tổng ở hàng đó, số nhớ khi này trở thành bit LSB của tổng
Hình 2.3.11 Cộng 4 bit
Đây là một mạch cộng song song vì các hàng được cộng cùng một lúc tuy nhiên như cấu trúc mạch ở trên thì các bit ra của tổng không phải là đồng thời bởi vì các phép cộng ở các bit cao thì chậm hơn do phải chờ bit nhớ ở phép cộng trước đưa tới. Tức là đã có trì hoãn làm giảm tính đồng bộ của mạch. Nếu thêm vào mạch cho phép cung cấp sẵn các bit nhớ để phục vụ cho các phép cộng ở các hàng được cùng lúc thì sẽ khắc phục được điểm này. Với công nghệ tích hợp cao, việc thêm mạch cung cấp sẵn các bit nhớ trở nên dễ dàng hơn khi đó mạch trở thành mạch cộng có số nhớ nhìn trước.
Một số IC làm phép cộng toàn phần được kể ra ở đây là
7480 (1bit), 7482 (2bit), 7483/LS83/283 (4bit)
Ví dụ : xét qua IC 74LS83
Hình 2.3.12 Kí hiệu khối và chân ra 74LS83
Trong đó 2 số 4 bit vào là A4A3A2A1 và B4B3B2B1 Số nhớ ban đầu là C0
Vậy tổng ra sẽ là C4S4S3S2S1, với C4 là số nhớ của phép cộng
Ta cũng có thể nối chồng IC cộng lại với nhau để cho số bit gấp đôi. Khi đó bit MSB (C4) của tầng đầu được nối tới ngõ vào nhớ ban đầu (C0) của tầng sau.
Hình 2.3.13 Mạch logic của 74LS83
Bảng sự thật của mạch cộng 4 bit 74LS83
Cộng nối tiếp
Ngoài cách cộng song song như đã thấy ở trên, còn một dạng mạch cộng số nhiều bit nữa gọi là mạch cộng nối tiếp. Khi này 2 bit LSB của các số được cộng trước, bit LSB của tầng được đưa ra 1 ghi dịch còn số nhớ sẽ quay trở về cộng chung với 2 bit kế tiếp bit LSB và cứ vậy cho đến 2 bit cuối cùng được cộng. Mạch ghi dịch ngõ ra dịch chuyển sang phải qua mỗi lần cộng sẽ cho ra kết quả cộng số nhớ cuối cùng trở thành bit MSB của tổng ra. Rõ ràng mạch thực hiện phép tính chậm hơn so với cộng song song, nó cũng cần 1 xung nhịp để giữ cho các mạch làm việc động bộ