TUTEL-TUBITAK / TEKNOFEST_2024_Cip_Tasarim_Yarismasi

Bu depo TEKNOFEST 2024 Çip Tasarım Yarışması'nda Analog Tasarım ve Sayısal İşlemci Tasarımı kategorilerinde çeşitli dosyaları paylaşmak için kullanılacaktır.
3 stars 3 forks source link

DDR Simulasyonunun calismamasi ile ilgili. #4

Open zeynepyavuz1621 opened 1 month ago

zeynepyavuz1621 commented 1 month ago

Merhaba, Daha oncesinde USE SRAM parametresinin 1 oldugu durumlarda islemcimize reset sinyalinin dogru gelmemesi sonucu yasadigimiz problemden dolayi paylasilan wrapper dosyalari ile ilgili duzeltme talebinde bulunmustuk ve yapilan duzeltmenin ardindan SRAM modeli kullanarak simulasyon gerceklestirdigimizde sorun cozulmustu; su anda ise USE SRAM parametresini 0 yaptigimiz yani tasarimimizi DDR modeli kullanarak simule etmek istedigimiz durumda da benzer bir sorunla karsilasiyoruz. Sizden bu sorunu cozmek adina paylastiginiz dosyalarda degisiklik yapmanizi rica ediyoruz. Simdiden tesekkur ederiz, kolay gelsin.

TUTEL-TUBITAK commented 3 weeks ago

Merhaba,

Evet şu anki versiyonda bir sıkıntı var. Ancak ilk versiyona aldığımızda SRAM versiyonu da çalışıyor. Nasıl bir problemle karşılaşıyorsunuz?

zeynepyavuz1621 commented 3 weeks ago

Tekrar Merhaba, İlk versiyonda karşılaştığımız problem teknofest_wrapper.sv adlı dosyanın 104. satırında programmer_sinyalinin önünde değil işareti bulunmadığından işlemcimizin teknofest_memory.sv den çıkan sel_mem.gnt sinyalini doğru bir şekilde alamamasıydı, zaten 102 ve 103. satırlarda programmer_active sinyalinin değili alınarak işlemciye doğru sinyallerin girişi sağlanmakta ancak 104. satırda bu işaretin gözden kaçmış olabileceğini düşünüyorum.

eski hali: 102.satır assign core_mem.rvalid = ~programmer_active && sel_mem.rvalid; 103.satır assign core_mem.rdata = {128{~programmer_active}} & sel_mem.rdata; 104.satır assign core_mem.gnt = programmer_active && sel_mem.gnt;

önerilen hali: 104.satır assign core_mem.gnt = ~programmer_active && sel_mem.gnt;

Cevabınız içim teşekkür ederim, iyi çalışmalar diliyorum.

TUTEL-TUBITAK commented 2 weeks ago

Merbalar,

Haklısınız orada bir problem olmuş. Dosyaları güncelledim, sinyali ready olarak tekrar isimlendirdik. Testbencteki (tb_teknofest_wrapper.sv) core_write ve core_read tasklarında işlemcinin memory sinyallerini nasıl sürmesi gerektiğinin örneği var, ona bakabilirsiniz.

Teşekkürler, iyi çalışmalar.