Sở dĩ gọi là “tĩnh” vì sau khi nạp số liệu vào ram này, số liệu được lưu trữ nguyên vẹn chừng nào nguồn nuôi vẫn được duy trì.. ram động được xây dựng từ các transistor mos hoặc cmos và
Trang 1Bài 10: ram
(Random - Access - Memory)
A Phần tóm tắt lý thuyết
Rom viết tắt của chữ “Read - Only - Memory”, có nghĩa “Bộ nhớ chỉ đọc số
liệu” ram viết tắt của chữ “Rardom - Access - Memory” có nghĩa “Bộ nhớ vừa đọc vừa ghi số liệu” rom và ram là các bộ lưu trữ (storage) được lắp ráp riêng lẻ
hoặc tổ hợp với nhau trên các bảng mạch in lớn trong hệ vi tính
Trong bài này ta chỉ quan tâm đến ram Có hai loại ram bán dẫn:
- ram tĩnh (Static ram)
- ram động (Dynamic ram)
ram tĩnh được xây dựng từ các trigơ lưỡng cực (Bipolar trigger) hoặc mos
hoặc cmos Sở dĩ gọi là “tĩnh” vì sau khi nạp số liệu vào ram này, số liệu được lưu trữ nguyên vẹn chừng nào nguồn nuôi vẫn được duy trì
ram động được xây dựng từ các transistor mos hoặc cmos và có thêm tụ
điện để lưu trữ số liệu Do có mặt của “dòng rò” nên sau khi nạp số liệu vào ram này, số liệu vẫn không được duy trì được nguyên vẹn dù rằng nguồn điện nuôi
chưa bị ngắt Do đó, mỗi lần muốn lưu trữ số liệu ta phải nạp lại (recharge) hoặc làm tươi lại (refresh)
Dù ram tĩnh hay ram động khi nguồn nuôi bị ngắt, số liệu lưu trữ đều bị huỷ Nói khác đi, hầu hết các ram đều mất khả năng “nhớ” khi không có nguồn
điện nuôi mạch Những ram như vậy được gọi là ram không lưu trữ (volatile
ram) Một số ram giữ được khả năng nhớ được gọi là ram lưu trữ (nonvolatile
ram) Ví dụ ram kiểu cũ cấu tạo từ các xuyến từ (magnetic core) hay ram kiểu
mới cấu tạo từ cmos kèm theo acquy Lithium (tuổi thọ 10 năm) thuộc loại ram lưu trữ Bài thực tập này được giới hạn trong phạm vi ram tĩnh không lưu trữ
1 Cấu trúc của ram tĩnh (static ram structure)
Ram có các đầu vào là đầu địa chỉ (address), đầu số liệu (data), đầu điều
khiển (control) và các đầu ra là đầu số liệu
Trang 2Hình vẽ trên là ký hiệu logic của một ram tĩnh (2n
x b) bit và ram tĩnh 32 bit Loại 32 bit là loại đơn giản nhất với n = 3 và b = 4
- Đầu vào địa chỉ (Address Input) được ký hiệu là A0 , A1 An – 1
- Đầu vào số liệu (Data Input) được ký hiệu Di0 , Di1 Dib -1
- Đầu ra số liệu (Data Output) được ký hiệu Do0 , Do1 Dob -1
- Đầu chọn chip (Chip Selection) : CS
- Đầu cho phép ra (Output Enable) : OE
- Đầu cho phép ghi (Write Enable) : WE
ram tĩnh bao gồm rất nhiều các “phần tử tĩnh” (static element) Mỗi phần tử
tĩnh chứa một phần tử nhớ là trigơ D Hình dưới đây là sơ đồ chức năng của một phần tử tĩnh
Trang 3Trong mỗi phần tử tĩnh thì in/out là đầu vào/ra số liệu SEL là đầu chọn (selection) WR là đầu ghi (Write) Phần tử này hoạt động khi sel = 0
- Khi WR = 0 , trigơ D mở và một bit số liệu được lưu trữ (ghi lại) trong
phần tử tĩnh
- Khi WR = 1 , bit số liệu nói trên được chuyển đến đầu ra (out) Đầu ra
này nối với đường bit (bit line) của BUS
Tất cả các phần tử tĩnh được bố trí trên một dàn (array) và phối hợp với các
đường vào/ra để hình thành ram tĩnh hoàn chỉnh Hình sau cho ta hình dung cấu trúc của một ram tĩnh 8 x 4 bit, ở đây, cần nắm vững một số từ và ký hiệu viết tắt :
3 - to - 8 decoder : Giải mã vào 3 ra 8
DIN (Data Input) : Đầu vào số liệu
DOUT (Data Output) : Đầu ra số liệu
Bit line : Đường bit
Word line : Đường từ nhị phân
A0 , A1 , A2 (Adress input ) : Các đầu vào địa chỉ
Trang 4OE WE
(Operation Mode)
Đầu vào (Input)
Đầu ra (Output)
0 0 1 Ghi (Write) số liệu Được nối
(connected)
Thả nổi (floating)
0 1 0 Đọc (Read) số liệu Thả nổi
(floating)
Được nối (connected)
0 1 1 Không làm gì
(donothing)
Thả nổi (floating)
Thả nổi (floating)
1 x x Ngừng (standby) Thả nổi
(floating)
Thả nổi (floating)
x : bất kỳ hoặc không quan tâm
Hoạt động của ram tĩnh này theo bảng chân lý trên
Giả sử muốn ghi số liệu 1101 vào địa chỉ 101, ta đặt như sau :
1 ,
0 ,
CS
D = 1101 (tương ứng với DIN3 DIN2 DIN1 DIN0)
Trang 5A = 101 (tương ứng với A2 , A1 , A0 )
- Bây giờ muốn ghi một số liệu vào địa chỉ mới thì việc đầu tiên phải
chuyển CS = 1, nghĩa là phải cô lập (thả nổi) đầu vào và đầu ra với BUS Sau khi đặt đúng số liệu D mới và địa chỉ A mới, ta đặt trở lại CS
= 0 Vậy là số liệu mới đã được ghi vào địa chỉ mới
- Khi cần đọc số liệu từ một địa chỉ nào đó, dĩ nhiên không phải là địa chỉ
“trống rỗng” mà là địa chỉ đã được ghi rồi thì việc đầu tiên đặt CS = 1 ,
đặt đúng địa chỉ A cần tìm, đặt WE = 1 OE = 0 Bây giờ chuyển
CS = 0 , vậy là số liệu từ địa chỉ tìm đã được dẫn đến đầu ra để lên
BUS
Một số ram hiện nay có chung đầu vào (DIN) và đầu ra (DOUT) để dẫn số liệu Sự thay đổi chút ít này được mô tả theo hình 96a Người đọc cần đổi chiếu lại với cấu trúc ram tĩnh 8 x 4bit đã vẽ trước đây Hình 96b là sơ đồ chân nối của một số ram thường gặp
Ký hiệu DIO là các chân dùng chung cho cả đường số liệu vào và đường số liệu
ra (DIN và DOUT)
A7 A6 A5 A4 A3 A2 A1 A0 IO0
IO1 IO2 IO3
CS WE
2606
A7 A6 A5 A4 A3 A2 A1 A0 IO0
IO1 IO2 IO3
CS WE
2606
Trang 6B Phần thực nghiệm
1 Xây dựng phần tử nhớ của RAM tĩnh
RAM tĩnh bao gồm nhiều “phần tử tĩnh” (static element) Mạch nhớ cho mỗi
phần tử là trigơ D Sau đây chúng ta sẽ xây dựng và nghiên cứu hoạt động một phần tử tĩnh
Sơ đồ thí nghiệm:
IN 0V SEL 5V WR 0V
D
CP Q
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 Trigơ D [Digital Basic/Flip - Flops/D]
03 Logic switch [Switches/Digital/Logic Switch] (s)
01 Logic Display [Displays/Digital/Logic Display] (9)
01 Nor DeMorgan [Digital Basics/Gates(DeMorgan)/2-In Nor: DM]
01 Khoá 3 trạng thái [Digital by Function/Buff/Drive 3D/74125 1/4] Trong đó:
IN/OUT là đầu vào/ra số liệu
SEL là đầu chọn (Selection) SEL = 0 phần tử nhớ hoạt động
R
/
W là đầu ghi, đọc (Write/Read) W/R = 0 ghi dữ liệu, W/R = 1 đọc dữ liệu
Chú ý:
[ ] Đường dẫn để lấy linh kiện trong thư viện ( ) Ký hiệu phím tắt
Bước 2:
Trang 7- Tiến hành thí nghiệm theo bảng số liệu để ghi và đọc số liệu từ đầu vào
số liệu IN Số liệu lối vào ở đây là số liệu 1 bít IN = 1 hoặc 0 Quan sát giá trị lối ra OUT và điền đầy vào bảng
IN W / R SEL Mốt hoạt động OUT
2 Nghiên cứu sự hoạt động của RAM 2606
RAM 2006 có dung lượng 1024 bít (có 4 bít dữ liệu, 8 bít địa chỉ) Đầu số liệu chung cho cả đầu vào dữ liệu (IN) và đầu ra dữ liệu (OUT) Vậy nên ta dùng thêm các khoá 3 trạng thái để nhập dữ liệu RAM 2606 chỉ có 2 đầu
điều khiển là CS và WE mà không có đầu OE (Output Enable) Ký hiệu
logic, bảng chân lý được mô tả ở phần phụ lục
Sơ đồ thí nghiệm:
A0 5V A1 5V
In3 0V
In1 0V In0 0V In2
0V
EN 5V
A3 A7
0V
A2 5V
CS 5V WE 0V
Out3 Out2 Out1 Out0 RAM 2606
A7 A6 A5 A3 A1 IO0 IO2
CS WE
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 RAM 2606 [User Defined/Macro/RAM 2606]
10 Logic switch [Switches/Digital/Logic Switch] (s)
Trang 804 Khoá 3 trạng thái [Digital by Function/Buff/Drive 3D/74125 1/4] Bước 2:
- Tiến hành thí nghiệm theo bảng số liệu để ghi và đọc số liệu từ các địa chỉ khác nhau Điền đầy đủ vào bảng số liệu sau:
Y/cầu thí nghiệm CS WE EN I3I2I3I0 O3O2O1O0 A7A6A5A4A3A2A1A0 Ghi số liệu 10002
Vào địa chỉ 00102
0
Ghi số liệu 10102
Vào địa chỉ 01012
0
Ghi số liệu 11102
Vào địa chỉ 01112
0
Đọc số liệu tại địa
chỉ 00102
1
Đọc số liệu tại địa
chỉ 01012
1
Đọc số liệu tại địa
chỉ 01112
1
Chú ý:
- Đầu EN được dùng để điều khiển nhập dữ liệu EN = 0 dữ liệu từ lối vào được đưa vào các chân I/O của RAM, ngược lại EN = 1 dữ liệu từ lối vào bị cấm Như vậy khi muốn nhập sữ liệu ta phải đặt EN = 0 Còn khi muốn đọc dữ liệu thì ta phải đặt EN = 1
3 Tổ hợp hai RAM 2606
Với mỗi RAM 2606 chỉ lưu trữ được số liệu 4 bít ở bài này chúng ta sẽ tiến hành ghép nối 2 RAM 2606 để có thể lưu trữ được số liệu 8 bít
Sơ đồ thí nghiệm:
Trang 9EN 0V
A3 A7
0V
A2
0V
A0
0V
A1
0V
In0 0V In1 0V In2 0V In3 0V In7
0V In6 0V In5 0V In4 0V
WE CS 5V
Out0 Out1 Out2 Out3 Out7 Out6 Out5 Out4
RAM 2606
A7 A6 A4 A2 A0 IO0 IO1 IO3
CS WE
RAM 2606
A7 A6 A4 A2 A0 IO0 IO1 IO3
CS WE
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 RAM 2606 [User Defined/Macro/RAM 2606]
15 Logic switch [Switches/Digital/Logic Switch] (s)
08 Logic Display [Displays/Digital/Logic Display] (9)
08 Khoá 3 trạng thái [Digital by Function/Buff/Drive 3D/74125 1/4] Bước 2:
- Tiến hành thí nghiệm và điền đầy đủ vào bảng số liệu sau đây:
Y/cầu thí
nghiệm
CS WE EN I3I2I3I0I3I2I3I0 O3O2O1O0O3O2O1O0 A7A6A5A4A3A2A1A0
Ghi số liệu 2A16
Vào địa chỉ FA16
0
Ghi số liệu 3C16
Vào địa chỉ FB16
0
Đọc số liệu tại
địa chỉ FA16 1
Đọc số liệu tại
địa chỉ FB16 1
Trang 10- Phải chuyển mã thập lục phân sang mã nhị phân
Ví dụ: FA 16 = 11111010 2
4 Kiểm tra kiến thức
Cho sơ đồ chân nối của RAM 6116:
- Nói rõ chức năng của từng chân nối của RAM 6116
- Tính dung l−ợng của RAM này là bao nhiêu bit, byte, kbyte ?
- Chuyển mã :
Một vài số liệu đã đ−ợc ghi trong RAM theo mã thập lục phân, hãy chuyển chúng sang mã nhị phân và thập phân
2F16 = ( ……… )2 = (………… …… )10
D416= ( ……… )2 = (………… …… )10
CF16= ( ……… )2 = (………… …… )10 6E16= ( ……… )2 = (………… …… )10
5316= ( ……… )2 = (………… …… )10 7A16= ( ……… )2 = (………… …… )10
Trang 11C 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 RAM tĩnh CMOS 16 K (CMOS Static 16K RAM)
Tên IC: 6116 (CMOS)
2 RAM l−ỡng cực 64-bit đảo (64-bit TTL bipolar RAM, inverting)
Tên IC: 74x189 (TTL)
Trang 123 RAM l−ỡng cực 64-bit không đảo (64-bit TTL bipolar RAM, non- inverting)
Tên IC: 74x219 (TTL)