Tổng Quan Về Vi Xử Lý ARM Cortex M3, M4, M7, M9 - Khuê Nguyễn

Chuyển đến nội dung

Vi xử lý ARM Cortex M3, M4, M7 là dòng vi xử lý sử dụng kiến trúc ARM cấu hình cho các ứng dụng vi điều khiển với chi phí tiết kiệm nhưng vẫn rất mạnh mẽ.

Kiến trúc ARM là một kiến trúc dạng RISC cho các vi xử lý, được cấu hình cho các môi trường khác nhau. Arm Holdings phát triển kiến ​​trúc và cấp phép cho các công ty khác. Các công ty này sẽ thiết kế các sản phẩm của riêng họ bao gồm các SoC (System on Chip) và các module hệ thống SoM (System on Module) kết hợp với các ngoại vi và bộ nhớ.Ví dụ STMicrocontroller với dòng STM32 chúng ta sử dụng trong Series Học Lập Trình STM32

via GIPHY

ARM Cortex là gì?

Vi xử lý lõi ARM Cortex dựa trên 3 cấu hình của kiến trúc ARMv7

  • Cấu hình A: cho các ứng dụng Application, yêu cầu cao chạy trên các hệ điều hành mở và phức tạp như Linux, Android…
  • Cấu hình R: cho các ứng dụng thời gian thực Real Time
  • Cấu hình M: cho các ứng dụng vi điều khiển Microcontroller

Bộ vi xử lý ARM Cortex-M3 là bộ vi xử lý ARM đầu tiên dựa trên kiến trúc ARMv7-M và được thiết kế đặc biệt để đạt được hiệu suất cao trong các ứng dụng nhúng cần tiết kiệm năng lượng và chi phí, chẳng hạn như các vi điều khiển, hệ thống cơ ô tô, hệ thống kiểm soát công nghiệp và hệ thống mạng không dây. Thêm vào đó là việc lập trình được đơn giản hóa đáng kể giúp kiến trúc ARM trở thành một lựa chọn tốt cho ngay cả những ứng dụng đơn giản nhất.

Cấu trúc bộ vi xử lý ARM Cortex M3

Bộ vi xử lý ARM Cortex-M3 dựa trên kiến trúc ARMv7-M có cấu trúc thứ bậc. Nó tích hợp lõi xử lý trung tâm, với các thiết bị ngoại vi hệ thống tiên tiến để tạo ra các khả năng như kiểm soát ngắt, bảo vệ bộ nhớ, gỡ lỗi và theo vết hệ thống.

ARM Cortex M3 dựa trên cấu trúc Havard, được đặc trưng bằng sự tách biệt giữa vùng nhớ dữ liệu và chương trình. Vì có thể đọc cùng lúc lệnh và dữ liệu từ bộ nhớ, bộ vi xử lý ARM Cortex-M3 có thể thực hiện nhiều hoạt động song song, tăng tốc thực thi ứng dụng.

Arm-Cortex-M3
Cấu Trúc Vi Xử Lý ARM Cortex M3

Cấu trúc lõi ARM Cortex M3

Lõi ARM cortex M3

Lõi ARM Cortex có cấu trúc đường ống gồm 3 tầng: Instruction Fetch, Instruction Decode và Instruction Execute. Khi gặp một lệnh nhánh, tầng decode chứa một chỉ thị nạp lệnh suy đoán có thể dẫn đến việc thực thi nhanh hơn. Bộ xử lý nạp lệnh dự định rẽ nhánh trong giai đoạn giải mã. Sau đó, trong giai đoạn thực thi, việc rẽ nhánh được giải quyết và bộ vi xử lý sẽ phân tích xem đâu là lệnh thực thi kế tiếp. Nếu việc rẽ nhánh không được chọn thì lệnh tiếp theo đã sẵn sàng. Còn nếu việc rẽ nhánh được chọn thì lệnh rẽ nhánh đó cũng đã sẵn sàng ngay lập tức, hạn chế thời gian rỗi chỉ còn một chu kỳ.

Lõi Cortex-M3 chứa một bộ giải mã cho tập lệnh Thumb truyền thống và Thumb-2 mới, một bộ phân chia logic ALU(arithmetic logic unit) tiên tiến hỗ trợ nhân chia phần cứng, điều khiển logic, và các giao tiếp với các thành phần khác của bộ xử lý.

Bộ vi xử lý Cortex-M3 là một bộ vi xử lý 32-bit, với độ rộng của đường dẫn dữ liệu 32 bit, các dải thanh ghi và giao tiếp bộ nhớ. Có 13 thanh ghi đa dụng, hai con trỏ ngăn xếp, một thanh ghi liên kết, một bộ đếm chương trình và một số thanh ghi đặc biệt trong đó có một thanh ghi trạng thái chương trình.

STM32 với ARM Cortex M3, M4, M7, M9

ST đã đưa ra thị trường 4 dòng vi điều khiển dựa trên ARM7 và ARM9 như dòng STM32H7, STM32F7… với tốc độ xử lý, hiệu năng cao nhưng giá thành rẻ (Low price, high performance), giá chỉ gần 1 Euro với số lượng lớn, trở thành một thách thức lớn đối với các dòng vi điều khiển 16 bit và 8 bit truyền thống như AVR, PIC, 8051…

STM32 phân thành hai dòng: dòng Performance có tần số hoạt động của CPU lên tới 72Mhz và dòng Access có tần số hoạt động lên tới 36Mhz. Các biến thể STM32 trong hai nhóm này tương thích hoàn toàn về cách bố trí chân (pin) và phần mềm, đồng thời kích thước bộ nhớ FLASH ROM có thể lên tới 512K và 64K SRAM.

Khi phát triền dòng chip STM32 ARM Cortex Mx, ST cũng đã phát triển tất cả các công cụ và ứng dụng xung quanh dòng chip này. Có thể kể đến Hệ sinh thái STM32 Cube giúp lập trình viên dễ dàng phát triển ứng dụng từ đơn giản đến phức tạp mà không cần quá phụ thuộc vào Code.

ARM Cortex ngày nay

Thời điểm hiện tại ARM được mua lại bởi Nvidia với giá 40 tỉ USB ngày 13/09/2020. Cụ thể, Nvidia sẽ trả cho SoftBank 21,5 tỷ USD cổ phiếu và 12 tỷ USD tiền mặt. Số còn lại sẽ được trả bằng tiền mặt hoặc cổ phiếu tùy hiệu quả kinh doanh của công ty trong tương lai. Cùng với đó, ARM sẽ hoạt động như một bộ phận riêng của Nvidia. Công ty vẫn đặt trụ sở tại Anh và “tiếp tục vận hành mô hình cấp phép mở, đồng thời duy trì tính trung lập với khách hàng toàn cầu”.

Liệu rằng tương lai của ARM nói chung và dòng vi điều khiển ARM Cortex Mx sẽ như thế nào? Để lại ý kiến của bạn tại phần bình luận nhé

4.2/5 - (17 bình chọn)
nguyenkhue2608

5 những suy nghĩ trên “Tổng quan về vi xử lý ARM Cortex M3, M4, M7, M9

  1. Duy nói:

    hay quá ad ơi

    28/02/2021 tại 21:52 Bình luận
  2. huy nói:

    40 tỷ USB, mệnh giá tiền mới à ad 🤣

    05/08/2021 tại 16:01 Bình luận
  3. Dung Tran nói:

    Thương vụ mua ARM của Nvidia thất bại rồi bạn

    12/10/2023 tại 23:15 Bình luận

Để lại một bình luận Hủy

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *

Bình luận *

Tên *

Email *

Trang web

Lưu tên của tôi, email, và trang web trong trình duyệt này cho lần bình luận kế tiếp của tôi.

Δ

Khuê Nguyễn Creator – Học Lập Trình Vi Điều Khiển

Latest Posts
  • 15 Th10 Cơ bản về GitFlow, tại sao nó được sử dụng rộng rãi trong phát triển phần mềm
  • 14 Th10 Học Git cơ bản cho người mới bắt đầu
  • 24 Th8 [STM32 – RTOS] Các trạng thái của Task và Task API
  • 28 Th7 [STM32 – RTOS] Bài 1: Tạo Task và Scheduleing task sử dụng STM32 HAL
  • 26 Th1 Xử Lý Ngoại Lệ Trong C++ Nhanh Chóng Và Hiệu Quả
Tag Cloud8051 Altium biến Blynk bài tập C Cai Dat Cube Cai dat Keil C CubeMX Công tắc WIFI dac esp32 esp32 http esp32 webserver firebase GPIO Hercules Terminal Hoc lap trinh huong dan phan mem Hướng dẫn Học Altium Học lập trình STM32 học stm32 IOT iot platform lập trình Lập trình C lập trình STM32 ngôn ngữ C ngắt nuvoton phím tắt altium rtos STM32 stm32 lcd1602 STM32 Timer stm32 usb stm32 usb hid thiết kế pcb thư viện altium tổng hợp vi điều khiển vs code Vẽ mạch in điện tử điện tử cơ bản Danh mục
  • Chia Sẻ (20)
    • Chuyện Nghề Lập Trình (3)
    • Công cụ lập trình (9)
    • Thủ Thuật Lập Trình (7)
  • Học Điện Tử (24)
    • Điện tử cơ bản (15)
    • Mạch điên tử (3)
    • Vẽ Mạch In Trên Altium (6)
  • Học lập trình MCU (66)
    • Kiến thức cơ bản MCU (3)
    • Lập trình 8051 (7)
    • Lập trình Arduino (2)
    • Lập trình Nuvoton (7)
    • Lập trình STM32 (47)
    • Lập trình STM8 (2)
  • Lập trình IOT (27)
    • Dự án IOT (1)
    • IOT Platform (3)
    • Lập trình ESP32 (23)
    • Lập trình Esp8266 (4)
  • Ngôn Ngữ Lập trình (59)
    • Lập trình C (26)
    • Lập trình C++ (16)
    • Lập trình Python (17)
  • Sản Phẩm (1)
Quảng cáo
  • Học lập trình MCU
    • Kiến thức cơ bản MCU
    • Lập trình STM32
    • Lập trình 8051
    • Lập trình Nuvoton
    • Lập trình Arduino
    • Lập trình STM8
    • Lập trình AVR
  • Học Điện Tử
    • Điện tử cơ bản
    • Mạch điên tử
    • Vẽ Mạch In Trên Altium
  • Lập trình IOT
    • Lập trình ESP32
    • Lập trình Esp8266
    • Kiến thức cơ bản IOT
    • IOT Platform
    • Dự án IOT
  • Hệ điều hành
    • Linux
    • Lập trình Raspberry Pi
  • Ngôn Ngữ Lập trình
    • Lập trình C
    • Lập trình C++
    • Lập trình Python
    • Cấu trúc dữ liệu và giải thuật
  • Xử lý ảnh
    • Open CV
  • Chia Sẻ
    • Chuyện Nghề Lập Trình
    • Công cụ lập trình
    • Tài liệu
    • Thủ Thuật Lập Trình
    • Sản Phẩm
  • Khóa học
    • Khóa học lập trình STM32 Thanh ghi
  • WooCommerce not Found
  • Newsletter

Từ khóa » Chip M7 Là Gì