ถ้าพูดถึงคำว่า CPU ในวงการคอมพิวเตอร์ คำที่เกี่ยวข้องที่หลายคนมักนึกถึงก็เช่น Intel, Core i, AMD, Ryzen หรือ Apple M ที่เป็นชื่อแบรนด์ ชื่อซีรีส์ ถ้าลงลึกหน่อยก็เช่น ARM กับ x86 ที่เป็นชื่อเรียกสถาปัตยกรรม เป็นต้น แต่ในช่วงสองสามปีหลังมานี้ ใครที่ติดตามข่าววงการไอทีอยู่ ก็อาจจะได้เจอกับชื่อ CPU ที่ต่างจากเดิมนั่นคือ RISC-V ทำให้หลายท่านอาจจะสงสัยว่ามันคือ CPU แบบไหน ใช้กับอะไร แรงเท่ากับของที่ใช้อยู่หรือเปล่า และจะเข้ามาแทน CPU ที่ใช้อยู่ตอนนี้ได้เมื่อไหร่ ในบทความนี้เราจะมาทำความรู้จักกับชิปประมวลผลแบบนี้กันครับ
ก่อนที่จะไปลงรายละเอียดของ CPU RISC-V เรามาทำความรู้จักเรื่องประเภทของ CPU ที่แบ่งตามโครงสร้างสถาปัตยกรรมชุดคำสั่งกันซักนิด
โครงสร้างสถาปัตยกรรมชุดคำสั่งของ CPU
สิ่งที่ทำให้ CPU สามารถทำงาน คำนวณ ประมวลผลได้ แน่นอนว่าเพียงแค่ติดตั้งทรานซิสเตอร์และฮาร์ดแวร์ต่าง ๆ เข้ากับแผงวงจร มันย่อมไม่สามารถทำงานได้อย่างที่ต้องการ เพราะยังขาดส่วนของวิธีการทำงาน แผนงาน เช่นอย่างถ้าเราสั่งให้ CPU บวกเลขสองตัวเข้าด้วยกัน เราก็ต้องเขียนคำสั่งบวกเลขใส่ไว้ใน CPU ด้วย ซึ่งคำสั่งนี้ก็จะเป็นเหมือนตัวจัดการว่ากระบวนการบวกเลขต้องทำอย่างไร คำนวณแบบไหน เพื่อให้ CPU ทำงานได้ตามที่ผู้ใช้ต้องการ ตัวของกระบวนการนี้จะเรียกว่าเป็นคำสั่ง (instruction) และแน่นอนว่ามันไม่ได้มีแค่คำสั่งคำนวณตัวเลขอย่างเดียว แต่ยังมีคำสั่งอีกหลายประเภทที่บรรจุอยู่ใน CPU อาทิ
- คำสั่งด้านการจัดการข้อมูลและหน่วยความจำ
- คำสั่งด้านการประมวลผลทางตรรกะ
- คำสั่งควบคุมลำดับการทำงานของโปรแกรม เช่น การแตกสาขา ย้ายลำดับการทำงานของโค้ด
- คำสั่งที่ทำให้ทำงานร่วมกับตัวช่วยประมวลผลอื่น ๆ ได้
ทั้งหมดนี้จะถูกเรียกรวมว่าเป็นชุดคำสั่ง (instruction set) และเป็นสิ่งจำเป็นสำหรับการผลิต CPU มาก ๆ ซึ่งที่ผ่านมาก็มีการพัฒนา CPU ที่มีการบรรจุชุดคำสั่งลงไปหลาย ๆ รูปแบบ เพื่อให้ตอบโจทย์การทำงานที่ต้องการ โดยหากแบ่งประเภทของ CPU ตามโครงสร้างสถาปัตยกรรมรูปแบบชุดคำสั่งก็จะได้ตัวอย่างเช่นแบบ CISC, RISC, MISC, OISC ไปจนถึงควอนตัมเลย แต่สองประเภทหลัก ๆ ที่ได้รับการออกแบบมาเพื่อการใช้งานของผู้ใช้ทั่วไปก็จะเป็น CISC และ RISC
CPU แบบ CISC
CISC ย่อมาจาก Complex Instruction Set Computer แปลก็คือเป็นสถาปัตยกรรมคอมพิวเตอร์ที่มีการใช้ชุดคำสั่งแบบซับซ้อน ได้รับการเผยแพร่อย่างเป็นทางการโดย Intel ในช่วงยุค 70 จุดประสงค์ของการออกแบบก็คือต้องการให้คำสั่ง 1 คำสั่ง สามารถทำงานพื้นฐาน (low-level operation) ได้หลายงานในคราวเดียว เพื่อลดขนาดของคำสั่งที่ต้องเขียนลงในโปรแกรม ซึ่งจะช่วยให้โปรแกรมใช้พื้นที่หน่วยความจำโดยเฉพาะแรมน้อยลงด้วย เนื่องจากราคาของหน่วยความจำในยุคนั้นจัดว่าสูงมาก ทำให้แต่ละเครื่องมีแรมน้อย กลับกัน ในฝั่ง CPU เองยังสามารถเพิ่มสมรรถนะได้อีก เลยใช้การรวบหลายคำสั่งเข้ามาในคำสั่งเดียวไปเลย แล้วโยนให้ CPU จัดการเอา
ซึ่งก็มีการยกตัวอย่างที่น่าสนใจจากในเว็บไซต์นี้ครับ อย่างถ้าต้องการสั่งให้สัตว์เลี้ยงวิ่งไปเก็บของเล่นที่เราโยนออกไป ในสถาปัตยกรรมแบบ CISC อาจจะใช้โค้ดที่มีเพียงแค่คำสั่งว่า RUN ก็พอ แต่ในคำสั่ง RUN นี้ จะมีคำสั่งย่อยที่เป็น low-level operation ลงมาอีก ได้แก่
- ติดตามตำแหน่งของเล่น
- คาบของเล่นขึ้นมา
- วิ่งกลับมาหาเจ้าของ
- ส่งของเล่นคืนให้เจ้าของ
จะเห็นว่าในการเขียนโค้ดแค่คำสั่งว่า RUN แต่จริง ๆ แล้วมันมีการทำงาน การประมวลผลย่อยภายในอีกถึง 4 รายการ ซึ่งจุดนี้เราเลยจะเห็นเลยว่าจุดเด่นของสถาปัตยกรรมชุดคำสั่งแบบ CISC จะช่วยลดปริมาณโค้ดที่ต้องใช้ในการประมวลผลลง ซึ่งก็ส่งผลถึงการใช้แรมที่น้อยลงไปด้วย อีกทางหนึ่งก็คือช่วยให้สามารถเขียนโปรแกรมได้ง่ายขึ้นในยุคแรก ๆ เพราะโยนเรื่องความซับซ้อนไปให้ interpreter ที่แปลภาษา และ CPU ในการแกะโค้ดเป็นหลักเพื่อใช้งานชุดคำสั่งที่ซับซ้อน แต่ในทางกลับกัน ด้วยการที่มีชุดคำสั่งให้เลือกใช้เยอะและซับซ้อน ก็อาจกลายเป็นการเพิ่มความสับสนและความยากในการเขียนโปรแกรมได้เหมือนกัน เพื่อที่จะให้ระบบสามารถทำงานได้ประสิทธิภาพสูงที่สุด ซึ่งก็ต้องพึ่งความสามารถในการปรับแต่งชุดคำสั่ง เทคนิคการทำงาน การจัดลำดับงานต่าง ๆ ค่อนข้างสูง
สำหรับ CPU ในกลุ่มคอมพิวเตอร์ที่ใช้งานทั่วไปที่เราคุ้นเคยกันอยู่แล้ว อย่างพวกชิปจาก Intel และ AMD ล้วนเป็น CPU ที่มีดีไซน์แบบ CISC ทั้งหมดครับ แต่จะแยกออกมาเป็นตระกูลที่ใช้ชุดคำสั่งแบบ x86 อีกทีนึง ซึ่งก็จะมีชุดคำสั่งเสริมในชื่อที่หลายท่านคุ้นเคยกัน เช่น x86-64, SSE, AVX512, AMD-V, VT-x เป็นต้น
CPU แบบ RISC
RISC ย่อมาจาก Reduced Instruction Set Computer จัดว่าเป็นขั้วตรงข้ามของ CISC เลยก็ว่าได้ คือเป็นการออกแบบให้ใช้โครงสร้างชุดคำสั่งแบบเรียบง่าย ในลักษณะคำสั่งเดี่ยว ๆ ทั้งหมด สั่งอะไรก็ทำแค่อย่างนั้น อย่างถ้าเทียบแบบเดียวกับข้างต้น หากเราจะเขียนโค้ดโปรแกรมให้สัตว์เลี้ยงวิ่งไปเก็บของเล่นมาให้ เราจะต้องเขียนถึง 4 คำสั่งลงในโปรแกรมเลย
- ติดตามตำแหน่งของเล่น
- คาบของเล่นขึ้นมา
- วิ่งกลับมาหาเจ้าของ
- ส่งของเล่นคืนให้เจ้าของ
โดย CPU ก็จะประมวลผลแบบทีละคำสั่งจนกว่าจะเสร็จ ซึ่งการออกแบบในลักษณะนี้จะมีข้อดีคือ แต่ละคำสั่งเป็นคำสั่งสั้น ๆ ง่าย ๆ ในระดับ low-level ที่สามารถทำได้ทันที แม้จะมีจำนวนของคำสั่งเยอะ แต่ก็ไม่ซับซ้อน รีบทำรีบจบได้เร็วกว่า ต่างจาก CISC ที่อาจต้องมาถอดรหัสโค้ดอีก ว่าโค้ดนี้จะต้องทำอะไรในระดับ low-level บ้าง
นอกจากนี้ในการออกแบบชิป RISC ยังทำได้ง่ายกว่า เพราะการที่บรรจุแต่คำสั่งที่ไม่ซับซ้อน จำนวนของทรานซิสเตอร์ก็ใช้น้อยกว่า CISC มาก ทำให้เหลือที่บนแพ็คเกจชิปเยอะ สามารถบรรจุโมดูลอื่นเติมเข้าไปเสริมการทำงานได้อีก หรืออาจจะทำให้ชิปมีขนาดเล็กมากไปเลย เพื่อใช้ในอุปกรณ์พกพาได้ง่ายกว่า ตัวอย่าง CPU แบบ RISC ที่เห็นได้ชัดก็คือพวกชิปที่ใช้คอร์ประเภท ARM ซึ่งก็คือพวกสมาร์ตโฟน แท็บเล็ต ไปจนถึงพวกชิป Snapdragon 8cx ที่จะลงในพีซี Windows และชิปตระกูล Apple Silicon ในปัจจุบันนั่นเอง
แต่ในทางกลับกัน การที่ต้องเขียนโค้ดแจกแจงการทำงานแบบละเอียด อันเนื่องมาจากการใช้คำสั่งที่ไม่ซับซ้อน สั่งอะไรก็ทำแบบนั้น ย่อมมาพร้อมกับจำนวนคำสั่งที่ต้องเขียนเยอะขึ้น ส่งผลถึงการใช้หน่วยความจำ ใช้แรมที่เพิ่มขึ้นด้วย อย่างสมมติว่าถ้าต้องการเขียนโค้ดให้โปรแกรมคูณเลข ตัวของคำสั่ง assembly ที่จะถูกส่งให้ CPU ประมวลผล หากเทียบกันระหว่าง CISC กับ RISC จะได้ดังนี้
CISC | RISC |
MULT 2:3, 5:2 |
LOAD A, 2:3 LOAD B, 5:2 PROD A, B STORE 2:3, A |
สิ่งที่ฝั่ง CISC จะทำก็คือคำสั่ง MULT ที่มาจากคำว่า multiply คือการนำเลขสองตัวมาคูณกัน โดยในโค้ดนี้จะสั่งให้ไปนำข้อมูลตัวเลขที่อยู่ในแรมซึ่งจะมองว่าเป็นตาราง มีการเรียกข้อมูลแบบชี้ตามตำแหน่งตาราง คอลัมน์ 2 แถว 3 มาคูณกับเลขที่เก็บอยู่ในแรม คอลัมน์ 5 แถว 2 จากนั้นก็เอาผลลัพธ์ที่ได้ไปเก็บไว้ที่หน่วยความจำจุดใดจุดหนึ่ง จากนั้นจะเอามาใช้งานต่ออย่างไรก็แล้วแต่การเขียนโปรแกรม
แต่ฝั่ง RISC คือจะต้องแตกโค้ดออกเป็น 4 บรรทัด ซึ่งก็กินแรมในการเก็บโค้ดคำสั่งมากขึ้นด้วย โดยคำสั่งก็จะเริ่มตั้งแต่การไปดึงข้อมูลในแรมคอลัมน์ 2 แถว 3 มาเก็บในหน่วยความจำรีจิสเตอร์ช่อง A ใน CPU เพื่อรอใช้งานก่อน จากนั้นก็ไปถึงข้อมูลในตำแหน่ง 5:2 มาเก็บในรีจิสเตอร์ช่อง B เมื่อได้ครบแล้วก็มาใช้คำสั่ง PROD ในการคูณ ผลที่ได้ออกมาก็จะนำไปเก็บในรีจิสเตอร์ช่อง A แล้วมีคำสั่ง STORE มารับต่อ โดยส่งกลับไปเก็บที่แรมตำแหน่ง 2:3
จากตัวอย่างนี้ก็จะเห็นได้ชัดเจนเลยว่าโค้ดของ CISC นั้นสั้นกว่า RISC มาก แม้จะเป็นแค่การทำงานพื้นฐานอย่างการคูณเลข โดยอาศัยการใช้คำสั่งที่ซับซ้อนกว่าเข้ามาจัดการให้ และยังใช้พื้นที่แรมในการเก็บโค้ดคำสั่งที่น้อยกว่าอีก ไม่ต้องพูดถึงการเขียนโค้ดจริงที่การทำงานยิ่งซับซ้อนกว่าการคูณเลขเยอะ ซึ่งจากที่กล่าวไปข้างต้นว่าเมื่อก่อนหน่วยความจำมีราคาแพง จึงทำให้ชิปแบบ CISC ได้รับความนิยมและนำไปต่อยอดเป็นผลิตภัณฑ์สำหรับผู้ใช้งานทั่วไปมากกว่า และกลายเป็นฐานใหญ่ของวงการ CPU มาจนถึงปัจจุบัน
แต่ด้วยความที่ราคาของแรม ชิปหน่วยความจำมีราคาย่อมเยาลงทุกปี ทำให้การอัดแรมเยอะ ๆ อัดรีจิสเตอร์ลงใน CPU กลายเป็นเรื่องที่ง่ายขึ้น ประกอบกับ CPU แบบ RISC เองก็ได้รับการพัฒนาให้มีความเร็วสูง สามารถทำงานแบบขนานพร้อมกันได้ทีละมาก ๆ และเมื่อออกแบบให้มีการทำงานร่วมกับแรมได้ดีขึ้น รับส่งข้อมูลได้เร็ว จึงทำให้ข้อจำกัดเรื่องการใช้หน่วยความจำกลายเป็นเรื่องเล็กไปเลย ประกอบกับพื้นฐานของ RISC ที่สามารถทำงานแต่ละคำสั่งได้เร็วอยู่แล้ว จึงทำให้ประสิทธิภาพของชิปในกลุ่มนี้ก้าวกระโดดขึ้นมา จนขึ้นมาท้าทาย x86 ที่เป็น CISC ได้อย่างเต็มตัว แถมในบางแง่ก็เหนือกว่าด้วย เช่น เรื่องการใช้พลังงานที่ต่ำกว่า ทำให้ในบางงาน สามารถทำประสิทธิภาพได้ในระดับเดียวกัน แต่กินไฟต่ำกว่าแทบจะเป็นเท่าตัวเลย
ระหว่าง CISC กับ RISC
ด้วยแนวคิดในการออกแบบที่แตกต่างกัน ทำให้ CPU ทั้งสองกลุ่มนี้จะมีจุดประสงค์ในการนำมาใช้งานที่ต่างกันด้วย อย่างฝั่ง CISC จะได้เปรียบในเรื่องของตลาดกลุ่มผู้ใช้คอมพิวเตอร์ที่มีขนาดใหญ่ ส่งผลให้มีข้อได้เปรียบสำคัญคือซอฟต์แวร์ที่รองรับเป็นจำนวนมาก กลุ่มนักพัฒนาก็มี know-how ในการทำงานที่มากกว่า แต่ในแง่ของการพัฒนาความสามารถของชิปแบบก้าวกระโดด ต้องบอกว่ามันเริ่มยากขึ้นเรื่อย ๆ ด้วยข้อจำกัดของการผลิตที่ต้องใช้เทคนิคขั้นสูง ในขณะเดียวกัน ถ้าต้องการเพิ่มจำนวนทรานซิสเตอร์ ก็ต้องให้ความสำคัญกับเรื่องความร้อนและการกินไฟด้วยเช่นกัน
ด้านฝั่ง RISC จากที่แต่เดิมมักจะถูกมองว่าเป็น CPU แค่สำหรับอุปกรณ์ขนาดเล็ก กินไฟน้อย เหมาะกับการใช้งานเฉพาะทาง พลังประมวลผลค่อนข้างต่ำไปหน่อยสำหรับการใช้งานคอมพิวเตอร์ ประกอบกับซอฟต์แวร์และระบบปฏิบัติการที่รองรับก็น้อย แต่ในช่วงหลังมานี้ เราได้เห็นสมาร์ตโฟนซึ่งใช้ชิปแบบ RISC จากสถาปัตยกรรม ARM ที่มีประสิทธิภาพสูงขึ้น จนสามารถเอาชนะชิป CISC x86 ได้ในบางการทดสอบเลยทีเดียว และที่สำคัญก็คือการบุกตลาดของชิป Apple M1 ที่ไม่ได้มาแค่ฮาร์ดแวร์เท่านั้น แต่มาพร้อมกับการสนับสนุนด้านซอฟต์แวร์ ระบบปฏิบัติการ และระบบที่ช่วยแปลงโค้ดจากที่เคยใช้บน x86 ให้มาทำงานบน ARM ได้ นั่นจึงทำให้การเปลี่ยนกลับมาใช้ชิป ARM ของ Apple เป็นไปได้อย่างราบรื่นกว่าที่คาด และพอจะถือเป็นหนึ่งในการสร้างฐานที่มั่นคงสำหรับชิปแบบ RISC ของ ARM ในวงการคอมพิวเตอร์ส่วนบุคคล และคาดว่าของฝั่ง Windows เองก็น่าจะกลับมาโฟกัสกับตลาดนี้มากขึ้นเช่นกัน ทั้งจากแพลตฟอร์ม Windows on ARM และก็ทางผู้ผลิตชิปอย่าง Qualcomm ที่จะจับมือกันออกโน้ตบุ๊ก Windows ชิป ARM ออกมาในปี 2024 ด้วย
ซึ่งพอชิป ARM ที่มีจุดเด่นในเรื่องการใช้พลังงาน ความเร็วในการทำงานต่อคำสั่งที่สูงอยู่แล้ว มาตีบวกด้วยเทคโนโลยีในยุคใหม่ ๆ เช่น การแบ่งประเภทคอร์ให้เหมาะกับความหนักเบาของงาน การประมวลผลแบบคู่ขนาน pipeline ระบบการจัดการหน่วยความจำที่ดี แรมความเร็วสูง ระบบปฏิบัติการก็ถูกสร้างออกมารองรับเต็มตัว ทำให้ชิป RISC เข้ามามีที่ยืนตลาดคอมพิวเตอร์อย่างเต็มตัว และเป็นส่วนผลักดันผู้ผลิตชิป CISC ให้ทำสินค้าออกมาแข่งได้ดุดันกว่าเดิม รวมถึงยังมีการนำแนวคิด เทคโนโลยีบางอย่างของชิป RISC มาใช้ด้วย ซึ่งสุดท้ายผลประโยชน์ก็มาตกกับผู้ใช้งานอย่างเรา ๆ นี่แหละครับ ที่จะได้ใช้ของดีของแรง ประหยัดพลังงาน ในราคาที่จับต้องได้
แต่ฝั่งของ RISC อาจจะต้องใช้เวลาอีกซักพักหนึ่งครับ กว่าที่ปัจจัยเรื่องซอฟต์แวร์จะไม่ได้เป็นข้อจำกัดในการใช้งาน เพราะถึงแม้จะมีตัวช่วยแปลงโค้ดก็ตาม แต่บางครั้งมันก็อาจส่งผลกับประสิทธิภาพบ้าง หรือบางซอฟต์แวร์ก็ไม่สามารถใช้บนชิป RISC ชิป ARM ได้เลย ตัวอย่างที่เห็นได้ชัดและเห็นภาพก็คือเรื่องของเกม ที่แม้จะเล่นได้ แต่ประสิทธิภาพก็ยังคงไม่ถึงระดับ native ที่ใช้บนชิป x86 อยู่ดี
RISC-V คืออะไร?
ตัว V ในชื่อ RISC-V จะหมายถึงเลข 5 ของภาษาโรมัน เป็นชื่อของมาตรฐานการออกแบบสถาปัตยกรรมชุดคำสั่ง ‘แบบเปิด’ (open standard) ของชิปแบบ RISC ให้เข้าใจง่าย ๆ ก็คือจะเป็นลักษณะของมาตรฐานแบบ open-source ที่เปิดให้ทุกคนสามารถนำแนวคิด เทคโนโลยีต่าง ๆ ไปพัฒนาต่อเองได้ ทั้งด้านของการออกแบบชิป การเขียนซอฟต์แวร์ระบบปฏิบัติการ และการสร้างชุดคำสั่งเพิ่มเติมสำหรับการใช้งานเฉพาะทางของตนเอง เริ่มมีการพัฒนาขึ้นมาในปี 2010 และมีการจัดตั้งมูลนิธิ RISC-V ในปี 2015 ปัจจุบันมีสมาชิกที่ร่วมทำงานกับโครงการนี้กว่า 3,950 รายในราว 70 ประเทศทั่วโลก ตัวอย่างของสมาชิกที่ชื่อดูคุ้นตาหน่อยก็เช่น Google, IBM, Qualcomm, Alibaba Cloud, Huawei, Intel, NVIDIA, Seagate, Tencent, AMD, Arduino, Ubuntu, Samsung เป็นต้น และก็ยังมีการพัฒนาอยู่อย่างต่อเนื่อง โดยสามารถเข้าไปดูความคืบหน้าของการพัฒนาเชิงเทคนิคได้ที่นี่
ถ้าให้เทียบ RISC-V ก็จะเป็นเหมือนแบบแปลน ซึ่งระบุถึงดีไซน์ ที่เปิดให้นักพัฒนา บริษัทที่นำไปใช้งาน สามารถปรับแต่งส่วนต่าง ๆ ในชิปได้เอง และมีส่วนร่วมในการพัฒนามาตรฐานด้วย แต่อย่างไรก็ตาม หลังจากที่บริษัทนำแปลน RISC-V มาพัฒนาต่อและออกมาเป็นผลิตภัณฑ์แล้ว อาจจะมีติดเรื่องลิขสิทธิ์ สิทธิบัตรของส่วนเสริมที่ใส่เข้าไปได้อยู่ดีครับ ทำให้ในมุมของผู้บริโภค CPU แบบ RISC-V อาจจะแทบไม่ต่างจากชิป x86 และ ARM ที่คุ้นเคยกันมากนัก
จุดเด่นของ CPU แบบ RISC-V ในมุมของนักพัฒนาจะมีหลัก ๆ 3 ข้อด้วยกัน ได้แก่
- มีความยืดหยุ่น ด้วยความที่เป็นมาตรฐานแบบเปิด ที่นักพัฒนาสามารถใส่ชุดคำสั่งเพิ่มเติม ปรับแต่งทั้งด้านฮาร์ดแวร์และซอฟต์แวร์ให้เหมาะกับความต้องการเฉพาะทางได้
- นักพัฒนาสามารถควบคุม ปรับจูนระบบได้เองโดยแทบไม่ต้องพึ่งพาบริษัทอื่น ๆ รวมถึงไม่ต้องกังวลปัญหาเรื่องใบอนุญาตต่าง ๆ ที่เกี่ยวข้องกับสถาปัตยกรรมด้วย
- มีความโปร่งใส เนื่องจากการเป็นมาตรฐานแบบเปิดอีกเช่นกัน ทำให้นักพัฒนาสามารถเข้าไปดูโค้ดคำสั่งได้ ตรวจสอบแนวทางการพัฒนามาตรฐานในอนาคต และยังสามารถช่วยตรวจสอบความเสี่ยงด้านความปลอดภัยที่อาจเกิดขึ้นได้
ผู้ที่อาจได้รับผลกระทบจาก RISC-V ตัวจริง
ผู้ที่อาจได้รับผลกระทบในตลาดโดยตรง แน่นอนว่าจะต้องเป็น CPU ที่มีสถาปัตยกรรมลักษณะเดียวกัน นั่นคือ ARM ที่ใช้โครงสร้างแบบ RISC เหมือนกัน ทำให้จุดเด่นที่ ARM มี ตัวของ RISC-V ก็มีด้วย หรือจะพัฒนาเพิ่มเข้าไปเทียบเคียงกันก็ได้ เช่น เรื่องของประสิทธิภาพที่ในตอนนี้ ARM อาจจะเหนือกว่าเพราะได้รับการต่อยอดมาอย่างยาวนาน แต่อีกฝั่งก็ยังมีพื้นที่ว่างสำหรับการพัฒนาได้อีกเยอะ ด้านการประหยัดพลังงานก็เช่นกัน ด้วยสถาปัตยกรรมแบบ RISC มีแนวคิดเรื่องการใช้พลังงานที่ต่ำเป็นทุนเดิมอยู่แล้ว ซึ่งด้านของ ARM ก็ทำได้ดีมาเสมอ ส่วนด้าน RISC-V เองก็มีจุดได้เปรียบตรงความเปิดกว้างที่ให้นักพัฒนาสามารถเลือกปรับแต่งชิปได้ตามต้องการกว่า จึงสามารถทำให้ชิปตอบโจทย์งานเฉพาะอย่างได้ดีโดยที่กินไฟต่ำไปพร้อมกัน
ส่วนประสิทธิภาพ อันนี้เทียบกันตรง ๆ อาจจะไม่ได้ต่างกันแบบก้าวกระโดด แต่ RISC-V จะค่อนข้างยืดหยุ่นกว่า เพราะสามารถปรับเปลี่ยนที่ระดับโครงสร้างชิปได้ลึกกว่า สามารถใส่ส่วนเสริมเข้าไปได้หลากหลาย เพื่อให้เหมาะกับการประมวลผลแต่ละระดับได้ดี และมีแนวโน้มที่นักพัฒนาจะสามารถเร่งความแรงขึ้นไปได้ง่ายกว่าอีกด้วย
จุดที่ต่างกันและอาจเป็นปัจจัยที่ทำให้ ARM ถูกตีตลาดได้จริงก็คือเรื่องสิทธิ์การใช้งานครับ เพราะบริษัท Arm จะขายสิทธิ์การใช้งานให้ผู้ผลิตโดยคิดค่า license แบ่งตามระดับขึ้นไป เริ่มตั้งแต่สิทธิ์ในการวิจัยและการศึกษา ซึ่งจะมีค่า license ต่ำสุด ไล่ไปถึงระดับสูงสุดคือสิทธิ์ในการเข้าถึงแปลนสถาปัตยกรรมการออกแบบชิป เพื่อนำไปใช้ปรับปรุงเป็นชิปของตนเอง ตัวอย่างของบริษัทผู้ซื้อสิทธิ์นี้ก็เช่น Qualcomm และ Apple เป็นต้น
แต่ RISC-V นั้นตรงกันข้าม เพราะใช้เป็นมาตรฐานเปิดแบบใช้สิทธิ์ลักษณะของ open-source ที่ผู้ผลิตสามารถเข้าร่วมเป็นสมาชิกและนำเทคโนโลยีไปพัฒนาต่อยอดของตนเองได้ลึกกว่า ซึ่งอาจช่วยลดต้นทุนการผลิตสินค้าในระยะยาวได้ แต่อาจต้องใช้เวลาไปอีกซักระยะ
ผลิตภัณฑ์ที่ใช้ CPU แบบ RISC-V
นับถึงช่วงปลายปี 2023 เราได้เห็นข่าวเกี่ยวกับการนำชิปแบบใหม่นี้มาใช้งานค่อนข้างหลากหลายรูปแบบทีเดียว ตั้งแต่อุปกรณ์ IoT สมาร์ตดีไวซ์ บอร์ดคอมพิวเตอร์ขนาดเล็ก โน้ตบุ๊ก เดสก์ท็อปพีซี ระบบคอมพิวเตอร์ในรถยนต์ คอมพิวเตอร์สำหรับใช้งานระดับ data center ไปจนถึง NASA เองก็มีแผนที่จะใช้ CPU ประเภทนี้ในคอมพิวเตอร์สำหรับภารกิจอวกาศในอนาคตด้วย จะเห็นได้ว่ามีการประยุกต์ใช้งานได้หลากหลายมาก รวมถึงด้านซอฟต์แวร์ก็มีด้วยเช่นกัน รายใหญ่ก็เช่น Google ที่ประกาศว่า Android จะรองรับโค้ดสำหรับ CPU RISC-V มาตั้งแต่ปีที่แล้ว และเริ่มใช้งาน Android ได้แล้วเมื่อไม่กี่เดือนที่ผ่านมา ด้านของฝั่ง Linux OS ก็มีหลาย distro ที่รองรับแล้วด้วย
ส่วนผู้ผลิตชิป RISC-V ที่จัดว่าเป็นชั้นนำในปัจจุบันก็จะเป็น SiFive ที่มีการเปิดตัวชิปออกมาเป็นระยะ ๆ โดยรุ่นล่าสุดก็คือ Performance P870 ที่มีสามารถเชื่อมต่อแบบกลุ่มคลัสเตอร์ในชิปได้สูงสุด 32 คอร์ และมีซีรีส์ย่อยคือ P870A ที่ออกแบบมาเพื่อการใช้งานในระบบรถยนต์โดยเฉพาะอีกด้วย อีกรุ่นคือ SiFive Intelligence X390 ที่ออกแบบมาเพื่อเป็น NPU เน้นงานประมวลผลด้าน AI และ machine learning สามารถทำงานร่วมกันกับชิปในซีรีส์ P ได้
ทีนี้ถ้าพูดถึงผลิตภัณฑ์ในแง่ที่มาเป็นเครื่อง ๆ จับต้องได้ และใกล้ตัวผู้บริโภคขึ้นมาหน่อย ที่ผ่านมาก็มีการเปิดตัวโน้ตบุ๊กที่ใช้ CPU RISC-V ออกมาเช่นกัน โดยรุ่นแรกของโลกก็คือ ROMA โดยบริษัท Xcalibyte จากประเทศจีนเมื่อช่วงกลางปี 2022 ที่ผ่านมา สเปคแบบคร่าว ๆ ก็ได้แก่
- มี CPU 4 คอร์ แบ่งเป็นสองรุ่น ในเครื่องรุ่น Pro ใช้สถาปัตยกรรมระดับ 12nm รุ่น Standard ใช้ 28nm
- มีทั้ง GPU และ NPU
- แรม DDR4 สูงสุด 16GB
- SSD สูงสุด 256GB
- ทำงานด้วยระบบปฏิบัติการตระกูล Linux
และเมื่อกลางเดือนธันวาคม 2023 ที่ผ่านมา ก็มีเปิดตัวโน้ตบุ๊กในกลุ่มเครื่องขนาดเล็ก ทรงแบบ netbook ในสมัยก่อนที่ใช้ชิป RISC-V ออกมาเช่นกัน นั่นคือ Lichee Console 4A จาก Sipeed ในประเทศจีน ใช้ชิปที่ผลิตโดย Alibaba ส่วนสเปคหลักก็มีดังนี้
- CPU Xuantie TH1520 แบบ system-on-module (SoM) 4 คอร์ ความเร็ว 1.85 GHz
- แรม LPDDR4x มีให้เลือกทั้ง 8 และ 16GB
- สตอเรจแบบ eMMC ในตัว มีทั้ง 32 และ 128GB
- รองรับ SSD SATA แบบ M.2 2242 เพิ่มเติมสูงสุด 2TB
- หน้าจอสัมผัสขนาด 7″ 1280×800 LCD
- รองรับ WiFi 6 / Gigabit LAN / USB 3.0 / USB 2.0
- แบตเตอรี่ 3000 mAh ใช้งานได้ราว 2-3 ชั่วโมง
- น้ำหนัก 650 กรัม
- กินไฟขณะ idle ไม่เกิน 8W และขณะโหลด 11W
ส่วนราคาก็เริ่มที่ประมาณ 8,800 บาทไปจนถึงสูงสุดที่ 16,000 บาท แตกต่างกันที่ปริมาณแรมและความจุ eMMC ในตัว ส่วนรุ่นท็อปก็คือจะมีติดตั้ง SSD 1TB เพิ่มมาให้ด้วย สามารถสั่งจองได้แล้วที่หน้าเว็บ Aliexpress ครับ กำหนดการเริ่มวางจำหน่ายในเว็บแจ้งไว้ว่า 1 กุมภาพันธ์ 2024 ที่จะถึงนี้
ในปี 2024 CPU แบบ RISC-V จะเข้ามาแทน หรือแข่งกับเจ้าตลาดเดิมได้หรือยัง?
ถ้าดูจากความคืบหน้าในการพัฒนาและการนำมาใช้งานจริง ณ ตอนนี้ ต้องบอกว่ายังครับ และน่าจะต้องใช้เวลาอีกซักระยะใหญ่ กว่าที่เราจะได้เห็นบริษัทชื่อดังนำชิปกลุ่มนี้มาใช้ในผลิตภัณฑ์ของตนเองอย่างเต็มตัว เพราะการจะเปลี่ยนแผนการใช้ชิปประมวลผลนั้นต้องใช้การวางแผน และเวลาในการดำเนินการหลายปี โดยเฉพาะอย่างยิ่งถ้าเป็นการเปลี่ยนข้ามระดับ x86 (CISC) มาเป็นโครงสร้างสถาปัตยกรรมอื่นที่ต่างไปจากเดิมอย่างสิ้นเชิง ทำให้น่าจะได้เห็นอย่างมากสุดก็แค่การเปิดตัวผลิตภัณฑ์รุ่นเล็ก ๆ ออกมาลองตลาด เพื่อเป็นทางเลือก หรือเป็นเครื่องรุ่นที่เปิดให้นักพัฒนาได้ซื้อไปทดลองมากกว่า เพราะอย่างในวงการคอมพิวเตอร์ส่วนบุคคล การใช้ชิป RISC เจ้าตลาดอย่าง ARM ยังถือว่าเป็นกลุ่มตลาดเล็กอยู่เลย ส่วนหนึ่งก็เป็นเพราะต้องรอ Windows on ARM เข้าสู่ตลาดอย่างเป็นทางการในปีหน้าอีกที
ประกอบกับความแข็งแกร่งของ ARM ที่ปักหลักอยู่ในตลาดชิปประมวลผลสำหรับงานเบา งานเน้นประหยัดพลังงานได้อย่างมั่นคง จนสามารถขยายเข้ามาตีตลาดของ x86 ได้ จึงน่าจะค่อนข้างยากหน่อยที่เราจะได้เห็นคอมพิวเตอร์ โน้ตบุ๊ก สมาร์ตโฟน สมาร์ตดีไวซ์ที่ใช้ชิป RISC-V ออกมาให้เราใช้งานกันอย่างแพร่หลายในปีหน้า และยังอาจจะอีกไม่น้อยกว่า 2-3 ปี
ถ้าจะมีจุดพลิกเกมได้ในอนาคต ส่วนตัวผมมองว่าน่าจะมาจาก Android เป็นหลัก เพราะปัจจัยเรื่องซอฟต์แวร์ที่รองรับถือเป็นเรื่องใหญ่มากสำหรับการพัฒนาฮาร์ดแวร์ ซึ่งในตอนนี้ Android ก็รองรับโค้ด RISC-V อยู่แล้ว ประกอบกับฐานผู้ใช้งานทั่วโลกจำนวนมหาศาล และความกว้างของระบบปฏิบัติการที่อยู่ได้ในหลายแพลตฟอร์ม ซึ่งถ้า Google ประกาศเดินหน้าเต็มกำลัง ก็น่าจะส่งผลถึงทั้งวงการได้ไม่น้อยทีเดียว แต่คงต้องใช้เวลาอยู่ดี เพราะผู้ผลิตอุปกรณ์รายใหญ่ที่ใช้ Android ต่างก็มีการวิจัยและพัฒนา CPU ของตนเองที่อิงจาก ARM แทบทั้งนั้น อย่างไรก็ตาม ถ้าสถาปัตยกรรม RISC แบบใหม่นี้ขึ้นมาเป็นผู้เล่นในตลาดผู้บริโภคได้จริงก็จะเป็นเรื่องดีครับ เพื่อที่จะได้มีการแข่งขัน เราก็จะได้มีตัวเลือกมากขึ้นด้วย