ID bài viết: 000078358 Loại nội dung: Thông báo lỗi Lần duyệt cuối: 13/04/2007

Lỗi (10170): Lỗi cú pháp VERilog HDL tại <design>.v gần văn bản "localparam"; mong đợi "kết thúc" hoặc mã định danh ("localparam" là từ khóa dành riêng ) hoặc báo cáo tuần tự</design>

Môi Trường

BUILT IN - ARTICLE INTRO SECOND COMPONENT
Mô tả

Lỗi này chỉ xảy ra trong phần mềm Quartus® II phiên bản 6.0 (bao gồm cả 6.0 SP1), nếu thiết kế sử dụng các tuyên bố localparam bên trong các báo cáo tạo, như trong ví dụ dưới đây, vì phần mềm thực thi một số quy tắc ngôn ngữ Verilog nghiêm ngặt hơn so với tất cả các phiên bản khác.

generate
    for (i = 0; i < WIDTH; i = i 8)
  begin : my_loop
  localparam j = i 7 > WIDTH-1 ? WIDTH-1 : i 7;
  localparam k = BASE (i>>3); ...
endgenerate

Hướng dẫn tham khảo ngôn ngữ Verilog (LRM) nêu quy tắc sau:

Khai báo mô-đun và các mục mô-đun không được phép trong báo cáo tạo bao gồm: tham số, tham số cục bộ, khai báo đầu vào, khai báo đầu ra, khai báo không thanh toán và xác định các khối. 1364-2001 LRM 12.1.3

Để tránh xảy ra lỗi và thực hiện các chức năng tương tự, hãy đặt các tuyên bố tham số cục bộ vào trong một khối luôn như trong ví dụ dưới đây:

generate

   for (i = 0; i < WIDTH; i = i 8)

   begin : my_loop

      always @(posedge clk or posedge reset)

         begin : my_params

            localparam j = i 7 > WIDTH-1 ? WIDTH-1 : i 7;

            localparam k = BASE   i>>3);

            ...

endgenerate

Các sản phẩm liên quan

Bài viết này áp dụng cho 1 sản phẩm

Thiết bị có thể lập trình Intel®

Nội dung gốc bằng tiếng Anh trên trang này vừa do con người vừa do máy dịch. Nội dung này chỉ để cung cấp thông tin chung và giúp quý vị thuận tiện. Quý vị không nên tin đây là thông tin hoàn chỉnh hoặc chính xác. Nếu có bất kỳ mâu thuẫn nào giữa bản tiếng Anh và bản dịch của trang này, thì bản tiếng Anh sẽ chi phối và kiểm soát. Xem phiên bản tiếng Anh của trang này.