ตัวอย่างการออกแบบของคอมไพเลอร์ C2H Mandelbrot

แนะนําสําหรับ:

  • อุปกรณ์: Cyclone® III

  • Quartus®: ไม่ทราบ

author-image

โดย

ตัวอย่างการออกแบบ Mandelbrot นี้สาธิตการใช้คอมไพเลอร์การเร่งความเร็วโปรเซสเซอร์แบบฝังตัว Nios® II C-to-Hardware (C2H) ในตัวอย่างนี้ คอมไพเลอร์ C2H จะเปลี่ยนการปรับใช้อัลกอริธึม Mandelbrot ที่ใช้ C เป็นฮาร์ดแวร์ การออกแบบนี้ยังมีตัวควบคุมวิดีโอเพื่อแสดงวิดีโอแบบเคลื่อนไหวเต็มรูปแบบของค่าพิกเซลที่คํานวณได้

รูปแบบ Mandelbrot ได้กลายมาเป็นหนึ่งในส่วนที่รู้จักกันดีเนื่องจากรูปแบบที่ซับซ้อนและการใช้งานที่ใช้โปรเซสเซอร์อย่างหนัก อัลกอริทึมทํางานในระนาบที่ซับซ้อนโดยที่แกน x แสดงถึงส่วนประกอบที่แท้จริง และแกน y แสดงถึงส่วนประกอบจินตนาการ ตัวอย่างนี้ดําเนินการเคลื่อนไหวไปยังภูมิภาคต่างๆ ของระนาบ และซูมเข้าและออกเพื่อสร้างวิดีโอแบบเคลื่อนไหวเต็มรูปแบบ

ตัวอย่างนี้ใช้ประโยชน์จากการทํางานแบบขนานอย่างเต็มรูปแบบโดยดําเนินการคํานวณพิกัดในซอฟต์แวร์ในขณะที่ตัวเร่งฮาร์ดแวร์กําลังใช้งานอยู่ ซึ่งทําได้โดยการบัฟเฟอร์ข้อมูลวิดีโอสามเท่าใน DDR SDRAM และใช้โปรเซสเซอร์แบบฝังNios IIเพื่อประสานการไหลของข้อมูล ทุกครั้งที่มีการเรนเดอร์เฟรมบัฟเฟอร์แบบเต็มจะถูกเรนเดอร์โดยตัวเร่งฮาร์ดแวร์ โปรเซสเซอร์จะจัดการข้อมูลเพื่อวางเกณฑ์มาตรฐานข้อมูล และแจ้งให้คอนโทรลเลอร์วิดีโอทราบว่ามีบัฟเฟอร์ใหม่พร้อมสําหรับการแสดงผลแล้ว

การใช้ตัวอย่างการออกแบบนี้

การออกแบบนี้กําหนดเป้าหมายชุดพัฒนาต่อไปนี้:

ดาวน์โหลด ตัวอย่างการออกแบบ Nios II C2H Mandelbrot (ไฟล์.zip)

ดาวน์โหลด ตัวอย่างการออกแบบ Nios II C2H Mandelbrot README (ไฟล์.txt)

การใช้การออกแบบนี้อยู่ภายใต้และอยู่ภายใต้ข้อกําหนดและเงื่อนไขของข้อตกลงสิทธิ์การใช้งานตัวอย่างการออกแบบของ Intel®

ไฟล์ .zip ประกอบด้วยไฟล์ซอฟต์แวร์ที่จําเป็นทั้งหมดเพื่อทําซ้ําตัวอย่างรวมถึงไฟล์ readme.txt ไฟล์ readme.txt มีคําแนะนําสําหรับการสร้างการออกแบบใหม่ที่มุ่งเป้าไปที่การออกแบบฮาร์ดแวร์ที่มีอยู่

แผนภาพบล็อก

รูปภาพที่ 1 ตัวอย่างการออกแบบของคอมไพเลอร์ C2H Mandelbrot

รูปภาพที่ 1 แสดงแผนผังบล็อกของตัวอย่างการออกแบบคอมไพเลอร์ C2H Mandelbrot

ผลลัพธ์ที่เร่งความเร็วของคอมไพเลอร์ C2H

อัลกอริทึม Mandelbrot ที่เร่งความเร็วด้วยคอมไพเลอร์ C2H ส่งผลให้ความเร็วเพิ่มขึ้นอย่างน้อย 60 เท่าเมื่อเทียบกับอัลกอริธึมเดียวกันที่ทํางานบนโปรเซสเซอร์ Nios IIที่เร็วที่สุดโดยใช้การเพิ่มประสิทธิภาพคอมไพเลอร์ระดับ 2 (-O2) ความเร็วที่เพิ่มขึ้นนี้เกิดจากความขนานและความเร็วในการวนรอบที่รวดเร็วที่ฮาร์ดแวร์สามารถจัดหาได้ ซึ่งไม่สามารถหาได้จากหน่วยประมวลผลอเนกประสงค์

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