Đặc điểm kiến trúc dòng lõi xử lý ARMv6

Một phần của tài liệu Tìm hiểu vi điều khiển họ ARM (Trang 44)

Kiến trúc v6 và các phiên bản mở rộng v6T2, v6Z và v6K được ARM giới thiệu năm 2002, bao gồm các lõi xử lý: ARM1136J(F)-S, ARM1156T2(F)-S(v6T2), ARM1176JZ(F)-S(v6Z), MPCore(v6K).

Có nhiều bổ sung ở kiến trúc v6 theo hướng tạo ra những hệ thống nhúng cao cấp và phức tạp hơn nhưng vẫn giữ được ưu điểm về khả năng tiêu thụ điện năng thấp. Với mỗi phiên bản sẽ có những tính năng đặc biệt được thêm vào. Kế thừa các đặc điểm nổi trội của kiến trúc v4 và v5, ở kiến trúc v6 các khối ‘TEJ’ được tích hợp vào lõi ARM. Để đảm bảo khả năng tương thích ngược phần bộ nhớ và xử lý ngoại lệ được kế thừa từ kiến trúc v5. Về kiến trúc v6, có năm điểm chính được cải tiến:

45

- Quản lý bộ nhớ: bộ nhớ cache và khối quản lý bộ nhớ (MMU- Memory Management Unit) được cải tiến làm tăng hiệu suất thực thi của hệ thống lên 30% so với kiến trúc cũ.

- Đa lõi xử lý (Multiprocessor): đáp ứng các hệ thống mà ở đó yêu cầu khả năng tốc độ xử lý nhanh như: phương tiện giải trí cá nhân, xử lý số… Các lõi xử lý chia sẻ và đồng bộ dữ liệu với nhau thông qua vùng nhớ chung.

- Hỗ trợ xử lý đa phương tiện: tích hợp bộ tập lệnh SIMD (Single Instruction Multiple Data) làm tăng khả năng xử lý dữ liệu dạng âm thanh và hình ảnh. SIMD cũng cho phép các nhà phát triển cài đặt các ứng dụng phức tạp hơn như: giải mã dữ liệu âm thanh và hình ảnh, các bài toán nhận dạng, hiển thị hình ảnh 3D hoặc hỗ trợ thiết bị sử dụng công nghệ không dây.

- Kiểu dữ liệu: là cách hệ thống sử dụng và lưu trữ dữ liệu trong bộ nhớ. Các hệ thống SoC (System on Chip), các chip vi xử lý đơn, hệ điều hành và các giao diện ngoại vi như USB hoặc PCI thường hoạt động dựa trên kiểu dữ liệu “little endian”. Một số các giao thức như TCP/IP hay MPEG hoạt động dựa trên kiểu dữ liệu “big endian”. Để có thể tối ưu hóa khả năng tích hợp của hệ thống, ARMv6 hỗ trợ cùng lúc cả hai định dạng “little” và “big” endian, gọi tắt là “mixed-endian”. Bên cạnh đó, ARMv6 còn cung cấp tập lệnh để xử lý dữ liệu dạng “unalignment” - có kích thước dữ liệu thay đổi. Tương tự như ARMv5, ARMv6 cũng là kiến trúc 32 bit, nên hỗ trợ đường truyền dữ liệu 64 bit hoặc cao hơn.

- Xử lý ngoại lệ và ngắt: để thích ứng cho các hệ thống xử lý thời gian thực. Nhằm tăng cường tính an toàn khi thực thi mã chương trình, khối TrustZone được tích hợp ở phiên bản v6Z. Vấn đề thực thi mã an toàn xuất phát từ thực tế ngày càng nhiều thiết bị di động dựa trên nền tảng của ARM, nhiều chương trình được tải từ trên mạng do đó tính an toàn của các đoạn

46

mã nhiều khi chưa được kiểm chứng. TrustZone đảm bảo các đoạn mã độc hại không làm ảnh hưởng đến hệ thống.

Dòng ARM11 là đại diện phổ biến nhất của kiến trúc ARMv6. Với kiến trúc đường ống tám tầng (ở ARM1156T áp dụng kiến trúc đường ống chín tầng), hệ thống dự đoán rẽ nhánh (Branch Prediction) và kết quả trả về (Return Stack) giúp ARM11 nâng cao hiệu suất thực thi lệnh.

Tập lệnh Thumb-2 cũng được giới thiệu hỗ trợ các lệnh Thumb 16 bit và 32 bit. Ở phiên bản ARM1176JZ(F)-S bổ sung khối IEM (Intelligent Energy Management) để quản lý mức tiêu thụ năng lượng tốt hơn.

Một phần của tài liệu Tìm hiểu vi điều khiển họ ARM (Trang 44)