Yumuşak Çekirdekli İşlemciler VS Sert Çekirdekli İşlemciler


19

ARM9 gibi Mikroişlemci ile FPGA arabirimi üzerinde bir çalışma yapıyorum.

Çalışmamda Yumuşak çekirdek ve Sert çekirdek İşlemciler kavramına rastladım. Bu 2 tip arasındaki karşılaştırmanın ne olduğunu öğrenebilir miyim; benzerlik veya uygulamadaki farklılıklar?

Yanıtlar:


19

Yumuşak çekirdek FPGA kumaşa uygulanırken Hard, FPGA kumaşa bağlıyken tüm entegre devrelerle aynı şekilde uygulanır. Karşılaştırma genellikle aşağıdakilere kadar kaynar:

Sabit Çekirdekli İşlemciler - 1 GHz + hıza kadar 100 MHz MHz

  • Optimize edildiği ve kumaş hızı ile sınırlı olmadığı için çok daha yüksek işlem hızlarına ulaşabilir
  • Sabit ve değiştirilemez (işleme için FPGA kumaştaki özel mantıktan yararlanabilir)

Yumuşak Çekirdekli İşlemciler - 250MHz ve daha az (genellikle 200MHz'den az)

  • Özel gereksinimler, daha fazla özellik, özel talimatlar vb.İçin kolayca değiştirilebilir ve ayarlanabilir.
  • Birden fazla çekirdek kullanılabilir (kaynaklar pahasına)
  • Kumaşın hızı ile sınırlıdır.

Son yıllarda, öncelikle yumuşak çekirdeklerin sağlayamadığı daha hızlı işleme ihtiyacı nedeniyle sabit işlemciye doğru büyük bir hareket oldu. FPGA yapısı ile bir sabit çekirdekli işlemci koyduğunuzda, genellikle iletişim altyapısı uygulamaları için gerekli olan çok sayıda verinin işlenmesini etkinleştirebilirsiniz (çok sayıda GB veri).


11

Yumuşak çekirdekli işlemci, FPGA dokusu kullanılarak uygulanan bir işlemcidir.

Sert çekirdekli işlemci, aslında silikonda bir yapı olarak fiziksel olarak uygulanan bir işlemcidir.

Temel olarak, zaten tasarlandıktan sonra FPGA tabanlı bir sisteme yumuşak çekirdekli bir işlemci ekleyebilirsiniz. Ancak, bir sabit çekirdekli işlemci eklemek için farklı bir FPGA veya kartta ek bir yonga gerekir.


Donanım çekirdeği için fiyat / hesaplama-güç oranı çok daha iyi olduğu için mümkün olduğunda sert çekirdekli işlemciler tercih edilir. FPGA kumaşa bir CPU uygulamak, özellikle çok fazla bilgi işlem gücü istiyorsanız, çok yoğun kaynak gerektirir. Eşdeğer donanım CPU'su muhtemelen çok daha ucuzdur.


Donanım CPU'su sadece daha ucuz olmakla kalmaz, aynı zamanda çok daha enerji verimli olması da muhtemeldir. Pille çalışan platformlarda, uzun pil ömrü için verimlilik çok önemlidir. Bir FPGA'daki kullanılmayan kapılar bazen kapatılabilir, ancak genellikle yumuşak çekirdekli bir işlemcide bir amaç tasarımlı donanım CPU'sundan çok daha fazla aktif devre vardır. Tüm bu potansiyel FPGA silikon güç tüketir.


"Sert" ve "yumuşak", yalnızca çekirdeğin kumaşta uygulanıp uygulanmadığına değil, kullanılan donanım açıklamasına da başvurabilir (bkz. ARM'nin "Sert Makro İşlemcileri" ) Bu Western Design Center, Inc., bunun bir örneğini sunar kullanın: "ASIC (Manuel Olarak Optimize Edilmiş GDSII Sabit Çekirdek ve Verilog RTL Yumuşak Çekirdek) ve FPGA (Verilog RTL Yumuşak Çekirdek)". FPGA bağlam olabilir (RTL vs. ikili blob / LUT başlatma değerleri benzer görünüyor olsa da) terimlerinin bu kullanım dahil değildir.
Paul A. Clayton

Temel olarak, yumuşak çekirdek = FPGA, sert çekirdek = ASIC?
nalzok

@nalzok - Evet. Bir CPU'yu başka bir CPU'ya öykünmeyi "yumuşak" bir çekirdek olarak adlandırmak için bir argüman görebiliyordum, ancak insanlar bu emülasyonu deneyimlerime çağırıyorlar.
Connor Wolf
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.