- Bộ vi điều khiển và bộ vi xử lý
- Các yếu tố cần xem xét khi chọn MPU hoặc MCU
- 1. Sức mạnh xử lý
- 2. Giao diện
- 3. Bộ nhớ
- 4. Quyền lực
- Phần kết luận
Bộ não của thiết bị nhúng, là bộ phận xử lý, là yếu tố quyết định chính đến sự thành công hay thất bại của thiết bị trong việc hoàn thành (các) nhiệm vụ mà nó được thiết kế. Bộ phận xử lý chịu trách nhiệm cho mọi quá trình liên quan từ đầu vào đến hệ thống, đến đầu ra cuối cùng, do đó việc lựa chọn nền tảng phù hợp cho não bộ trở nên rất quan trọng trong quá trình thiết kế thiết bị vì mọi thứ khác sẽ phụ thuộc vào độ chính xác của quyết định đó.
Bộ vi điều khiển và bộ vi xử lý
Các thành phần xử lý được sử dụng cho các thiết bị nhúng có thể được chia thành hai loại lớn; Vi điều khiển và Vi xử lý.
Bộ vi điều khiển là các thiết bị tính toán nhỏ trên một chip có chứa một hoặc nhiều lõi xử lý, với các thiết bị bộ nhớ được nhúng cùng với các cổng đầu vào và đầu ra (I / O) mục đích chung và đặc biệt có thể lập trình được. Chúng được sử dụng đặc biệt trong các ứng dụng chỉ cần thực hiện các tác vụ lặp đi lặp lại cụ thể. Chúng ta đã thảo luận về việc chọn Bộ vi điều khiển phù hợp cho các dự án nhúng của bạn.
Mặt khác, bộ vi xử lý là các thiết bị tính toán đa năng kết hợp tất cả các chức năng của bộ xử lý trung tâm trên một con chip nhưng không bao gồm các thiết bị ngoại vi như bộ nhớ và các chân xuất nhập như vi điều khiển.
Mặc dù các nhà sản xuất hiện đang thay đổi rất nhiều thứ làm mờ ranh giới giữa vi điều khiển và vi xử lý như việc sử dụng bộ nhớ trên chip cho vi xử lý và khả năng của vi điều khiển kết nối với bộ nhớ ngoài, những khác biệt chính vẫn tồn tại giữa các thành phần này và nhà thiết kế sẽ cần phải chọn tốt nhất giữa chúng cho một dự án cụ thể.
Tìm hiểu thêm về sự khác biệt giữa Vi điều khiển và Vi xử lý.
Các yếu tố cần xem xét khi chọn MPU hoặc MCU
Trước khi đưa ra bất kỳ quyết định nào về hướng đi liên quan đến thiết bị xử lý để sử dụng cho việc thiết kế một sản phẩm nhúng, điều quan trọng là phải phát triển các thông số kỹ thuật thiết kế. Việc phát triển các thông số kỹ thuật thiết kế cung cấp một con đường cho việc thiết kế trước thiết bị, giúp xác định chi tiết, vấn đề cần giải quyết, cách giải quyết, làm nổi bật các thành phần sẽ được sử dụng và hơn thế nữa. Điều này giúp nhà thiết kế đưa ra các quyết định chung về dự án và giúp xác định hướng đi cho đơn vị xử lý.
Một số yếu tố trong đặc điểm kỹ thuật thiết kế cần được xem xét trước khi lựa chọn giữa bộ vi điều khiển và bộ vi xử lý được mô tả dưới đây.
1. Sức mạnh xử lý
Sức mạnh xử lý là một trong những điều chính (nếu không phải là chính) cần xem xét khi lựa chọn giữa vi điều khiển và vi xử lý. Đó là một trong những yếu tố chính làm nghiêng việc sử dụng bộ vi xử lý. Nó được đo bằng DMIPS (Dhrystone Million of Guide Per Seconds) và thể hiện số lượng lệnh mà một bộ vi điều khiển hoặc bộ vi xử lý có thể xử lý trong một giây. Về cơ bản, nó là một dấu hiệu về tốc độ một thiết bị có thể hoàn thành một nhiệm vụ được giao cho nó.
Mặc dù việc xác định sức mạnh tính toán chính xác mà thiết kế của bạn yêu cầu có thể là một nhiệm vụ rất khó khăn, nhưng có thể đưa ra một phỏng đoán có học thức, bằng cách kiểm tra (các) nhiệm vụ, thiết bị đang được tạo ra để thực hiện và các yêu cầu tính toán của các tác vụ đó có thể là gì. Ví dụ: sự phát triển của một thiết bị yêu cầu sử dụng hệ điều hành đầy đủ hoặc được nhúng Linux, windows CE hoặc bất kỳ hệ điều hành nào khác sẽ yêu cầu công suất xử lý cao tới 500 DMIPS, nghe giống như một bộ xử lý? Đúng. Thêm vào đó, việc chạy hệ điều hành trên thiết bị sẽ yêu cầu đơn vị quản lý bộ nhớ (MMU), điều này sẽ làm tăng sức mạnh xử lý cần thiết. Các ứng dụng thiết bị liên quan nhiều đến số học cũng yêu cầu DMIPS rất caovà thiết bị càng thực hiện nhiều phép tính toán / số thì các yêu cầu thiết kế càng nghiêng về việc sử dụng bộ vi xử lý do công suất xử lý cần thiết.
Một hàm ý chính khác của sức mạnh xử lý ảnh hưởng đến sự lựa chọn giữa bộ vi xử lý và bộ vi điều khiển là sự phức tạp hoặc đơn giản của những thứ như Giao diện người dùng. Ngày nay việc có các GUI đầy màu sắc và tương tác là một điều đáng mơ ước ngay cả đối với những ứng dụng cơ bản nhất. Hầu hết các thư viện được sử dụng trong việc tạo giao diện người dùng như QT đều yêu cầu sức mạnh xử lý lên tới 80 - 100 DMIPS và càng nhiều hoạt ảnh, hình ảnh và các nội dung đa phương tiện khác được hiển thị, thì khả năng xử lý càng cần thiết. Tuy nhiên, các giao diện người dùng đơn giản hơn trên màn hình có độ phân giải thấp đòi hỏi ít sức mạnh xử lý và có thể được cấp nguồn bằng vi điều khiển ngày nay khá nhiều, đi kèm với các giao diện nhúng để tương tác với các màn hình khác nhau
Bên cạnh một số chức năng cốt lõi được đề cập ở trên, điều quan trọng là phải dành một số sức mạnh xử lý cho truyền thông và các thiết bị ngoại vi khác. Mặc dù hầu hết các ví dụ được đưa ra ở trên có xu hướng hỗ trợ việc sử dụng bộ vi xử lý, nhưng chúng thường đắt hơn so với bộ vi điều khiển và sẽ quá mức cần thiết khi được sử dụng trong một số giải pháp nhất định, ví dụ: sử dụng bộ vi xử lý 500 DMIPS để tự động hóa bóng đèn sẽ làm tăng chi phí của sản phẩm cao hơn bình thường và cuối cùng có thể dẫn đến thất bại trên thị trường.
2. Giao diện
Giao diện được sử dụng để kết nối các phần tử khác nhau của sản phẩm là một trong những yếu tố cần được xem xét trước khi lựa chọn giữa vi điều khiển và vi xử lý. Điều quan trọng là đảm bảo đơn vị xử lý được sử dụng có các giao diện theo yêu cầu của các thành phần khác.
Ví dụ, từ quan điểm kết nối và truyền thông, Hầu hết các bộ vi điều khiển và bộ vi xử lý đều sở hữu các giao diện cần thiết để kết nối với các thiết bị truyền thông nhưng khi các thiết bị ngoại vi giao tiếp tốc độ cao như giao diện USB 3.0 siêu tốc, nhiều cổng Ethernet 10/100 hoặc cổng Gigabit Ethernet là bắt buộc, thì nghiêng theo hướng của Bộ vi xử lý vì giao diện được yêu cầu để hỗ trợ chúng thường chỉ được tìm thấy trên chúng vì chúng có khả năng xử lý và xử lý lượng lớn dữ liệu cũng như tốc độ truyền dữ liệu.
Tác động của các giao thức được sử dụng cho các giao diện này đối với dung lượng bộ nhớ cần thiết cho phần sụn cần được xác nhận vì chúng có xu hướng tăng yêu cầu bộ nhớ. Nguyên tắc chung là thiết kế dựa trên bộ vi xử lý sẽ được áp dụng cho các ứng dụng yêu cầu kết nối tốc độ cao với lượng lớn dữ liệu được trao đổi, đặc biệt khi hệ thống sử dụng hệ điều hành.
3. Bộ nhớ
Hai thiết bị xử lý dữ liệu này xử lý bộ nhớ và lưu trữ dữ liệu khác nhau. Ví dụ, bộ vi điều khiển đi kèm với các thiết bị bộ nhớ cố định, nhúng trong khi bộ vi xử lý đi kèm với các giao diện mà các thiết bị bộ nhớ có thể được kết nối. Hai hàm ý chính của điều này là;
Giá cả
Bộ vi điều khiển trở thành một giải pháp rẻ hơn, vì nó không yêu cầu sử dụng thêm thiết bị nhớ trong khi bộ vi xử lý trở thành một giải pháp đắt tiền được áp dụng do những yêu cầu bổ sung này.
Bộ nhớ hạn chế
Bộ nhớ cố định trên bộ vi điều khiển làm cho số lượng dữ liệu có thể được lưu trữ trên đó bị hạn chế. Đây là tình huống không áp dụng cho bộ vi xử lý vì chúng thường được kết nối với thiết bị bộ nhớ ngoài. Một ví dụ điển hình về thời điểm giới hạn này có thể là một vấn đề là khi phát triển phần sụn cho thiết bị. Việc thêm kilobyte bổ sung vào kích thước mã có thể yêu cầu thay đổi bộ vi điều khiển được sử dụng nhưng nếu thiết kế dựa trên bộ xử lý, chúng tôi sẽ chỉ cần thay đổi thiết bị nhớ. Do đó Bộ vi xử lý mang lại sự linh hoạt hơn với bộ nhớ.
Có một số yếu tố khác dựa trên bộ nhớ được xem xét, một trong số đó là thời gian khởi động (khởi động). Ví dụ: Bộ vi xử lý lưu trữ phần sụn trên bộ nhớ ngoài (Thường là bộ nhớ NAND bên ngoài hoặc bộ nhớ Serial Flash) và khi khởi động, phần sụn được tải vào DRAM của bộ xử lý. Mặc dù điều này diễn ra trong vòng vài giây, nhưng nó có thể không phải là lý tưởng cho một số ứng dụng nhất định. Mặt khác, bộ vi điều khiển mất ít thời gian hơn.
Đối với các cân nhắc về tốc độ chung, MCU thường thắng do khả năng giải quyết các ứng dụng quan trọng về thời gian nhất do lõi xử lý được sử dụng trong đó, thực tế là bộ nhớ được nhúng và phần sụn được sử dụng với chúng luôn là RTOS hoặc kim loại trần C.
4. Quyền lực
Một điểm cuối cùng cần xem xét là tiêu thụ điện năng. Trong khi Bộ vi xử lý có các chế độ năng lượng thấp, các chế độ này không nhiều như các chế độ có sẵn trên MCU thông thường và với các thành phần bên ngoài được yêu cầu bởi thiết kế dựa trên bộ vi xử lý, sẽ phức tạp hơn một chút để đạt được các chế độ công suất thấp. Bên cạnh các chế độ năng lượng thấp, lượng điện năng tiêu thụ thực tế của MCU thấp hơn rất nhiều so với mức tiêu thụ của bộ vi xử lý, bởi vì khả năng xử lý càng lớn thì lượng điện năng cần thiết để bộ xử lý hoạt động và hoạt động càng nhiều.
Do đó, các bộ vi điều khiển có xu hướng tìm kiếm các ứng dụng yêu cầu các bộ xử lý năng lượng cực thấp như điều khiển từ xa, thiết bị điện tử tiêu dùng và một số thiết bị thông minh, nơi thiết kế chú trọng đến tuổi thọ của pin. Chúng cũng được sử dụng khi cần một hành vi có tính xác định cao.
Mặt khác, bộ vi xử lý lý tưởng cho các ứng dụng công nghiệp và tiêu dùng yêu cầu hệ điều hành, tính toán chuyên sâu và yêu cầu kết nối tốc độ cao hoặc giao diện người dùng với nhiều thông tin phương tiện.
Phần kết luận
Một số yếu tố khác tồn tại và đóng vai trò là yếu tố quyết định cho việc lựa chọn giữa hai nền tảng này và tất cả đều phụ thuộc vào hiệu suất, khả năng và ngân sách nhưng việc lựa chọn tổng thể trở nên dễ dàng hơn khi có sẵn hệ thống thiết kế trước phù hợp và các yêu cầu được nêu rõ ràng. Bộ vi điều khiển chủ yếu được sử dụng trong các giải pháp có ngân sách BOM rất eo hẹp và với các yêu cầu nghiêm ngặt về nguồn điện trong khi Bộ vi xử lý được sử dụng trong các ứng dụng có yêu cầu tính toán và hiệu suất lớn.