คําสั่งนาฬิกาที่สร้างขึ้นโดยตัววิเคราะห์เวลา

author-image

โดย

ตัววิเคราะห์เวลาจะพิจารณาถึงตัวแบ่งสัญญาณนาฬิกา สัญญาณนาฬิการะลอกหรือวงจรที่ปรับเปลี่ยนหรือเปลี่ยนคุณสมบัติของนาฬิกาขาเข้าหรือโฮสต์เมื่อนาฬิกาถูกสร้างขึ้น คุณควรกําหนดเอาต์พุตของวงจรเหล่านี้ว่าเป็นสัญญาณนาฬิกาที่สร้างขึ้น คํานิยามนี้ช่วยให้ตัววิเคราะห์เวลาสามารถวิเคราะห์นาฬิกาเหล่านี้และบัญชีสําหรับความหน่วงแฝงของเครือข่ายใดๆ ที่เกี่ยวข้องกับนาฬิกาเหล่านี้

คุณสามารถใช้คําสั่ง create_generated_clock เพื่อสร้างนาฬิกาที่สร้างขึ้น รายการต่อไปนี้แสดงคําสั่ง create_generated_clock และตัวเลือกที่มีอยู่:

create_generated_clock
   [ชื่อ<clock>]
   -source <host pin>
   [-edges <edge list>]
   [-edge_shift <shift list>]
   [-divide_by <factor>]
   [-multiply_by <factor> >]
   [-duty_cycle <percent>]
   [-add] [-invert]
   [-host_clock <clock>]
   [-phase <phase>]
   [-offset <offset>]
   < วัตถุแหล่งข้อมูล>

ตารางที่ 1 อธิบายถึงตัวเลือกสําหรับคําสั่งcreate_generated_clock

ความหน่วงแฝงแหล่งที่มาขึ้นอยู่กับความล่าช้าของเครือข่ายนาฬิกาจากนาฬิกาโฮสต์ (ไม่จําเป็นต้องเป็นพินโฮสต์) คุณสามารถใช้คําสั่ง set_clock_latency -source เพื่อแทนที่ความหน่วงแฝงของแหล่งที่มาได้

รูปภาพที่ 1 แสดงรูปคลื่นสําหรับคําสั่ง SDC ต่อไปนี้ที่สร้างนาฬิกาแบบกลับด้านโดยใช้นาฬิกา 10 ns

create_clock -period 10 [get_ports clk]
create_generated_clock -divide_by 1 -invert -source [get_registers clk] \
    [get_registers เจนเนอเร|clkreg]

รูปภาพที่ 1 การสร้างนาฬิกาแบบกลับด้าน

รูปภาพที่ 2 แสดงรูปคลื่นสําหรับคําสั่ง SDC ต่อไปนี้ที่ปรับเปลี่ยนนาฬิกาที่สร้างขึ้นโดยใช้ตัวเลือก-edgeและ-edge_shift

create_clock -period 10 -waveform { 0 5 } [get_ports clk]
# สร้างcreate_generated_clockนาฬิกาแบบหารด้วย 2
-source [get_ports clk] -edges { 1 3 5 } \
    [get_registers clkdivA|clkreg] # สร้างการแบ่งตาม
2 นาฬิกาโดยไม่ขึ้นกับรอบการทํางานของนาฬิกาโฮสต์ตอนนี้ 50%)
create_generated_clock -source [get_ports clk] -edges { 1 1 5 } -edge_shift  0 5 0 }
    \ [get_registers clkdivB|clkreg]

รูปภาพที่ 2 Edge & Edge ที่ขยับนาฬิกาที่สร้างขึ้น

รูปภาพที่ 3 แสดง wafeforms สําหรับคําสั่ง SDC ต่อไปนี้ที่แสดงให้เห็นถึงผลของตัวเลือก -คูณ บนนาฬิกาที่สร้างขึ้น

create_clock -period 10 -waveform { 0 5 } [get_ports clk]
# สร้างcreate_generated_clockนาฬิกาคูณคูณ 2
-source [get_ports clk] -multiply_by 2
    \ [get_registers clkmult|clkreg]

รูปภาพที่ 3 การคูณนาฬิกาที่สร้างขึ้น

เนื้อหาในหน้านี้เป็นการผสมผสานระหว่างการแปลเนื้อหาต้นฉบับภาษาอังกฤษโดยมนุษย์และคอมพิวเตอร์ เนื้อหานี้จัดทำขึ้นเพื่อความสะดวกของคุณและเพื่อเป็นข้อมูลทั่วไปเท่านั้นและไม่ควรอ้างอิงว่าสมบูรณ์หรือถูกต้อง หากมีความขัดแย้งใด ๆ ระหว่างเวอร์ชันภาษาอังกฤษของหน้านี้กับคำแปล เวอร์ชันภาษาอังกฤษจะมีผลเหนือกว่าและควบคุม ดูเวอร์ชันภาษาอังกฤษของหน้านี้