ID บทความ: 000086173 ประเภทข้อมูล: การแก้ไขปัญหา การตรวจสอบครั้งล่าสุด: 15/03/2019

ทําไมโปรเซสเซอร์ Nios II® จึงไม่สามารถเขียนข้อมูลไปยังหน่วยความจําด้วยแคชข้อมูลได้

สิ่งแวดล้อม

  • Intel® Quartus® II Subscription Edition
  • โปรเซสเซอร์ Intel® Nios® II
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    คำอธิบาย

    เมื่อใช้คอร์ Nios II® Gen2 จะมีการเปิดตัวภูมิภาคอุปกรณ์ต่อพ่วง ซึ่งมีตัวเลือกแอดเดรส 32 บิต ด้วย Nios II® Gen2 สําหรับการเขียนที่ไม่มีการเปลี่ยนแปลง โดยที่บิต 31 ถูกตั้งค่าหรือในบริเวณหน่วยความจําต่อพ่วง แคชจะถูกข้าม

    ไม่สามารถจัดสรรข้อมูลที่ไม่ได้แคชและข้อมูลที่แคชได้อีกต่อไปในแถวเดียวกันในแคชข้อมูล เนื่องจากNios II® คอร์ Gen2 ไม่อัปเดตแคชในกลุ่มที่ไม่ได้แคช นี่คือพฤติกรรมของ Nios II® Classic อย่างไรก็ตาม NIOS II® gen2 จะไม่อัปเดตแคชสําหรับการเขียนที่ไม่ได้แคชอีกต่อไป

    ความละเอียด

    หากคุณมีรหัสNios II® อยู่และใช้ Nios II/f® Gen2 ที่มีแคชข้อมูล คุณต้องตรวจสอบซอฟต์แวร์ของคุณเพื่อให้แน่ใจว่าไม่ได้ผสมข้อมูลที่สามารถแคชได้และไม่สามารถแคชได้บนแคชบรรทัดเดียวกัน

    เมื่อคุณเขียนข้อมูลเสร็จเรียบร้อยแล้ว คุณควรล้างแคชโดยใช้ฟังก์ชัน alt_dcache_flush (void* start, alt_u32 len) ฟังก์ชันนี้จะล้างแคชข้อมูลสําหรับพื้นที่หน่วยความจําที่มีความยาว len ไบต์ เริ่มต้นที่แอดเดรสเริ่มต้น การล้างแคชประกอบด้วยการเขียนข้อมูลที่ปราดเปื้อนแล้วทําให้แคชไม่ถูกต้อง

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

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

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

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