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

ทําไมฉันถึงเห็นความล่าช้าที่ไม่คาดคิดใน Linux ด้วยการออกแบบโดยใช้อุปกรณ์ SoC FPGAs และ eASIC™ ที่ใช้ SDM

สิ่งแวดล้อม

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

    การคํานวณที่ทําภายในรหัสเฟิร์มแวร์ที่เชื่อถือได้ของ Arm จะอิงตามค่าคงที่ที่คาดการณ์ไว้ที่ 400 MHz สําหรับ cs_at_clk อย่างไรก็ตาม นักออกแบบสามารถกําหนดค่าโดเมน cs_at_clk ให้รับต้นทางจากความถี่นาฬิกาอื่นที่ไม่ใช่ 400 MHz หากดําเนินการดังกล่าวแล้ว คุณอาจเห็นความล่าช้าที่ไม่คาดคิดใน Linux ปัญหานี้ส่งผลกระทบต่อการออกแบบที่ cs_at_clk ได้รับการกําหนดค่าให้เป็นอย่างอื่นนอกเหนือจาก 400 Mhz

    ตระกูลอุปกรณ์ต่อไปนี้ได้รับผลกระทบ :

    • Stratix® 10 SoC FPGAs
    • FPGAs SoC Agilex™ 7
    • FPGAs SoC Agilex™ 5
    • อุปกรณ์ eASIC™ N5X

    ความละเอียด

    หากต้องการขจัดความล่าช้าที่ไม่คาดคิดใน Linux ให้เปลี่ยนพารามิเตอร์ต่อไปนี้ในไฟล์ socfpga_plat_def.h ให้ตรงกับความถี่ของ cs_at_clk ที่ตั้งค่าใน HPS IP (ดู "ความถี่สัญญาณนาฬิกา CoreSight" ภายใต้นาฬิกา HPS และรีเซ็ต ->นาฬิกาภายในและนาฬิกาเอาต์พุต)

    #define PLAT_SYS_COUNTER_FREQ_IN_TICKS (400000000)


    Stratix® 10 SoC FPGA : https://github.com/altera-opensource/arm-trusted-firmware/blob/socfpga_v2.10.0/plat/intel/soc/stratix10/include/socfpga_plat_def.h#L99C9-L99C40

    FPGA SoC Agilex™ 7 : https://github.com/altera-opensource/arm-trusted-firmware/blob/socfpga_v2.10.0/plat/intel/soc/agilex/include/socfpga_plat_def.h#L100

    Agilex™ 5 FPGA SoC : https://github.com/altera-opensource/arm-trusted-firmware/blob/socfpga_v2.10.0/plat/intel/soc/agilex5/include/socfpga_plat_def.h#L30

    อุปกรณ์ eASIC™ N5X: https://github.com/altera-opensource/arm-trusted-firmware/blob/socfpga_v2.10.0/plat/intel/soc/n5x/include/socfpga_plat_def.h#L99

    ปัญหานี้มีกําหนดว่าจะได้รับการแก้ไขในการเปิดตัวเฟิร์มแวร์ที่เชื่อถือได้ของ Arm ในอนาคต

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

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

    เอฟพีจีเอและเอฟพีจีเอ SoC Intel® Agilex™ 7
    Intel® Stratix® 10 FPGA และ SoC FPGA

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