Đại số Bool A1 (Closure): B is closed w.r.t. + (OR) B is closed w.r.t. • (AND) A2 (Identity element) B has an identity element w.r.t. +, designated by 0 B has an identity element w.r.t. •, designated by 1 A3 (Commutativity) B is commutative w.r.t. +, i.o.w. x+y=y+x B is commutative w.r.t. •, i.o.w. x•y=y•x
Trang 1Mạch Logic số
Trang 2• B has an identity element w.r.t +, designated by 0
• B has an identity element w.r.t •, designated by 1
• A3 (Commutativity)
• B is commutative w.r.t +, i.o.w x+y=y+x
• B is commutative w.r.t •, i.o.w x•y=y•x
Trang 3Đại số Bool
• A4 (Distributivity)
• • is distributive w.r.t +, i.o.w x•(y+z)=(x•y)+(x•z)
• + is distributive w.r.t •, i.o.w x+(y•z)=(x+y)•(x+z)
• A5 (Complement element NOT operator)
Trang 4Điểm khác biệt với đại số thông
• In ordinary algebra it is not true that x + x’ = 1 and x • x’ = 0
• Boolean algebra works with a finite set of elements, whereas ordinary algebra has an infinite set
Trang 5Các định lý của đại số bool
Trang 6Các định lý của đại số Bool
• Theorem 5: associativity
• (x + y) + z = x + (y + z)
• Dual: (xy)z = x(yz)
• Theorem 6: De Morgan’s law
• (x+y)’ = x’y’
• Dual: (xy)’ = x’+y’
• Proof: using axioms or truth table
• Duality:
• Replace each OR by AND and AND by OR
• Replace each 0 by 1 and x by x’
Trang 7• F1=1 when x=1 and y=1 or when x=1, y=0 and z=1 or when x=0, y=1 and z=1;
in all other cases F1=0
• F1 consists of 3 AND-terms and 1 OR-term
Trang 8Hàm đại số Bool
• Realisation of F1=xy+xy’z+x’yz
x y z
F1
Trang 10Hàm đại số Bool
• Algebraic manipulation
F 1 =xy+xy’z+x’yz = xy + xyz +xy’z+x’yz (absorption)
=xy+ x(y+y’)z +x’yz (distributive)
=xy+x 1 z+x’yz (complement)
=xy+ xz +x’yz (identity)
=xy+ xyz +xz+x’yz (absorption)
=xy+xz+ (x+x’)yz (distributive)
=xy+xz+ 1yz (complement)
=xy+xz+ yz (identity)
• This alternative form is cheaper (see next slide)
• There does not exist a fixed rule to combine theorems to guarantee a cheaper result
• Further slides will present a non-algebraic method that always leads to the cheapest solution
Trang 11Mạch Logic
• Trạng thái logic: trạng thái của 1 thực thể (0/1)
• Biến logic: đặc trưng cho các trạng thái logic của 1 thực thể (x=0/1)
• Hàm Logic: nhóm các biến logic liên hệ qua các phép toán logic
Trang 12Biểu diễn biến & hàm logic
• Venn Diagram
• Truth table: n+1 cột và 2n + 1 hàng
• Karnaugh map: Mỗi hàng thuộc bảng sự thật được thay bởi ô mà tọa
độ xác định bởi tổ hợp của biến
• Giản đồ thời gian
Trang 13Dạng chính tắc (Canonical form)
• How do we translate a truth table into a Boolean expression?
• Definition: a minterm is a Boolean function that is true in 1 row of the truth table and false elsewhere
Trang 15Dạng chính tắc (Canonical Form)
• Dual definition: a maxterm is a Boolean function that is false in 1 row
of the truth table and true elsewhere
Trang 19n-MOS transistor
Trang 20Many free electrons
S=Vss D=Vss G=Vss
Trang 21conducting channel between Source and Drain
S=Vss D=Vss G= Vcc
Trang 22SSI, MSI, LSI, VLSI
• SSI: Small Scale Integration
• < 10 gates per package
• gates directly connected to package pins
• designed using transistor level design
• used using gate level design
• MSI: Medium Scale Integration
• 10 - 100 gates per package
• registers, adders, parity generators, …
• designed using gate level design
• used using RTL design
• LSI: Large Scale Integration
• 100 - 10K gates per package
• controllers, data paths
• designed using RTL design
• used using behavioral level design
Trang 23SSI, MSI, LSI, VLSI
• VLSI: Very Large Scale Integration
• 10K - 1M gates per package
• memory, microprocessor, microcontroller, FFT
• designed using behavioral level design
• used using system level design
• ULSI: Ultra Large Scale Integration???
• 1M - ?? Gates per package
• 2 controllers, 20 DSP processors, 16 Mbyte memory, 10 accelerators, 1 Mgate FPGA, Analog interface, RF
• designed using system level design
• only one chip needed for complete application ??
Trang 25Karnaugh map
• Karnaugh map chứa lượng thông tin bằng với bảng chân lý
• Các ô khác nhau chỉ khác nhau một giá trị biến duy nhất
x’y’ x’y xy’ xy
x
0 1
y
x’y’z’ x’y’z xy’z’ xy’z
x 0 1
xy’ (z does not matter) y
z
x
Trang 26+xy’w’ +y’z’w’
Trang 27Tối giản hàm với Karnaugh map
Determine all prime implicants
Determine all essential prime implicants
Search for minimal coverage Create the Karnaugh map Truth table orcanonical form
Trang 28Tối giản hàm với Karnaugh map
• Step 1: Creat the Karnaugh map
• Rule:
• Take product term per product
• Indicate where the minterm in the Karnaugh map
equals 1
w x
y z
1
1
1 1
1 1
1 1
F=x’y’z’+wz+xyz+ w’y
Trang 29Tối giản hàm Bool với Karnaugh map
Step 2: Determine all prime implicants
1 1
1 1
1 1 1 w
x
y z
wz
1 1 1
wx’y’
1 1 1
Rule:
- Analyze each 1-minterm
- Determine the largest sub-cube(s) that contain(s) the minterm and add them to the list of prime implicants (without adding an already listed sub-cube )
Trang 30Tối giản hàm Bool với Karnaugh map
Step 2: Determine all prime implicants
1 1
1 1
1 1 1 w
x
y z
wz
1 1 1
wx’y’
1 1 1
Rule:
- Analyze each 1-minterm
- Determine the largest sub-cube(s) that contain(s) the minterm and add them to the list of prime implicants (without adding an already listed sub-cube )
Trang 31Tối giản hàm Bool với Karnaugh map
Step 3: Determine all essential prime implicants
1 1
1 1
1 1 1 w
1 1
wz w’y
Trang 32Tối giản hàm Bool với Karnaugh map
Step 4: Search minimal coverage
x
y z
- Goal: search for the smallest set of (as big as possible)
prime implicants that contain all 1-minterms
- Take all essential prime implicants as initial list
- Repeatedly add a prime implicant to the list that contains the largest number of not yet covered 1-minterms When there are two that contain the same number of not yet covered 1-minterms, make a random choice.
take the best choice without looking to future implications
- This does not always lead to a global optimum
Trang 333 Các mạch Logic số
• Mạch tích hợp (IC)
• Mạch kết hợp (Combinational Circuit): mạch có nhiều đầu vào và đầu
ra trong đó đầu ra được xác định qua đầu vào hiện tại
• Mạch tuần tự (Sequentia Logic Circuit): mạch có đầu ra không chỉ phụ thuộc vào giá trị đầu vào hiện tại mà còn phụ thuộc vào các giá trị
trước đó, hay nói đơn giản là mạch kết hợp có bộ nhớ
Trang 343.1 Bộ dồn kênh (MUX)
• MUX: Mạch logic có nhiều
đầu vào nhưng chỉ có một
Trang 353.1 Bộ dồn kênh
• Ứng dụng trong hệ thống truyền thông: cho phép truyền nhiều loại
dữ liệu trên cùng một đường truyền
• Mạng điện thoại: chuyển cuộc gọi
• Bộ nhớ máy tính
Trang 363.2 Bộ giải ghép kênh (DeMUX)
• DeMUX: Mạch tích hợp nhận tín
hiệu ngõ vào và chọn chuyển dữ
liệu tới ngõ ra chọn lựa theo mã địa
chỉ
Trang 373.2 Bộ giải ghép kênh
• Ứng dụng trong hệ thống truyền thông
• Ứng dụng trong bộ ALU: output của bộ ALU được chuyển thành dữ liệu đầu vào cho bộ giải ghép kênh Output của bộ giải ghép kênh được đưa đến các thanh ghi (registers)
• Chuyển tín hiệu nối tiếp thành song song
Trang 383.3 Mạch cộng
• Mạch cộng không nhớ (Half adder): cộng hai bit, cho kết quả là giá trị của phép công (không nhớ)
Trang 393.3 Mạch cộng
• Bộ cộng đầy đủ (Full Adder)
• 3 đầu vào: A, B, Cin
• 2 đầu ra: Sum, Cout
Trang 403.4 Mạch mã hóa (Encoder) và
mạch giải mã (Decoder)
• Mạch encoder biến đổi một chuỗi tín hiệu (signal) thành dạng code
• Mạch decoder giải mã thông tin n ngõ nhập (n inputs) thành 2n ngõ xuất (outputs)
Trang 423.6 Sequential logic Circuit