PHEÙP AND LOGIC

Một phần của tài liệu giáo trình kiến trúc máy tính 2 - phan văn nghĩa (Trang 29)

CHƯƠNG 3 : CỔNG LOGIC & MẠCH SỐ

3.4 PHEÙP AND LOGIC

Phép nhân giữa 2 bieán A và B, kết quả bằng F được biểu diễn như sau: F = A.B = AB đọc là A vaø B

A B F = AB 0 0 0 0 1 0 1 0 0 1 1 1 Coång AND

Coång AND 2 biến vào được biểu diễn trên hình 3-2.

Hình 3-2: Cổng AND Hoạt động của cổng AND như sau:

• Cổng AND hoạt động giống như phép nhân thường giữa 1 và 0

• Lối ra bằng 1 chỉ khi tất cả các lối vào đều bằng 1

• Lối ra bằng 0 khi một trong các lối vào bằng 0

3.5 PHÉP BÙ (NOT OPERATION)

Phép tốn bù khơng giống như phép OR và AND phải cần từ 2 biến trở lên. Phép bù chỉ cần một biến đơn. Ví dụ, nếu A là biến thì phép lấy bù của A có thể biểu diễn như sau:

F = A đọc là F bằng A đảo

Phép đảo còn gọi là phép lấy bù ( complement) Ở đây dấu đảo để biểu thị phép toán phủ định. Rõ ràng rằng nếu A = 0 thì F=A =1

nếu A=1 thì F = A = 0

Cổng NOT (inverter)

Hình 3-3 là ký hiệu của cổng NOT (đảo) hay còn gọi là Inverter.

Hình 3-3: Cổng NOT

Cổng NOT chỉ có một lối vào và một lối ra mà mức logic lối ra luôn

luôn đảo ngược với mức logic lối vào F = A.

3.6 MÔ TẢ MẠCH LOGIC BẰNG ĐẠI SỐ BOOL

Một mạch logic bất kỳ, cho duø phức tạp đến đâu, cũng có thể mơ tả bằng cách dùng đại số Bool. Các cổng logic OR, AND và NOT là các cổng cơ bản xây dựng nên các mạch logic. Ví dụ chúng ta xét mạch logic trên hình hình 3-4. B A AB F C Hình 3-4

Mạch này có 3 biến vào A, B và C. Lối ra là F. Dễ dàng thấy được biểu thức lối ra của mạch sẽ laø:

F = AB + C

Biểu thức lối ra của cổng AND là AB. Lối ra của cổng AND lại nối tới lối vào của cổng OR . Vì vậy lối ra cuối cùng F = AB + C.

Để tránh hiểu lầm, đôi khi người ta sử dụng dấu ngoặc đơn trong biểu thức. Điều này cũng giống như qui tắc trong đại số thường để qui định trật tự phép toán.

Chúng ta hãy xem xét hình 3-5 sau đây:

Hình 3-5

Kết quả F = (A+B)C. Ở đây nếu không sử dụng dấu ngoặc đơn sẽ gây hiểu lầm là lấy B AND với C rồi OR với A.

Mạch logic có chứa cổng đảo

Khi một cổng đảo hiện diện trên sơ đồ mạch logic, thì lối ra của nó chỉ đơn giản là đảo của biến vào. Xét sơ đồ hình 3-6.

Hình 3-6 F = A + B

Hình 3-7

F = A+B

3.7 TÍNH GIÁ TRỊ CỦA MỘT BIỂU THỨC BOOL

Khi có được một biểu thức đại số Bool cho một mạch logic ta có thể ước lượng dễ dàng giá F đối với mọi tổ hợp khả dó của các biến.

Ví dụ: Cho biểu thức Bool F = ABC(A+D) Tính F , biết A=0, B=1, C=1 và D=1.

Cũng như trong đại số thường, có thể đặt giá trị các biến vào biểu thức Bool để tính. Kết quả như sau:

F = 0.1.1(0+1) = 1.1.1( 0+1) = 1.1.1 (1) F F A B B A = 1.0 = 0

3.8 THỰC HIỆN MẠCH LOGIC TỪ BIỂU THỨC BOOL

Có thể thực hiện một mạch logic trực tiếp từ biểu thức Bool. Ví dụ để thực hiện mạch logic theo biểu thức F = ABC, có thể dùng một cổng AND 3 lối vào. Để thực hiện mạch F = A+ B thì cần một cổng đảo (cho A) và một cổng OR. Mạch thực hiện hàm F = AC + BC + ABC cho trên hình 3-8.

Hình 3-8

3.9 CỔNG NOR, NAND VÀ XOR

Ngồi các cổng OR, AND và NOT cịn có 3 loại cổng khác cũng được sử dụng phổ biến trong máy tính đó là NOR, NAND và XOR.

Cổng NOR

Kyù hiệu cổng NOR giống như cổng OR chỉ có khác là nó có một vịng trịn nhỏ ở lối ra (hình 3-9) để chỉ ra rằng: Cổng NOR gồm một cổng OR và một cổng NOT.

Hình 3-9: Cổng NOR Bảng sự thật cho cổng NOR như sau:

A B A+B A+B 0 0 0 1 0 1 1 0 1 0 1 0 1 1 1 0

Loái ra NOR chỉ ở trạng thái 1 khi tất cả các lối vào đều ở trạng thái 0.

Cổng NAND

Hình 3-10: Cổng NAND

NAND hồn tồn giống cổng AND chỉ khác là có một vịng trịn ở lối ra để chỉ ra rằng phải thực hiện phép đảo. Nói cách khác NAND giống như một cổng AND và theo sau là một cổng INVERTER. Bảng sự thật của NAND như sau:

A B AB AB 0 0 0 1 0 1 0 1 1 0 0 1 1 1 1 0

Lối ra của cổng AND sẽ lên cao khi tất cả các lối vào đều cao, trong khi đó lối ra của cổng NAND sẽ lên cao khi có một lối vào ở mức thấp.

Cổng XOR

Coång XOR (Exclusive - OR) được thực hiện từ các 2 coång AND, 2 coång NOT và 1 cổng OR theo sơ đồ nối sau đây:

Hình 3-11: Sơ đồ nối bên trong cổng XOR

Hình 3-12: Ký hiệu cổng XOR

Bảng sự thật của XOR như sau. A B A+B A⊕B 0 0 0 0 0 1 1 1 1 0 1 1 1 1 1 0

Tính chất của XOR là nếu 2 biến vào giống nhau (cùng bằng 0 hoặc cùng bằng 1) thì lối ra bằng 0, nếu 2 biến vào khác nhau thì lối ra sẽ bằng 1. Người ta sử dụng kết quả này để so sánh 2 bit với nhau. Mạch XOR cũng được dùng để phát hiện lỗi theo phương pháp kiểm tra chẳn lẻ trong các quá trình truyền số liệu.

3.10 CÁC ĐỊNH LYÙ BOOL

a) Các định lý Bool cho biến ñôn

Trong các định lý sau, x là biến Bool nó có thể nhận giá trị 0 hoặc 1. Có 8 định lý Bool một biến như bảng sau.

x.0=0 x.1=x

x.x=x x.x=0

x+0=x x+1=1

x+x=x x+x=1

b) Các định lý Bool nhiều biến

Trong các định lý sau đây x, y, z là các biến. x+y = y+x Hốn vị phép cộng x.y = y.x Hoán vị phép nhân x+ (y+z) = (x+y)+z Trao đổi phép cộng x(yz) = (xy)z = xyz Trao đổi phép nhân

x(y+z) = xy + xz Khai trieån phép cộng (w+x)(y+z) = wy+wz+xy+xz Khai triển phép nhân

x+xy = x Nhoùm phép cộng x+xy = x+y

Định lý cuối cùng có thể kiểm tra bằng cách thử số.

Các định lý Bool có thể dùng để đơn giản các biểu thức. Sau đây là vài ví dụ minh họa.

Ví dụ 1: Đơn giản biểu thức F = ABD + ABD Nhóm số hạng AB thì F = AB( D+D ) =AB Ví dụ 2: Đơn giản biểu thức F = ( A+B )(A+B ) F = AA + AB + BA +BB

= AB+BA+B = B( A+A +1 ) = B

3.11 ĐỊNH LÝ DE MORGAN

Nhà toán học De Morgan có hai định lý có ý nghóa rất quan trọng trong đại số Bool. Chúng được phát biểu dưới dạng 2 biểu thức sau:

( x+y ) = x . y (x.y) = x + y

Có thể phát biểu định lý như sau: Phủ định của một tổng bằng tích các phủ định. Phủ định của một tích bằng tổng các phủ định.

Mặc dù định lý được phát biểu cho x và y là các biến đơn song nó cũng được áp dụng cho các trường hợp x và y là tổ hợp bất kỳ của các biến Bool.

Người ta sử dụng các định lý DeMorgan để đơn giản các biểu thức . Ví dụ: Đơn giản biểu thức sau:

F = (A+C).(B+D) Biến đổi tích hai số hạng thành tổng ta có:

F = (A+C) + ( B+ D) = ( A.C) + ( B.D )

= A . C + B . D

3.12 THIẾT KẾ MẠCH LOGIC TỔ HP

Trong nhiều trường hợp cần phải xây dựng mạch logic theo một yêu cầu nào đó. Cơng việc cần phải tiến hành là:

a. Xác định nội dung của bài toán b. Xaây dựng bảng sự thật mơ tả bài tốn

c. Tìm biểu thức logic cho bảng sự thật theo các bước sau.

• viết số hạng AND chứa các biến vào đối với các trường hợp F=1

• các biến trong số hạng AND có thể ở dạng đảo hoặc khơng đảo tùy vào giá trị bằng 0 hoặc bằng 1

• tất cả các số hạng AND được OR với nhau để có được biểu thức của F.

• đơn giản biểu thức của F

d. Xây dựng mạch logic thực hiện biểu thức F

Ví dụ: Xây dựng một mạch logic có 3 biến vào sao cho khi có 2 trong số 3 lối vào ở mức 1 thì lối ra ở mức 1.

Từ nội dung bài tốn ta có bảng sự thật sau. A B C F 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 1 1 0 0 0 1 0 1 1 1 1 0 1 1 1 1 1 F = ABC+ABC +ABC+ABC

Có thể đơn giản biểu thức này theo một vài cách . Cách nhanh nhất là viết ABC 3 lần như sau:

F = ABC + ABC + ABC + ABC + ABC + ABC = BC( A+A) + AC(B+B ) + AB(C+C)

= BC+AC+AB

Mạch này được thực hiện trên hình 3-13. Có thể viết F dưới dạng sau: F = C( B+A)+AB

Mạch cho biểu thức này được thực hiện như hình 3-14. Trong thiết kế mạch người ta chọn kiểu 3-14 vì nó ít dây nối hơn 3-13 và có tốc độ thực hiện nhanh hơn.

Hình 3-13

Hình 3-14

3.13 ĐƠN GIẢN HÀM BOOL BẰNG PHƯƠNG PHÁP ĐẠI SỐ

Một biểu thức Bool có thể được đơn giản để trở thành một biểu thức chứa ít nhất các số hạng và các biến do đó có thể thực hiện mạch logic với số cổng ít nhất.

Để minh họa, mạch hình 3-15 có thể đơn giản thành mạch 3-16. Rõ ràng rằng việc thực hiện mạch theo 3-16 đơn giản hơn 3-15 nhieàu.

Hình 3-15

Hình 3-16

Có 3 phương pháp đơn giản mạch logic.

• Đơn giản bằng phương pháp đại số

• Đơn giản bằng phương pháp bảng Karnaugh

• Đơn giản bằng phương pháp Mc Cluskey

Trong khn khổ của giáo trình này chúng ta sẽ chỉ xem xét phương pháp đại số. Để đơn giản mạch bằng phương pháp đại số ta dùng các định lý của đại số Bool, định lý De Morgan và theo 2 bước sau đây:

• Viết biểu thức dưới dạng tổng của các số hạng AND của các biến.

• Nhóm và ước lược các số hạng nếu có thể để thu được biểu thức cuối cùng đơn giản nhất.

Ví dụ 1: Đơn giản biểu thức F = ABC + A B (A C) Khai triển biểu thức thành tổng các số hạng AND như sau:

= ABC + ABA + ABC = ABC + AB + A B C = AC(B + B) + AB = AC + AB = A( C+ B)

Ví dụ 2: Đơn giản biểu thức F = ABC + ABC + A B C Coù 2 cách để đơn giản biểu thức này

Caùch 1: F = AB ( C+ C ) + ABC

= AB + ABC = A( B + B C) = A(B + C)

Cách 2: Có thể viết lại biểu thức dưới dạng sau: F = ABC + ABC + ABC + ABC

= AB ( C+C) + AC ( B+B) = A( B+C)

3.14 CÁC MẠCH SỐ

Phần cứng máy tính được xây dựng từ các mạch logic tổ hợp mà chúng được cấu tạo từ các cổng logic. Trong máy tính, các cổng logic được dùng để tạo ra các mạch chức năng mà nòng cốt là các thiết bị sau:

♦ Flip- flop (FF)

♦ Mạch đếm (Counter)

♦ Thanh ghi (Register).

Phần sau đây sẽ trình bày một cách sơ lược các thiết bị này.

3.15 FLIP - FLOP

Thiết bị cơ bản để lưu giữ thơng tin trên máy tính là Flip-flop (FF). Có nhiều loại FF và mạch thực hiện chúng. FF có các đặc điểm sau.

• FF là thiết bị mà lối ra của nó (X hoặc X ) có 2 trạng thái bền là trạng thái 0 (0 state) và trạng thái 1 (1 state). Nhờ tính chất này mà FF có thể nhớ hay lưu giữ 1 bit thông tin.

• FF có thể có nhiều lối vào và 2 lối ra mà trạng thái logic của chúng phủ định lẫn nhau. Hình 3-17 là sơ đồ khối của một FF có tên gọi là FF RS.

X

X Hình 3-17: FF RS

FF RS có 2 lối vào là R và S, 2 lối ra là X vaø X.

Để mơ tả và phân tích hoạt động của FF, chúng ta sử dụng các quy ước sau đây.

♦ Mỗi FF có một tên. Tên thường dùng là một chữ cái như X, Y, A hay B. Flip Flop treân hình 3-17 gọi là FF X.

♦ FF X có 2 lối ra là X và X mà chúng có trạng thái logic ln ln phủ định nhau.

R

S

♦ Trạng thái của FF là trạng thái của X. Như vậy nếu lối ra X =1, chúng ta nói rằng FF X là ở trạng thái 1. Tương tự nếu X =0, chúng ta nói FF X ở trạng thái 0.

Có 2 lối vào trên FF RS. Những lối vào này để điều khiển trạng thái của FF, chúng ta gọi chúng là các lối vào điều khiển .

Các lối vào điều khiển ảnh hưởng đến trạng thái ra của FF như bảng sự thật sau. S R X 1 0 1 0 0 giữ 0 1 0 1 1 caám

Lối vào S là lối vào đặt (Set), cịn lối vào R là lối vào xóa (Reset). RS FF dùng 2 cổng NOR mắc theo sơ đồ hình 3-18.

Hình 3-18: FF RS

3.16 ĐỒNG HỒ VÀ FF CĨ ĐỒNG HỒ

a) Khái niệm đồng hồ

Caùc hệ thống số có thể hoạt động ở chế độ đồng bộ (Synchronously) hoặc chế độ không đồng bộ (Asynchronously). Trong hệ thống khơng đồng bộ, lối ra của mạch logic có thể thay đổi trạng thái tại một thời điểm bất kỳ khi có sự thay đổi của lối vào điều khiển. Trong hệ thống đồng bộ, lối ra của mạch logic chỉ thay đổi trạng thái khi và chỉ khi có một tín hiệu chung gọi là đồng hồ (Clock). Tín hiệu đồng hồ là một chuỗi xung hình vng như hình vẽ 3-19.

Hình 3-19: Tín hiệu đồng hồ

Lối ra của các hệ thống đồng bộ chỉ thay đổi trạng thái khi có sự chuyển (transition) của tín hiệu đồng hồ. Sự chuyển trạng thái chỉ ra trên hình vẽ 3-20.

Hình 3-20: Xung đồng hồ với các sườn chuyển PGT và NGT

Khi đồng hồ thay đổi từ 0 lên 1 gọi là sự chuyển mức dương (positive going transition - PGT). Khi đồng hồ chuyển từ 1 về 0 gọi là sự chuyển mức âm (negative going transition - NGT).

b) FF có đồng hồ (Clocked Flip - Flops)

Trong FF có đồng hồ, ngồi các đầu vào điều khiển cịn có lối vào đồng hồ, gọi là CLK, CK hoặc CP.

Đồng hồ có thể làm cho lối ra chuyển trạng thái tại PGT hoặc NGT. Nếu đồng hồ tác động ở PGT ta vẽ tín hiệu đồng hồ đi thẳng với 1 mũi tên. Nếu đồng hồ tác động ở NGT ta vẽ dấu trịn trước mũi tên như hình vẽ 3-21.

Hình 3-21: FF có đồng hồ tác động ở sườn âm

• FF SC có đồng hồ

Hình vẽ 3-22 là sơ đồ FF SC có đồng hồ loại PGT

Hình 3-22: Sơ đồ khơí FF SC

Bảng sự thật cho FF SC có đồng hồ tác dụng ở sườn dương như sau.

S C CLK X

0 0 No change 1 0 1

0 1 0

1 1 Ambiguous

Bảng sự thật cho FF SC có đồng hồ tác dụng ở sườn âm như sau.

S C CLK X

0 0 No change

1 0 1 0 1 0

FF JK có đồng hồ

Hình 3-23 chỉ ra sơ đồ một FF JK hoạt động ở sườn dương của đồng hồ. Các lối vào điều khiển J K có vai trị giống như các lối vào S C của FF SC. Chỉ có một điều khác biệt là khi J=K=1 thì FF JK liên tục thay đổi trạng thái khi có xung đồng hồ.

Hình 3-23: FF JK Bảng sự thật cho FF JK nhö sau: J K CLK X 0 0 No change 1 0 1 0 1 0 1 1 Toggles Cũng có FF JK kích bằng sườn âm của xung đồng hồ.

FF D (delay FF)

Hình 3-24 chỉ ra ký hiệu và bảng sự thật của FF D kích bằng sườn dương của xung đồng hồ.

D CLK Q

1 1 0 0

Hình 3-24: FF D

Không giống như FF JK, FF D chỉ có một lối vào điều khiển đồng bộ là D (data). Hoạt động của FF D rất đơn giản: Q sẽ nhận giá trị của D trước khi có đồng hồ.

FF D có thể làm từ FF SC hoặc FF JK bằng cách sử dụng một cổng đảo như hình vẽ 3-25.

Hình 3-25: FF D từ SC FF

c) Các lối vào không đồng bộ

Trong caùc FF chúng ta đãõ xem xét trước đây, các lối vào S, C, J, K, D gọi là các lối vào điều khiển (control inputs). Những lối vào này còn gọi là lối vào đồng bộ (synchronous inputs) bởi vì ảnh hưởng của chúng lên lối ra đồng bộ với lối vào đồng

Một phần của tài liệu giáo trình kiến trúc máy tính 2 - phan văn nghĩa (Trang 29)

Tải bản đầy đủ (PDF)

(62 trang)