หนึ่งในวิธีการโปรแกรมบอร์ด FPGA ของ Digilent คือ การโปรแกรมด้วย Quad SPI ข้อดีของวิธีนี้ คือ โปรแกรมจะถูกเขียนลงในหน่วยความจำแบบแฟลช ซึ่งโปรแกรมจะไม่หายไปแม้บอร์ด FPGA ไม่ถูกจ่ายไฟ และตัวโปรแกรมจะทำงานอัตโนมัติเมื่อจ่ายไฟให้บอร์ด FPGA เราสามารถโปรแกรมบอร์ด FPGA ด้วย Quad SPI ตามขั้นตอนดังต่อไปนี้
1. บอร์ด FPGA บางรุ่น เช่น Basys 3 ต้องตั้งจัมพ์เปอร์สำหรับโปรแกรมด้วย Quad SPI

2. จ่ายไฟให้กับบอร์ดหากไม่ได้จ่ายผ่านพอร์ต micro-USB อาจต้องทำการตั้งจัมพ์เปอร์ด้วยเช่นกัน
3. เชื่อมต่อบอร์ด FPGA เข้ากับคอมพิวเตอร์ผ่านพอร์ต USB
4. ต่อสายยูเอสบีจากคอมพิวเตอร์ไปยังพอร์ท PROG-UART/J14
5. เปิดซอฟต์แวร์ Vivado แล้วเปิดโปรเจกต์ (Open Project) ที่ทำการสร้าง Bitstream ไว้
6. เปิด Flow Navigator>Hardware and Debug>Hardware Manager
7. คลิ๊กขวาบนบอร์ด FPGA ใน Hardware Manager แล้วเลือก Add Configuration Memory Device… ในหน้าต่างที่ปรากฏขึ้นให้ค้นหารุ่นของหน่วยความจำที่ใช้งานบนบอร์ด FPGA (Basys 3: Macronix MX25L3233FMI-08G, Cmod A7-35T: Macronix MX25L3233FZBI-08G/Q) โดยสามารถอ้างอิงได้จาก Reference Manual ของบอร์ดแต่ละรุ่น
8. ตั้งค่า Configuration file: เป็นไฟล์ bin ที่ทำการสร้าง Bitstream ไว้ ติ๊ก Erase, Program และ Verify แล้วกด OK Vivado จะลบโปรแกรมในหน่วยความจำแฟลชแล้วเขียนโปรแกรมใหม่ลงไป

9. เมื่อเขียนโปรแกรมเรียบร้อยแล้วให้ทำการจ่ายไฟให้บอร์ด FPGA ใหม่ โปรแกรมจะเริ่มทำงานโดยอัตโนมัติ
หวังว่าบทความนี้จะเป็นประโยชน์สำหรับผู้ที่กำลังมองหาวิธีการโปรแกรมบอร์ด FPGA ของ Digilent ได้อย่างมีประสิทธิภาพ ท่านสามารถติดต่อทีมงาน ติดต่อ ทีมงาน เทคสแควร์ เพื่อสอบถามข้อมูลเพิ่มเติมเกี่ยวกับบอร์ดพัฒนา FPGA ของ Digilent หรือผลิตภัณฑ์อื่น ๆ ได้ครับ
บทความที่เกี่ยวข้อง
เริ่มต้นการพัฒนาด้วยบอร์ด FPGA รุ่น Cmod A7-35T จาก Digilent
