FPGA ของฉันไม่มีทรัพยากรการกำหนดเส้นทางหรือไม่


9

ฉันมีการออกแบบ Serial-ATA Controller ที่ทำงานบนอุปกรณ์ Xilinx 7-series เกือบทุกชนิดยกเว้นอุปกรณ์ Artix-7 ซึ่งทำให้ฉันปวดหัว ...

การออกแบบที่บริสุทธิ์ (SATA 6.0Gb / s, นาฬิกาออกแบบ 150 MHz) สามารถนำมาใช้กับ Artix-7 200T ของฉัน ถ้าฉันเพิ่ม ILA cores (เดิมชื่อ ChipScope) เวลาจะไม่เป็นไปตาม

ฉันทำสิ่งที่ผ่อนคลายสถานการณ์: - เพิ่ม 2 ขั้นตอนไปป์ไลน์ในแต่ละแกน ILA - เพิ่ม 1 ขั้นตอนไปป์ไลน์ระหว่างตัวรับส่งสัญญาณ GTP และตรรกะ - ใช้ retiming, remap และการวางตำแหน่งกว้างเป็นกลยุทธ์การดำเนินงานทางเลือก

ภาพนี้แสดงขั้นตอนการออกแบบปกติ แกน ILA นั้นอยู่ไกลจาก SATAController (SATAC) และ CPU 8 บิต ( SoFPGA ) แต่ตัวควบคุมยังคงมีเส้นทางที่ล้มเหลว (นั่นเป็นภูมิภาคเดียวที่มีเส้นทางที่ล้มเหลว)

ป้อนคำอธิบายรูปภาพที่นี่

รู้สึกเหมือน Artix-7 ขาดทรัพยากรการกำหนดเส้นทางในบางพื้นที่ ฉันจะรับรายงานที่ระบุว่ามีข้อสงสัยได้อย่างไร

ฉันยังลอง retiming ทำการแมปใหม่และวางกลยุทธ์ให้กว้างขึ้น ผลลัพธ์คือ:

ป้อนคำอธิบายรูปภาพที่นี่

ความล้มเหลวในการกำหนดเวลาเกือบจะเหมือนกัน ...

ป.ล. การออกแบบใช้เพียง 178 จาก> 300 BlockRAMs ฉันใช้ Xilinx ISE เพื่อใช้ BlockRAM เกือบทุกตัวในการออกแบบอื่น ๆ แต่ฉันไม่เคยพบพฤติกรรมเช่นนี้เลย

แก้ไข:

นี่คือแผนที่ความร้อนของค่าเผื่อหย่อนทั้งหมดต่อชิ้น (สีแดง) ป้อนคำอธิบายรูปภาพที่นี่


3
ใน Altera Quartus มีบางสิ่งที่เรียกว่าภูมิภาค LogicLock ซึ่งอนุญาตให้คุณ จำกัด พาร์ติชันหรือกลุ่มของตรรกะไปยังพื้นที่เฉพาะ ฉันคิดว่าจะมีบางสิ่งที่คล้ายกันสำหรับ Xilinx (แม้ว่าจะไม่แน่ใจว่ามันจะเรียกว่าอะไร) หากคุณสามารถทำได้คุณควร จำกัด ILA ให้อยู่ในขอบเขตที่ห่างจากตรรกะของคุณ (เพื่อหยุดการแทนที่สิ่งที่สำคัญ) และเพิ่มการวางท่อแบบพิเศษ (ไม่ จำกัด พื้นที่) เพื่อช่วยในเรื่องเวลา
Tom Carpenter

2
นอกจากนี้ยังอาจจะเป็นกรณีของเส้นทางที่ผิดพลาดระหว่างโดเมนนาฬิกาของ ILA และโดเมนนาฬิกาอื่น ๆ ที่ก่อให้เกิดเส้นทางเท็จซึ่งส่งผลให้มีความพิเศษโดยช่างฟิตที่ (ก่อให้เกิดเส้นทางจริงที่จะรับการรักษาด้วยความสำคัญน้อยลงและเพื่อให้ความล้มเหลวในเวลา)
ทอมไม้

2
ฉันมีปัญหาที่คล้ายกันกับ SignalTap (อีกครั้งเทียบเท่า Altera ของ ILA) ด้วยความล้มเหลวของเส้นทางที่เกิดขึ้นเนื่องจากเส้นทางที่ละเอียดอ่อนได้รับการผลักออกจากกันโดยตรรกะแตะที่ต้องการใกล้ชิดกับสัญญาณที่ถูกแตะ ส่วนใหญ่เกิดขึ้นที่มีความหนาแน่นของ BRAM สูงเนื่องจาก SignalTap BRAMs บังคับให้ BRAM อื่นแยกออกจากกัน เมื่อ SignalTap ถูก จำกัด พื้นที่ที่เต็มไปด้วยวิกฤตน้อยลงปัญหาก็หายไป
Tom Carpenter

@TomCarpenter ข้อ จำกัด ของตำแหน่งเรียกว่า PBlock :) เท่าที่ฉันสามารถบอกได้ว่าไม่มีเซลล์ ILA ในภูมิภาค SoFPGA หรือ SATAC พวกเขาจะถูกแยกออกเป็น 3 เฟส FF ในแต่ละสัญญาณการติดตาม 151 การออกแบบที่ตรวจสอบจะทำงานในโดเมนนาฬิกาเดียวกันกับ ILA (150 MHz) เส้นทางทั้งหมดถูก จำกัด (ไม่มีข้อ จำกัด ไม่มีเส้นทางระหว่างนาฬิกาที่ล้มเหลว) เส้นทางที่ล้มเหลวที่กล่าวถึงนั้นอยู่ในโดเมนนาฬิกาเดียวกันทั้งใน SATAC หรือ ILA เอง ฉันพบรายงานความแออัดของการจัดเส้นทางซึ่งระบุว่ามีการใช้งานประมาณ 54% (น่ากลัวและยอดเยี่ยม) โปรดดูฉัน neg เพิ่มแผนผังความร้อนหย่อนลงในคำถามของฉัน
Paebbels

1
ฉันค้นพบ 2 ประเด็น: ในตอนแรก Artix-7 นั้นช้ากว่า Kintex-7 15 ถึง 50% ถ้าฉันเปลี่ยนเกรดความเร็วเริ่มต้นจาก -2 เป็น -3 ทั้งหมดก็โอเค (มีระยะขอบความปลอดภัย 200 พิโคเซคอนเมื่อเทียบกับความเฉื่อยเฉื่อย 670 ps ดังนั้นความเร็วเกรด -3 ปรับปรุงเส้นทาง 6.600 ns เกือบ 0.970 ns! ดูเหมือนกับว่าสิ่งที่แนบมาบริสุทธิ์ของสัญญาณการติดตามทำให้เกิดปัญหาแฟนคลับสูงขึ้นซึ่งทำให้เกิดปัญหาเวลานอกจากนี้เส้นทางการติดตามผ่านโดเมนนาฬิกา 100 MHz สำหรับ CPU 8 บิตซึ่งจะทำให้เกิด (หนึ่งใน 5 วิ่ง) ปัญหาในโดเมนนาฬิกานั้นเส้นยาว / เส้นทางผ่านทำให้เกิดปัญหาในบรรทัดอื่น ๆ
Paebbels

คำตอบ:


1

คุณสามารถรับรายงานโดยละเอียดได้โดยทำการวิเคราะห์การออกแบบใน Xilinx Vivado รันคำสั่งต่อไปนี้ในคอนโซล tcl: "report_design_analysis" ซึ่งให้รายงานเวลาความซับซ้อนและความแออัดของการออกแบบที่นำมาใช้ คุณยังสามารถเรียกใช้รายงานนี้ได้โดยไปที่เครื่องมือ -> รายงาน -> รายงาน Design_analysis

ในรายงานนี้คุณสามารถดูว่าพื้นที่ใดเป็นสาเหตุของความแออัดเนื่องจากการวาง มีการใช้งานชิ้นส่วนใดอย่างเต็มที่หรือการให้เช่าชิ้นส่วนและ / หรือเส้นทางดังกล่าวคืออะไร

ฉันหวังว่านี่จะช่วยได้

ขอแสดงความนับถือ KWQ


ขอบคุณสำหรับรายงานนี้ (ฉันไม่ทราบ) มันแตกต่างจากภาพสุดท้ายของฉันอย่างไร (แผนที่เวลาร้อน)?
Paebbels
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.