2010-03-07 21 views
15

Tôi đang sử dụng trình mô phỏng GUI và cả hai đều có vẻ giống nhau.

Trả lời

2

link giải thích điều này ở một mức độ nào đó.

$stop - When Verilog encounters a $stop, it pauses as if you sent a Ctrl-C. 

$finish - Verilog exits as if you sent Ctrl-D when it encounters $finish. 

Lấy từ trang 15 của indtroduction PDF này.

cổ vũ

+0

Ctrl-D được coi là phần cuối của tệp, ví dụ: khi một chương trình đọc từ đầu vào tiêu chuẩn thay vì một tệp khi nhấn Ctrl-D, chương trình sẽ kết thúc đầu vào. Tiêu chuẩn Verilog không có một thói quen như C 'scanf' để đọc đầu vào tiêu chuẩn, vậy tại sao Ctrl-D sẽ có bất kỳ tác dụng trên một mô phỏng Verilog chạy? – Paddu

21

$finish thoát các mô phỏng và kiểm soát lại hệ điều hành.

$stop tạm dừng mô phỏng và đặt trình mô phỏng trong chế độ tương tác.

2

Một quick reference link:

$finish; 
    Finishes a simulation and exits the simulation process. 
$stop; 
    Halts a simulation and enters an interactive debug mode. 
6

Theo IEEE tiêu chuẩn cho Verilog (1364-2005 Mục 17.4, "hệ thống nhiệm vụ kiểm soát mô phỏng"), $stop nên đình chỉ việc mô phỏng, và $finish nên làm cho điều khiển thoát và điều khiển vượt qua trở lại hệ điều hành máy chủ. Tất nhiên, các trình mô phỏng khác nhau có thể thực hiện các đặc điểm kỹ thuật theo các cách khác nhau một cách tinh tế và không phải tất cả các trình mô phỏng đều tuân thủ 100% thông số kỹ thuật.

Tài liệu cho trình mô phỏng của bạn có thể cung cấp mô tả chi tiết hơn về hành vi của nó, đặc biệt là đối với GUI so với chế độ dòng lệnh.

1

$ stop: Kết thúc mô phỏng không mong muốn. Tất cả các hoạt động của hệ thống đều bị treo. $ finish: Được sử dụng để giảm trình biên dịch.

Tương tự tốt sẽ là kết thúc $ giống như tắt máy tính của bạn và $ stop giống như đột ngột kéo phích cắm của nó.

2

$ stop - Tạm dừng mô phỏng, vì vậy bạn có thể tiếp tục bằng cách sử dụng lệnh fg trong linux. Trong trường hợp này lincense sẽ không được phát hành và quá trình cũng không bị giết, tiêu thụ bộ nhớ.

$ kết thúc - Mô phỏng hoàn tất, vì vậy việc cấp phép và hủy quá trình sẽ được thực hiện.

1

Tôi đang sử dụng GUI Modelsim. Khi tôi có một tuyên bố $ stop trong mô phỏng, nó như thể tôi nhấn nút dừng ở trên cùng của GUI trong khi chạy mô phỏng. Tuy nhiên nếu tôi có một tuyên bố kết thúc $, GUI sẽ hiển thị một dấu nhắc thoát yêu cầu tôi nếu tôi muốn bỏ hoàn toàn modelsim.

Các vấn đề liên quan