Skip to main content

FPGA คืออะไร?

อาร์เรย์เกตที่ตั้งโปรแกรมได้ (FPGA) เป็นชิปลอจิกคอมพิวเตอร์ที่ผู้ผลิตไม่ได้เดินสายซึ่งหมายความว่าสามารถตั้งโปรแกรมได้หลังการซื้อมีตัวเลือกหลายพันตัวสำหรับการปรับแต่งที่มีอยู่ใน FPGA ทั่วไปเอนทิตีที่ตั้งโปรแกรมได้เหล่านี้เป็นประตูหรือที่เรียกว่าบล็อกลอจิกหรือไฟล์ค้นหาตาราง (LUT)

เป็นจำนวนบล็อกลอจิกใน FPGA มีจำนวนมากเกินกว่าที่จะสร้างด้วยตนเองพวกเขาถูกสร้างขึ้นผ่านโปรแกรมซอฟต์แวร์โปรแกรมเมอร์สามารถเลือกจากหลากหลายหมวดหมู่เพื่อปรับแต่งพวกเขาสำหรับระบบเฉพาะพวกเขาสามารถใช้โปรแกรมของตัวเองเพื่อโต้ตอบกับโปรแกรมบนชิป FPGA และทำการเปลี่ยนแปลง

เมื่อเขียนโปรแกรม FPGA องค์ประกอบที่เชื่อมต่อระหว่างกันหลายอย่างอาจใช้ในการกำหนดค่าบล็อกลอจิกตามต้องการเนื้อหาของ Luts แตกต่างกันไปขึ้นอยู่กับวิธีที่พวกเขาได้รับการตั้งโปรแกรมบางคนทำหน้าที่เดียวในขณะที่คนอื่น ๆ มีความสามารถในการทำงานที่ซับซ้อนมากขึ้นFPGA บางตัวอาจมีทั้งองค์ประกอบแบบอะนาล็อกและดิจิตอลชิปเหล่านี้มักจะมีความสามารถอนุญาตให้องค์ประกอบเหล่านี้ทำงานร่วมกันได้

luts เชื่อมต่อด้วยเครือข่ายสายไฟขึ้นอยู่กับฟังก์ชั่นที่จำเป็นสายไฟสามารถเรียกใช้ผ่านไฟล์เป็นเส้นตรงหรือเครือข่ายที่ซับซ้อนมากขึ้นของการเชื่อมต่อในแนวทแยงLUT อาจเชื่อมต่อกับไฟล์อื่น ๆ ผ่านการเชื่อมต่อสายหลายสายไฟล์อาจเชื่อมต่อด้วยชุดสายไฟที่เรียกว่าพกพาหรือโซ่เส้นทางเฉพาะซึ่งช่วยในการเคลื่อนย้ายข้อมูลบางประเภทเท่านั้นเพื่อให้สามารถประมวลผลได้เร็วขึ้น

เพื่อโปรแกรมฟังก์ชั่นตรรกะด้วย FPGAก่อนอื่นจะระบุไว้ในไฟล์ข้อความหรือภาพจากนั้นข้อมูลจะถูกดาวน์โหลดลงในซอฟต์แวร์ที่มาพร้อมกับ FPGAเมื่อกระบวนการนั้นเสร็จสมบูรณ์ฟังก์ชั่นมักจะใช้งานได้

แม้ว่า FPGA จะมีราคาแพงกว่าชิปลอจิกแบบเดินสาย แต่ก็สามารถช่วยประหยัดทรัพยากรได้เนื่องจากผู้ใช้สามารถตั้งโปรแกรมให้เหมาะสมกับข้อกำหนดเฉพาะของพวกเขาสิ่งนี้สามารถลดความจำเป็นในการทำงานเพิ่มเติมและเวลาเพิ่มเติมที่จำเป็นในการรองรับชิปที่ไม่ได้ทำเองชิปที่ตั้งโปรแกรมได้นั้นสามารถใช้งานได้ง่ายขึ้นเช่นฟังก์ชั่นผู้ใช้เช่นเมนูสามารถปรับแต่งได้

วงจรอาร์เรย์เกตที่ตั้งโปรแกรมได้แบบฟิลด์เป็นอีกทางเลือกหนึ่งของวงจรรวมเฉพาะแอปพลิเคชัน (ASIC)วงจรเหล่านี้จะเดินสายก่อนออกจากโรงงานพวกเขาเป็นส่วนประกอบระดับบอร์ดซึ่งตรงข้ามกับองค์ประกอบระดับประตูที่ตั้งโปรแกรมได้