Bộ nhớ chip: Phần 2 – Trí nhớ của vượn

Bộ nhớ chip: Phần 1 – Hồi hải mã

Khoảng 7 triệu năm về trước, vẫn chưa có loài người và vẫn chưa có loài vượn. Chỉ mới tồn tại các CHLCAs, cụm từ viết tắt dành cho Chimpanzees Humans Last Common Ancestor – Tổ Tiên Chung Gần Nhất của Người và Vượn. Vì một lí do nhất định mà đến nay vẫn chưa rõ, một vài cá thể CHLCAs đã quyết định rời khỏi nơi trú ẩn của mình trong rừng xanh, mạo hiểm tiến vào các đồng cỏ savannah, và tiến hóa thành con người ngày nay. Trong quá trình tiến hóa này, loài người chúng ta đã phát triển được các khả năng trí lực mạnh mẽ, bao gồm ngôn ngữ, giao tiếp, óc tưởng tượng… Tuy nhiên, chúng ta đã mất đi một kĩ năng mà chỉ các CHLCAs ở lại trong rừng thẳm mới còn tồn giữ – và truyền lại đến loài vượn ngày nay. Chúng ta đã mất đi khả năng nhớ lập tức.

Hình 1. Một chú vượn đang làm bài tập trí lực tại Viện nghiên cứu Linh trưởng thuộc Đại học Kyoto. Chú có thể nhấp vào các con số theo thứ tự tăng dần mà chỉ cần ít hơn 1 giây để ghi nhớ.

Cứ thử nhìn vào đoạn phim ở trên. Đấy là một chú vượn đang nhấp vào các con số theo thứ tự tăng dần – với ít hơn 0.5 giây quan sát và ghi nhớ toàn bộ hình ảnh. Một nhiệm vụ hoàn toàn vượt ngoài khả năng của con người. Cuộc sống của loài vượn đều chỉ có hiện tại và tức thời, với những quyết định gấp rút: có bao nhiêu kẻ địch, nên chạy hay ở lại… Chính vì thế mà loài vượn đã phát triển trí nhớ ngắn hạn của mình một cách mạnh mẽ, trong khi loài người đã đổi nó để lấy khả năng giao tiếp và trí tưởng tượng.

Trong các thiết bị điện tử, cũng có một bộ phận chuyên được sử dụng để giải quyết các công việc hiện thời và được xem như trí nhớ ngắn hạn của máy tính – đấy là bộ nhớ trong, hay còn được biết đến dưới cán tên phổ biến là RAM (Random Access Memory – bộ nhớ truy cập ngẫu nhiên). Thiết bị có càng nhiều RAM thì càng xử lý được nhiều chương trình một lúc, chơi được các game nặng hơn và tải được nhiều đồ họa hơn. Trong phần trước của series này, chúng ta đã nghiên cứu về các dạng bộ nhớ ngoài điển hình. Phần tiếp theo sẽ giải thích một cách chi tiết cấu tạo và cách hoạt động của bộ nhớ trong, giải mã cấu trúc và cách mà các transistor mắc vào với nhau tạo nên dung lượng chứa các chương trình đang chạy trong máy tính.

ROM

Trước khi nghiên cứu về bộ nhớ RAM nổi tiếng chiếm phần đa số của bộ nhớ trong của máy tính, chúng ta cần tìm hiểu về một bộ phận nhỏ khác cũng không kém phần quan trọng, đó chính là ROM (Read-Only Memory – bộ nhớ chỉ-đọc). ROM được sử dụng để chứa các phần mềm cố định không được phép mất ngay cả khi tắt nguồn, được gọi là firmware. Firmware phổ biến nhất trong máy tính là BIOS (Basic Input-Output System), chương trình được sử dụng để khởi động máy khi mới bật. Lúc nguồn điện vừa được cung cấp cho máy tính, bộ nhớ RAM vẫn còn trống trơn và cần các câu lệnh booting từ ROM để trích xuất dữ liệu từ ổ cứng và đưa vào RAM.

Hình 2. Chip EPROM đầu tiên, Intel 1702, với con tử và các dây dẫn có thể được nhìn thấy từ bên ngoài qua lớp cửa sổ kính.

Những thiết bị lưu trữ đầu tiên của ROM bao gồm ma trận diode, điện trở, tụ điện, hay các ma trận biến áp như hệ thống TROS (transformer read-only storage) modules dùng để chứa microcode cho máy tính của IBM System/360. Các hệ thống này khắc thẳng chương trình vào vật liệu, và vì thế sẽ không thể thay đổi sau khi xuất xưởng. Sau này ROM được phát triển thành hệ thống bán dẫn, với các cải tiến cho phép một số thay đổi chương trình nhất định giúp cập nhật được BIOS.

  • PROM – Programmable Read-Only Memory (chỉ có thể lập trình đúng 1 lần)
  • EPROM – Erasable PROM (có thể xóa dữ liệu chương trình bằng cách phơi sáng tia cực tím, sau đó lập trình lại bằng các thiệt bị chuyên dụng)
  • EEPROM – Electrically Erasable PROM (còn được gọi là Flash ROM). Các máy tính với Flash BIOS có thể được câp nhật.

rAM

RAM có thể được hiểu như chiếc bàn làm việc. Để bắt đầu một công việc mới, chúng ta lấy ra các tài liệu, dụng cụ và giấy bút đặt lên bàn. Với chiếc bàn này chúng ta có thể thực hiện nhiều tác vụ, và bàn càng lớn thì càng để được nhiều giấy tờ vật dụng. Ta có thể nhanh chóng tìm được các thông tin cần thiết trong mớ giấy tờ trên bàn thay vì phải lục lọi vào những tủ tài liệu (ẩn dụ cho ổ cứng). Khi đã xong công việc của một ngày, ta có thể cất hết đống tài liệu kia vào tủ lưu trữ.

RAM chính là bộ nhớ ngắn hạn của máy tính. Khi người dùng mở lên 1 tập tin hay bật 1 trang web, các dữ liệu cần thiết để chạy các ứng dụng này đều được chuyển vào RAM. Các tế bào nhớ trong RAM có thể được truy cập với tốc độ rất cao, giúp cho những chương trình kia chạy nhanh nhất có thể. Khi một chương trình đã hoàn thành công việc của mình và chuẩn bị đóng, nó có thể lưu tất cả dữ liệu của mình vào ổ cứng. Nên nhớ rằng công đoạn lưu trữ này vô cùng quan trọng – RAM là loại bộ nhớ điện động, nó sẽ quên hết toàn bộ thông tin ngay khi tắt nguồn.

Hình 3. Thanh RAM 8GB DDR4 2133MHz DIMM – một ví dụ về vị trí của RAM trên bo mạch.

DRAM & SRAM

Hình 4. Sơ đồ mạch của DRAM vs SRAM.

Có 2 loại RAM chính: Dynamic RAM (DRAM) và Static RAM (SRAM). DRAM là loại RAM đơn giản, chỉ bao gồm 1 transistor và 1 tụ điện cho mỗi tế bào nhớ. Tụ điện lưu trữ điện tích thể hiện cho giá trị nhị phân [1]. Và vì các tụ điện đều mang tính chất rò điện, chúng chỉ có thể lưu trữ điện thế trong vài micro giây và cần được sạc lại định kì, giải thích cho việc DRAM được gọi là RAM động (dynamic). Để sạc lại DRAM, vi xử lý sẽ đọc lại toàn bộ nội dung và viết lại chúng. Thao tác này ngốn mất vài chu kỳ đồng hồ nhưng thực ra không đáng kể khi so với các đồng hồ có tần số MHz hay GHz trong máy tính ngày nay.

Hình 5. Một thanh RAM với 20 con chip DRAM – được sử dụng làm bộ nhớ cho máy tính. Con chip ở giữa là chip điều khiển.
Fig 6. Mặt cắt TEM củachip DRAM thuộc Intel: các cột đứng là những tụ điện dọc được đặt 2 bên trái phải của trụ bitline, kết nối với bitline bằng 1 con transistor NMOS.

DRAM có mức tiêu thụ điện cao hơn, do phải sạc đi sạc lại nhiều lần. Tuy nhiên nó có mật độ cực cao, có khả năng nén hàng tỷ tế bào nhớ vào 1 con chip và vì thế rẻ hơn SRAM nhiều. Chip DRAM được dùng cho máy tính và các card đồ họa, nơi mà giá thành và dung lượng đóng vai trò quan trọng [2].

Một dạng khác của RAM là Static RAM. SRAM sử dụng mạng lưới gồm 6 transistor để lưu trữ một bit dữ liệu. Các transistor này hình thành nên cặp inverter đôi có khả năng giữ cân bằng 1 bit dữ liệu mà không cần sạc lại, và vì thế được đặt tên là RAM tĩnh. SRAM nhanh hơn DRAM nhiều (thời gian truy cập <10ns so với 60-80ns của DRAM) nhưng cũng lớn hơn nhiều (khoảng 4x DRAM) và đắt hơn nhiều. Nó thường xuyên được sử dụng làm cache – phần bộ nhớ lưu trữ các dữ liệu thường xuyên được sử dụng nhất và được xếp ở ngay cạnh vi xử lý. Chỉ vài MB SRAM kết nối trực tiếp với bộ xử lý có thể cải thiện đáng kể hiệu năng, xứng đáng với số tiền đắt đỏ bỏ ra.

Hình 7. Các SRAM Cache được bố trí ngay trên con tử silicon và được kết nối trực tiếp với các nhân xử lý. L1 là các SRAM cache của từng nhân, L2 là cache được 2 nhân dùng chung và L3 là được dùng chung bởi tất cả các nhân.
Hình 8. Mặt cắt TEM phẳng của SRAM Samsung 14nm. Các cổng kim loại high-k là những hình chữ nhật xám có vây bán dẫn bắc ngang, trong khi các đường dọc màu đen là những trụ dẫn nối vào phần active (máng/nguồn).

wordline & bitline

Bộ nhớ trong máy tính, dù là ổ cứng hay RAM, đều được xây dựng dưới dạng một mạng lưới các tế bào nhớ, mỗi tế bào chứa 1 bit dữ liệu. Những bit này được sắp xếp thành các hàng và các cột rồi được kết nối lại với nhau bở các wordline (hàng) và bitline (cột). Wordline sẽ lựa chọn bit nào để đọc hay viết, còn bitline sẽ vận chuyển dữ liệu đến hoặc ra khỏi bit đấy. Khi wordline bật giá trị HIGH, bitline sẽ được kết nối vào trong tế bào nhớ. Còn ngược lại, bitline sẽ bị ngắt kết nối khỏi tế bào nhớ.

Hình 9. Cấu trúc của mạng lưới bộ nhớ – với các wordline và bitline kết nối những tế bào nhớ với nhau.

Với một tế bào nhớ, chỉ có 2 thao tác chính: đó là đọc viết. Để đọc một tế bào nhớ, bitline được precharge lên giá trị medium 1 (các kiến trúc cũ sẽ để bitline nổi – floating(Z)). Sau đó wordline được ON, cho phép dữ liệu trong tế bào kết nối với bitline và đẩy nó xuống 0 hoặc lên 1. Còn để viết vào 1 tế bào nhớ, bitline được đẩy mạnh một giá trị nhất định. Khi wordline ON, bitline lại được kết nối vào tế bào. Giá trị mạnh trong bitline sẽ viết đè lên nội dung hiện tại trong tế bào nhớ và thay đổi nó [3].

Hình 10. Kiến trúc SRAM của ARM.

Xung quanh mạng lưới tế bào nhớ là hệ thống mạch biên (periphery circuits) được dùng để kiểm soát các wordline và bitline. Row decoder có nhiệm vụ giải mã code địa chỉ thành quyết định wordline nào được turn ON. Khi một wordline được ON, tất cả bitline sẽ vận chuyển dữ liệu từ các tế bào nhớ dọc theo wordline ấy ra output. Dữ liệu sau khi đi qua 1 quãng đường dài dọc theo bitline có thể bị xuống cấp, và vì thế cần được phục hồi bởi các sense amplifiers. Tại 1 thời điểm nhất định chỉ có 1 wordline được ON, nếu không dữ liệu từ các tế bào nhớ khác nhau sẽ đè lẫn nhau trên bitline và làm nhiễu loạn thong tin trong block nhớ.

RAM MODULES

Hình 11. Phần Memory nằm trong tab Performance của Task Manager.

Trong hai loại RAM chính, SRAM chỉ được sử dụng trên con tử để tăng hiệu năng, trong khi DRAM đóng vai trò chính trong việc làm bộ lưu trữ cho hầu hết các chương trình đang chạy của máy tính. Để biết máy tính bạn có bao nhiêu RAM – cụ thể là bao nhiêu DRAM – chỉ cần mở Task Manager bằng combo Ctrl+Shift+Esc và click vào Performance tab. Memory section nằm ở bên trái. Section này hiển thị tất cả thông tin về bộ nhớ trong – trong trường hợp này có tất cả 16.0GB với 11.9GB đang được sử dụng.

Trong các hệ thống máy tính đời đầu, RAM được hàn trực tiếp vào bo mạch. Để có thể dễ dàng lắp đặt và thay đổi, RAM giờ được hàn vào các module gọi là thanh RAM hay RAM modules. Các module này có thể dễ dàng được lắp vào haowjc tháo ra khỏi những ổ có sẵn trên bo mạch.

Hình 12. Sự tiến hóa của DRAM: từ trái sang phải (i) DIP, (ii) SIPP, (iii) SIMM 30-pin, (iv) SIMM 72-pin, (v) DIMM 168-pin, (vi) DDR DIMM 184-pin

Khi lần đầu ra mắt, DRAM được đóng gói trong các 30-pin Single In-line Memory Module (SIMM), phát minh vào năm 1982 bởi James J. Parker tại Zenith Microcircuits. Chip DRAM có thể được hàn ở cả hai mặt của module, còn tiếp điểm kim loại ở dưới chân module thì là của cùng 1 pin. 30-pin SIMM có dung lượng từ 256kB tới 16MB, với chỉ 1 byte dữ liệu có thể được truy cập ở 1 thời điểm nhất định. Sau này số pin tăng lên 72-pin SIMM, cho phép lưu trữ 1 MB tới 128 MB với từ 8 hay 9 chip DRAM trên bảng mạch. Dual In-line Memory Modules (DIMMs) bắt đầu thay thế SIMMs khi vi xử lý Intel Pentium bắt đầu giành được thị phần, nhân đôi số pin dưới chân đế bằng cách tách các tiếp điểm kim loai thành 2 mặt khác nhau. Ngày nay, các memory modules hầu hết đều là Double Data Rate (DDR) DIMMs, với tốc độ truyền tải cao hơn nhiều so với Single Data Rate (SDR), chủ yếu là nhờ phương thức truyền dữ liệu trên cả rising edge và falling edge của chu kỳ đồng hồ.

KẾT LUẬN

Người ta thường nói tiền không bao giờ là đủ, điều đó cũng tương tự với RAM. Các phần mềm hay game cấu hình cao được ra mắt mỗi ngày đòi hỏi máy tính với lượng RAM ngày một khủng. Tăng thêm RAM cho 1 chiếc máy tính có khi còn tạo ra nhiều khác biệt hơn là mua hẳn 1 con máy mới. Nhiều công ty đang cạnh tranh nhau trong một thị trường DRAM béo bở với kích cỡ sẽ vượt mức 46 tỷ USD vào năm 2021. Những tay chơi lớn nhất bao gồm Samsung, Micron, Intel & SK Hynix đang phát triển các công nghệ tiên tiến với tiến trình ngày càng nhỏ hơn, trong một nỗ lực để nhét thật nhiều dung lượng vào 1 con chip và hạ giá thành sản phẩm.

Tương tự như các transistor trong đinh luật Moore, DRAM cũng đang đối mặt với thử thách khổng lồ về các định luật cơ bản của Vật lý khi bước xuống ngưỡng nanomet. Nhiều tiên đoán về sự suy tàn của DRAM đã xuất hiện – và cũng đã trật lất quá nhiều lần trước đây để chúng ta có thể tin rằng DRAM sẽ thực sự thất bại trong tương lai. Có lẽ ta sẽ phải đợi xem liệu DRAM có tạo nên bước đột phá và bước tiếp hành trình tiến hóa của nó không, hay nó sẽ bị bỏ lại đằng sau như những chú vượn đã lựa chọn việc ở lại trong rừng già xanh thẳm.

Trích dẫn:

  1. Jacob, Bruce; Spencer Ng; David Wang (2007). Memory Systems: Cache, DRAM, Disk. Morgan Kaufmann. pp. 431–432. ISBN 978-0123797513.
  2.  Laasby, Gitte (March 10, 2014). “Consumers eligible for money under computer chip price-fixing settlement”Milwaukee Journal-Sentinel. Milwaukee, Wisconsin. Retrieved August 20, 2014.
  3. Sarah L. Harris, David Money Harris, in Digital Design and Computer Architecture, 2016.

14 thoughts on “Bộ nhớ chip: Phần 2 – Trí nhớ của vượn”

  1. Today, I went to the beachfront with my children. I found a sea
    shell and gave it to my 4 year old daughter and said “You can hear the ocean if you put this to your ear.” She placed
    the shell to her ear and screamed. There was a hermit
    crab inside and it pinched her ear. She never wants to go back!
    LoL I know this is entirely off topic but I had to tell
    someone!

  2. Sweet blog! I found it while browsing on Yahoo News.

    Do you have any tips on how to get listed in Yahoo News?
    I’ve been trying for a while but I never seem to get there!
    Thank you

  3. Thіs is reаⅼly interesting, You arre a very skilled blogger.
    I have joined your feed andd loook forward to searching forr еxtra of your wonderful post.
    Additionally, I have shaгed your web site in my social networks

  4. wonderful post, very informative. I wonder
    why the opposite experts of this sector don’t understand this.
    You must continue your writing. I am confident,
    you have a huge readers’ base already!

  5. My partner and I absolutely love your blog and find nearly all of your
    post’s to be what precisely I’m looking for. Does one offer guest writers to write content available for you?

    I wouldn’t mind publishing a post or elaborating on most of the subjects you write concerning here.
    Again, awesome web log!

  6. Thank you a bunch for sharing this with all folks you actually recognise
    what you’re speaking about! Bookmarked. Kindly also talk over with my website
    =). We may have a link exchange contract between us

  7. When I initially commented I clicked the “Notify me when new comments are added” checkbox and now each
    time a comment is added I get four emails with the same
    comment. Is there any way you can remove people from that service?
    Bless you!

Leave a Comment

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *