1. Trang chủ
  2. » Công Nghệ Thông Tin

Phân cấp bộ nhớ trong ARM Cortex-A8 và Intel core i7

22 793 9

Đ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

Thông tin cơ bản

Định dạng
Số trang 22
Dung lượng 1,54 MB

Nội dung

Phân cấp bộ nhớ trong ARM Cortex-A8 và Intel core i7

Trang 1

Đề tài : Phân cấp bộ nhớ trong ARM Cortex-A8 và Intel core i7

Kiến trúc máy tính

Giảng viên hướng dẫn: Tạ Thị Kim Huệ

Trang 2

Phân cấp bộ nhớ trong ARM Cortex-A8, Intel core i7

1 ARM Cortex - A8

2 Intel Core i7

Trang 3

 ARM Cortex-A8 được phát triển dựa trên kiến trúc ARMv7: tốc độ có thể đạt từ 600MHz đến hơn 1GHz.

 ARM Cortex-A8 được ứng dụng nhiều trong các thiết bị đầu cuối hiện nay như: netbook, máy in, điện thoại thông minh, tivi kỹ thuật số

 ARM Cortex-A8 có 2 mức cache cho hiệu suất tối ưu trong các hệ thống hiệu năng cao

Trang 4

ARM Cortex-A8

 L1 gồm một cặp cache (gồm instruction và data)

 Có 4 cách thiết lập được lựa chọn từ kích thước 16KB hoặc 32KB

 Chúng đều được gắn trường tag dùng để xác định chỉ số của instructon và data

 Cả intructon caches và data caches đều có khả năng cung cấp 2 word/cycle cho tất cả các nguồn yêu cầu

 Data caches có thể cung cấp 4 word/cycle cho bộ nhớ truy cập NEON hoặc VFP

Trang 5

 Caches mức L1 cũng thực hiện các tính năng phát hiện lỗi chẵn lẻ Mục đích để tăng khả năng chịu lỗi bộ nhớ

 Ở mức L1 intruction caches và data caches hỗ trợ phát hiện chẵn lẻ trên mảng dữ liệu: có 1 bit chẵn lẻ cho mỗi byte dữ liệu Đối với data caches, vì có những bit không mang dữ liệu trong mảng dữ liệu, bit chẵn lẻ tương ứng sẽ loại bỏ những bit không mang dữ liệu

 Lỗi chẵn lẻ được báo cáo bởi việc truy instruction caches, các kết quả sẽ bị hủy bỏ

 Lỗi chẵn lẻ được báo cáo bởi data caches truy cập dữ liệu không chính xác bị hủy bỏ

Trang 7

 Cache ở mức L2 được phân chia thành nhiều banks để cho phép hoạt động song song

 Cấp độ thứ nhất là mảng tag được chia thành nhiều banks

để cho phép lên đến 2 yêu cầu có thể truy cập vào các banks tag khác nhau của bộ nhớ caches L2 cùng 1 lúc

 Cấp độ thứ 2 là mỗi banks tag được chia thành nhiều banks data để cho phép truyền tải các truy cập và banks data

Trang 8

ARM Cortex-A8

 Các bộ điều khiển bộ nhớ cache L2 hỗ trợ các giao việc thực hiện từ 1 công cụ lập trình nạp trước (PLE)

 Các L2 PLE có 2 kênh cho phép 2 khối di chuyển dữ liệu đến hoặc từ bộ nhớ cache L2 RAM

 Các L2 PLE cũng hỗ trợ khả năng bảo vệ dữ liệu một cách cụ thể bộ nhớ cache L2

 Nếu phần mềm yêu cầu dữ liệu luôn luôn vẫn còn cư trú trong các cách cache L2, phần mềm có thể khóa các bộ nhớ cache cách cụ thể cho mỗi kênh khi chuyển PLE dữ liệu đến hoặc từ bộ nhớ cache L2 RAM

 Khóa của một cách cụ thể chỉ đảm bảo rằng các PLE là trong RAM bộ nhớ cache L2 sau khi hoàn thành Nếu cách này không được khóa, nó có thể là phần mềm có thể đã bị đuổi hoặc thay thế dữ liệu với các cách mà các PLE được chuyển giao dữ liệu

Trang 9

 Các bộ nhớ L2 hỗ trợ phát hiện chẵn lẻ trên các mảng tag

 Các mảng dữ liệu có thể hỗ trợ chẵn lẻ hoặc Error Correction Code (ECC) Nếu hỗ trợ ECC được thực hiện, hai chu kỳ phụ được thêm vào các đường ống L2 để thực hiện các chức năng kiểm tra và sửa chữa

 Ngoài ra, ECC giới thiệu vài chu kỳ để hỗ trợ điều kiện đọc-ghi-sửa đổi khi một tập hợp con của các dữ liệu được bảo hiểm theo logic ECC được cập nhật

Trang 10

Intel Core i7

 Vi kiến trúc Intel® mới nhất trên quy trình sản xuất 22 nm cung cấp các cải tiến đáng kể về hiệu suất - bao gồm bảo mật, thời lượng pin và đồ họa được cải thiện nhiều - cho trải nghiệm điện toán không phải thỏa hiệp

 Với những tính năng chính như Công nghệ siêu phân luồng Intel®, cho phép mỗi lõi bộ xử lý làm việc đồng thời trên hai nhiệm vụ để đa nhiệm nhiều hơn, đến đồ họa Intel® Iris™ cho hình ảnh 3D tuyệt đẹp và nhanh hơn, chỉnh sửa ảnh và video tiên tiến hơn, bộ xử lý Intel® Core™ i7 thế hệ thứ 4 cung cấp hiệu năng tốt nhất trong cùng dòng sản phẩm cho những tác vụ có yêu cầu cao nhất

Trang 11

 Core i7 có thể hỗ trợ tối đa ba kênh bộ nhớ , mỗi kênh gồm một bộ riêng biệt của DIMMs , và trong số đó có thể truyền song song.

 Sử dụng DDR3-1066( DIMM PC8500 ), Core i7 có một băng thông bộ nhớ tối đa ~ 25 GB/giây

 Core i7 sử dụng 48-bit địa chỉ ảo và 36-bit địa chỉ vật lý, năng suất một bộ nhớ vật lý tối đa 36 GB

Trang 12

Intel Core i7

 Quản lý bộ nhớ của core i7 được xử lý bằng một cấu trúc TLB 2 mức

 Đặc điểm của cấu trúc TLB của Core i7, mức 1 gồm 2 phần riêng biệt là vùng nhớ lệnh và vùng nhớ dữ liệu, mức 2 chứa cả lệnh và dữ liệu

Trang 13

 Hệ thống phân cấp Cache của Core i7: gồm 3 cấp L1, L2, L3.

 Các mức cache L1, L2, L3 sử dụng write-back và kích thước mỗi block là 64bytes

 L1, L2 là riêng biệt cho mỗi lõi, L3 được chia sẻ đều cho các lõi, mỗi lõi là 2MB

Trang 14

Intel Core i7

 Khi một lệnh đọc dữ liệu từ một vị trí bộ nhớ có sử dụng loại write-back (WB), bộ xử lý sẽ cho nó trong bộ nhớ cache và

bộ nhớ Trình tự truy cập và tra cứu trong trường hợp độ trễ lớn nhất

 Độ trễ thực tế có thể khác nhau tùy thuộc vào hàng đợi chiếm bộ nhớ cache, công suất last level cache (LLC), thành phần bộ nhớ , và các thông số của chúng

Trang 15

 Các LLC đã bao gồm tất cả các cấp bộ nhớ cache trên nó - dữ liệu chứa trong cache lõi cũng phải nằm trong LLC

 Mỗi dòng bộ nhớ cache trong LLC giữ một dấu hiệu của các lõi có thể có dòng này trong cache L2 và L1 của họ

 Nếu có một dấu hiệu trong LLC rằng lõi khác có thể giữ đường dây quan tâm và trạng thái của nó có thể phải thay đổi,

có một tra cứu vào L1 và L2 DCache của các lõi quá

 Việc tra cứu là gọi là "dirty" nếu dữ liệu sửa đổi này phải được tải xuống Stores

Trang 16

Intel Core i7

 Cache L1 quản lý tất cả các tải và lưu trữ các yêu cầu từ tất cả các loại thông qua các cấu trúc dữ liệu nội bộ của mình

 Các L1 DCache duy trì các yêu cầu mà không thể được phục vụ ngay lập tức để hoàn thành

 Một số lý do cho những đề nghị bị chậm: cache bị trượt, truy cập không đồng chỉnh mà chia tách trên dòng bộ nhớ cache, dữ liệu không sẵn sàng để được chuyển tiếp từ một cửa hàng trước

Trang 17

 Các Data Translation Lookaside Buffer (DTLB) có thể thực hiện ba tuyến tính để dịch địa chỉ vật lý mỗi chu kỳ, hai cho các địa chỉ tải và một cho một địa chỉ cửa hàng.

 Nếu địa chỉ là mất tích trong DTLB, bộ vi xử lý trông cho nó trong Share Translation Lookaside Buffer (STLB), nắm giữ

dữ liệu và địa chỉ lệnh dịch

 Các hình phạt của một lỡ DTLB rằng số truy cập STLB là bảy chu kỳ

Trang 18

Intel Core i7

 Nếu một lệnh tải sau một lệnh lưu trữ và tải lại các dữ liệu mà lưu trữ ghi vào bộ nhớ, dữ liệu có thể chuyển trực tiếp từ các hoạt động cửa hàng để tải

 Quá trình này, được gọi là lưu trữ để tải chuyển tiếp ,lưu chu kỳ bằng cách cho phép tải để có được các dữ liệu trực tiếp

từ các hoạt động cửa hàng thay vì thông qua bộ nhớ

Trang 19

 Một hoạt động không tải có thể phụ thuộc vào một lệnh lưu trữ trước Nhiều microarchitectures chặn tải cho đến khi tất

cả các địa chỉ lưu trữ trên được biết đến

 Các disambiguator bộ nhớ dự đoán mà tải sẽ không phụ thuộc vào bất kỳ cửa hàng trước đó

 Khi disambiguator dự đoán rằng một tải không có một sự phụ thuộc như vậy, tải trọng mất dữ liệu từ bộ nhớ cache dữ liệu L1 ngay cả khi các địa chỉ cửa hàng là không rõ Này ẩn thời gian chờ tải Cuối cùng, dự đoán được xác minh

 Nếu một cuộc xung đột thực tế được phát hiện, việc tải và tất cả các hướng dẫn thành công được tái thực hiện

Trang 20

Intel Core i7

 Dữ liệu có thể được suy đoán nạp vào L1 DCache sử dụng phần mềm tìm nạp trước, nạp trước phần cứng, hoặc bất kỳ

sự kết hợp của cả hai

 Mục tiêu của nạp trước là để tự động dự đoán dữ liệu của chương trình là về để tiêu thụ

 Nếu dữ liệu này không phải là gần bằng với lõi thực hiện hoặc bộ nhớ cache bên trong, prefetchers mang nó từ các cấp tiếp theo của hệ thống phân cấp bộ nhớ cache và bộ nhớ

Trang 21

 Nạp trước có tác dụng sau:

 Cải thiện hiệu suất nếu dữ liệu được sắp xếp tuần tự theo thứ tự được sử dụng trong chương trình.

 Có thể gây suy giảm hiệu suất nhẹ do các vấn đề băng thông, nếu mô hình truy cập là thưa thớt thay vì địa phương.

 Trong những dịp hiếm hoi, nếu thiết lập làm việc của thuật toán được điều chỉnh để chiếm hầu hết các bộ nhớ cache và nạp trước không cần thiết đuổi dòng yêu cầu của chương trình, phần cứng nạp trước có thể gây suy giảm hiệu suất nghiêm trọng

do dung lượng cache L1.

Trang 22

Thank You !

Ngày đăng: 01/08/2015, 20:09

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w