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

ฉันควรใส่คําสั่งกําแพงหน่วยความจําก่อนออก DMASEV ไปยัง CPU หรือไม่

สิ่งแวดล้อม

  • Intel® Quartus® II Subscription Edition
  • DMA
  • BUILT IN - ARTICLE INTRO SECOND COMPONENT
    คำอธิบาย

    คําแนะนําจาก ARM และ Altera คือการใส่คําสั่งกําแพงหน่วยความจําก่อนออกคําสั่ง DMASEV ไปยัง CPU เพื่อหลีกเลี่ยงการส่งสัญญาณคอนโทรลเลอร์ DMA ที่ขัดจังหวะก่อนที่การถ่ายโอน AXI จะเสร็จสิ้น

    ความละเอียด

    ไดรเวอร์ HWlibs DMA alt_dma.c กําลังอัปเดตด้วยคําสั่งอุปสรรคหน่วยความจําที่เพิ่มเข้ามาก่อนคําสั่ง DMASEV ตามที่แสดงด้านล่าง


    ถ้า (send_evt)
    {
    if (สถานะ == ALT_E_SUCCESS)
    {
    สถานะ = alt_dma_program_DMAWMB(โปรแกรม);
    }
    if (สถานะ == ALT_E_SUCCESS)
    {
    dprintf("DMA[M->M]: การเพิ่มเหตุการณ์ ...\n")
    สถานะ = alt_dma_program_DMASEV(โปรแกรม, evt);
    }
    }

    เวอร์ชันที่อัปเดตของไดรเวอร์ HWlibs DMA มีกําหนดที่จะพร้อมใช้งานใน SoC EDS รุ่นถัดไป

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

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

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

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