Dalam medan, jika satu-satunya konstan adalah perubahan, maka tidak perlu untuk meninjau pembangunan dan perubahan teknologi elektronik dan kaedah desain untuk menyaksikan bagaimana perubahan memungkinkan jurutera desain untuk mencipta generasi berikutnya produk inovatif. Selepas aplikasi skala besar mikroprosesor, teknologi baru yang tidak mahal dan berkualiti tinggi telah membuka pintu untuk desain produk elektronik berasaskan perisian inovatif. Ini contoh yang bagus. Secara singkat, selepas memindahkan unsur utama desain-di sini adalah kawalan "kecerdasan"-ke domain lembut, jurutera desain boleh mencipta produk yang lebih baik, lebih bijak, dan murah dalam masa yang singkat.
Perubahan ini bermakna pembangun perisian terbenam adalah pemacu utama definisi hari ini fungsi dan ciri-ciri produk elektronik, dan akhirnya akan menghasilkan perkakasan. Faktor kejayaan kaedah ini adalah pengurangan kompleksiti perkakasan dan fleksibiliti terbuka yang dibawa oleh pengubahan unsur kawalan desain ke medan yang boleh diprogram.
Hari ini, kedatangan peranti yang boleh diprogramkan dengan kapasitas tinggi dan biaya rendah telah membawa harapan yang sama kepada pembangunan desain produk elektronik, kerana ia telah menjadi mungkin untuk menentukan perkakasan sistem sendiri dalam medan lembut. Peranti skala besar seperti FPGA kapasitas besar adalah ideal untuk memenuhi permintaan ini. Period ini biasanya boleh digunakan untuk membina bahagian besar dari blok fungsi logik periferik sistem, termasuk antaramuka bas, blok I/O, dan bahkan ingatan. Perkenalan sejumlah besar logik ke medan FPGA mempunyai kesan yang mendalam pada pembangunan perkakasan dan membuka pintu ke era baru desain 'lembut', yang menyediakan fleksibiliti tidak terdahulu untuk desain dan mempunyai potensi tak terbatas untuk mengurangkan saiz papan dan kompleksiti.
Walaupun ia mempunyai potensi untuk revolusi proses pembangunan produk elektronik, kebanyakan pembangun perisian terbenam masih bekerja sebagai pemproses perisian diskret sebelum-pilih pada permulaan proses desain, mencipta platform fisik, dan kemudian tulis perisian Gunakan platform. Kekurangan pengeksplorasi orang dalam medan "lembut" dan perkakasan pembangunan sistem terlibat adalah sebab kekurangan alat bagi pemrogram C untuk menggunakan kemahiran mereka pada tahap perkakasan yang boleh diprogram. Sebenarnya, kebanyakan aliran rancangan FPGA semasa terutama berasal dari medan rancangan cip dan memerlukan keterampilan yang sangat profesional.
Ambil desain lembut ke aras berikutnya
Untuk melampaui aplikasi logik glue FPGA memerlukan visi yang lebih luas, termasuk penggunaan penuh peranti yang boleh diprogramkan dan memperkenalkan sebanyak mungkin perkakasan ke dalam domain lembut. Ini termasuk perkenalan fungsi pemproses sendiri. Hari ini, pemproses lembut dalam FPGA semakin berubah menjadi platform terbenam. Pada dasarnya, menukar ke pemproses lembut dengan FPGA akan membawa keuntungan fleksibiliti struktur, saiz papan yang lebih kecil, dan lebih mudah. Tetapi aplikasi yang lebih dalam akan membawa keuntungan yang lebih menarik.
Apabila ciri yang boleh diprogram FPGA digunakan untuk mendapatkan lapisan abstraksi di atas pemproses, ia membuka kemungkinan tak terbatas untuk pembangun terkandung, bukan hanya untuk menyedari reka aras abstrak dalam perisian, tetapi juga dalam perkakasan. Bayangkan sistem di mana pemproses disambung ke memorinya dan periferi melalui perkakasan yang boleh konfigurasi (pada dasarnya pakej perkakasan) - ini menyerap antaramuka pemproses. Hanya memprogram semula FPGA mengubah pakej perkakasan, dan perancang sistem boleh mudah mengubah inti pemproses, atau bahkan menukar antara pemproses keras dan lembut, tanpa mengubah perkakasan sistem lain. Dari sudut pandang sistem, semua pemproses sama, yang mempermudahkan proses desain perkakasan. Sudah tentu, memperluas ini ke medan perisian aplikasi juga memerlukan kompiler yang boleh menyediakan kompatibilitas aras-C antara pemproses.
Keuntungan sistem ini adalah bahawa tidak perlu membuat pilihan pemproses "di hadapan". Sistem mungkin dikembangkan menggunakan pemproses tertentu, tetapi tahap pembangunan mendapati bahawa prestasi yang lebih tinggi diperlukan dan peranti yang lebih cepat digunakan. Kerana lapisan pembungkus, pemproses boleh lembut, keras, atau bahkan inti pemproses perkakasan di dalam FPGA, tanpa mempengaruhi perkakasan sekeliling, kerana lapisan pembukaan hanya mencipta antaramuka piawai untuk menyambung periferi. Sebenarnya, sambungan peranti periferik sendiri boleh ditambah dengan cara yang sama. Dalam skema ini, FPGA menyediakan sambungan universal untuk semua komponen sistem terkandung, dan secara efektif menjadi struktur sambungan sistem. Dengan kata lain, ia menjadi "tulang belakang" antaramuka piawai, dan perkakasan dan perisian boleh berkomunikasi dengan mudah dengan pemproses dan peripheral.
Akhirnya, perkenalan pembungkus lutsinar pada pemproses akan mencipta persekitaran pembangunan berasaskan FPGA yang menyediakan kemerdekaan pemproses yang sebenar. Kelajuan pembangunan perisian dan perkakasan telah meningkat, pemilihan pemproses boleh dilakukan dalam tahap kemudian proses desain, dan perangkat lunak/perkakasan yang berkesan menjadi mungkin.
Tukar antara perisian dan perkakasan
Sambungan idea untuk mencipta pemproses dan lapisan pembungkus peripheral dalam perkakasan boleh konfigurasi adalah untuk menghasilkan perkakasan sistem spesifik aplikasi secara automatik dan melaksanakan algoritma perisian dalam perkakasan jenis koprocesor perkakasan "owna".
Idea untuk menghasilkan perkakasan secara langsung dari kod C bukanlah baru. Beberapa sistem telah dilaksanakan. Idea sehingga sekarang adalah untuk mencipta perkakasan sistem lengkap melalui bahasa seperti C. Pada dasarnya, ini tidak berbeza dari menggunakan HDL (seperti VHDL atau Verilog) untuk merancang FPGAs, memerlukan pembangun perisian untuk belajar dan menerima kaedah merancang baru. Apa yang benar-benar berfungsi untuk pembangun terlibat adalah untuk membuat proses transparan. Alat desain mesti mampu memproses input kod ANSI C piawai dan tukar fungsi yang dipilih oleh pemrogram ke perkakasan. Bukan hanya itu, sistem mesti mampu menghasilkan semua kod yang diperlukan untuk menggunakan perkakasan yang dijana. Dengan cara ini, pemrogram terkandung memuat turun algoritma dedikasi dari pemproses ke perkakasan dedikasi tanpa mengetahui mana-mana perincian rancangan perkakasan yang didasarkan.
Guna potensi penuh FPGA
Jelas sekali, dari sudut pandangan alat, menggunakan keseluruhan peluang yang diperkenalkan oleh peranti yang boleh diprogramkan (seperti FPGAs) memerlukan sistem yang meningkatkan aras abstraksi proses pembangunan, sehingga unsur utama desain boleh mudah diubah melalui teknik dan proses desain yang sama. Sistem seperti ini mesti mampu menyatukan keseluruhan proses pembangunan produk elektronik dan mengintegrasikan pembangunan perkakasan, perisian, dan perkakasan boleh diprogram dalam persekitaran tunggal dan konsisten.
Figur 1. Mengambil keuntungan penuh dari potensi FPGA bermaksud membawa semua elemen desain (termasuk perkakasan dan perisian) ke medan yang boleh diprogram semula.
Altium Designer memperkenalkan pemproses sederhana, tahap tinggi untuk mencapai tujuan ini, memenuhi perisian, keperluan FPGA dan PCB, dan persekitaran pembangunan produk yang terintegrasi semua proses yang diperlukan dalam aplikasi tunggal (Figure 1). Pembangunan perisian dan perisian adalah bersatu pada aras platform, menjadikan perisian/perisian cepat co-desain mungkin. Dengan pemproses berdasarkan FPGA dan inti pembungkus pemproses, perancang boleh sasarkan Altium Designer atau mana-mana pemproses pihak ketiga yang disokong, sementara menyimpan semua ciri-ciri desain, termasuk sambungan mudah ke periferi FPGA. Kompiler berasaskan-Viper Altium Designer menjamin kompatibilitas kod-tahap C diantara semua arkitektur pemproses yang disokong oleh sistem.
Selain potensi untuk pembangunan produk cepat, sifat terintegrasi Altium Designer juga membawa rancangan baru dan kemungkinan berfungsi untuk pembangun terkandung. Altium juga telah mengembangkan teknologi kompiler perkakasan/perisian terintegrasi baru, yang akan disokong oleh Altium Designer segera. Teknologi ini menghasilkan kod yang boleh dilaksanakan dengan optimasi tinggi dan pelaksanaan FPGA perkakasan bersamaan dari kod C piawai pada masa yang sama, dan menghasilkan kod yang diperlukan untuk paut kedua-dua bersama-sama pada masa berjalan. Dalam praktek, ini bermakna pembangun boleh nyatakan fungsi kod C yang dimuatkan dari pemproses ke perkakasan, dan persekitaran perisian/perkakasan terintegrasi Altium Designer membuat proses cepat dan transparan (Figure 2).
Figur 2. Dengan alat perisian maju, pembangun terbenam boleh mempengaruhi, mengubahsuai dan nyahpepijat perisian sistem asas apabila mereka menjadi jurutera perisian.
Sistem tersebut menyediakan pembangun terkandung dengan pilihan untuk memilih kotak semak sistem untuk mendapatkan potensi untuk prestasi akhir dan peningkatan kos dalam memindahkan fungsi perisian dedikasi ke perkakasan. Ini membenarkan pembangun untuk memindahkan fungsi secara efektif antara perkakasan dan perisian, dan terus mengintegrasikan pada penyelesaian aplikasi yang optimum. Sebuah fenomena menarik yang patut diperhatikan ialah pembangun perisian yang menggunakan ciri-ciri Altium Designer dan ciri-ciri aras tinggi lain (seperti inti pakej terbenam dan komponen perisian berdasarkan perpustakaan) boleh menggunakan perkakasan dalam mekanisme FPGA secara efektif. Secara singkat, jurutera perisian yang menggunakan sistem ini boleh menggunakan kemampuan mereka yang wujud untuk menggunakan perkakasan FPGA dengan mudah tanpa melibatkan struktur asas peranti sasaran atau program RTL (Figure 3).
Gambar 3, integrasi aliran rancangan termasuk perkakasan, perkakasan yang boleh diprogramkan, dan perisian membolehkan peranti FPGA digunakan dan mencipta sistem terkandung lengkap, dan ini hanya memerlukan teknologi umum.
Kombinasi persekitaran pembangunan terintegrasi Altium Designer dan FPGAs skala besar yang bernilai rendah membolehkan pembangun terkandung untuk mengeksploitasi sepenuhnya potensi peranti yang boleh diprogramkan. Selepas menggunakan persekitaran pembangunan yang betul, ruang reka-reka besar yang boleh dikonfigurasi semula dibawa oleh FPGA semasa membuat kaedah reka-reka terlibat baru mungkin, dan reka-reka boleh membawa inovasi revolusi kepada pembangunan produk elektronik, seperti beberapa dekad yang lalu. Perkenalan pemproses telah mengubah industri elektronik.