Tải bản đầy đủ (.docx) (47 trang)

MẠCH TUẦN TỰ KỸ THUẬT SỐ CĐN

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (761.36 KB, 47 trang )

Bài 1: Các khái niệm cơ bản
Chương trước đã đề cập đến các mạch tổ hợp từ các cổng logic đơn giản đến các mạch tích hợp
MSI phức tạp hơn như mạch chuyển đổi mã, dồn kênh, tách kênh. Chúng có một đặc điểm là
ngõ ra sẽ thay đổi trạng thái theo trạng thái ngõ vào mà không kể tới các trạng thái trước đó
của nó, nghĩa là chúng không có tính nhớ.
Đơn giản như mạch trên hình 3.1.1, nếu A = 1 thì Y = 0
Hình 3.1.1 Cổng NOT
Ở chương này, ta sẽ nói đến một loại lớn khác của mạch số, đó là mạch tuần tự. Khác với mạch
tổ hợp, trạng thái ngõ ra của mạch tuần tự tuỳ thuộc không những vào các trạng thái ngõ vào
mà còn vào cả 2 trạng thái trước đó của ngõ ra. Không những thế, trạng thái ngõ ra sẽ không
thay đổi ngay khi ngõ vào thay đổi mà lại còn phải đợi đến khi có xung lệnh gọi là xung đồng
hồ (clock). Như vậy mạch tuần tự vừa có tính nhớ vừa có tính đồng bộ.
Cả mạch tổ hợp và tuần tự đều được sử dụng nhiều trong các hệ thống số. Một hệ tuần tự có
thể biểu diễn một cách tổng quát như sau:
Hình 3.1.2 Hệ tuần tự
Phần tổ hợp sẽ nhận tín hiệu logic từ đầu vào bên ngoài và từ đầu ra của các phần tử nhớ, nó
tính toán dựa vào các đầu vào này để cho ra các đầu ra khác nhau, trong đó một phần được
đem sang khối các phần tử nhớ để cất giữ đi; đầu ra của phần tử nhớ có thể đưa ra ngoài hay
đưa điều khiển phần tổ hợp. Phần điều khiển sẽ cho phép phần nhớ và tổ hợp hoạt động theo
một số yêu cầu đề ra.
Như vậy, các đầu ra của hệ thống số vừa phụ thuộc vào các đầu vào vừa liên quan đến thông
tin đã lưu trữ bên trong của phần tử nhớ. Phần tử nhớ có thể là một mạch logic nhưng có khi
chỉ là một đường nối phản hồi từ ngõ ra về ngõ vào.

1
1.1 Mạch chốt cổng Nand
Hãy xem cấu tạo của mạch dưới đây :
Hình 3.1.3 Mạch chốt cổng Nand

Mạch gồm 2 cổng logic Nand mắc chéo nhau, có
2 ngõ vào là S (set : có nghĩa là đặt) và R (reset


: có nghĩa là đặt lại). 2 ngõ ra kí hiệu là Q (đầu
ra bình thường) và Q (đầu ra đảo, tức là có
trạng thái logic ngược lại với Q)
o Hoạt động của mạch như thế nào?
o Khi thiết lập mạch chốt đặt S = 0, R = 1
Do S = 0 nên Q = 1 bất chấp ngõ còn lại
Vậy ngõ ra ổn định sẽ là Q = 1 và Q = 0
o Khi xoá mạch chốt S = 1 và R = 0
Do R = 0 nên Q = 1 bất chấp ngõ còn lại
Vậy ngõ ra ổn định sẽ là Q = 0 và Q = 1
Vì lí do đối xứng nên hoạt động thiết lập và xoá mạch chốt ngược nhau.
o Khi để ngõ vào thường nghỉ S= 1 R=1
Rõ ràng chưa thể biết ngõ ra Q và Q như thế nào
Hãy xét đến trạng thái trước đó:
Vì vậy khi S=1 R=1 trạng thái ra không thay đổi tức là trước đó như thế nào thì
sau vẫn vậy (Qo và Qo)
o Khi thiết lập và xoá cùng lúc S=0, R=0
Rõ ràng khi nãy cả 2 cổng NAND đều có mức vào là 0 nên mức ra là 1, đây là
điều kiện không mong muốn vì đã quy ước Q và có trạng thái logic ngược nhau.
Hơn nữa khi S, R trở lại mức cao(1) thì sẽ không thể dự đoán Q và Q thay đổi; vì
vậy trạng thái này không được sử dụng còn gọi là trạng thái cấm.
Như vậy, mạch có 2 trạng thái ra ổn định là 0 và 1; mạch có thể nhận tín hiệu số vào (trong
trường hợp đơn giản này chỉ là 0 và 1) và đưa được nó ra, và từ đây khả năng nhớ (lưu trữ dữ
liệu), đồng bộ, và một số điểm khác cũng có thể được thực hiện được. Ta sẽ tìm hiểu kĩ hơn ở
những mạch sau đó. Mạch hoạt động như ở trên được coi là 1 mạch chốt, 1dạng mạch tuần tự
cơ bản nhất.
2
1.2 Mạch chốt là gì?
Như tên gọi của nó, mạch có thể cài lại, giữ lại trạng thái logic ngõ vào
Hình 3.1.4 Kí hiệu khối chốt SR và bảng hoạt động

1.3 Chốt cổng NOR
Mạch chốt như trên có thể thay thế 2 cổng
nand bằng 2 cổng NOR nguyên lí hoạt động
cũng tương tự nhưng ngõ vào S, R tác động ở
mức cao


Hình 3.1.6 Chốt cổng NOR
Hình 3.1.7 Dạng sóng minh hoạ và bảng hoạt động của mạch chốt cổng NOR
Thấy rằng các mạch tuần tự dù là mạch chốt đã khảo sát ở trên hay các mạch cao hơn thì đều
được cấu tạo bởi cổng logic cơ bản. Mặc dù tự thân cồng logic không thể lưu trữ được dữ liệu
nhưng khi biết kết hợp với nhau theo một cách thức cho phép tuỳ theo mức độ phức tạp, quy
mô kết hợp mà sẽ có mạch chốt, mạch lật, ghi dịch hay hơn nữa là các bộ nhớ, xử lý.
1.4 Ứng dụng của mạch chốt :
Mạch chốt như tên gọi của nó được sử dụng nhiều trong các hệ thống số cần chốt hay đệm dữ
liệu trước khi được xử lý điều khiển hay truyền nhận. Ngoài ra nó cònđược sử dụng làm mạch
chống dội và mạch tạo dạng sóng vuông.
a. Mạch chống dội :
3
o Hiện tượng dội do các thiết bị cơ khí gây nên khi đóng ngắt chuyển mạch điện
tử. Mạch chốt có thể được dùng để chống dội như đã thấy ở chương 1
o Mạch minh hoạ
Hình 3.1.8 Chốt NAND chống dội
b. Mạch tạo dao động sóng vuông
Một mạch chốt cơ bản kết hợp với một số linh kiện R , C để tạo nên mạch dao động
sóng vuông do ngõ ra lật trạng thái qua lại giữa mức 1 và 0. Mạch thiết lập và xoá tự
động theo thời hằng nạp xả của tụ C và trở R.
o Tần số dao động tính theo giá trị R, C là
f = ½(R+R3)C
o Mạch minh hoạ

Hình 3.1.9 Ứng dụng chốt tạo dao động sóng vuông
1.5 Chốt NAND khi có xung đồng hồ
Như đã nói đến ở phần trước, các mạch tuần tự còn có một đặc tính nữa là tính đồng bộ mà
mạch chốt chưa thể hiện. Trong hệ thống mạch logic, các mạch phải thay đổi trạng thái có trật
tự hay đồng bộ nhau thì mới có thể khống chế các trạng thái ra theo các thời điểm chọn trước.
Lúc này người ta sử dụng chân Ck (clock_đồng hồ: vì thông thường tín hiệu trên chân này có
sóng dạng điện áp như tín hiệu của đồng hồ) minh hoạ qua hình sau
o Mạch chốt được thêm vào 2 cổng nand ở trước cùng với 1 ngõ điều khiển ck
4
Hình 3.1.10 Chốt NAND có thêm xung đồng hồ
Bảng sự thật của
chốt Nand khi có
thêm ck
Hoạt động của mạch có thể giải thích theo bảng sự thật:
Mạch vừa nêu còn có một tên rất thông dụng: đó là flip flop (viết tắt là FF). Cụ thể ở đây là
mạch FF RS. Các FF có 4 dạng kích hoạt từ chân Ck: kích hoạt theo mức cao, mức thấp; cạnh
lên, cạnh xuống (tại thời điểm xung Ck có mức hoặc cạnh tương thích thì FF mới được phép
chuyển trạng thái).
Do đó trong các sổ tay tra cứu IC số, các trạng thái kích hoạt này được ký hiệu như sau


5
Bài 2.1: Flip-flop và các vi mạch
điển hình
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.
6
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
7
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 (V
cc
) 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
8

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
9
Hình 3.124 Kí hiệu FF SR có
thêm ngõ Pr và Cl
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.
Bài 2.2: Ứng dụng của chốt và FF
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ạ
10

Hình 3.1.28 Mạch báo động khi tia sang bị cắt

• Hoạt động :
o 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).
o Để 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
o 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)
o 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.
o 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ì
11
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:

Hình 3.1.30 Lưu trữ dữ liệu song song
( 3bit)
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.
12
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
Bài 2.3: Một số IC chốt và ứng dụng
thường dùng
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à S
D
) và Clear (kí hiệu chân là C
D
), 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ần datasheet 74LS76

13
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 :
o 7473 : 2 FF JK cấu tạo chủ tớ, ck tác động cạnh lên, có ngõ xoá clear
o 74LS73 : 2 FF JK thường, ck tác động cạnh xuống, có ngõ xoá clear
o 7476 : 2FF JK cấu tạo chủ tớ, ck tác động cạnh lên, có cả preset và clear
o 74112/113/114: 2 FF JK nảy ở cạnh xuống có preset và clear
o 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.
o 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
14
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
o 7474 : Hai ff D có ck nảy ở cạnh lên, có cả preset và clear
o 74LS175 : 4 FF D có ck chung nảy ở cạnh lên, chỉ có clear dùng chung
o 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
o 74LS174 : 6 FF D có chung ngõ xoá MR
o 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

15
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
o 7475 : 4 chốt D
o 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
o 74LS256 : 4 chốt D chốt địa chỉ 4 bít song song chung ngõ E và CL
o 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 đó :
16
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à :
o 74HC/HCT75 : 4 chốt trong suốt
o 74HC/HCT259 : chốt định địa chỉ 8 bit
o 74HC/HCT173 : 4 FF D có reset, ra 3 trạng thái ở cạnh lên
o 74HC/HCT377 : 8 FF D có chung đồng hồ và ngõ vào cho phép


BÀI 3: THANH GHI
1. Giới thiệu
Ở phần trước ta đã được biết đến các loại FF. Chúng đều có thể lưu trữ (nhớ 1 bit) và
chỉ khi có xung đồng bộ thì bit đó mới truyền tới ngõ ra (đảo hay không đảo). Bây giờ nếu ta
mắc nhiều FF nối tiếp lại với nhau thì sẽ nhớ được nhiều bit. Các ngõ ra sẽ phần hoạt động
theo xung nhịp ck. Có thể lấy ngõ ra ở từng tầng FF (gọi là các ngõ ra song song) hay ở tầng
cuối (ngõ ra nối tiếp). Như vậy mạch có thể ghi lại dữ liệu (nhớ) và dịch chuyển nó (truyền)
nên mạch được gọi là ghi dịch. Ghi dịch cũng có rất nhiều ứng dụng đặc biệt trong máy tính,
như chính cái tên của nó: lưu trữ dữ liệu và dịch chuyển dữ liệu chỉ là ứng dụng nổi bật nhất
2. Cấu tạo
17
Ghi dịch có thể được xây dựng từ các FF khác nhau và cách mắc cũng khác nhau nhưng
thường dùng FF D, chúng được tích hợp sẵn trong 1 IC gồm nhiều FF (tạo nên ghi dịch n bit).
Hãy xem cấu tạo của 1 ghi dịch cơ bản 4 bit dùng FF D
Hình 3.2.1 Ghi dịch 4 bit cơ bản
3. Hoạt động
Thanh ghi, trước hết được xoá (áp xung CLEAR) để đặt các ngõ ra về 0. Dữ liệu cần dịch
chuyển được đưa vào ngõ D của tầng FF đầu tiên (FF0). Ở mỗi xung kích lên của đồng hồ ck,
sẽ có 1 bit được dịch chuyển từ trái sang phải, nối tiếp từ tầng này qua tầng khác và đưa ra ở
ngõ Q của tầng sau cùng (FF3). Giả sử dữ liệu đưa vào là 1001, sau 4 xung ck thì ta lấy ra bit
LSB, sau 7 xung ck ta lấy ra bit MSB.

Nếu tiếp tục có xung ck và không đưa thêm dữ liệu vào thì ngõ ra chỉ còn là 0 (các FF đã
reset : đặt lại về 0 hết. Do đó ta phải “hứng” hay ghim dữ liệu lại. Một cách làm là sử dụng 2
cổng AND, 1 cổng OR và 1 cổng NOT như hình dưới đây.
Hình 3.2.2 Cho phép chốt dữ liệu trước khi dịch ra ngoài
Dữ liệu được đưa vào thanh ghi khi đường điều khiển R/W control ở mức cao (Write). Dữ liệu
chỉ được đưa ra ngoài khi đường điều khiển ở mức thấp (Read).
CÁC LOẠI THANH GHI DỊCH

18
Có nhiều cách chia loại thanh ghi dịch (SR)
- Theo số tầng FF (số bit) : SR có cấu tạo bởi bao nhiêu FF mắc nối tiếp thì có bấy nhiêu bit (ra
song song). Ta có SR 4 bit, 5 bit, 8 bit, 16 bit …
Có thể có SR nhiều bit hơn bằng cách mắc nhiều SR với nhau hay dùng công nghệ CMOS (các
máy tính sử dụng SR nhiều bit)
- Theo cách ghi dịch có
SISO vào nối tiếp ra nối tiếp
SIPO vào nối tiếp ra song song
PISO vào song song ra nối tiếp
PIPO vào song song ra song song
- Theo chiều dịch có SR trái, phải, hay cả 2 chiều
- Theo mạch ra có loại thường và 3 trạng thái
Loại vào nối tiếp ra song song và ra nối tiếp
Loại vừa khảo sát ở mục 1 thuộc loại ghi dịch vào nối tiếp ra nối tiếp. Đây cũng là cấu trúc của
mạch ghi dịch vào nối tiếp ra song song. Dữ liệu sẽ được lấy ra ở 4 ngõ Q của 4 tầng FF, vì
chung nhịp đồng hồ nên dữ liệu cũng được lấy ra cùng lúc.
Hình 3.2.3 Mạch ghi dịch vào nối tiếp ra song song
Bảng dưới đây cho thấy làm như thế nào dữ liệu được đưa tới ngõ ra 4 tầng FF
Loại được nạp song song (vào song song) ra nối tiếp và song song
Bây giờ muốn đưa dữ liệu vào song song (còn gọi là nạp song song) ta có thể tận dụng ngõ
vào không đồng bộ Pr và Cl của các FF để nạp dữ liệu cùng một lúc vào các FF. Như vậy có thể
dùng thêm 2 cổng nand và một cổng not cho mỗi tầng. Mạch mắc như sau
19
H3.2.4a Mạch ghi dịch nạp song song
Mạch hoạt động bình thường khi nạp song song ở thấp như đã nói. Khi nạp song song WRITE
= 1 cho phép nạp
ABCD được đưa vào Pr và Cl đặt và xoá để Q0 = A, Q1 = B, … Xung ck và ngõ vào nổi tiếp
không có tác dụng (vì sử dụng ngõ không đồng bộ Pr và Cl)
Một cách khác không sử dụng chân Pr và Cl được minh hoạ như hình dưới đây.Các cổng nand

được thêm vào để nạp các bit thấp D1, D2, D3. Ngõ WRITE/SHIFT dùng để cho phép nạp (ở
mức thấp) và cho phép dịch (ở mức cao). Dữ liệu nạp và dịch vẫn được thực hiện đồng bộ như
các mạch trước.
H3.2.4b Mạch ghi dịch nạp song song ra nối tiếp

20
Với mạch hình 3.2.4b ngõ ra dữ liệu là nối tiếp, ta cũng có thể lấy ra dữ liệu song song như ở
hình 3.2.5, Cấu trúc mạch không khác so với ở trên. Dữ liệu được đưa vào cùng lúc và cũng lấy
ra cùng lúc (mạch như là tầng đệm và hoạt động khi có xung ck tác động lên.
Hình 3.2.5 Mạch ghi dịch vào song song ra song song
Ghi dịch 2 chiều
Như đã thấy, các mạch ghi dịch nói ở những phần trên đều đưa dữ liệu ra bên phải nên chúng
thuộc loại ghi dịch phải. Để có thể dịch chuyển dữ liệu ngược trở lại (dịch trái) ta chỉ việc cho
dữ liệu vào ngõ D của tầng cuối cùng, ngõ ra Q được đưa tới tầng kế tiếp, …. Dữ liệu lấy ra ở
tầng đầu.
Để dịch chuyển cả 2 chiều, có thể nối mạch như hình dưới đây :
Hình 3.2.6 Mạch ghi dịch cho phép dịch chuyển cả 2 chiều
Với mạch trên, các cổng NAND và đường cho phép dịch chuyển dữ liệu trái hay phải. Bảng
dưới đây minh hoạ cho mạch trên : dữ liệu sẽ dịch phải 4 lần rồi dịch trái 4 lần. Để ý là thứ tự
4 bit ra bị đảo ngược lại so với chúng ở trên.

MỘT SỐ IC GHI DỊCH
21
Nhận thấy rằng các ghi dịch mô tả ở trên đều dùng các FF rời, rồi phải thêm nhiều cổng logic
phụ để tạo các loại SR khác nhau. Trong thực tế ghi dịch được tích hợp sẵn các FF và đã nối
sẵn nhiều đường mạch bên trong; người sử dụng chỉ còn phải làm một số đường nối bên ngoài
điều khiển các ngõ cho phép thôi. Các SR cũng được tích hợp sẵn các chức năng như vừa có
thể dịch trái dịch phải vừa vào nối tiếp vừa nạp song song. Ở đây là một số ghi dịch hay được
dùng :
Liệt kê

7494 : 4bit vào song song, nối tiếp; ra nối tiếp
7495/LS95 : 4 bit, vào song song/nối tiếp; ra song song; dịch chuyển trái phải
7495/LS96 : 5 bit, vào nối tiếp/song song; ra song song nối tiếp
74164/LS164 : 8 bit vào song song ra nối tiếp
74165/LS765 : 8 bit, vào song song/nối tiếp; ra nối tiếp bổ túc
74166/LS166 : 8 bit; vào song song/nối tiếp; ra nối tiếp; có thể nạp đồng bộ
74194/LS194 : 4 bit vào song song/nối tiếp; ra song song; nạp đồng bộ dịch chuyển trái
phải
74195/LS195 : 4 bit, vào song/nối tiếp; ra song song; tầng đầu vào ở JK
74295/LS295 : như 74194/LS194 nhưng ra 3 trạng thái
74395/LS295 : 4 bit vào song song; ra song song 3 trạng thái
74LS671/672 : 4 bit có thêm chốt
74LS673/674 : 16 bit

Khảo sát ghi dịch tiêu biểu 74/74LS95
Hình 3.2.7 Sơ đồ chân ra 74LS95

22
Hình 3.2.8 Cấu trúc bên trong ghi dịch 74LS95

Sơ đồ cấu tạo và bảng hoạt động của IC như hình trên. Các chế độ hoạt động của nó như sau :
Nạp nối tiếp
Đưa dữ liệu vào tầng đầu Q0
Đặt điều khiển chọn ở mức thấp
Khi có ck1 hay ck2 thì dữ liệu sẽ lần lượt nạp vào ghi dịch và sẽ được đưa tới các tầng
sau
Nạp song song
Dữ liệu vào ở 4 ngõ ABCD
Đưa điều khiển kiểu lên cao
Khi có ck1 hay ck2 thì dữ liệu sẽ được nạp vào đồng thời các tầng của ghi dịch ở cạnh

lên đầu của xung ck.
ỨNG DỤNG
Thanh ghi dịch đóng vai trò cực kì quan trọng trong việc lưu trữ, tính toán số học và logic.
Chẳng hạn trong các bộ vi xử lí, máy tính đều có cấu tạo các thanh ghi dịch; trong vi điều
khiển (8051) cũng có các ghi dịch làm nhiều chức năng hay như trong nhân chia, ALU đã xét ở
chương 2 ghi dịch cũng đã được đề cập đến. Ở đây không đi vào chi tiết mà chỉ nói khái quát
ngắn gọn về ứng dụng của chúng.
1. Lưu trữ và dịch chuyển dữ liệu
Đây là ứng dụng cơ bản và phổ biến nhất của chúng. Ghi dịch n bit sẽ cho phép lưu trữ được n
bit dữ liệu một thời gian mà chừng nào mạch còn được cấp điện. Hay nói cách khác dữ liệu khi
dịch chuyển đã được trì hoãn một khoảng thời gian, nó tuỳ thuộc vào :
- Số bit có thể ghi dịch (số tầng FF cấu tạo nên ghi dịch)
- Tần số xung đồng hồ
23
2. Tạo kí tự hay tạo dạng song điều khiển
Ta có thể nạp vào ghi dịch, theo cách nạp nối tiếp hay song song, một mã nhị phân của một
chữ nào đó (A, B, ) hay một dạng sóng nào đó. Sau đó nếu ta nối ngõ ra nối tiếp của ghi
dịch vòng trở lại ngõ vào nối tiếp thì khi có xung ck các bit sẽ dịch chuyển vòng quanh theo tốc
độ của đồng hồ. Cách này có thể điều khiển sáng tắt của các đèn (sắp xếp trên vòng tròn hay
cách nào khác) Như mô phỏng sau là dạng sáng tắt của đèn led. Với tải cổng suất thì cần mạch
giao tiếp công suất như thêm trans, rờ le, SCR, đã nói ở chương 1 cũng sẽ được dùng. Cũng
có thể tạo ra dạng sóng tín hiệu tuần hoàn cho mục đích thử mạch bằng cách này. Ta có thể
thay đổi dạng sóng bằng cách thay đổi mã số nhị phân nạp cho ghi dịch, và thay đổi tần số
xung kích ck được cấp từ mạch dao động ngoài từ 0 đến 200MHz tuỳ loại mạch ghi dịch.
Hình 3.2.10 Tạo dạng sóng điều khiển bởi ghi dịch
3. Chuyển đổi dữ liệu nối tiếp sang song song và ngược lại
Các máy tính hay các bộ vi xử lí khi giao tiếp với nhau hay với các thiết bị ngoài thường trao
đổi dữ liệu dạng nối tiếp khi giữa chúng có một khoảng cách khá xa. Ngoài cách dùng các bộ
dồn kênh tách kênh ở 2 đầu truyền mà ta đã nói ở chương 2 thì ghi dịch cũng có thể được
dùng. Các ghi dịch chuyển song song sang nối tiếp sẽ thay thế cho mạch dồn kênh và các ghi

dịch chuyển nối tiếp sang song song sẽ thay thế cho mạch tách kênh. Bên cạnh ghi dịch, cũng
cần phải có các mạch khác để đồng bộ, chống nhiễu, rò sai… nhằm thực hiện quá trình truyền
nối tiếp hiệu quả.
hình 3.2.11 Truyền dữ liệu nối tiếp
24
4. Bus truyền dữ liệu
Bây giờ liệu với 8 đường dữ liệu song song vừa nhận được từ tách kênh đó (còn gọi là 1 byte),
ta có thể dùng chung cho nhiều mạch được không? Sở dĩ có yêu cầu đó là vì trong máy vi tính
có rất nhiều mạch liên kết với nhau bởi các đường dữ liệu địa chỉ gồm nhiều bit dữ liệu 8, 16,
32… mà ta đã biết đến nó với cái tên là bus. Vậy bus chính là các đường dữ liệu dùng chung
cho nhiều mạch (chẳng hạn bus giữa các vi xử lí, các chíp nhớ bán dẫn, các bộ chuyển đổi
tương tự và số,…
Chỉ có một đường bus mà lại dùng chung cho nhiều mạch, do đó để tránh tranh chấp giữa các
mạch thì cần phải có một bộ phận điều khiển quyết định cho phép mạch nào được thông với
bus, các mạch khác bị cắt khỏi bus. Vậy ở đây thanh ghi hay các bộ đệm 3 trạng thái được
dùng
Hình dưới minh hoạ cho đường bus 8 bit nối giữa vi xử lí với bộ đếm 8 bit, bàn phím, và bộ 8
nút nhấn
Giả sử rằng cả thiết bị đều cần giao tiếp với vi xử lí, nhưng chỉ có một đường truyền nếu tất cả
đồng loạt đưa lên thì có thể bị ảnh hưởng lẫn nhau giữa các dữ liệu, và thông tin nhận được là
không chính xác. Do đó ở đây vi xử lí sẽ quyết định: chẳng hạn nó đặt ngõ OE1 cho phép bộ
đếm cho mạch đếm đưa dữ liệu lên bus còn chân OE2 và OE3 ngưng làm dữ liệu từ bàn phím
và nút nhấn bị ngắt (chờ) tức ngõ ra các bộ đệm hay thanh ghi 3 trạng thái ở trạng thái tổng
trở cao. Tương tự khi vi xử lí cần giao tiếp với các mạch khác. Với tốc độ xử lí hàng trăm hàng
ngàn MHz thì việc dữ liệu phải chờ là không đáng kể do đó giữa các thiết bị giao tiếp với nhau
rất nhanh và dường như đồng thời.
25

×