(ใหม่และต้นฉบับ) ในสต็อก 3S200A-4FTG256C ชิป IC XC3S200A-4FTG256C
คุณสมบัติของผลิตภัณฑ์
พิมพ์ | คำอธิบาย | เลือก |
หมวดหมู่ | วงจรรวม (IC) |
|
นาย | เอเอ็มดี ซีลินซ์ |
|
ชุด | สปาร์ตัน®-3A |
|
บรรจุุภัณฑ์ | ถาด |
|
สถานะสินค้า | คล่องแคล่ว |
|
จำนวนห้องปฏิบัติการ/CLB | 448 |
|
จำนวนองค์ประกอบลอจิก/เซลล์ | 4032 |
|
บิต RAM ทั้งหมด | 294912 |
|
จำนวน I/O | 195 |
|
จำนวนเกต | 200000 |
|
แรงดันไฟฟ้า – อุปทาน | 1.14V ~ 1.26V |
|
ประเภทการติดตั้ง | ติดพื้นผิว |
|
อุณหภูมิในการทำงาน | 0°C ~ 85°C (ทีเจ) |
|
แพ็คเกจ/กล่อง | 256-LBGA |
|
แพคเกจอุปกรณ์ของซัพพลายเออร์ | 256-FTBGA (17×17) |
|
หมายเลขผลิตภัณฑ์ฐาน | XC3S200 |
อาร์เรย์เกทที่ตั้งโปรแกรมได้ภาคสนาม
กอาร์เรย์เกตที่ตั้งโปรแกรมได้ภาคสนาม(เอฟพีจีเอ) เป็นวงจรรวมออกแบบมาให้กำหนดค่าโดยลูกค้าหรือนักออกแบบหลังการผลิต จึงเป็นที่มาของคำนี้สามารถตั้งโปรแกรมภาคสนามได้.โดยทั่วไปการกำหนดค่า FPGA จะถูกระบุโดยใช้ภาษาคำอธิบายฮาร์ดแวร์(HDL) คล้ายกับที่ใช้สำหรับวงจรรวมเฉพาะการใช้งาน(เอสิค).แผนภาพวงจรก่อนหน้านี้เคยใช้เพื่อระบุการกำหนดค่า แต่สิ่งนี้หายากมากขึ้นเนื่องจากการถือกำเนิดของระบบอัตโนมัติในการออกแบบอิเล็กทรอนิกส์เครื่องมือ
FPGA มีอาร์เรย์ของโปรแกรมได้ บล็อกลอจิกและลำดับชั้นของการเชื่อมต่อระหว่างกันที่กำหนดค่าใหม่ได้ ทำให้สามารถต่อสายบล็อกเข้าด้วยกันได้บล็อกลอจิกสามารถกำหนดค่าให้ดำเนินการที่ซับซ้อนได้ฟังก์ชันผสมหรือทำตัวง่ายๆประตูลอจิกชอบและและแฮคเกอร์.ใน FPGA ส่วนใหญ่ บล็อกลอจิกยังรวมอยู่ด้วยองค์ประกอบหน่วยความจำซึ่งอาจเป็นเรื่องง่ายรองเท้าแตะหรือบล็อกหน่วยความจำที่สมบูรณ์ยิ่งขึ้น[1]FPGA จำนวนมากสามารถตั้งโปรแกรมใหม่เพื่อใช้งานที่แตกต่างกันได้ฟังก์ชันลอจิกทำให้มีความยืดหยุ่นคอมพิวเตอร์ที่กำหนดค่าใหม่ได้ตามที่ดำเนินการในคอมพิวเตอร์ซอฟแวร์.
FPGA มีบทบาทที่โดดเด่นในระบบฝังตัวการพัฒนาเนื่องจากความสามารถในการเริ่มการพัฒนาซอฟต์แวร์ระบบพร้อมกันกับฮาร์ดแวร์ ช่วยให้สามารถจำลองประสิทธิภาพของระบบได้ในช่วงเริ่มต้นของการพัฒนา และอนุญาตให้มีการทดลองระบบและทำซ้ำการออกแบบต่างๆ ก่อนที่จะสรุปสถาปัตยกรรมระบบให้เสร็จสิ้น[2]
ประวัติศาสตร์[แก้ไข]
อุตสาหกรรม FPGA งอกขึ้นมาจากหน่วยความจำแบบอ่านอย่างเดียวที่ตั้งโปรแกรมได้(พรหม) และอุปกรณ์ลอจิกที่ตั้งโปรแกรมได้(PLD)PROM และ PLD ต่างก็มีตัวเลือกในการตั้งโปรแกรมเป็นชุดในโรงงานหรือในภาคสนาม (สามารถตั้งโปรแกรมภาคสนามได้)[3]
อัลเทร่าก่อตั้งขึ้นในปี พ.ศ. 2526 และส่งมอบอุปกรณ์ลอจิกที่ตั้งโปรแกรมได้เครื่องแรกของอุตสาหกรรมในปี พ.ศ. 2527 นั่นคือ EP300 ซึ่งมีหน้าต่างควอตซ์ในแพ็คเกจที่ให้ผู้ใช้สามารถฉายแสงอัลตราไวโอเลตบนแม่พิมพ์เพื่อลบอีพรอมเซลล์ที่เก็บการกำหนดค่าอุปกรณ์[4]
ซีลินซ์ผลิตเครื่องแรกที่สามารถตั้งโปรแกรมภาคสนามได้ในเชิงพาณิชย์อาร์เรย์เกตในปี 1985[3]– เอกซ์ซี2064[5]XC2064 มีเกตที่ตั้งโปรแกรมได้และการเชื่อมต่อระหว่างเกตที่ตั้งโปรแกรมได้ ซึ่งเป็นจุดเริ่มต้นของเทคโนโลยีและตลาดใหม่[6]XC2064 มีบล็อกลอจิก (CLB) ที่กำหนดค่าได้ 64 บล็อก โดยมีอินพุตสามอินพุตสองตัวตารางการค้นหา(LUT)[7]
ในปี 1987ศูนย์สงครามพื้นผิวกองทัพเรือให้ทุนสนับสนุนการทดลองที่เสนอโดย Steve Casselman เพื่อพัฒนาคอมพิวเตอร์ที่จะใช้เกตที่ตั้งโปรแกรมใหม่ได้ 600,000 เกตCasselman ประสบความสำเร็จและมีการออกสิทธิบัตรที่เกี่ยวข้องกับระบบในปี 1992[3]
Altera และ Xilinx ยังคงไม่มีใครทักท้วงและเติบโตอย่างรวดเร็วตั้งแต่ปี 1985 ถึงกลางทศวรรษ 1990 เมื่อคู่แข่งเติบโตขึ้น ซึ่งกัดกร่อนส่วนสำคัญของส่วนแบ่งการตลาดของพวกเขาภายในปี 1993 แอกเทล (ปัจจุบันไมโครเซมิ) ให้บริการประมาณร้อยละ 18 ของตลาด[6]
ช่วงปี 1990 เป็นช่วงที่ FPGA เติบโตอย่างรวดเร็ว ทั้งในด้านความซับซ้อนของวงจรและปริมาณการผลิตในช่วงต้นทศวรรษ 1990 มีการใช้ FPGA เป็นหลักโทรคมนาคมและเครือข่าย.ภายในสิ้นทศวรรษ FPGA ค้นพบช่องทางในการใช้งานสำหรับผู้บริโภค ยานยนต์ และอุตสาหกรรม[8]
ภายในปี 2556 Altera (31 เปอร์เซ็นต์), Actel (10 เปอร์เซ็นต์) และ Xilinx (36 เปอร์เซ็นต์) รวมกันคิดเป็นประมาณ 77 เปอร์เซ็นต์ของตลาด FPGA[9]
บริษัทต่างๆ เช่น Microsoft ได้เริ่มใช้ FPGA เพื่อเร่งความเร็วระบบที่มีประสิทธิภาพสูงและเน้นการประมวลผล (เช่นศูนย์ข้อมูลที่ดำเนินการของพวกเขาเครื่องมือค้นหา Bing), เนื่องจากประสิทธิภาพต่อวัตต์ข้อได้เปรียบที่ FPGA มอบให้[10]Microsoft เริ่มใช้ FPGA เพื่อเร่งความเร็วBing ในปี 2014 และในปี 2018 เริ่มปรับใช้ FPGA กับปริมาณงานของศูนย์ข้อมูลอื่นๆ สำหรับพวกเขาสีฟ้า การประมวลผลแบบคลาวด์แพลตฟอร์ม.[11]
ลำดับเวลาต่อไปนี้ระบุความคืบหน้าในด้านต่างๆ ของการออกแบบ FPGA:
เกตส์
- 1987: 9,000 ประตู, Xilinx[6]
- 2535: 600,000 กรมสงครามพื้นผิวกองทัพเรือ[3]
- ต้นทศวรรษ 2000: ล้าน[8]
- 2013: 50 ล้าน ซีลินซ์[12]
ขนาดตลาด
- 1985: FPGA เชิงพาณิชย์ครั้งแรก: Xilinx XC2064[5][6]
- 1987: 14 ล้านเหรียญสหรัฐ[6]
- ค.1993: >385 ล้านดอลลาร์[6][การตรวจสอบล้มเหลว]
- 2548: 1.9 พันล้านดอลลาร์[13]
- ประมาณการปี 2010: 2.75 พันล้านดอลลาร์[13]
- 2013: 5.4 พันล้านดอลลาร์[14]
- ประมาณการปี 2020: 9.8 พันล้านดอลลาร์[14]
การออกแบบเริ่มต้นขึ้น
กเริ่มต้นการออกแบบคือการออกแบบที่กำหนดเองใหม่สำหรับการใช้งานบน FPGA
ออกแบบ[แก้ไข]
FPGA ร่วมสมัยมีทรัพยากรจำนวนมากประตูลอจิกและบล็อก RAM เพื่อใช้การคำนวณดิจิทัลที่ซับซ้อนเนื่องจากการออกแบบ FPGA ใช้อัตรา I/O และข้อมูลแบบสองทิศทางที่รวดเร็วมากรถเมล์การตรวจสอบเวลาที่ถูกต้องของข้อมูลที่ถูกต้องภายในเวลาการตั้งค่าและเวลาพักถือเป็นเรื่องท้าทาย
การวางแผนชั้นช่วยให้สามารถจัดสรรทรัพยากรภายใน FPGA เพื่อให้เป็นไปตามข้อจำกัดด้านเวลาเหล่านี้FPGA สามารถใช้ในการดำเนินการฟังก์ชันลอจิคัลใดๆ ที่เอสิคสามารถดำเนินการได้ความสามารถในการอัปเดตฟังก์ชันการทำงานหลังการจัดส่งการกำหนดค่าใหม่บางส่วนส่วนหนึ่งของการออกแบบ[17]และต้นทุนทางวิศวกรรมที่ไม่เกิดซ้ำต่ำเมื่อเทียบกับการออกแบบ ASIC (แม้ว่าโดยทั่วไปแล้วต้นทุนต่อหน่วยจะสูงกว่า) ให้ข้อได้เปรียบสำหรับการใช้งานหลายอย่าง[1]
FPGA บางตัวมีคุณสมบัติแอนะล็อกนอกเหนือจากฟังก์ชันดิจิทัลคุณลักษณะแอนะล็อกที่พบบ่อยที่สุดคือสามารถตั้งโปรแกรมได้อัตราการฆ่าบนแต่ละขาเอาท์พุต ช่วยให้วิศวกรสามารถกำหนดอัตราที่ต่ำบนพินที่โหลดเบาได้แหวนหรือคู่เป็นที่ยอมรับไม่ได้ และเพื่อกำหนดอัตราที่สูงขึ้นสำหรับพินที่โหลดจำนวนมากบนช่องสัญญาณความเร็วสูงที่อาจทำงานช้าเกินไป[18][19]ที่พบบ่อยคือควอตซ์-ออสซิลเลเตอร์คริสตัล, ออสซิลเลเตอร์ความต้านทาน-ความจุบนชิป และลูปล็อคเฟสด้วยการฝังตัวออสซิลเลเตอร์ที่ควบคุมแรงดันไฟฟ้าใช้สำหรับการสร้างและการจัดการนาฬิกา รวมถึงสำหรับนาฬิกาส่งซีเรียลไลเซอร์-ดีซีเรียลไลเซอร์ความเร็วสูง (SERDES) และการกู้คืนนาฬิกาของตัวรับค่อนข้างธรรมดามีความแตกต่างกันเครื่องเปรียบเทียบบนพินอินพุตที่ออกแบบมาเพื่อเชื่อมต่อการส่งสัญญาณที่แตกต่างช่อง.จำนวนน้อย "สัญญาณผสมFPGA” มีอุปกรณ์ต่อพ่วงรวมอยู่ด้วยตัวแปลงอนาล็อกเป็นดิจิทัล(ADC) และตัวแปลงดิจิตอลเป็นอนาล็อก(DAC) พร้อมด้วยบล็อกปรับสภาพสัญญาณอะนาล็อกช่วยให้ทำงานเป็น aระบบบนชิป(โซค).[20]อุปกรณ์ดังกล่าวพร่าเลือนเส้นแบ่งระหว่าง FPGA ซึ่งมีดิจิตอลและศูนย์บนแฟบริคเชื่อมต่อภายในที่ตั้งโปรแกรมได้ และอาร์เรย์อะนาล็อกที่ตั้งโปรแกรมภาคสนามได้(FPAA) ซึ่งมีค่าแอนะล็อกบนแฟบริคเชื่อมต่อระหว่างกันที่ตั้งโปรแกรมได้ภายใน
บล็อกลอจิก[แก้ไข]
บทความหลัก:บล็อกลอจิก
ภาพประกอบตัวอย่างอย่างง่ายของเซลล์ลอจิก (LUT –ตารางการค้นหา, เอฟเอ –สารเติมแต่งเต็ม, ดีเอฟเอฟ –ฟลิปฟล็อปประเภท D)
สถาปัตยกรรม FPGA ที่พบบ่อยที่สุดประกอบด้วยอาร์เรย์ของบล็อกลอจิก(เรียกว่าบล็อกลอจิกที่กำหนดค่าได้, CLB หรือบล็อกอาร์เรย์ลอจิก, LAB ขึ้นอยู่กับผู้จำหน่าย)แผ่น I/Oและช่องทางเดินรถ[1]โดยทั่วไปแล้ว ช่องเส้นทางทั้งหมดจะมีความกว้างเท่ากัน (จำนวนสาย)แผง I/O หลายแผ่นอาจพอดีกับความสูงของหนึ่งแถวหรือความกว้างของหนึ่งคอลัมน์ในอาร์เรย์
“วงจรแอปพลิเคชันจะต้องถูกแมปเข้ากับ FPGA ด้วยทรัพยากรที่เพียงพอแม้ว่าจำนวน CLBs/LABs และ I/Os ที่ต้องการจะกำหนดได้ง่ายจากการออกแบบ แต่จำนวนเส้นทางเส้นทางที่ต้องการอาจแตกต่างกันอย่างมากแม้ในการออกแบบที่มีปริมาณตรรกะเท่ากันก็ตาม(เช่น กสวิตช์คานประตูต้องการเส้นทางมากกว่ากอาร์เรย์ซิสโตลิกโดยมีจำนวนประตูเท่ากันเนื่องจากรางเส้นทางที่ไม่ได้ใช้จะเพิ่มต้นทุน (และลดประสิทธิภาพ) ของชิ้นส่วนโดยไม่ให้ประโยชน์ใดๆ ผู้ผลิต FPGA จึงพยายามจัดหารางให้เพียงพอเพื่อให้การออกแบบส่วนใหญ่พอดีในแง่ของตารางการค้นหา(LUT) และ I/O ก็ได้เส้นทาง.นี้จะถูกกำหนดโดยการประมาณการเช่นที่ได้มาจากกฎการเช่าหรือโดยการทดลองกับการออกแบบที่มีอยู่”[21]ณ ปี 2561เครือข่ายบนชิปกำลังพัฒนาสถาปัตยกรรมสำหรับการกำหนดเส้นทางและการเชื่อมต่อโครงข่าย[จำเป็นต้องมีการอ้างอิง]
โดยทั่วไป บล็อกลอจิกประกอบด้วยเซลล์ลอจิคัลจำนวนหนึ่ง (เรียกว่า ALM, LE, สไลซ์ ฯลฯ)เซลล์ทั่วไปประกอบด้วย LUT 4 อินพุต aบวกเต็ม(เอฟเอ) และกฟลิปฟล็อปประเภท D.สิ่งเหล่านี้อาจแบ่งออกเป็น LUT 3 อินพุตสองตัวในโหมดปกติสิ่งเหล่านี้จะรวมกันเป็น LUT 4 อินพุตจนถึงตัวแรกมัลติเพล็กเซอร์(มิกซ์).ในเลขคณิตโหมดเอาต์พุตจะถูกป้อนไปยังตัวบวกการเลือกโหมดจะถูกตั้งโปรแกรมไว้ใน mux ที่สองผลลัพธ์สามารถเป็นได้ทั้งซิงโครนัสหรือแบบอะซิงโครนัสขึ้นอยู่กับการตั้งโปรแกรมของ mux ที่สามในทางปฏิบัติ Adder ทั้งหมดหรือบางส่วนคือเก็บไว้เป็นฟังก์ชันเข้าไปใน LUT เพื่อบันทึกช่องว่าง.[22][23][24]
ฮาร์ดบล็อค[แก้ไข]
ตระกูล FPGA สมัยใหม่ขยายขีดความสามารถข้างต้นเพื่อรวมฟังก์ชันการทำงานระดับที่สูงขึ้นซึ่งได้รับการแก้ไขในซิลิคอนการมีฟังก์ชันทั่วไปเหล่านี้ฝังอยู่ในวงจรจะช่วยลดพื้นที่ที่ต้องการและทำให้ฟังก์ชันเหล่านั้นมีความเร็วเพิ่มขึ้นเมื่อเทียบกับการสร้างฟังก์ชันเหล่านี้จากตรรกะดั้งเดิมตัวอย่างเหล่านี้ได้แก่ตัวคูณ, ทั่วไปบล็อก DSP,โปรเซสเซอร์แบบฝัง, ลอจิก I/O ความเร็วสูงและฝังตัวความทรงจำ.
FPGA ระดับสูงสามารถมีความเร็วสูงได้ตัวรับส่งสัญญาณหลายกิกะบิตและฮาร์ดคอร์ IPเช่นแกนประมวลผล,อีเทอร์เน็ต หน่วยควบคุมการเข้าถึงขนาดกลาง,พีซีไอ/พีซีไอ เอ็กซ์เพรสตัวควบคุมและตัวควบคุมหน่วยความจำภายนอกแกนเหล่านี้มีอยู่ควบคู่ไปกับแฟบริคที่ตั้งโปรแกรมได้ แต่ถูกสร้างขึ้นมาจากทรานซิสเตอร์แทนที่จะเป็น LUT จึงมีระดับ ASICผลงานและการใช้พลังงานโดยไม่ต้องใช้ทรัพยากรแฟบริคจำนวนมาก ทำให้เหลือแฟบริคว่างมากขึ้นสำหรับตรรกะเฉพาะแอปพลิเคชันตัวรับส่งสัญญาณหลายกิกะบิตยังมีวงจรอินพุตและเอาท์พุตอนาล็อกประสิทธิภาพสูง พร้อมด้วยซีเรียลไลเซอร์และดีซีเรียลไลเซอร์ความเร็วสูง ซึ่งเป็นส่วนประกอบที่ไม่สามารถสร้างจาก LUT ได้ฟังก์ชันฟิสิคัลเลเยอร์ (PHY) ระดับสูงเช่นการเข้ารหัสบรรทัดอาจหรืออาจจะไม่ถูกนำมาใช้ควบคู่ไปกับซีเรียลไลเซอร์และดีซีเรียลไลเซอร์ในฮาร์ดลอจิก ขึ้นอยู่กับ FPGA