
Microblaze Tutorial
Hệ thống nhúng là gì, nó như thế nào, hiện nay người ta thường
nói từ "embedded" tức là nhúng. Từ trước đến giờ mình biết bao
nhiêu là nhúng, bò nhúng giấm nè, bánh tráng nhúng nước Trảng
Bàng nè... còn hệ thống nhúng như thế nào?
Những sản phẩm làm ra từ hệ thống nhúng rất quen thuộc trong
cuộc sống hằng ngày, ví dụ như cái tủ lạnh, máy giặt, máy điều
hòa nhiệt độ đến cả những chiếc điện thoại di động mà mấy em gái
thường vòi vĩnh bố mẹ mua cho bằng được, để mỗi lần chuông điện
thoại reng te te như dzế kêu. Những tín năng đó được hiểu đại
khái như là kết quả xử lý Midi tạo ra âm thanh từ hệ thống
nhúng, và là trái tim của chiếc điện thoại.
kamejoko đã nghe nói nhiều về embedded nhưng cũng có lúc mơ hồ
và lùng bùng cái lỗ tai. Trong hệ thống nhúng lại chia ra nhiều
mảng khác nhau, tùy theo từng ứng dụng cụ thể. Mình muốn ôm tất
cả, học luôn nguyên một thể "Tôi muốn ôm cả đất, tôi muốn ôm cả
trời, mà sao em ơi, tôi không ôm nổi một con người" hehhe. Thế
là mỗi tối kamejoko lại lang thang trên mạng, tìm kiếm lùng sục
trên trang google để có thêm nhiều kiến thức.
Embedded devices chắc có lẽ được chia ra thành 3 mảng chính, đó
là ARM, DSP, FPGA. Cái mà kamejoko muốn đề cập ở đây chính là bộ
vi xử lý processor, là trái tim của hệ thống nhúng. Kamejoko đã
từng thử qua hệ thống ARM của Phillips, nhưng cũng chỉ dừng lại
ở phần firmware mà thôi.
Sau nhiều lần đắn đo, để tự học embedded thì cần phải trang bị
cho mình những device nào? những kit ARM có sẳn giá tương đối
khá cao, nhưng học embedded chỉ chuyên sâu vào firmware thì chưa
đủ. Cơ duyên đưa mình đến với FPGA, để có được một kit FPGA thì
cũng không khó, vì sản phẩm của Xilinx có nhiều mức giá khác
nhau, cũng như có nhiều tiền thì ta có thể chọn được món ăn
ngon, còn không thì chọn những nón ăn tàm tạm, nhưng vẫn đảm bảo
mình no bụng. Và khi tìm hiểu kamejoko nhận ra một điều: Xillinx
có nguồn resource rất lớn. Ý mình nói đến đó là các application
notes, và các tool design của Xilinx luôn được update nhanh đến
mức chóng mặt.Và kamejoko nghĩ rằng sự lựa chọn FPGA để học
embbeded là đúng, vì khi đi sâu vào thiết kế đòi hỏi designer
phải am hiểu cả hardware lẫn software. Ôi, lùng bùng lỗ tai quá
rồi phải không!!!
Microblaze là cái gì??? Nó là một processor, là tên một loại vi
xử lý giống như VXL Intel vậy. Nhưng có điều, khi cần một con
VXL Intel, anh có thể ra cửa hàng máy tính, bỏ ra vài chục đến

vài trăm USD là có thể mang nó về. Đối với Microblaze, anh không
thể ra cửa hàng mua nó mang về được, mà phải dùng tool của
xilinx design thành một hệ thống Microbalze hoàn chỉnh.
Chi tiết hơn, con chip FPGA của hãng Xilinx sản suất là một khối
"rỗng". Nó là mạng của các cổng logic chưa được kết nối với
nhau. Công việc của designer là dùng tool của Xilinx kết nối các
cổng lại thành mạch điện cụ thể và nó phải chạy theo ý đồ của
người thiết kế đặt ra.
Cao hơn, một khi có Microblaze là trái tim của hệ thống, cần
phải có những thiết bị ngoại vi (IO) đi theo. Cũng như những
thiết bị ngọai vi chuột, bàn phím... Xilinx cung cấp cho
designer một danh sách các ngoại vi được gọi là IP core
cataloge. Designer chỉ việc chọn từng món mà mình thích, mà nhắc
đến chọn món thì phải tính đến trả tiền. Tức là trong danh sách
IP core đó có loại được khuyến mãi miễn phí (món tráng miệng),
và có món phải trả tiền. Thú vị phải không, công việc design của
một anh kỹ sư cũng giống công việc đi chợ hằng ngày của các chị
em phụ nữ, cũng phải đắn đo xem xét xem giá thành của hệ thống
giảm được bao nhiêu trong khi vẫn đảm bảo tính năng mà yêu cầu
đặt ra.
Còn nếu anh nghèo nhưng có ý tưởng thì có thể tự mình tạo ra IP,
không chọn thứ nào trong IP cataloge cả. Cái mà kamejoko sắp
trình bày dưới đây. Có người bảo mình tại sao không dám bỏ tiền
ra mua những thức ăn ngon mà lại đầu tư vào nhửng thứ vô bổ như
vầy, mình chỉ có thể trả lời mình rất "máu" về lĩnh vực này,
ngòai ra không có gì cả. Và kamejoko muốn chia sẻ cho những
người cũng có "máu" như mình.
----------------------------------------------------------------
----
Sau đây là các bước thực hiện LCD demo cho microblaze.
Tool : EDK 8.2
Demo trên board ML403, tuy nhiên vẫn có thể thay đổi chút ít cho
board Spartan3E Starter
Hướng dẫn step by step, hình hơi nhiều, thông cảm nhá.
Chú ý: Vài bước được thông qua ( để mặc định và ấn nút next)
thay vì post hình đầy đủ.
----------------------------------------------------------------
------
PHAN 1 : Setup hardware
----------------------------------------------------------------
------
1> Start XPS 8.2i

2> Tạo thư mục chứa project
3> Creat new base system

4> Select Board (chú ý: một số board có nhiều revision khác
nhau, nên chọn revison thích hợp)
5> Chọn món ăn tùy vào túi tiền

6> Creat Custom hardware (lcd port)

