Giới thiệu
Bài này sẽ hướng dẫn bạn tạo một dự án. Tối thiểu, các dự án có một thư viện và một trạng thái phiên được lưu trong một file.mpf. Một dự án cũng có thể bao gồm:
- Các file nguồn HDL hay các tham chiếu tới các file nguồn;
- Các file khác như README hay các tài liệu dự án khác;
- Các thư viện cục bộ;
- Các tham chiếu đến thư viện toàn cục (global libraries).
Bài này dùng các file Verilog tcounter.v và counter.v trong các ví dụ. Nếu bạn có phiên bản VHDL, có thể dùng tcounter.vhd và counter.vhd.
Đọc thêm
ModelSim User’s Manual, Chapter 2 - Projects (UM-27) Tạo một dự án
Hình 4.15: Hộp thoại tạo một dự án
1. Nếu bạn vừa xong bài trước, ModelSim đã được chạy. Không thì bạn chạy lại ModelSim.
a. Gõ vsim vào dấu nhắc lệnh của UNIX hoặc kích vào biểu tượng ModelSim của Windows.
2. Tạo một dự án.
a. Chọn Create a Project từ hộp thoại Welcome hoặc File > New > Project (Main window) của trình đơn Menu.
Một hộp thoại mở ra và bạn đặt tên, vị trí cho dự án.
b. Gõ test trong trường Project Name.
c. Kích Browse để chọn chỗ lưu dự án.
d. Tới trường Default Library Name đặt là work.
e. Kích OK.
Nếu thấy hộp thoại Select Initial Ini, hỏi bạn muốn tạo dự án từ file modelsim.ini nào, chọn nút Use Default Ini.
Đặt các chủ thể vào dự án
Khi kích OK để chấp nhận các khởi tạo của dự án mới, bạn sẽ thấy một thanh tab Project ở cửa sổ làm việc trong cửa sổ Main và hộp thoại in the Add items to the Project xuất hiện. Từ hộp thoại này bạn có thể tạo một file thiết kế mới, đặt một file có sẵn, đặt vào một thư mục cho các mục đích tổ chức, hoặc để tạo một cấu hình mô phỏng.
1. Đặt vào 2 file có sẵn.
a. Kích vào Add Existing File.
Hộp thoại Add file to Project mở ra (Hình 4.16). Hộp thoại này cho bạn quét và tìm file, hiệu chỉnh kiểu file, hiệu chỉnh thư mục mà file sẽ được lưu, và nhận dạng xem nên để file ở vị trí cũ hay copy vào thư mục của dự án.
b. Kích Browse.
c. Mở thư mục examples trong cây thư mục cài đặt ModelSim.
d. Verilog: Chọn counter.v, Giữ phím <Ctrl>, và chọn tiếp tcounter.v.
VHDL: Chọn counter.vhd, Giữ phím <Ctrl>, và chọn tiếp tcounter.dhd.
e. Kích Open và OK
f. Kích Close để bỏ các mục Add vào hộp thoại Project.
Hình 4.16: Hộp thoại thêm các file vào dự án
Hình 4.17: Thêm các file vào dự án
Bạn thấy 2 file liệt kê ở thanh tab Project của cửa sổ Workspace
Hình 4.18: Các file mới được đặt hiển thị một kí hiệu’?’ cho ô cửa sổ trạng thái Biểu tượng dấu (?) ở cột Status nghĩa là file đó chưa được biên dịch hoặc file nguồn đã thay đổi sau lần biên dịch thành công cuối cùng. Các cột khác nhận dạng kiểu file (ví dụ: Verilog hay VHDL), trình tự dịch, và hiệu chỉnh ngày.
Thay đổi trình tự dịch (VHDL)
Trình tự dịch trong các thiết kế VHDL rất quan trọng. Theo các bước sau để thay đổi trình tự dịch trong một thiết kế.
1. Thay đổi trình tự dịch.
a. Chọn Compile > Compile Order. Hộp thoại Compile Order mở ra.
b. Kích nút Auto Generate. ModelSim xác định trình tự dịch bằng cách tạo ra nhiều multiple passes trên các file. Nó bắt đầu dịch từ trên xuống, nếu một file dịch không thành công do dependencies, nó sẽ chuyển xuống cuối cùng và sau đó sẽ dịch lại sau khi dịch các file còn lại.
Quá trình lặp lại cho đến khi các file được dịch thành công hoặc có file nào đó không thể dịch được vì lý do khác với dependency.
Bạn có thể chọn file và di chuyển lên xuống tới vị trí đúng bằng phím Move
Up và Move Down.
c. Kích OK để đóng lại hộp thoại Compile Order.
Dịch và tải một thiết kế mới.
1. Biên dịch các file.
a. Kích phải ở đâu đó trên thanh Tab Project và chọn Compile > Compile >
All ở pop-up menu.
ModelSim biên dịch và thay đổi biểu tượng trên cột Status tới một checkmark. Một check mark nghĩa là dịch đã thành công, còn không thì checkmark sẽ thành dấu ’X’ đỏ, bạn sẽ thấy thông báo lỗi trên ô cửa sổ Transcrip.
2. Xem các đơn vị thiết kế. Kích thanh tab Library ở cửa sổ làm việc.
b. Kích biểu tượng "+" cạnh thư viện work. Bạn sẽ thấy 2 đơn vị thiết kế đã được dịch, kiểu của chúng (ở đây là modules), và đường dẫn tới các file nguồn được gạch dưới.
3. Tải đơn vị thiết kế test_counter.
a. Kích đúp lên đơn vị thiết kế test_counter.
Bạn sẽ thấy một thanh tab tên sim mà hiển thị cấu trúc của đơn vị thiết kế test_counter. Một thanh tab thứ tư tên Files chứa các thông tin về các file nguồn.
Tại điểm này, bạn chạy mô phỏng và gỡ rối phân tích giống như đã làm ở các bài trước. Bây giờ, tiếp tục với dự án. Tuy nhiên, đầu tiên bạn cần kết thúc trình mô phỏng mà đã khởi động lúc tải test_counter
4. Kết thúc trình mô phỏng.
a. Chọn Simulate > End Simulation.
b. Chọn Yes.
Hình 4.20: Quan sát các module thành phần trong các file
Nếu bạn có nhiều file cần phải đặt vào dự án, bạn có thể phải tổ chức chúng trong các thư mục. Bạn có thể tạo các thư mục trước hoặc sau khi đặt các file đó vào. Nếu tạo các thư mục trước khi đặt các file, bạn có thể hiệu chỉnh hay đặt các file vào các thư mục đã tạo. Còn nếu tạo các thư mục sau khi đặt các file, bạn phải vào file properties để hiệu chỉnh hay đặt lại.
Đặt các thư mục vào
Các mục được đặt vào hộp thoại có một tuỳ chọn cho các thư mục được đặt vào. Nếu đã đóng hộp thoại, bạn có thể dùng lệnh từ trình đơn để đặt thư mục vào dự án.
1. Đặt thư mục mới.
a. Chọn File > Add to Project > Folder.
b. Gõ Design Files vào trường Folder Name (Hình 4.21).
c. Kích OK.
Bạn sẽ nhìn thấy thư mục ở thanh tab Project (Hình 4.22).
2. Đặt thư mục con mới.
a. kích phải chuột ở bất kỳ ở thanh Project và chọn Add to Project >Folder.
b. Gõ HDL vào trường Folder Name (Hình 4.23).
c. Kích mũi tên sổ xuống tại Folder Location và chọn Design Files.
d. Kích OK.
Hình 4.21: Thêm thư mục mới
Hình 4.22: Thư mục mới xuất hiện trong vùng làm việc
Hình 4.23: Đạt tên thư mục
Hình 4.24: Tên thư mục đã được thêm mới
d. Bạn sẽ thấy biểu tượng ’+’ cạnh thư mục Design Files trong thanh tab Project. Kích biểu tượng ’+’ để xem thư mục con HDL
Di chuyển các file tới các thư mục
Bạn có các thư mục, bạn có thể di chuyển các file giữa chúng. Nếu như bạn đang chạy trên nền Windows, kéo và thả file theo ý bạn. Nếu như bạn đang chạy trên nền Unix, bạn có thể dùng hộp thoại properties hay di chuyển ngay khi đặt các file vào.
Chuyển tcounter.v và counter.v vào thư mục HDL.
a. Chọn counter.v, giữ phím <Ctrl>, và sau đó là file tcounter.v.
b. Kích phải và chọn Properties. Hộp thoại Project Compiler Settings mở ra (Hình 4.25), cho phép bạn đặt một số tuỳ chọn cho các file thiết kế
c. Kích mũi tên sổ xuống Place In Folder và chọn HDL.
d. Kích OK.
Hai file đã được chuyển tới thư mục HDL. Kích biểu tượnh ’+’ trên các thư mục và xem các file.
Những file giờ được đánh dấu ’?’ vì bạn đã di chuyển chúng. Nếu chưa dịch lại dự án thì các file này không được dự án nhận biết.
Hình 4.25: Hộp thoại Simulation Configuration Các cấu hình mô phỏng
Một cấu hình mô phỏng kèm theo một thiết kế và các tuỳ chọn của nó. Ví dụ, mỗi khi bạn tải tcounter.v bạn muốn đặt độ phân dải tới pico giây (ps) và cho phép kiểm tra lỗi. Về cơ bản bạn phải hiệu chỉnh những tuỳ chọn mỗi khi tải thiết kế. Với mỗi cấu hình mô phỏng, bạn hiệu chỉnh các tuỳ chọn và lưu một "configuration"
mà kèm theo với thiết kế và các tuỳ chọn của nó.
Cấu hình được liệt kê ở thanh tab Project bạn có thể kích đúp để tải counter.v cùng với các tuỳ chọn của nó.
1. Tạo một cấu hình mô phỏng mới.
a. Chọn File > Add to Project > Simulation Configuration. Hộp thoại Simulate (Hình 4.26). Các thanh tab trong hộp thoại này liệt kê một danh sách các tuỳ chọn mô phỏng. Bạn có thể xem kỹ những thanh này. Bạn cũng có thể xem ModelSim User’s Manual để có mô tả cụ thể cho những tuỳ chọn này.
b. Gõ counter vào trường Simulation Configuration Name.
c. Chọn HDL từ Place trong Folder trình đơn drop-down Folder.
d. Kích biểu tượng ’+’ cạnh thư viện work và chọn test_counter.
e. Kích trình đơn drop-down Resolution và chọn ps.
f. Với Verilog, Kích thanh Verilog và kích vào Enable HazardChecking.
g. Kích OK. Thanh tab Project giờ biểu diễn một cấu hình mô phỏng tên là counter (Hình 4.27).
2. Nạp cấu hình mô phỏng.
a. Kích đúp counter Simulation Configuration ở thanh tab Project. Tại ô cửa Transcript của Main windows, đánh lệnh khởi động vsim với các tham số dẫn hướng biên dịch -hazards và -t ps switches (Hình 4.28).
Hình 4.26: Tạo cấu hình mô phỏng mới
Hình 4.27: Biểu diễn tuỳ chọn cho Simulation Configuration Kết thúc
Kết thúc bài ở đây. Trước khi tiếp tục, bạn cần dừng trình mô phỏng và đóng
dự án đang mở.
1. Chọn Simulate > End Simulation. Kích Yes.
2. Chọn thanh Project ở Main window Workspace.
3. Kích phải dự án test để mở trình đơn pop-up nội dung và chọn Close Project.
Nếu không đóng dự án, dự án sẽ tự động mở ra ở lần khởi động ModelSim tiếp theo.
Hình 4.28: Các dẫn hướng biên dịch dòng lệnh