2.5.1. Khuôn dạng lệnh
MicroBlaze sử dụng hai dạng lệnh: Loại A và loại B
- Lệnh loại A: Lệnh loại A sử dụng kiểu lệnh thanh ghi- thanh ghi. Nó bao gồm mã toán, một thanh ghi đích và hai thanh ghi nguồn
- Lệnh loại B: Lệnh loại B sử dụng lệnh thanh ghi tức thì. Nó gồm mã toán, một thanh ghi đích và một thanh ghi nguồn, một giá trị nguồn tức thì 16 bit.
2.5.2. Các nhóm lệnh
- Các từ khóa, các lệnh tiền xử lý, các chức năng chuỗi, ký tự và bảng mã ASCII tuân theo ngôn ngữ C chuẩn
- Tần số hoạt động của Vi xử Lý + 180MHz với dòng Virtex 4 + 150MHz với dòng Virtex 2 + 100MHz với dòng Spartan 3
- Tập lệnh của MicroBlaze gồm các nhóm lệnh sau:
* Nhóm lệnh số học: Thực hiện các phép toán số học nhƣ cộng, trừ, nhân chia. Bao gồm các lệnh: add, addi, rsub, mul, mulh, mulhu, mulhsu, idiv… (1 chu kỳ hoặc 3 chu kỳ).
Ví dụ: Lệnh cộng số học add
add rD, rA, rB Số chu kỳ: 1
Hoạt động: (rD) ← (rA) + (rB)
* Nhóm lệnh logic: Thực hiện các pháp toán logic. Bao gồm các lệnh: and, andi, andn, andni, or, ori… (1 chu kỳ).
Ví dụ: Lệnh hoặc logic
Số chu kỳ: 1
Hoạt động: (rD) ←(rA) √ (rB)
* Nhóm lệnh với dấu chấm động nhƣ cộng, trừ, nhân, chia, so sánh, căn bậc hai dấu chấm động. Bao gồm các lệnh: fadd, frsub, fmul, fdiv…
* Nhóm lệnh dịch và so sánh: Thực hiện các phép dịch trái, dịch phải, so sánh, quay vòng…Bao gồm các lệnh bsrl, bsra, bsrly, cmp, src, sra…
* Nhóm lệnh rẽ nhánh: Thực hiện rẽ nhánh có điều kiện, rẽ nhánh không điều kiện, rẽ nhánh tức thời. Bao gồm các lệnh beq, beqi, beg, begi, bgt…
* Nhóm lệnh lƣu trữ: Gồm các lệnh lƣu từ, lƣu nửa từ , lƣu byte…nhƣ sh, shi, sbi, sb…
* Nhóm lệnh ghi bộ đệm lệnh, bộ đệm dữ liệu nhƣ wdc, wic.
* Nhóm lệnh điều khiển nhƣ các lệnh thực hiện tạm dừng, quay trở về từ ngắt, quay trở về từ tạm dừng, quay trở về từ thủ tục…. Ví dụ lệnh brk, brki, rtid, rtbd…
Chương 3 Triển khai hệ vi xử lý trên cơ sở lõi xử lý MicroBlaze
Để xây dựng một hệ vi xử lý trên cơ sở lõi vi xử lý MicroBlaze thì trƣớc tiên ta phải nghiên cứu một cách khái quát các bƣớc thực thi một hệ thống sau đó phải đƣa ra ý tƣởng xây dựng, sơ đồ khối, các thành phần của hệ vi xử lý. Trên cơ sở đó tiến hành các bƣớc triển khai hệ vi xử lý. Chƣơng này trình bày về quá trình thiết kế hệ vi xử lý trên cơ sở lõi xử lý MicroBlaze từ ý tƣởng xây dựng hệ vi xử lý đến các bƣớc dùng phần mềm EDK để kết nối các thành phần trong hệ và thực thi hệ trên kit FPGA Spartan-3E của hãng Xilinx.