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

Tìm hiểu vi xử lý Intel Atom

32 1,1K 5

Đ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 32
Dung lượng 1,04 MB

Nội dung

Tìm hiểu về vi xử lý Intel Aton N550

Trang 1

MỤC LỤC

1 MỞ ĐẦU 2

2 GIỚI THIỆU CHUNG 2

3 KIẾN TRÚC 4

3.1 Đặc điểm cấu trúc của vi xử lý 4

3.2 Các khối chính 5

3.2.1 ALU 6

3.2.2 Memory Cache 7

3.2.3 Pipeline 9

4 KIẾN TRÚC TẬP LỆNH 10

4.1 Kiến trúc Intel 64 10

4.1.1 Các đặc trưng 10

4.1.2 Định dạng lệnh 11

4.2 Các tập lệnh SIMD (Single Instruction,Multiple Data) hỗ trợ Intel Atom N550 12

4.2.1 SSE2 12

4.2.2 SSE3 14

4.2.3 SSSE3 (Supplemental Streaming SIMD Extensions 3) 15

4.3 Kiến trúc tập lệnh Intel64 16

4.3.1 Tập lệnh 16

4.3.2 Kiến trúc tập lệnh IA 64 20

5 CÔNG NGHỆ MỚI 25

5.1 Các công nghệ mới của chip Intel Atom N550 25

5.2 Một vài điểm về vi kiến trúc của chip Itel Atom 25

5.3 Công nghệ siêu phân luồng HyperThreading: (Intel HT Technology) 27

5.4 Enhanced Intel Speedstep® Technology (EIST) 27

5.5 Chế độ tiết kiệm điện năng 28

6 KẾT LUẬN 29

Trang 2

2

1 MỞ ĐẦU

Vào ngày 2 tháng 3 năm 2008, Intel thông báo ra đời vi xử lý mới (tên mã Silverthorne) để sử dụng trong các Máy tính cá nhân siêu di động/Thiết bị Internet di động (MID) sẽ thế chỗ Intel A100

Và cùng lúc đó Intel cũng ''hé lộ'' thông tin về một bộ xử lý mới cho nền tảng

di động, dưới tên mã Diamondville, được cho là để cạnh tranh với bộ xử lý Geode x86 giá rẻ của đối thủ lâu năm AMD Tuy vậy, bộ xử lý mới này được Intel (cố tình) bán với thương hiệu Atom

Silverthorne và Diamondville đều dựa trên vi kiến trúc giống nhau Silverthorne sẽ được gọi là các xê-ri Atom Z và Diamondville là Atom N Đắt và tiêu thụ điện ít hơn là Silverthorne sẽ được sử dụng trong các thiết bị MID còn Diamondville sẽ được sử dụng trong các máy xách tay và để bàn giá rẻ

2 GIỚI THIỆU CHUNG

Intel Atom là tên nhãn hiệu cho dòng CPU x86 của Intel, tên mã trước

đó là bộ xử lý Silverthorne và Diamondville, thiết kế cho một tiến trình CMOS

cỡ 45 nm dự định dùng cho máy tính siêu di động, điện thoại thông minh và các thiết bị bỏ túi cần tiêu thụ điện năng thấp

Intel® Atom™ - Bộ vi xử lý tí hon Intel® Atom™ có 47 triệu bóng bán

dẫn dựa trên công nghệ 45nm High-K Intel® Atom™ có kích thước cực nhỏ -

25 milimet vuông – 11 bộ vi xử lý tí hon Intel® Atom™ hợp lại với nhau mới lớn

bằng đồng 1 xu USA (vui lòng nhìn hình dưới) - điều đặc biệt nhất là bộ vi xử lý tí

hon Intel® Atom™ này có công suất tiêu thụ điện vào khoảng 2.4W – đây là khả năng tiết kiệm điện cực tốt (tiết kiệm hơn 90% lượng điện năng tiêu thụ)

Trang 3

3

Sự ra đời của Intel® Atom™ Processor N550

Thứ 2 ngày 23/8/2010, Intel đã phát hành chip Atom lõi kép N550 cải thiện ứng dụng và hiệu năng đồ họa cho netbook đồng thời kéo dài thời gian làm việc của pin

BXL Intel Atom N550 dual-core

Bộ xử lý (BXL) Atom N550 là một nâng cấp lớn từ những BXL trước đó trong dòng Atom mà chủ yếu bao gồm các chip đơn nhân

N550 là mẫu vi xử lý Intel Atom 2 nhân đầu tiên dành cho Netbook Nó không chỉ mạnh hơn mà còn hỗ trợ những công nghệ mới, hỗ trợ tốt hơn cho các ứng dụng multimedia như game, video HD, cũng như công nghệ Adobe Flash để truy cập một

số lượng lớn các trang Web nội dung đa phương tiện

Intel Atom N550 có tốc độ 1,5GHz, 2 nhân, 4 luồng (nhờ công nghệ HT-Hyper Threading), bộ nhớ Cache 1MB, công nghệ xuất nguyên khối 45nm với GPU GMA

3150 tích hợp ngay trên nhân xử lý, có tốc độ xử lý đồ họa 200MHz Đây cũng là vi

xử lý Atom đầu tiên hỗ trợ bộ nhớ DDR3 Với mức tiêu thụ điện TDP tối đa chỉ 8,5W, dòng vi xử lý này cho thời gian sử dụng pin dài không kém là bao so với bộ vi

xử lý đơn nhân Intel Atom N450 Với kiến trúc 2 nhân xử lý, N550 đã được giảm tốc

độ từ 1,66MHz của N450 xuống còn 1,5GHz để giảm mức tiêu thụ điện Ngoài ra, tuy mức Max TDP của N550 cao hơn 3W so với N450, nhưng hệ thống được bù lại với

Trang 4

3 KIẾN TRÚC

3.1 Đặc điểm cấu trúc của vi xử lý

 Sản xuất theo công nghệ 45nm

 Hỗ trợ NX bit và tập lệnh SSE2, SSE3, SSSE3.(NX bit là không thực thi, là một công nghệ sử dụng CPU để phân biệt các khu vực bộ nhớ để lưu trữ lệnh

và dữ liệu)

 Kênh dữ liệu nội 128-bit (Digital Media Boost):

o 2 cổng được dùng để phân phối các lệnh SIMD (Single Information, Multiple Data) tới đơn vị xử lý

o Một chu kì đơn cho phép dòng lệnh SIMD nhiều nhất 128-bit integer

o Một chu kì, cho phép tính toán với những toán hạng có 6 số sau dấu phẩy động

 Atom có pipeline 16 bước

 Có trang bị công nghệ siêu phân luồng HyperThreading :(Intel HT Technology):

 Công nghệ Enhanced Speed Step : Nhiều mức điện áp và xung nhịp vận hành mang lại hiệu suất hoạt động tối ưu ở mức tiêu thụ điện năng thấp nhất, cho phép hiệu suất hoạt động phù hợp nhất với mỗi nhu cầu ứng dụng

 Tính năng nạp dữ liệu (Enhanced Data Prefetcher) và quản lý Enhanced Register Access Manager: Dự đoán những dữ liệu mà bộ vi xử lý có thể cần đến và lưu trữ các thông tin đó trong bộ nhớ đệm L2 của bộ vi xử lý, giúp nâng cao hiệu suất hoạt động do bộ vi xử lý không phải chờ lâu khi nạp các dữ liệu

 Bộ nhớ đệm thông minh - Intel Smart Cache: Bộ nhớ đệm và kênh truyền hệ thống được thiết kế cho việc chia sẻ dữ liệu hiệu quả, mang lại hiệu suất hoạt động, tính nhạy bén, và khả năng tiết kiệm điện năng tốt hơn

Trang 5

5

o Cache L2 là 512KB với 8 cổng liên kết

o Tối ưu môi trường thực thi cho xử lý đơn luồng và đa luồng

o 256 bit dữ liệu trong giữa L1 và L2 làm tăng băng thông

 Hỗ trợ kiến trúc Intel 64 bit

 Tiêu tốn cực kì ít điện với TDP (Thermal Design Power) chỉ có 8.5W

 Advanced Micro-Ops Execution:

o Một dòng lệnh được thực thi bằng cách giải mã các lệnh, bao gồm các lệnh chỉ với thanh ghi, nạp và lưu trữ

o Pipeline 16 bước, tối ưu hiệu suất và giảm điện năng tiêu thụ

o 2 đường ống(pipelines) được dùng để giải mã, xuất ra, thực hiện và dừng Mỗi chu kì có thể thực hiện cùng lúc 2 lệnh

o Nâng cao bộ nhớ stack để thực thi được nhiều hơn các chức năng vào/ra

 Efficient Memory Access (Hiệu suất truy cập bộ nhớ)

o Thông tin về phần cứng sẽ được nạp trước vào L1 và L2, việc nạp dữ liệu giống như 1 yêu cầu từ vi xử lý để giảm áp lực cho cache

3.2 Các khối chính

Sơ đồ cơ bản của 1 CPU

Trang 6

6

Kiến trúc máy tính Atom đã từ 3 chip trước đây (bên trái) giờ thành 2 chip

3.2.1 ALU

 Atom được trang bị 2 khối ALU (khối tính toán) và 2 khối FPU

(dùng tính toán các phép tính với dấu phẩy động)

 Khối ALU thứ nhất quản lý các phép dịch và khối thứ 2 quản lý các

phép nhảy (jump) Tất cả các phép tính cộng và nhân được chuyển

tới FPU ( ngoại trừ với các số nguyên)

 Khối FPU thứ nhất dùng tính các phép cộng, trong khi khối thứ 2

quản lý các lệnh SIMD và các phép nhân/chia

Trang 7

7

3.2.2 Memory Cache

Memory Cache là một kiểu bộ nhớ hiệu suất cao, cũng được gọi là bộ nhớ

tĩnh Kiểu bộ nhớ đã sử dụng trên bộ nhớ RAM chính của máy tính được gọi là bộ

nhớ động Bộ nhớ tĩnh tiêu tốn nhiều năng lượng điện hơn, đắt hơn và có kích thước

vật lý lớn hơn so với bộ nhớ động, tuy nhiên nó lại chạy nhanh hơn Nó có thể làm

việc với cùng tốc độ clock của CPU, điều mà bộ nhớ động không thể thực hiện được

Vào “thế giới bên ngoài” để tìm nạp dữ liệu làm cho CPU phải làm việc ở tốc

độ clock thấp hơn do vậy mà kỹ thuật cache nhớ được sử dụng ở đây để khắc phục

nhược điểm này Khi CPU nạp dữ liệu từ một vị trí nhớ nào đó thì mạch có tên gọi

là memory cache controller nạp vào cache nhớ một khối dữ liệu bên dưới vị trí hiện

hành mà CPU đã nạp Vì các chương trình được thực hiện theo thứ tự nên vị trí nhớ

Trang 8

8

tiếp theo mà CPU sẽ yêu cầu có thể là vị trí ngay dưới vị trí nhớ mà nó đã nạp Do memory cache controller đã nạp rất nhiều dữ liệu dưới vị trí nhớ đầu tiên được đọc bởi CPU nên dữ liệu kế tiếp sẽ ở bên trong cache nhớ, chính vì vậy CPU không cần phải thực hiện thao tác lấy dữ liệu bên ngoài: nó đã được nạp vào bên trong cache nhớ nhúng trong CPU, chính vì nhúng trong CPU mà chúng có thể truy cập bằng tốc độ clock trong

Cache controller luôn luôn quan sát các vị trí nhớ đã và đang được nạp dữ liệu

từ một vài vị trí nhớ sau khi vị trí nhớ vừa được đọc Một ví dụ thực tế, nếu một CPU

đã nạp dữ liệu được lưu tại địa chỉ 1.000 thì cache controller sẽ nạp dữ liệu từ “n” địa chỉ sau địa chỉ 1.000 Số “n” được gọi là trang; nếu một bộ vi xử lý này làm việc với 4KB trang (giá trị điển hình) thì nó sẽ nạp dữ liệu từ các địa chỉ 4.096 dưới vị trí nhớ hiện hành đang được nạp (địa chỉ 1.000 trong ví dụ) 1KB bằng 1.024 byte, do đó là 4,096 chứ không phải 4,000

Memory cache controller làm việc như thế nào?

Memory cache càng lớn thì cơ hội cho dữ liệu yêu cầu bởi CPU ở đây càng cao, chính vì vậy CPU sẽ giảm sự truy cập trực tiếp vào bộ nhớ RAM, do đó hiệu suất hệ thống tăng (hãy nên nhớ rằng khi CPU cần truy cập trực tiếp vào bộ nhớ RAM thì nó phải thực hiện ở tốc độ clock thấp hơn nên giảm hiệu suất của toàn hệ thống)

Trang 9

9

Chúng ta gọi là “hit” khi CPU nạp một dữ liệu yêu cầu từ cache và “miss” nếu

dữ liệu yêu cầu không có ở đó và CPU cần phải truy cập vào bộ nhớ RAM của hệ thống

L1 và L2 tương ứng là “Level 1” và “Level 2”, được đại diện cho khoảng cách chúng cách lõi CPU (khối thực thi) Một sự ngờ vực hay có ở đây là tại sao có đến 3

bộ nhớ Cache (L1 data cache, L1 instruction cache và L2 cache) Hãy chú ý trên hình

và bạn sẽ thấy được rằng L1 instruction cache làm việc như một “input cache”, trong khi đó L1 data cache làm việc như một “output cache” L1 instruction cache – thường nhỏ hơn L2 cache – chỉ hiệu quả khi chương trình bắt đầu lặp lại một phần nhỏ của nó (loop), vì các chỉ lệnh yêu cầu sẽ gần hơn với khối tìm nạp

so với các CPU có ít bước hơn, do vậy ta có thể tắt đi một số bước không thực

sự cần thiết để tiết kiệm điện năng

 Một ưu điểm khác trong pipeline dài hơn sẽ làm cho các vi kiến trúc có thể đạt được tốc độ đồng hồ cao hơn

Kết quả kiểm tra bằng CPU-Z

Trang 10

 Cơ chế xử lý song song là song song các lệnh mã máy (EPIC) thay vì các bộ xử

lý song song như hệ thống đa bộ xử lý

 Các lệnh dài hay rất dài (LIW hay VLIW)

 Các lệnh rẽ nhánh xác định (thay vì đoán các lệnh rẽ nhánh như trước)

Trang 11

11

 Nạp trước các lệnh

 Có nhiều thanh ghi: số lượng thanh ghi các bộ xử lý kiến trúc IA-64 là 256 thanh ghi Trong đó, 128 thanh ghi tổng quát (GR) 64 bit cho các tính toán số nguyên, luận lý; 128 thanh ghi 82 bit (FR) cho các phép tính dấu chấm động và

dữ liệu đồ hoạ; ngoài ra, còn có 64 thanh ghi thuộc tính (PR)1 bit để chỉ ra các thuộc tính lệnh đang thi hành

 Nhiều bộ thi hành lệnh: một máy tính có thể có tám hay nhiều hơn các bộ thi hành lệnh song song Các bộ thi hành lệnh này được chia thành bốn kiểu:

o Kiểu I (I-Unit): dùng xử lý các lệnh tính toán số nguyên, dịch, luận lý, so sánh, đa phương tiện

o Kiểu M (M-Unit): Nạp và lưu trữ giữa thanh ghi và bộ nhớ thêm vào một vài tác vụ ALU

o Kiểu B (B-Unit): Thực hiện các lệnh rẽ nhánh

o Kiểu F (F-Unit): Các lệnh tính toán số dấu chấm động

4.1.2 Định dạng lệnh

Kiến trúc IA-64 định nghĩa một gói (buldle) 128 bit chứa ba lệnh (mỗi lệnh dài

41 bit) và một trường mẫu (template field) 5 bit Bộ xử lý có thể lấy một hay nhiều gói lệnh thi hành cùng lúc Trường mẫu (template field) này chứa các thông tin chỉ ra các lệnh có thể thực hiện song song Các lệnh trong một bó có thể là các lệnh độc lập nhau Bộ biên dịch sẽ sắp xếp lại các lệnh trong các gói lệnh kề nhau theo một thứ tự

để các lệnh có thể được thực hiện song song

Trang 12

12

Hình (a) chỉ ra định dạng lệnh trong kiến trúc IA-64 Hình (b) mô tả dạng tổng quát của một lệnh trong gói lệnh Trong một lệnh, mã lệnh chỉ có 4 bit chỉ ra 16 khả năng có thể để thi thi hành một lệnh và 6 bit chỉ ra thanh ghi thuộc tính được dùng với lệnh Tuy nhiên, các mã tác vụ này còn tuỳ thuộc vào vị trí của lệnh bên trong gói lệnh, vì vậy khả năng thi hành của lệnh nhiều hơn số mã tác vụ được chỉ ra Hình (c)

mô tả chi tiết các trường trong một lệnh (41 bit)

4.2 Các tập lệnh SIMD (Single Instruction,Multiple Data) hỗ trợ Intel Atom N550

4.2.1 SSE2

Là một cải tiến đáng kể SSE với 144 hướng dẫn mới-hỗ trợ các lệnh số nguyên với thanh ghi 128 bit SSE2 thêm hướng dẫn toán học mới cho độ chính xác kép(64 bit) và dấu chấm động cũng mở rộng MMX hướng dẫn để hoạt động trên các thanh ghi XMM-128bit SSE2 cho phép lập trình để thực hiện các toán SIMD trên bất kỳ loại dữ liệu (từ số nguyên 8-bit đến 64 bit-float) hoàn toàn với các thanh ghi XMM, mà không cần phải sử dụng những di sản MMX hoặc FPU Nhiều người lập trình xem xét SSE2

để được "tất cả mọi thứ SSE cần phải có được như SSE2” cung cấp một tập hợp các trực giao của các hướng dẫn xử lý các dữ liệu phổ biến các loại

VD:

Số học:

addpd-Thêm 2 64bit tăng gấp đôi

mulpd -2 64bit sẽ nhân đôi

divpd -chia đôi 2 64bit

Logic:

andnpd-logic không ANDs 2 64bit tăng gấp đôi

pand -logic ANDs 2 128bit đăng ký

So sánh:

cmppd -So sánh 2 cặp đôi 64bit

Trang 13

13

So sánh Codes:

eq-Bằng

lt-Ít hơn

le-Nhỏ hơn hoặc bằng

ne-Không phải bằng nhau

clflush-flushes một Line Cache từ tất cả các cấp bộ nhớ cache

lfence-Đảm bảo rằng tất cả các bộ nhớ tải ban hành trước lfence hướng dẫn được hoàn tất trước khi anyloads sau khi lfence hướng dẫn

mfence-hướng dẫn được hoàn thành trước khi đọc hoặc viết sau khimfence hướng dẫn

pause-thực hiện tạm dừng cho một khoảng thời gian

Trang 14

14

4.2.2 SSE3

Còn gọi là Prescott New Instruction(PNI), là một nâng cấp của SSE2 với 13 hướng dẫn mới thêm một số ít các định hướng toán học DSP và quá trình hướng dẫn một số hướng dẫn quản lý, xử lý các số thực dấu phẩy động

VD:

Số học:

addsubpd-Thêm hai đôi trên và trừ đi phía dưới hai

addsubps-Thêm đĩa đơn đầu và trừ đơn dưới cùng

haddpd-Top gấp đôi là tổng của đáy, đáy và đỉnh là tổng của hai toán hạng của trang thứ hai và dưới cùng

haddps-Ngoài ngang chính xác của các giá trị duy nhất

hsubpd-ngang trừ chính xác giá trị tăng gấp đôi

hsubps-ngang trừ chính xác giá trị duy nhất

Load/Store:

lddqu-128bit unaligned tải một giá trị

movddup-tải 64bits và bản sao nó ở trên và dưới nửa của một đăng ký 128bit movshdup-Bản sao các cao và thấp đĩa đơn thành đĩa đơn cao

movsldup-Bản sao các đĩa đơn thành thấp và thấp đĩa đơn cao

fisttp-Chuyển đổi một giá trị điểm nổi đến một số nguyên cách sử dụng cắt ngắn

Quy trình kiểm soát:

monitor-Bộ lập một khu vực để giám sát cho hoạt động

mwait-Đợi cho đến khi hoạt động sẽ xảy ra trong một khu vực xác định bởi monitor

Trang 15

15

4.2.3 SSSE3 (Supplemental Streaming SIMD Extensions 3)

Là một nâng cấp của SSE3 thêm 16 hướng dẫn mớitrong đó bao gồm permuting các byte trong một từ, nhân 16-bit đểm làm tròn số cố định với độ chính xác cao

phaddd - ngang bổ sung các số nguyên unsigned 32bit

phaddw - ngang bổ sung các số nguyên unsigned 16bit

phaddsw - Ngoài ngang bão hòa của các số nguyên 16bit

phsubd - ngang trừ các số nguyên unsigned 32bit

phsubw - ngang trừ các số nguyên unsigned 16bit

phsubsw - ngang trừ bão hòa của 16bit từ

pmaddubsw - Nhân-tích lũy hướng dẫn (cuối cùng)

pabsd - abs():cho số nguyên 32 bit

pabsw - abs():cho số nguyên 16bit

pabsb - abs():cho 8 bit số nguyên

pmulhrsw-16bit số nguyên nhân, các cửa hàng hàng đầu của kết quả 16bits pshufb-Một hướng dẫn shuffle phức tạp

palignr-Kết hợp hai giá trị đăng ký, và chất chiết xuất từ một-chiều rộng giá trị đăng ký từ nó, dựa trên một bù đắp

Trang 16

16

Bổ sung:

 Kiến trúc Intel64

o Các thanh ghi bên trong: 64 bit

o Xử lý các phép toán sốnguyên với 64-bit

o Xử lý các phép toán số dấu chấm động

o Không tương thích phần cứng với các bộ xử lý trước đó

o Tương thích phần mềm bằng cách giả lập môi trường

 Không gian địa chỉ

o 64 bits không gian địa chỉ tuyến tính cho phần mềm

o 40 bits không gian địa chỉ vật lý

 Hỗ trợ 2 chế độ hoạt động:

o Chế độ tương thích: cho phép hệ điều hành 64 bit chạy các ứng dụng 32 bit

o Chế độ 64 bits: cho phép hệ điều hành 64-bit chạy các ứng dụng 64 bits

 Các lệnh MMX có thể xử lý hiệu quả các mảng hoặc các luồng số nguyên

 Các lệnh SSE có thể xử lý cả số nguyên và số thực Chúng có thể được

sử dụng hiệu quả trong các ứng dụng 3D hoặc nén và giải nén hình ảnh

 SSE2 mở rộng khả năng của SSE –hỗ trợ các lệnh số nguyên với các thanh ghi XMM 128 bits

 SSE3, SSE4 cung cấp các lệnh xử lý hiệu quả các số thực dấu phẩy động

 Các lệnh được mô tả bằng kí hiệu gợi nhớ gọi là các lệnh của hợp ngữ

 Thực thi lệnh được chia thành các giai đoạn Tiêu biểu có 4 giai đoạn:

o Nạp lệ nh (IF) : lệnh được nạp từ bộ nhớ vào CPU

o Giải mã lệnh (ID) : CPU “đọc lệnh”

Ngày đăng: 27/02/2014, 15:16

HÌNH ẢNH LIÊN QUAN

Hình1: Định dạng lệnhtrong kiến trúc IA-64 - Tìm hiểu vi xử lý Intel Atom
Hình 1 Định dạng lệnhtrong kiến trúc IA-64 (Trang 23)
Bảng.1: Bảng mã hoá tập hợp các ánh xạ trong trường mẫu. - Tìm hiểu vi xử lý Intel Atom
ng.1 Bảng mã hoá tập hợp các ánh xạ trong trường mẫu (Trang 24)

TỪ KHÓA LIÊN QUAN

w