1. Trang chủ
  2. » Giáo án - Bài giảng

bai tap ky thuat so chuong 3

15 864 6

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 15
Dung lượng 354,5 KB

Nội dung

• Mô tả quan hệ đầu ra với đầu vào của mạch logic dưới dạng phương trình đại số biểu diễn hoạt động của mạch điện dưới dạng biểu thức hàm số Boole.. 4 Một số biểu diễn theo hệ hai sẽ có

Trang 1

Chương 3 - ĐẠI SỐ BOOLE VÀ CỔNG LOGIC.

3.1 Đại số Boole

3.1.1 Định nghĩa

3.1.2 Các phép toán cơ bản

3.1.3 Các công thức định lí

3.2 Các dạng hàm Boole

3.2.1 Bảng chân lí (bảng sự thật)

3.2.2 Biểu thức hàm số

3.2.3 Bìa Karnaugh

3.2.4 Sơ đồ mạch logic

3.3 Các dạng chuẩn của hàm Boole

3.3.1 Dạng chuẩn 1 (tổng các Minterm - tích chuẩn)

3.3.2 Dạng chuẩn 2 (tích các Maxterm – tổng chuẩn)

3.4 Các cổng logic

3.4.1 Mạch điện cổng

3.4.2 Các cổng logic thông thường

3.4.3 Các cổng logic đặc biệt

3.5 Đơn giản hóa hàm Boole bằng phương pháp bìa Karnaugh

3.6 Đưa hàm Boole về dạng toàn NAND và toàn NOR

3.6.1 Toàn NAND

3.6.2 Toàn NOR

3.1 - Đại số Boole.

3.1.1 - Định nghĩa.

Đại số Boole

• Mô tả quan hệ đầu ra với đầu vào của mạch logic dưới dạng phương trình đại số (biểu diễn hoạt động của mạch điện dưới dạng biểu thức hàm số Boole)

• Công cụ toán học phân tích và thiết kế và ứng dụng các hệ thống KTS

• Công cụ mô tả và phân tích mạch logic cơ bản - cồng logic, và các mạch tổ hợp cổng logic

Phép tính toán số học arithmetic

Trong kỹ thuật số, những con số chủ yếu được biểu diễn như số nguyên integers

mọi vi mạch số đều chỉ có thể làm việc với số nguyên

các vi mạch microprocessor được trang bị phần cứng chuyên dụng để làm việc với những con số có dấu

phảy trôi floating point hay những con số có bậc số mũ.

người lập trình phải viết những thủ tục routines làm công cụ cho những tính toán với chữ số có dấu phẩy

trôi, từ những lệnh hoàn toàn dựa trên cơ sở bản chất số nguyên

Các tác vụ dấu phẩy trôi đòi hỏi đặc biệt nhiều thời gian và không gian lưu trữ hơn so với những tác vụ với số nguyên

Một số nguyên được biểu diễn bởi giá trị số nhị phân có thể diễn dịch bằng một vài cách thông dụng

Ví dụ: một byte 8-bit, có thể coi như một số nguyên không dấu trong phạm vi [0,255], hay một số nguyên có dấu trong phạm vi [-128, 127] Các đại lượng 16-bit cũng có thể coi là số có dấu hay không có dấu như vậy

Cách biểu diễn không dấu, mà trong đó hiển nhiên mỗi bit của một byte tương ứng với cấp số của 2ø =∑i n= i

i

a

Ví dụ: (00001011)B = (23 +21+20)D= (11)D (số thập phân)

Các số âm được biểu diễn dưới dạng số bù 2

Giả thiết muốn tạo một byte chưá số bù 2, VD: -5

Trước tiên, lấy biểu diễn 8-bit của 5, đó là 00000101, rồi bù 1 nó, được 11111010

(Tác vụ bù 1 thay thế mọi bit ‘0’ thành ‘1’, và mỗi bit ‘1’ thành ‘0’ để có được 11111010)

Tiếp theo, tạo số bù 2 bằng cách cộng số bù 1 với 1, tức là:

Trang 2

11111010 + 00000001 = 11111011

Vậy, số âm -5 được biểu diễn dưới dạng nhị phân số bù 2 là:

D

D (11111011)

)

5

(− =

Cách biểu diễn này có thuộc tính số học đúng như sau: nếu ta cộng số -5 với số +5 thì chắc rằng sẽ được 0:

11111011 + 00000101 = 00000000

(Tác vụ này đặt bit số mang carry bit, bit C, vào thanh ghi mã điều kiện).

Giá trị lưu trong ô nhớ là một chuỗi ký số ‘0’ và ‘1’ (Liệu số 11111011 có được diễn dịch là -5 hay +251, là việc người lập trình phải xem xét)

Những lệnh khác được dùng để chọn cách diễn dịch này hay cách khác Cũng còn cần phải dùng những lệnh khác tùy theo ta muốn thao tác các đại lượng 8-bit hay 16-bit nữa

Khi cung cấp số liệu cho chương trình, số cho ở hệ nào phải được kèm đuôi của hệ đó như đã nêu (trừ hệ mười thì không cần, vì là trường hợp ngầm định của assembler)

Riêng đối với số hệ mười sáu, nếu số đó bắt đầu bằng các chữ (ký tự : a … f hoặc A … F) thì phải thêm 0 vào trước, để chương trình dịch có thể hiểu được đó là một số ở hệ mười sáu chứ không phải là một tên hoặc một nhãn

Ví dụ các số viết đúng:

0011B ; số hệ hai

1201 ; số hệ mười

0ABBAH ; số hệ mười sáu, không nhầm

; với tên của ban nhạc nổi tiếng ABBA

1EF1H ; số hệ mười sáu

Nếu dữ liệu là ký tự hoặc chuỗi ký tự thì chúng phải được đóng trong cặp dấu trích dẫn đơn ‘x’ hoặc kép

“x“, thí dụ như ‘A’ hay “abcd” Chương trình dịch sẽ dịch ký tự ra mã ASCII tương ứng của nó,

vì vậy khi cung cấp dữ liệu kiểu ký tự cho chương trình, có thể dùng bản thân ký tự (được đóng trong dấu trích dẫn) hoặc mã ASCII của nó

Ví dụ, ta có thể sử dụng dữ liệu ký số là “0” hoặc mã ASCII tương ứng là 30H,

ta có thể dùng ký hiệu ‘$’ hoặc 24H hoặc 36 …

Biến và hằng.

Biến trong chương trình hợp ngữ có vai trò như nó có ở ngôn ngữ bậc cao Một biến phải được định kiểu

dữ liệu là kiểu byte hay kiểu từ word, và sẽ được chương trình dịch gán cho một địa chỉ nhất định trong bộ

nhớ Để định nghĩa các kiểu dữ liệu khác nhau, thường dùng các lệnh giả sau:

DB (define byte) : định nghĩa biến kiểu byte,

DW (define word) : định nghĩa biến kiểu từ,

DD (define double word) : định nghĩa biến kiểu từ kép

Hằng có tên Các hằng trong chương trình hợp ngữ thường được gán tên để làm cho chương trình dễ đọc

hơn Hằng có thể là kiểu số hay kiểu ký tự, việc gán tên cho hằng được thực hiện nhờ lệnh giả EQU

equate như sau:

CR EQU 0Dh ; CR là trở về đầu dòng carriage return.

LF EQU 0Ah ; LF là thêm dòng mới line feed.

Trong ví dụ trên, lệnh giả EQU gán giá trị số 13 (mã ASCII của ký tự <CR> trở về đầu dòng) cho tên CR và 10 (mã ASCII của ký tự <LF> thêm dòng mới) cho tên LF

Hằng cũng có thể là một chuỗi ký tự Trong ví dụ dưới đây, sau khi đã gán một chuỗi ký tự cho một tên: CHAO EQU ‘Hello!’

ta có thể sử dụng hằng này để định nghĩa một biến mảng khác:

MSG DB CHAO,’$’

Vì lệnh giả EQU không dành chỗ của bộ nhớ cho tên của hằng, nên có thể đặt nó khá tự do, tại những chỗ thích hợp bên trong chương trình Tuy nhiên, trong thực tế người ta thường đặt các định nghĩa này trong đoạn dữ liệu

Hằng và biến Boole.

Trang 3

Biến số Boole là:

• đại lượng mà tại các thời điểm khác nhau chỉ có thể có một trong hai giá trị là '0' hoặc '1'

• được sử dụng để biểu diễn mức logic tương ứng trạng thái của giá trị điện thế hiện hữu trên đường dây hay tại các đầu cuối vào/ra của mạch (tương ứng trạng thái '0' hay '1', VD: '0'=(0÷0,8)V; '1'=(2÷5)V-).

Biến Boole được ký hiệu bằng chữ biểu thị các giá trị logic VD: biến A là đầu vào (hay đầu ra) của một

mạch số

Các phép toán số học (cơ bản) của đại số Boole.

Ba phép toán logic cơ bản trong đại số Boole là:

Phép OR (HOẶC).

Phép AND (VÀ).

Phép NOT (PHỦ ĐỊNH).

Bảng chân trị (bảng chân lí - bảng sự thật) Truth Table Là:

• phương tiện mô tả quan hệ phụ thuộc đầu ra theo các mức logic hiện hữu tại đầu vào của mạch logic

bảng liệt kê mọi tổ hợp khả dĩ các mức logic hiện hữu tại các đầu vào A và B tương ứng với mức y

ở đầu ra, chỉ rõ kết quả hiện diện ở đầu ra ứng với bất kỳ tập hợp điều kiện trạng thái nào ở đầu vào

• số tổ hợp đầu vào bằng 2 đối với mạch có N đầu vào N

3.1.2 - Các phép toán số học (cơ bản) đối với hệ nhị phân.

Phép cộng.

Phép cộng và phép trừ các số hệ hai được thực hiện giống như làm với số hệ mười

Bảng 3.1 cho quy tắc phép cộng

Bảng 3.1 – Quy tắc phép cộng số hệ hai

y = A + B

0 0 1 1

0 1 0 1

0 1 1 0

0 0 0 1

C : nhớ (carry)

Ví dụ: Cộng hệ mười: Cộng hệ hai:

11 C : Nhớ 1111 1110

099 Số hạng thứ nhất 0110 0011

095 Số hạng thứ hai 0101 1111

194 Tổng 1100 0010

Các bộ cộng trong khối tính toán số học ALU của máy tính sẽ thực hiện các phép cộng theo cách nêu trên

Phép trừ và số bù hai.

Phép trừ

Phép trừ các số hệ hai thực hiện giống như làm với số hệ mười

Bảng 2.2 cho quy tắc phép trừ trong hệ hai

Bảng 3.2 – Quy tắc phép trừ số hệ hai

y = A - B

Trang 4

B : mượn (borrow)

Ví dụ: Trừ hệ mười: Trừ hệ hai:

1 B : Mượn 0110 0000

109 Số bị trừ 0110 1101

49 Số trừ 0011 0001

060 Hiệu 0011 1100

Số bù hai

Có thể thực hiện phép trừ bằng phép cộng: cộng số bị trừ với số đối của số trừ Số đối của số trừ tức là gía trị số trừ với dấu âm (số âm)

Vấn đề là phải biểu diễn số âm một cách thích hợp Có nhiều cách mã hoá để biểu diễn số âm trong hệ

hai, nhưng cách hay dùng nhất là mã hoá kiểu số bù hai

Bảng 3.3 chỉ rõ cách tạo số hệ hai có dấu và số bù hai trong tương quan với số hệ hai

Bảng 3.3 – Biểu diễn số hệ hai, số có dấu và số bù hai

Số 8-bit hệ hai tương đươngSố hệ mười mã hệ hai có dấuSố hệ mười theo theo mã bù haiSố hệ mười

0000 0000

0000 0001

0000 0010

0000 0011

0000 0100

0000 0101

0000 0110

0111 1101

0111 1110

0111 1111

1000 0000

1000 0001

1000 0010

1000 0011

1000 0100

1000 0101

1111 0000

1111 0001

1111 0010

1111 0011

1111 0100

1111 0101

1111 0110

1111 0111

1111 1000

1111 1001

1111 1010

1111 1011

1111 1100

1111 1101

1111 1110

1111 1111

0 1 2 3 4 5 6

… 125 126 127 128 129 130 131 132 133

… 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255

+ 0 + 1 + 2 + 3 + 4 + 5 + 6

… +125 +126 +127

- 0

- 1

- 2

- 3

- 4

- 5

… -112 -113 -114 -115 -116 -117 -118 -119 -120 -121 -122 -123 -124

- 125

- 126

- 127

+ 0 + 1 + 2 + 3 + 4 + 5 + 6

… +125 +126 +127 -128 -127 -126 -125 -124 -123

- 16

- 15

- 14

- 13

- 12

- 11

- 10

- 9

- 8

- 7

- 6

- 5

- 4

- 3

- 2

- 1 Nhận xét:

Trang 5

1) Nếu dùng 8 bits thì có 256 tổ hợp có giá trị từ 0 đến 255 (tương ứng 00 …FF hệ hex), tức là chỉ biểu diễn được số dương

2) Nếu muốn biểu diễn số âm (có dấu âm), tức là số có dấu và độ lớn sign and magnitude thì phải

mất một bit dành cho dấu (trong bảng, để dễ phân biệt, bit b7 được in nghiêng đậm) và 7 bits còn

lại cho giá trị số Bằng cách này, với 8 bits sẽ có khả năng biểu diễn cả số dương và số âm trong khoảng -127 … -0, +0 … +127 (chú ý: hai giá trị 0 biểu diễn không giống nhau !)

3) Số bù hai được tạo ra theo cách gần giống như kiểu số có dấu và độ lớn, nhưng nó dùng cả 8 bits để biểu diễn giá trị của số được mã hoá Mã bù hai dành 1 bit có khả năng biểu diễn các số âm và dương trong khoảng -128 … 0 … +127 Một số dương có mã bù hai giống như mã hệ hai thông thường

4) Một số biểu diễn theo hệ hai sẽ có các giá trị khác nhau nếu hiểu đó là mã để biểu diễn số theo kiểu hệ hai có dấu hoặc kiểu số bù hai Nói cách khác, một cụm các số ‘0’ và ‘1’ sẽ được cảm nhận khác nhau khi nó biểu diễn giá trị số theo các mã khác nhau Cho dù có được biểu diễn bằng số hệ hai có dấu hay số bù hai thì các số âm đều có bit b7=1, còn các số dương có bit b7=0

Cách tính số bù hai: Về mặt toán học thì số bù hai của một số chính là số đối của nó Như vậy, một số dương sẽ có số bù hai là một số âm cùng giá trị tuyệt đối và ngược lại

Quy tắc: Muốn tìm số bù hai (còn gọi là bù số học) của một số A, ta thực hiện các bước sau:

1) Biểu diễn số A theo mã hệ hai của nó.

2) Tìm số bù một (bù logic) của số đó (bằng cách đảo bit).

3) Cộng 1 vào số bù một ở trên để nhận được số bù hai của số A.

Ghi chú: Khi có một số âm được biểu diễn theo mã bù hai nếu muốn tính giá trị tuyệt đối của nó ta cũng áp dụng quy tắc này (các bước 2,3)

Ví dụ: Tìm số bù hai của số 13

13 = 0000 1101 B (mã hệ hai của 13)

Số bù một của 13: 1111 0010 B (đảo bit của số trên)

Cộng thêm 1 vào: 1

Số bù hai của 13: 1111 0011 B (tức là -13)

Ứng dụng số bù hai trong phép trừ:

Ví dụ: 15 – 13 = ?

Có thể viết phép trừ trên như sau: 15 – 13 = 15 + (-13) Như vậy có thể dùng số (-13) như ở trên

15 … 0000 1111

(-13) … 1111 0011

Tổng … 0000 0010 (nhớ 1)

Nếu không để ý đến số nhớ thì có kết quả là 2

Ví dụ: 12 – 13 = ?

12 … 0000 1100

(-13) … 1111 0011

Tổng … 1111 1111 (tức là -1)

Đây là một số âm (bit b7=1) với giá trị tuyệt đối là 1 (tra bảng 3.3)

Mặt khác, cũng có thể tìm được giá trị tuyệt đối của kết quả bằng cách tìm số bù hai của nó:

Mã bù hai của kết quả: … 1111 1111

Số bù một của kết quả: … 0000 0000

Cộng 1 để tìm giá trị tuyệt đối: … 0000 0001

Phép nhân.

Bảng 3.4 cho quy tắc phép nhân các số hệ hai

Bảng 3.4 – Phép nhân hệ hai

y = A B

Trang 6

0 1 0

Ví dụ:

Độ dài cực đại của kết quả trong trường hợp này là 8 bits Nếu các toán hạng dài 8 (hoặc 16) bits thì độ dài cực đại của kết quả là 16 (hoặc 32) bits Mỗi lần nhân một bit khác 0 của số nhân với số bị nhân ta thu được chính số bị nhân, tức là nếu dịch trái nó một số lần tương ứng với vị trí của bit khác 0 đó trong số nhân ta sẽ tạo ra một thành phần của tổng tích lũy Tổng của các thành phần như trên là kết quả của phép nhân

Như vậy, có thể thực hiện phép nhân theo thuật toán cộng và dịch (trên cơ sở các bộ cộng và dịch) như sau:

1) Thành phần đầu tiên của tổng tích lũy thu được là tích của số LSB trong số nhân với số bị nhân Nếu LSB = 0 thì thành phần này cũng bằng 0, còn nếu LSB = 1 thì thành phần này bằng chính số bị nhân

2) Mỗi thành phần thứ i tiếp theo của tổng tích lũy cũng được tính bằng cách tương tự, nhưng phải dịch trái i bits (có thể bỏ qua thành phần bằng 0).

3) Tổng của các tổng thành phần là tích cần tìm

Minh họa thuật toán này bằng cách rút gọn ví dụ trên:

Phép chia.

Phép chia là phép tính ngược của phép nhân, suy ra là có thể thực hiện bằng các phép trừ và dịch liên tiếp cho tới khi không thể trừ được nữa (do không còn gì để trừ hoặc số bị trừ nhỏ hơn số chia)

Thông thường, ta thực hiện phép chia bằng tay

Vấn đề là khi thực hiện phép chia bằng tay (như ví dụ sau đây) cần phải dự đoán và kiểm tra để tìm đúng kết quả – công việc này rất khó khăn đối với các mạch điện tử trong khối tính toán số học (vốn là các phần tử thực hiện phép cộng và dịch trong máy tính)

Khắc phục vấn đề: Giải thuật sẽ là:

1) Đổi số chia ra số bù hai của nó (để bước sau làm tính trừ bằng phép cộng)

2) Lấy số bị chia trừ đi số chia Nếu kết quả này có bit dấu bằng 0 (có nghĩa là phần này của số bị chia chia được cho số chia) thì bit tương ứng của thương bằng 1 Nếu kết quả có bit dấu bằng 1 (có nghĩa là phần này của số bị chia không chia được cho số chia) thì bit tương ứng của thương bằng 0 và buộc phải khôi phục lại giá trị ban đầu của số bị chia bằng cách cộng kết quả này với số chia ở mã hệ hai

3) Dịch trái kết quả thu được ở trên và làm lại bước 2 cho đến khi nhận được kết quả cuối cùng là 0 (chia hết) hoặc nhỏ hơn số chia (chia còn dư)

Ví dụ chia bằng tay: 35/5=?

Trang 7

Ví dụ thực hiện phép chia với giải thuật nêu trên trong hệ hai: 36/5 = 7 dư 1.

Các bước tính toán theo thuật toán phép chia nêu trên sẽ là:

1) Đổi số chia( )5 D =(0101)B ra số bù hai của nó là (1011 )B

2) Lấy số bị chia trừ đi số chia Số bị chia (36)D =(100100)B và số bù hai của nó là (1011100)B

Bảng 3.5 - VD phép chia nhị phân

0 100100

1 011 000

Số bị chia (36D) Số chia ở mã bù hai để cộng Tổng, kết quả 1 (KQ1 bit thương = 0)

1 111100

0 101 000

0 100100

KQ1 có bit dấu =1 → khôi phục lại số bị chia Số chia ở mã hệ hai để cộng với KQ1

Số bị chia được khôi phục

1 00100 0

1 011 000

0 100000 1

Số bị chia dịch trái 1 lần Số chia ở mã bù hai để cộng Tổng, kết quả 2 (KQ2 bit thương = 1)

1 00000 0

1 011 000

0 011000

0 11000 0

1 011 000

0 001 000

1

1

KQ2 có bit dấu =0 → dịch trái lần hai Số chia ở mã bù hai để cộng

Tổng, kết quả 3 (KQ3 bit thương = 1) KQ3 có bit dấu =0 → dịch trái lần 3 Số chia ở mã bù hai để cộng

Tổng, kết quả 4 (KQ4 bit thương = 1)

↑ Bit dấu 0111 Kết quả phép chia (KQ1,KQ2,KQ3,KQ4); dư 1

3.2 - Các dạng hàm Boole.

Các phép toán số học (cơ bản) của đại số Boole.

Ba phép toán logic cơ bản trong đại số Boole là:

Phép OR (HOẶC).

Phép AND (VÀ).

Phép NOT (KHÔNG).

Bảng chân trị (bảng chân lí - bảng sự thật) Truth Table Là:

• phương tiện mô tả quan hệ phụ thuộc đầu ra theo các mức logic hiện hữu tại đầu vào của mạch logic

bảng liệt kê mọi tổ hợp khả dĩ các mức logic hiện hữu tại các đầu vào A và B tương ứng với mức x

ở đầu ra, chỉ rõ kết quả hiện diện ở đầu ra ứng với bất kỳ tập hợp điều kiện trạng thái nào ở đầu vào

• số tổ hợp đầu vào bằng 2 đối với mạch có N đầu vào N

Hàm OR (OR Operation): HOẶC.

Biểu thức Boole phép toán OR:

B A

y= ⊕

Khi đầu vào bất kỳ có giá trị '1' thì đầu ra có KQ = '1'

Chỉ khi tất cả các đầu vào đều '0' thì đầu ra mới có KQ= '0'

Biểu thức được đọc là: "y bằng A HOẶC B ".

Trang 8

Hình 3.1 Bảng chân trị định nghĩa phép HOẶC OR và cổng OR.

Cổng HOẶC (OR Gate).

Là mạch số thực hiện phép toán logic OR, có hai đầu vào trở lên và một đầu ra ứng với tổ hợp OR các đầu vào

Đầu ra sẽ là '1' khi có đầu vào bất kỳ có giá trị là '1'

Đầu ra sẽ là '0' chỉ khi tất cả các đầu vào đều là '0'

Lưu ý: Dạng sóng tín hiệu đầu ra mạch cổng OR xuất hiện xung tạp nhiễu glich tại thời điểm các đầu vào

nằm trong khoảng mức logic không xác định (do độ dốc xung tín hiệu đầu vào và thời gian chuyển đổi trạng thái mạch logic số)

Hàm AND (AND Operation): VÀ.

Biểu thức Boole phép toán OR:

B A

y= ⊗

Khi đầu vào bất kỳ có giá trị '1' thì đầu ra có KQ = '0'

Chỉ khi tất cả các đầu vào đều '1' thì đầu ra mới có KQ= '1'

Biểu thức được đọc là: "y bằng A VÀ B ".

Hình 3.2 Bảng chân trị định nghĩa phép VÀ AND và cổng AND.

Cổng VÀ (AND Gate).

Là mạch số thực hiện phép toán logic AND, có hai đầu vào trở lên và một đầu ra ứng với tích AND của các đầu vào logic

Đầu ra sẽ là '1' chỉ khi tất cả các đầu vào đều là '1'

Đầu ra sẽ là '0' khi có đầu vào bất kỳ có giá trị là '0'

Lưu ý: Cổng AND có thể dùng như một mạch cấm inhibit circuit khi một đầu vào được coi như tín hiệu

điều khiển (có mức logic quyết định liệu có cho tín hiệu đầu vào kia tới đầu ra không)

Hàm NOT (NOT Operation): KHÔNG.

Hàm NOT là hàm một biến Phép toán NOT là phép đảo inverse hay phép bù complement.

Biểu thức Boole phép toán NOT:

A

y=

Khi đầu vào có giá trị '1' thì đầu ra có KQ = '0'

Khi đầu vào có giá trị '0' thì đầu ra có KQ= '1'

Biểu thức được đọc là: "y bằng NOT A" hay "y bằng đảo của A" (đảo=inverse), hoặc "y bằng bù của A" (bù=complement).

Hình 3.3 Bảng chân trị định nghĩa phép KHÔNG NOT và ký hiệu sơ đồ của bộ đảo INVERTER.

Bộ đảo (Inverter).

Là mạch số thực hiện phép toán logic NOT, chỉ có một đầu vào và mức logic của đầu ra luôn ngược với mức logic đầu vào

Trang 9

Là mạch đảo (bù) tín hiệu đầu vào, biểu thức đầu ra luôn bằng biểu thức đầu vào có dấu gạch ngang trên đầu Phối hợp mạch đảo tạo nên các cổng phủ định NOR và NAND

Cổng HOẶC PHỦ-ĐỊNH (NOR Gate).

Là mạch số thực hiện cổng logic phủ định NOR, vận hành như cổng OR kết hợp bộ đảo INVERTER

Hình 3.4 Bảng chân trị, ký hiệu cổng NOR và mạch tương đương

Đầu ra xuống mức thấp (sẽ là '0') khi có đầu vào bất kỳ ở mức cao (có giá trị là '1')

Đầu ra lên mức cao (sẽ là '1') chỉ khi tất cả các đầu vào đều ở mức thấp (là '0')

Cổng VÀ PHỦ-ĐỊNH (NAND Gate).

Là mạch số thực hiện cổng logic phủ định NAND, vận hành như cổng AND kết hợp bộ đảo INVERTER

Hình 3.5 Bảng chân trị, ký hiệu cổng NAND và mạch tương đương

Đầu ra xuống mức thấp (sẽ là '0') chỉ khi tất cả các đầu vào đều ở mức cao (có giá trị là '1')

Đầu ra lên mức cao (sẽ là '1') khi có đầu vào bất kỳ ở mức thấp (là '0')

Mạch cổng LOẠITRỪ-OR (EX-OR Gate).

Là mạch số tạo tín hiệu ra ở mức cao mỗi khi hai đầu vào ở mức logic đối nghịch nhau

Biểu thức: y= A.B+A.B = AB

o Chỉ có hai đầu vào, một đầu ra

o Đầu ra tích cực ở mức cao chỉ khi hai đầu vào ở các mức tích cực khác nhau (có duy nhất một đầu vào ở mức cao)

Các chip quad EX-OR:

 74LS86 Quad EX-OR (họ TTL);

 74C86 Quad EX-OR (họ CMOS);

 74HC86 Quad EX-OR (họ CMOS tốc độ cao);

Hình 3.6 Mạch cổng EX-OR

Mạch cổng LOẠITRỪ-NOR (EX-NOR Gate).

Là mạch số tạo tín hiệu ra ở mức cao mỗi khi hai đầu vào ở cùng mức logic

Biểu thức: y= A.B+ A.B = AB

Chỉ có hai đầu vào, một đầu ra

Đầu ra tích cực ở mức cao chỉ khi hai đầu vào ở cùng mức logic

Các chip quad EX-NOR:

 74LS266 Quad EX-OR (họ TTL);

Trang 10

 74C266 Quad EX-OR (họ CMOS);

 74HC266 Quad EX-OR (họ CMOS tốc độ cao);

Hình 3.7 Mạch cổngt EX-NOR

Cổng NAND, tính đa dụng trong sơ đồ mạch logic số

Khả năng cổng NAND thực hiện hàm Boole bất kỳ

Hình 3.8 Dùng cổng NAND thực hiện các hàm Boole Tương tự cho mạch dùng toàn NOR:

Hình 3.9 Dùng cổng NOR thực hiện các hàm Boole

Ký hiệu sơ đồ của mạch logic số.

Ký hiệu chuẩn và ký hiệu thay thế

Ngày đăng: 10/02/2015, 06:00

TỪ KHÓA LIÊN QUAN

w