Bài giảng Thiết kế logic số: Lecture 4.2 giúp người học hiểu về Thiết kế các mạch số thông dụng. Nội dung trình bày cụ thể gồm có: Khối nhân số nguyên có dấu và không dấu nhằm giới thiệu về kỹ thuật tiết kiệm tài nguyên bằng kỹ thuật lặp cứng.
Thiết kế logic số (Digital logic design) Chương IV: Thiết kế mạch số thơng dụng TS Hồng Văn Phúc Bộ môn KT Xung, số, Vi xử lý https://sites.google.com/site/phucvlsi/teaching 1/2014 Mục đích, nội dung Mục đích: Giới thiệu kỹ thuật tiết kiệm tài nguyên kỹ thuật lặp cứng Nội dung: Khối nhân số ngun có dấu khơng dấu Thời lượng: tiết giảng Yêu cầu: Sinh viên có chuẩn bị sơ trước nội dụng học Phép nhân số nhị phân x a = x0.a+2.x1.a+ 22x2.a+23.x3.a với x = x3x2x1x0, a = a3a2a1a0 0101 0111 0101 0101 0101 0000 0100011 - số bị nhân - số nhân (multiplicand) (multiplier) - tích riêng (partial products) - kết nhân (product) Mạch nhân với số x a = x0.a+2.x1.a+ 22x2.a+23.x3.a với x = x3x2x1x0, a = a3a2a1a0 Nếu x số phép nhân thành phần phép dịch Mạch nhân kiểu cộng – dịch Mạch nhân kiểu tổ hợp đơn giản Multiplicand P1(4) Σ a X1 X0 P12(6) P2(5) Σ X2 PRODUCT Multiplier P3(6) P34(7) Σ X3 P4(7) Tốn tài nguyên Cấu trúc lặp Ví dụ mạch nhân dịch phải (Right-shift-add) a 1 x 1 -2P(0) 0 0 P(0) 0 0 +x0.a 1 -2p(1) 0 1 P(1) 0 1 +x1.a 1 -2p(2) 0 1 1 P(2) 0 1 1 +x2.a 1 -2p(3) 0 1 P(3) 0 1 +x3.a 0 0 -P(4) 0 0 1 P 0 0 1 -> KHỞI TẠO GIÁ TRỊ -> P1 -> ADDING + P1 -> SHIFTING -> P2 -> P1 + 2P2 -> SHIFTING -> ADDING P1 + 2P2 + 2^2P3 -> SHIFTING -> ADDING P1+2P2+2^2P3+ 2^3P4 -> PRODUCT Right-shift add - Multiplier K-bit Multiplicand product Multiplier K bit SHIFT_REG K-1 bit K-1 bit lower MUX K-bit opa opb Σ k bit Cout SUM Left-shift-add EXAMPLE a 1 x 1 -P(0) 0 0 2P(0) 0 0 +x3.a 0 0 -p(1) 0 0 2P(1) 0 0 0 +x2.a 1 -p(2) 0 1 2P(2) 0 1 +x1.a 1 -p(3) 0 1 1 2P(3) 0 1 1 +x3.a 1 -P(4) 0 0 1 P 0 0 1 -> KHỞI TẠO GIÁ TRỊ -> P4 -> ADDING + P4 -> SHIFTING -> P3 -> ADDING P3 + 2P4 -> SHIFTING -> P2 -> ADDING P2 + 2P3 + 2^2P4 -> SHIFTING -> ADDING P1 + 2P2 + 2^2P3 + 2^3P4 -> PRODUCT Left-shift add - Multiplier product Multiplicand 2K bit Multiplier SHIFT_REG 0000000000 MUX Kbit K-bit SHIFT LEFT 2K bit Σ 2k bit Biểu diễn số bù (2’complement number representation) 2’s complement number: xn-1 xn-2… x1 x0 = -2n-1xn-1 +2n-2xn-2 + … + 2x1 + x0 Bù (A) = not A Bù (A) = not A+1 Signed (1010)= -6 Unsigned(1010)= 10 Tính chất 1: Bù 2(A) = - A Tính chất 2: Signed extend không làm thay đổi giá trị số dạng bù -5 = (10114 bit = (11111011)8-bit 10 Biểu diễn số bù (4-bit) 4-bit 2’complement number 11 Biểu thức Booth-2 xn-1 xn-2… x1 x0 = -2n-1xn-1 +2n-2xn-2 + … + 2x1 + x0 !PROBLEM: Không áp dụng sơ đồ số nguyên không dấu xn-1 xn-2… x1 x0 = -2n-1xn-1 +2n-2xn-2 + … + 2x1 + x0 = -2n-1xn-1 + 2n-1xn-2 -2n-2xn-2 + … + 22 x1 – x1 + x0 –x0 + = 2n-1 (- xn-1 + xn-2) +2n-2 (-xn-2 + xn-3 )+ … + 2(-x1 + x0) + (-x0 + 0) = 2n-1 bn-1 +2n-2 bn-2 + … + 2b1 + b0 bi = (-xi + xi-1) với i = -1, n-2, x-1 = 12 Mã hoá Booth số (Radix-2 booth encoding) x b xi Xi-1 bi 0 1 1 -1 0 1 1 0-1 x = + 13 Mạch nhân Booth số (Booth2- Multiplier) SHIFTER _ SIGNED EXTEND 2s’ complement Multiplicand product 2K bit Multiplier SHIFT_REG MUX Σ 14 Booth-4 formula x2n-1x2n-2…x1x0 = -22n-1x2n-1 +22n-2x2n-2 + … + 2x1 + x0 = -22n-22.x2n-1 + 22n-2x2n-2 +22n-2x2n-3 - 22n-42.x2n-3 + 22n-4x2n-4 +22n-4 x2n-5 + … - 2.2 x1 + x0 + = 22n-2 (- 2x2n-1 + x2n-2 + x2n-3) +22n-4 (-2x2n-3 + x2n-4 + x2n-5)+ … + (-2x1 + x0 + 0) bi = (- 2x2i+1 + x2i + x2i-1) với i = 0, 1, 2, … n-1 15 Radix-4 booth encoding xi+1 xi xi-1 Radix-4 Booth encoding 0 0 1 1 0 1 0 1 1 1 1 -2 -1 -1 x b 1 (0) -1 -2 x = + 26 16 Booth-4 Multiplier -multiplicand 2*multiplicand -2*multiplicand Multiplicand Sign Sign K+1 bit K-2 bit Multiplier &0 product MUX5-1 Kbit K+1 bit K-2 bit 2bit RADIX BOOTH ENCODING SHIFT_REG Σ k+1-bit 17 Trắc nghiệm Câu 1: Khối nhân đơn giản thiết kế sở khối A Khối nhân logic, khối cộng B Khối cộng khối dịch khối hợp C Khối dịch phải khối cộng K-bit D Khối dịch trái khối cộng K-bit 18 Trắc nghiệm Câu 2: Đặc điểm sau không đặc điểm chung cho khối nhân cộng dịch trái cộng dịch phải A Dùng khối cộng khối dịch khối MUX B Dùng ghi đặc biệt có khả tích lũy dịch C Phép nhân thực thông qua cấu trúc lặp cứng nhằm giảm thiểu tài nguyên sử dụng D Số bị nhân nhân với bit từ thấp đến cao số nhân 19 Trắc nghiệm Câu 3: Tại lại có thê sử dụng khối cộng K bit sơ đồ cộng dịch phải A Vì đầu vào số nhân số bị nhân K-bit B Vì ghi đầu có K bit C Vì đầu khối nhân với bit số nhân sô K-bit D Vì đặc điểm phép cộng phần kết phần bit thấp không phụ thuộc kết phần bit cao 20 Trắc nghiệm Câu 4: Mục đích mã hóa booth2 A Tăng tốc cho khối nhân số có dấu B Đưa cơng thức tính số có dấu dạng giống số khơng dấu để áp dụng sơ đồ cộng dịch trái phải cho số ngun khơng dấu C Mã hóa để thu cấu trúc thiết kế tối ưu mặt tài nguyên so với sơ đồ cộng dịch D Mã hóa số nhị phân có dấu dạng đơn giản 21 Trắc nghiệm Câu 5: Nhưng ưu điểm khối nhân dùng mã hóa Booth số so với sơ đồ cộng dịch trước A Đúng cho số có dấu B Đúng cho số có dấu khơng dấu C Tăng tốc độ cho khối nhân D Tăng tốc độ cho khối nhân làm việc với số có dấu 22 ... Booth-4 formula x2n-1x2n-2…x1x0 = -2 2n-1x2n-1 +22n-2x2n-2 + … + 2x1 + x0 = -2 2n-22.x2n-1 + 22n-2x2n-2 +22n-2x2n-3 - 22n-42.x2n-3 + 22n-4x2n-4 +22n-4 x2n-5 + … - 2.2 x1 + x0 + = 22n-2 (- 2x2n-1... Booth-2 xn-1 xn-2… x1 x0 = -2 n-1xn-1 +2n-2xn-2 + … + 2x1 + x0 !PROBLEM: Không áp dụng sơ đồ số nguyên không dấu xn-1 xn-2… x1 x0 = -2 n-1xn-1 +2n-2xn-2 + … + 2x1 + x0 = -2 n-1xn-1 + 2n-1xn-2 -2 n-2xn-2... -2 n-2xn-2 + … + 22 x1 – x1 + x0 –x0 + = 2n-1 (- xn-1 + xn-2) +2n-2 (-xn-2 + xn-3 )+ … + 2(-x1 + x0) + (-x0 + 0) = 2n-1 bn-1 +2n-2 bn-2 + … + 2b1 + b0 bi = (-xi + xi-1) với i = -1 , n-2, x-1 = 12