Başlık hemen hemen sorumu özetliyor: VHDL / FPGA'ları kullanmaya başlamak için herhangi bir yerel Mac OS X ortamı var mı?
Başlık hemen hemen sorumu özetliyor: VHDL / FPGA'ları kullanmaya başlamak için herhangi bir yerel Mac OS X ortamı var mı?
Yanıtlar:
Kısa Cevap Hayır!
Bunu geçmişte araştırdım ve kodu yazmak için bir metin düzenleyicisi kullanabileceğinizden emin olabilirsiniz, ancak büyük (xilinx ve altera) hiçbirinin mac os x platformu için herhangi bir tasarım akışı yoktur, bu nedenle sentezleme ve yer ve rota dışarıda .
Simülasyon cephesinde, mac platformu için simülasyon yaptığını iddia eden bir program buldum, ancak adı geçen programın kalitesi hakkında şüphelerim vardı.
En iyi seçenek pencerelere veya linuxlara çift önyükleme (paralel veya füzyon) yapmaktır. Linux'u söyledikten sonra, Linux'u desteklemek için ücretsiz web paketlerini alıp alamayacağınızdan emin değilim, sadece ücretsiz araçlar için Windows tabanlı olabilirler.
Yani çift önyükleme yapın veya bir Windows PC'ye erişmek için uzak masaüstü tipi bir şey kullanın. Bu bir hata, biliyorum ama bir mac hayat böyle :)
Kısa cevap: evet.
Birkaç simülatör var: GHDL açık kaynaklı bir simülatör. Ana akım simülatörleri kadar iyi değil, ama başlamanıza yardımcı olacak.
Mac'te çalışan bir VHDL tasarım giriş ve kod anlama aracı olan Sigasi var . Bu, kodunuzu simülatöre göndermeden önce yazmanıza yardımcı olacaktır.
Sentez araçlarına gelince, Plunify'a bir göz atmalısınız . Teklif bulutu "bulutta", yani bu herhangi bir platforma bağlı değil.
Muhtemelen er ya da geç VMWare veya Parallels kullanmaya başlayacaksınız, ancak Mac'inizde VHDL tasarlamaya başlayabileceğinizden emin olabilirsiniz.
(açıklama: Sigasi ekibindeyim)
icestorm , yalnızca Lattice ice40 FPGA'larda verilog için açık kaynaklı bir FPGA derleme araç zinciridir. Mac OS X altında yerel olarak çalıştırabildim ve çalıştırabiliyorum, ancak kurulum Linux altında aynı şeyi yapmak kadar önemsiz değildi.
Icestorm, FPGA'lar için HDL sentezine giriş için uygun bazı basit örnekler içerir, ancak bunlar VHDL değil verilogdadır.
Dolayısıyla, kalbiniz yalnızca VHDL öğrenmeye ayarlanmışsa, VHDL doğrudan desteklenmediği için bir VHDL'den Verilog'a dönüştürücü gerekir . Aslında Mac OS X'te bunlardan birini çalıştırmadım, bu yüzden bu cevap Belki .
FPGA tasarımına yeni başlayan biriyseniz, aşina oluncaya kadar MyHDL (hem donanımı simüle edebilen hem de VHDL veya Verilog için otomatik olarak üretebilen bir python arayüzü) ile başlayarak faydalı olabilir. HDL tasarımı, daha sonra VHDL ve Verilog ile detaylara inin.
FPGA'lar için HDL sentezini öğrenme konusunda ciddiyseniz, muhtemelen en azından hem Verilog hem de VHDL'ye aşina olmayı öğrenmeniz gerekecektir. Ticari araçlar aynı projede bile aynı anda modül bazında her ikisini de destekler.
Bir başka çok yararlı simülasyon aracı (Mac OS X altında, homebrew ve macport'lardan birinde veya diğerinde bir paket aracılığıyla da çalışır), HDL'nin çalışma amacıyla verimli çalışan yerel ikili dosyalara derlenmesine izin veren Verilator'dır . tüm SoC'ları simüle formda. Bunun için mükemmel ve kullanışlı bir örnek , çağrıldığında kullanılan Swapforth'a dahildir make -C j1a clean bootstrap
. Verilator, ilk Forth görüntüsünün kendi ilk yazılım kurulumunu derlemesine izin vermek için kullanılır;
MacOS X üzerinde çalışmaya başlamak için yukarıdakilerin hepsinin önemsiz olduğunu lütfen unutmayın - eksik bağımlılıkları tespit etmek ve bunları hem macport hem de homebrew aracılığıyla kurmaktan, etrafta avlanmaktan ve not almaktan mutlu olmanız gerekir. hakkında
Mac OS X, en azından FPGA derlemesi amacıyla Linux'a kıyasla oldukça ikinci sınıf bir vatandaş. FreeBSD'nin bile ticari FPGA takım zincirlerini çalıştırmak için çok daha iyi bir desteğe sahip olduğunu göreceksiniz (linux ikili uyumluluk katmanı aracılığıyla Darwin'in ne yazık ki eksik olduğu).
Sonuç olarak, ikili önyükleme yapmak veya linux'u sanallaştırmak hala çok, çok daha kolaydır, böylece araçları fırlatabilir ve çalışabilirsiniz. Çünkü tek kullanışlı Açık Kaynak FPGA araç zinciri şimdi varsa, uygulama mümkündür Mac OS X altında doğal olarak çalıştırmak için