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

ข้อผิดพลาดภายใน: ระบบย่อย: VRFX, ไฟล์: /quartus/synth/vrfx/verific/vhdl/vhdlvalue_elab.cpp, บรรทัด: 6821

สิ่งแวดล้อม

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

เนื่องจากปัญหาในซอฟต์แวร์ Quartus® II คุณอาจเห็นข้อผิดพลาดภายในนี้หากรหัส VHDL ของคุณอนุมานหน่วยความจําสองพอร์ตผสมความกว้างสองสัญญาณนาฬิกากับกระบวนการสําหรับพอร์ตที่กว้างขึ้นก่อนกระบวนการสําหรับพอร์ตที่แคบลง

ตัวอย่างเช่น:

portA_p : PROCESS (clk)
BEGIN
IF (rising_edge(clk)) THEN
 IF we_a = '1' THEN
  -- Write access
  ram(addr_a / 2)(addr_a mod 2) := data_a;
  -- Read during write on the same port returns NEW data
  q_a <= data_a;
 ELSE
  -- Read returns OLD data
  q_a <= ram(addr_a / 2)(addr_a mod 2);
 END IF;
END IF;
END PROCESS portA_p;

portB_p : PROCESS (clk)
BEGIN
IF (rising_edge(clk)) THEN
 IF we_b = '1' THEN
  ram(addr_b) := data_b;
  -- Read during write on the same port returns NEW data
  q_b <= data_b;
 ELSE
  -- Read returns OLD data
  q_b <= ram(addr_b);
 END IF;
END IF;
END PROCESS portB_p;
ความละเอียด

เพื่อแก้ไขปัญหานี้ ให้ย้อนกลับลําดับของกระบวนการเพื่อให้กระบวนการสําหรับพอร์ตที่กว้างขึ้นปรากฏขึ้นก่อน

ปัญหานี้มีกําหนดเวลาให้แก้ไขในซอฟต์แวร์ Quartus II ในอนาคต

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

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

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

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