Bunun zor olduğunu eğer ayrıca yanıtlamaya çalışın, çünkü o seviyor ve nasıl her insanın kod donanım çalışmak zorunda durumun işlevinde (frekans, dış yollar, ...). bir durum makinesinde de
bazı elemanları vardır:
- giriş
- çıkış
- mevcut durumu
Sonraki durum güncel durumundan bağlıdır sonraki durum ve girişler. Kombinator döngülere sahip olmamanız için, bir saat sinyali durumunda bir sonraki durumu örneklemeniz gerekir, böylece mevcut durum haline gelir. Yani, devlet için flip-flop oluşturmak için bir VHDL işlemine ihtiyacınız var. Bu süreçte, bir sonraki durumu hesaplamak için gereken tüm mantığı koyabilirsiniz. Eğer çıktılarınız sadece devlete bağlıysa, başkalarına ihtiyaç duymazsınız.
Mantık çok kolay olmadığında aynı işlemi birleştirme mantığına dahil etmeyi sevmiyorum (bunu sevdim ama zorunlu değil!), Normalde FSM'yi iki süreçte bölüyorum: ilk çok kolay Bir sonraki durumu örnekleyen işlem, mevcut çıktıya ve tüm çıktıları ve bir sonraki durumu girdi ve mevcut durumun fonksiyonu olarak hesapladığım bir kombinatory sürecidir.
Aynı durumlarda, çıkışların örneklenmesi gerekir: örneğin, frekans sorunu olduğunda, dahili yolların harici olanlardan mı yoksa çıkışların büyük bir yüke sahip olması gerekir. Bu durumda, bir sonraki durumu örneklediğiniz veya bir veya daha fazla özel işlem oluşturduğunuz ilk süreçte gerekli tüm parmak arası terlikleri ekleyebilirsiniz.
Ayrıca işlem sayısı gibi birçok değişikliğe de sahip olabilirsiniz: Bir kodda çalıştım, her sinyal özel bir işlemde hesaplanır, böylece elde edilen durum makinesi 20/30 işlemine sahip olur.
Xilinx'ten XST PDF, 1,2 ve 3 işlem FSM'lerinin örneklerini gösterir (iki işlemin yalnızca iki değişkeninden yalnızca bir tanesi yeterlidir). Kısmen bir Mealy-Moore sorunu ve büyük bir kısmı kişisel tercih ya da ezberci öğrenme. Analitik eğimli olanlar, duyarlılık listelerinde bulunan elemanların etkilerine dikkat edebilir. – user1155120
@DavidKoontz 2-işlem FSM'sinin 2. versiyonu ne olurdu? Devlet sicili için bir süreç ve her şey için başka bir süreç? – rick
XST pdf hoş bir referans, teşekkür ederim. @DavidKoontz –