ให้เรตสมาชิก: 3 / 5

ดาวใช้งานดาวใช้งานดาวใช้งานดาวไม่ได้ใช้งานดาวไม่ได้ใช้งาน
 

FPGA (Field Programmable Gate Array)

     จัดเป็นสารกึ่งตัวนำชนิดโปรแกรมที่มีโครงข่ายการเชื่อมต่อภายในแบบแมตริกซ์

 

Field Programmable Gate Array
Field Programmable Gate Array

 

     FPGA เป็นชิพที่ประกอบไปด้วยหน่วยเล็กๆ จำนวนมาก โดยเจ้าหน่วยเล็กๆเหล่านี้ มีความสามารถพิเศษ คือ สามารถโปรแกรมให้แปงร่างเป็นวงจรดิจิทัลได้ ไม่ว่าจะเป็น Counter, Multiplexer, Decoder, RAM, Adder, FlipFlop และ Gate และด้วยความที่มันมีจำนวนมาก จึงทำให้เป็น Strong ของชิพ ที่ทำให้ FPGA เพียงตัวเดียวสามารถแปลงร่างเป็นวงจรดิจิทัลหลายๆแบบได้ในปริมาณที่มากมาย และที่สำคัญเลย คือ ทุกวงจรสามารถทำงานได้พร้อมกันหมดเลย

 

ขั้นตอนการทำงานของ FPGA

  1. การสังเคราะห์วงจร (Logic Synthesis) -- ขั้นตอนนี้จะใช้ซอฟต์แวร์ในการสังเคราะห์วงจร (Synthesis Tools) ทำการสังเคราะห์พฤติกรรม วงจรที่ได้จากการออกแบบด้วย Schematic หรือ VHDL
  2. การแบ่งวงจร (Partitioning) -- ขั้นตอนนี้เป็นการแบ่งวงจรที่ได้จากการสังเคราะห์ เป็นส่วนย่อยๆ สำหรับลงใน CLBs, IOBs หรือองค์ประกอบอื่นๆ ภายในอุปกรณ์ FPGA
  3. การวางอุปกรณ์ (Placement) -- ขั้นตอนนี้เป็นการเลือกทำเลที่ตั้งของแต่ละส่วนของวงจรที่ผ่านการแบ่งวงจรมาแล้วว่าควรจะอยู่ตำแหน่งไหนในอุปกรณ์ FPGA เพื่อให้ได้ผลลัพธ์ที่ดีที่สุด
  4. การเชื่อมต่อสัญญาณ (Routing) --  ขั้นตอนนี้เป็นการเชื่อต่อสัญญาณระหว่างองค์ประกอบต่างๆ ภายในอุปกรณ์ FPGA ขั้นตอนนี้จะทำต่อเนื่องจากการวางอุปกรณ์
  5. ความหน่วงด้านเวลา (Delay) -- ในการทำ FPGA นั้น ความหน่วงที่เกิดขึ้นเป็นความหน่วงที่เกิดจากการวางตำแหน่ง (Layout) ของอุปกรณ์ ซึ่งผู้ที่ออกแบบไม่สามารถเข้าไปแก้ไขได้ แต่สามารถทำให้น้อยที่สุดได้ ความหน่วงนั้นสามารถแยกได้เป็น 2 ประเภท คือ
    • ความหน่วงโลจิก (Logic Delay) -- เป็นความหน่วงภายในองค์ประกอบของอุปกรณ์ FPGA
    • ความหน่วงที่เกิดจากการเชื่อมต่อสัญญาณ (Routing Delay) -- เป็นความหน่วงที่เกิดจากเชื่อมต่อสัญญาณระหว่างองค์ประกอบภายในอุปกรณ์ FPGA
  6. การจำลองการทำงานของวงจร (Simulation) -- ขั้นตอนนี้เป็นขั้นตอนที่สำคัญ เพราะเป็นขั้นตอนที่ผู้ออกแบบตรวจสอบฟังก์ชั่นการทำงานของโมเดลว่าถูกต้องหรือไม่ มีข้อผิดพลาดตรงไหนเพื่อที่จะได้ทำการแก้ไขให้ถูกต้อง
  7. การโปรแกรมอุปกรณ์ FPGA (Configuration) -- หลังจากที่โมเดลได้ผ่านขั้นตอนต่างๆมาแล้ว ตอนนี้ก็จะสามารถที่จะดาวน์โหลดลงในอุปกรณ์ FPGA ได้แล้ว ในการดาวน์โหลดนี้ก่อนอื่นต้องแปลงแบบวงจรรวมที่ได้เป็นข้อมูลวงจร ซึ่งอยู่ในรูปของบิตสตรีม ก่อนแล้วจึงดาวน์โหลดลงไปเพื่อให้อุปกรณ์ FPGA

 

     สรุปง่ายๆ ตลาดสำคัญอย่างหนึ่งของ FPGA คือ การที่ต้องประมวลผลข้อมูลชนิดมากมายมหาศาลในเวลาอันสั้น เพราะ FPGA นั้นสามารถทำงานง่ายๆที่ไม่มีความซับซ้อนได้ พร้อมกันจำนวนมาก สมมติถ้าเราเปิดเว็บไซตืของ Intel FPGA หน้าแรกที่เราจะเจอบนเว็บไซต์ คือ Data Center Solution ซึ่งเบื้องหลังมีการ Search ข้อมูลอยู่จำนวนมาก จากคลังข้อมูลขนาดใหญ่ หรือที่เราเรีียกกันว่า Big Data

 

ข้อมูลอ้างอิง : http://www.tesa.or.th/tesa/mod/forum/discuss.php?d=606

https://forfpgadesign.wordpress.com/2017/01/27/first-blog-post/

 http://www.astronlogic.com/content/article/basic/fpga2.html

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
ทำความรู้จักกับ Google Lighthouse ตรวจสอบคุณภาพเว็บไซต์
โดย birdkritsna พฤ 19 ก.ย. 2019 6:37 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
6
พฤ 19 ก.ย. 2019 6:37 pm โดย birdkritsna
ส่วนประกอบของเว็บไซต์ มีอะไรบ้าง
โดย aninthana พฤ 19 ก.ย. 2019 6:12 pm บอร์ด Web Hosting Review - Free Host Share Host VPS
0
7
พฤ 19 ก.ย. 2019 6:12 pm โดย aninthana
วิธีทำภาพให้มีขอบโค้งมนด้วยโปรแกรม คล้าย photoshop ออนไลน์ freephototool.com
โดย jamepiyawat พฤ 19 ก.ย. 2019 5:51 pm บอร์ด Graphic design
1
12
พฤ 19 ก.ย. 2019 11:15 pm โดย pipoipi
วิธีการอัพเกรด Ubuntu server เพื่อให้ support และ เพิ่มความสามารถใหม่ๆ ของระบบปฏิบัติการ
โดย jirawoot พฤ 19 ก.ย. 2019 4:14 pm บอร์ด Linux - Web Server
1
14
ศ 20 ก.ย. 2019 12:06 am โดย cocomax
form มันซ้อนกันอยู่ทำให้ form ที่อยู่ด้านในส่งข้อมูลไม่ได้ทำยังไงดี ครับ
โดย jamepiyawat พฤ 19 ก.ย. 2019 3:57 pm บอร์ด Programming - PHP
2
11
พฤ 19 ก.ย. 2019 4:20 pm โดย jamepiyawat
R - Template และ laout
โดย mindphp พฤ 19 ก.ย. 2019 3:13 pm บอร์ด buildinstore - Manual & Content Web
0
1
พฤ 19 ก.ย. 2019 3:13 pm โดย mindphp
G - subdomain ที่จะไปอยู่ที่เว็บไซต์อื่น
โดย mindphp พฤ 19 ก.ย. 2019 3:12 pm บอร์ด Buildin - Tester
0
1
พฤ 19 ก.ย. 2019 3:12 pm โดย mindphp
เฟสบุ๊แฟนเพจ กับ ทำเว็บไซต์ให้คนเข้า อะไรคุ้มกว่าในระยะยาว
โดย zend_framework พฤ 19 ก.ย. 2019 11:06 am บอร์ด ปัญหาการใช้ phpBB3, SMF, Joomla, Wordpress, CMS CRM
0
5
พฤ 19 ก.ย. 2019 11:06 am โดย zend_framework
Q - อยากทราบวิธีการดึงค่า api มาใช้อย่างไรครับ
โดย birdkritsna พฤ 19 ก.ย. 2019 10:50 am บอร์ด Programming - PHP
5
38
พฤ 19 ก.ย. 2019 6:25 pm โดย birdkritsna
งานประจำวันที่ 19 กันยายน 2562
โดย Patipat พฤ 19 ก.ย. 2019 10:49 am บอร์ด M088 - ปฏิภัทร สารธรรม
1
4
พฤ 19 ก.ย. 2019 7:22 pm โดย Patipat
อยากทราบวฺิธีการทำปุ่มเพิ่มตัวเลย ครับ
โดย jamepiyawat พฤ 19 ก.ย. 2019 10:39 am บอร์ด Programming - PHP
6
35
พฤ 19 ก.ย. 2019 6:44 pm โดย jamepiyawat
งานประจำวันที่ 19 กันยายน 2562
โดย birdkritsna พฤ 19 ก.ย. 2019 10:19 am บอร์ด M094 - กฤษณะ จะโรจน์รัมย์
1
10
พฤ 19 ก.ย. 2019 7:44 pm โดย birdkritsna
งานประจำวันที่ 19 กันยายน 2562
โดย jamepiyawat พฤ 19 ก.ย. 2019 10:09 am บอร์ด M084 - นายปิยวัช เชาว์วิมล
2
12
พฤ 19 ก.ย. 2019 7:36 pm โดย jamepiyawat
งานประจำวันที่ 19 กันยายน 2562
โดย aninthana พฤ 19 ก.ย. 2019 10:04 am บอร์ด M092 - อนินธนา บุญยัง
1
8
พฤ 19 ก.ย. 2019 7:04 pm โดย aninthana
งานประจำวันที่ 19 กันยายน 2562
โดย jirawoot พฤ 19 ก.ย. 2019 10:03 am บอร์ด M090 - นายจิระวุฒิ อัครลิขิตกุล
1
3
พฤ 19 ก.ย. 2019 8:34 pm โดย jirawoot
ถ้าจะให้้มีคนกดซับเพิ่มขึ่นต้องทำไง
โดย totzazx789 พ 18 ก.ย. 2019 10:40 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
17
พ 18 ก.ย. 2019 10:40 pm โดย totzazx789
สอบถามเกี่ยวกับ list ใน Tkinter ค่ะ
โดย mashato พ 18 ก.ย. 2019 8:45 pm บอร์ด Programming - C/C++ & java & Python
0
15
พ 18 ก.ย. 2019 8:45 pm โดย mashato
ทำกราฟ เปรียบเทียบ ค่าธรรมเนียมของแต่ละธนาคาร
โดย chatee supasand พ 18 ก.ย. 2019 7:24 pm บอร์ด MT33 - นายชาตรี สุภาแสน
1
7
พ 18 ก.ย. 2019 7:29 pm โดย mindphp
ทำไมต้องอัพเกรดและวิธีอัพเกรด Ubuntu
โดย jirawoot พ 18 ก.ย. 2019 7:02 pm บอร์ด ถาม - ตอบ คอมพิวเตอร์
0
20
พ 18 ก.ย. 2019 7:02 pm โดย jirawoot
Adobe Premiere Pro เปิดตัวฟีเจอร์ปรับขนาดเฟรมวิดีโออัตโนมัติด้วย AI รองรับโซเชียลแอป
โดย birdkritsna พ 18 ก.ย. 2019 6:05 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
27
พ 18 ก.ย. 2019 6:05 pm โดย birdkritsna