Fark, donanımı büyük ölçüde etkileyen yazılım ve işlevsellikte.
FTDI JTAG kabloları JTAG sinyalleri üretmek için bir komut seti kullanır. Bunlar çok düşük seviyeli komutlardır, genellikle JTAG statemachine'ın nasıl çalıştığı ve çalıştırıldığı ile ilgili ayrıntılara girerler. Kurulumunuz için doğru komutları gönderme mantığı, bilgisayarınızdaki hata ayıklama ana bilgisayarında yapılır.
Bu işlevsel, ucuz donanım, özgür yazılım (GNU GCC + GDB + OpenOCD), vb. .
Ticari kablolar bir platforma çok daha spesifiktir ve genellikle kablo içinde mantık içerir. Bu, PC programının cihazla daha hızlı bir şekilde daha soyut bir şekilde konuşmasını sağlar.
Örneğin: JLINK USB protokolüne bakın . EMU_CMD_WRITE_MEM_ARM79 gibi komutlar içerir. FTDI kabloları da bu komutu yürütebilir, ancak PC tarafında FTDI kablosunun anladığı düşük seviye JTAG komutlarına çevrilir. Ayrıca, yüksek düzey komutun (bazı bellek yazma), JLINK'in kendi kablosunda yapabileceği daha birçok alt komuta bölünmesi anlamına gelir. Bu daha iyi gecikme (USB sınırlamaları dikkate alınarak) ve / veya daha yüksek hız ile sonuçlanabilir.
Hangi kabloyu destekledikleri de IDE ticari satıcılarına bağlıdır ve ticari bir kablonun desteklenmesi daha olasıdır. Öte yandan, serbest IDE'lerin ucuz FTDI hata ayıklama kablolarını desteklemesi daha olasıdır.
Bazı ticari yazılımlar, donanımın izin verdiğinden daha fazla kod kesme noktası ayarlayabileceğiniz yazılım kodu kesme noktaları desteği de içerir.
Bazı mikro denetleyicilerin izleme işlevlerini kullanmak için 4 bitlik bir paralel veri yolu yakalamak için çok hızlı bir donanım gerekir. Bu özelliğe sahip donanımlar genellikle bir FPGA içerir.