MỞ ĐẦU 1.1 Lý do chọn đề tài Công nghệ thiết kế vi mạch (VLSI) ngày nay đang được cải tiến liên tục, các thiết bị công nghệ mới ra đời ngày càng thân thiện và đáp ứng nhu cầu của người dùng. Tăng tốc độ xử lí là nhu cầu cấp thiết đầu tiên đảm bảo các hệ thống đáp ứng một cách nhanh nhất yêu cầu của người sử dụng trong các lĩnh vực đời sống, công nghệ thông tin cũng như trong công nghiệp. Thứ hai, vấn đề tiết kiệm năng lượng ngày nay luôn được xem là một vấn đề lớn trong bất kì sản phẩm thiết bị cầm tay nào (handset). Đó cũng là một trong những tiêu chí hàng đầu trong quyết định lựa chọn sản phẩm của khách hàng.
Tuy nhiên, với công nghệ pin ở thời điểm hiện tại, các nhà sản xuất sản phẩm chỉ có thể tăng dung lượng pin bằng cách tăng kích cỡ của pin, đồng nghĩa với việc giá thành sẽ tăng theo. Trong các sản phẩm này, SoC được xem là một trong những thành phần tiêu thụ năng lượng chính. Do vậy, tối ưu hóa được dòng năng lượng của chip đồng nghĩa với việc tăng thời lượng pin sử dụng của sản phẩm. Đây là một trong những vấn đề hàng đầu mà các nhà thiết kế ASIC (SoC) phải giải quyết.
Có rất nhiều phương pháp được đưa ra, nhưng để giải quyết được triệt để các nhà nghiên cứu đã tiến hành nâng cấp tốc độ các thiết bị từ các đơn vị cơ bản nhất của các bộ xử lí: Các bộ nhân - khối cấu trúc cơ bản cho các đơn vị logic số học. Một số phương pháp cải tiến được kể đến như: Traditional Pen and Paper, Booth and Vedic. Tốc độ tính toán của các phương pháp nhân được thể hiện trong biểu đồ phía dưới [1] 1 Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh Hình 1.1 So sánh tốc độ các phương pháp nhân Như biểu đồ so sánh trên ta thấy phương pháp nhân Vedic là phương pháp nhân có được hiệu quả nhanh nhất và hiện nay, trên thế giới cũng được các nhà nghiên cứu sử dụng nhiều nhất.
Cùng với đó là các nghiên cứu về cải tiến sao cho bộ nhân ngày càng có tốc độ tính toán nhanh hơn. Luận văn này trình bày về việc thực hiện một giải thuật trong việc thực hiện phép nhân Vedic 16x16 bits sử dụng TSMC 45nm. Bên cạnh đó chúng ta sẽ đi vào nghiên cứu các giải pháp mới với các cổng logic cải tiến nhằm đưa đến một phương pháp tối ưu cả về công suất lẫn độ trễ đảm bảo cho các thiết bị ứng dụng có hiệu suất hoạt động tốt nhất 2 Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh 1.2 Tình hình nghiên cứu Trên thế giới bộ nhân Vedic luôn được cải tiến cùng với việc cải tiến không ngừng của bộ cộng, ta có thể khảo sát một số bài báo trong lĩnh vực này dưới đây Tác giả Tên bài báo năm Shauvik Panda, Dr.
Alpana A New High Speed 16x16 Vedic Multiplier 5/5/18 Agarwal DESIGN OF AN MAC UNIT USING 16*16 VEDIC MULTIPLIER BASED ON K.Vinitha 6/6/17 QUANTUM-DOT CELLULAR AUTOMATA Design of an Efficient 16 Bit Vedic Multiplier Using Carry Select Adder with Brent Dasari Rudrama 30/9/16 Kung Adder G.Bala Area Efficient Modified Vedic Multiplier 8/4/16 Sindhur Aravind E Vijayan ; Arlene John ; Efficient implementation of 8-bit vedic multipliers for image processing application 26/1/15 Deepak Sen Yeshwant Deodhe ; Sandeep Design and Implementation of 8-Bit Vedic Multiplier Using CMOS Logic 9/10/14 Kakde ; Rushikesh Deshmukh Y Bhavani Prasad ; Ganesh Design of low power and high speed modified carry select adder for 16 bit Vedic Chokkakula ; P Srikanth Reddy ; 28/2/14 Multiplier N. Kumar Design of modified vedic multiplier and FPGA implementation in multilevel 2d- 12/1/14 Charlie Paul DWT for image processing applications U.S Pavan Kumar ; A Saiprasad FPGA implementation of high speed 8-bit Vedic multiplier using barrel shifter 18/6/13 Goud ; A. Radhika Devika Jaina ; Kabiraj Sethi ; Vedic Mathematics Based Multiply Accumulate Unit 12/29/11 Rutuparna Panda Hình 1.2 Một số công trình nghiên cứu nhân Vedic trên thế giới Hiện tại Việt Nam đang phát triển về vi mạch một cách mạnh mẽ các bài nghiên cứu về các phép tính toán số học trong đó có phép cộng và phép nhân cũng ngày được quan tâm 1.3 Nhiệm vụ luận văn Luận văn đặt mục tiêu thực hiện các nội dung sau đây: Lý thuyết: Trình bày và thiết về bộ nhân Vedic 16x16 quy trình thiết kế vi mạch, ý nghĩa các chỉ số cần đo, các luật thiết kế layout khi thực hiện trên công nghệ 45nm. Thiết kế chức năng và thiết kế logic: Trình bày cách tiếp cận để đưa ra đề xuất thiết kế các bộ nhân Vedic 16x16 với công suất thấp và độ trễ nhỏ với các bộ 3 Luận văn thạc sĩ GVHD: TS.
Trần Hoàng Linh cộng đã và đang có (song song, nối tiếp, và các bộ cộng đã được chỉnh sửa). Sau đó đưa ra một mô hình bộ nhân tối ưu Kết quả thực hiện: Thiết kế Schematic, mô phỏng trình bày các chỉ số đo được từ các bộ nhân. Kết luận: nêu ra kết luận và hướng phát triển 4 Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh CHƯƠNG 2 CƠ SỞ LÝ THUYẾT 2.1 Bộ nhân Vedic Urdhva - Triyagbhyam (theo chiều dọc và chiều ngang) Urdhva tiryakbhyam Sutra là một công thức nhân chung áp dụng cho tất cả các trường hợp nhân.
Nó có nghĩa đen là “theo chiều dọc và chiều ngang”. Để minh họa sơ đồ phép nhân này, chúng ta hãy xem xét phép nhân của hai số thập phân số (5498 × 2314). Các phương pháp thông thường đã biết với chúng tôi sẽ yêu cầu 16 phép nhân và 15 phép cộng. Một phương pháp nhân khác bằng Urdhva tiryakbhyam Sutra được hiển thị trong Hình 2.
Các con số được nhân lên được viết trên hai cạnh liên tiếp của hình vuông như thể hiện trong hình. Hình vuông được chia thành các hàng và cột trong đó mỗi hàng / cột tương ứng với một trong các chữ số của một trong hai một số nhân hoặc một bội số. Do đó, mỗi chữ số của cấp số nhân có một hộp nhỏ chung cho một chữ số của bội số. Những các hộp nhỏ được phân chia thành hai nửa theo chiều ngang dòng.
Mỗi chữ số của số nhân là độc lập nhân với mỗi chữ số của bội số và hai chữ số sản phẩm được viết trong hộp chung. Tất cả các chữ số nằm trên một đường chấm chéo được thêm vào bit nhớ trước đó. Ít nhất chữ số có nghĩa của số thu được đóng vai trò là chữ số kết quả và phần còn lại là bit nhớ cho bước tiếp theo. Bit nhớ bước đầu tiên (ví dụ, đường chấm chấm ở phía cực bên phải) được coi là 0 5 Luận văn thạc sĩ GVHD: TS.
Trần Hoàng Linh Hình 2.1- Alternative way of multiplication by Urdhva tiryakbhyam Sutra. Khối số nhân Veda 2x2 được hiển thị trong Hình 2. Ở đây, kỹ thuật của Urdhva-Tiryakbhyam đã thảo luận trước đó được áp dụng trên các số nhị phân 2 bit. Như được hiển thị trong Hình.2, các sản phẩm một phần ban đầu được tạo bằng cổng AND và kết quả được thêm vào bằng Half Adder (HA).
Đặt input1 = a1a0 và input2 = b1b0, trong đó a1, b1 là MSB và a0, b0 là LSB. Bước đầu tiên: a0 và b0 được nhân theo chiều dọc và kết quả được lưu trữ dưới dạng LSB của đầu ra cuối cùng. Bước thứ hai: b0 được nhân với a1 và a0 được nhân với b1. Hai kết quả này được thêm vào bằng HA và tổng này được lưu dưới dạng bit thứ hai của đầu ra cuối cùng.
Bước thứ ba: b1 được nhân với a1 và kết quả này được thêm vào khi thực hiện HA từ bước thứ hai và tổng số được tạo ra và thực hiện được lưu trữ dưới dạng bit thứ ba và thứ tư của đầu ra cuối cùng.2- Hardware Realization of 2x2 block 6 Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh Để mở rộng hệ số nhân hơn nữa, thuật toán Karatsuba – Ofman có thể được sử dụng. Thuật toán Karatsuba-Ofman được xem là một trong những cách nhanh nhất để nhân số nguyên. Nó dựa trên chiến lược phân chia và chinh phục.
Phép nhân 2n chữ số số nguyên được giảm xuống hai phép nhân n chữ số, một (n + 1) chữ số phép nhân, phép trừ hai chữ số n, hai phép toán trái, bổ sung hai chữ số n và hai 2n chữ số bổ sung Thuật toán có thể được giải thích như sau: Đặt X và Y là biểu diễn nhị phân của hai số nguyên X=∑ xi2i Y=∑ yi2i Muốn tính toán kết quả của X*Y. Sử dụng chiến lược phân chia và chinh phục, các toán hạng X và Y có thể được phân tách thành các phần có kích thước bằng nhau XH và XL, YH và YL, trong đó các chỉ số H và L đại diện cho các bit thứ tự cao và thấp của X và Y tương ứng. Nếu k là số lẻ, nó có thể được đệm đúng bằng 0. X = 2n ∑ xi+n 2i + ∑ xi 2i = XH 2n + X L Y = 2n ∑ yi+n 2i + ∑ yi 2i = YH 2n + Y L Kết quả được tính như sau: P=X*Y = (XH 2n + XL) * (YH 2n + YL) = 22n (XH * YH) + 2n ((XH * YL) + (XL * YH)) + (XL * YL) (1) Đối với phép nhân, khối đầu tiên la 2x2 bits nhân, sau đó là 4x4 bits, 8x8 bits và cuối cùng phép nhân 16x16 bits được xây dựng như hình dưới.
7 Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh Hình 2.3- 16x16 bits Vedic multiplier 2.2 Các chỉ số cần đo Luận văn nghiên cứu đề xuất các bộ nhân Vedic 16x16 khác nhau được xây dựng từ các bộ cộng, mục đích cuối cùng là đi tới đề suất về bộ nhân có điện năng tiêu thụ thấp nhất, và thời gian trễ nhỏ nhất. Do đó hai thông số được đo để rút ra kết luận là độ trễ và công suất được tính toán bằng công cụ đã được tích hợp sẵn trong virtuoso 2.1 Độ trễ Propagation delay (trễ truyền) tp của 1 cổng logic được định nghĩa là thời gian nó tạo thành ngõ ra sau khi ta thay đổi ngõ vào. Nó biểu thị độ trễ bởi 1 tín hiệu khi đi qua một cổng logic.
Trễ truyền được quy ước tính bằng khoảng thời gian đo giữa các điểm chuyển tiếp 50% của dạng sóng ngõ vào và ngõ ra. 8 Luận văn thạc sĩ GVHD: TS. Trần Hoàng Linh Hình 2.4- Định nghĩa trễ truyền Bởi vì cổng logic phản hồi cạnh lên, cạnh xuống của ngõ vào với các khoảng thời gian khác nhau. Do đó, người ta định nghĩa cụ thể hơn về trễ truyền: tpLH là khoảng thời gian phản hồi của cổng logic của cạnh tích cực cao (Low to Hight) của ngõ ra.