2.FlipFlop

2.1 Tổng quan về flip flop (FF)

FF là mạch có khả năng lật lại trạng thái ngõ ra tuỳ theo sự tác động thích hợp của ngõ vào, điều này có ý nghĩa quan trọng trong việc lưu trữ dữ liệu trong mạch và xuất dữ liệu ra khi cần.

Có nhiều loại flip flop khác nhau, chúng được sử dụng rộng rãi trong nhiều ứng dụng. Các mạch FF thường được kí hiệu như sau

Hình 3.1.11 Ký hiệu FF

Nếu các ngõ vào sẽ quyết định ngõ ra là cái gì thì ngõ đồng hồ ck lại chỉ ra rằng khi nào mới có sự thay đổi đó. Chân Ck có thể tác động mức thấp hay mức cao tuỳ vào cấu trúc bên trong của từng IC FF, do đó với một IC FF cố định thì chỉ có một kiểu tác động và chỉ một mà thối, ví dụ với IC 74112 chỉ có một cách tác động là xung Ck tác động theo cạnh xuống.

2.2 Các loại FF

Hình 2.1.13 Kí hiệu khối của 4 loại FF nảy bởi cạnh lên Ck

a) FF SR (mạch lật lại đặt)

Hình 3.1.14 Dạng sóng minh hoạ cho FF RS

FF RS nảy cạnh lên khi đó sẽ kí hiệu hình tam giác ở sơ đồ khối và dấu mũi tên lên trong bảng trạng thái.

FF RS nảy bằng cạnh xuống tương tự và có khí hiệu thêm hình tròn nhỏ hay gạch đầu Ck để chỉ cạnh xuống ở ký hiệu khối và vẽ dấu mũi tên xuống ở bảng trạng thái.

b) FF JK

FF JK bổ sung thêm trạng thái cho FF RS ( tránh trạng thái cấm)

Hình 3.1.15 Dạng sóng minh hoạ cho FF JK

Nhận thấy đầu vào J, K điều khiển trạng thái ngõ ra theo đúng như cách mà S R đã làm trừ 1 điểm là khi J = K = 1 thì trạng thái cấm được chuyển thành trạng thái ngược lại ( với J = K = 0 ). Nó còn gọi là chế độ lật của hoạt động.

Từ dạng sóng có thể thấy rằng ngõ ra FF không bị ảnh hưởng bởi sườn xuống của xung ck các đầu vào J K cũng không có tác động trừ khi xảy ra tác động lên của Ck

FF JK có thể tạo thành từ FF SR có thêm 2 đầu and có ngõ ra đưa về như hình :

Hình 3.1.16 FF JK từ FF SR

Còn cấu tạo bên trong của FF JK kích bằng cạnh sườn sẽ như sau :

Hình 3.1.17 Cấu trúc mạch của FF JK

c) FF T

Khi nối chung 2 ngõ vào JK như hình dưới thì sẽ được FF T : chỉ có một ngõ vào T, ngõ ra sẽ bị lật lại trạng thái ban đầu khi ngõ T tác động và mỗi khi có cạnh sườn lên hay xuống của xung ck.

Kí hiệu khối và bảng trạng thái của FF T như sau :

=>

Hình 3.1.18 Kí hiệu khối của FF T

Hình 3.1.19 Dạng sóng minh hoạ cho hoạt động của FF T

FF T được sử dụng chính để tạo mạch đếm chia 2. Khi T nối lên mức 1 (Vcc) hay để trống, xung kích lần lượt đưa vào ngõ Ck. Nhận thấy ngõ ra Q sẽ lật trạng thái mỗi lần ck xuống hay lên. Tần số xung ngõ ra Q chỉ còn bằng một nửa tần số ngõ vào ck nếu đưa Q này tới các tầng FF sau nữa thì lần lượt tần số f sẽ lại được chia đôi. Đây là nguyên lí chính của mạch đếm sẽ được xét đến ở phần sau.

Hình 3.1.19a FF T dùng làm mạch chia tần

d) FF D

Khi nối ngõ vào của FF RS hay JK như hình thì sẽ được FF D : chỉ có 1 ngõ vào gọi là ngõ vào data(dữ liệu) hay delay(trì hoãn). Hoạt động của FF D rất đơn giản : ngõ ra sẽ theo ngõ vào mỗi khi xung Ck tác động cạnh lên hay xuống.

=>

Hình 3.1.20 Kí hiệu khối

Hình 3.1.21 Dạng sóng minh hoạ cho hoạt động của FF D

FF D thường là nơi để chuyển dữ liệu từ ngõ vào D đến ngõ ra Q cung cấp cho mạch sau như mạch cộng, ghi dịch… nên hơn nữa ngõ vào D phải chờ một khoảng thời gian khi xung ck kích thì mới đưa ra ngõ ra Q, do đó FF D còn được xem như mạch trì hoãn, ngõ D còn gọi là delay.

e) Mạch chốt D

Các FF nảy bằng mức đều có thể trở thành mạch chốt khi chân ck cho ở mức tác động luôn. Thông dụng nhất là chốt D. Mạch được tạo bởi FF D khi thay ngõ vào đồng bộ bởi ngõ vào cho phép (enable : E) tác động ở mức cao.

Cấu tạo kí hiệu và bảng trạng thái như những hình sau :

Hình 3.1.22 Kí hiệu khối và bảng sự thật của chốt D

Hình 3.1.23 Cấu tạo chốt D

2.3 Flip flop khi có thêm ngõ vào trực tiếp

Như thấy các FF đã xem xét ở trên khi cấp điện sẽ có thể xây dựng ngay trạng thái của ngõ ra vì nó còn tuỳ thuộc vào cấu trúc của mạch và các yếu tố ngẫu nhiên khác. Vì lí do này 2 ngõ vào mới được thêm vào để xác định chính xác trạng thái logic ra lúc cấp điện (mở nguồn) hay bất cứ lúc nào muốn, nó hoàn toàn độc lập với trạng thái logic ở các ngõ vào đồng bộ J, K, R, S, D, T và kể cả xung đồng hồ ck, tứcl à chúng giành quyền ưu tiên trước hết quyết định ngõ ra. Chúng được gọi là ngõ vào trực tiếp (ngõ vào không đồng bộ) và đặt tên là Preset (Pr) có nghĩa là đặt trước và Clear (Cl) có nghĩa là xoá

Cần phải để ý rằng không được phép đặt chân Pr = Cl = 0 vì khi đó Q = Q' =1 trạng thái cấm. Chân Pr, Cl khi này không có tác dụng gì, không xác định được trạng thái ra. Do đó, nhiều mạch FF chỉ có 1 ngõ Clear để xoá mạch khi cần mà không có ngõ Pr; có FF thì lại không có cả 2 ngõ này.

Về cấu trúc bên trong của FF khi này, 2 ngõ Pr và Cl sẽ được đưa vào tầng trung gian của các FF, như trong cấu tạo của IC 74LS76.

Hình 3.124 Kí hiệu FF SR có thêm ngõ Pr và Cl

3.1 Mạch phát hiện tuần tự các dữ liệu.

    • Với 2 tín hiệu vào cùng một lúc A và B, để xác định tín hiệu nào vào trước, tín hiệu nào vào sau (chẳng hạn ai bấm chuông trước), ta có thể dùng FF JK (cổng NAND không thể xác định được). Mạch trên minh hoạ cho hoạt động của mạch
      • Hình 3.1.27 Mạch phát hiện tuần tự dữ liệu A và B
    • FF JK có ngõ K để ở thấp, xoá mạch để ngõ ra Q ở thấp. Bây giờ nếu A đưa tới ngõ J mà vào trước, thì khi B vào sau ở ngõ ck sẽ làm Q lên cao. Ngược lại, nếu A vào sau, thì khi B vào trước (ngõ J khi này vẫn ở thấp) sẽ vẫn để ngõ ra Q ở thấp

3.2 Mạch báo động khi tia sáng bị cắt

    • Hình minh hoạ
      • Hình 3.1.28 Mạch báo động khi tia sang bị cắt
    • Hoạt động :
        • Bình thường công tắc SW hở để ngõ R của chốt SR ở cao. Chùm tia sáng đến transistor quang làm điện trở giữa cực B và E của nó giảm (tuỳ thuộc cường độ ánh sáng rọi vào). Do S, R đang ở cao nên ngõ ra của chốt vẫn giữ nguyên trạng thái trước đó (được xác định lúc mở điện hay các yếu tố khác).
        • Để xác định trạng thái ban đầu ta đóng SW trong chốc lát cho ngõ R ở thấp. FF đang ở chế độ reset, do đó ngõ ra Q ở thấp. Khi thiết lập lại ngõ ra thì cần phải ngắt mạch báo động ra(tránh báo động giả). Khi thiết lập xong mới nối lại mạch, R lúc này đã ở cao, ngõ ra Q ở thấp
        • Khi tia sáng bị cắt, transistor quang có thể dẫn yếu hẳn hay ngắt luôn do đó ngõ S ở thấp (do nối qua trở 47K), chốt ở chế độ đặt, do đó ngõ ra Q lên cao kích thích mạch báo động hoạt động (chẳng hạn loa đèn, khi này cũng cần thêm phần giao tiếp tải như đã nói đến ở bài sử dụng cổng logic của chương 1)
        • Nếu tia sáng chỉ bị cắt trong chốc lát thôi (chẳng hạn do có người đi ngang qua) tức là ngõ S xuống thấp trong chốc lát rồi lên trở lại thì ngõ ra Q vẫn ở cao tức mạch vẫn báo động kéo dài. Muốn tắt mạch báo động đi ta đóng SW lại để R xuống thấp. Chốt ở chế độ đặt lại nên ra Q ở 0 mạch báo động ngắt.
        • Phần mạch phát quang có thể bị kích hoạt bới tiếp điểm sờ chạm ở cửa (báo động đột nhập), cảm biến dò mực nước, nhiệt độ (báo động quá nhiệt, quá mực nước cho phép)

3.3 Chia tần

    • Để 1 FF JK ở chế độ chờ lật (J = K = 1). Nếu xung vuông tần số f được đưa tới chân Ck của FF này thì ở mỗi cạnh lên của xung Ck, ngõ ra Q sẽ lật trạng thái và phải chờ đến cạnh xuống ck tiếp theo thì Q mới lật trở lại. Như vậy dạng sóng ngõ ra cũng là 1 xung vuông với tần số chỉ còn một nửa của sóng vào ngõ ck. Ta nói rằng tín hiệu đã được chia đôi tần số. Nếu mắc thêm 1 FF thứ 2 lấy xung ck từ ngõ ra Q của FF thứ 1 thì tương tự sóng ra sẽ có tần số còn 1 nửa của sóng ra ở tầng FF đầu hay bằng ¼ tần số của sóng đưa vào FF thứ nhất
      • Hình 3.1.29 Chia tần
      • Với cách mắc FF như trên, nếu có n FF thì tần số của sóng ra cuối cùng sẽ chỉ còn là 1/2n. Thực ra, cách nối FF JK như trên chính là FF T.

3.4 Lưu trữ dữ liệu song song

Trong các hệ thống số, dữ liệu (số, mã hay các dạng thông tin khác) thường được lưu trữ thành một nhóm các bit (mã ASCII là nhóm 7 bit, số BCD là nhóm 4 bit…). Do đó các FF được mắc thích hợp sẽ cho phép dữ liệu được lưu trữ và xử lí đồng thời trên các đường song song. Cách mắc các FF được minh hoạ như hình dưới:

Mỗi nhóm dữ liệu 3 bit được đưa tới ngõ vào của 2 FF D. Xung đồng hồ sẽ làm cho cả 3 FF hoạt động đồng bộ và chỉ khi ck lên cao, dữ liệu mới được đưa ra ngoài. Như vậy khi ck chưa tác động cạnh lên thì dữ liệu 3 bit đã được lưu trữ trong 3 FF D. Một nhóm các FF D mắc theo cách này sẽ tạo thành thanh ghi dịch cho phép lưu trữ dữ liệu song song, mà ta sẽ tìm hiểu kĩ hơn ở phần sau.

Hình 3.1.30 Lưu trữ dữ liệu song song ( 3bit)

3.5 Đếm

Một ứng dụng rất quan trọng khác của FF là đếm. Đếm là khả năng nhớ được số xung đầu vào, nó là một thao tác cơ bản quan trọng và được sử dụng rộng rãi, từ các thiết bị đo chỉ thị số đến các máy tính điện tử số loại lớn, gần như tất cả các hệ thống số hiện đại đều cũng thấy có mặt nó.

Cách mắc 2 FF JK như hình bên cho phép đếm từ 1 đến 3 (dạng mã nhị phân). Thực ra hoạt động của mạch đếm cũng tương tự như chia tần đã nói ở trên. Dạng sóng ở ngõ ra sẽ đặt trở lại sau mỗi 4 chu kì xung kích ck đầu vào.

Hình 3.1.31 Ứng dụng FF làm mạch đếm

Các đặc tính kĩ thuật và điện của FF cũng tương tự như của các IC cổng logic, tuỳ từng loại có khác nhau đôi chút, bạn có thể xem cụ thể ở data sheet của từng IC. Ở đây đưa ra một số IC chứa FF hay dùng.

Như đã nói, chỉ có FF JK, FF D và chốt D là được tích hợp, FF RS bị trạng thái cấm nên được thay thế bởi FF JK, FF T được tạo ra dễ dàng khi nối chung 2 ngõ vào FF JK. Nếu cần ta cũng có thể tạo ra các loại trên từ cổng logic rời, tất nhiên các đặc tính không tốt bằng chúng khi tích hợp.

4.1 FF JK

    • 74LS76 là 1 IC chứa 2 FF JK trong cùng một vỏ, ngõ đồng hồ clock (kí hiệu là CP: Clock Pulse)tác động cạnh xuống; nó đều có cả 2 ngõ vào trực tiếp là Preset (kí hiệu chân là SD) và Clear (kí hiệu chân là CD), trong cấu tạo mạch như hình dưới, chúng đều được đưa vào tầng nand đầu. Người đọc có thể xem thêm thông tin ở phầndatasheet 74LS76
      • Hình 3.1.32 Kí hiệu khối và cấu tạo bên trong của 74LS76
      • Bảng trạng thái hoạt động của 74LS76
    • Một số IC khác :
        • 7473 : 2 FF JK cấu tạo chủ tớ, ck tác động cạnh lên, có ngõ xoá clear
        • 74LS73 : 2 FF JK thường, ck tác động cạnh xuống, có ngõ xoá clear
        • 7476 : 2FF JK cấu tạo chủ tớ, ck tác động cạnh lên, có cả preset và clear
        • 74112/113/114: 2 FF JK nảy ở cạnh xuống có preset và clear
        • 74276/LS276 : 4 FF JK dùng ck riêng và nảy ở cạnh xuống, chân preset và clear lại dùng chung.
        • 74376/LS376 : 4 FF JK dùng ck chung nảy ở cạnh xuống, chỉ có clear chung

4.2 FF D

    • 74LS74 là 1 IC chứa 2 FF D trong cùng 1 vỏ, nó có ngõ đồng hồ (CP) tác động cạnh lên được đưa vào tầng chốt đầu; ngõ xoá (CD) và ngõ đặt (SD) tác động cạnh xuống, được đưa vào tầng chốt sau (như hình dưới). Người đọc có thể xem thêm thông tin ở datasheet của 74LS74
      • Hình 3.1.33 Kí hiệu khối và cấu trúc mạch của 74LS74
      • Bảng trạng thái hoạt động của 74LS74
    • Một số IC khác hay dùng
        • 7474 : Hai ff D có ck nảy ở cạnh lên, có cả preset và clear
        • 74LS175 : 4 FF D có ck chung nảy ở cạnh lên, chỉ có clear dùng chung
        • 74LS374 : 8 FF D có ck nảy ở cạnh lên, không có preset hay clear nhưng có ngõ cho phép ra chung. Các ngõ ra 3 trạng thái
        • 74LS174 : 6 FF D có chung ngõ xoá MR
        • 74LS377/738/379 : 8/6/4 FF D có chung ngõ cho phép E

4.3 Chốt D

    • C74LS375 gồm 4 chốt D cho phép chốt dữ liệu 4 bit song song khi ngõ cho phép E01 và E23 ở thấp. E01 cho phép chốt dữ liệu D0, D1; còn E02 cho phép chốt dữ liệu D2, D3. Bạn có thể xem thêm thông tin về IC này ở datasheet 74LS375
      • Hình 3.1.34 Kí hiệu khối và chân ra của chốt D 74LS375
      • Hình 3.1.35 Cấu trúc của 1 mạch chốt trong IC 74LS375
    • Một số IC khác hay dùng
        • 7475 : 4 chốt D
        • 74LS373 : 8 chốt D có ngõ cho phép ra chung, các ngõ ra là loại ra 3 trạng thái
        • 74LS256 : 4 chốt D chốt địa chỉ 4 bít song song chung ngõ E và CL
        • 74LS259 : 8 chốt D chốt địa chỉ 8 bit song song chung ngõ E và Cl

4.4 FF và chốt CMOS

    • Để ý là tất cả các loại FF và chốt kể trên đều thuộc họ TTL và cơ bản có cấu tạo từ các cổng logic TTL đã xem xét ở phần lí thuyết trên. Ngoài ra cũng có các loại FF và chốt khác cấu tạo từ cổng logic họ CMOS. Chúng thường có cấu tạo chủ tớ và dùng thêm cổng truyền, do đó xung ck cũng thường tác động mức lên hay xuống (ít dùng) thay vì tác động cạnh lên hay xuống.
    • Cấu tạo và bảng hoạt động của 1 IC chốt CMOS 74HC533 (8 chốt trong suốt đảo ra 3 trạng thái) như hình dưới. Người đọc có thể xem thêm thông tin ở phần datasheet 74HC533
              • Hình 3.1.36 Kí hiệu khối và chân ra của 74HC533
      • Trong đó :
      • Hoạt động của IC được tóm tắt theo bảng sau, còn cấu trúc mạch bạn có thể xem thêm trong phân datasheet
      • Trong đó
      • 0* là mức thấp trong lúc đặt trước khi LE chuyển từ cao xuống thấp
      • 1* là mức cao trong lúc đặt trước khi LE chuyển từ cao xuống thấp
    • Một số IC CMOS khác là :
        • 74HC/HCT75 : 4 chốt trong suốt
        • 74HC/HCT259 : chốt định địa chỉ 8 bit
        • 74HC/HCT173 : 4 FF D có reset, ra 3 trạng thái ở cạnh lên
        • 74HC/HCT377 : 8 FF D có chung đồng hồ và ngõ vào cho phép