Mạch số học kỹ thuật số

Trong chương này, chúng ta hãy thảo luận về các mạch số học cơ bản như bộ cộng nhị phân và bộ trừ nhị phân. Các mạch này có thể hoạt động với các giá trị nhị phân 0 và 1.

Quảng cáo nhị phân

Phép toán số học cơ bản nhất là phép cộng. Mạch thực hiện phép cộng hai số nhị phân được gọi làBinary adder. Đầu tiên, chúng ta hãy triển khai một bộ cộng, thực hiện việc cộng hai bit.

Một nửa Adder

Bộ cộng nửa là một mạch tổ hợp, thực hiện phép cộng hai số nhị phân A và B là của single bit. Nó tạo ra tổng hai đầu ra, S & carry, C.

Các Truth table của Half adder được hiển thị bên dưới.

Đầu vào Kết quả đầu ra
A B C S
0 0 0 0
0 1 0 1
1 0 0 1
1 1 1 0

Khi chúng ta thực hiện phép cộng hai bit, tổng kết quả có thể có các giá trị từ 0 đến 2 ở dạng thập phân. Chúng ta có thể biểu diễn các chữ số thập phân 0 và 1 bằng bit đơn trong hệ nhị phân. Tuy nhiên, chúng ta không thể biểu diễn chữ số thập phân 2 với một bit trong hệ nhị phân. Vì vậy, chúng tôi yêu cầu hai bit để biểu diễn nó dưới dạng nhị phân.

Giả sử, tổng, S là bit quan trọng nhất và mang, C là bit quan trọng nhất của tổng kết quả. Đối với ba kết hợp đầu tiên của đầu vào, mang, C bằng 0 và giá trị của S sẽ bằng 0 hoặc một dựa trênnumber of oneshiện tại các đầu vào. Tuy nhiên, đối với kết hợp cuối cùng của các đầu vào, carry, C là một và tổng, S là 0, vì tổng kết quả là hai.

Từ bảng Truth, chúng ta có thể viết trực tiếp Boolean functions cho mỗi đầu ra như

$$ S = A \ oplus B $$

$ C = AB $

Chúng ta có thể thực hiện các chức năng trên với cổng Ex-OR 2 đầu vào & cổng AND 2 đầu vào. Cáccircuit diagram của bộ cộng Half được hiển thị trong hình sau.

Trong mạch trên, một cổng Ex-OR hai đầu vào & hai cổng AND đầu vào tạo ra tổng, S & mang, C. Do đó, Half-adder thực hiện việc cộng hai bit.

Adder đầy đủ

Bộ cộng đầy đủ là một mạch tổ hợp, thực hiện addition of three bitsA, B và C trong . Ở đâu, A & B là hai bit đáng kể song song và C trong là các bit thực hiện, được tạo ra từ giai đoạn trước. Bộ cộng đầy đủ này cũng tạo ra tổng hai đầu ra, S & carry, C out , tương tự như bộ cộng Half.

Các Truth table of Full adder được hiển thị bên dưới.

Đầu vào Kết quả đầu ra
A B Cin Cout S
0 0 0 0 0
0 0 1 0 1
0 1 0 0 1
0 1 1 1 0
1 0 0 0 1
1 0 1 1 0
1 1 0 1 0
1 1 1 1 1

Khi chúng ta thực hiện phép cộng ba bit, tổng kết quả có thể có các giá trị từ 0 đến 3 ở dạng thập phân. Chúng ta có thể biểu diễn các chữ số thập phân 0 và 1 bằng bit đơn trong hệ nhị phân. Tuy nhiên, chúng ta không thể biểu diễn các chữ số thập phân 2 và 3 bằng một bit trong hệ nhị phân. Vì vậy, chúng tôi yêu cầu hai bit để biểu diễn hai chữ số thập phân đó trong hệ nhị phân.

Giả sử, tổng, S là bit có ý nghĩa ít nhất và thực hiện, C ra là bit quan trọng nhất của tổng kết quả. Có thể dễ dàng điền các giá trị của đầu ra cho tất cả các tổ hợp đầu vào trong bảng chân trị. Chỉ cần đếmnumber of oneshiện ở đầu vào và viết số nhị phân tương đương ở đầu ra. Nếu C trong bằng 0, thì bảng chân trị bộ cộng đầy đủ giống như bảng chân trị bộ cộng Half.

Chúng tôi sẽ nhận được những điều sau Boolean functions cho mỗi đầu ra sau khi đơn giản hóa.

$$ S = A \ oplus B \ oplus C_ {in} $$

$ c_ {out} = AB + \ left (A \ oplus B \ right) c_ {in} $

Tổng, S bằng một, khi số lẻ xuất hiện ở các đầu vào. Chúng ta biết rằng cổng Ex-OR tạo ra một đầu ra, là một hàm số lẻ. Vì vậy, chúng ta có thể sử dụng hai cổng Ex-OR 2 đầu vào hoặc một cổng Ex-OR 3 đầu vào để tạo ra tổng, S. Chúng ta có thể thực hiện carry, C out bằng cách sử dụng hai cổng AND 2 đầu vào & một cổng OR. Cáccircuit diagram of Full adder được hiển thị trong hình sau.

Bộ cộng này được gọi là Full adderbởi vì để triển khai một bộ cộng Đầy đủ, chúng tôi yêu cầu hai bộ cộng Half và một cổng OR. Nếu C trong bằng 0, thì bộ cộng Đầy đủ trở thành bộ cộng Một nửa. Chúng ta có thể xác minh điều đó dễ dàng từ sơ đồ mạch trên hoặc từ các hàm Boolean của đầu ra của bộ cộng đầy đủ.

Trình quảng cáo nhị phân 4 bit

Bộ cộng nhị phân 4 bit thực hiện addition of two 4-bit numbers. Cho các số nhị phân 4 bit, $ A = A_ {3} A_ {2} A_ {1} A_ {0} $ và $ B = B_ {3} B_ {2} B_ {1} B_ {0} $. Chúng ta có thể triển khai bộ cộng nhị phân 4 bit theo một trong hai cách sau.

  • Sử dụng một bộ cộng Half để thực hiện việc thêm hai bit quan trọng ít nhất và ba bộ cộng đầy đủ để thực hiện việc bổ sung ba bit quan trọng cao hơn.

  • Sử dụng bốn bộ cộng Đầy đủ để đồng nhất. Kể từ đó, ban đầu carry C trong là số không, bộ cộng đầy đủ được sử dụng để bổ sung thêm các bit trọng số thấp nhất trở thành một nửa bộ cộng.

Hiện tại, chúng tôi đã xem xét cách tiếp cận thứ hai. Cácblock diagram của bộ cộng nhị phân 4 bit được hiển thị trong hình sau.

Ở đây, 4 bộ cộng đầy đủ được xếp tầng. Mỗi bộ cộng đầy đủ nhận các bit tương ứng của hai đầu vào song song A & B. Đầu ra thực hiện của một bộ cộng đầy đủ sẽ là đầu vào thực hiện của bộ cộng đầy đủ bậc cao hơn tiếp theo. Bộ cộng nhị phân 4 bit này tạo ra tổng kết quả có nhiều nhất là 5 bit. Vì vậy, thực hiện giai đoạn cuối Bộ cộng đầy đủ sẽ là MSB.

Bằng cách này, chúng ta có thể triển khai bất kỳ bộ cộng nhị phân bậc cao nào chỉ bằng cách xếp tầng số bộ cộng Đầy đủ được yêu cầu. Bộ cộng nhị phân này còn được gọi làripple carry (binary) adder bởi vì mang truyền (gợn sóng) từ giai đoạn này sang giai đoạn tiếp theo.

Dấu trừ nhị phân

Mạch thực hiện phép trừ hai số nhị phân được gọi là Binary subtractor. Chúng ta có thể thực hiện phép trừ nhị phân theo hai phương pháp sau.

  • Cascade Các dấu trừ đầy đủ
  • Phương pháp bổ sung của 2

Trong phương pháp đầu tiên, chúng ta sẽ nhận được một bộ trừ nhị phân n-bit bằng cách xếp tầng các số trừ đầy đủ 'n'. Vì vậy, trước tiên bạn có thể triển khai Half subtractor và Full subtractor, tương tự như Half adder & Full adder. Sau đó, bạn có thể triển khai một bộ trừ nhị phân n-bit, bằng cách xếp tầng các số trừ đầy đủ 'n'. Vì vậy, chúng ta sẽ có hai mạch riêng biệt để cộng và trừ hai số nhị phân.

Trong phương pháp thứ hai, chúng ta có thể sử dụng cùng một bộ cộng nhị phân để trừ hai số nhị phân chỉ bằng cách thực hiện một số sửa đổi trong đầu vào thứ hai. Vì vậy, hoạt động cộng nhị phân nội bộ diễn ra nhưng, đầu ra là phép trừ kết quả.

Chúng ta biết rằng phép trừ hai số nhị phân A & B có thể được viết dưới dạng,

$$ AB = A + \ left ({2} của \: lời khen \: trong số \: B \ phải) $$

$ \ Rightarrow AB = A + \ left (lời khen của {1} \: of \: B \ right) + 1 $

Dấu trừ nhị phân 4 bit

Bộ trừ nhị phân 4 bit tạo ra subtraction of two 4-bit numbers. Cho các số nhị phân 4 bit, $ A = A_ {3} A_ {2} A_ {1} A_ {0} $ và $ B = B_ {3} B_ {2} B_ {1} B_ {0} $. Bên trong, hoạt động của bộ trừ nhị phân 4 bit tương tự như hoạt động của bộ cộng nhị phân 4 bit. Nếu các bit bình thường của số nhị phân A, các bit bổ sung của số nhị phân B và mang (mượn) ban đầu, C trong như một được áp dụng cho bộ cộng nhị phân 4 bit, thì nó trở thành bộ trừ nhị phân 4 bit. Cácblock diagram của bộ trừ nhị phân 4 bit được hiển thị trong hình sau.

Bộ trừ nhị phân 4 bit này tạo ra đầu ra có nhiều nhất 5 bit. Nếu số nhị phân A lớn hơn số nhị phân B, thì MSB của đầu ra bằng 0 và các bit còn lại giữ độ lớn của AB. Nếu số nhị phân A nhỏ hơn số nhị phân B, thì MSB của đầu ra là một. Vì vậy, lấy phần bù của sản lượng 2 để có được độ lớn của AB.

Bằng cách này, chúng ta có thể triển khai bất kỳ bộ trừ nhị phân bậc cao nào chỉ bằng cách xếp tầng số lượng Bộ cộng đầy đủ cần thiết với các sửa đổi cần thiết.

Quảng cáo nhị phân / Dấu trừ

Mạch, có thể được sử dụng để thực hiện phép cộng hoặc trừ hai số nhị phân bất kỳ lúc nào được gọi là Binary Adder / subtractor. Cả hai, Bộ cộng nhị phân và Bộ trừ nhị phân đều chứa một tập hợp các bộ cộng Đầy đủ, được xếp theo tầng. Các bit đầu vào của số nhị phân A được áp dụng trực tiếp trong cả bộ cộng nhị phân và bộ trừ nhị phân.

Có hai sự khác biệt trong đầu vào của bộ cộng đầy đủ có trong bộ cộng nhị phân và bộ trừ nhị phân.

  • Các bit đầu vào của số nhị phân B được áp dụng trực tiếp cho các bộ cộng Đầy đủ trong Bộ cộng nhị phân, trong khi các bit bổ sung của số nhị phân B được áp dụng cho các bộ cộng Đầy đủ trong Bộ cộng nhị phân.

  • Giá trị mang ban đầu, C 0 = 0 được áp dụng trong bộ cộng nhị phân 4 bit, trong khi giá trị mang ban đầu (mượn), C 0 = 1 được áp dụng trong bộ trừ nhị phân 4 bit.

Chúng tôi biết rằng một 2-input Ex-OR gatetạo ra một đầu ra, giống với đầu vào đầu tiên khi đầu vào khác bằng 0. Tương tự, nó tạo ra một đầu ra, là phần bổ sung của đầu vào đầu tiên khi đầu vào khác là một.

Do đó, chúng ta có thể áp dụng các bit đầu vào của số nhị phân B, cho các cổng Ex-OR 2 đầu vào. Đầu vào khác cho tất cả các cổng Ex-OR này là C 0 . Vì vậy, dựa trên giá trị của C 0 , các cổng Ex-OR tạo ra các bit bình thường hoặc bổ sung của số nhị phân B.

Quảng cáo nhị phân 4-bit / Dấu trừ

Bộ cộng / trừ nhị phân 4 bit tạo ra phép cộng hoặc phép trừ hai số 4 bit dựa trên giá trị của giá trị mang hoặc mượn ban đầu, 0 . Cho các số nhị phân 4 bit, $ A = A_ {3} A_ {2} A_ {1} A_ {0} $ và $ B = B_ {3} B_ {2} B_ {1} B_ {0} $. Hoạt động của bộ cộng / trừ nhị phân 4 bit tương tự như hoạt động của bộ cộng nhị phân 4 bit và bộ trừ nhị phân 4 bit.

Áp dụng các bit thông thường của số nhị phân A và B & mang hoặc mượn ban đầu, C 0 từ bên ngoài vào bộ cộng nhị phân 4 bit. Cácblock diagram của bộ cộng / trừ nhị phân 4 bit được hiển thị trong hình sau.

Nếu giá trị mang ban đầu, 0 là 0, thì mỗi bộ cộng đầy đủ nhận các bit thông thường của số nhị phân A & B. Vì vậy, bộ cộng / trừ nhị phân 4 bit tạo ra đầu ra, làaddition of two binary numbers A & B.

Nếu mượn ban đầu, 0 là một, thì mỗi bộ cộng đầy đủ sẽ nhận các bit bình thường của số nhị phân A và các bit bổ sung của số nhị phân B. Vì vậy, bộ cộng / trừ nhị phân 4 bit tạo ra đầu ra, làsubtraction of two binary numbers A & B.

Do đó, với sự trợ giúp của các cổng Ex-OR bổ sung, cùng một mạch có thể được sử dụng cho cả phép cộng và phép trừ hai số nhị phân.