FPGA คืออะไร

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

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

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

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

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

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

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