173 Bài 13: cửa ba trạng thái và tổ chức bus (Three - State & Bus - Organization) A. Phần tóm tắt lý thuyết 1. Khoá ba trạng thái : Khoá ba trạng thái đã đợc triển khai sử dụng từ năm 1970. Nhờ sự ra đời của khoá này mà việc thiết kế và nối mạch đơn giản đi rất nhiều, đặc biệt cho các máy tính theo tổ chức Bus. Dới đây là một ví dụ đơn giản về khoá ba trạng thái. E D i D 0 0 x 1 0 1 1 mở (hở) 0 1 D i : Đầu vào số liệu (Data in). D 0 : Đầu ra số liệu (Data out). E : Đầu cho phép (Enable). x : Giá trị bất kỳ, không cần quan tâm. Khi E = 0, transistor A bị cấm, bazơ transistor B ở thế cao, transistor B bão hoà, bazơ của transistor C nh nối đất khiến cho emitơ của transistor C bị treo: D 0 thả nổi (floating). Trạng thái thả nổi tơng đơng với khoá cơ học S để ngỏ. Khi E = 1, transistor A bão hoà, transistor B bị cấm, transistor C hoạt động nh một mạch lắp lại emitơ. Toàn mạch bán dẫn tơng đơng với khoá cơ học S đợc đóng lại. Toàn mạch hoạt động nh một tầng đệm , bởi vì D 0 = D i . Ký hiệu logic Sơ đồ nguyên lý Khoá cơ học tơng đơng C B A +5V E Do Di E=1 Di Do Do Di E=0 E Do Di 100K 100K 100K 174 Trên đây là khoá 3 trạng thái với đầu cho phép tác động cao (E = 1). Ngời ta cũng dễ dàng thiết kế khoá 3 trạng thái với tác động thấp 0=E nh hình sau Trạng thái thứ 3 này có các tên gọi khác nhau nhng cùng một ý nghĩa: thả nổi (floating), hở (open), tổng trở lớn (high impedance), cô lập (isolation). 2. Cửa logic ba trạng thái họ TTL (TTL - tri - State Logic Gate). Hình sau là sơ đồ logic, sơ đồ chân nối 74125, 74126, 74LS244, 74LS245 và các trạng thái của chúng kèm theo. 1 E 1A 1 1A 2 1A 3 1A 4 1Y 1 1Y 2 1Y 3 1Y 4 0 1a 1 1a 2 1a 3 1a 4 0 1a 1 1a 2 1a 3 1a 4 1a 1 1a 2 1a 3 1a 4 thả nổi 2 E 2A 1 2A 2 2A 3 2A 4 2Y 1 2Y 2 2Y 3 2Y 4 0 2a 1 2a 2 2a 3 2a 4 0 2a 1 2a 2 2a 3 2a 4 2a 1 2a 2 2a 3 2a 4 thả nổi E D i D 0 1 x 0 0 0 1 hở 0 1 Khoá cơ học tơng đơng Di Do E E=0 Di Do Do Di E=1 4C 4A 3C 3A 2C 2A 1C 1A 4Y 3Y 2Y 1Y 74LS126 4C 4A 3C 3A 2C 2A 1C 1A 4Y 3Y 2Y 1Y 74LS125 A7 A6 A5 A4 A3 A2 A1 A0 B7 B6 B5 B4 B3 B2 B1 B0 CE S/R 74LS245 I0 I1 I2 I3 O0 O1 O2 O3 OE U6 Ia3 Ia2 Ia1 Ia0 Ib3 Ib2 Ib1 Ib0 Ya3 Ya2 Ya1 Ya0 Yb3 Yb2 Yb1 Yb0 OEa OEb 74LS244 175 E DIR Chức năng 0 0 1 0 1 x Số liệu B đến bus A Số liệu A đến bus B Cô lập giữa hai bus DIR : viết tắt của chữ DIRECTION có nghĩa là phơng hớng. E CLR CK LOAD D 4 D 3 D 2 D 1 Q 4 Q 3 Q 2 Q 1 1 x x x 0 1 x x 0 0 0 0 0 x x x x x x x x x d 4 d 3 d 2 d 1 x x x x Thả nổi 0 0 0 0 d 4 d 3 d 2 d 1 không đổi 3. Mạch ghi với các đầu ra ba trạng thái. Vi mạch 74LS173 là một ví dụ về mạch ghi loại D, 4 bit với các đầu ra 3 trạng thái. Sơ đồ chân, bảng chân lý và sơ đồ logic cho trên hình dới đây: 4. Tổ chức bus. Bus là một nhóm đờng dẫn dùng để chuyển số liệu. Hình vẽ dới đây giúp ta hiểu cách chuyển số liệu từ mạch ghi này đến mạch ghi khác qua bus. Nói một cách khác, đây là cách chuyển số liệu theo tổ chức bus. Các mạch ghi có đầu ra 3 trạng thái. Xung nhịp tác động đồng thời vào các thanh ghi A, B, C, D nhng không có điều gì xảy ra cả nếu các đầu vào LOAD ( A L ) và Enable ( ) A E đặt ở mức logic 1: các thanh ghi cô lập với bus. Muốn chuyển một từ nhị phân từ mạch ghi A sang mạch ghi D, ta đặt A E và D L ở logic 0. Nh vậy số liệu của mạch ghi A sẽ xuất hiện trên bus và mạch ghi D sẵn sàng nạp số liệu. Khi có xung nhịp kích thích, số liệu sẽ đợc lu trữ trong mạch ghi D. Giả sử các từ nhị phân sau đây đợc lu trữ trong các mạch ghi : MR E1 E2 CP D3 D2 D1 D0 OE1 OE2 Q3 Q2 Q1 Q0 74LS173 176 A = 0011 B = 0110 C = 1001 D = 1100 Muốn chuyển từ A = 0011 sang mạch ghi D, ta đặt 0= A L và 0= D L . Lúc này các khoá 3 trạng thái của mạch ghi A đợc đóng lại để chuyển từ A = 0011 lên bus. Với 0= D L , mạch ghi D đợc nạp từ nhị phân trên. Khi có xung nhịp tới (sờn dơng), từ A đợc lu trữ trong mạch ghi D. Kết quả bây giờ là : A = 0011 B = 0110 C = 1001 D = 0011 177 B. Phần thực nghiệm 1. Nghiên cứu hoạt động của cửa ba trạng thái 74LS244 Vi mạch 74LS244 đóng vai trò nh tầng đệm cho bus 8 đờng dẫn (Octal Bus buffer). Mỗi IC 74LS244 gồm 2 bộ khoá ba trạng thái, mỗi bộ khoá gồm 4 bít và một đầu cho phép E . Vai trò của mỗi bộ là nh nhau nên ta có thể ghép 2 bộ 4 bít để tạo bộ khoá ba trạng thái 8 bit. ở bài này ta chỉ cần khảo sát bộ khoá thứ nhất. IC 74LS244 có thể đợc dùng để làm bộ "khoá từ 3 trạng thái" (3-State word switch) hay để phát tín hiệu số lên bus, với vai trò này nó có tên gọi là "bộ phát bus" (transmitter For Bus or Bus Transmitter). Sơ đồ thí nghiệm: Ea 0V Ia0 0V Ia1 0V Ia2 0V Ia3 0V Ya1 Ya1Ya2Ya3 74LS244 Ia3 Ia2 Ia1 Ia0 Ib3 Ib2 Ib1 Ib0 Ya3 Ya2 Ya1 Ya0 Yb3 Yb2 Yb1 Yb0 OEa OEb Các bớc tiến hành thí nghiệm: Bớc1: Thực hiện vẽ mạch nh các hình trên bằng cách sử dụng: 05 Logic switch [Switches/Digital/Logic Switch] (s) 04 Logic Display [Displays/Digital/Logic Display] (9) 01 IC 74LS244 [Digital by Number/742xx/74244] Chú ý: [ ] Đờng dẫn để lấy linh kiện trong th viện ( ) Ký hiệu phím tắt Bớc 3: - Tiến hành thí nghiệm và điền đầy đủ vào bảng chân lý sau: E Ia 0 Ia 1 Ia 2 Ia 3 Ya 0 Ya 1 Ya 2 Ya 3 178 2. Nghiên cứu hoạt động cửa ba trạng thái 74LS245 Vi mạch 74LS245 thờng đợc dùng làm tầng đệm cho bus 8 đờng dẫn hai chiều (Bidirectional octal bus buffer). Do tính chất hai chiều mà vi mạch này đợc làm mạch đệm phát tín hiệu lên bus hoặc nhập tin từ bus. Vì vậy nó còn có tên là mạch thu phát bus (Bus Transmister-Receiver). Sơ đồ thí nghiệm: Hình a: A -> B Hình b: A <- B S/R 0V CE 0V B0 0V B1 0V B2 0V B3 0V B4 0V B5 0V B6 0V B7 0V CE 0V A0 0V A1 0V A2 0V A3 0V A4 0V A5 0V A6 0V A7 0V S/R 5V 74LS245 A7 A6 A5 A4 A3 A2 A1 A0 B7 B6 B5 B4 B3 B2 B1 B0 CE S/R A4 A7 A6 A5 A2 A0 A1 A3 74LS245 A7 A6 A5 A4 A3 A2 A1 A0 B7 B6 B5 B4 B3 B2 B1 B0 CE S/R B4 B1 B0 B2 B3 B5 B6 B7 Các bớc tiến hành thí nghiệm: Bớc1: Thực hiện vẽ mạch nh các hình trên bằng cách sử dụng: 02 IC 74LS245 [Digital by Number/742xx/74254] 20 Logic switch [Switches/Digital/Logic Switch] (s) 08 Logic Display [Displays/Digital/Logic Display] (9) Bớc 2: - Chuyển số liệu theo chiều từ A -> B. ở đây ta tiến hành thí nghiệm với hình a - Tiến hành thí nghiệm và điền đầy đủ vào bảng số liệu sau: CE S/R A 7 A 6 A 5 A 4 A 3 A 2 A 1 A 0 B 7 B 6 B 5 B 4 B 3 B 2 B 1 B 0 0 1 1 0 0 1 1 0 0 1 1 x 1 0 0 1 1 0 0 1 Chú ý: 179 - S/R: Đầu chọn hớng truyền số liệu. S/R = 1 số liệu đợc truyền từ A sang B, còn S/R = 0 số liệu đợc truyền từ B sang A. Bớc 3: - Chuyển số liệu theo chiều từ B -> A. ở đây ta tiến hành thí nghiệm với hình b - Tiến hành thí nghiệm và điền đầy đủ vào bảng số liệu sau: CE S/R A 7 A 6 A 5 A 4 A 3 A 2 A 1 A 0 B 7 B 6 B 5 B 4 B 3 B 2 B 1 B 0 0 0 1 0 0 1 1 0 0 1 1 x 1 0 0 1 1 0 0 1 3. Chuyển số liệu giữa các mạch ghi theo tổ chức bus Ta có sơ đồ khối: Mục đích của bài thực tập: - Phát số liệu nhị phân 1010 lên bus - Từ bus, số liệu đợc nạp và lu trữ tại mạch ghi thứ nhất (ví dụ mạch ghi A) - Chuyển số liệu từ mạch ghi thứ nhất đến mạch ghi thứ hai (ví dụ mạch ghi B) qua bus và lu trữ lại. - Đọc lại số liệu trên thanh ghi B. Sơ đồ thí nghiệm: CK B E CLR B CLR A AE Word switch 3 state Hexa- decimal dispay A Register 74LS173 B Register 74LS173 Word switch 180 Thanh ghi B Thanh ghi A 0123 1 0 1 2 3 3 21 0 32103 2 1 03210 E 0V I0 0V I1 0V I2 0V I3 0V EB 5V MRB 0V LOADB 5V EA 5V MRA 0V LOADA 5V CP 0V Q0Q1Q2Q3 74LS244 Ia3 Ia2 Ia1 Ia0 Ib3 Ib2 Ib1 Ib0 Ya3 Ya2 Ya1 Ya0 Yb3 Yb2 Yb1 Yb0 OEa OEb 74LS173 MR E1 E2 CP D3 D2 D1 D0 OE1 OE2 Q3 Q2 Q1 Q0 74LS173 MR E1 E2 CP D3 D2 D1 D0 OE1 OE2 Q3 Q2 Q1 Q0 Các bớc tiến hành thí nghiệm: Bớc1: Thực hiện vẽ mạch nh các hình trên bằng cách sử dụng: 01 IC 74LS244 [Digital by Number/742xx/74244] 12 Logic switch [Switches/Digital/Logic Switch] (s) 04 Logic Display [Displays/Digital/Logic Display] (9) 02 IC 74LS173 [Digital by Number/741xx/74173] Bớc 2: Tiến hành thí nghiệm và điền đầy đủ vào bảng số liệu sau: Phát số liệu nhị phân 1010 lên bus E MRA MRB ALOAD A E BLOAD BE CP I 3 I 2 I 1 I 0 Q 3 Q 2 Q 1 Q 0 1 0 0 x x x x x xxxx 0 1 1 1 1 1 1 x 1010 Nạp số liệu vào thanh ghi A 1 1 1 0 1 1 1 xxxx Chuyển số liệu từ thsnh ghi A sang thanh ghi B 1 1 1 1 0 0 1 xxxx Phát số liệu thanh ghi B lên bus để kiểm tra 1 1 1 1 1 1 0 x xxxx 181 Q 3 Q 0 : TÝn hiÖu trªn bus 4. KiÓm tra kiÕn thøc Cho s¬ ®å khèi cña mét tæ chøc bus nh− sau: - Muèn chuyÓn néi dung cña m¹ch ghi D ®Õn m¹ch ghi C th× ta ph¶i ®iÒu khiÓn nh− thÕ nµo? - Dùa theo c©u 3 tõ s¬ ®å khèi trªn sinh viªn cã thÓ tù thiÕt kÕ s¬ ®å m¹ch ®iÖn ®Ó tiÕn hµnh thÝ nghiÖm. 4 4 L A CLR E A LOAD A ENABLE LOAD B ENABLE L B CLR E B L C CLR E C LOAD C ENABLE L D CLR E C LOAD D ENABLE 4 4 4 4 4 4 4 182 C. Phụ lục Giới thiệu DataSheet các hãng sản xuất IC trên thế giới của một số IC thông dụng sử dụng trong bài thực hành. 1. Bộ đệm 3 trạng thái 8 bit (Octal Buffer/Line Driver 3-State) Tên IC: 74x244 (TTL) 2. Bộ truyền/nhận bus 8 bit (Octal Bus Transceiver) Tên IC: 74x245 (TTL) [...]...3 Thanh ghi D lèi ra 3 tr¹ng th¸i (4-bit D type register with 3-state outputs) Tªn IC: 74x173 (TTL) 183 . 0 0 1 1 0 0 1 3. Chuyển số liệu giữa các mạch ghi theo tổ chức bus Ta có sơ đồ khối: Mục đích của bài thực tập: - Phát số liệu nhị phân 1010 lên bus - Từ bus, số liệu đợc nạp và lu trữ. Chú ý: 179 - S/R: Đầu chọn hớng truyền số liệu. S/R = 1 số liệu đợc truyền từ A sang B, còn S/R = 0 số liệu đợc truyền từ B sang A. Bớc 3: - Chuyển số liệu theo chiều từ B -& gt; A. ở đây. [Displays/Digital/Logic Display] (9) Bớc 2: - Chuyển số liệu theo chiều từ A -& gt; B. ở đây ta tiến hành thí nghiệm với hình a - Tiến hành thí nghiệm và điền đầy đủ vào bảng số liệu sau: CE S/R A 7 A 6