Chào mọi người, có khi nào các bạn có thắc mắc là Vi xử lý và Vi điều khiển nó có gì khác nhau không nhỉ. Vậy hôm nay hãy cùng Điện Tử Hay tìm hiểu sự giống và khác nhau của 2 loại này và Để từ đó ta sẽ có cái nhìn tổng quát về 2 loại vi mạch này

Khai niệm:
Để hiểu về 2 loại này đàu tiên chúng ta Phải biết thế nào là Vi xử lý và thế nào là Vi điều khiển
Vi xử lý:
Vi xử lý (viết tắt là µP hay uP), đôi khi còn được gọi là bộ vi xử lý, là một linh kiện điện tử máy tính được chế tạo từ các tranzito thu nhỏ tích hợp lên trên một vi mạch tích hợp đơn. Khối xử lý trung tâm (CPU) là một bộ vi xử lý được nhiều người biết đến nhưng ngoài ra nhiều thành phần khác trong máy tính cũng có bộ vi xử lý riêng của nó, ví dụ trên cạc màn hình (video card) chúng ta cũng có một bộ vi xử lý.
Vi điều khiển
Vi điều khiển giống như một máy tính được tích hợp trên một con chip và được sử dụng để điều khiển các thiết bị điện tử. Nó là một hệ thống nhúng khép kín với các thiết bị ngoại vi, bộ xử lý và bộ nhớ. Nó được ứng dụng trong việc chế tạo khá nhiều thiết bị điện tử dân dụng như điện thoại, xe hơi, thiết bị đèn led, máy đo nhiệt độ môi trường,
Cấu trúc của Vi xử lý và Vi điều khiển
Vi xử lí
- Các vi xử lý đầu tiên sử dụng cấu trúc Von-Neumann. Trong cấu trúc Von Neumann bộ nhớ dữ liệu và bộ nhớ chương trình được đặt trong một bộ nhớ. Để xử lý một lệnh từ bộ nhớ hoặc yêu cầu từ I / O, nó nhận được lệnh thông qua bus từ bộ nhớ hoặc I / O, và đặt vào thanh ghi, xử lý nó trong các thanh ghi. Bộ xử lý có thể lưu kết quả trong bộ nhớ thông qua các bus. Nhưng kiến trúc này có một số nhược điểm như chậm và quá trình truyền dữ liệu không đồng thời xảy ra cùng một lúc bởi vì chia sẻ cùng một bus chung.
- Sau này cấu trúc Harvard (Atmega328, Atmega168,… Arduino đang dùng) được phát triển. Trong cấu trúc Harvard bộ nhớ dữ liệu và bộ nhớ chương trình và các bus được tách biệt với nhau. Ngoài ra còn có hai loại CPU micro programming và hardwired programming. Microprogramming còn chậm khi so sánh với hardwired programming.
- Kiến trúc tập lệnh Complex Instruction Set Computer: complex instruction set computer (CISC) là tập lệnh phức tạp nên sẽ tốn nhiều thời gian để thực hiện; tập lệnh phức tạp có thể bao gồm quá trình xử lý opcode và các toán hạng …vv tốc độ thực hiện lệnh sẽ chậm. Cấu trúc X86 là một ví dụ.
- Reduced Instruction Set Computer: Reduced Instruction Set Computer (RISC) là tập lệnh thu gọn và tốc độ thực hiện nhanh. Việc thực hiện rất đơn giản và không yêu cầu cấu trúc phức tạp. RISC được sử dụng rộng rãi trong các ứng dụng hệ thống nhúng. SHARC và PowerPC sử dụng RISC.
Bộ vi xử lý thường được dùng trong các ứng dụng nhỏ. Tùy theo các ứng dụng và thiết bị ngoại vi bạn đang sử dụng mà có thể chọn bộ vi xử lý cần thiết để thực hiện.
Vi điều khiển
Về cơ bản vi điều khiển có cấu tạo gồm các bộ phận sau:
- CPU- đây được coi là bộ não của vi điều khiển. Nó có chức năng tìm nạp và giải mã lệnh.
- Cổng đầu ra/đầu vào: được sử dụng để điều khiển và giao tiếp với các thiết bị như màn hình, đèn LED, máy in,…
- Bộ nhớ: trong vi điều khiển bộ nhớ được sử dụng để lưu trữ dữ liệu và chương trình.
- Cổng nối tiếp là bộ phận nối tiếp giữa vi điều khiển và các thiết bị ngoại vi khác ở bên ngoài
- Bộ chuyển đổi ADC và DAC: Bộ chuyển đổi ADC Dùng để chuyển đổi tín hiệu dạng analog sang digital. Ngược lại DAC dùng để chuyển đổi tín hiệu digital sang dạng analog.
- Bộ đếm thời gian và bộ đếm: có chức năng đếm thời gian và đếm trong vi điều khiển.
- Mạch dao động,…
Sự khác biệt giữa vi xử lý và vi điều khiển
-
Cấu trúc:
Hầu hết các bộ vi xử lý sử dụng cấu trúc CISC và Von-Neumann. Tuy nhiên, bộ vi xử lý phổ biến sử dụng cấu trúc CISC. Còn vi điều khiển sử dụng cấu trúc RISC và Harvard. Nhưng cũng có một số vi điều khiển sử dụng cấu trúc CISC như 8051 và SHARC. Bộ vi xử lý có ROM, RAM, bộ nhớ lưu trữ thứ cấp I / O thiết bị ngoại vi, timer bộ đếm(counters).. vv được xếp cùng trên một board và kết nối thông qua bus được gọi là vi điều khiển.
-
Tốc độ CPU:
Bộ vi xử lý có tốc độ nhanh hơn so với các bộ điều khiển bởi clock. Bộ vi xử lý có thể có tốc độ xung nhịp (clock) cao. Bộ vi điều khiển có thể chậm khi so sánh với các bộ vi xử lý. Tốc độ thực thi luôn luôn phụ thuộc vào clock. Nếu chúng ta so sánh hiệu suất tổng thể và ứng dụng, vi điều khiển tốc độ thực hiện rất nhanh bởi vì tất cả các thiết bị ngoại vi sẵn có.
-
Thời gian thiết kế:
Thiết kế một vi điều khiển sẽ mất ít thời gian hơn khi thiết kế bộ vi xử lý. Việc giao tiếp giữa các thiết bị ngoại vi và chương trình dễ dàng hơn khi so sánh với bộ vi xử lý. Vi điều khiển được thiết kế để thực hiện một chức năng cụ thể. Cụ thể có nghĩa là các ứng dụng mà quan hệ giữa đầu vào và đầu ra được xác định rõ ràng. Tùy thuộc vào đầu vào, một số xử lý cần phải được thực hiện và thiết lập từ đầu ra. Ví dụ, bàn phím, chuột, máy giặt, máy ảnh kỹ thuật, USB, điều khiển từ xa, lò vi sóng, xe hơi, xe đạp, điện thoại, điện thoại di động, đồng hồ ..vv Khi ứng dụng được cụ thể hóa, cần tài nguyên nhỏ như RAM, ROM, I / O port …vv do đó có thể được nhúng vào một chip duy nhất. Điều này sẽ làm giảm kích thước và chi phí.
-
Ứng dụng:
Bộ vi xử lý chủ yếu được sử dụng trong các hệ thống máy tính, hệ thống quốc phòng, mạng thông tin liên lạc …vv vi điều khiển được sử dụng chủ yếu trong các ứng dụng nhúng như đồng hồ, điện thoại di động, máy nghe nhạc mp3, vv
-
Giá thành:
So sánh vi điều khiển và vi xử lý về chi phí là không hợp lý. Chắc chắn vi điều khiển rẻ hơn so với bộ vi xử lý. Tuy nhiên vi điều khiển không thể được sử dụng thay cho bộ vi xử lý và ngược lại vì vi điều khiển và vi xử lý có tầm quan trọng riêng trong việc phát triển các ứng dụng.
-
Kết luận
Như vậy là chúng ta vừa tìm hiểu xong sự khác biệt giữa vi điều khiển và vi xử lí. Mình hi vọng rằng bài viết này sẽ mang lại nhiều kiến thức mới cho các bạn. Chúc các bạn lập trình, sáng tạo vui vẻ và có nhiều sáng chế, phát minh hay và thú vị. Xin cảm ơn
Để cùng nhau học hỏi nhiều hơn về PCB hay thích Group: Dientuhay
Cần gia công PCB liên hệ ngay: Dientuhay
Excellent write-up. I absolutely love this site. Keep writing!