คู่มือผู้ใช้ FPGA PolarFire Family Custom Flow
ลิเบอโร SoC v2024.2
การแนะนำ (ถามคำถาม)
ซอฟต์แวร์ Libero System-on-Chip (SoC) มอบสภาพแวดล้อมการออกแบบ Field Programmable Gate Array (FPGA) แบบบูรณาการอย่างสมบูรณ์ อย่างไรก็ตาม ผู้ใช้บางรายอาจต้องการใช้เครื่องมือสังเคราะห์และจำลองของบุคคลที่สามนอกสภาพแวดล้อม Libero SoC ปัจจุบัน Libero สามารถผสานรวมเข้ากับสภาพแวดล้อมการออกแบบ FPGA ได้แล้ว ขอแนะนำให้ใช้ Libero SoC เพื่อจัดการขั้นตอนการออกแบบ FPGA ทั้งหมด
คู่มือผู้ใช้ฉบับนี้จะอธิบายเกี่ยวกับ Custom Flow สำหรับอุปกรณ์ PolarFire และ PolarFire SoC Family ซึ่งเป็นกระบวนการในการผสาน Libero เป็นส่วนหนึ่งของขั้นตอนการออกแบบ FPGA ที่ใหญ่กว่า กลุ่มอุปกรณ์ที่รองรับ® ตารางต่อไปนี้จะแสดงรายการกลุ่มอุปกรณ์ที่ Libero SoC รองรับ อย่างไรก็ตาม ข้อมูลบางส่วนในคู่มือนี้อาจใช้ได้กับกลุ่มอุปกรณ์เฉพาะเท่านั้น ในกรณีนี้ ข้อมูลดังกล่าวจะถูกระบุอย่างชัดเจน
ตารางที่ 1 กลุ่มอุปกรณ์ที่รองรับโดย Libero SoC
กลุ่มอุปกรณ์ | คำอธิบาย |
โพลาร์ไฟร์® | FPGA PolarFire มอบพลังงานต่ำที่สุดในอุตสาหกรรมที่ความหนาแน่นระดับกลางพร้อมความปลอดภัยและความน่าเชื่อถือที่เหนือชั้น |
โพลาร์ไฟร์ โซซี | PolarFire SoC คือ SoC FPGA ตัวแรกที่มีคลัสเตอร์ CPU RISC-V ที่กำหนดและสอดคล้องกัน และระบบย่อยหน่วยความจำ L2 ที่กำหนดได้ซึ่งช่วยให้ใช้งาน Linux® และแอปพลิเคชันแบบเรียลไทม์ได้ |
เกินview (ถามคำถาม)
แม้ว่า Libero SoC จะมอบสภาพแวดล้อมการออกแบบแบบครบวงจรที่บูรณาการอย่างสมบูรณ์เพื่อพัฒนาการออกแบบ SoC และ FPGA แต่ยังมอบความยืดหยุ่นในการเรียกใช้การสังเคราะห์และการจำลองด้วยเครื่องมือของบุคคลที่สามนอกสภาพแวดล้อม Libero SoC อย่างไรก็ตาม ขั้นตอนการออกแบบบางส่วนจะต้องอยู่ในสภาพแวดล้อม Libero SoC
ตารางต่อไปนี้จะแสดงขั้นตอนหลักในการออกแบบ FPGA และระบุขั้นตอนที่ต้องใช้ Libero SoC
ตาราง 1-1. การออกแบบ FPGA
ขั้นตอนการออกแบบ | ต้องใช้ลิเบโร่ | คำอธิบาย |
ผลงานการออกแบบ: HDL | เลขที่ | ใช้เครื่องมือแก้ไข/ตรวจสอบ HDL ของบุคคลที่สามนอก Libero® SoC หากต้องการ |
การออกแบบรายการ: ตัวกำหนดค่า | ใช่ | สร้างโครงการ Libero แรกสำหรับการสร้างส่วนประกอบหลักของแค็ตตาล็อก IP |
การสร้างข้อจำกัด PDC/SDC อัตโนมัติ | เลขที่ | ข้อจำกัดที่ได้มาต้องใช้ HDL ทั้งหมด fileและยูทิลิตี้ derive_constraints เมื่อดำเนินการนอก Libero SoC ตามที่อธิบายไว้ในภาคผนวก C—Derive Constraints |
การจำลอง | เลขที่ | หากต้องการใช้เครื่องมือของบุคคลที่สามนอกเหนือจาก Libero SoC จำเป็นต้องดาวน์โหลดไลบรารีจำลองที่คอมไพล์ไว้ล่วงหน้าสำหรับอุปกรณ์เป้าหมาย โปรแกรมจำลองเป้าหมาย และเวอร์ชัน Libero เป้าหมายที่ใช้สำหรับการใช้งานแบ็กเอนด์ |
สังเคราะห์ | เลขที่ | ใช้เครื่องมือของบุคคลที่สามนอก Libero SoC หากต้องการ |
การออกแบบ การดำเนินการ: จัดการข้อจำกัด รวบรวมเน็ตลิสต์ วางและกำหนดเส้นทาง (ดูเพิ่มเติมview) | ใช่ | สร้างโครงการ Libero ที่สองสำหรับการใช้งานด้านแบ็กเอนด์ |
การตรวจสอบเวลาและพลังงาน | ใช่ | อยู่ในโครงการ Libero ลำดับที่ 2 |
กำหนดค่าข้อมูลการเริ่มต้นการออกแบบและหน่วยความจำ | ใช่ | ใช้เครื่องมือนี้เพื่อจัดการหน่วยความจำประเภทต่างๆ และออกแบบการเริ่มต้นใช้งานในอุปกรณ์ อยู่ในโครงการที่สอง |
การเขียนโปรแกรม File รุ่น | ใช่ | อยู่ในโครงการที่สอง |
สำคัญ: คุณ ต้องดาวน์โหลดไลบรารีที่คอมไพล์ไว้ล่วงหน้าซึ่งมีให้ที่ ไลบรารีจำลองที่คอมไพล์ล่วงหน้า หน้าสำหรับใช้จำลองบุคคลที่สาม
ในกระแสข้อมูล Fabric FPGA บริสุทธิ์ ให้ป้อนการออกแบบของคุณโดยใช้ HDL หรือรายการแผนผัง และส่งผ่านโดยตรง
ไปยังเครื่องมือสังเคราะห์ การไหลยังคงได้รับการสนับสนุน PolarFire และ PolarFire SoC FPGA มีความสำคัญ
บล็อก IP ฮาร์ดที่เป็นกรรมสิทธิ์ซึ่งต้องใช้คอร์การกำหนดค่า (SgCores) จาก Libero SoC IP
แคตตาล็อก ต้องมีการจัดการพิเศษสำหรับบล็อกใดๆ ที่ประกอบด้วยฟังก์ชัน SoC:
- โพลาร์ไฟร์
– พีเอฟ_ยูพีรอม
– ระบบบริการ PF
– พีเอฟ_ซีซีซี
– กองบัญชาการตำรวจปราบปรามยาเสพติด (ป.ป.ช.)
– พีเอฟ_คริปโต
– พีเอฟ_ดีอาร์ไอ
– PF_INIT_มอนิเตอร์
– PF_NGMUX
– พีเอฟ_โอเอสซี
– แรม (TPSRAM, DPSRAM, URAM)
– พีเอฟ_เอสแรม_เอเอชบีแอล_เอเอ็กซ์ไอ
– พีเอฟ_เอ็กซ์ซีวีอาร์_อีอาร์เอ็ม
– พีเอฟ_เอ็กซ์ซีวีอาร์_เรฟ_ซีแอลเค
– พีเอฟ_ทีเอ็กซ์_พีแอลแอล
– พีเอฟ_พีซีอี
– พีเอฟ_ไอโอ
– พีเอฟ_ไอโอดี_ซีดีอาร์
– PF_IOD_CDR_ซีซีซี
– PF_IOD_GENERIC_RX
– PF_IOD_GENERIC_TX
– PF_IOD_GENERIC_TX_CCC ทั่วไป
– พีเอฟ_อาร์จีเอ็มไอ_ทีโอ_จีเอ็มไอ
– PF_IOD_OCTAL_DDR
– พีเอฟ_ดีดีอาร์3
– พีเอฟ_ดีดีอาร์4
– พีเอฟ_แอลพีดีอาร์3
– พีเอฟ_คิวดีอาร์
– พีเอฟ_คอร์สมาร์ทเบิร์ต
– พีเอฟ_ทีAMPER
– PF_TVS และอื่นๆ
นอกเหนือจาก SgCores ที่ระบุไว้ก่อนหน้านี้แล้ว ยังมี DirectCore soft IPs มากมายสำหรับอุปกรณ์ตระกูล PolarFire และ PolarFire SoC ในแค็ตตาล็อก Libero SoC ซึ่งใช้ทรัพยากรผ้า FPGA
สำหรับรายการออกแบบ หากคุณใช้ส่วนประกอบใดส่วนประกอบหนึ่งที่กล่าวมาข้างต้น คุณต้องใช้ Libero SoC สำหรับรายการออกแบบบางส่วน (การกำหนดค่าส่วนประกอบ) แต่คุณสามารถดำเนินการต่อรายการออกแบบส่วนที่เหลือ (รายการ HDL เป็นต้น) นอก Libero ได้ หากต้องการจัดการกระแสการออกแบบ FPGA นอก Libero ให้ทำตามขั้นตอนที่ระบุไว้ในส่วนที่เหลือของคู่มือนี้
1.1 วงจรชีวิตส่วนประกอบ (ถามคำถาม)
ขั้นตอนต่อไปนี้อธิบายวงจรชีวิตของส่วนประกอบ SoC และให้คำแนะนำเกี่ยวกับวิธีการจัดการข้อมูล
- สร้างส่วนประกอบโดยใช้ตัวกำหนดค่าใน Libero SoC ซึ่งจะสร้างข้อมูลประเภทต่อไปนี้:
– เอชดีแอล files
- หน่วยความจำ files
– การกระตุ้นและการจำลอง files
– ส่วนประกอบ SDC file - สำหรับ HDL fileสร้างตัวอย่างและรวมเข้ากับส่วนที่เหลือของการออกแบบ HDL โดยใช้เครื่องมือ/กระบวนการป้อนการออกแบบภายนอก
- จัดหาหน่วยความจำ fileสและสิ่งกระตุ้น fileไปที่เครื่องมือจำลองของคุณ
- ส่วนประกอบอุปทาน SDC file เครื่องมือการอนุมานข้อจำกัดสำหรับการสร้างข้อจำกัด ดูภาคผนวก C—การอนุมานข้อจำกัดสำหรับรายละเอียดเพิ่มเติม
- คุณต้องสร้างโครงการ Libero ที่สอง โดยที่คุณจะนำเข้าเน็ตลิสต์หลังการสังเคราะห์และเมตาข้อมูลของส่วนประกอบของคุณ ดังนั้นจึงทำให้การเชื่อมต่อระหว่างสิ่งที่คุณสร้างและสิ่งที่คุณโปรแกรมเสร็จสมบูรณ์
1.2 การสร้างโครงการ Libero SoC (ถามคำถาม)
ขั้นตอนการออกแบบบางขั้นตอนจะต้องดำเนินการภายในสภาพแวดล้อม Libero SoC (ตาราง 1-1) หากต้องการดำเนินการตามขั้นตอนเหล่านี้ คุณต้องสร้างโปรเจ็กต์ Libero SoC สองโปรเจ็กต์ โปรเจ็กต์แรกใช้สำหรับการกำหนดค่าและสร้างส่วนประกอบการออกแบบ และโปรเจ็กต์ที่สองใช้สำหรับการนำการออกแบบระดับบนสุดไปใช้จริง
1.3 การไหลแบบกำหนดเอง (ถามคำถาม)
รูปต่อไปนี้แสดงว่า:
- สามารถรวม Libero SoC เป็นส่วนหนึ่งของกระแสการออกแบบ FPGA ที่ใหญ่กว่ากับเครื่องมือสังเคราะห์และจำลองของบุคคลที่สามนอกสภาพแวดล้อม Libero SoC ได้
- ขั้นตอนต่างๆ ที่เกี่ยวข้องกับการไหล เริ่มตั้งแต่การสร้างการออกแบบและการเย็บไปจนถึงการเขียนโปรแกรมอุปกรณ์
- การแลกเปลี่ยนข้อมูล (อินพุตและเอาต์พุต) ที่จะต้องเกิดขึ้นในแต่ละขั้นตอนการไหลของการออกแบบ
เคล็ดลับ:
- SNVM.cfg, UPROM.cfg
- *.เมม file การสร้างสำหรับการจำลอง: pa4rtupromgen.exe นำ UPROM.cfg เป็นอินพุต และสร้าง UPROM.mem
ต่อไปนี้เป็นขั้นตอนในกระบวนการแบบกำหนดเอง:
- การกำหนดค่าและการสร้างส่วนประกอบ:
ก. สร้างโครงการ Libero แรก (เพื่อใช้เป็นโครงการอ้างอิง)
ข. เลือกคอร์จากแค็ตตาล็อก ดับเบิลคลิกที่คอร์เพื่อตั้งชื่อส่วนประกอบและกำหนดค่าส่วนประกอบ
การส่งออกข้อมูลส่วนประกอบโดยอัตโนมัติและ files. จะสร้าง Component Manifests ขึ้นมาด้วย ดูรายละเอียดเพิ่มเติมใน Component Manifests สำหรับรายละเอียดเพิ่มเติม - ออกแบบ RTL ของคุณให้เสร็จสมบูรณ์นอก Libero:
ก. สร้างตัวอย่างส่วนประกอบ HDL files.
ข. ตำแหน่งของ HDL files ถูกระบุไว้ในรายการส่วนประกอบ files. - สร้างข้อจำกัด SDC สำหรับส่วนประกอบ ใช้ยูทิลิตี้ Derive Constraints เพื่อสร้างข้อจำกัดด้านเวลา file(SDC) ตาม:
ก. ส่วนประกอบ HDL files
ข. ส่วนประกอบ SDC files
ค. ผู้ใช้ HDL files
สำหรับรายละเอียดเพิ่มเติม โปรดดูภาคผนวก C—ข้อจำกัดที่ได้มา - เครื่องมือสังเคราะห์/เครื่องมือจำลอง:
ก. รับ HDL fileส, สิ่งกระตุ้น fileและข้อมูลส่วนประกอบจากตำแหน่งที่เจาะจงตามที่ระบุไว้ใน Component Manifests
ข. สังเคราะห์และจำลองการออกแบบด้วยเครื่องมือของบุคคลที่สามนอก Libero SoC - สร้างโครงการ Libero (การใช้งาน) ที่สองของคุณ
- ลบการสังเคราะห์ออกจากชุดเครื่องมือการออกแบบ (โครงการ > การตั้งค่าโครงการ > การออกแบบการไหล > ล้างกล่องกาเครื่องหมายเปิดใช้งานการสังเคราะห์)
- นำเข้าแหล่งที่มาของการออกแบบ files (netlist หลังการสังเคราะห์ *.vm จากเครื่องมือการสังเคราะห์):
– นำเข้ารายการสุทธิหลังการสังเคราะห์ *.vm (File>นำเข้า> การสังเคราะห์ Verilog Netlist (VM)
– เมตาข้อมูลส่วนประกอบ *.cfg files สำหรับ uPROM และ/หรือ sNVM - นำเข้าส่วนประกอบบล็อก Libero SoC ใด ๆ fileส. บล็อค files จะต้องอยู่ใน *.cxz file รูปแบบ
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับวิธีการสร้างบล็อก โปรดดู คู่มือผู้ใช้ PolarFire Block Flow. - นำเข้าข้อจำกัดการออกแบบ:
– ข้อจำกัดการนำเข้า I/O files (ตัวจัดการข้อจำกัด > คุณสมบัติ I/OA > นำเข้า)
– นำเข้าผังพื้น *.pdc files (ตัวจัดการข้อจำกัด > ตัววางแผนชั้น > นำเข้า)
– นำเข้า *.sdc ข้อจำกัดเวลา files (ตัวจัดการข้อจำกัด > เวลา > นำเข้า) นำเข้า SDC file สร้างขึ้นโดยใช้เครื่องมือ Derive Constraint
– นำเข้า *.ndc ข้อจำกัด files (ตัวจัดการข้อจำกัด > NetlistAttributes > นำเข้า) ถ้ามี - ข้อจำกัด file และการเชื่อมโยงเครื่องมือ
– ใน Constraint Manager ให้เชื่อมโยง *.pdc files เพื่อวางและกำหนดเส้นทาง *.sdc fileเพื่อวางและตรวจสอบเส้นทางและเวลา และ *.ndc fileเพื่อคอมไพล์ Netlist - ออกแบบและดำเนินการจนเสร็จสมบูรณ์
– วางและกำหนดเส้นทาง ตรวจสอบเวลาและพลังงาน กำหนดค่าข้อมูลการเริ่มต้นการออกแบบและหน่วยความจำ และการเขียนโปรแกรม file รุ่น. - ตรวจสอบการออกแบบ
– ตรวจสอบการออกแบบบน FPGA และดีบักตามความจำเป็นโดยใช้เครื่องมือออกแบบที่มาพร้อมกับชุดการออกแบบ Libero SoC
การกำหนดค่าส่วนประกอบ (ถามคำถาม)
ขั้นตอนแรกในโฟลว์แบบกำหนดเองคือการกำหนดค่าส่วนประกอบของคุณโดยใช้โครงการอ้างอิง Libero (เรียกอีกอย่างว่าโครงการ Libero แรกในตาราง 1-1) ในขั้นตอนถัดไป คุณจะใช้ข้อมูลจากโครงการอ้างอิงนี้
หากคุณกำลังใช้ส่วนประกอบใดๆ ที่ระบุไว้ก่อนหน้านี้ ภายใต้ Overview ในการออกแบบของคุณ ให้ดำเนินการตามขั้นตอนที่อธิบายไว้ในหัวข้อนี้
หากคุณไม่ได้ใช้ส่วนประกอบใดๆ ข้างต้น คุณสามารถเขียน RTL ของคุณนอก Libero และนำเข้าโดยตรงไปยังเครื่องมือ Synthesis และ Simulation ของคุณ จากนั้นคุณสามารถดำเนินการต่อไปที่ส่วน post-synthesis และนำเข้า netlist *.vm post-synthesis ของคุณลงในโปรเจ็กต์การใช้งาน Libero ขั้นสุดท้ายเท่านั้น (เรียกอีกอย่างว่าโปรเจ็กต์ Libero ที่สองในตาราง 1-1)
2.1 การกำหนดค่าส่วนประกอบโดยใช้ Libero (ถามคำถาม)
หลังจากเลือกส่วนประกอบที่จะต้องใช้จากรายการข้างต้นแล้ว ให้ดำเนินการตามขั้นตอนต่อไปนี้:
- สร้างโครงการ Libero ใหม่ (การกำหนดค่าและการสร้างหลัก): เลือกอุปกรณ์และกลุ่มผลิตภัณฑ์ที่คุณต้องการใช้สำหรับการออกแบบขั้นสุดท้ายของคุณ
- ใช้หนึ่งหรือมากกว่าหนึ่งคอร์ที่กล่าวถึงใน Custom Flow
ก. สร้าง SmartDesign และกำหนดค่าแกนที่ต้องการและสร้างอินสแตนซ์ในส่วนประกอบ SmartDesign
ข. เลื่อนพินทั้งหมดขึ้นสู่ระดับสูงสุด
c. สร้าง SmartDesign
d. คลิกสองครั้งที่เครื่องมือจำลอง (ตัวเลือก Pre-Synthesis หรือ Post-Synthesis หรือ Post-Layout ใดก็ได้) เพื่อเรียกใช้โปรแกรมจำลอง คุณสามารถออกจากโปรแกรมจำลองได้หลังจากเรียกใช้แล้ว ขั้นตอนนี้จะสร้างการจำลอง fileจำเป็นสำหรับโครงการของคุณ
เคล็ดลับ: คุณ ต้องดำเนินการขั้นตอนนี้หากคุณต้องการจำลองการออกแบบของคุณภายนอก Libero
สำหรับข้อมูลเพิ่มเติม โปรดดูการจำลองการออกแบบของคุณ
e. บันทึกโครงการของคุณ—นี่คือโครงการอ้างอิงของคุณ
2.2 ส่วนประกอบที่แสดง (ถามคำถาม)
เมื่อคุณสร้างส่วนประกอบของคุณ ชุดของ files ถูกสร้างขึ้นสำหรับแต่ละส่วนประกอบ รายงาน Component Manifest แสดงรายละเอียดชุด files ที่สร้างและใช้ในแต่ละขั้นตอนถัดไป (การสังเคราะห์ การจำลอง การสร้างเฟิร์มแวร์ และอื่นๆ) รายงานนี้จะให้ตำแหน่งของไฟล์ที่สร้างขึ้นทั้งหมดแก่คุณ fileจำเป็นต้องดำเนินการกับ Custom Flow คุณสามารถเข้าถึง manifest ของส่วนประกอบได้ในพื้นที่ Reports: คลิก Design > Reports เพื่อเปิดแท็บ Reports ในแท็บ Reports คุณจะเห็น manifest.txt ชุดหนึ่ง fileส (เกินview) หนึ่งอันสำหรับแต่ละส่วนประกอบที่คุณสร้าง
เคล็ดลับ: คุณต้องตั้งค่าส่วนประกอบหรือโมดูลเป็น 'รูท' เพื่อดูการแสดงส่วนประกอบ file เนื้อหาในแท็บรายงาน
นอกจากนี้คุณสามารถเข้าถึงรายงานรายการแต่ละรายการได้ files สำหรับแต่ละส่วนประกอบหลักที่สร้างขึ้นหรือส่วนประกอบ SmartDesign จาก /ส่วนประกอบ/งาน/ - - _manifest.txt หรือ /ส่วนประกอบ/งาน/ - _manifest.txt คุณสามารถเข้าถึง manifest ได้เช่นกัน file เนื้อหาของแต่ละส่วนประกอบที่สร้างจากแท็บส่วนประกอบใหม่ใน Libero โดยที่ file สถานที่ต่างๆ จะถูกกล่าวถึงตามไดเร็กทอรีของโครงการเน้นที่รายงานส่วนประกอบ Manifest ต่อไปนี้:
- หากคุณสร้างอินสแตนซ์คอร์ใน SmartDesign โปรดอ่าน file _manifest.txt.
- หากคุณสร้างส่วนประกอบสำหรับแกนหลัก โปรดอ่าน _manifest.txt.
คุณต้องใช้รายงาน Component Manifests ทั้งหมดที่ใช้กับการออกแบบของคุณ ตัวอย่างเช่นampหากโครงการของคุณมี SmartDesign ที่มีส่วนประกอบหลักหนึ่งรายการขึ้นไปที่สร้างขึ้น และคุณตั้งใจจะใช้ส่วนประกอบทั้งหมดในการออกแบบขั้นสุดท้ายของคุณ คุณต้องเลือก fileแสดงอยู่ในรายงาน Component Manifests ของส่วนประกอบทั้งหมดเพื่อใช้ในขั้นตอนการออกแบบของคุณ
2.3 การตีความคำประกาศ Fileส (ถามคำถาม)
เมื่อคุณเปิดรายการส่วนประกอบ file, คุณเห็นเส้นทางที่จะไป files ในโครงการ Libero ของคุณและตัวชี้ว่าจะใช้สิ่งเหล่านี้ในขั้นตอนการออกแบบใด คุณอาจเห็นประเภทต่อไปนี้ files อยู่ในรายการ file:
- แหล่งที่มาของ HDL files สำหรับเครื่องมือการสังเคราะห์และการจำลองทั้งหมด
- สิ่งกระตุ้น files สำหรับเครื่องมือจำลองทั้งหมด
- ข้อจำกัด files
ต่อไปนี้เป็นรายการส่วนประกอบของส่วนประกอบหลักของ PolarFireแต่ละประเภท file จำเป็นต่อขั้นตอนการออกแบบของคุณ หัวข้อต่อไปนี้จะอธิบายการบูรณาการ fileจากการแสดงสู่กระแสการออกแบบของคุณ
การสร้างข้อจำกัด (ถามคำถาม)
เมื่อดำเนินการกำหนดค่าและสร้าง ให้แน่ใจว่าได้เขียน/สร้างข้อจำกัด SDC/PDC/NDC fileเพื่อให้การออกแบบส่งต่อไปยังเครื่องมือการสังเคราะห์ สถานที่และกำหนดเส้นทาง และการตรวจสอบเวลา
ใช้ยูทิลิตี้ Derive Constraints นอกสภาพแวดล้อม Libero เพื่อสร้างข้อจำกัดแทนที่จะเขียนด้วยตนเอง หากต้องการใช้ยูทิลิตี้ Derive Constraint นอกสภาพแวดล้อม Libero คุณต้อง:
- จัดหา HDL ให้กับผู้ใช้, HDL ของส่วนประกอบ และข้อจำกัดของส่วนประกอบ SDC files
- ระบุโมดูลระดับสูงสุด
- ระบุตำแหน่งที่จะสร้างข้อจำกัดที่ได้มา files
ข้อจำกัดของส่วนประกอบ SDC มีอยู่ภายใต้ /ส่วนประกอบ/งาน/ - / ไดเร็กทอรีหลังจากกำหนดค่าและสร้างส่วนประกอบ
สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับวิธีการสร้างข้อจำกัดสำหรับการออกแบบของคุณ โปรดดูภาคผนวก C—การสืบทอดข้อจำกัด
การสังเคราะห์การออกแบบของคุณ (ถามคำถาม)
หนึ่งในคุณสมบัติหลักของ Custom Flow คือการอนุญาตให้คุณใช้การสังเคราะห์ของบุคคลที่สาม
เครื่องมือภายนอก Libero โฟลว์แบบกำหนดเองรองรับการใช้ Synopsys SynplifyPro เพื่อสังเคราะห์ข้อมูลของคุณ
โครงการใช้ขั้นตอนต่อไปนี้:
- สร้างโครงการใหม่ในเครื่องมือ Synthesis ของคุณ โดยกำหนดเป้าหมายไปที่กลุ่มอุปกรณ์ ไดย์ และแพ็คเกจเดียวกันกับโครงการ Libero ที่คุณสร้างขึ้น
ก. นำเข้า RTL ของคุณเอง fileเหมือนอย่างที่คุณทำเป็นปกติ
ข. ตั้งค่าผลลัพธ์การสังเคราะห์ให้เป็น Structural Verilog (.vm)
เคล็ดลับ: โครงสร้าง Verilog (.vm) เป็นรูปแบบเอาต์พุตสังเคราะห์ที่รองรับเพียงรูปแบบเดียวใน PolarFire - นำเข้าส่วนประกอบ HDL fileเข้าสู่โครงการ Synthesis ของคุณ:
ก. สำหรับรายงานการแสดงส่วนประกอบแต่ละส่วน: สำหรับแต่ละ file ภายใต้แหล่ง HDL files สำหรับเครื่องมือการสังเคราะห์และการจำลองทั้งหมด นำเข้า file เข้าสู่โครงการ Synthesis ของคุณ - นำเข้า file polarfire_syn_comps.v (ถ้าใช้ Synopsys Synplify) จาก
ตำแหน่งการติดตั้ง>/data/aPA5M ไปที่โครงการ Synthesis ของคุณ - นำเข้า SDC ที่สร้างไว้ก่อนหน้านี้ file ผ่านเครื่องมือ Derived Constraint (ดูภาคผนวก
เช่นampข้อจำกัด SDC) ลงในเครื่องมือ Synthesis ข้อจำกัดนี้ file จำกัดเครื่องมือสังเคราะห์เพื่อให้บรรลุการปิดเวลาด้วยความพยายามน้อยลงและมีการวนซ้ำการออกแบบน้อยลง
สำคัญ:
- หากคุณวางแผนที่จะใช้ *.sdc เดียวกัน file เพื่อจำกัด Place-and-Route ระหว่างขั้นตอนการใช้งานการออกแบบ คุณต้องนำเข้า *.sdc นี้ไปยังโปรเจ็กต์การสังเคราะห์ เพื่อให้แน่ใจว่าไม่มีชื่อวัตถุการออกแบบที่ไม่ตรงกันในเน็ตลิสต์ที่สังเคราะห์ และข้อจำกัด Place-and-Route ระหว่างขั้นตอนการใช้งานของกระบวนการออกแบบ หากคุณไม่รวม *.sdc นี้ file ในขั้นตอนการสังเคราะห์ เน็ตลิสต์ที่สร้างจากการสังเคราะห์อาจล้มเหลวในขั้นตอนการวางและเส้นทางเนื่องจากชื่อวัตถุการออกแบบไม่ตรงกัน
ก. นำเข้าคุณลักษณะ Netlist *.ndc หากมี เข้าสู่เครื่องมือ Synthesis
ข. การดำเนินการสังเคราะห์ - ตำแหน่งของเอาท์พุตเครื่องมือ Synthesis ของคุณมีเน็ตลิสต์ *.vm file สร้างโพสต์ Synthesis คุณต้องนำเข้า netlist เข้าสู่โครงการ Libero Implementation เพื่อดำเนินกระบวนการออกแบบต่อไป
การจำลองการออกแบบของคุณ (ถามคำถาม)
หากต้องการจำลองการออกแบบของคุณนอก Libero (นั่นคือ การใช้สภาพแวดล้อมการจำลองและเครื่องจำลองของคุณเอง) ให้ดำเนินการตามขั้นตอนต่อไปนี้:
- ออกแบบ Files:
ก. การจำลองก่อนการสังเคราะห์:
• นำเข้า RTL ของคุณเข้าสู่โครงการจำลองของคุณ
• สำหรับรายงานการแสดงส่วนประกอบแต่ละส่วน
– นำเข้าแต่ละ file ภายใต้แหล่ง HDL files สำหรับเครื่องมือการสังเคราะห์และการจำลองทั้งหมดในโครงการจำลองของคุณ
• รวบรวมสิ่งเหล่านี้ fileตามคำแนะนำของเครื่องจำลองของคุณ
ข. การจำลองหลังการสังเคราะห์:
• นำเข้า netlist หลังการสังเคราะห์ *.vm ของคุณ (สร้างขึ้นใน Synthesizing Your Design) ไปยังโปรเจ็กต์จำลองของคุณและคอมไพล์
c. การจำลองหลังการวางเค้าโครง:
• ขั้นแรก ให้ดำเนินการตามการออกแบบของคุณให้เสร็จสิ้น (ดู การดำเนินการตามการออกแบบของคุณ) ตรวจสอบให้แน่ใจว่าโครงการ Libero ขั้นสุดท้ายของคุณอยู่ในสถานะหลังการวางเค้าโครง
• ดับเบิลคลิกสร้าง BackAnnotated Files ในหน้าต่าง Libero Design Flow จะสร้างสองรายการ files:
/นักออกแบบ/ - _บา.วี/วีเอชดี /นักออกแบบ/
- _บา.sdf
• นำเข้าทั้งสองสิ่งนี้ fileเข้าสู่เครื่องมือจำลองของคุณ - การกระตุ้นและการกำหนดค่า files:
ก. สำหรับรายงานส่วนประกอบแต่ละชิ้น:
• คัดลอกทั้งหมด files ภายใต้การกระตุ้น Files สำหรับส่วนของเครื่องมือจำลองทั้งหมดไปยังไดเร็กทอรีรากของโครงการจำลองของคุณ
ข. ให้แน่ใจว่า Tcl files ในรายการก่อนหน้า (ในขั้นตอนที่ 2.a) จะถูกดำเนินการก่อนการเริ่มการจำลอง
c. UPROM.mem: หากคุณใช้แกน UPROM ในการออกแบบของคุณโดยมีตัวเลือกใช้เนื้อหาสำหรับการจำลองที่เปิดใช้งานสำหรับไคลเอนต์ที่จัดเก็บข้อมูลหนึ่งรายการหรือมากกว่าที่คุณต้องการจำลอง คุณต้องใช้ไฟล์ปฏิบัติการ pa4rtupromgen (pa4rtupromgen.exe บน Windows) เพื่อสร้าง UPROM.mem fileไฟล์ปฏิบัติการ pa4rtupromgen จะใช้ไฟล์ UPROM.cfg file เป็นอินพุตผ่านสคริปต์ Tcl file และส่งออก UPROM.mem file จำเป็นสำหรับการจำลอง UPROM.mem นี้ file จะต้องคัดลอกไปยังโฟลเดอร์จำลองก่อนการรันจำลองampการแสดงการใช้งานไฟล์ปฏิบัติการ pa4rtupromgen นั้นมีอยู่ในขั้นตอนต่อไปนี้ UPROM.cfg file มีอยู่ในไดเร็กทอรี /ส่วนประกอบ/งาน/ - ในโครงการ Libero ที่คุณใช้ในการสร้างส่วนประกอบ UPROM
d. snvm.mem: หากคุณใช้แกน System Services ในการออกแบบของคุณและกำหนดค่าแท็บ sNVM ในแกนด้วยตัวเลือก ใช้เนื้อหาสำหรับการจำลอง เปิดใช้งานสำหรับไคลเอนต์หนึ่งรายการหรือมากกว่าที่คุณต้องการจำลอง snvm.mem file ถูกสร้างขึ้นโดยอัตโนมัติ
ไดเรกทอรี /ส่วนประกอบ/งาน/ - ในโครงการ Libero ที่คุณใช้ในการสร้างส่วนประกอบ System Services ไฟล์ snvm.mem นี้ file จะต้องคัดลอกไปยังโฟลเดอร์จำลองก่อนที่จะดำเนินการจำลอง - สร้างโฟลเดอร์ทำงานและโฟลเดอร์ย่อยชื่อ simulation ภายใต้โฟลเดอร์ทำงาน
ไฟล์ปฏิบัติการ pa4rtupromgen คาดหวังว่าจะมีโฟลเดอร์ย่อยจำลองอยู่ในโฟลเดอร์ทำงาน และสคริปต์ *.tcl จะถูกวางไว้ในโฟลเดอร์ย่อยจำลอง - คัดลอก UPROM.cfg file จากโครงการ Libero แรกที่สร้างขึ้นสำหรับการสร้างส่วนประกอบในโฟลเดอร์ทำงาน
- วางคำสั่งต่อไปนี้ลงในสคริปต์ *.tcl และวางไว้ในโฟลเดอร์จำลองที่สร้างขึ้นในขั้นตอนที่ 3
Sample *.tcl สำหรับอุปกรณ์ PolarFire และ PolarFire Soc Family เพื่อสร้าง URPOM.mem file
จาก UPROM.cfg
set_device-ครอบครัว -ตาย -แพ็ค
set_input_cfg - เส้นทาง
set_sim_mem - เส้นทางFile/UPROM.เมม>
gen_sim -use_init ไม่ถูกต้อง
สำหรับชื่อภายในที่เหมาะสมที่จะใช้สำหรับแม่พิมพ์และแพ็คเกจ โปรดดู *.prjx file ของโครงการ Libero แรก (ใช้สำหรับการสร้างส่วนประกอบ)
อาร์กิวเมนต์ use_init ต้องตั้งค่าเป็น false
ใช้คำสั่ง set_sim_mem เพื่อระบุเส้นทางไปยังเอาต์พุต file UPROM.mem นั่นเอง
สร้างขึ้นเมื่อมีการดำเนินการสคริปต์ file โดยมีไฟล์ปฏิบัติการ pa4rtupromgen - ที่พรอมต์คำสั่งหรือเทอร์มินัล Cygwin ให้ไปที่ไดเร็กทอรีทำงานที่สร้างขึ้นในขั้นตอนที่ 3
ดำเนินการคำสั่ง pa4rtupromgen พร้อมกับตัวเลือก–script และส่งสคริปต์ *.tcl ที่สร้างไว้ในขั้นตอนก่อนหน้าให้กับคำสั่งนั้น
สำหรับ Windows
/designer/bin/pa4rtupromgen.exe \
–สคริปต์/การจำลอง/ .ทีซีแอล
สำหรับ Linux:
/bin/pa4rtupromgen
–สคริปต์/การจำลอง/ .ทีซีแอล - หลังจากดำเนินการไฟล์ปฏิบัติการ pa4rtupromgen สำเร็จแล้ว ให้ตรวจสอบว่า UPROM.mem file ถูกสร้างขึ้นในตำแหน่งที่ระบุไว้ในคำสั่ง set_sim_mem ในสคริปต์ *.tcl
- เพื่อจำลอง sNVM ให้คัดลอก snvm.mem file จากโครงการ Libero แรกของคุณ (ใช้สำหรับการกำหนดค่าส่วนประกอบ) ไปยังโฟลเดอร์จำลองระดับสูงสุดของโครงการจำลองของคุณเพื่อเรียกใช้การจำลอง (นอก Libero SoC) หากต้องการจำลองเนื้อหา UPROM ให้คัดลอก UPROM.mem ที่สร้างขึ้น file เข้าไปในโฟลเดอร์จำลองระดับบนสุดของโปรเจ็กต์จำลองของคุณเพื่อรันการจำลอง (นอก Libero SoC)
สำคัญ: ถึง จำลองการทำงานของส่วนประกอบ SoC ดาวน์โหลดไลบรารีจำลอง PolarFire ที่คอมไพล์ไว้ล่วงหน้าและนำเข้าสู่สภาพแวดล้อมจำลองของคุณตามที่อธิบายไว้ที่นี่ สำหรับรายละเอียดเพิ่มเติม โปรดดูภาคผนวก B—การนำเข้าไลบรารีจำลองเข้าสู่สภาพแวดล้อมจำลอง
การนำการออกแบบของคุณไปใช้ (ถามคำถาม)
หลังจากเสร็จสิ้นการจำลองการสังเคราะห์และหลังการสังเคราะห์ในสภาพแวดล้อมของคุณแล้ว คุณต้องใช้ Libero อีกครั้งเพื่อนำการออกแบบของคุณไปใช้จริง รันการวิเคราะห์เวลาและกำลัง และสร้างโปรแกรมของคุณ file.
- สร้างโครงการ Libero ใหม่สำหรับการใช้งานทางกายภาพและเค้าโครงของการออกแบบ ตรวจสอบให้แน่ใจว่ากำหนดเป้าหมายอุปกรณ์เดียวกันกับในโครงการอ้างอิงที่คุณสร้างในการกำหนดค่าส่วนประกอบ
- หลังจากสร้างโครงการแล้ว ให้ลบ Synthesis ออกจากชุดเครื่องมือในหน้าต่าง Design Flow (โครงการ > การตั้งค่าโครงการ > Design Flow > ยกเลิกการเลือกเปิดใช้งาน Synthesis)
- นำเข้าโพสต์การสังเคราะห์ของคุณ *.vm file เข้าสู่โครงการนี้ (File > นำเข้า > สังเคราะห์ Verilog Netlist (VM)
เคล็ดลับ: ขอแนะนำให้คุณสร้างลิงก์ไปยังสิ่งนี้ fileเพื่อว่าถ้าคุณสังเคราะห์การออกแบบของคุณใหม่ Libero จะใช้เน็ตลิสต์หลังการสังเคราะห์ที่ใหม่ล่าสุดเสมอ
ก. ในหน้าต่างลำดับชั้นการออกแบบ โปรดสังเกตชื่อของโมดูลราก - นำข้อจำกัดเข้าสู่โครงการ Libero ใช้ตัวจัดการข้อจำกัดเพื่อนำข้อจำกัด *.pdc/*.sdc/*.ndc เข้ามา
ก. การนำเข้า I/O *.pdc ข้อจำกัด files (ตัวจัดการข้อจำกัด > คุณลักษณะ I/O > นำเข้า)
ข. การนำเข้า Floorplanning *.pdc constraint files (ตัวจัดการข้อจำกัด > ตัววางแผนชั้น > นำเข้า)
c. นำเข้า *.sdc ข้อจำกัดเวลา files (ตัวจัดการข้อจำกัด > การกำหนดเวลา > นำเข้า) หากการออกแบบของคุณมีแกนหลักใดๆ ที่ระบุไว้ใน Overview, ให้แน่ใจว่าได้นำเข้า SDC file สร้างขึ้นโดยใช้เครื่องมือจำกัดการได้มา
ง. นำเข้า *.ndc ข้อจำกัด files (ตัวจัดการข้อจำกัด > คุณลักษณะ Netlist > นำเข้า) - ข้อจำกัดที่เกี่ยวข้อง Fileเพื่อออกแบบเครื่องมือ
ก. เปิดตัวจัดการข้อจำกัด (จัดการข้อจำกัด > เปิดจัดการข้อจำกัด View).
ทำเครื่องหมายที่ช่องกาเครื่องหมาย Place-and-Route and Timing Verification ข้างข้อจำกัด file เพื่อสร้างข้อจำกัด file และการเชื่อมโยงเครื่องมือ เชื่อมโยงข้อจำกัด *.pdc กับ Place-and-Route และ *.sdc กับทั้ง Place-and-Route และการตรวจสอบเวลา เชื่อมโยง *.ndc file การรวบรวม Netlist
เคล็ดลับ: หาก สถานที่และเส้นทางล้มเหลวด้วยข้อจำกัด *.sdc นี้ fileจากนั้นนำเข้า *.sdc เดียวกันนี้ file การสังเคราะห์และดำเนินการสังเคราะห์ซ้ำอีกครั้ง
- คลิก Compile Netlist จากนั้น Place and Route เพื่อทำให้ขั้นตอนเค้าโครงเสร็จสมบูรณ์
- เครื่องมือกำหนดค่าข้อมูลและหน่วยความจำการเริ่มต้นการออกแบบช่วยให้คุณสามารถเริ่มต้นบล็อกการออกแบบ เช่น LSRAM, µSRAM, XCVR (ทรานซีฟเวอร์) และ PCIe โดยใช้ข้อมูลที่เก็บไว้ในหน่วยความจำแฟลช SPI แบบไม่ลบเลือน µPROM, sNVM หรือภายนอก เครื่องมือนี้มีแท็บต่อไปนี้สำหรับกำหนดข้อกำหนดของลำดับการเริ่มต้นการออกแบบ ข้อกำหนดของไคลเอนต์การเริ่มต้น ไคลเอนต์ข้อมูลผู้ใช้
– แท็บการเริ่มต้นการออกแบบ
– แท็บ µPROM
– แท็บ sNVM
– แท็บ SPI Flash
– แท็บผ้า RAMs
ใช้แท็บในเครื่องมือเพื่อกำหนดค่าข้อมูลการเริ่มต้นการออกแบบและหน่วยความจำหลังจากเสร็จสิ้นการกำหนดค่าแล้ว ให้ดำเนินการตามขั้นตอนต่อไปนี้เพื่อตั้งโปรแกรมข้อมูลการเริ่มต้นระบบ:
• สร้างไคลเอนต์การเริ่มต้น
• สร้างหรือส่งออกบิตสตรีม
• ตั้งโปรแกรมอุปกรณ์
หากต้องการดูข้อมูลโดยละเอียดเกี่ยวกับวิธีใช้เครื่องมือนี้ โปรดดูคู่มือผู้ใช้ Libero SoC Design Flow สำหรับข้อมูลเพิ่มเติมเกี่ยวกับคำสั่ง Tcl ที่ใช้กำหนดค่าแท็บต่างๆ ในเครื่องมือและกำหนดค่าหน่วยความจำ files (*.cfg) ดู คู่มืออ้างอิงคำสั่ง Tcl. - สร้างการเขียนโปรแกรม File จากโครงการนี้และใช้ในการเขียนโปรแกรม FPGA ของคุณ
ภาคผนวก A—Sampข้อจำกัดของ SDC (ถามคำถาม
Libero SoC สร้างข้อจำกัดเวลา SDC สำหรับคอร์ IP บางตัว เช่น CCC, OSC, Transceiver และอื่นๆ การส่งข้อจำกัด SDC ไปยังเครื่องมือออกแบบจะเพิ่มโอกาสในการบรรลุข้อตกลงเวลาด้วยความพยายามน้อยลงและมีการวนซ้ำในการออกแบบน้อยลง เส้นทางลำดับชั้นทั้งหมดจากอินสแตนซ์ระดับบนสุดจะมอบให้กับวัตถุการออกแบบทั้งหมดที่อ้างอิงในข้อจำกัด
7.1 ข้อจำกัดเวลา SDC (ถามคำถาม)
ในโครงการอ้างอิงหลักของ Libero IP ข้อจำกัด SDC ระดับสูงสุดนี้ file สามารถใช้ได้จาก Constraint Manager (Design Flow > Open Manage Constraint View > การกำหนดเวลา > การอนุมานข้อจำกัด)
สำคัญ: ดู นี้ file เพื่อกำหนดข้อจำกัดของ SDC หากการออกแบบของคุณมี CCC, OSC, Transceiver และส่วนประกอบอื่นๆ ปรับเปลี่ยนเส้นทางลำดับชั้นทั้งหมด หากจำเป็น เพื่อให้ตรงกับลำดับชั้นการออกแบบของคุณ หรือใช้ยูทิลิตี้ Derive_Constraints และขั้นตอนในภาคผนวก C—Derive Constraints บน SDC ระดับส่วนประกอบ file.
บันทึก file เป็นชื่ออื่นและนำเข้า SDC file ไปยังเครื่องมือสังเคราะห์ เครื่องมือวางและกำหนดเส้นทาง และการตรวจสอบเวลา เช่นเดียวกับข้อจำกัด SDC อื่นๆ files.
7.1.1 SDC ที่ได้รับมา File (ถามคำถาม)
# นี้ file ถูกสร้างขึ้นจากแหล่งข้อมูล SDC ต่อไปนี้ files:
# /ไดรฟ์/icicle_kit_ref_des/icicle-kit-reference-design-master/MPFS_ICICLE/ส่วนประกอบ/งาน/
PF_CCC_C0/PF_CCC_C0_0/PF_CCC_C0_PF_CCC_C0_0_PF_CCC.sdc
# /ไดรฟ์/icicle_kit_ref_des/icicle-kit-reference-design-master/MPFS_ICICLE/ส่วนประกอบ/งาน/
ดัชนี CLK_DIV/ดัชนี CLK_DIV_0/ดัชนี CLK_DIV_CLK_DIV_0_PF_CLK_DIV.sdc
# /ไดรฟ์/icicle_kit_ref_des/icicle-kit-reference-design-master/MPFS_ICICLE/ส่วนประกอบ/งาน/
ส่ง PLL / ส่ง PLL_0 / ส่ง PLL_0_PF_TX_PLL.sdc
# /ไดรฟ์/icicle_kit_ref_des/icicle-kit-reference-design-master/MPFS_ICICLE/ส่วนประกอบ/งาน/
DMA_INITIATOR/DMA_INITIATOR_0/DMA_INITIATOR เวอร์ชัน XNUMX
# /ไดรฟ์/icicle_kit_ref_des/icicle-kit-reference-design-master/MPFS_ICICLE/ส่วนประกอบ/งาน/
FIC0_INITIATOR/FIC0_INITIATOR_0/FIC0_INITIATOR เวอร์ชัน XNUMX
# /ไดรฟ์/icicle_kit_ref_des/icicle-kit-reference-design-master/MPFS_ICICLE/ส่วนประกอบ/งาน/
แบบฟอร์ม ICICLE_MSS/แบบฟอร์ม ICICLE_MSS.sdc
# /ไดรฟ์/icicle_kit_ref_des/icicle-kit-reference-design-master/MPFS_ICICLE/ส่วนประกอบ/งาน/
PF_PCIE_C0/PF_PCIE_C0_0/PF_PCIE_C0_PF_PCIE_C0_0_PF_PCIE.sdc
# /ไดรฟ์/icicle_kit_ref_des/icicle-kit-reference-design-master/MPFS_ICICLE/ส่วนประกอบ/งาน/
การกำหนดค่า PCIE_INITIATOR/PCIE_INITIATOR_0/PCIE_INITIATOR.sdc
# /ไดรฟ์/aPA5M/แกน/ข้อจำกัด/osc_rc160mhz.sdc
# *** หากมีการแก้ไขใดๆ file จะสูญหายถ้าข้อจำกัดที่ได้มาถูกเรียกใช้ซ้ำอีกครั้ง ***
create_clock -name {CLOCKS_AND_RESETS_inst_0/OSCILLATOR_160MHz_inst_0/OSCILLATOR_160MHz_0/
I_OSC_160/CLK} - ช่วง 6.25
[ รับพิน { CLOCKS_AND_RESETS_inst_0/OSCILLATOR_160MHz_inst_0/OSCILLATOR_160MHz_0/
I_OSC_160/CLK } ] สร้างนาฬิกา - ชื่อ {REF_CLK_PAD_P} - ระยะเวลา 10 [ รับพอร์ต { REF_CLK_PAD_P } ] สร้างนาฬิกา - ชื่อ {CLOCKS_AND_RESETS_inst_0/TRANSMIT_PLL_0/TRANSMIT_PLL_0/txpll_isnt_0/
DIV_CLK} -ช่วงที่ 8
[ รับพิน { CLOCKS_AND_RESETS_inst_0/TRANSMIT_PLL_0/TRANSMIT_PLL_0/txpll_isnt_0/DIV_CLK } ] สร้างนาฬิกาที่สร้างขึ้น - ชื่อ { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CCC_C0_0/pll_inst_0/
OUT0} -คูณด้วย 25 -หารด้วย 32 -แหล่งที่มา
[ รับพิน { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CCC_C0_0/pll_inst_0/REF_CLK_0 } ] - เฟส 0
[ รับพิน { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CCC_C0_0/pll_inst_0/OUT0 } ] สร้าง_นาฬิกาที่สร้างขึ้น - ชื่อ { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CCC_C0_0/pll_inst_0/
OUT1} -คูณด้วย 25 -หารด้วย 32 -แหล่งที่มา
[ รับพิน { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CCC_C0_0/pll_inst_0/REF_CLK_0 } ] - เฟส 0
[ รับพิน { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CCC_C0_0/pll_inst_0/OUT1 } ] สร้าง_นาฬิกาที่สร้างขึ้น - ชื่อ { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CCC_C0_0/pll_inst_0/
OUT2} -คูณด้วย 25 -หารด้วย 32 -แหล่งที่มา
[ รับพิน { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CCC_C0_0/pll_inst_0/REF_CLK_0 } ] - เฟส 0
[ รับพิน { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CCC_C0_0/pll_inst_0/OUT2 } ] สร้าง_นาฬิกาที่สร้างขึ้น - ชื่อ { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CCC_C0_0/pll_inst_0/
OUT3} -คูณด้วย 25 -หารด้วย 64 -แหล่งที่มา
[ รับพิน { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CCC_C0_0/pll_inst_0/REF_CLK_0 } ] - เฟส 0
[ รับพิน { CLOCKS_AND_RESETS_inst_0/CCC_FIC_x_CLK/PF_CC_C0_0/pll_inst_0/OUT3 } ] สร้างชื่อนาฬิกา {CLOCKS_AND_RESETS_inst_0/CLK_160MHz_ถึง_CLK_80MHz/CLK_DIV_0/I_CD/
Y_DIV} -หารด้วย 2 -แหล่งที่มา
[ get_pins { CLOCKS_AND_RESETS_inst_0/CLK_160MHz_ถึง_CLK_80MHz/CLK_DIV_0/I_CD/A } ] [ get_pins { CLOCKS_AND_RESETS_inst_0/CLK_160MHz_ถึง_CLK_80MHz/CLK_DIV_0/I_CD/Y_DIV } ] set_false_path -through [ get_nets { DMA_INITIATOR_inst_0/ARESETN* } ] set_false_path -from [ get_cells { DMA_INITIATOR_inst_0/*/SlvConvertor_loop[*].slvcnv/slvCDC/
genblk1*/rdGrayCounter*/cntGray* } ] - ถึง [ รับเซลล์ { DMA_INITIATOR_inst_0/*/SlvConvertor_loop[*].slvcnv/slvCDC/genblk1*/
rdPtr_s1* } ] set_false_path -จาก [ รับเซลล์ { DMA_INITIATOR_inst_0/*/SlvConvertor_loop[*].slvcnv/slvCDC/
genblk1*/wrGrayCounter*/cntGray* } ] - เป็น [ รับเซลล์ { DMA_INITIATOR_inst_0/*/SlvConvertor_loop[*].slvcnv/slvCDC/genblk1*/
wrPtr_s1* } ] set_false_path -through [ get_nets { FIC0_INITIATOR_inst_0/ARESETN* } ] set_false_path -to [ get_pins { PCIE/PF_PCIE_C0_0/PCIE_1/INTERRUPT[0] PCIE/PF_PCIE_C0_0/
PCIE_1/INTERRUPT[1] PCIE/PF_PCIE_C0_0/PCIE_1/INTERRUPT[2] PCIE/PF_PCIE_C0_0/PCIE_1/
INTERRUPT[3] PCIE/PF_PCIE_C0_0/PCIE_1/INTERRUPT[4] PCIE/PF_PCIE_C0_0/PCIE_1/INTERRUPT[5]
PCIE/PF_PCIE_C0_0/PCIE_1/INTERRUPT[6] PCIE/PF_PCIE_C0_0/PCIE_1/INTERRUPT[7] PCIE/PF_PCIE_C0_0/
PCIE_1/WAKEREQ PCIE/PF_PCIE_C0_0/PCIE_1/MPERST_N } ] set_false_path -จาก [ get_pins { PCIE/PF_PCIE_C0_0/PCIE_1/TL_CLK } ] set_false_path -ผ่าน [ get_nets { PCIE_INITIATOR_inst_0/ARESETN* } ]
ภาคผนวก B—การนำเข้าไลบรารีจำลองสู่สภาพแวดล้อมจำลอง (ถามคำถาม)
โปรแกรมจำลองเริ่มต้นสำหรับการจำลอง RTL ด้วย Libero SoC คือ ModelSim ME Pro
ไลบรารีที่คอมไพล์ไว้ล่วงหน้าสำหรับเครื่องจำลองเริ่มต้นจะพร้อมใช้งานโดยติดตั้ง Libero ที่ไดเร็กทอรี /Designer/lib/modelsimpro/precompiled/vlog for® รองรับตระกูล Libero SoC ยังรองรับรุ่นจำลองบุคคลที่สามอื่นๆ ของ ModelSim, Questasim, VCS, Xcelium
, Active HDL และ Riviera Pro ดาวน์โหลดไลบรารีที่คอมไพล์ล่วงหน้าตามลำดับจาก Libero SoC v12.0 และใหม่กว่า ขึ้นอยู่กับโปรแกรมจำลองและเวอร์ชันของมัน
คล้ายกับสภาพแวดล้อม Libero, run.do file จะต้องสร้างขึ้นเพื่อรันการจำลองภายนอก Libero
สร้าง run.do ง่ายๆ file ซึ่งมีคำสั่งในการสร้างไลบรารีสำหรับรวบรวมผลลัพธ์ การแมปไลบรารี การคอมไพล์ และการจำลอง ทำตามขั้นตอนเพื่อสร้างไฟล์ run.do ขั้นพื้นฐาน file.
- สร้างไลบรารีเชิงตรรกะเพื่อจัดเก็บผลลัพธ์การคอมไพล์โดยใช้คำสั่ง vlib vlib presynth
- แม็ปชื่อไลบรารีลอจิคัลไปยังไดเร็กทอรีไลบรารีที่คอมไพล์ไว้ล่วงหน้าโดยใช้คำสั่ง vmap vmap -
- รวบรวมแหล่งที่มา files—ใช้คำสั่งคอมไพเลอร์เฉพาะภาษาเพื่อคอมไพล์การออกแบบ fileเข้าสู่ไดเร็กทอรีการทำงาน
– vlog สำหรับ .v/.sv
– vcom สำหรับ .vhd - โหลดการออกแบบสำหรับการจำลองโดยใช้คำสั่ง vsim โดยระบุชื่อของโมดูลระดับบนสุดใดๆ
- จำลองการออกแบบโดยใช้คำสั่ง run
หลังจากโหลดการออกแบบแล้ว เวลาจำลองจะถูกตั้งเป็นศูนย์ และคุณสามารถป้อนคำสั่งรันเพื่อเริ่มจำลองได้
ในหน้าต่างทรานสคริปต์จำลอง ให้ดำเนินการ run.do file ขณะที่รันให้รันการจำลองampเลอรัน.โด file ดังต่อไปนี้.
ตั้งค่า ACTELLIBNAME แบบเงียบๆ PolarFire ตั้งค่า PROJECT_DIR “W:/Test/basic_test” แบบเงียบๆ ถ้า
{[file มี presynth/_info อยู่]} { echo “INFO: ไลบรารีจำลอง presynth มีอยู่” } อื่น ๆ
{ file ลบ -force presynth vlib presynth } vmap presynth presynth vmap PolarFire
“X:/Libero/Designer/lib/modelsimpro/precompiled/vlog/PolarFire” vlog -sv -work presynth
“${PROJECT_DIR}/hdl/top.v” vlog “+incdir+${PROJECT_DIR}/stimulus” -sv -work presynth “$
{PROJECT_DIR}/stimulus/tb.v” vsim -L PolarFire -L presynth -t 1ps presynth.tb เพิ่มคลื่น /tb/*
รัน 1000ns log /tb/* ออก
ภาคผนวก C—การได้มาซึ่งข้อจำกัด (ถามคำถาม)
ภาคผนวกนี้จะอธิบายคำสั่ง Derive Constraints Tcl
9.1 การได้มาซึ่งข้อจำกัดคำสั่ง Tcl (ถามคำถาม)
ยูทิลิตี้ derive_constraints ช่วยให้คุณได้รับข้อจำกัดจาก RTL หรือตัวกำหนดค่าภายนอกสภาพแวดล้อมการออกแบบ Libero SoC หากต้องการสร้างข้อจำกัดสำหรับการออกแบบของคุณ คุณต้องมี User HDL, Component HDL และ Component Constraints files. ข้อจำกัดของส่วนประกอบ SDC files มีจำหน่ายภายใต้ /ส่วนประกอบ/งาน/ - / ไดเร็กทอรีหลังจากกำหนดค่าและสร้างส่วนประกอบ
ข้อจำกัดของแต่ละส่วนประกอบ file ประกอบด้วยคำสั่ง set_component tcl (ระบุชื่อส่วนประกอบ) และรายการข้อจำกัดที่สร้างขึ้นหลังการกำหนดค่า ข้อจำกัดจะสร้างขึ้นตามการกำหนดค่าและเฉพาะเจาะจงกับส่วนประกอบแต่ละชิ้น
Exampบทที่ 9-1 ข้อจำกัดของส่วนประกอบ File สำหรับแกน PF_CCC
นี่คืออดีตampข้อจำกัดของส่วนประกอบ file สำหรับแกน PF_CCC:
ตั้งค่าส่วนประกอบ PF_CCC_C0_PF_CCC_C0_0_PF_CCC
# บริษัท ไมโครชิป จำกัด
# วันที่ : 2021 ต.ค. 26 04:36:00 น.
# นาฬิกาพื้นฐานสำหรับ PLL #0
create_clock -period 10 [ get_pins { pll_inst_0/REF_CLK_0 } ] create_generated_clock -divide_by 1 -source [ get_pins { pll_inst_0/
REF_CLK_0 } ] -phase 0 [ get_pins { pll_inst_0/OUT0 } ] ที่นี่ create_clock และ create_generated_clock เป็นข้อจำกัดของนาฬิกาอ้างอิงและเอาต์พุตตามลำดับ ซึ่งสร้างขึ้นตามการกำหนดค่า
9.1.1 การทำงานกับยูทิลิตี้ derive_constraints (ถามคำถาม)
อนุมานข้อจำกัดที่ผ่านการออกแบบและจัดสรรข้อจำกัดใหม่สำหรับแต่ละอินสแตนซ์ของส่วนประกอบตาม SDC ของส่วนประกอบที่ให้ไว้ก่อนหน้านี้ fileสำหรับนาฬิกาอ้างอิง CCC นาฬิกาจะย้อนกลับผ่านการออกแบบเพื่อค้นหาแหล่งที่มาของนาฬิกาอ้างอิง หากแหล่งที่มาเป็น I/O ข้อจำกัดของนาฬิกาอ้างอิงจะถูกกำหนดบน I/O หากเป็นเอาต์พุต CCC หรือแหล่งที่มาของนาฬิกาอื่น (เช่นample, Transceiver, oscillator) จะใช้สัญญาณนาฬิกาจากส่วนประกอบอื่นและรายงานคำเตือนหากช่วงเวลาไม่ตรงกัน ข้อจำกัดที่ได้มาจะจัดสรรข้อจำกัดสำหรับแมโครบางตัว เช่น ออสซิลเลเตอร์บนชิป หากคุณมีใน RTL ของคุณ
ในการเรียกใช้ยูทิลิตี้ derive_constraints คุณต้องระบุไฟล์ .tcl file อาร์กิวเมนต์บรรทัดคำสั่งพร้อมข้อมูลต่อไปนี้ตามลำดับที่ระบุ
- ระบุข้อมูลอุปกรณ์โดยใช้ข้อมูลในส่วน set_device
- ระบุเส้นทางไปยัง RTL fileโดยใช้ข้อมูลในส่วน read_verilog หรือ read_vhdl
- ตั้งค่าโมดูลระดับบนสุดโดยใช้ข้อมูลในส่วน set_top_level
- ระบุเส้นทางไปยังส่วนประกอบ SDC fileโดยใช้ข้อมูลในส่วน read_sdc หรือ read_ndc
- ดำเนินการ fileโดยใช้ข้อมูลในส่วน derive_constraints
- ระบุเส้นทางไปยังข้อจำกัดที่ได้รับจาก SDC file โดยใช้ข้อมูลในส่วน write_sdc หรือ write_pdc หรือ write_ndc
Exampบทที่ 9-2 การดำเนินการและเนื้อหาของ derive.tcl File
ต่อไปนี้เป็นอดีตampอาร์กิวเมนต์บรรทัดคำสั่งสำหรับดำเนินการยูทิลิตี้ derive_constraints
- /bin{64}/derive_constraints สืบทอดจาก tcl
เนื้อหาของ derive.tcl file:
# ข้อมูลอุปกรณ์
set_device -family PolarFire -die MPF100T -ความเร็ว -1
# อาร์ทีแอล files
read_verilog - โหมด system_verilog โปรเจ็กต์/ส่วนประกอบ/งาน/txpll0/
txpll0_txpll0_0_PF_TX_PLL.v
read_verilog - โหมด system_verilog {โครงการ/ส่วนประกอบ/งาน/txpll0/txpll0.v}
read_verilog - โหมด system_verilog {โครงการ/ส่วนประกอบ/งาน/xcvr0/I_XCVR/
เอ็กซ์ซีวีอาร์0_I_XCVR_PF_XCVR.v}
read_verilog - โหมด system_verilog {โครงการ/ส่วนประกอบ/งาน/xcvr0/xcvr0.v}
อ่าน_vhdl - โหมด vhdl_2008 {project/hdl/xcvr1.vhd}
#ส่วนประกอบ SDC files
ตั้งค่าระดับสูงสุด {xcvr1}
read_sdc -component {โครงการ/ส่วนประกอบ/งาน/txpll0/txpll0_0/
txpll0_txpll0_0_PF_TX_PLL.sdc}
read_sdc -component {โครงการ/ส่วนประกอบ/งาน/xcvr0/I_XCVR/
สมัครสมาชิก
#ใช้คำสั่ง derive_constraint
การได้รับข้อจำกัด
ผลคะแนน #SDC/PDC/NDC files
เขียน_sdc {โครงการ/ข้อจำกัด/xcvr1_derived_constraints.sdc}
เขียน_pdc {โครงการ/ข้อจำกัด/fp/xcvr1_derived_constraints.pdc}
9.1.2 ตั้งค่าอุปกรณ์ (ถามคำถาม)
คำอธิบาย
ระบุชื่อสกุล ชื่อแม่พิมพ์ และระดับความเร็ว
set_device -ครอบครัว -ตาย -ความเร็ว
ข้อโต้แย้ง
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
-ตระกูล | สตริง | ระบุชื่อครอบครัว ค่าที่เป็นไปได้คือ PolarFire®, PolarFire SoC |
-ตาย | สตริง | ระบุชื่อแม่พิมพ์ |
-ความเร็ว | สตริง | ระบุระดับความเร็วของอุปกรณ์ ค่าที่เป็นไปได้คือ STD หรือ -1 |
ประเภทการส่งคืน | คำอธิบาย |
0 | การสั่งการสำเร็จแล้ว |
1 | คำสั่งล้มเหลว มีข้อผิดพลาดเกิดขึ้น คุณสามารถสังเกตข้อความแสดงข้อผิดพลาดในคอนโซลได้ |
รายการข้อผิดพลาด
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็น—ขาดหาย | ตัวเลือกแม่พิมพ์นั้นเป็นสิ่งจำเป็นและต้องได้รับการระบุไว้ |
ข้อผิดพลาด0005 | ไม่ทราบชื่อรุ่น 'MPF30' | ค่าของตัวเลือก -die ไม่ถูกต้อง ดูรายการค่าที่เป็นไปได้ในคำอธิบายของตัวเลือก |
ข้อผิดพลาด0023 | พารามิเตอร์—die ไม่มีค่า | เลือกกำหนดตัวเลือกตายโดยไม่มีค่า |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็น—ครอบครัวขาดหายไป | ตัวเลือกครอบครัวนั้นเป็นสิ่งจำเป็นและจะต้องระบุไว้ |
ข้อผิดพลาด0004 | ครอบครัวที่ไม่ทราบชื่อ 'PolarFire®' | ตัวเลือกครอบครัวไม่ถูกต้อง ดูรายการค่าที่เป็นไปได้ในคำอธิบายของตัวเลือก |
………… ต่อ | ||
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0023 | พารามิเตอร์—ครอบครัวไม่มีค่า | ตัวเลือกครอบครัวถูกระบุโดยไม่มีค่า |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็น—ความเร็วขาดหายไป | ตัวเลือกความเร็วนั้นเป็นสิ่งจำเป็นและต้องระบุไว้ |
ข้อผิดพลาด0007 | ไม่ทราบความเร็ว' - | ตัวเลือกความเร็วไม่ถูกต้อง ดูรายการค่าที่เป็นไปได้ในคำอธิบายตัวเลือก |
ข้อผิดพลาด0023 | พารามิเตอร์—ความเร็วไม่มีค่า | ตัวเลือกความเร็วถูกระบุโดยไม่มีค่า |
Example
set_device -family {PolarFire} -die {MPF300T_ES} -speed -1
set_device -family SmartFusion 2 -die M2S090T -ความเร็ว -1
9.1.3 อ่าน_verilog (ถามคำถาม)
คำอธิบาย
อ่าน Verilog file การใช้ Verific
อ่าน_เวอริล็อก [-lib ] [-โหมด -fileชื่อ>
ข้อโต้แย้ง
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
-ลิบ | สตริง | ระบุไลบรารีที่ประกอบด้วยโมดูลที่ต้องการเพิ่มเข้าในไลบรารี |
-โหมด | สตริง | ระบุมาตรฐาน Verilog ค่าที่เป็นไปได้คือ verilog_95, verilog_2k, system_verilog_2005, system_verilog_2009, system_verilog, verilog_ams, verilog_psl, system_verilog_mfcu ค่าจะไม่คำนึงถึงตัวพิมพ์เล็ก/ใหญ่ ค่าเริ่มต้นคือ verilog_2k |
fileชื่อ | สตริง | เวอริล็อก file ชื่อ. |
ประเภทการส่งคืน | คำอธิบาย |
0 | การสั่งการสำเร็จแล้ว |
1 | คำสั่งล้มเหลว มีข้อผิดพลาดเกิดขึ้น คุณสามารถสังเกตข้อความแสดงข้อผิดพลาดในคอนโซลได้ |
รายการข้อผิดพลาด
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0023 | พารามิเตอร์—lib ไม่มีค่า | มีการระบุตัวเลือก lib โดยไม่มีค่า |
ข้อผิดพลาด0023 | พารามิเตอร์—โหมดไม่มีค่า | ตัวเลือกโหมดถูกระบุโดยไม่มีค่า |
ข้อผิดพลาด0015 | โหมดที่ไม่รู้จัก ' - | โหมด Verilog ที่ระบุไม่เป็นที่รู้จัก ดูรายการโหมด Verilog ที่เป็นไปได้ในคำอธิบายตัวเลือกโหมด |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็น file ขาดชื่อ | ไม่มีเวริล็อก file มีเส้นทางให้ |
ข้อผิดพลาด0016 | ล้มเหลวเนื่องจากตัววิเคราะห์ของ Verific | ข้อผิดพลาดทางไวยากรณ์ใน Verilog fileสามารถสังเกตตัววิเคราะห์ของ Verific ได้ในคอนโซลเหนือข้อความแสดงข้อผิดพลาด |
ข้อผิดพลาด0012 | set_device ไม่ถูกเรียกใช้ | ข้อมูลอุปกรณ์ไม่ได้ระบุ ใช้คำสั่ง set_device เพื่ออธิบายอุปกรณ์ |
Example
read_verilog - โหมด system_verilog {component/work/top/top.v}
read_verilog - โหมด system_verilog_mfcu design.v
9.1.4 อ่าน_vhdl (ถามคำถาม)
คำอธิบาย
เพิ่ม VHDL file เข้าไปในรายการ VHDL files.
อ่าน_vhdl [-lib ] [-โหมด -fileชื่อ>
ข้อโต้แย้ง
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
-ลิบ | — | ระบุไลบรารีที่ต้องการเพิ่มเนื้อหา |
-โหมด | — | ระบุมาตรฐาน VHDL ค่าเริ่มต้นคือ VHDL_93 ค่าที่เป็นไปได้คือ vhdl_93, vhdl_87, vhdl_2k, vhdl_2008, vhdl_psl ค่าต่างๆ ไม่คำนึงถึงตัวพิมพ์เล็ก/ใหญ่ |
fileชื่อ | — | วีเอชดีแอล file ชื่อ. |
ประเภทการส่งคืน | คำอธิบาย |
0 | การสั่งการสำเร็จแล้ว |
1 | คำสั่งล้มเหลว มีข้อผิดพลาดเกิดขึ้น คุณสามารถสังเกตข้อความแสดงข้อผิดพลาดในคอนโซลได้ |
รายการข้อผิดพลาด
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0023 | พารามิเตอร์—lib ไม่มีค่า | มีการระบุตัวเลือก lib โดยไม่มีค่า |
ข้อผิดพลาด0023 | พารามิเตอร์—โหมดไม่มีค่า | ตัวเลือกโหมดถูกระบุโดยไม่มีค่า |
ข้อผิดพลาด0018 | โหมดที่ไม่รู้จัก ' - | โหมด VHDL ที่ระบุไม่เป็นที่รู้จัก ดูรายการโหมด VHDL ที่เป็นไปได้ในคำอธิบายตัวเลือกโหมด |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็น file ขาดชื่อ | ไม่มี VHDL file มีเส้นทางให้ |
ข้อผิดพลาด0019 | ไม่สามารถลงทะเบียน incorrect_path.v ได้ file | VHDL ที่ระบุ file ไม่มีอยู่หรือไม่มีสิทธิ์ในการอ่าน |
ข้อผิดพลาด0012 | set_device ไม่ถูกเรียกใช้ | ข้อมูลอุปกรณ์ไม่ได้ระบุ ใช้คำสั่ง set_device เพื่ออธิบายอุปกรณ์ |
Example
อ่าน_vhdl - โหมด vhdl_2008 osc2dfn.vhd
อ่าน_vhdl {hdl/top.vhd}
9.1.5 ตั้งค่าระดับสูงสุด (ถามคำถาม)
คำอธิบาย
ระบุชื่อของโมดูลระดับบนสุดใน RTL
ตั้งค่าระดับบนสุด [-lib -
ข้อโต้แย้ง
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
-ลิบ | สตริง | ไลบรารีเพื่อค้นหาโมดูลหรือเอนทิตีระดับสูงสุด (ทางเลือก) |
ชื่อ | สตริง | ชื่อโมดูลหรือเอนทิตีระดับสูงสุด |
ประเภทการส่งคืน | คำอธิบาย |
0 | การสั่งการสำเร็จแล้ว |
1 | คำสั่งล้มเหลว มีข้อผิดพลาดเกิดขึ้น คุณสามารถสังเกตข้อความแสดงข้อผิดพลาดในคอนโซลได้ |
รายการข้อผิดพลาด
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็นระดับบนสุดขาดหายไป | ตัวเลือกระดับบนสุดนั้นเป็นสิ่งจำเป็นและจะต้องระบุไว้ |
ข้อผิดพลาด0023 | พารามิเตอร์—lib ไม่มีค่า | มีการระบุตัวเลือก lib โดยไม่มีค่า |
ข้อผิดพลาด0014 | ไม่สามารถค้นหาระดับสูงสุดได้ ในห้องสมุด | โมดูลระดับบนสุดที่ระบุไม่ได้ถูกกำหนดไว้ในไลบรารีที่ให้มา หากต้องการแก้ไขข้อผิดพลาดนี้ จำเป็นต้องแก้ไขชื่อโมดูลหรือไลบรารีระดับบนสุด |
ข้อผิดพลาด0017 | การประดิษฐ์ล้มเหลว | ข้อผิดพลาดในกระบวนการจัดทำ RTL สามารถสังเกตข้อความแสดงข้อผิดพลาดได้จากคอนโซล |
Example
set_top_level {ด้านบน}
set_top_level -lib hdl ด้านบน
9.1.6 read_sdc (ถามคำถาม)
คำอธิบาย
อ่าน SDC file เข้าสู่ฐานข้อมูลส่วนประกอบ
read_sdc - ส่วนประกอบfileชื่อ>
ข้อโต้แย้ง
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
-ส่วนประกอบ | — | นี่เป็นแฟล็กบังคับสำหรับคำสั่ง read_sdc เมื่อเราได้รับข้อจำกัด |
fileชื่อ | สตริง | เส้นทางสู่ SDC file. |
ประเภทการส่งคืน | คำอธิบาย |
0 | การสั่งการสำเร็จแล้ว |
1 | คำสั่งล้มเหลว มีข้อผิดพลาดเกิดขึ้น คุณสามารถสังเกตข้อความแสดงข้อผิดพลาดในคอนโซลได้ |
รายการข้อผิดพลาด
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็น file ขาดชื่อครับ. | ตัวเลือกบังคับ file ไม่ได้ระบุชื่อ. |
ข้อผิดพลาด0000 | เอสดีซี file <file_path> ไม่สามารถอ่านได้ | SDC ที่ระบุ file ไม่มีสิทธิ์ในการอ่าน |
ข้อผิดพลาด0001 | ไม่สามารถเปิดได้file_เส้นทาง> file. | ศูนย์พัฒนาเด็กเล็ก file ไม่มีอยู่ เส้นทางจะต้องได้รับการแก้ไข |
ข้อผิดพลาด0008 | ขาดคำสั่ง set_component ในfile_เส้นทาง> file | ส่วนประกอบที่ระบุของ SDC file ไม่ระบุส่วนประกอบ |
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0009 | <List of errors from sdc file> | ศูนย์พัฒนาเด็กเล็ก file มีคำสั่ง sdc ที่ไม่ถูกต้อง ตัวอย่างเช่นampเล,
เมื่อมีข้อผิดพลาดในข้อจำกัด set_multicycle_path: ข้อผิดพลาดขณะดำเนินการคำสั่ง read_sdc: ในfile_เส้นทาง> file: ข้อผิดพลาดในคำสั่ง set_multicycle_path: พารามิเตอร์ที่ไม่รู้จัก [get_cells {reg_a}] |
Example
read_sdc -component {./component/work/ccc0/ccc0_0/ccc0_ccc0_0_PF_CCC.sdc}
9.1.7 read_ndc (ถามคำถาม)
คำอธิบาย
อ่าน NDC file เข้าสู่ฐานข้อมูลส่วนประกอบ
read_ndc - ส่วนประกอบfileชื่อ>
ข้อโต้แย้ง
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
-ส่วนประกอบ | — | นี่เป็นแฟล็กบังคับสำหรับคำสั่ง read_ndc เมื่อเราได้รับข้อจำกัด |
fileชื่อ | สตริง | เส้นทางสู่ NDC file. |
ประเภทการส่งคืน | คำอธิบาย |
0 | การสั่งการสำเร็จแล้ว |
1 | คำสั่งล้มเหลว มีข้อผิดพลาดเกิดขึ้น คุณสามารถสังเกตข้อความแสดงข้อผิดพลาดในคอนโซลได้ |
รายการข้อผิดพลาด
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0001 | ไม่สามารถเปิดได้file_เส้นทาง> file | เอ็นดีซี file ไม่มีอยู่ เส้นทางจะต้องได้รับการแก้ไข |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็น—AtclParamO_ หายไป | ตัวเลือกบังคับ fileไม่ได้ระบุชื่อ. |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็น—ส่วนประกอบหายไป | ตัวเลือกส่วนประกอบเป็นสิ่งจำเป็นและต้องระบุไว้ |
ข้อผิดพลาด0000 | เอ็นดีซี file 'file' _path>' ไม่สามารถอ่านได้ | NDC ที่ระบุ file ไม่มีสิทธิ์ในการอ่าน |
Example
read_ndc - ส่วนประกอบ {ส่วนประกอบ/งาน/ccc1/ccc1_0/ccc_comp.ndc}
9.1.8 derive_constraints (ถามคำถาม)
คำอธิบาย
สร้างอินสแตนซ์ส่วนประกอบ SDC fileเข้าสู่ฐานข้อมูลระดับการออกแบบ
การได้รับข้อจำกัด
ข้อโต้แย้ง
ประเภทการส่งคืน | คำอธิบาย |
0 | การสั่งการสำเร็จแล้ว |
1 | คำสั่งล้มเหลว มีข้อผิดพลาดเกิดขึ้น คุณสามารถสังเกตข้อความแสดงข้อผิดพลาดในคอนโซลได้ |
รายการข้อผิดพลาด
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0013 | ระดับสูงสุดไม่ได้ถูกกำหนด | ซึ่งหมายความว่าโมดูลหรือเอนทิตีระดับสูงสุดไม่ได้รับการระบุ หากต้องการแก้ไขการเรียกนี้ ให้ใช้คำสั่ง คำสั่ง set_top_level ก่อนคำสั่ง derive_constraints |
Example
การได้รับข้อจำกัด
9.1.9 write_sdc (ถามคำถาม)
คำอธิบาย
เขียนข้อจำกัด file ในรูปแบบ SDC
เขียน SDCfileชื่อ>
ข้อโต้แย้ง
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
<fileชื่อ> | สตริง | เส้นทางสู่ SDC file จะถูกสร้างขึ้น นี่เป็นตัวเลือกบังคับ หาก file มีอยู่มันจะถูกเขียนทับ |
ประเภทการส่งคืน | คำอธิบาย |
0 | การสั่งการสำเร็จแล้ว |
1 | คำสั่งล้มเหลว มีข้อผิดพลาดเกิดขึ้น คุณสามารถสังเกตข้อความแสดงข้อผิดพลาดในคอนโซลได้ |
รายการข้อผิดพลาด
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0003 | ไม่สามารถเปิดได้file เส้นทาง> file. | File เส้นทางไม่ถูกต้อง ตรวจสอบว่าไดเร็กทอรีหลักมีอยู่หรือไม่ |
ข้อผิดพลาด0002 | เอสดีซี file 'file path>' ไม่สามารถเขียนได้ | SDC ที่ระบุ file ไม่มีสิทธิ์ในการเขียน |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็น file ขาดชื่อครับ. | ศูนย์พัฒนาเด็กเล็ก file เส้นทางเป็นตัวเลือกที่จำเป็นและจะต้องระบุไว้ |
Example
write_sdc “sdc ที่ได้มา”
9.1.10 write_pdc (ถามคำถาม)
คำอธิบาย
เขียนข้อจำกัดทางกายภาพ (ได้รับข้อจำกัดเท่านั้น)
เขียน pdcfileชื่อ>
ข้อโต้แย้ง
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
<fileชื่อ> | สตริง | เส้นทางสู่ PDC file จะถูกสร้างขึ้น นี่เป็นตัวเลือกบังคับ หาก file เส้นทางมีอยู่มันจะถูกเขียนทับ |
ประเภทการส่งคืน | คำอธิบาย |
0 | การสั่งการสำเร็จแล้ว |
1 | คำสั่งล้มเหลว มีข้อผิดพลาดเกิดขึ้น คุณสามารถสังเกตข้อความแสดงข้อผิดพลาดในคอนโซลได้ |
รายการข้อผิดพลาด
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0003 | ไม่สามารถเปิดได้file เส้นทาง> file | การ file เส้นทางไม่ถูกต้อง ตรวจสอบว่าไดเร็กทอรีหลักมีอยู่หรือไม่ |
ข้อผิดพลาด0002 | พีดีซี file 'file path>' ไม่สามารถเขียนได้ | PDC ที่ระบุ file ไม่มีสิทธิ์ในการเขียน |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็น file ขาดชื่อ | พีดีซี file เส้นทางเป็นตัวเลือกที่จำเป็นและจะต้องระบุไว้ |
Example
write_pdc “ที่มาจาก pdc”
9.1.11 write_ndc (ถามคำถาม)
คำอธิบาย
เขียนข้อจำกัด NDC ลงใน file.
เขียน_ndcfileชื่อ>
ข้อโต้แย้ง
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
fileชื่อ | สตริง | เส้นทางสู่ NDC file จะถูกสร้างขึ้น นี่เป็นตัวเลือกบังคับ หาก file มีอยู่มันจะถูกเขียนทับ |
ประเภทการส่งคืน | คำอธิบาย |
0 | การสั่งการสำเร็จแล้ว |
1 | คำสั่งล้มเหลว มีข้อผิดพลาดเกิดขึ้น คุณสามารถสังเกตข้อความแสดงข้อผิดพลาดในคอนโซลได้ |
รายการข้อผิดพลาด
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0003 | ไม่สามารถเปิดได้file_เส้นทาง> file. | File เส้นทางไม่ถูกต้อง ไดเร็กทอรีหลักไม่มีอยู่ |
ข้อผิดพลาด0002 | เอ็นดีซี file 'file' _path>' ไม่สามารถเขียนได้ | NDC ที่ระบุ file ไม่มีสิทธิ์ในการเขียน |
ข้อผิดพลาด0023 | พารามิเตอร์ที่จำเป็น _AtclParamO_ หายไป | เอ็นดีซี file เส้นทางเป็นตัวเลือกที่จำเป็นและจะต้องระบุไว้ |
Example
write_ndc “อนุมาน.ndc”
9.1.12 add_include_path (ถามคำถาม)
คำอธิบาย
ระบุเส้นทางในการค้นหารวม fileเมื่ออ่าน RTL files.
เพิ่มเส้นทางรวม
ข้อโต้แย้ง
พารามิเตอร์ | พิมพ์ | คำอธิบาย |
ไดเรกทอรี | สตริง | ระบุเส้นทางในการค้นหารวม fileเมื่ออ่าน RTL fileส. ตัวเลือกนี้เป็นสิ่งจำเป็น |
ประเภทการส่งคืน | คำอธิบาย |
0 | การสั่งการสำเร็จแล้ว |
ประเภทการส่งคืน | คำอธิบาย |
1 | คำสั่งล้มเหลว มีข้อผิดพลาดเกิดขึ้น คุณสามารถสังเกตข้อความแสดงข้อผิดพลาดในคอนโซลได้ |
รายการข้อผิดพลาด
รหัสข้อผิดพลาด | ข้อความแสดงข้อผิดพลาด | คำอธิบาย |
ข้อผิดพลาด0023 | ขาดการรวมเส้นทางพารามิเตอร์ที่จำเป็น | ตัวเลือกไดเร็กทอรีเป็นสิ่งจำเป็นและต้องระบุไว้ |
หมายเหตุ: หาก เส้นทางไดเร็กทอรีไม่ถูกต้อง add_include_path จะถูกส่งต่อไปโดยไม่มีข้อผิดพลาด
อย่างไรก็ตาม คำสั่ง read_verilog/read_vhd จะล้มเหลวเนื่องจากตัวแยกวิเคราะห์ของ Verific
Example
เพิ่ม_include_path ส่วนประกอบ/งาน/COREABC0/COREABC0_0/rtl/vlog/core
ประวัติการแก้ไข (ถามคำถาม)
ประวัติการแก้ไขจะอธิบายการเปลี่ยนแปลงที่เกิดขึ้นในเอกสาร โดยจะแสดงรายการการเปลี่ยนแปลงตามการแก้ไข โดยเริ่มจากการเผยแพร่ครั้งล่าสุด
การแก้ไข | วันที่ | คำอธิบาย |
F | 08/2024 | มีการเปลี่ยนแปลงต่อไปนี้ในการแก้ไขนี้: • อัปเดตส่วนภาคผนวก B—การนำเข้าไลบรารีจำลองสู่สภาพแวดล้อมจำลอง |
E | 08/2024 | มีการเปลี่ยนแปลงต่อไปนี้ในการแก้ไขนี้: • อัปเดตส่วนด้านบนview. • อัปเดตส่วน Derived SDC File. • อัปเดตส่วนภาคผนวก B—การนำเข้าไลบรารีจำลองสู่สภาพแวดล้อมจำลอง |
D | 02/2024 | เอกสารนี้เผยแพร่พร้อมกับ Libero 2024.1 SoC Design Suite โดยไม่มีการเปลี่ยนแปลงจาก v2023.2 ส่วนที่อัปเดต การทำงานกับยูทิลิตี้ derive_constraints |
C | 08/2023 | เอกสารนี้เผยแพร่พร้อมกับ Libero 2023.2 SoC Design Suite โดยไม่มีการเปลี่ยนแปลงจาก v2023.1 |
B | 04/2023 | เอกสารนี้เผยแพร่พร้อมกับ Libero 2023.1 SoC Design Suite โดยไม่มีการเปลี่ยนแปลงจาก v2022.3 |
A | 12/2022 | การแก้ไขเบื้องต้น |
รองรับ Microchip FPGA
กลุ่มผลิตภัณฑ์ Microchip FPGA สนับสนุนผลิตภัณฑ์ด้วยบริการสนับสนุนต่างๆ รวมถึงการบริการลูกค้า ศูนย์สนับสนุนด้านเทคนิคสำหรับลูกค้า a webเว็บไซต์และสำนักงานขายทั่วโลก
ขอแนะนำให้ลูกค้าเยี่ยมชมแหล่งข้อมูลออนไลน์ของ Microchip ก่อนที่จะติดต่อฝ่ายสนับสนุน เนื่องจากมีแนวโน้มสูงว่าข้อซักถามของพวกเขาจะได้รับคำตอบแล้ว
ติดต่อศูนย์บริการทางเทคนิคผ่าน webไซต์ที่ www.microchip.com/support. ระบุหมายเลขชิ้นส่วนอุปกรณ์ FPGA เลือกหมวดหมู่เคสที่เหมาะสม และอัปโหลดการออกแบบ fileขณะสร้างกรณีการสนับสนุนทางเทคนิค
ติดต่อฝ่ายบริการลูกค้าสำหรับการสนับสนุนผลิตภัณฑ์ที่ไม่ใช่ด้านเทคนิค เช่น ราคาผลิตภัณฑ์ การอัพเกรดผลิตภัณฑ์ ข้อมูลอัปเดต สถานะการสั่งซื้อ และการอนุญาต
- จากอเมริกาเหนือ โทร 800.262.1060
- จากส่วนอื่นของโลก โทร 650.318.4460
- แฟกซ์จากทุกที่ในโลก 650.318.8044
ข้อมูลไมโครชิป
ไมโครชิป Webเว็บไซต์
Microchip ให้การสนับสนุนออนไลน์ผ่านของเรา webไซต์ที่ www.ไมโครชิป.com/. นี้ webเว็บไซต์นี้ใช้ในการทำ fileและข้อมูลที่ลูกค้าเข้าถึงได้ง่าย เนื้อหาบางส่วนที่เข้าถึงได้ ได้แก่:
- การสนับสนุนผลิตภัณฑ์ – แผ่นข้อมูลและข้อผิดพลาด บันทึกการใช้งาน และ sampโปรแกรม ทรัพยากรการออกแบบ คู่มือผู้ใช้ และเอกสารสนับสนุนฮาร์ดแวร์ ซอฟต์แวร์รุ่นล่าสุด และซอฟต์แวร์ที่เก็บถาวร
- การสนับสนุนทางเทคนิคทั่วไป – คำถามที่พบบ่อย (FAQs), คำขอการสนับสนุนทางเทคนิค, กลุ่มสนทนาออนไลน์, รายชื่อสมาชิกโปรแกรมพันธมิตรการออกแบบของ Microchip
- ธุรกิจของไมโครชิป – คู่มือการเลือกผลิตภัณฑ์และการสั่งซื้อ ข่าวประชาสัมพันธ์ล่าสุดของไมโครชิป รายชื่องานสัมมนาและงานต่างๆ รายชื่อสำนักงานขาย ผู้จัดจำหน่าย และตัวแทนโรงงาน
บริการแจ้งการเปลี่ยนแปลงผลิตภัณฑ์
บริการแจ้งเตือนการเปลี่ยนแปลงผลิตภัณฑ์ของไมโครชิปช่วยให้ลูกค้าทราบข้อมูลล่าสุดเกี่ยวกับผลิตภัณฑ์ของไมโครชิป สมาชิกจะได้รับการแจ้งเตือนทางอีเมลทุกครั้งที่มีการเปลี่ยนแปลง อัปเดต การแก้ไข หรือข้อผิดพลาดที่เกี่ยวข้องกับกลุ่มผลิตภัณฑ์ที่ระบุหรือเครื่องมือการพัฒนาที่สนใจ ในการลงทะเบียนไปที่ www.microchip.com/pcn และปฏิบัติตามคำแนะนำในการลงทะเบียน
การสนับสนุนลูกค้า
ผู้ใช้ผลิตภัณฑ์ Microchip สามารถรับความช่วยเหลือได้ผ่านช่องทางต่างๆ:
- ตัวแทนจำหน่ายหรือตัวแทน
- สำนักงานขายในพื้นที่
- วิศวกรโซลูชันเอ็มเบ็ดเด็ด (ESE)
- การสนับสนุนด้านเทคนิค
ลูกค้าควรติดต่อผู้จัดจำหน่าย ตัวแทน หรือ ESE เพื่อขอรับการสนับสนุน สำนักงานขายในพื้นที่พร้อมให้ความช่วยเหลือลูกค้า รายชื่อสำนักงานขายและสถานที่รวมอยู่ในเอกสารนี้ การสนับสนุนทางเทคนิคมีให้ผ่านทาง webเว็บไซต์อยู่ที่: www.microchip.com/support
คุณสมบัติการป้องกันรหัสอุปกรณ์ไมโครชิป
โปรดทราบรายละเอียดต่อไปนี้เกี่ยวกับคุณลักษณะการป้องกันรหัสบนผลิตภัณฑ์ Microchip:
- ผลิตภัณฑ์ Microchip ตรงตามข้อกำหนดที่ระบุไว้ในแผ่นข้อมูล Microchip เฉพาะของตน
- Microchip เชื่อว่ากลุ่มผลิตภัณฑ์ของตนจะปลอดภัยเมื่อใช้ตามลักษณะที่ต้องการ ภายใต้ข้อกำหนดการทำงาน และภายใต้เงื่อนไขปกติ
- คุณค่าของไมโครชิปและปกป้องสิทธิ์ในทรัพย์สินทางปัญญาอย่างจริงจัง การพยายามละเมิดคุณสมบัติการป้องกันโค้ดของผลิตภัณฑ์ไมโครชิปถือเป็นสิ่งต้องห้ามโดยเด็ดขาด และอาจละเมิดกฎหมาย Digital Millennium Copyright Act
- ทั้ง Microchip และผู้ผลิตเซมิคอนดักเตอร์รายอื่นไม่สามารถรับประกันความปลอดภัยของโค้ดได้ การปกป้องโค้ดไม่ได้หมายความว่าเรารับประกันว่าผลิตภัณฑ์นั้น “ไม่แตกหัก” การปกป้องโค้ดนั้นได้รับการพัฒนาอย่างต่อเนื่อง Microchip มุ่งมั่นที่จะปรับปรุงคุณสมบัติการปกป้องโค้ดของผลิตภัณฑ์ของเราอย่างต่อเนื่อง
ประกาศทางกฎหมาย
สิ่งพิมพ์และข้อมูลในที่นี้สามารถใช้ได้เฉพาะกับผลิตภัณฑ์ของไมโครชิป ซึ่งรวมถึงการออกแบบ ทดสอบ และผสานรวมผลิตภัณฑ์ของไมโครชิปเข้ากับแอปพลิเคชันของคุณ การใช้ข้อมูลนี้ในลักษณะอื่นใดถือเป็นการละเมิดข้อกำหนดเหล่านี้ ข้อมูลเกี่ยวกับแอปพลิเคชันของอุปกรณ์มีให้เพื่อความสะดวกของคุณเท่านั้นและอาจถูกแทนที่ด้วยการอัปเดต เป็นความรับผิดชอบของคุณที่จะต้องตรวจสอบให้แน่ใจว่าใบสมัครของคุณตรงตามข้อกำหนดของคุณ ติดต่อสำนักงานขายของ Microchip ในพื้นที่ของคุณเพื่อขอรับการสนับสนุนเพิ่มเติม หรือขอรับการสนับสนุนเพิ่มเติมที่ www.microchip.com/en-us/support/design-help/client-support-services.
ข้อมูลนี้จัดทำโดยไมโครชิพ “ตามที่เป็น” MICROCHIP ไม่รับรองหรือรับประกันใด ๆ ไม่ว่าจะโดยชัดแจ้งหรือโดยนัย เป็นลายลักษณ์อักษรหรือด้วยวาจา ตามกฎหมายหรืออื่น ๆ ที่เกี่ยวข้องกับข้อมูล รวมถึงแต่ไม่จำกัดเพียงการรับประกันโดยนัยใด ๆ ของการไม่ละเมิด ความสามารถในการขาย และความเหมาะสมสำหรับวัตถุประสงค์เฉพาะหรือวัตถุประสงค์เฉพาะ ที่เกี่ยวข้องกับสภาพ คุณภาพ หรือประสิทธิภาพของมัน ไม่ว่าในกรณีใดก็ตาม MICROCHIP จะไม่รับผิดต่อความสูญเสีย ความเสียหาย ต้นทุน หรือค่าใช้จ่ายใดๆ ที่เกี่ยวข้องกับข้อมูลหรือการใช้งานที่เกิดขึ้น แม้ว่า MICROCHIP จะได้รับคำแนะนำจาก ความเป็นไปได้หรือความเสียหายสามารถคาดการณ์ได้ ภายในขอบเขตสูงสุดที่กฎหมายอนุญาต ความรับผิดทั้งหมดของไมโครชิปต่อการเรียกร้องใดๆ ที่เกี่ยวข้องกับข้อมูลหรือการใช้งานจะไม่เกินจำนวนค่าธรรมเนียม (ถ้ามี) ที่คุณได้จ่ายโดยตรงให้กับไมโครชิพสำหรับข้อมูลดังกล่าว
การใช้เครื่องมือไมโครชิปในการช่วยชีวิตและ/หรือการใช้งานด้านความปลอดภัยเป็นความเสี่ยงของผู้ซื้อโดยสิ้นเชิง และผู้ซื้อตกลงที่จะปกป้อง ชดเชย และทำให้ไมโครชิปไม่ต้องรับผิดใดๆ จากความเสียหาย การเรียกร้อง การฟ้องร้อง หรือค่าใช้จ่ายใดๆ ทั้งสิ้นที่เกิดจากการใช้งานดังกล่าว จะไม่มีการให้ใบอนุญาตใดๆ ไม่ว่าโดยปริยายหรือด้วยวิธีอื่นใด ภายใต้สิทธิ์ในทรัพย์สินทางปัญญาของไมโครชิป เว้นแต่จะระบุไว้เป็นอย่างอื่น
เครื่องหมายการค้า
ชื่อและโลโก้ Microchip, โลโก้ Microchip, Adaptec, AVR, โลโก้ AVR, AVR Freaks, BesTime, BitCloud, CryptoMemory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheck, LinkMD, maXStylus, maXTouch, MediaLB, megaAVR, Microsemi, โลโก้ Microsemi, MOST, โลโก้ MOST, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, โลโก้ PIC32, PolarFire, Prochip Designer, QTouch, SAM-BA, SenGenuity, SpyNIC, SST, โลโก้ SST, SuperFlash, Symmetricom , SyncServer, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron และ XMEGA เป็นเครื่องหมายการค้าจดทะเบียนของ Microchip Technology Incorporated ในสหรัฐอเมริกาและประเทศอื่นๆ
AgileSwitch, ClockWorks, บริษัทโซลูชั่นการควบคุมแบบฝัง, EtherSynch, Flashtec, การควบคุมความเร็วไฮเปอร์, โหลด HyperLight, Libero, motorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProASIC Plus, โลโก้ ProASIC Plus, Quiet-Wire, SmartFusion, SyncWorld, TimeCesium, TimeHub, TimePictra, TimeProvider และ ZL เป็นเครื่องหมายการค้าจดทะเบียนของ Microchip Technology Incorporated ในสหรัฐอเมริกา
การปราบปรามคีย์ที่อยู่ติดกัน, AKS, ยุคอะนาล็อกสำหรับยุคดิจิทัล, ตัวเก็บประจุใดๆ, AnyIn, AnyOut, การสลับแบบเสริม, BlueSky, BodyCom, Clockstudio, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM.net, การจับคู่ค่าเฉลี่ยแบบไดนามิก , DAM, ECAN, Espresso T1S, EtherGREEN, EyeOpen, GridTime, IdealBridge, IGaT, การเขียนโปรแกรมแบบอนุกรมในวงจร, ICSP, INICnet, การขนานแบบอัจฉริยะ, IntelliMOS, การเชื่อมต่อระหว่างชิป, JitterBlocker, Knob-on-Display, MarginLink, maxCrypto, สูงสุดView, memBrain, Mindi, MiWi, MPASM, MPF, โลโก้ที่ผ่านการรับรอง MPLAB, MPLIB, MPLINK, mSiC, MultiTRAK, NetDetach, การสร้างโค้ดรอบรู้, PICDEM, PICDEM.net, PICkit, PICtail, Power MOS IV, Power MOS 7, PowerSmart, PureSilicon , QMatrix, REAL ICE, Ripple Blocker, RTAX, RTG4, SAM-ICE, Serial Quad I/O, simpleMAP, SimpliPHY, SmartBuffer, SmartHLS, SMART-IS, storClad, SQI, SuperSwitcher, SuperSwitcher II, Switchtec, SynchroPHY, ความทนทานรวม , เวลาที่เชื่อถือได้, TSHARC, ทัวริง, USBCheck, VariSense, VectorBlox, VeriPHY, ViewSpan, WiperLock, XpressConnect และ ZENA เป็นเครื่องหมายการค้าของ Microchip Technology Incorporated ในสหรัฐอเมริกาและประเทศอื่นๆ
SQTP เป็นเครื่องหมายบริการของ Microchip Technology Incorporated ในสหรัฐอเมริกา
โลโก้ Adaptec, Frequency on Demand, Silicon Storage Technology และ Symmcom เป็นเครื่องหมายการค้าจดทะเบียนของ Microchip Technology Inc. ในประเทศอื่นๆ
GestIC เป็นเครื่องหมายการค้าจดทะเบียนของ Microchip Technology Germany II GmbH & Co. KG ซึ่งเป็นบริษัทในเครือของ Microchip Technology Inc. ในประเทศอื่นๆ
เครื่องหมายการค้าอื่น ๆ ทั้งหมดที่กล่าวถึงในที่นี้เป็นทรัพย์สินของบริษัทที่เกี่ยวข้อง
2024 บริษัท Microchip Technology Incorporated และบริษัทในเครือ สงวนลิขสิทธิ์
ISBN: 978-1-6683-0183-8
ระบบการจัดการคุณภาพ
สำหรับข้อมูลเกี่ยวกับระบบการจัดการคุณภาพของ Microchip โปรดไปที่ www.microchip.com/quality.
การขายและบริการทั่วโลก
อเมริกา | เอเชีย/แปซิฟิก | เอเชีย/แปซิฟิก | ยุโรป |
สำนักงานใหญ่ 2355 เวสต์แชนด์เลอร์บูเลอวาร์ด แชนด์เลอร์ AZ 85224-6199 โทร: 480-792-7200 โทรสาร: 480-792-7277 การสนับสนุนด้านเทคนิค: www.microchip.com/support Web ที่อยู่: www.ไมโครชิป.คอม แอตแลนตา ดูลูธ, จอร์เจีย โทร: 678-957-9614 โทรสาร: 678-957-1455 ออสติน, เท็กซัส โทร: 512-257-3370 บอสตัน เวสต์โบโรห์, แมสซาชูเซตส์ โทร: 774-760-0087 โทรสาร: 774-760-0088 ชิคาโก อิตาสกา อิลลินอยส์ โทร: 630-285-0071 โทรสาร: 630-285-0075 ดัลลาส แอดดิสันเท็กซัส โทร: 972-818-7423 โทรสาร: 972-818-2924 ดีทรอยต์ โนวี มิชิแกน โทร: 248-848-4000 ฮูสตัน, เท็กซัส โทร: 281-894-5983 อินเดียนาโพลิส โนเบิลส์วิลล์, อินเดียน่า โทร: 317-773-8323 โทรสาร: 317-773-5453 โทร: 317-536-2380 ลอสแองเจลีส มิชชัน วีโฮ แคลิฟอร์เนีย โทร: 949-462-9523 โทรสาร: 949-462-9608 โทร: 951-273-7800 ราลีห์, นอร์ทแคโรไลนา โทร: 919-844-7510 นิวยอร์ก, นิวยอร์ก โทร: 631-435-6000 ซานโฮเซ แคลิฟอร์เนีย โทร: 408-735-9110 โทร: 408-436-4270 แคนาดา – โตรอนโต โทร: 905-695-1980 โทรสาร: 905-695-2078 |
ออสเตรเลีย – ซิดนีย์ โทร : 61-2-9868-6733 ประเทศจีน – ปักกิ่ง โทร : 86-10-8569-7000 จีน – เฉิงตู โทร : 86-28-8665-5511 ประเทศจีน – ฉงชิ่ง โทร : 86-23-8980-9588 จีน – ตงกวน โทร : 86-769-8702-9880 ประเทศจีน – กว่างโจว โทร : 86-20-8755-8029 จีน – หางโจว โทร : 86-571-8792-8115 จีน – ฮ่องกง SAR โทร: 852-2943-5100 จีน – หนานจิง โทร : 86-25-8473-2460 จีน – ชิงเต่า โทร : 86-532-8502-7355 ประเทศจีน – เซี่ยงไฮ้ โทร : 86-21-3326-8000 จีน – เสิ่นหยาง โทร : 86-24-2334-2829 จีน – เซินเจิ้น โทร : 86-755-8864-2200 จีน – ซูโจว โทร : 86-186-6233-1526 จีน – หวู่ฮั่น โทร : 86-27-5980-5300 จีน – ซีอาน โทร : 86-29-8833-7252 จีน – เซียะเหมิน โทร: 86-592-2388138 จีน – จูไห่ โทร: 86-756-3210040 |
อินเดีย – บังกาลอร์ โทร : 91-80-3090-4444 อินเดีย – นิวเดลี โทร : 91-11-4160-8631 อินเดีย – ปูเน่ โทร : 91-20-4121-0141 ญี่ปุ่น – โอซาก้า โทร : 81-6-6152-7160 ญี่ปุ่น – โตเกียว โทร: 81-3-6880-3770 เกาหลี – แดกู โทร : 82-53-744-4301 เกาหลี – โซล โทร : 82-2-554-7200 มาเลเซีย - กัวลาลัมเปอร์ โทร : 60-3-7651-7906 มาเลเซีย – ปีนัง โทร : 60-4-227-8870 ฟิลิปปินส์ – มะนิลา โทร : 63-2-634-9065 สิงคโปร์ โทร: 65-6334-8870 ไต้หวัน – Hsin Chu โทร : 886-3-577-8366 ไต้หวัน – เกาสง โทร : 886-7-213-7830 ไต้หวัน – ไทเป โทร : 886-2-2508-8600 ประเทศไทย – กรุงเทพมหานคร โทร : 66-2-694-1351 เวียดนาม – โฮจิมินห์ โทร : 84-28-5448-2100 |
ออสเตรีย – เวลส์ โทร : 43-7242-2244-39 แฟกซ์ : 43-7242-2244-393 เดนมาร์ก – โคเปนเฮเกน โทร: 45-4485-5910 โทรสาร : 45-4485-2829 ฟินแลนด์ – เอสโป โทร : 358-9-4520-820 ฝรั่งเศส – ปารีส Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79 เยอรมนี – การชิง โทร: 49-8931-9700 เยอรมนี – ฮาน โทร: 49-2129-3766400 เยอรมนี – ไฮลบรอนน์ โทร: 49-7131-72400 เยอรมนี – คาร์ลสรูเฮอ โทร: 49-721-625370 เยอรมนี – มิวนิค Tel: 49-89-627-144-0 Fax: 49-89-627-144-44 เยอรมนี – โรเซนไฮม์ โทร : 49-8031-354-560 อิสราเอล – ฮอด ฮาชารอน โทร : 972-9-775-5100 อิตาลี – มิลาน โทร: 39-0331-742611 โทรสาร : 39-0331-466781 อิตาลี – ปาโดวา โทร: 39-049-7625286 เนเธอร์แลนด์ – ดรูเนน โทร: 31-416-690399 โทรสาร : 31-416-690340 นอร์เวย์ – ทรอนด์เฮม โทร : 47-72884388 โปแลนด์ – วอร์ซอ โทร: 48-22-3325737 โรมาเนีย – บูคาเรสต์ Tel: 40-21-407-87-50 สเปน – มาดริด Tel: 34-91-708-08-90 Fax: 34-91-708-08-91 สวีเดน – โกเธนเบิร์ก Tel: 46-31-704-60-40 สวีเดน – สตอกโฮล์ม โทร : 46-8-5090-4654 สหราชอาณาจักร – วอคกิ้งแฮม โทร : 44-118-921-5800 แฟกซ์ : 44-118-921-5820 |
เอกสาร / แหล่งข้อมูล
![]() |
ไมโครชิพ DS00004807F PolarFire Family FPGA โฟลว์แบบกำหนดเอง [พีดีเอฟ] คู่มือการใช้งาน DS00004807F FPGA ตระกูล PolarFire โฟลว์แบบกำหนดเอง DS00004807F FPGA ตระกูล PolarFire โฟลว์แบบกำหนดเอง FPGA ตระกูล โฟลว์แบบกำหนดเอง โฟลว์ |