จะเห็นข้อผิดพลาดข้างต้นในการจําลองAvalon® MM Slave BFM เมื่อไม่ได้ตั้งค่าการตอบสนองความหน่วงอย่างถูกต้อง
ข้อผิดพลาดเกิดขึ้นเมื่อ Avalon MM Master มีปัญหาทรานแซคชันการอ่านหลายทรานแซคชันใน Avalon MM Slave BFM และ Slave BFM พยายามผลักดันการตอบสนองในการอ่านก่อนที่การตอบสนองการอ่านของการส่งต่อครั้งก่อนจะเสร็จสมบูรณ์
ด้านล่างนี้เป็นลําดับตัวอย่างที่จะทําให้เกิดความขัดแย้งของกําหนดการ
1. ร้องขอการอ่านต่อเนื่อง (ขนาด 2) โดยมีความหน่วงแฝง 4.
2. ในรอบถัดไป ให้ร้องขอการอ่านต่อเนื่อง (ขนาด 2) โดยมีความหน่วงแฝง 3.
Slave BFM นับความหน่วงแฝงตามเวลาที่รับคําสั่ง กําลังพยายามผลักดันการตอบสนองในการอ่านที่สามก่อนที่จะขับเคลื่อนการตอบสนองในการอ่านที่สอง
การตอบกลับที่ทับซ้อนกันนี้จะทําให้เกิดความขัดแย้งของกําหนดการ
ในการแก้ไขข้อผิดพลาดนี้ ให้ใช้การเรียกใช้ set_response_latency API เพื่อปรับการกําหนดเวลาการตอบสนองในการอ่านระหว่างทรานซิชันต่อเนื่อง ทําตามสูตรด้านล่างเพื่อตั้งค่าความหน่วงแฝงในการตอบสนองคงที่สําหรับธุรกรรมการอ่านต่อเนื่องทั้งหมด:
ขนาดการอ่านต่อเนื่องสูงสุด = Smax
รอบขั้นต่ําระหว่างคําขออ่านต่อเนื่อง = Cmin
ความหน่วงแฝงในการตอบสนอง = Smax - Cmin 1
ในตัวอย่างข้างต้น ขนาดการอ่านต่อเนื่องสูงสุด = 2 และรอบขั้นต่ําระหว่างคําขออ่านต่อเนื่อง = 1 ความหน่วงแฝงในการตอบสนองสําหรับแต่ละคําขออ่านต่อเนื่องควรเป็น 2
โปรดดูคําอธิบายset_response_latencyใน คู่มือผู้ใช้ชุด IP การตรวจสอบAvalon (https://www.altera.com/en_US/pdfs/literature/ug/ug_avalon_verification_ip.pdf#page=56) สําหรับข้อมูลเพิ่มเติม