Bài giảng Vi xử lý nâng cao - Phần 1: Thiết kế CPU RISC - Bài 15: Kiến trúc ARM
ARM cung cấp các tầm nhìn (view) cứng và mềm cho
các công ty được cấp phép.
RTL và các luồng tổng hợp.
GDS II layout.
Các công ty được cấp phép có quyền sử dụng các
tầm nhìn cứng và mềm của IP.
các tầm nhìn mềm bao gồm những netlist mức cổng.
các tầm nhìn cứng là các DSM.
Các OEM phải sử dụng các tầm nhìn cứng
để bảo vệ ARM IP
các công ty được cấp phép.
RTL và các luồng tổng hợp.
GDS II layout.
Các công ty được cấp phép có quyền sử dụng các
tầm nhìn cứng và mềm của IP.
các tầm nhìn mềm bao gồm những netlist mức cổng.
các tầm nhìn cứng là các DSM.
Các OEM phải sử dụng các tầm nhìn cứng
để bảo vệ ARM IP
Bạn đang xem tài liệu "Bài giảng Vi xử lý nâng cao - Phần 1: Thiết kế CPU RISC - Bài 15: Kiến trúc ARM", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
- bai_giang_vi_xu_ly_nang_cao_phan_1_thiet_ke_cpu_risc_bai_15.pdf
- Lec15.ppt
Nội dung text: Bài giảng Vi xử lý nâng cao - Phần 1: Thiết kế CPU RISC - Bài 15: Kiến trúc ARM
- Bài giảng “Vi xử lý nâng cao” Phần 3: Giới thiệu chip ARM Bài 15: Kiến trúc ARM K I Ế N T R Ú C ARM 1 1
- Công ty ARM Thành lập vào tháng 11 năm 1990 Mở rộng từ Acorn Computers Thiết kế họ ARM của các lõi bộ xử lý RISC. Cấp phép các thiết kế lõi ARM cho các công ty bán dẫn đối tác chế tạo và bán cho khách hàng của họ. ARM không tự chế tạo silicon. Ngoài ra, phát triển công nghệ để giúp đỡ việc thiết kế trên kiến trúc ARM. Công cụ phần mềm, bo mạch , phần cứng gỡ lỗi , phần mềm ứng dụng , kiến trúc bus , các ngoại vi v.v Kiến trúc ARM 3 3
- Nội dung Giới thiệu công ty ARM Mô hình đối với người lập trình Tập lệnh Thiết kế hệ thống Các công cụ phát triển Kiến trúc ARM 5 5
- Các chế độ của bộ xử lý ARM có 7 chế độ hoạt động cơ bản : User : chế độ không đặc quyền, hầu hết các tác vụ (task) chạy (hoạt động) dưới chế độ này. FIQ : được đi vào khi ngắt ưu tiên cao (nhanh) phát sinh (được gây ra). IRQ : được đi vào khi ngắt ưu tiên thấp (bình thường) phát sinh. Supervisor : được đi vào khi reset và khi lệnh ngắt mềm được thực thi . Abort : được sử dụng để xử lý các vi phạm truy cập bộ nhớ. Undef : được sử dụng để xử lý các lệnh chưa định nghĩa. System : chế độ có đặc quyền sử dụng cùng các thanh ghi như chế độ user. Kiến trúc ARM 7 7
- Tóm tắt tổ chức thanh ghi User FIQ IRQ SVC Undef Abort r0 r1 User r2 mode r3 r0-r7, r4 r15, User User User User r5 and mode mode mode mode Trạng thái Thumb cpsr r0-r12, r0-r12, r0-r12, r0-r12, r6 Các thanh ghi thấp r15, r15, r15, r15, r7 and and and and r8 r8 cpsr cpsr cpsr cpsr r9 r9 Trạng thái Thumb r10 r10 Các thanh ghi cao r11 r11 r12 r12 r13 (sp) r13 (sp) r13 (sp) r13 (sp) r13 (sp) r13 (sp) r14 (lr) r14 (lr) r14 (lr) r14 (lr) r14 (lr) r14 (lr) r15 (pc) cpsr spsr spsr spsr spsr spsr Lưu ý: chế độ system sử dụng tập thanh ghi của chế độ user. Kiến trúc ARM 9 9
- Các thanh ghi trạng thái chương trình 31 28 27 24 23 16 15 8 7 6 5 4 0 N Z C V Q J U n d e f i n e d I F T mode f s x c Các cờ mã điều kiện Các bit không cho phép ngắt N = Kết quả từ ALU âm ( Negative). I = 1: Không cho phép IRQ. Z = Kết quả từ ALU bằng 0 ( Zero). F = 1: Không cho phép FIQ. C = Phép toán ALU tạo số nhớ ra (Carry out). Bit T V = Phép toán ALU bị tràn (o Verflowed). Chỉ với kiến trúc xT. T = 0: Bộ xử lý ở trạng thái ARM. T = 1: Bộ xử lý ở trạng thái Thumb. Cờ tràn dán – Cờ Q Chỉ với kiến trúc 5TE/J. Các bit chế độ (mode) Chỉ ra có phải bão hòa đã xảy ra. Chỉ ra chế độ của bộ xử lý. Bit J Chỉ với kiến trúc 5TEJ. J = 1: Bộ xử lý ở trạng thái Zazelle. Kiến trúc ARM 11 11
- Xử lý ngoại lệ Khi ngoại lệ xảy ra , ARM: Sao chép CPSR vào trong SPSR_ . Thiết lập các bit CPSR thích hợp Thay đổi đến trạng thái ARM. 0x1C FIQ Thay đổi đến chế độ ngoại lệ. 0x18 IRQ Không cho phép các ngắt (nếu thích hợp. ) 0x14 (Reserved) Lưu địa chỉ quay về trong LR_ . 0x10 Data Abort Thiết lập PC đến địa chỉ vector. 0x0C Prefetch Abort , : Để trở về trình xử lý ngoại lệ cần 0x08 Software Interrupt Khôi phục CPSR từ SPSR_ . 0x04 Undefined Instruction Khôi phục PC từ LR_ . 0x00 Reset Điều này chỉ có thể được thực hiện Bảng vector trong trạng thái ARM. Bảng vector có thể ở 0xFFFF0000 trên ARM720T và trên các linh kiện họ ARM9/10. Kiến trúc ARM 13 13
- Nội dung Giới thiệu công ty ARM Mô hình đối với người lập trình Tập lệnh Thiết kế hệ thống Các công cụ phát triển Kiến trúc ARM 15 15