Giới thiệu về thiết kế phân cấp bộ nhớ

11 1.5K 2
Giới thiệu về thiết kế phân cấp bộ nhớ

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG * BÀI TIỂU LUẬN IT6030 KIẾN TRÚC MÁY TÍNH TIÊN TIẾN Đề tài: Giới thiệu về thiết kế phân cấp bộ nhớ Giảng viên hướng dẫn: TS. Nguyễn Hồng Quang Học viên thực hiện: Trần Thị Thùy Dương CA120585 Lớp: Cao học 2012A – Hưng Yên Năm 2012 MỤC LỤC 2.4 Truy cập dữ liệu trong phân cấp bộ nhớ 7 Học viên thực hiện: Trần Thị Thùy Dương – CA 120585 1 GIỚI THIỆU VỀ THIẾT KẾ PHÂN CẤP BỘ NHỚ I. ĐẶT VẤN ĐỀ Người lập trình muốn có một bộ nhớ thật nhanh với chi phí đầu tư giới hạn. Giải pháp hiệu quả với mong muốn ấy là phân cấp bộ nhớ. Vì các bộ nhớ nhanh đắt tiền và có dung lượng ít, các bộ nhớ có dung lượng lớn thì tốc độ chậm nên các bộ nhớ được tổ chức thành nhiều cấp, cấp có dung lượng ít thì nhanh nhưng đắt tiền hơn cấp có dung lượng cao hơn. Mục tiêu của việc thiết kế phân cấp bộ nhớ là người dùng có một hệ thống bộ nhớ rẻ tiền như cấp bộ nhớ thấp nhất và gần nhanh như cấp bộ nhớ cao nhất. Các cấp bộ nhớ thường được lồng vào nhau. Một trong những điều quan trọng được quan tâm nhất trong sự hiểu biết khả năng hiệu suất của bộ nhớ hiện đại là bộ nhớ phân cấp. Không phải tất cả các bộ nhớ đều được tao ra ngang nhau, 1 số kém hiệu quả hơn và rẻ hơn. Để giải quyết sự chênh lệch này, máy tính ngày nay kết hợp các kiểu bộ nhớ để cung cấp hiệu suất cao nhất với giá thành ít nhất. Cách tiếp cận này được gọi là phân cấp bộ nhớ. Bộ nhớ càng nhanh thì càng đắt. Bằng việc sử dụng bộ nhớ chia sẻ, với mỗi tốc độ truy cập và dung lượng khác nhau, 1 hệ thống máy tính có thể năng cao hiệu suất trên cả khả năng có thể của chúng khi mà không kết hợp các loại khác nhau lại. Hệ thống bộ nhớ phân cấp bao gồm các thanh ghi, cache, bộ nhớ chính và bộ nhớ phụ. Mỗi cấp bộ nhớ có dung lượng lớn hơn cấp(mức) trên mình, ánh xạ một phần địa chỉ các ô nhớ của mình vào địa chỉ ô nhớ của cấp trên trực tiếp có tốc độ nhanh hơn, và các cấp bộ nhớ phải có cơ chế quản lý và kiểm tra các địa chỉ ánh xạ. Trong những năm gần đây, chúng ta đã nhìn thấy rất nhiều cải tiến trong bộ xử lý - CPU. Như vậy bộ nhớ cũng phải phát triển để theo kịp được tốc độ của CPU, trong đó bộ nhớ chính là bộ nhớ chậm nhất. Hình 1 ở dưới cho thấy sự chênh lệch lớn về hiệu năng của bộ xử lý và bộ nhớ. Vì vậy việc cải tiến bộ nhớ chính để theo kịp với CPU là vấn đề thực sự quan trọng và cấp bách. Và giải pháp hiệu quả để tăng hiệu năng chung của máy tính và giải quyết sự chênh lệch hiệu năng của bộ xử lý và bộ nhớ là phân cấp bộ nhớ (MEMORY HIERARCHY). Học viên thực hiện: Trần Thị Thùy Dương – CA 120585 2 Hình 1: Biểu diễn sự chênh lệch về hiệu năng giữa bộ nhớ và bộ xử lý theo thời gian Lưu ý: trục thẳng đứng biểu diễn hiệu năng xử lý được chia theo hệ cơ số 10. Đường Memory bắt đầu cơ sở với bộ nhớ là 64B DRAM năm 1980, với hiệu suất cải thiện 1.07 mỗi năm. Đường Procesor giả định cải thiện hiệu năng 1.25 mỗi năm cho đến năm 1986, cải thiện 1.52 cho đến năm 2004 và cải thiện 1.20 cho những năm sau đó. Máy tính ngày nay có bộ nhớ nhỏ tốc độ cao gọi là cache, nơi mà dữ liệu được lưu trữ thường xuyên. Cache kết nối tới bộ nhớ lớn hơn - bộ nhớ chính, bộ nhớ có tốc độ tầm trung. Bộ nhớ này được bổ sung bới 1 bộ nhớ phụ, kết hợp với hard disk và các phương tiện có thể tháo dời khác nhau (various removable media). Bằng việc sử dụng hệ thống phân cấp, 1 bộ nhớ có thể nâng cao tốc độ truy cập, chỉ sử dụng 1 số nhỏ chip tốc độ nhanh. Nó cho phép người thiết kế tạo ra máy tính hiệu suất chấp nhận được với giá thành hợp lý. Học viên thực hiện: Trần Thị Thùy Dương – CA 120585 3 II. GIỚI THIỆU VỀ PHƯƠNG PHÁP THIẾT KẾ PHÂN CẤP BỘ NHỚ 2.1 Phân cấp bộ nhớ tận dụng nguyên tắc cục bộ (Locality) Tổng quan, chúng ta phân cấp bộ nhớ dựa trên “khoảng cách” từ nó tới bộ xử lý, với khoảng cách được định nghĩa bằng số vòng máy đòi hỏi để truy cập. Bộ nhớ càng gần bộ xử lý thì càng nhanh. Và ngược lại. Công nghệ chậm sẽ sử dụng bộ nhớ ở xa còn công nghệ nhanh sẽ sử dụng bộ nhớ gần bộ vi xử lý. Công nghệ càng tốt, bộ nhớ càng nhanh và càng đắt tiền. Bộ nhớ nhanh hơn thì sẽ nhỏ hơn bộ nhớ chậm và giá thành càng cao. Hình 2: Các mức phân cấp bộ nhớ điển hình trong hệ nhúng, Destop và máy chủ. Lưu ý: Đơn vị thời gian thay đổi theo hệ số 10 từ pico giây (ps) đến mili giây (ms) và những đơn vị kích thước thay đổi theo hệ số 1000 từ Byte đến Têta Byte. Từ trái sang phải: dung lượng tăng dần, tốc độ giảm dần, giá thành trên 1bít hoặc byte giảm dần. Đối với dữ liệu bất kì, bộ xử lý sẽ gửi yêu cầu của nó tới phần bộ nhớ nhanh nhất, nhỏ nhất (cache, bởi vì register dành cho mục đích đặc biệt hơn). Nếu dữ liệu được tìm thấy trong cache, nó sẽ nhanh chóng được đưa vào CPU. Nếu nó không ở trong cache, yêu cầu sẽ được gửi tới bộ nhớ thấp hơn trong hệ thống và quá trình tìm kiếm lại bắt đầu. Nếu dữ liệu được tìm thấy ở cấp độ này, một khối dữ liệu ở đó sẽ được đưa vào cache, và cứ thể tiếp tục. Ý tưởng chính ở đây là khi cấp độ thấp hơn của hệ thống phân cấp trả lời yêu cầu từ cấp độ cao hơn cho nội dung ở vị trí X, chúng cũng gửi đi cùng 1 thời điểm, dữ liệu được đặt ở địa chỉ X + 1, X + 2… Cứ như vậy, trả lại toàn bộ khối dữ liệu tới cấp độ bộ nhớ cao hơn. Hi vọng rằng dữ liệu thêm này sẽ được tham chiếu tới trong tương lai gần. Bộ nhớ chia sẻ thiết thực bởi vì các chương trình có xu hướng sở hữu 1 vùng biết đến cục bộ (locality), cái mà thường xuyên cho phép bộ xử lý truy cập tới dữ liệu được trả lại cho địa chỉ X+1, X+2… Vì vậy, mặc dù đó là 1 miss, vẫn có thể có 1 số hit trong bộ nhớ trên khối mới được truy xuất. Học viên thực hiện: Trần Thị Thùy Dương – CA 120585 4 Ý tưởng: tận dụng nguyên tắc cục bộ để cung cấp cho người dùng kích thước bộ nhớ lớn nhưng có tốc độ cao như công nghệ bộ nhớ nhanh. Nguyên lý cục bộ: Chương trình có thể truy nhập vào một phần khá nhỏ không gian địa chỉ tại một thời điểm. Cục bộ theo thời gian (Temporal Locality): Nếu một vị trí bộ nhớ được truy cập thì nó sẽ sớm được truy cập lại.  Lưu các dữ liệu vừa được truy cập nhiều nhất ở gần bộ xử lý. Cục bộ theo không gian (Spatial Locality): Nếu một vị trí bộ nhớ được truy cập thì các vị trí có địa chỉ gần đó sẽ sớm được truy cập  Đưa các khối bộ nhớ chứa các từ cạnh nhau đến gần bộ xử lý hơn. 2.2 Các mức phân cấp bộ nhớ: Hình 3: Các cấp bộ nhớ Các đặc tính như lượng thông tin lưu trữ, thời gian thâm nhập bộ nhớ, chu kỳ bộ nhớ, giá tiền mỗi bit nhớ khiến ta phải phân biệt các cấp bộ nhớ: các bộ nhớ nhanh với dung lượng ít đến các bộ nhớ chậm với dung lượng lớn. Các đặc tính chính của các cấp bộ nhớ dẫn đến hai mức chính là: mức cache - bộ nhớ trong và mức bộ nhớ ảo (bao gồm bộ nhớ trong và không gian cấp phát trên đĩa cứng). Cách tổ chức này trong suốt đối với người sử dụng. Người sử dụng chỉ thấy duy nhất một không gian định vị ô nhớ, độc lập với vị trí thực tế của các lệnh và dữ liệu cần thâm nhập. Trong máy tính bộ nhớ thường được phân chia thành các mức (cấp): Mức 0: Tập các thanh ghi (Register) bên trong bộ vi xử lý là mức nhớ thấp nhất. Học viên thực hiện: Trần Thị Thùy Dương – CA 120585 5 Mức 1: Cache bao gồm: - Cache sơ cấp L1 (primary cache) là bộ nhớ có tốc độ truy cập nhanh gần bằng tốc độ truyền dữ liệu trong bộ vi xử lý nhưng dung lượng nhở và được tích hợp ngay trên chip đối với những bộ vi xử lý hiện đại. - Cache thứ cấp L2 (secondary cache) là bộ nhớ truy cập nhanh nhưng dung lượng nhỏ hơn bộ nhớ chính và thường nằm ngoài chip vi xử lý. Mức 3: Bộ nhớ chính (Main memory) được bộ vi xử lý đánh địa chỉ trực tiếp, chứa dữ liệu và các chương trình đang được sử dụng Mức 4: Bộ nhớ ngoài (External memory), không được bộ vi xử lý đánh địa chỉ trực tiếp, bộ nhớ ngoài có dung lượng rất lớn, lớn hơn rất nhiều lần so với bộ xử lý chính nhưng tốc độ truy cập lại chậm hơn. Có thể kể ra một số thiết bị bộ nhớ ngoài thông dụng như: ổ đĩa cứng (Hard Disk Driver HDD), ổ đĩa mềm, đĩa CD… Mức 5: Bộ nhớ mạng là bộ nhớ mà một máy tính có thể truy cập tới bộ nhớ của một máy khác trong mạng máy tính. 2.3 Các thuật ngữ được sử dụng trong phân cấp bộ nhớ:  Block(or Line ): Khối (hoặc đường) – Đơn vị thông tin nhỏ nhất có (hoặc không có) trong bộ đệm – lượng thông tin nhỏ nhất được di chuyển giữa 2 bộ nhớ ở 2 mức liên tiếp trong phân cấp.  Hit – Dữ liệu yêu cầu ở 1 cấp độ bộ nhớ (thông thường, chúng ta quan tâm đến tỉ lệ hit chỉ cho bộ nhớ cấp cao hơn).  Miss – Dữ liệu yêu cầu không tìm thấy trong cấp độ bộ nhớ.  Hit rate: Tỉ lệ trúng – Tỉ lệ số lần truy cập bộ nhớ được tìm thấy trong 1 cấp độ bộ nhớ hay ở 1 mức trong phân cấp bộ nhớ.  Miss rate: Tỉ lệ trượt – Tỉ lệ số lần truy cập bộ nhớ không được tìm thấy trong 1 cấp độ bộ nhớ (hay 1 mức) trong phân cấp bộ nhớ. Note: Miss Rate = 1 – Hit Rate  Hit time: Thời gian trúng – Số lần yêu cầu để truy cập thông tin yêu cầu trong 1 cấp độ bộ nhớ. Hay thời gian truy cập mức bộ nhớ đó trong phân cấp bộ nhớ: Hit time = thời gian truy cập 1 khối + Thời gian xác định trúng/trượt  Miss penalty: Tổn thất trượt – Thời gian thay thế 1 khối ở mức bộ nhớ đó bằng khối tương ứng từ mức bộ nhớ thấp hơn. Hay là thời gian cần thiết để xử lý 1 miss, bao gồm thay thế 1 khối trong 1 cấp độ trên của bộ nhớ, cộng với thời gian đưa dữ liệu yêu cầu tới bộ xử lý. (Thời gian để xử lý 1 miss lớn hơn time xử lý 1 hit).  Hit Time << Miss Penalty Học viên thực hiện: Trần Thị Thùy Dương – CA 120585 6 2.4 Truy cập dữ liệu trong phân cấp bộ nhớ Cache là bộ nhớ nhanh, nó chứa lệnh và dữ liệu thường xuyên dùng đến. Việc lựa chọn lệnh và dữ liệu cần đặt vào cache dựa vào các nguyên tắc sau đây: Một chương trình mất 90% thời gian thi hành lệnh của nó để thi hành 10% số lệnh của chương trình. Nguyên tắc trên cũng được áp dụng cho việc thâm nhập dữ liệu, nhưng ít hiệu nghiệm hơn việc thâm nhập lệnh. Như vậy có hai nguyên tắc: nguyên tắc về không gian và nguyên tắc về thời gian • Nguyên tắc về thời gian: cho biết các ô nhớ được hệ thống xử lý thâm nhập có khả năng sẽ được thâm nhập trong tương lai gần. Thật vậy, các chương trình được cấu tạo với phần chính là phần được thi hành nhiều nhất và các phần phụ dùng để xử lý các trường hợp ngoại lệ. Còn số liệu luôn có cấu trúc và thông thường chỉ có một phần số liệu được thâm nhập nhiều nhất mà thôi. • Nguyên tắc về không gian: cho biết, bộ xử lý thâm nhập vào một ô nhớ thì có nhiều khả năng thâm nhập vào ô nhớ có địa chỉ kế tiếp do các lệnh được sắp xếp thành chuỗi có thứ tự. Tổ chức các cấp bộ nhớ sao cho các lệnh và dữ liệu thường dùng được nằm trong bộ nhớ cache, điều này làm tăng hiệu quả của máy tính một cách đáng kể. Mỗi cấp bộ nhớ có dung lượng lớn hơn cấp(mức) trên mình, ánh xạ một phần địa chỉ các ô nhớ của mình vào địa chỉ ô nhớ của cấp trên trực tiếp có tốc độ nhanh hơn, và các cấp bộ nhớ phải có cơ chế quản lý và kiểm tra các địa chỉ ánh xạ. Khi một từ không tìm thấy trong Cache, từ ấy phải tìm từ bộ nhớ và đặt vào trong Cache để tiếp tục công việc trước đấy. Nhiều từ được gọi là một khối (hoặc dòng). Được di chuyển vì lý do hiệu qủa. Mỗi khối bộ nhớ Cache bao gồm 1 Tag để xem địa chỉ bộ nhớ tương ứng. Các khối (hoặc dòng) có thể đặt trong một bộ nhớ Cache. Sự phối hợp theo hệ thống phổ biến nhất là tập liên kết (Set Associative). 1 tập liên kết gồm nhóm các khối trong bộ nhớ Cache. Khối A là lần đầu tiên ánh xạ vào 1tập và sau đó khối có thể đặt bất kỳ ở đâu trong tập đó. Tìm một khối bao gồm ánh xạ địa chỉ khối để thiết lập, và sau đó tìm kiếm trong bộ thường song song để tìm thấy các khối, các tập hợp được chọn theo địa chỉ dữ liệu: Địa chỉ khối MOD Số tập hợp trong Cache. Nếu có n các khối trong tập hợp, sự sắp đặt của Cache được gọi là kết hợp n đường (n- way set associative). Các điểm cuối của tập liên kết có tên riêng của họ. Ở bộ đệm ánh xạ trực tiếp 1 khối bộ nhớ được ánh xạ vào chính xác một khối bộ đệm. (Do đó một khối luôn được đặt ở 1 vị trí nhất định) Học viên thực hiện: Trần Thị Thùy Dương – CA 120585 7 Ở bộ đệ kết hợp toàn phần (fully associative cache ) 1 khối bộ nhớ có thể được ánh xạ vào bất cứ khối bộ đệm nào. (Vì vậy khối có thể đặt ở mọi nơi) Dữ liệu bộ nhớ đệm chỉ được đọc dễ dàng khi các bản sao trong bộ nhớ Cache và bộ nhớ chính giống hệt nhau. Để ghi dữ liệu trong Cache là một việc khó, làm thế nào để sao chép trong bộ nhớ Cache và bộ nhớ chính để lưu giữ phù hợp??? Có 2 chiến lược chính để ghi: Một là Write through – ghi xuyên: Cache được cập nhật các mục trong Cache và ghi xuyên vào cập nhật trong bộ nhớ chính. Hay thông tin được ghi vào mục dữ liệu ở cả mức bộ nhớ hiện tại và mức bộ nhớ kế tiếp trong phân cấp bộ nhớ. Một là Write Back – ghi sau: thông tin chỉ được cập nhật trong Cache hay thông tin chỉ được ghi vào mục dữ liệu ở mức bộ nhớ hiện tại. Mục bị thay đổi được ghi vào mức bộ nhớ kế tiếp khi nó bị thay thế. Cả hai chiến lược ghi có thể sử dụng bộ đệm ghi (write buffer) để cho phép bộ nhhớ cache tiến hành ngay sau khi dữ liệu đặt trong bộ đệm chứ không phải chờ độ trễ đầy đủ để ghi các dữ liệu vào bộ nhớ. Một đơn vị đo lợi ích của tổ chức Cache là Miss rate. Để có được những hiểu biết về nguyên nhân của Miss Rate: Có 3 nguyên nhân sau: Nguyên nhân không tránh được: do Lần đầu truy cập khối. Giải pháp: tăng kích thước khối (làm tăng tổn thất trượt, khối rất lớn làm tăng tỉ lệ trượt) Dung lượng: Bộ đệm không thể chứa toàn bộ các khối truy cập bởi chương trình. Giải pháp: tăng kích thước bộ đệm (có thể làm tăng thời gian truy cập) Xung đột: nhiều vị trí bộ nhớ cùng được ánh xạ vào 1 vị trí bộ đệm. Giải pháp: tăng kích thước bộ đệm hoặc tăng độ kết hợp trong bộ đệm (có thể tăng thời gian truy cập). Một biện pháp tốt hơn là dùng : Thời gian truy cập bộ nhớ trungbình(AMAT) (Average Memory Access Time -AMAT) là thời gian truy cập bộ nhớ khi tính cả 2 trường hợp trúng và trượt bộ đệm average memory access time: Hit time L1 + Miss rate L1 × (Hit time L2 + Miss rate L2 × Miss penalty L2) Ngoài ra ta còn phải quan tâm đến việc tối ưu hóa hiệu năng bộ đệm hay cải thiện hiệu năng bộ đệm bằng một trong các cách: 1. Tăng kích thước khối để giảm tỉ lệ trượt. 2. Cache lớn hơn để giảm Miss rate. 3. Liên kết cao hơn để giảm Miss rate. 4. Lưu trữ đa hình để giảm Miss rate. 5. Ưu tiên đọc nhớ hơn viết để giảm Cache miss. 6. Tránh dịch địa chỉ trong quá trình lập chỉ mục của bộ nhớ Cache để giảm Hit time. Cache phải đối phó với các bản dịch của một địa chỉ ảo từ xử lý 1 địa chỉ vật lý để truy cập bộ nhớ. Học viên thực hiện: Trần Thị Thùy Dương – CA 120585 8 Hình 4 cho thấy một mối quan hệ điển hình giữa cache, các (TLBs), và bộ nhớ ảo. Một phổ biến tối ưu hóa để sử dụng bù đắp một phần mà là giống hệt nhau trong cả hai ảo và vật lý địa chỉ chỉ số bộ nhớ cache. Phần ảo của địa chỉ là dịch trong khi bộ nhớ cache được đọc bằng cách sử dụng chỉ số, do đó trận đấu thẻ có thể sử dụng vật lý địa chỉ. Chương trình này cho phép bộ nhớ cache đọc để bắt đầu ngay lập tức, và so sánh thẻ vẫn sử dụng địa chỉ vật lý. Hạn chế này hầu như lập chỉ mục, thể chất được gắn thẻ tối ưu hóa là kích thước của trang giới hạn kích thước của bộ nhớ cache. Ví dụ, một bộ nhớ cache ánh xạ trực tiếp có thể là không có lớn hơn kích thước trang. Cao hơn associativity có thể giữ cho các chỉ số bộ nhớ cache. vật lý một phần của địa chỉ nhưng vẫn hỗ trợ một bộ nhớ cache lớn hơn một trang. Hình 4: bức tranh tổng thể của một hệ thống phân cấp bộ nhớ giả sử đi từ địa chỉ ảo đến bộ đệm truy cập L2. Kích thước trang là 8 KB. TLB được ánh xạ trực tiếp với 256 mục. Các bộ nhớ cache L1 là một ánh xạ trực tiếp 8 KB, và bộ nhớ cache L2 là ánh xạ trực tiếp 4 MB. Cả hai đều sử dụng các khối 64-byte. Các địa chỉ ảo là 64 bit và địa chỉ vật lý là 40 bit. Sự khác biệt chính giữa con số này và bộ nhớ một hệ thống phân cấp thực sự, như trong hình 5,18 trên trang 327, là associativity cao hơn cho lưu trữ và TLBs và một địa chỉ ảo nhỏ hơn 64 bit. Học viên thực hiện: Trần Thị Thùy Dương – CA 120585 9 [...]... của bộ nhớ phân cấp là mở rộng bộ nhớ chính bằng cách sử dụng đĩa cứng, gọi là bộ nhớ ảo Bộ nhớ ảo cho phép chạy các chương trình trên các bộ nhớ địa chỉ ảo lớn hơn bộ nhớ vật lý Nó cũng cho phép nhiều quá trình chạy đồng thời Nhược điểm của bộ nhớ ảo với phân trang (bộ nhớ đệm) bao gồm tiêu tốn nhiều tài nguyên hơn(lưu trữ các bảng page) và truy cập bộ nhớ nhiều hơn(để truy cập đến bảng page) Bộ nhớ. ..2.5 Tổng kết Bộ nhớ được sắp xếp theo kiểu phân cấp với bộ nhớ lớn hơn trở nên rẻ hơn, chậm hơn, bộ nhớ nhỏ hơn thì nhanh hơn, đắt hơn Trong 1 bộ nhớ phân cấp đặc trưng ta có thể thấy 1 cache, bộ nhớ chính, bộ nhớ phụ(thường là ổ đĩa) Điều này giúp các lập trình viên cảm thấy ấn tượng với bộ nhớ lớn và nhanh mà không cần quan tâm thông tin truyền giữa các cấp độ khác nhau của hệ thống... bị mất được lấy lại từ bộ nhớ chính và toàn bộ khối có chứa dữ liệu sẽ được tải vào cache Tổ chức của cache quyết định phương thức CPU dùng để tìm kiếm cache cho nhiều địa chỉ bộ nhớ khác nhau Cache được tổ chức theo nhiều cách: ánh xạ trực tiếp, kết hợp hoàn toàn, thiết lập kết hợp Ánh xạ trực tiếp cache không cần thuật toán thay thế, tuy nhiên kết hợp hoàn toàn và thiết lập kết hợp phải sử dụng FIFO,... hệ thống này Cache hoạt động như 1 bộ nhớ đệm Để giữ các khối được sử dụng thường xuyên của bộ nhớ chính và ở gần CPU Một mục tiêu của bộ nhớ phân cấp là giúp cho các bộ xử lý cảm thấy thời gian truy cập hiệu quả gần như thời gian truy cập cache Mục tiệu này phụ thuộc vào các chương trình đang được thực hiện, kích cỡ và tổ chức của cache và các chính sách thay thế Bộ xử lý liên quan được tìm thấy trong... truy cập bộ nhớ nhiều hơn(để truy cập đến bảng page) Bộ nhớ ảo cũng gánh thêm chức năng biên dịch để chuyển đổi địa chỉ ảo sang địa chỉ vật lý Quan hệ giữa bộ nhớ ảo và bộ nhớ chính tương tự như quan hệ giữa bộ nhớ chính và cache Khái niệm về bộ nhớ cache và TLB thường gây nhầm lẫn Trong thực tế, TLB là một cache Điều đó rất quan trọng để nhận ra rằng địa chỉ ảo phải được biên dịch sang địa chỉ vật... những việc khác, và đó chính là những gì TLB thực hiện Cho dù cache và paged memory có vẻ giống nhau, nhưng vẫn có sự khác biệt: cache tăng hiệu quả thời gian truy cập tới bộ nhớ chính trong khi đó phân trang lại tăng kích cỡ bộ nhớ chính Học viên thực hiện: Trần Thị Thùy Dương – CA 120585 10 . hơn cấp có dung lượng cao hơn. Mục tiêu của việc thiết kế phân cấp bộ nhớ là người dùng có một hệ thống bộ nhớ rẻ tiền như cấp bộ nhớ thấp nhất và gần nhanh như cấp bộ nhớ cao nhất. Các cấp bộ. phân cấp bộ nhớ 7 Học viên thực hiện: Trần Thị Thùy Dương – CA 120585 1 GIỚI THIỆU VỀ THIẾT KẾ PHÂN CẤP BỘ NHỚ I. ĐẶT VẤN ĐỀ Người lập trình muốn có một bộ nhớ thật nhanh với chi phí đầu tư giới. Tổng kết Bộ nhớ được sắp xếp theo kiểu phân cấp với bộ nhớ lớn hơn trở nên rẻ hơn, chậm hơn, bộ nhớ nhỏ hơn thì nhanh hơn, đắt hơn. Trong 1 bộ nhớ phân cấp đặc trưng ta có thể thấy 1 cache, bộ nhớ

Ngày đăng: 01/07/2014, 23:26

Từ khóa liên quan

Mục lục

  • 2.4 Truy cập dữ liệu trong phân cấp bộ nhớ

Tài liệu cùng người dùng

Tài liệu liên quan