Manufaktur industri
Industri Internet of Things | bahan industri | Pemeliharaan dan Perbaikan Peralatan | Pemrograman industri |
home  MfgRobots >> Manufaktur industri >  >> Industrial Internet of Things >> Tertanam

Pengembangan Perangkat Lunak Pra-Silikon: Mempercepat Waktu ke Pasar dengan Emulasi SoC

Dalam era teknologi yang bergerak cepat saat ini, pendekatan paling umum untuk memenuhi permintaan pasar adalah system-on-chip (SoC). Sebuah SoC adalah satu inti prosesor terpadu yang dikelilingi oleh akselerator spesialis dan I/O ekstensif yang mendukung periferal yang dioperasikannya.

Sejak boom data seluler pada 2002, SoC telah menjadi tak tergantikan untuk mengaktifkan fitur inti yang mendefinisikan smartphone. Tren yang sama kini mendorong keberadaan mereka yang luas dalam perangkat konsumen “pintar”—TV pintar, mobil terhubung, dan ekosistem Internet-of-Things (IoT) yang berkembang pesat.

Permintaan yang meningkat untuk SoC telah mengubah pasar menjadi arena yang sangat kompetitif. Responsnya, desainer membangun perangkat yang lebih kompleks, terus mengembangkan keluarga periferal, dan menyusutkan jendela antara desain dan peluncuran. Untuk mengikuti jejak, perangkat lunak harus tersedia secepat mungkin dan harus cukup kuat untuk menghindari perbaikan post-tape-out yang mahal.

Secara tradisional, tim perangkat lunak SoC menunggu contoh silikon pertama sebelum memulai pengembangan. Kedatangan prototipe silikon akan memicu sprint bring-up yang singkat dan intens di mana pengembang dari seluruh dunia berkumpul untuk memvalidasi driver dan antarmuka. Bahkan dengan jadwal agresif ini, perangkat lunak biasanya membutuhkan bulan—kadang-kadang tahun—untuk mencapai kesiapan produksi, sehingga sedikit kepercayaan sebelum produksi massal dapat dimulai.

Dengan desain SoC yang semakin besar dan kompleks, kesenjangan antara ketersediaan silikon dan perangkat lunak yang siap produksi dapat merangkak menjadi beberapa tahun. Evolusi yang cepat dari keluarga periferal—audio, video, USB, Ethernet, dll.—juga menciptakan kesenjangan keahlian yang harus diatasi dengan merekrut spesialis, yang lebih meningkatkan biaya dan jadwal.

Untuk menyampaikan perangkat lunak yang andal lebih awal, industri mengadopsi filosofi “shift-left”: memulai pengembangan secara bersamaan dengan desain hardware. Pengembangan pra-silikon tidak hanya mempercepat pipeline perangkat lunak tetapi juga mengungkapkan bug tingkat desain, memungkinkan penyelubungan mask mahal dihindari.

Strategi Pengembangan Pra-silikon

Perangkat lunak dapat dimulai sebelum tape-out menggunakan beberapa teknik: prototipe perangkat lunak, testbench RTL, prototipe FPGA, dan, paling efektif, emulasi sistem penuh. Setiap metode fokus pada tingkat abstraksi tertentu dan datang dengan trade-off masing-masing.

Model Behavior System-C

Membuat model System-C untuk setiap blok IP memungkinkan pengembang menulis dan menguji driver dalam isolasi. Namun, upaya untuk memodelkan setiap periferal dengan akurat adalah besar, membutuhkan tim yang khusus yang dapat dengan cepat melebihi anggaran proyek. Selain itu, model behavior sangat bergantung pada interpretasi modeler; ketidakcocokan antara niat desain dan model dapat mengarah pada bug halus yang mahal untuk didiagnosis nanti.

Testbench RTL

Testbench RTL, yang dibangun dari Verilog atau VHDL yang sama yang digunakan untuk verifikasi, menyediakan simulasi siklus-akurat dari seluruh SoC. Mereka tetap sinkron dengan desain hardware, memastikan representasi yang paling terkini. Kekurangannya adalah kecepatan: simulasi siklus-akurat jauh lebih lambat dari hardware nyata, membuat pengembangan driver menjadi proses yang lambat berlangsung berbulan-bulan yang dapat meniadakan manfaat dari memulai lebih awal.

Prototipe FPGA

FPGA modern sekarang mampu mensintesis seluruh blok IP dari RTL, memberikan perilaku siklus-akurat pada sebagian kecil waktu simulasi. Dengan memetakan setiap periferal pada FPGA terpisah, pengembang dapat menulis dan mendebug driver dengan cepat. Trade-offnya adalah integrasi SoC penuh—bagaimana blok berkomunikasi dan berbagi sumber daya—hilang, membatasi kedalami validasi dan meninggalkan masalah tingkat integrasi untuk muncul hanya setelah silikon tersedia.

Sinopsis solusi pengembangan perangkat lunak pra-silikon. (Sumber: Nitin Garg)
Pengembangan Perangkat Lunak Pra-Silikon: Mempercepat Waktu ke Pasar dengan Emulasi SoC

Emulator SoC

Emulator SoC mewakili pendekatan paling seimbang. Dibangun pada RTL yang sama dengan silikon, mereka menawarkan kinerja siklus-akurat sambil berjalan 100× lebih cepat dari testbench Verilog. Kecepatan ini memungkinkan porting OS lengkap, pengembangan driver, dan pengujian tingkat sistem dalam minggu bukan bulan.

Emulator juga mendukung berbagai periferal—UART, I²C, pengontrol layar, PCIe, Ethernet, Wi-Fi, kamera, sensor—memungkinkan pengembang untuk mengemulasi papan pengembangan lengkap. Perangkat lunak dapat di-debug dengan alat JTAG standar, dan perangkat nyata atau virtual seperti flash NAND dapat dilampirkan, menyediakan lingkungan yang realistis untuk validasi ROM, OS, dan firmware.

Di luar pengembangan awal, emulator bersinar selama debug pasca-silikon. Karena mereka menjalankan OS dan driver yang sama dengan produk akhir, insinyur dapat mereplikasi masalah tingkat silikon pada emulator, menganalisis jejak sinyal, dan memverifikasi perbaikan sebelum silikon mencapai lapangan.

Dalam studi perbandingan, emulator secara konsisten unggul dibandingkan model System-C, testbench RTL, dan prototipe FPGA dalam hal kecepatan, cakupan, dan efektivitas biaya. Sementara investasi awal dalam platform emulator mungkin tampak tinggi, penghematan dari waktu ke pasar yang lebih terpendek dan mitigasi risiko sering kali melampaui biaya.

Gambar 2. Kecepatan eksekusi perbandingan setiap solusi. (Sumber: Nitin Garg)
Pengembangan Perangkat Lunak Pra-Silikon: Mempercepat Waktu ke Pasar dengan Emulasi SoC

Menurut Hukum Moore, jumlah transistor melipat dua setiap dua tahun, mendorong SoC berbasis ARM 64-bit saat ini menuju 100–300 juta logika gerbang. Dalam lingkungan ini, hanya emulator sistem penuh yang dapat menskala untuk memenuhi tuntutan tim perangkat lunak SoC modern.

Referensi

  1. Trimberger, Stephen M. “Three Ages of FPGAs.” IEEE Xplore Full-Text PDF: 2015, https://ieeexplore.ieee.org/stamp/stamp.jsp?arnumber=7086413.
  2. Brunet, Jean-Marie. “Why Modern SoC Designs Embrace Emulation.” Embedded Computing Design, 5 Sept. 2018, https://embedded-computing.com/embedded-computing-design/why-modern-soc-designs-embrace-emulation.
  3. “Soc Emulation.” Soc Emulation, 2019, https://www.aldec.com/en/solutions/hardware_emulation_solutions/co-emulation-soc-emulation.
  4. “Cramming More Components onto Integrated Circuits.” https://www.cs.utexas.edu/, 2006, cs.utexas.edu/~fussell/courses/cs352h/papers/moore.pdf.

Tertanam

  1. RISC‑V Summit 2020: Sesi Utama & Highlight
  2. SOAFEE: Arsitektur Cloud-Native yang Memberdayakan Platform Otomotif yang Didefinisikan oleh Perangkat Lunak
  3. Keamanan Hardware Memimpin IIoT dengan Ketahanan Manipulasi dan Perlindungan Kuat
  4. Qualcomm Umumkan Snapdragon Wear 4100+ – Peningkatan Performa 85%, Baterai 25% Lebih Lama, dan Kamera 16-MP untuk Jam Tanggul Cerdas Generasi Depan
  5. Mini-Circuits & Vayyar Meluncurkan Kit Pengembangan VTRIG-74: Citra Gelombang Milimeter 4D
  6. ECM3532: Papan Sensor AI Ultra-Rendah Daya Terpadu Pertama Eta Compute
  7. Menguasai Pengembangan Perangkat Lunak Lean: Panduan Praktis untuk CTO di Raleigh pada 2022
  8. Pengembangan Perangkat Lunak Kesehatan Kustom 2024: Panduan Definitif untuk Meluncurkan Proyek Anda
  9. Pengembangan Perangkat Lunak Kustom 2022: Panduan Strategis untuk Pemimpin C-Suite di Raleigh
  10. 5 Wawasan Penting tentang Pengembangan Perangkat Lunak Agile untuk Bisnis