ID บทความ: 000078358 ประเภทข้อมูล: ข้อความแสดงข้อผิดพลาด การตรวจสอบครั้งล่าสุด: 13/04/2007

ข้อผิดพลาด (10170): ข้อผิดพลาดในการแก้ปัญหา Verilog HDL ที่ <design>.v ใกล้ข้อความ "localparam"; คาดหวังว่า "end" หรือตัวระบุ ("localparam" เป็นคําสําคัญที่สงวนไว้ ) หรือคําสั่งตามลําดับ</design>

สิ่งแวดล้อม

BUILT IN - ARTICLE INTRO SECOND COMPONENT
คำอธิบาย

ข้อผิดพลาดนี้เกิดขึ้นเฉพาะในซอฟต์แวร์ Quartus® II เวอร์ชั่น 6.0 (รวมถึง 6.0 SP1) หากการออกแบบใช้คําประกาศท้องถิ่นภายในสร้างคําสั่งดังตัวอย่างด้านล่างเนื่องจากซอฟต์แวร์บังคับใช้กฎภาษา Verilog บางข้ออย่างเคร่งครัดกว่าเวอร์ชันอื่นๆ ทั้งหมด

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

คู่มืออ้างอิงภาษา Verilog (LRM) จะระบุกฎต่อไปนี้:

การประกาศโมดูลและรายการโมดูลที่ไม่ได้รับอนุญาตในคําสั่งสร้าง ประกอบด้วย: พารามิเตอร์, พารามิเตอร์ในเครื่อง, การประกาศอินพุต, การรายงานเอาต์พุต, การประกาศขาเข้า และระบุบล็อก 1364-2001 LRM 12.1.3

เพื่อหลีกเลี่ยงข้อผิดพลาดและใช้งานฟังก์ชันเดียวกัน ให้ใส่คําสั่งพารามิเตอร์ภายในบล็อกเสมอดังตัวอย่างด้านล่าง:

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

ผลิตภัณฑ์ที่เกี่ยวข้อง

บทความนี้จะนำไปใช้กับ 1 ผลิตภัณฑ์

อุปกรณ์ที่ตั้งโปรแกรมได้ Intel®

เนื้อหาในหน้านี้เป็นการผสมผสานระหว่างการแปลเนื้อหาต้นฉบับภาษาอังกฤษโดยมนุษย์และคอมพิวเตอร์ เนื้อหานี้จัดทำขึ้นเพื่อความสะดวกของคุณและเพื่อเป็นข้อมูลทั่วไปเท่านั้นและไม่ควรอ้างอิงว่าสมบูรณ์หรือถูกต้อง หากมีความขัดแย้งใด ๆ ระหว่างเวอร์ชันภาษาอังกฤษของหน้านี้กับคำแปล เวอร์ชันภาษาอังกฤษจะมีผลเหนือกว่าและควบคุม ดูเวอร์ชันภาษาอังกฤษของหน้านี้