ตัวคูณอาร์เรย์ 4 × 4 คืออะไรและทำงานอย่างไร

ลองใช้เครื่องมือของเราเพื่อกำจัดปัญหา





ตัวคูณถูกใช้ในการประมวลผลสัญญาณดิจิทัลและแอพพลิเคชั่นอื่น ๆ เนื่องจากความก้าวหน้าของเทคโนโลยีในปัจจุบันนักวิจัยจำนวนมากจึงให้ความสำคัญกับปัจจัยการออกแบบเป็นหลักเพื่อประสิทธิภาพที่ดีขึ้น เป้าหมายการออกแบบบางส่วน ได้แก่ ความเร็วสูงความแม่นยำการใช้พลังงานต่ำความสม่ำเสมอของรูปแบบพื้นที่น้อยโปรเซสเซอร์ DSP มีบล็อกการคำนวณที่หลากหลายเช่น มัลติเพล็กเซอร์ แอดเดอร์ MAC . ความเร็วในการทำงานและการดำเนินการของบล็อกเหล่านี้มีขั้นสูงเมื่อเทียบกับเวอร์ชันก่อนหน้า ความเร็วในการดำเนินการของตัวคูณขึ้นอยู่กับสองปัจจัย เทคโนโลยีเซมิคอนดักเตอร์ และสถาปัตยกรรมตัวคูณ แอดเดอร์เป็นส่วนประกอบพื้นฐานของดิจิตอลมัลติเพล็กเซอร์ที่เราทำการเพิ่มหลาย ๆ ครั้งเพื่อเพิ่มความเร็วในการทำงานของตัวคูณความเร็วในการทำงานของแอดเดอร์จะต้องเพิ่มขึ้น มีแอพพลิเคชั่นการประมวลผลสัญญาณดิจิทัลจำนวนมากโดยที่เส้นทางหน่วงเวลาวิกฤตและประสิทธิภาพของโปรเซสเซอร์อยู่ในตัวคูณ มีตัวคูณประเภทต่างๆซึ่งตัวคูณอาร์เรย์ 4 × 4 เป็นตัวคูณขั้นสูงซึ่งอธิบายไว้ในบทความนี้

รูปแบบการคูณในตัวคูณอาร์เรย์ 4 × 4

แผนการคูณมีสองประเภท




การคูณอนุกรม (Shift – Add): การดำเนินการคูณอนุกรมสามารถแก้ไขได้โดยการหาผลิตภัณฑ์บางส่วนจากนั้นจึงเพิ่มผลิตภัณฑ์บางส่วนเข้าด้วยกัน การใช้งานเป็นแบบดั้งเดิมด้วยสถาปัตยกรรมที่เรียบง่าย

การคูณแบบขนาน: ผลิตภัณฑ์คู่ขนานถูกสร้างขึ้นพร้อมกันในการคูณแบบขนานและใช้การใช้งานแบบขนานของเครื่องจักรประสิทธิภาพสูงทำให้เวลาแฝงจะลดลง



อัลกอริทึมการคูณ

กระบวนการคูณมีสามขั้นตอนหลัก:

  • การสร้างผลิตภัณฑ์บางส่วน
  • การลดผลิตภัณฑ์บางส่วน
  • การเพิ่มขั้นสุดท้าย

วิธีการคูณทั่วไปคืออัลกอริทึม 'เพิ่มและเปลี่ยน' อัลกอริทึมการคูณสำหรับตัวคูณ N-bit แสดงไว้ด้านล่าง


การคูณ 4 คูณ 4

การคูณ 4 คูณ 4

4 - คูณ - 4 - การคูณ 1

4 - คูณ - 4 - การคูณ 1

ตัวอย่างที่ 2

ตัวอย่างที่ 2

ผลิตภัณฑ์บางส่วนสร้างขึ้นโดยใช้ AND gates โดยที่

  • Multiplicand = N- บิต
  • ตัวคูณ = M-bits
  • สินค้าบางส่วน = N * M.

การคูณของตัวเลข 8 บิตสองตัวซึ่งสร้างผลคูณ 16 บิต

สมการของการบวกคือ

P (m + n) = A (ม.) B (n) = ผม = 0 ม -1∑ j = 0n-1∑ ไอ bj 2i + j ……. 1

A, B = 8 บิต

ขั้นตอนในการคูณ

ต่อไปนี้เป็นขั้นตอนสำหรับการคูณใด ๆ

  • หาก LSB ของตัวคูณคือ '1' จากนั้นเพิ่มตัวคูณลงในบิตตัวคูณตัวสะสมจะเลื่อนไปทางขวาหนึ่งบิตและบิตตัวคูณจะเลื่อนไปทางซ้ายหนึ่งบิต
  • หยุดเมื่อบิตทั้งหมดของตัวคูณเป็นศูนย์
  • ใช้ฮาร์ดแวร์น้อยลงหากมีการเพิ่มผลิตภัณฑ์บางส่วนตามลำดับ เราสามารถเพิ่ม PP ทั้งหมดด้วยตัวคูณคู่ขนาน อย่างไรก็ตามสามารถใช้เทคนิคการบีบอัดเพื่อลดจำนวนผลิตภัณฑ์บางส่วนได้ก่อนที่จะทำการเพิ่ม

ตัวคูณประเภทต่างๆ

ตัวคูณประเภทต่างๆ ได้แก่

ตัวคูณบูธ

ฟังก์ชันของตัวคูณของบูธคือการคูณเลขฐานสองที่มีลายเซ็น 2 ตัวซึ่งแสดงใน ส่วนเสริม 2 แบบฟอร์ม. ข้อดีของตัวคูณบูธคือความซับซ้อนขั้นต่ำการคูณจะเร็วขึ้น ข้อเสียของตัวคูณบูธคือการใช้พลังงานสูง

Multiplier ผสม

ตัวคูณแบบผสมจะทำการคูณของเลขฐานสองที่ไม่ได้ลงนามสองตัว ข้อดีของตัวคูณแบบผสมคือสามารถสร้างผลิตภัณฑ์ระดับกลางได้อย่างง่ายดาย ข้อเสียเปรียบหลักของตัวคูณแบบผสมคือใช้พื้นที่ขนาดใหญ่

ตัวคูณตามลำดับ

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

ตัวคูณต้นไม้วอลเลซ

ช่วยลดจำนวนผลิตภัณฑ์บางส่วนและใช้ตัวเลือกที่เลือกสำหรับการเพิ่มผลิตภัณฑ์บางส่วน ข้อดีของตัวคูณต้นไม้วอลเลซคือความเร็วสูงและการออกแบบที่ซับซ้อนปานกลาง ข้อเสียเปรียบหลักของตัวคูณต้นไม้วอลเลซคือการออกแบบเลย์เอาต์ไม่สม่ำเสมอและใช้พื้นที่ขนาดใหญ่

ตัวคูณอาร์เรย์

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

Shift และเพิ่มตัวคูณ

มันคล้ายกับกระบวนการคูณปกติที่เราทำในคณิตศาสตร์จากการแชทโฟลว์ตัวคูณอาร์เรย์โดยที่ X = ตัวคูณและ Y = ตัวคูณ A = ตัวสะสม, Q = ความฉลาด ประการแรก Q จะถูกตรวจสอบว่าเป็น 1 หรือไม่ถ้าเป็น 1 จากนั้นเพิ่ม A และ B และเลื่อน A_Q ไปทางขวาทางคณิตศาสตร์มิฉะนั้นถ้าไม่ใช่ 1 โดยตรงให้เลื่อน A_Q ไปทางขวาทางคณิตศาสตร์และลด N ลง 1 ในขั้นตอนถัดไปตรวจสอบว่า N เป็น 0 หรือไม่. ถ้า N ไม่ใช่ 0 ซ้ำจากขั้นตอน Q = 0 อื่น ๆ จะยุติกระบวนการ

กะและเพิ่มตัวคูณ

กะและเพิ่มตัวคูณ

การสร้างและการทำงานของตัวคูณอาร์เรย์ 4 × 4

โครงสร้างการออกแบบของตัวคูณอาร์เรย์เป็นแบบปกติโดยใช้หลักการอัลกอริธึมการเพิ่มกะ

ผลคูณบางส่วน = ตัวคูณ * บิตตัวคูณ………. (2)

โดยที่ AND gates ใช้สำหรับผลิตภัณฑ์การสรุปจะทำได้โดยใช้ Full Adders และ Half Adders ซึ่งผลิตภัณฑ์บางส่วนจะถูกเลื่อนไปตามคำสั่งบิต ในตัวคูณอาร์เรย์ n * n ประตู n * n AND จะคำนวณผลิตภัณฑ์บางส่วนและการเพิ่มผลิตภัณฑ์บางส่วนสามารถทำได้โดยใช้ n * (n - 2) ตัวเติมเต็มและส่วนเติมครึ่งหนึ่ง ตัวคูณอาร์เรย์ 4 × 4 ที่แสดงมี 8 อินพุตและ 8 เอาต์พุต

ตัวคูณอาร์เรย์ 4 คูณ 4

ตัวคูณอาร์เรย์ 4 คูณ 4

หน่วยการสร้างของตัวคูณอาร์เรย์ 4 × 4

แอดเดอร์เต็มจะมีอินพุตสามบรรทัดและสองบรรทัดเอาต์พุตซึ่งเราใช้สิ่งนี้เป็นส่วนประกอบพื้นฐานของตัวคูณอาร์เรย์ ต่อไปนี้เป็นตัวอย่างของตัวคูณอาร์เรย์ 4 × 4 บิตซ้ายสุดคือบิต LSB ของผลิตภัณฑ์บางส่วน

แอดเดอร์บล็อกไดอะแกรม

แอดเดอร์บล็อกไดอะแกรม

อาร์เรย์ตัวคูณบล็อกไดอะแกรม

อาร์เรย์ตัวคูณบล็อกไดอะแกรม

บิตขวาสุดคือบิต MSB ของผลิตภัณฑ์บางส่วน ตอนนี้ผลิตภัณฑ์บางส่วนจะถูกเลื่อนไปทางด้านซ้ายของการคูณและจะถูกเพิ่มเพื่อให้ได้ผลิตภัณฑ์สุดท้าย กระบวนการนี้จะทำซ้ำจนกว่าจะไม่มีผลิตภัณฑ์สองส่วนออกจากการเพิ่ม

การคูณ 4 คูณ 4 -1

การคูณ 4 คูณ 4 -1

แผนภาพตรรกะของ 4 คูณ 4 - อาร์เรย์ - ตัวคูณ

แผนภาพตรรกะของ 4 คูณ 4 - อาร์เรย์ - ตัวคูณ

โดยที่ a0, a1, a2, a3 และ b0, b1, b2, b3 คือตัวคูณและตัวคูณผลรวมของผลิตภัณฑ์ทั้งหมดเป็นผลิตภัณฑ์บางส่วนผลลัพธ์ของผลรวมของผลิตภัณฑ์บางส่วนคือผลคูณ

สำหรับตัวคูณอาร์เรย์ 4 × 4 ต้องมี 16 ประตูและประตู 4 ตัว (HAs) 4 ตัว, ตัวเพิ่มตัวเต็ม (FA) 8 ตัว รวม 12 Adders

ข้อดีของตัวคูณอาร์เรย์ 4 × 4

ข้อดีของตัวคูณอาร์เรย์คือ

  • ความซับซ้อนขั้นต่ำ
  • ปรับขนาดได้อย่างง่ายดาย
  • ได้อย่างง่ายดาย ท่อ
  • รูปร่างปกติง่ายต่อการวางและเส้นทาง

ข้อเสียของตัวคูณอาร์เรย์ 4 × 4

ข้อเสียของตัวคูณอาร์เรย์มีดังนี้

การประยุกต์ใช้ตัวคูณอาร์เรย์ 4 × 4

แอปพลิเคชันของตัวคูณอาร์เรย์แสดงอยู่

  • ตัวคูณอาร์เรย์ใช้เพื่อดำเนินการ การคำนวณทางคณิตศาสตร์ เช่นการกรองการแปลงฟูริเยร์การเข้ารหัสรูปภาพ
  • การทำงานความเร็วสูง

ดังนั้นนี่คือทั้งหมดประมาณ 4 × 4 ตัวคูณอาร์เรย์ ซึ่งเป็นตัวคูณขั้นสูงตามหลักการเพิ่มและเปลี่ยนประสิทธิภาพสามารถเพิ่มขึ้นได้อย่างง่ายดายโดยใช้เทคนิคไปป์ไลน์ที่มีโครงสร้างที่เรียบง่ายแม้ว่าจะใช้ลอจิกเกตมากขึ้นซึ่งสามารถใช้งานได้โดยใช้ Verilog คำถามที่ว่า“ ต้องใช้ลอจิกเกตกี่ตัวในการออกแบบตัวคูณอาร์เรย์ 3 * 3”