Ini adalah pandangan pertama saya ke FPGA, tetapi latar belakang yang berat dalam pengembangan perangkat lunak. Ingin membeli papan untuk dipelajari, tetapi pada akhirnya ingin dapat menjalankan komputer berbasis Z80 gaya 80-an awal (pikirkan model TRS80 yang saya katakan).
Saya telah melihat papan Spartan 3E dan Spartan 6, tetapi tidak begitu yakin tentang perbedaan kinerja / kapasitas.
Apa yang saya pikirkan adalah sesuatu seperti ini:
- Cukup ruang untuk:
- disimulasikan Z80 menggunakan softcore opencores T80.
- simulasi perangkat onboard seperti pengontrol video, pengontrol suara (sederhana 1 bit), pengontrol floppy
- mungkin beberapa pengontrol picoblaze untuk menggunakan tombol onboard untuk pemilihan gambar floppy dll ...
- Konektor VGA (16 warna sudah cukup, 256 bonus)
- Konektor Keyboard PS2
- Cukup onboard flash untuk menampung sejumlah gambar floppy disk virtual dan ROM sistem (16Mb harus banyak)
- Pada tampilan papan, LCD bagus, LED segmen 4x7 mungkin sudah cukup.
- semacam soket kartu flash akan menyenangkan, tetapi tidak diperlukan.
- Sambungkan daya untuk mengalirkan listrik, mungkin melalui paket daya.
Ini adalah papan yang saat ini saya pertimbangkan:
- Papan FPGA Nexys ™ 3 Spartan-6
- Spartan 3E Starter Board
- Papan Pengembangan Spartan 3E-1600
- Basys ™ 2 Spartan-3E FPGA Board (500K) + 16M Flash pMod
- Basys ™ 2 Spartan-3E FPGA Board (1200K) + 16M Flash pMod
EDIT: Hanya memperhatikan Basys tidak memiliki onboard RAM jadi saya akan terbatas pada FPGA RAM - tidak ideal.
Hal utama yang saya tidak yakin adalah berapa banyak ruang yang tersisa setelah memuat softcore T80. Setiap saran sangat dihargai.
Jawaban:
Sementara tujuan ambisius itu bagus, saran saya adalah mulai dari yang lebih kecil. Jauh lebih kecil. Proyek yang Anda usulkan akan sulit bagi perancang FPGA menengah, dan hampir mustahil bagi seorang pemula. Saya seorang pendukung besar FPGA dan ingin melihat Anda sukses - memulai dengan proyek ambisius seperti itu mungkin akan menghasilkan banyak frustrasi dan mungkin meninggalkan desain FPGA sama sekali.
Biarkan saya memasukkannya dalam istilah perangkat lunak: Proyek ini akan seperti seseorang yang belum pernah melakukan perangkat lunak menulis kompiler C lengkap - dari awal.
Mulai lebih kecil dan Anda akan jauh lebih bahagia.
Edit: Menambahkan hal-hal di bawah ini.
Itu semua dikatakan, sulit untuk memberikan rekomendasi yang bagus untuk dewan. Alasan untuk ini adalah bahwa papan apa pun yang saya rekomendasikan untuk seseorang tanpa pengalaman FPGA sama sekali bukan papan yang sama yang saya rekomendasikan untuk melakukan proyek jenis CPU. Papan pemula mungkin berharga US $ 50-100, sementara papan untuk melakukan CPU + VGA + Flash_Card + Apa pun yang mungkin US $ 1000-2000.
Ada juga peluang besar bahwa sekali Anda melakukan beberapa desain FPGA sederhana maka Anda akan berubah pikiran dan ingin melakukan proyek yang berbeda di kemudian hari.
Rekomendasi saya adalah bagi Anda untuk mendapatkan papan sederhana di kisaran harga di bawah US $ 100 terlebih dahulu. Kemudian ketika Anda siap untuk menangani proyek yang lebih besar Anda dapat membeli papan yang lebih mahal yang dekat dengan apa yang Anda inginkan (apa pun itu saat itu).
Papan yang saya suka adalah yang ini: http://www.xilinx.com/products/boards-and-kits/AES-S6MB-LX9.htm
Tidak mahal, menggunakan bagian generasi sekarang, berasal dari manufaktur Tier-1, dan bahkan dapat melakukan beberapa hal CPU sederhana.
sumber
Hmmm, sayangnya itu vhdl, saya akan mengatakan mulai dengan verilator atau icarus Verilog. Sebagai gantinya mungkin menggunakan ghdl. Saran pertama adalah menjalankan simulasi lingkungan, mulai membangun hal ini di sana.
Sebelum memilih papan FPGA Anda perlu merasakan seberapa besar ini, berbagai alat gratis, atau gratis dengan pengorbanan alamat email Anda dan beberapa info lainnya. Coba kisi-kisi, altera, xilinx, dll alat, mulai ketat dengan inti T80 dan beberapa fpgas target ini yang Anda lihat. Saya menduga semua hal yang ingin Anda tambahkan akan sangat meningkatkan persen jumlah penuh apa pun yang Anda buat ketika Anda mengimplementasikan inti T80. Saya yakin, inti saja, Anda akan dapat menghilangkan beberapa kandidat.
Mungkin papan fpgaarcade, yang dalam beberapa bentuk telah menggunakan inti T80, adalah apa yang Anda cari ... Ketika tersedia.
Saya harus setuju sepenuhnya dengan David yang lain, jika Anda belum menjadi pengembang fpga / board profesional, ini bukan tempat Anda memulainya, Anda mungkin sedang mencari pekerjaan selama bertahun-tahun, kemungkinan akan membeli beberapa papan bernilai ribuan dolar saat Anda hancurkan mereka dengan kesalahan, dll. Jika Anda memiliki uang sebanyak itu, mungkin Anda harus menyewa konsultan untuk memandu Anda melalui proses tersebut. Atau minta papan dibangun khusus.
Lebih banyak kekuatan untuk Anda jika ini benar-benar sesuatu yang ingin Anda lakukan, cukup pandai tentang hal itu, mulailah dengan intinya, dan beberapa program sederhana yang mengedipkan beberapa petunjuk dan lakukan cara Anda dari sana, perlahan-lahan. Saya sangat merekomendasikan rute simulasi. Selain kepuasan instan, jangan repot-repot dengan silikon sampai Anda berada lebih jauh. Pada saat itu Anda akan memiliki lebih banyak desain dan dapat menggunakan alat untuk melihat apa yang cocok. Jika Anda tidak bisa menjalankannya dalam simulasi, Anda mungkin tidak akan menjalankannya dalam silikon.
sumber
Jika Anda ingin mensimulasikan komputer dengan video keluar, maka cobalah untuk mendapatkan sesuatu dengan ram yang cukup karena Anda akan membutuhkannya untuk memori sistem dan video. Jelas konektor built-in untuk VGA bagus, meskipun jika Anda ingin melakukan simulasi tepat waktu dari beberapa sistem awal Anda mungkin perlu menghasilkan video komposit dengan mencangkok pada DAC atau bahkan R2R resistor DAC.
Kemudian mungkin pilih opsi chip count gerbang terbesar yang tersedia di papan yang didukung oleh versi gratis alat FPGA . Chip yang lebih besar secara implisit memiliki lebih banyak balok ram (saya telah melihat banyak desain didorong oleh itu daripada menghitung gerbang) namun Anda mungkin ke wilayah aplikasi di mana ram eksternal dan FPGA lebih kecil lebih murah daripada FPGA yang cukup besar untuk melakukan semuanya onchip .
Penyimpanan flash selalu dapat dicangkokkan di lain waktu - misalnya kartu SD multi-gigabyte yang dihubungkan dalam mode SPI.
Umumnya papan FPGA datang dalam kelas $ 100-200, dan kemudian kelas yang sangat mahal. Anda mungkin dapat membuat sedikit kemajuan dengan salah satu dari yang sebelumnya.
sumber
Saya adalah pengirim asli dari pertanyaan ini, tetapi saya belum boleh login, atau belum membuat akun ...
Bagaimanapun, pada akhirnya saya mengesampingkan proyek selama 4 atau 5 bulan, tetapi kemudian pergi dengan papan Nexys3 dan sekarang memiliki komputer Microbee dan berjalan. Anda dapat membacanya di sini: http://www.toptensoftware.com/fpgabee .
Secara keseluruhan, saya sudah sangat senang dengan Nexys3, ia menangani inti T80 dengan ruang cadangan, tidak terlalu mahal ($ 250) dan memiliki semua yang saya butuhkan (dan banyak lagi).
Kekecewaan utama adalah saya belum bisa mendapatkan antarmuka keyboard USB-HID untuk bekerja dan meskipun saya masih dalam diskusi dengan Digilent tentang hal itu, saya menduga itu hanya bekerja dengan beberapa keyboard dan saya belum bisa temukan yang kompatibel (Saya sudah mencoba sekitar 8 keyboard yang berbeda sekarang). Tidak ada desain referensi untuk itu, tes periferal tidak menguji keyboard dan saya pernah membaca orang lain memiliki masalah yang sama.
sumber