Statik zamanlamayla ilgili blog gönderilerinin kataloğu:
Başlığın da belirttiği gibi, bu blog yazısı esas olarak sentez sürecindeki bazı zamanlama kısıtlama tekniklerini tanıtmaktadır. Spesifik sentez aracı Synplify Pro'dur (LSE, aşağıdaki blog yazısında tanıtılabilir, belki ...). Genel olarak, Synplify Pro çok güçlü bir üçüncü taraf sentez aracıdır ve endüstri tarafından en verimli ve en iyi sentez aracı olarak kabul edilmektedir.Neredeyse tüm FPGA satıcıları Synplify Pro'yu desteklemektedir. Lattice, Synplify Pro'yu (For Lattice) IDE Diamond'ına entegre etti.Elbette, kullanıcılar entegrasyon ve diğer işlemler için doğrudan Synplify Pro'yu da açabilir. Bu blog gönderisinde tartışılan içeriğin tamamı Diamond'da işletilmektedir, çalıştırmak için Synplify Pro'yu doğrudan açmanıza gerek yoktur.
Öncelikle, önceki blog gönderisinde görünen resmi inceleyelim:
Sentez sürecindeki zamanlama kısıtlamalarının esas olarak iki yerden geldiği bulunabilir: SDC dosyasındaki kısıtlamalar ve HDL kaynak kodu.
Synplify Pro for Lattice Referans Kılavuzu'nda, Synplify Pro'nun aşağıdaki zamanlama kısıtlamalarını desteklediğini görebiliriz:
Temel olarak, yukarıda açıklanan zamanlama kısıtlaması gereksinimlerinin çoğunu kapsar. Kullanıcılar bu kısıtlamaları doğrudan HDL kaynak kodunda kullanabilir veya bunları SDC dosyasına yazabilir. Sentez işlemi tamamlandığında, Diamond sonraki MAP işleminde kullanılmak üzere ilgili zamanlama kısıtlamalarını LPF dosyasına otomatik olarak yazacaktır. Tabii ki, öncül, Stratejiyle ilgili parametrelerin doğru ayarlanmasıdır: Aşağıdaki şekilde gösterildiği gibi, Proje = Ture'de SDC'den Oluşturulan LPF'yi kullanın:
Ek olarak, önemli bir öncül vardır, yani Stratejideki Alan parametresi Yanlış olarak ayarlanmalıdır, aksi takdirde sentez aracı SDC dosyasındaki ve HDL kaynak kodundaki zamanlama kısıtlamalarını doğrudan yok sayacaktır:
Genel olarak, sentez sürecindeki zamanlama kısıtlamaları nispeten basittir, çünkü bu sürecin daha fazla görevi, HDL tasarımındaki mantıksal hataları veya mantıksız yerleri bulmaktır. Yeni başlayanlar, sentez işlemi sırasında yalnızca saat zamanını belirleyebilir (aşağıdaki şekilde gösterildiği gibi, belirtilmemişse, sentez aracı tasarımın maksimum saat frekansına ulaşmak için optimize etmeye çalışır) ve diğer kısıtlamalar LPF dosyasına (veya SpreadSheet View aracılığıyla) yerleştirilir. Doğrudan ayarlayın). Synplify Pro, statik zamanlama analizi de gerçekleştirebilmesine rağmen, analiz doğruluğu nispeten düşüktür ve yalnızca referans olarak kullanılabilir. Bu nedenle, Synplify Pro tarafından oluşturulan zamanlama analizi raporunu analiz etmek için çok fazla enerji harcanmadı. Usta, lütfen çekinmeyin ...
Ayrıca, Strateji'de birçok yapılandırma parametresi vardır, ilgileniyorsanız kendiniz öğrenebilirsiniz.
Ek not: Synplify Pro zamanlama analizinin (Synplify Pro'nun kendisi değil) düşük doğruluğunun iki ana nedeni:
1. Synplify Pro zamanlama analizinin temel verileri Lattice'in cihaz kitaplığı dosyasındaki parametrelerden gelir, çünkü Synplify Pro yalnızca entegre edilmiştir (aslında Synplify Pro'nun kendisi MAP işlevine sahiptir, ancak Synplify Pro'nun çalışması için ayrı olarak açılması gerekir) ve MAP daha sonra Diamond tarafından tamamlanır, bu nedenle Synplify Pro tarafından analiz edilen zamanlama modeli MAP'den sonraki gerçek modelden farklı olabilir;
2. Synplify Pro, PAR'dan sonraki zaman sırasını analiz edemez, bu da MAP TRACE'nin doğruluğunun PAR TRACE'den daha düşük olmasının nedeniyle aynıdır!