الانتقال إلى سلسلة أدوات FPGA الصينية PDS: الخطوات العملية من Vivado إلى Pango/فودان مايكرو
يعتقد كثيرون أن النقل المحلي هو في المقام الأول تبديل الشريحة، لكن العقبة الأولى هي في الحقيقة سلسلة الأدوات. الانتقال من Vivado إلى PDS من Pango أو إلى EDA من فودان مايكرو يغيّر طريقة فتح المشروع وكتابة القيود وإنشاء IP وإغلاق التوقيت. يقسّم هذا المقال الانتقال خطوة بخطوة — ما الذي يتغير في كل خطوة، وما المزالق التي واجهناها، وكم الجهد المطلوب عادةً.
أولاً: وضح أن Pango وفودان مايكرو ليسا مسار الهجرة نفسه
عند الانتقال من Vivado إلى سلسلة أدوات محلية، يعتقد كثيرون أنها «مجرد EDA أخرى». في الواقع يختلف Pango وفودان مايكرو كثيرًا. وضّح أولاً أي خط أمامك:
| الشريحة الهدف | سلسلة الأدوات | فتح المشروع | صعوبة النقل |
|---|---|---|---|
| Pango Titan3 / Kosmo-2 | Pango Design Suite (PDS) | بنية المشروع ومكتبة IP وصيغة القيود كلها تختلف عن Vivado | متوسطة، التدفق شبيه بـ Vivado لكن يجب إعادة بناء المشروع |
| سلسلة FudanMicro JFM7 | EDA من فودان مايكرو | أجهزة متوافقة مع السلسلة 7، بنية مشروع مشابهة | متوسطة-منخفضة، يجب إعادة ربط مكتبة IP |
يسير Pango بطريق «بنية جديدة + PDS خاص»، لذا يجب إعادة بناء مشروع Vivado جوهريًا؛ بينما تسير فودان مايكرو بطريق «التوافق مع السلسلة 7 + تدفق مشابه»، فيمكن إعادة استخدام جزء أكبر من المشروع. الخطوات أدناه عامة وتنطبق على الاثنين.
الخطوة الأولى: تفكيك مشروع Vivado، لا نقله كاملًا
ملف مشروع Vivado `.xpr` لا يفتح في سلسلة أدوات محلية. الصحيح هو تفكيك المشروع إلى أجزاء يمكن «إعادة تركيبها»:
1. مصادر RTL: ملفات `.v` / `.vhd` نص عادي وتُعاد استخدامها كما هي دون تغيير (إن لم تعتمد على أوليات Xilinx الخاصة).
2. القيود: معظم صيغة `.xdc` قابلة للقراءة، لكن تعيين الأرجل وتعريفات الساعة يجب إعادة كتابتها للشريحة الجديدة.
3. أنوية IP: لا يمكن استخدام IP الخاص بـ FIFO/BRAM/PCIe/DDR من Xilinx مباشرة؛ بل يُنشأ IP المقابل من المورّد المحلي.
4. المحاكاة والاختبار: منصة الاختبار `tb` قابلة لإعادة الاستخدام، لكن مسارات مكتبة IP للمحاكاة تتغير.
الجهد المطلوب
فريق FPGA من 3–5 مهندسين يحتاج عادةً 3–5 أيام عمل لتفكيك المشروع وإعادة بناء الهيكل في سلسلة الأدوات المحلية. التكلفة الحقيقية ليست هنا، بل في القيود وIP أدناه.
الخطوة الثانية: ملف القيود أول مزلق
صيغة `.xdc` قريبة جدًا من Vivado، لكن التفاصيل تختلف وتسبب معظم المزالق:
- تعيين الأرجل: خريطة BGA Ball تختلف، لذا يجب إعادة `set_property PACKAGE_PIN` على الشريحة الجديدة. يستخدم Pango أداة الأرجل `PACE` في PDS، وفودان مايكرو تدفقًا مشابهًا.
- قيود الساعة: صيغة `create_clock` / `create_generated_clock` متوافقة، لكن أسماء موارد مصدر الساعة (البلورة، MMCM/PLL) تتغير.
- معايير الإدخال/الإخراج: تُضبط LVDS وLVCMOS وفولتية البنوك من جديد وفق ورقة بيانات الشريحة الجديدة.
نصيحة عملية: نفّذ أولًا تعيين الأرجل في PDS عبر `PACE` أو في أداة أرجل فودان مايكرو، ثم صدّر القيود. هذا أكثر موثوقية من كتابة `.xdc` يدويًا ويوفّر عدة جولات تصحيح.
الخطوة الثالثة: إعادة إنشاء IP (جوهر التكلفة)
هذا أكبر جزء من تكلفة النقل. يختلف الجهد كثيرًا حسب نوع IP:
| نوع IP | أصلي في Vivado | البديل المحلي | الجهد |
|---|---|---|---|
| وحدة تحكم DDR | MIG (DDR3/DDR4) | DDR-PHY محلي + وحدة تحكم | مرتفع: التوقيت والمعايرة والتدريب تختلف |
| نواة PCIe الصلبة | Integrated Block for PCIe | PCIe-PHY محلي + تعداد | متوسط: إعادة ضبط المعاملات، المنطق قابل لإعادة الاستخدام |
| أجهزة الإرسال فائقة السرعة | GTX / GTH / HSST | PHY مرسل محلي | مرتفع: إعادة ضبط الساعة المرجعية والـ pre-emphasis والـ equalization |
| FIFO / BRAM / DSP | IP المولّدات | IP المورّد المحلي | منخفض: إعادة التوليد، المنطق قابل لإعادة الاستخدام |
| PLL / MMCM | Clocking Wizard | IP ساعة محلي | منخفض: إعادة إدخال المعاملات |
أي IP لواجهة عالية السرعة (DDR أو PCIe أو SerDes) ليس «تغيير معامل وانتهى» — بل يتعلق بسلامة الإشارة على اللوحة. رُسمت PCB وفق التصميم المرجعي لـ Xilinx؛ بعد التحول إلى PHY محلي يجب إعادة قياس مخطط العين وإعادة ضبط الـ equalization وإعادة تشغيل تدريب الخط. هذا عادةً أكثر جزء غير قابل للتحكم في النقل، لذا خصّص أسبوعين إلى 4 أسابيع على الأقل.
الخطوة الرابعة: إغلاق التوقيت والتكرار
عادةً ما تترك FPGA المحلية هامش توقيت أضيق من Xilinx في نفس الفئة؛ تصميم 100 ميجاهرتز بهامش 20٪ قد يبقى له 5–10٪ فقط بعد النقل. ما المطلوب:
1. إعادة التركيب والتوزيع والتوجيه في سلسلة الأدوات المحلية وقراءة تقرير التوقيت (PDS `Report Timing` / المكافئ في فودان مايكرو).
2. تحديد المسار الحرج وتحسين RTL أو إضافة مراحل أنابيب.
3. تكرار التركيب حتى يغلق التوقيت.
يستغرق هذا عادةً 1–2 أسبوعين حسب تعقيد التصميم والهامش الأصلي.
قائمة التنفيذ والجدول النموذجي
نقل «Vivado → سلسلة أدوات محلية» يربط الخطوات الأربع أعلاه ويبدو عادةً هكذا:
| الخطوة | المحتوى | الزمن النموذجي |
|---|---|---|
| تفكيك المشروع | إعادة استخدام RTL، إعادة بناء الهيكل | 3–5 أيام |
| إعادة كتابة القيود | إعادة تعيين الأرجل/الساعات/معايير الإدخال والإخراج | 3–5 أيام |
| إعادة إنشاء IP | يهيمن DDR/PCIe/أجهزة الإرسال | 2–4 أسابيع |
| إغلاق التوقيت | تركيب + توجيه + تكرار | 1–2 أسبوعين |
| التحقق على اللوحة | التشغيل، مخطط العين، انحدار الخط | 2–4 أسابيع |
يستغرق مشروع متوسط التعقيد نحو 1–2 شهرين إجمالًا، وتتركز التكلفة في إعادة إنشاء IP وإغلاق التوقيت.
توصية الاختيار: كيف نبني مجموعة اللوحات المحلية
عند اختيار لوحة للنقل، حدد أولًا على أي خط شرائح يقع الهدف ثم اختر اللوحة المناسبة:
- FudanMicro JFM7VX690T (DUF7690T): موارد بمستوى Virtex-7، غلاف متوافق مع السلسلة 7، للنقل pin-to-pin من سلسلة Xilinx 7، بدرجة حرارة صناعية.
- Pango Titan3 (PG3T500): منصة عالية المستوى ببنية جديدة، للتصاميم التي تحتاج موارد كبيرة وتستخدم تدفق PDS.
- Pango Kosmo-2 (PG2K400): ARM + FPGA متغاير، للتصاميم بمستوى ZYNQ/MPSoC التي تنتقل إلى SoC محلي.
العائق الحقيقي عند النقل إلى سلسلة أدوات محلية ليس ما إذا كان يمكن نقل RTL، بل أن القيود وIP والتوقيت يجب اجتيازها من جديد. فكّك المشروع أولًا، وأعد كتابة القيود، وركّز الجهد على IP وإغلاق التوقيت، وخطط الجدول والميزانية على أساس «1–2 شهر، وIP هو البند الأكبر» — عندها يتحقق النقل حسب الخطة ولا يتعثر في منتصف الطريق.
اقرأ أيضًا
- [التكلفة الحقيقية للنقل المحلي: إطار TCO](/article/china-fpga-migration-tco-cost-framework/)
- [البديل المحلي لـ ZYNQ عمليًا: من XC7Z020 إلى PBC7Z020G/021G](/article/zynq-china-replacement-pbc7z020-practical/)
- [كيف تختار FPGA: مصفوفة قرار من الموارد وأجهزة الإرسال والسعر](/article/fpga-selection-decision-matrix/)
