Site icon Blog Dương Trạng

Trung tâm đào tạo thiết kế vi mạch Semicon

Trung tâm đào tạo thiết kế vi mạch Semicon

Trung tâm đào tạo thiết kế vi mạch Semicon

Trung tâm đào tạo thiết kế vi mạch Semicon

Trong một bộ vi xử lý (CPU), cụm xử lý logic và số học (ALU – Arithmetic logic unit) là một linh kiện điện tử thực hiện các phép tính số học và logic.

ALU (Arthmetic Logic Unit) là một linh kiện điện tử thực hiện các phép tính số học và logic. ALU là một phần quan trọng của CPU trong một máy tính, có chức năng thực hiện các phép tính số học và logic, sau đó trả kết quả về thanh ghi và bộ nhớ.

John von Neumann, nhà toán học và nhà giáo dục người Mỹ, đã phát minh ra khái niệm về ALU vào năm 1945, khi ông viết báo cáo cho dự án EDVAC.

Giai đoạn đầu

Biểu đồ biểu diễn một ALU

Vào năm 1946, von Neumann đã cùng với các sinh viên nghiên cứu để thiết kế một máy tính cho Viện nghiên cứu cao cấp Princeton (IAS) ở Princeton, New Jersey. Máy tính IAS đã trở thành nguồn gốc cho nhiều thế hệ máy tính tiếp theo. Trong đề xuất của von Neumann, ông đã tạo ra một phác thảo về những yếu tố quan trọng cần có trong một máy tính, bao gồm cả ALU.

Von Neumann tin rằng một máy tính cần có một ALU vì nó chỉ tính toán các phép toán bao gồm cộng, trừ, nhân và chia.

Hệ số

Một ALU phải xử lý dữ liệu bằng cách sử dụng hệ thống của các mạch điện tử. Hệ thống này sử dụng hệ số nhị phân 0 và 1. Để biểu diễn các số dưới dạng hệ thập phân, cần dùng đến mười bộ gồm bán dẫn.

Mỗi ALU có một thiết kế khác nhau, nhưng tất cả đều tuân theo nguyên tắc của mã bù hai. Nhờ đó, các ALU dễ dàng thực hiện các phép cộng và trừ.

Hệ thống mã bù hai cho phép thực hiện phép trừ bằng cách thêm số đối của số bị trừ vào số được trừ.

Tổng quan

Phần lớn các phép tính được thực hiện bởi một hay nhiều ALU. Một ALU sẽ tải dữ liệu từ thanh ghi, một thành phần điều khiển. ALU sẽ thực hiện tính toán và lưu kết quả vào một thanh ghi kết quả. Các hệ thống khác sẽ di chuyển dữ liệu giữa thanh ghi và bộ nhớ.

Các phép tính đơn giản

Minh họa về một ALU (2-bit ALU) thực hiện phép AND, OR, XOR và phép cộng

Hầu hết các ALU có thể thực hiện các phép tính sau:

– Số nguyên (cộng, trừ, nhân và chia)

– Bit logic (AND, NOT, OR, XOR)

– Dịch bit

Các phép tính phức tạp

Một kỹ sư có thể thiết kế một ALU để thực hiện các phép toán phức tạp. Tuy nhiên, vấn đề là với các phép toán phức tạp, ALU sẽ trở nên đắt tiền, lớn hơn và tiêu tốn nhiều năng lượng hơn.

Do đó, các kỹ sư thường phải cân nhắc và tính toán sao cho cân đối, đảm bảo rằng ALU cung cấp đủ sức mạnh để thực hiện các phép toán nhanh chóng, nhưng không quá phức tạp. Điều này được gọi là mô phỏng phần mềm.

Đầu vào và Đầu ra

Dữ liệu đầu vào của ALU được thực hiện trên các phép toán và mã lệnh từ thành phần điều khiển để chỉ ra phép toán nào sẽ được thực hiện. Dữ liệu đầu ra kết quả sẽ được xuất ra sau khi phép toán được thực hiện.

Có nhiều thiết kế của ALU đã được tự động hoặc được tự động tạo mã lệnh điều kiện cho dữ liệu đầu vào hoặc đầu ra dựa trên một thanh ghi trạng thái. Các mã lệnh này được sử dụng để chỉ định khối mạch cho những điều kiện như carry, số vượt quá, chia cho 0, v.v.

ALU và FPU

Một đơn vị phần tử dấu phẩy động (FPU – Floating Point Unit) cũng thực hiện các phép tính giữa hai giá trị, tuy nhiên, chúng thực hiện theo dạng dấu phẩy động, phức tạp hơn so với mã bù hai của các ALU thông thường. FPU bao gồm nhiều mạch điện tử phức tạp, bao gồm cả một số ALU.

Thường thì, các ALU thực hiện các phép tính số học với các dạng số nguyên (như mã bù hai và mã BCD), trong khi FPU tính toán các dạng phức tạp như dấu phẩy động, số phức, v.v.

Tham khảo: Tổng hợp

Bạn có đam mê với thiết kế mạch vi điều khiển hay lập trình nhúng – Bạn muốn nâng cao kỹ năng của mình

Mong muốn có thêm cơ hội trong công việc

Và trở thành một người có giá trị hơn

Hotline: 0972.800.931 – 0938.838.404 (Ông Long)

Exit mobile version