Programlama geçmişinden geliyorum ve donanım veya bellenimle çok fazla uğraşmadım (en azından biraz elektronik ve Arduino).
Verilog ve VHDL gibi donanım tanımlama dillerini (HDL) C veya bazı Assembly gibi programlama dillerinde kullanmadaki motivasyon nedir?
Bu mesele hiç bir seçim midir?
Ürün yazılımının bir HDL'de yazıldığı donanımın, talimatların paralel olarak çalıştırılmasında açık bir avantajı olduğunu okudum. Ancak, C veya Assembly'de bellenim yazma konusunda şüpheleri ifade eden tartışmaları gördüğüme şaşırdım (mutlaka bir CPU'nuz yoksa Meclis nasıl uygundur?) Ama aynı zamanda bir seçenek olduğu sonucuna vardım.
Bu nedenle, birkaç sorum var (hiçbir şeyi açıklamaktan çekinmeyin):
Bir bellenim gerçekten HDL veya bir yazılım programlama dilinde yazılabilir mi, yoksa aynı görevi gerçekleştirmenin başka bir yolu mu? Gerçek dünyadaki örneklere bayılırım. Her bir seçenek ne gibi kısıtlamalar doğurur?
Yazılım üzerinde ortak bir yazılım kullanımının donanım hızlandırıcılarında (GPU'lar, ağ bağdaştırıcıları, SSL hızlandırıcıları, vb.) Olduğunu biliyorum. Anladığım kadarıyla, bu hızlanma her zaman gerekli değildir, ancak sadece önerilir (örneğin, SSL ve karmaşık algoritmaların hızlandırılması durumunda). Her durumda yazılım ve yazılım arasında seçim yapılabilir mi? Değilse, bellenimin açıkça ve kesin olarak uygun olduğu durumlardan memnun olurum.
Ürün yazılımının çoğunlukla ROM veya flash üzerinde yandığını okudum. Orada nasıl temsil edilir? Bit gibi, yazılım gibi mi? Eğer öyleyse, derin fark nedir? Aygıt yazılımı durumunda uyarlanmış devrelerin kullanılabilirliği var mı?
Sanırım burada ve bazı varsayımlarda bir hata yaptım, lütfen beni affet. Teşekkür ederim!