วิธีการ คูณ แบบขั้นเทพ ใครทราบบ้างแนะนำกันบ้างนะครับ

By: madmod on Tue, 21/05/2013 - 16:51

ผมขอนำก่อนนะครับ
ผมได้บังเอิญไป อ่านเจอในหนังสือ พวก FPGA นะครับ

ที่จริงแล้ว การคูณ แบบปกติบ้านๆตั้งแต่สมัยประถม
5x10 = 50
มันคือ การเอา 5 มาบวก กัน 10 ครั้งใช่ไหมครับ

ทีนี้ ถ้าจะลองสร้าง ALU (ชุดคำสั่ง ของ CPU)
ก็ ต้องเพิ่ม ทีละ 5 เข้าไป 10 ครั้ง อันนี้แบบบ้านๆ นะครับ

ทีนี้ถ้า จะให้มันไว ขึ้น ผมจำได้ประมาณ ผู้เขียนบอกว่า ให้ทำเป็น "เมทริกซ์" เท่านั้นหล่ะมันจะออกมา ใน 1 clock เท่านั้น (พระเจ้ามันยอดมาก)

ปัญหามันอยู่ตรงนี้แล้วหล่ะครับ
ผมอยากทราบว่า ผมจะไปหา keywords หรือ หัวข้อ ที่จะหาวิธีการคูณ แบบ ขั้นเทพพวกนี้ได้ที่ไหนครับ

ช่วยแนะนำผมหน่อยครับ
ปล.อยากทราบหลายๆวิธีนะครับ ไม่จำเป็นต้องเป็นวิธีนี้วิธีเดียว เพราะผมก็ลองหา google บ้างแล้วครับ
อยากทราบว่ามัน น่าจะมีวิธีมากกว่านี้นะครับ

nat3738's picture

http://en.wikipedia.org/wiki/Booth%27s_multiplication_algorithm

นี่มั้ง เหมือนจำได้ว่าเป็นวิธีหลักๆ ใน ALU เลย