ปัญหาสำคัญ
คุณอาจสังเกตเห็นข้อผิดพลาดในการสร้างหากโครงการแอปพลิเคชันของคุณ
ติดตั้ง ISR ที่เรียกใช้ alt_irq_register()
ฟังก์ชัน
Nios II EDS เวอร์ชั่น 9.1 มีการรองรับตัวเลือก อินเทอร์เฟซ External Interrupt Controller (EIC) บนโปรเซสเซอร์ Nios II เพื่อรองรับอินเทอร์เฟซ EIC HALมีการขัดจังหวะที่ดีขึ้น API
เมื่อคุณสร้าง BSP SBT จะกําหนดว่าจะหยุดชะงักแบบใด ไดรเวอร์อุปกรณ์ในการสนับสนุนระบบของคุณของ API หากลงทะเบียนทั้งหมด ไดรเวอร์ใน BSP ระบุตัวเองว่ารองรับการปรับปรุง API SBT ใช้ API ที่ปรับปรุงใหม่ ไดรเวอร์อุปกรณ์Alteraทั้งหมด ในเวอร์ชัน 9.1 และใหม่กว่าจะรองรับ API ที่ปรับปรุงใหม่
เมื่อมีการใช้งาน API ที่ปรับปรุงใหม่ การขัดจังหวะแบบดั้งเดิม
API รวมถึง alt_irq_register()
ไม่มีอยู่
ดังนั้น หากรหัสแอปพลิเคชันมีการเรียก API ดั้งเดิม
ฟังก์ชัน ข้อผิดพลาดของตัวเชื่อมโยงจะเกิดขึ้น
ปัญหานี้อาจส่งผลต่อโครงการแอปพลิเคชันที่โทรหรือ alt_irq_register()
ฟังก์ชัน API แบบเก่าอื่นๆ จะขัดจังหวะโดยตรง แทนที่จะเป็นขึ้นอยู่กับ
บนไดรเวอร์ใน BSP สําหรับการรองรับการขัดจังหวะ
หากการลงทะเบียนรหัสแหล่งที่มาของโครงการแอปพลิเคชัน Nios II ของคุณ
ISR ที่ใช้ alt_irq_register()
หรือรวมถึง ISR
แอปพลิเคชันของคุณอาจไม่สามารถคอมไพล์ในเวอร์ชัน Nios II EDS
9.1 เนื่องจากการอ้างอิง alt_irq_register()
ไปยัง ที่ไม่ได้กําหนด
หรือเปลี่ยนเป็นต้นแบบฟังก์ชัน ISR
ปรับเปลี่ยนรหัสแอปพลิเคชันของคุณเพื่อใช้ API การขัดจังหวะที่ปรับปรุงใหม่ ในการใช้ API ที่ปรับปรุงคุณต้องแก้ไขการเรียกฟังก์ชันหลายรายการและต้นแบบฟังก์ชัน ISR ทั้งหมด
สําหรับข้อมูลเกี่ยวกับการสนับสนุน API การขัดจังหวะที่ปรับปรุงใหม่ โปรดดูบทการจัดการข้อยกเว้นของคู่มือนักพัฒนาซอฟต์แวร์ Nios II หรือ AN 595: Vectored Interrupt Controller การใช้งานและการใช้งาน
คุณต้องอัพเกรดเป็น API ที่ปรับปรุงใหม่หากคุณต้องการใช้ EIC ในการออกแบบฮาร์ดแวร์ของคุณเพื่อเร่งเวลาตอบสนองที่ขัดจังหวะ นอกจากนี้ API ที่ปรับปรุงใหม่ยังทํางานร่วมกับคอนโทรลเลอร์การขัดจังหวะภายในของโปรเซสเซอร์ Nios II\'