Output Sumber Sinkron yang Dibatasi Sesuai Pusat

author-image

Oleh

Dalam antarmuka output yang sinkron sumber, FPGA sumber clock untuk perangkat tujuan. Dalam antarmuka sinkron sumber yang diselaraskan pusat, transisi clock terjadi di tengah jendela data yang valid. Gambar 1 menunjukkan antarmuka output sampel yang sinkron sumber.

Gambar 1. antarmuka keluaran sinkron sumber.

Gunakan langkah-langkah berikut untuk membatasi antarmuka keluaran sinkron sumber yang diselaraskan pusat:

  1. Membuat clock dasar dan yang dihasilkan
  2. Tambahkan batasan penundaan output
  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 AN 433: Membatasi dan Menganalisis Antarmuka Sinkron Sumber (PDF).

Jam

Clock dasar diperlukan pada port input FPGA.
Clock yang dihasilkan diperlukan pada semua keluaran phase-locked loop (PLL). Output sinkron yang diselaraskan pusat data ganda mengubah clock output sebesar 90 derajat, dibandingkan dengan clock data.
Clock yang dihasilkan diperlukan pada port clock keluaran FPGA. Clock yang dihasilkan adalah referensi clock untuk nilai penundaan output untuk bus data.

Batasan Penundaan Output

Anda dapat menggunakan spesifikasi sate maksimum untuk menghitung nilai tunda output. Spesifikasi skew maksimum mengindikasikan variasi waktu yang diizinkan untuk setiap bit bus data untuk meninggalkan FPGA.

Nilai keterlambatan maksimum output adalah (interval unit /2) - nilai skew maksimum.

Nilai keterlambatan minimum output adalah nilai skew maksimum - (1,5 * interval unit).

Pengecualian Jalur Palsu

Dalam contoh yang diselaraskan pusat ini, data ditransfer pada transisi clock clock rise-rise and fall-fall serta. 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


# Create a base clock on the input port of the FPGA, with a 10 ns period
create_clock -name input_clock -period 10 [get_ports clk_in]

# Create generated clocks on the PLL outputs
# Output clk[0] drives the data register
# Output clk[1] drives the output clock port with a 90 degree shift
create_generated_clock -name data_clock -source [get_pins pll|inclk[0]] \
[get_pins pll|clk[0]]
create_generated_clock -name clock_clock -phase 90 -source [get_pins pll|inclk[0] \
[get_pins pll|clk[1]]

# Create the generated clock on the output clock port of the FPGA
create_generated_clock -name output_clock -source [get_pins pll|clk[1]] \
[get_ports clk_out]

# Add maximum and minimum output delay constraints
# assuming a skew requirement of +/- 250ps
# Use the equations for the output delay values listed above
set_output_delay -max -clock output_clock [expr { (5 / 2) - 0.250 }] \
[get_ports data_out*]
set_output_delay -max -clock output_clock -clock_fall \
[expr { (5 / 2) - 0.250 }] [get_ports data_out*] -add
set_output_delay -min -clock output_clock [expr { (0.250 - (1.5 * 5) }] \
[get_ports data_out*]
set_output_delay -min -clock output_clock -clock_fall \
[expr { (0.250 - ( 1.5 * 5 ) }] [get_ports data_out*] -add

# Add false path exceptions for cross-clock transfers
set_false_path -setup -end -rise_from [get_clocks data_clock] \
-fall_to [get_clocks output_clock]
set_false_path -setup -end -fall_from [get_clocks data_clock] \
-rise_to [get_clocks output_clock]
set_false_path -hold -end -rise_from [get_clocks data_clock] \
-fall_to [get_clocks output_clock]
set_false_path -hold -end -fall_from [get_clocks data_clock] \
-rise_to [get_clocks output_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.