Bir FPGA'yı yanlış programlayarak gerçekten bozabilir misiniz ?
Ben gerçekten bir yazılımcıyım. Yazılımınız yanlış ise, her türlü önemli veriyi yok edebileceğiniz ve hatta belki de tüm makineye zarar verebileceğiniz bir sır değil. Ancak bir bilgisayarı yalnızca programlayarak fiziksel olarak zarar vermek gerçekten zordur .
(Halt-and-Catch-Fire talimatının sonsuz bir söylentisi vardır, ya da anakartı tuğlalamak ya da monitörünüzü kızartmak için yanlış değerleri grafik kartına programlamak için sistem donanım yazılımını yeniden aktarabilmek. : söylentiler. Ve uzun zamandır kullanılmayan donanımlar hakkında. Modern bilgisayar donanımlarını kötü programlamayla kırmak gerçekten çok zor görünüyor.)
Bir FPGA ile bireysel devreleri (en azından nominal olarak) birbirine bağlarsınız. Bir hata durumunda fiziksel hasarın meydana gelmesi tamamen makul görünüyor.
Örneğin, iki çıktının birbirine bağlanmasını isteyen bir VHDL yazabilirsiniz. Farklı mantık seviyeleri çıkarırlarsa, bunun muhtemelen bir şeyi kızarttığını hayal ediyorum. (Ben ediyorum umarım bunu yapamazsın en sentez aracı çığlık ki ... ama bu tür araçlar aslında hata kontrolü bu seviyede uygulamak eğer bilmiyorum.)
Yanlışlıkla FPGA modelini sentez aracında yanlışlıkla seçmek ve böylece çipinizi tamamen farklı bir model için tasarlanmış bir bit akımıyla programlamaya çalışmak son derece mümkün görünüyor. Ne olacağını bilemem, ama "kötü" olacağından şüpheleniyorum.
Bu nedenle, FPGA yongasını kesinlikle devrenin geri kalanına yanlış bağlayabilirsiniz. Örneğin, pin numaralarını karıştırırsanız, anakartın FPGA'nın da kullanmaya çalıştığı bir G / Ç pimi sürmeye çalışmasına neden olabilirsiniz. G / Ç pimleri genellikle böyle bir hataya karşı “korumaya” sahip midir? Yoksa çip sadece kızarır mı?