Di dunia FPGA, apa sebenarnya batasan jalur salah untuk kompiler HDL? Mengapa ini bermanfaat?
Di dunia FPGA, apa sebenarnya batasan jalur salah untuk kompiler HDL? Mengapa ini bermanfaat?
Jawaban:
Jalur salah adalah jalur pengaturan waktu yang tidak akan pernah benar-benar dilakukan dalam desain akhir. Misalkan Anda mendesain penghitung 4-bit dan ternyata ada jalur tunda yang sangat lambat saat bertambah dari 12 menjadi 13. Jika desain Anda selalu menyetel ulang penghitung kapan pun jumlah sama dengan 9 maka jalur lambat itu tidak akan pernah terlihat di desain yang sebenarnya. Anda memberi label jalur lambat sebagai jalur palsu sehingga kompilator tidak menghabiskan waktu, atau menambahkan logika tambahan, dalam upaya membuat jalur palsu berjalan lebih cepat.
Jalur yang salah adalah jalur yang memang ada dalam desain tetapi tidak berperan dalam operasi, sehingga tidak perlu untuk memasukkannya dalam analisis pemilihan waktu.
Mungkin ada berbagai alasan mengapa ini terjadi, tetapi karena alat analisis waktu biasanya tidak tahu (walaupun ada beberapa alat yang dapat mendeteksi mereka) jalur mana yang dapat digunakan atau tidak, Anda harus mengatakannya. Ini mirip dengan jalur multi-siklus, di mana Anda dapat mengatakannya bahwa jalur tertentu diizinkan untuk menggunakan lebih dari satu siklus untuk menyelesaikan.
Contoh (dari jalur yang salah) adalah register yang mungkin ditulis sekali saat power up, tetapi kemudian tetap dalam status yang sama.
Sederhananya, jalur yang salah adalah jalur logis yang Anda ingin dikecualikan dari diperiksa untuk melihat apakah itu memenuhi waktu selama analisis waktu. Ada dua alasan untuk mengecualikan jalur, pertama karena jalur palsu akan membuat alat bekerja lebih keras untuk memenuhi waktu untuk sinyal yang pada gilirannya akan mempengaruhi jalur sinyal yang sah yang mungkin menyebabkan kesalahan waktu tambahan dan karena itu akan menyebabkan pemeriksaan waktu melaporkan kegagalan. mungkin mengalihkan perhatian desainer dari kesalahan waktu yang sah.
Jalur palsu disebabkan oleh jalur logika antara jam asinkron yang tidak terkait atau jam dengan frekuensi yang sama tetapi dengan hubungan fase yang tidak diketahui atau jalur yang tidak akan pernah diaktifkan selama operasi rangkaian normal. Memberitahu alat untuk mengabaikan jalan tidak membuat waktu bekerja hanya bahwa waktunya tidak dicentang. Terserah desainer untuk memastikan secara manual logika sinkronisasi yang benar digunakan untuk jalur sinyal yang diabaikan ini.