Hướng dẫnsửdụngQuartusIIđểthiếtkếmạch Vì hôm trước katsu có thấy bài hỏi của 1 thành viên trong diễn đàn về cách sửdụngQuartusII lại tiện lúc katsu đang học lớp Thiếtkếmạchsửdụng Icarus Verilog và Quartus nên katsu viết bài hướngdẫn này. Nếu có gì sai sót thì các bạn chỉ cho. Nội dung của bài viết này chỉ đơn giản giới thiệu về các bước tiến hành lần lượt nhằm tạo 1 mạch điện tử với Quartus sau khi các bạn đã thiếtkế được mạch với ngôn ngữ Verilog và hoàn thành kiểm tra phần code rồi. Thiết bị chính dùngđể kiểm tra được sửdụng là DE01 Board. < ="-" ="text/; =utf-8">< name="ProgId" ="Word.">< name="Generator" ="Microsoft Word 12">< name="Originator" ="Microsoft Word 12"> Các bước tiến hành: 1. Mở QuartusII bằng cách click đôi vào biểu tượng của Quartus trên màn hình Desktop. 2. Sau khi chạy các file hệ thống, QuartusII sẽ mở ra màn hình khởi động của mình Chọn Create a New Project để tạo một Project mới hoặc chọn Open Existing Project để chọn mở Project mà bạn đã thực hiện. Quartus cũng hiển thị ch bạn một số Project mà bạn thực hiện trong thời gian gần đây ở phần Open Recent Project (thứ tự của các Project được sắp xếp theo lần cuối cùng bạn mở Project). 3. Nếu bạn chọn Create a New Project. Cửa sổ New Project Wizard sẽ hiện ra, bạn chọn Next. 4. Ở cửa sổ tiếp theo, bạn chỉ đường dẫn tới folder cho Project mới của bạn. Thường thì katsu sẽ tạo một folder mới trong máy, lấy tên tùy theo mạch muốn thiết kế. Sau đó có một bước quan trọng là copy file code Verilog(đã biên soạn bằng Notepad++ hoặc bất kỳ một trình editor nào có hỗ trợ ngôn ngữ Verilog) vào trong folder này. Trong 2 ô tiếp theo, Quartus yêu cầu bạn đánh vào tên của Project mới, chú ý lấy tên của project trùng với tên của module mà bạn đã biên soạn trong Verilog. Ví dụ katsu sửdụng code của bài thiếtkế cho Led 7 đoạn để hiển thị các số từ 0-9 sau: /*********************************************************** * Author: Hoang Minh Vu Class: 06ECE * Module: led7seg * Description: ***********************************************************/ module led7seg ( SW, Led_Out); input [3:0] SW; output [0:6] Led_Out; //reg [6:0] Led_Out; // the function of output assign Led_Out[0] = (!SW[3])&&(!SW[2])&& (!SW[1]) && (SW[0]) || (!SW[3])&& SW[2]&&(!SW[1])&&(! SW[0]); assign Led_Out[1] = (!SW[3])&& SW[2] && (!SW[1]) && SW[0] || (!SW[3]) && SW[2] && SW[1] && (! SW[0]); assign Led_Out[2] =(!SW[3]) && (!SW[2]) && SW[1] && (!SW[0]); assign Led_Out[3] =(!SW[3])&&(!SW[2])&& (!SW[1]) && (SW[0]) || (!SW[3])&& SW[2]&&(!SW[1])&&(! SW[0]) || (!SW[3])&& SW[2] && SW[1] && SW[0]; endmodule module led7seg_tb; parameter DELAY = 10; // constant value Vì tên của module thực thi là led7seg nên trong 2 ô dưới của cửa sổ Project Wizard, katsu cũng sẽ đánh vào là led7seg. 5. Sau khi nhấn Next, Quartus sẽ đòi bạn thêm file code cho Project. Bạn chọn đường dẫn tới file code Verilog nằm trong folder project mà bạn mới tạo ở trên. Sau đó nhấn Add. Ở ô ngay dưới đó, bạn sẽ thấy file code của bạn (giống như trong hình là file led7seg.v, loại file là Verilog HDL file). 6. Bước 6 là chọn loại thiết bị mà bạn muốn sửdụngđể test. Trong ví dụ này, katsu sẽ sửdụng bộ DE1 Board, là bảng mạchdùngđể thí nghiệm tại phòng lab của Chương trình tiên tiến ECE. Các thông số được chọn như trong hình vẽ. Lưu ý à các thông số này được chọn tùy thuộc vào loại thiết bị mà bạn dùngđể thí nghiệm, trước khi thực hiện bước này cần xem và kiểm tra kĩ các thông số trước khi bạn nhấn Finish. 7. Sau khi nhấn Finish, bạn đã hoàn thành thiết lập những thông số đầu tiên cho Project của mình. Sau khi Quartus mở các file cần thiết, tại cửa sổ Project Navigator, các bạn chọn tab Files, và mở file code (file .v) ra bằng cách click đôi vào file đó. 8. Trong cửa sổ mới hiện ra có chứa toàn bộ phần code của bạn, xóa toàn bộ phần code dành cho các module Tester hoặc module Testbench(những module này không phải là phần code của mạch mà bạn viết, chúng chỉ được dùngđểthiết lập một số trạng thái và điều kiện để kiểm tra sự hoạt động của mạch. Khi kiểm tra bằng thiết bị thực sự, bạn không cần tới các module này nữa). Sau đó, bạn nhấn nút Start Compilation đểQuartus bắt đầu biên dịch phần code của bạn. 9. Trong quá trình biên dịch, nếu phát hiện lỗi, Quartus sẽ báo quá trình biên dịch không thành công cùng số lỗi. Những dòng chữ màu đỏ ở tab Processing bên dưới sẽ thể hiện cho các bạn những lỗi mà bạn mắc phải. Click đôi vào các dòng đỏ đó sẽ dẫn bạn tới vị trí trong phần code mà bạn có lỗi. Sau khi hoàn tất sửa lỗi (debugging), Quartus sẽ báo biên dịch thành công. (Trong thực tế, Quartus sẽ báo có bao nhiêu warning (cảnh báo) trong chương trình của bạn. Nhưng tạm thời bạn chưa cần chú ý tới các cảnh báo này) 10. Sau khi hoàn tất biên dịch, bạn có thể xem được sơ đồ mạch mà bạn đã thiếtkế bằng cách chọn Tools/Netlist Viewers/RTL Viewer. Bạn có thể kiểm tra xem các cổng trong mạch bạn thiếtkế có hiển thị ra trong Quartusđúng theo bạn mong muốn hay không. Ảnh đã được thu nhỏ .Click vào thanh này để thấy ảnh size nguyên gốc. (648 x 393) 11. Tới đây, chương trình của bạn đã được sẵn sàng để thực hiện tải thiếtkếmạch xuống và kiểm tra bằng thiết bị thực sự. Chọn Assignments/Assignment Editor. Trong mục Category, bạn chọn PIN. Trong mục Edit, bạn dựa trên các chỉ dẫn thông số của thiết bị để nhập số PIN vào tùy thuộc vào tín hiệu đầu ra hay đầu vào và tùy thuộc vào bạn muốn tín hiệu ra được hiển thị bằng gì. Với ví dụ về đoạn mã cho Led 7 đoạn, input của katsu sẽ được gán với 4 chân PIN của 4 công tắc (toggle switch), output sẽ được gán với chân PIN của 1 đèn Led 7 đoạn. Ảnh đã được thu nhỏ .Click vào thanh này để thấy ảnh size nguyên gốc. (628 x 318) 12. Sau khi hoàn tất gán chân PIN, bạn nhấn Start Compilation một lần nữa đểQuartus lấy các thông số chân PIN. Sau đó nhấn chọn Programer. Trong cửa sổ Programmer mới xuất hiện, nhấn Start để bắt đầu tải chương trình xuống thiết bị. Ảnh đã được thu nhỏ .Click vào thanh này để thấy ảnh size nguyên gốc. (655 x 408) Sau khi tải chương trình xuống, bạn có thể bắt đầu kiểm tra mạch bạn thiếtkế ngay trên thiết bị bằng cách gạt các công tắc, nhấn các nút(tùy vào bạn chọn) Hy vọng bài viết trên giúp được các bạn trong việc bắt đầu làm quen và sửdụngQuartus trong thiếtkế mạch. Vì chưa có điều kiện sử dụngthiết bị khác đểsửdụng với Quartus nên bài viết này chỉ hạn chế ở mức sửdụng DE1 Board để kiểm tra. Trong thời gian tới nếu có điều kiện, katsu sẽ update bài hướngdẫn này với các thiết bị khác. Thnx all. . Hướng dẫn sử dụng Quartus II để thiết kế mạch Vì hôm trước katsu có thấy bài hỏi của 1 thành viên trong diễn đàn về cách sử dụng Quartus II lại tiện lúc katsu đang học lớp Thiết kế mạch sử. sử dụng Quartus trong thiết kế mạch. Vì chưa có điều kiện sử dụng thiết bị khác để sử dụng với Quartus nên bài viết này chỉ hạn chế ở mức sử dụng DE1 Board để kiểm tra. Trong thời gian tới. lượt nhằm tạo 1 mạch điện tử với Quartus sau khi các bạn đã thiết kế được mạch với ngôn ngữ Verilog và hoàn thành kiểm tra phần code rồi. Thiết bị chính dùng để kiểm tra được sử dụng là DE01 Board. <