UVM Nedir? Bir dil mi yoksa bir Framework mü? Ne için kullanılır? Sayısal tasarım ve ASIC doğrulama alanında kullanılıyor mu?
UVM, SystemVerilog diliyle yazılmış bir Framework'tür ve bir doğrulama metodolojisi ortaya koyar. Sayısal tasarım / ASIC projelerinin olduğu her alanda, gerek sivil gerekse savunma sanayii alanında olsun, bir doğrulama metodolojisine ihtiyaç vardır. Bu metodoloji UVM ile olmak zorunda değildir. Üzerinde mutabık kalınmış, belirli standartlara oturtulmuş farklı yöntemler de doğrulama için kullanılabilir.
UVM'in tarihsel gelişimini, versiyon geçmişini ve kaynak kodlarını incelemek isteyen meraklı okuyucularımı, geliştiricisi olduğu Accelera kuruluşunun websitesine havale ediyorum: https://www.accellera.org/downloads/standards/uvm
Önceki başlıkta belirttiğim gibi UVM, SystemVerilog diliyle geliştirilmiş bir Framework. Dolayısıyla ilk önce bu dile aşina olmak gerekiyor. SystemVerilog öğrenmek için Udemy, YouTube gibi platformlarda pek çok eğitim videosu bulabilirsiniz. Eğer, ben SystemVerilog biliyorum, diyorsanız nesne yönelimli programlama konseptine hakim olduğunuzdan emin olmalısınız. Çünkü Framework'ler NYP(Nesne Yönelimli Programlama) özelliklerinin neredeyse çoğunu kullanan yapılardır ve bunlara aşina olmadan, geliştireceğiniz kodların ne işe yaradığını anlamak güç olacaktır.
Bu cevap daha çok yeni mezun olmuş veya henüz eğitimine devam eden arkadaşlarımıza hitap ediyor.
Türkiye'de sayısal tasarım, FPGA, çip tasarımı alanında hizmet veren pek çok firma mevcut. Bu firmaların iş ilanlarına göz attığınızda doğrulama konseptleriyle ilgili yeterliliklerin de beklendiğini görebilirsiniz. Bu alan giderek gelişiyor ve doğrulama mühendisi ihtiyacı da bu doğrultuda artıyor. Türkiye'de Doğrulama Mühendisi / Verification Engineer özelinde ilanlar olmasa da Sayısal Tasarım Mühendisi olarak başvuracağınız pozisyonlarda SystemVerilog ve UVM bilgisi gerçekten sizi öne çıkaracaktır.