Membatasi Input Sinkron Sumber Edge-Aligned

author-image

Oleh

Antarmuka input yang sinkron sumber dibatasi dengan cara yang sama seperti antarmuka input yang sinkron sistem. FPGA menerima clock dan menggunakan clock tersebut untuk memasukkan data. Dalam antarmuka sinkron sumber yang sejajar edge, transisi clock terjadi secara bersamaan dengan transisi data. Gambar 1 menunjukkan antarmuka input sampel yang sinkron sumber.

Gambar 1. Antarmuka input yang sinkron sumber.

Gunakan langkah-langkah berikut untuk membatasi antarmuka input sinkronis sumber yang diselaraskan edge:

  1. Membuat clock virtual, dasar, dan dihasilkan

  2. Tambahkan batasan penundaan input

  3. Tambahkan pengecualian jalur palsu untuk mengecualikan jalur yang tidak valid dari analisis waktu dan pelaporan

Untuk detail lebih lanjut tentang salah satu langkah ini, atau perhitungan dan batasan yang dijelaskan di bawah ini, lihat href="/literature/an/an433.pdf">AN 433: Membatasi dan Menganalisis Antarmuka Sumber-Sinkron (PDF).

Jam

Clock virtual memodelkan clock di perangkat eksternal yang mendorong data mendaftar untuk mengirimkan data ke FPGA.

Clock dasar diperlukan pada port input FPGA. Clock dasar menjelaskan karakteristik clock pada input clock FPGA.

Clock yang dihasilkan diperlukan pada semua keluaran phase-locked loop (PLL). Dalam antarmuka input sinkron sumber yang diselaraskan edge, PLL harus mengubah clock yang diterima sebesar 90 derajat untuk memenuhi persyaratan waktu internal register penangkapan data.

Batasan Penundaan Input

Anda dapat menggunakan spesifikasi sate maksimum untuk menghitung nilai tunda input. Spesifikasi skew maksimum menunjukkan variasi waktu yang diizinkan untuk bit masing-masing bus data untuk tiba di FPGA.

Nilai keterlambatan maksimum input adalah nilai sate maksimum.

Nilai dari keterlambatan minimum yang dimasukkan adalah -maximum skew value.

Pengecualian Jalur Palsu

Dalam contoh yang diselaraskan edge ini, data ditransfer pada transisi rise-rise and fall-fall source dan clock tujuan. Gunakan pengecualian jalur palsu untuk mengurangi transisi clock rise-fall dan fall-rise, karena data tidak ditransfer pada transisi clock edge yang berlawanan.

Contoh File SDC

# Buat clock virtual untuk menjelaskan clock data di
# perangkat eksternal create_clock
-nama virt_clk -periode 10

# Buat clock dasar pada port input FPGA, dengan periode 10 ns
create_clock -name input_clock -period 10 [get_ports clk_in]

# Buat clock yang dihasilkan pada output PLL
create_generated_clock -name data_clock -source [get_pins pll|inclk[0]] \
-phase 90 [get_pins pll|clk[0]]

# Tambahkan maksimum dan batasan penundaan input minimum
# dengan asumsi persyaratan miring +/- 250ps
# Gunakan persamaan untuk nilai tunda input yang tercantum di atas
set_input_delay -max -clock virt_clk 0,250 [get_ports data_in*]
set_input_delay -min -clock virt_clk -0,250 [get_ports data_in*]
set_input_delay -max -clock virt_clk \ clock_fall \
0,250 [get_ports data_in*] -add
set_input_delay -min -clock virt_clk -clock_fall \
-0,250 [get_ports data_in*] -add

# Tambahkan pengecualian jalur palsu untuk transfer cross-clock
set_false_path -setup -end -rise_from [get_clocks virt_clk] \
-fall_to [get_clocks data_clock]
set_false_path -setup -end -fall_from [get_clocks virt_clk] \
-rise_to [get_clocks data_clock]
set_false_path -hold -end -rise_from \
-get_clocks virt_clk rise_to [get_clocks data_clock]
set_false_path -end -end -fall_from [get_clocks virt_clk] \
-fall_to [get_clocks data_clock]

Isi halaman ini adalah kombinasi terjemahan manusia dan komputer dari konten berbahasa Inggris. Konten ini diberikan hanya untuk kenyamanan Anda serta sebagai informasi umum dan tidak bisa dianggap sebagai lengkap atau akurat. Jika terdapat kontradiksi antara versi bahasa Inggris halaman ini dan terjemahannya, versi bahasa Inggris akan didahulukan. Lihat versi bahasa Inggris halaman ini.