Bài giảng Thiết kế hệ thống nhúng - Chương 2: Cấu trúc phần cứng hệ thống nhúng - Bài 4: Bộ nhớ
CHƢƠNG 2: CẤU TRÚC PHẦN CỨNG
HỆ THỐNG NHÚNG
Bài 4: Bộ nhớ
1
Tổng quan
• Khả năng ghi dữ liệu và chất lƣợng lƣu trữ của bộ nhớ
• Các kiểu bộ nhớ chung
• Ghép bộ nhớ
• Phân cấp bộ nhớ và Cache
• RAM cải tiến
2
Giới thiệu
• Chức năng của các hệ nhúng
– Xử lý
• Bộ xử lý
• Biến đổi dữ liệu
– Lƣu trữ
• Bộ nhớ
• Khôi phục dữ liệu
– Truyền thông
• Bus
• Chuyển dữ liệu
3
Bộ nhớ: khái niệm cơ bản
m × n memory
• Lƣu trữ số lƣợng bit lớn
…
– m x n: m từ mỗi từ n bit
– k = Log (m) tín hiệu địa chỉ đầu vào
2
…
– Hoặc m = 2^k từ
– VD: bộ n
• 32,768 bits
n bits per word
• 12 tín hiệu địa chỉ
• 8 tín hiệu I/O
memory external view
r/w
2k × n read and write
memory
• Truy cập bộ nhớ
enable
– r/w: lựa chọn đọc hoặc ghi
– enable: c
Ak-1
– multiport: đa truy cập tới nhiều vị trí khác nhau
đồng thời
…
Qn-1
Q0
4
Khả năng ghi/chất lƣợng lƣu trữ
• Phân biệt ROM/RAM truyền thống
– ROM
Mask-programmed ROM
OTP ROM
Ideal memory
•
Chỉ đọc, bit đƣợc lƣu trữ không cần
nguồn
Life of
product
– RAM
EPROM
Tens of
years
EEPROM
FLASH
•
Đọc và ghi, mất dữ liệu nếu không có
nguồn
years)
NVRAM
• Phân biệt truyền thống đã thay đổi
– ROMs cải tiến có thể ghi
In-system
SRAM/DRAM
•
e.g., EEPROM
programmable
Near
zero
– RAMs có thể lƣu trữ không cần nguồn
Write
ability
•
e.g., NVRAM
During
External
External
External
External
In-system, fast
• Khả năng ghi
fabrication programmer, programmer, programmer programmer
writes,
unlimited
cycles
OR in-system,
– Tốc độ để một
block-oriented
writes, 1,000s
of cycles
• Chất lƣợng lƣu trữ
– Khả năng mà bộ nhớ lƣu trữ dữ liệu sau
khi nó đƣợc ghi
Khả năng ghi và chất lƣợng lƣu trữ của bộ nhớ
5
Khả năng ghi
• Phạm vi của “khả năng ghi”
– Mức cao
• Bộ xử lý ghi vào bộ nhớ một cách đơn giản và nhanh chóng
• e.g., RAM
– Mức trung bình
• Bộ xử lý ghi vào bộ nhớ, nhƣng chậm
• e.g.,
– Mức thấp hơn
• Các thiết bị đặc biệt, “bộ lập trình” phải đƣợc sử dụng để ghi bộ nhớ
• e.g., EPROM, OTP ROM
– Mức thấp
• bits chỉ đƣợc lƣu trữ trong quá trình sản xuất
• VD: ROM lập trình đƣợc bằng mặt nạ
• Bộ nhớ có th
– Có thể đƣợc ghi bởi bộ xử lý trong hệ thống nhúng
– Các bộ nhớ loại này có khả năng ghi cao hoặc trung bình
6
Chất lƣợng lƣu trữ
• Phạm vi chất lƣợng lƣu trữ
– Loại cao
• Loại không bao giờ mất bit
• VD: mask-programmed ROM
– Loại trung bình
• Có khả năng lƣu trữ bit nhiều ngày, nhiều tháng, hoặc nhiều năm sau khi tắt nguồn
• VD: N
– Loại trung bình thấp
• Có khả năng lƣu trữ bit khi có nguồn cung cấp
• VD: SRAM
– Loại thấp
• Mất bít gần nhƣ ngay sau khi đƣợc ghi
• VD: D
• Bộ nhớ không thay đổi đƣợc
– Lƣu trữ bit ngay cả khi không đƣợc cấp nguồn
– Chất lƣợng lƣu trữ cao hoặc trung bình
7
ROM: Bộ nhớ “chỉ đọc”
• Là bộ nhớ không thay đổi đƣợc
• Có thể đọc nhƣng không thể ghi bởi một bộ
xử lý trong hệ thống nhúng
External view
2k × n ROM
• Thƣờng đƣợc ghi bằng cách “lập trình”,
trƣớc khi tích hợp trong hệ thống nhúng
enable
Ak-1
…
• Sử dụng
– Lƣu trữ chƣơng trình phần mềm cho bộ xử lý chức
năng chung
Qn-1
Q0
• Lệnh t
nhớ trong ROM
– Lƣu trữ các dữ liệu cố định
– Thực hiện các mạch tổ hợp
8
Ví dụ: 8 x 4 ROM
• Hàng ngang = từ
Internal view
• Hàng đứng = dữ liệu
• Các đƣờng kết nối ở giao điểm
8 × 4 ROM
word 0
word 1
3×8
enable
• Bộ giải mã nối đƣờng dẫn của từ
số 2 là 1 nếu địa chỉ đầu vào là 010
word 2
word line
data line
A0
A1
A2
• Đƣờng dữ liệu Q3 và Q1 đặt là 1
bởi vì có một kết nối “đƣợc lập
trình” với đƣờng của từ số 2
programmable
connection
wired-OR
Q1 Q0
• Từ số 2 khô
đƣờng dữ liệu Q
2
và Q
0
• Đầu ra là 1010
9
Thực hiện mạch tổ hợp
• Bất cứ mạch tổ hợp nào với n hàm có cùng k biến đều có thể
đƣợc thực hiện bằng ROM 2^k x n
Truth table
Inputs (address)
Outputs
8×2 ROM
a
b
0
0
1
1
0
1
c
y
0
0
0
1
1
1
z
0
1
1
0
0
1
word 0
word 1
0
0
0
1
1
0
1
1
0
0
0
0
0
0
1
1
0
1
0
1
0
1
enable
a
y
z
10
ROM lập trình bằng mặt nạ
• Các kết nối đƣợc “lập trình” khi sản xuất
– Thiết lập các mặt nạ
• Khả năng ghi thấp nhất
– Chỉ gh
• Chất lƣợng lƣu trữ cao nhất
– Bít không bao giờ thay đổi
• Đƣợc sử dụng điển hình cho các thiết kế cuối cùng của hệ
với dung lƣợng lớn
– Giá NRE cao nếu sản xuất với số lƣợng ít
11
OTP ROM: ROM lập trình một lần
• Các kết nối đƣợc “lập trình” sau khi sản xuất bởi ngƣời sử dụng
– Ngƣời sử dụng cung cấp nội dung yêu cầu lƣu trữ trong ROM
– Nội dung đƣợc đƣa vào thiết bị gọi là bộ lập trình ROM
– Mỗi kết nối có thể lập trình đƣợc là một cầu chì
– Bộ lập try trì kết nối
• Khả năng ghi rất thấp
– Điển hình ghi chỉ một lần và yêu cầu thiết bị lập trình ROM
• Chất lƣợng lƣu trữ rất cao
– Bit không thay đổi trừ khi kết nối với bộ lập trình
• Thƣờng sử dụng trong các sản phầm cuối cùng
– Rẻ, khó thay đổi nội dung
12
EPROM: ROM lập trình ghi xóa
• Phần tử có thể lập trình là một transistor MOS
– Transistor có cổng “floating” bao quanh bởi chất cách điện
0V
floating gate
– (a) Điện tích âm hình thành một kênh giữa nguồn và máng lƣu
giữ mức logic “1”
drain
source
– (b) Điện áp dƣơng lớn ở “cổng” làm cho các điện tích âm di
chuyển ra khỏi kênh và duy trì trong cổng “floating” lƣu trữ mức
logic 0
(a)
– (c) (Xóa) chiếu ti
điện tích âm trở lại kênh từ cổng “floating” lƣu trữ mức logic 1
+15V
– (d) Một IC EPROM có một cửa sổ để tia UV có thể chiếu qua
source
drain
(b)
• Khả năng ghi tốt
– Có thể tẩy xóa và lập trình hàng nghìn lần
• Chất lượng lưu trữ giảm
5-30 min
– Chƣơng trình k
drain
source
(c)
giảm do nhiễu bức xạ và từ trƣờng
• Điển hình được sử dụng trong quá trình phát triển
sản phẩm
(d)
.
13
EEPROM: ROM có thể ghi xóa bằng điện
• Lập trình và xóa bằng điện
– Sử dụng mức điện áp cao hơn bình thƣờng
– Có thể lập trình và xóa từng từ riêng
• Khả năng ghi tốt
– Có thể lcấp điện áp cao
hơn mức thông thƣờng
• Bộ điều khiển tích hợp trong bộ nhớ thƣờng dùng để ẩn các chi tiết từ ngƣời
sử dụng bộ nhớ
– Ghi rất chậm do xóa và lập trình
• Chân “busy” biểu thị với bộ xử lý là EEPROM vẫn đang trong quá trình ghi
– Khả năn
• Chất lƣợng lƣu trữ tƣơng tự nhƣ EPROM (khoảng 10 năm)
• Thuận tiện hơn EPROMs, nhƣng đắt hơn
14
Bộ nhớ Flash
• Mở rộng của EEPROM
– Nguyên lý cổng “floating” tƣơng tự
– Chất lƣợng lƣu trữ và khả năng ghi tƣơng tự
• Xóa nhanh
– Nhiều ô ớ tại một thời
điểm
– Các khối nhớ có kích thƣớc khoảng vài nghìn byte
• Khả năng ghi từng từ có thể chậm hơn
– Toàn bộ khối phải đƣợc đọc, từ đƣợc cập nhật, sau đó toàn bộ khối đƣợc
ghi
• Sử dụng với các hệ thống nhúng lƣu trữ dữ liệu lớn trong bộ
nhớ
– VD: camera số, điện thoại di động
15
RAM: Bộ nhớ “Truy cập ngẫu nhiên”
external view
• Thường là bộ nhớ “volatile”
r/w
enable
2k × n read and write
memory
– Dữ liệu bị mất khi không có nguồn cấp
A0
• Khi và đọc dễ dàng trong hệ thống nhúng trong
…
quá trình làm việc
Ak-1
…
• Cấu trúc bên trong phức tạp hơn ROM
Qn-1
Q0
– Một từ nhớ
bít nhớ
internal view
I3 I2 I1 I0
– Mỗi đƣờng dữ liệu vào và ra kết nối tới mỗi ô
nhớ trong cột của nó
4×4 RAM
– rd/wr Kết nối tới tất cả các ô nhớ
2×4
decoder
enable
– Khi hàng đƣợc “enable” bởi bộ giải mã, mỗi ô
nhớ có mứ
khi chân rd/wr biểu thị ghi hoặc đầu ra lƣu trữ
bit khi chân rd/wr biểu thị đọc
1
Memory
cell
rd/wr
To every cell
Q3 Q2 Q1 Q0
16
Các kiểu RAM cơ bản
memory cell internals
• SRAM: RAM tĩnh
– Ô nhớ dùng flip-flop để lƣu trữ bít
– Yêu cầu 6 transistors
SRAM
– Giữ dữ liệu khi có nguồn cấp
t
Data
• DRAM: R
– Ô nhớ dùng transistor MOS và tụ để lƣu
trữ bít
W
– Gọn nhẹ hơn SRAM
– Yêu cầu “Refresh” do tụ bị dò
• Các ô nhớ của từ đƣợc “refresh” khi đọc
DRAM
Data
W
– Tốc độ “refresh” thƣờng khoảng 15.625
microsec.
– Truy cập chậm hơn SRAM
17
Các biến thể của RAM
• PSRAM: RAM giả tĩnh
– DRAM với bộ điều khiển “refresh” tích hợp bên trong bộ nhớ
– Giá thấp và mật độ lƣu trữ cao hơn so với SRAM
• NVRAM: Nonvolatile RAM
– Lƣu trữ giữ liệu ngay cả khi không cấp nguồn
– RAM có nguồn dự phòng
• SRAM với battery đƣợc kết nối vĩnh cửu
• Ghi nhanh nhƣ đọc
• Khôn
– SRAM với EEPROM hoặc flash
• Lƣu trữ toàn bộ nội dung của RAM trên EEPROM hoặc flash trƣớc khi ngắt
nguồn
18
Ví dụ:
Thiết bị HM6264 & 27C256 RAM/ROM
• Là thiết bị giá thấp, mật độ thấp
data<7…0>
addr<15...0>
/OE
11-13, 15-19
data<7…0>
addr<15...0>
/OE
11-13, 15-19
• Thƣờng dùng trong bộ hệ thống
nhúng dựa trên vi điều khiển 8-
bit
2,23,21,24,
25, 3-10
27,26,2,23,21,
24,25, 3-10
22
27
20
22
/WE
/CS
20
/CS1
• Hai số đầu thể hiện kiểu thiết bị
– RAM: 62
27C256
diagrams
Device
Access Time (ns) Standby Pwr. (mW)
Active Pwr. (mW)
Vcc Voltage (V)
– ROM: 27
HM6264
27C256
85-100
90
.01
.5
15
100
5
5
• Các số tiếp theo biểu thị dung
lƣợng tính theo kilobits
device characteristics
Write operation
Read operation
data
dr
WE
OE
/CS1
/CS1
CS2
CS2
timing diagrams
19
Ví dụ:
Thiết bị nhớ TC55V2325FF-100
data<31…0>
addr<15…0>
addr<10...0>
/CS1
Device
TC55V23
25FF-100
Access Time (ns) Standby Pwr. (mW) Active Pwr. (mW) Vcc Voltage (V)
• Thiệt bị nhớ SRAM 2-
10
na
1200
3.3
megabit
device characteristics
• Thiết kế để giao tiếp
với bộ xử lý 32-bit
/CS2
A single read operation
• Có khả năng đọc ghi
tuần tự nhanh
/ADSP
/ADSC
/ADV
/OE
MODE
/ADSP
/ADSC
/ADV
addr <15…0>
/WE
/OE
CS3
TC55V2325F
F-100
data<31…0>
block diagram
timing diagram
20
Tải về để xem bản đầy đủ
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Thiết kế hệ thống nhúng - Chương 2: Cấu trúc phần cứng hệ thống nhúng - Bài 4: Bộ nhớ", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
File đính kèm:
- bai_giang_thiet_ke_he_thong_nhung_chuong_2_cau_truc_phan_cun.pdf