Tóm tắt: Luận văn này trình bày các vấn đề liên quan đến bộ lọc FIR công suất thấp bằng quy trình thiết kế vi mạch số sử dụng công nghệ CMOS 90NM, và CMOS 65NM áp dụng thuật toán Multiple Constant Multiplication (MCM), Shift Bit Adder/Multiplier (SBAM) và bộ nhân vedic kết hợp với cộng ripple carry adder (Vedic and RCA). Trong báo cáo này, Chương 3 được trình bày tổng quan lý thuyết bộ lọc FIR và một số thuật toán để áp dụng trong quá trình thiết kế ASIC để tối được công suất cho bộ lọc FIR. Chương 4, trình bày về thiết kế RTL bằng ngôn ngữ Verilog. Chương 5, trình bày về quy trình thiết kế Synthensic. Chương 6, trình bày về kiểm tra RTL code trước khi mô phỏng Design Complier, chương 7 là mô phỏng Design Compiler và kết báo cáo cell, diện tích mạch, thời gian trễ, và công suất hoạt động của mạch. Chương 8, là chương cuối cùng để kết luận và hướng phát triển lương lai của bài luận văn này. Luận văn đã thực hiện thành công mô phỏng bộ lọc FIR với tín hiệu vào là rời rạc đã được kiểm tra trên ModelSim, Matlab và mô phỏng vi mạch số bằng phần mềm Synopsys tool sử dụng bộ cộng ripple carry adder và bộ nhân vedic kết hợp với D Flip– Flip để tạo trễ và tiêu thụ năng lượng thấp. Mô phỏng thực hiện trên thư viện vi mạch số 90NM CMOS TSMC 1P6M cho hiệu suất 96% có khả năng lọc tín rơi rạc, tín hiệu chuỗi, và tín hiệu véc tơ mảng rất là tốt bởi bộ lọc FIR này, về điện áp thiết kế là 1.6V và tần số thiết kế ASIC cho bộ lọc là 100MHz có clock chù kỳ là 10ns
Trang 1ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC BÁCH KHOA KHOA ĐIỆN - ĐIỆN TỬ
Chuyên ngành: Kỹ thuật điện tử
Mã ngành: 60520203
LUẬN VĂN THẠC SĨ
TP HỒ CHÍ MINH, THÁNG 6 NĂM 2019
Trang 2CÔNG TRÌNH ĐƯỢC HOÀN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA - ĐHQG - HCM
Cán bộ hướng dẫn khoa học: TS Truông Quang Vinh Cán bộ chấm nhận xét 1:
TS Bùi Trọng Tú Cán bộ chấm nhận xét 2: TS Nguyễn Minh Sơn
Luận văn thạc sĩ được bảo vệ tại Trường Đại học Bách Khoa, ĐHQG Tp HCM ngày 05 tháng 07 năm 2019
Thành phần Hội đồng đánh giá luận văn thạc sĩ gồm:
(Ghi rõ họ, tên, học hàm, học vị của Hội đồng chấm bảo vệ luận văn thạc sĩ)
1 PGS TS Hoàng Trang
2 TS Bùi Trọng Tú
3 TS Nguyễn Minh Sơn
4 TS Trần Hoàng Linh
5 TS Nguyễn Lý Thiên Trường
Xác nhận của Chủ tịch Hội đồng đánh giá LV và Trưởng Khoa quản lý chuyên ngành sau khi luận văn đã được sửa chữa (nếu có)
Trang 3ĐẠI HỌC QUỐC GIA TP.HỒ CHÍ MINH CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM
NHIỆM VỤ LUẬN VĂN THẠC SĨ
I TÊN ĐỀ TÀI: Thiết kế ASIC cho bộ lọc FIR công suất thấp
II NHIỆM VỤ VÀ NỘI DUNG:
- Nghiên cứu các phương pháp tối ưu công suất dành cho bộ lọc FIR Từ đó chọn được một bộ giảm công suất phù hợp với điều kiện công nghệ CMOS tại Việt Nam
- Khảo sát cấu hình của bộ lọc FIR công suất và độ trễ thấp Để xuất cấu trúc bộ lọc FIR và khối chức năng của bộ lọc FIR
- Nghiên cứu, thiết kế sơ đồ nguyên lý và tính toán thông số lý thuyết của khối chức năng trong bộ lọc FIR
- Mô phỏng toàn bộ hệ thống bằng Matlab Simulink và ModelSim
- Thiết kế ASIC cho bộ lọc FIR bằng Synopsys tool sử dụng công nghệ CMOS 90NM
III NGÀY GIAO NHIỆN VỤ: 20/08/2019
IV NGÀY HOÀN THÀNH NHIỆM VỤ: 02/06/2019
V CÁN Bộ HƯỚNG DẪN: TS Trương Quang Vinh
CÁN Bộ HƯỚNG DẪN
Tp.HCM, ngày tháng năm 2019
CHỦ NHIỆM Bộ MÔN
TRƯỞNG KHOA
Trang 4Luận văn thạc sĩ GVHD: Trương Quang Vinh
LỜI CẢM ƠN
Được sự phân công của nhà trường, khoa điện - điện tử và sự đồng ý của giáo viên hướng dẫn TS Trương Quang Vinh, em đã thực hiện luận văn thạc sĩ chuyên ngành kỹ
thuật điện tử với đề tài “Thiết kế ASIC cho bộ lọc FIR công suất thấp” trên công nghệ
CMOS 90nm Qua trang viết này em xin gửi lời cảm ơn tới những người đã giúp đỡ em trong thời gian học tập, nghiên cứu luận văn thời gian qua
Trước hết, em xin gửi lời cảm ơn chân thành đến TS Trương Quang Vinh Thầy là người đã trực tiếp hướng dẫn và tận tình chỉ bảo trong công việc nghiên cứu, tim kiếm tài liệu, xử lý và phân tích vấn đề của luận văn Nhờ thầy mà em có thể hoàn thành luận văn cao học
Ngoài ra, em cũng xin chân thành cảm ơn quý đồng nghiệp, gia đĩnh và bạn bè cùng khóa đã luôn động viên và hỗ trợ em trong suốt quá trình nghiên cứu và hoàn thành luận văn này
TÁC GIẢ
Chhoeung Yean
Trang 5Luận văn thạc sĩ GVHD: Trương Quang Vinh
TÓM TẮT LUẬN VĂN
Ngày nay các thiết bị di động như điện thoại di động, máy tính xách tay, hay các thiết bị y sinh cầm tay, máy chụp ảnh, video, tiếng nói càng phổ biến và một phần tất yếu trong cuộc sống Bộ lọc đáp ứng xung hữu hạn, hay bộ lọc kỹ thuật số hữu hạn (Finite Impulse Regulator Filter) được sử dụng rất rộng rãi trong các bộ lọc tín hiệu của thiết bị
y sinh, video, máy chụp ảnh, lọc các tín hiệu rời rạc hoặc tín hiệu số thành điện năng Không chi ổn định về điện áp và kích thước và tộc độ xử lý còn có hiệu suất nặng lượng cao Sự xử lý tín hiệu từ các bộ lọc đáp ứng xung hữu hạn cho một thiết bị hoạt động với công suất thấp hơn thông qua các nguồn điện của tín hiệu vào, hệ thống lọc, đầu ra Nguồn tín hiệu vào là tín hiệu rời rạc hoặc số thông qua hệ thống lọc đáp ứng xung hữu hạn với bài toán của bộ lọc FIR đưa ra tín hiệu có mức độ công suất thấp hơn so với đầu vào
Luặn văn này trình bày các vấn đề liên quan đến bộ lọc FIR công suất thấp bằng quy trình thiết kế vi mạch số sử dụng công nghệ CMOS 90NM, và CMOS 65NM áp dụng thuật toán Multiple Constant Multiplication (MCM), Shift Bit Adder/Multiplier (SB AM)
và bộ nhân vedic kết hợp với cộng ripple carry adder (Vedic and RCA) Trong báo cáo này, Chương 3 được trình bày tổng quan lý thuyết bộ lọc FIR và một số thuật toán để áp dụng trong quá trình thiết kế ASIC để tối được công suất cho bộ lọc FIR Chương 4, trình bày về thiết kế RTL bằng ngôn ngữ Verilog Chương 5, trình bày về quy trình thiết kế Synthensic Chương 6, trình bày về kiểm tra RTL code trước khi mô phỏng Design Compiler, chương 7 là mô phỏng Design Compiler và kết báo cáo cell, diện tích mạch, thời gian trễ, và công suất hoạt động của mạch Chương 8, là chương cuối cùng để kết luận và hướng phát triển lương lai của bài luận văn này
Luận văn đã thực hiện thành công mô phỏng bộ lọc FIR với tín hiệu vào là rời rạc
đã được kiểm tra trên ModelSim, Matlab và mô phỏng vi mạch số bằng phần mềm Synopsys tool sử dụng bộ cộng ripple carry adder và bộ nhân vedic kết hợp với D Flip - Flip để tạo trễ và tiêu thụ năng lượng thấp Mô phỏng thực hiện trên thư viện vi mạch số 90NM CMOS TSMC 1P6M cho hiệu suất 96% có khả năng lọc tín rơi rạc, tín hiệu chuỗi,
và tín hiệu véc tơ mảng rất là tốt bởi bộ lọc FIR này, về điện áp thiết kế là 1.6V và tần số thiết kế ASIC cho bộ lọc là 100MHz có clock chù kỳ là 10ns
Trang 6Luận văn thạc sĩ GVHD: Trương Quang Vinh
ABSTRACT
Today mobile devices such as mobile phones, laptops, or portable biomedical devices, cameras, video, and voice are more popular and an inevitable part of life Finite impulse filter, or Finite Impulse Regulator Filter, is widely used in signal filters of biomedical devices, videos, cameras, and filter signals Discrete or digital signals into electricity Steady readings of voltage and size and treatment density also have high weight performance Signal processing from finite impulse response filters for a device that operates with lower power through the input source of the input signal, filtering system, and output The input signal source is a discrete or digital signal through a finite impulse response system with the problem of the FIR filter giving a signal with a lower power level than the input
This paper presents issues related to low-power FIR filters using digital IC design process using CMOS 90NM technology, and CMOS 65NM applying Multiple Constant Multiplication algorithm (MCM), Shift Bit Adder / Multiplier (SBAM) and vedic personalities combined with plus add ripple carry (Vedic and RCA) In this report, Chapter 3 presents an overview of FIR filter theory and some algorithms to apply in the ASIC design process to maximize the power for FIR filters Chapter 4, presenting RTL design in Verilog language Chapter 5, about Synthensic design process Chapter 6, about RTL code testing before Simulation Design Compiler, Chapter 7 is a Design Compiler simulation and a cell report, circuit area, delay time, and circuit capacity Chapter 8, is the final chapter for conclusions and the future development direction of this essay
The thesis has successfully simulated the FIR filter with discrete input signal tested
on ModelSim, Matlab and digital IC simulation with Synopsys tool using adder Adder
Trang 7Luận văn thạc sĩ GVHD: Trương Quang Vinh
MỤC LỤC
LỜI CÁM ƠN I TÓM TẮT LUẬN VĂN II MỤC LỤC IV DANH SÁCH HÌNH MINH HỌA VII DANH SÁCH BẢNG SỐ LIỆU IX DANH TỪ VIẾT TẮT X
CHUƠNG 1 MỞ ĐẦU 1
1.1 LÝ DO CHỌN ĐỀ TÀI 1
1.2 MỤC ĐÍCH NGHIÊN CỨU 2
1.3 ĐỐI TUỢNG VÀ PHẠM VI NGHIÊN cứu 2
1.3.1 Đối tượng nghiên cứu 2
1.3.2 Phạm vi nghiên cứu 2
1.4 Ý NGHĨA KHOA HỌC VÀ Ý NGHĨA THựC TIỄN 3
1.4.1 Ý nghĩa khoa học 3
1.4.2 Ý nghĩa thực tiễn 3
CHUÔNG 2 TÔNG QUAN NGHIÊN cứu 4
2.1 TÌNH HÌNH NGHIÊN cứu NGOÀI NUỚC 4
2.2 TÌNH HÌNH NGHIÊN cứu TRONG NUỚC 5
2.3
NGHIỆM VỤ CỦA LUẬN VĂN 6
2.3.1 Mục tiêu luận văn 6
2.3.2 Nhiệm vụ luận văn 6
CHUƠNG 3 TỒNG QUAN LÝ THUYẾT VÀ THIẾT KẾ CÔNG SUẤT THẤP CHO BỘ LỌC FIR 10
3.1 TỒNG QUAN LÝ THUYẾT CỦA BỘ LỌC FIR 10
IV
Trang 8Luận văn thạc sĩ GVHD: Trương Quang Vinh
3.1.1.2 Sơ đồ khối lọc FIR 11
3.1.1.3 Kiến trúc của bộ lọc FIR 12
3.1.2 Ưu điểm và nhược điểm 12
3.1.2.1 Ưu điểm 12
3.1.2.2 Nhược điểm 13
3.2 THIẾT KẾ CÔNG SUẤT THẤP CHO BỘ LỌC FIR 13
3.2.1 Công suất của CMOS 13
3.2.2 Công suất kỹ thuật số của bộ lọc FIR 15
3.2.2.1 Kỹ thuật đường ống (Pipelining) 15
3.2.3 Thiết kế công suất thấp cho bộ lọc FIR 17
3.2.3.1 Clock gating 17
3.2.3.2 Phép toán của bộ lọc FIR 18
3.2.3.3 Bộ nhân Vedic và bộ cộng RCA 20
3.2.3.4 Thông số thiết kế RTL cho bộ lọc FIR 22
CHƯONG 4 THIÊT KẾ RTL CHO BỘ LỌC FIR BẰNG VERILOG 24
4.1 MÔ TẢ KIẾN TRÚC 24
4.1.1 Khối RTL của bộ lọc FIR bằng thuật toán thông thường 24
4.1.2 Khối RTL cho bộ lọc FIR bằng dịch bit bằng bài toán MCM 25
4.1.3 Khối RTL cho bộ lọc FIR bằng Vedic và RCA của MCM 26
4.1.3.1 Khối bộ nhân Vedic 27
4.1.3.2 Khối mã bù 2 28
Trang 9Luận văn thạc sĩ GVHD: Trương Quang Vinh
CHƯƠNG 6 KIÊM TRA TRƯỚC DESIGN COMPILER 37
6.1 KIÊM TRA KIẾN TRÚC 37
6.2 KIÊM TRA BẰNG MODELSIM 37
6.2.1 Kiểm tra RTL của bộ lọc FIR bằng thuật toán thông thương 37
6.2.2 Kiểm tra RTL với thuật toán dịch bit của bộ nhân với hằng số H 39
6.2.3 Kiểm tra RTL với thuật toán nhân Vedic và cộng RCA với hằng số H 41
6.3 KIÊM TRA BẰNG vcs 43
6.3.1 Kiểm tra với thuật toán thông thường 43
6.3.2 Kiểm tra với thuật toán dịch bit nhân của hằng số H 47
6.3.3 Kiểm tra với thuật toán Vedic và RCA 49
CHƯƠNG 7 MÔ PHỎNG DESIGN COMPILER 52
7.1 THƯ VIỆN ĐÊ MÔ PHỎNG DESIGN COMPILER 52
7.2 MÔ PHỎNG 54
7.2.1 Báo cáo mô phỏng của thư viện CMOS 90nm 54
7.2.2 Báo cáo mô phỏng của thư viện CMOS 65nm 60
7.3 KẾT QUẢ MÔ PHỎNG 67
CHƯƠNG 8 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 70
8.1 KẾT LUẬN 70
8.2 HƯỚNG PHÁT TRIỂN 70
TÀI LIỆU THAM KHẢO 72
PHỤ LỤC 74
A PHỤ LỤC CODE MATLAB 74
B PHỤ LỤC MODELS IM CODE 74
c PHỤ LỤC CODE SYNOPSYS TOOL 86
Trang 10Luận văn thạc sĩ GVHD: Trương Quang Vinh
DANH SÁCH HÌNH MINH HỌA
•
Hình 1.1 Sơ đồ của hệ thống bộ lọc FIR 1
Hình 2.1 Khối của bộ lọc FIR sau khi thiết kế bằng ASIC côngnghệ CMOS 90nm 6
Hình 2.2 Qui trình thiết kế vi mạch số [7] 8
Hình 3.1 Sơ đồ khối quá trình xử lý của bộ lọc số 11
Hình 3.2 Sơ đồ khối của bộ lọc đáp ứng xung hữuhạn (FIR Filter) 11
Hình 3.3 Kiến trúc của bộ lọc đáp ứng xung hữu hạn (Structure of FIR Filter) 12
Hình 3.4 Dạng trực tiếp của bộ lọc FIR 16
Hình 3.5 Bộ lọc FIR Pipelined [9] 17
Hình 3.6 Clock gate của Latch thiết kế cơ bản 18
Hình 3.7 Sơ đồ thiết kế bộ lọc FIR 5 tap 19
Hình 3.8 Thuật toán MCM (Multiple Constant Multipliclication) 19
Hình 3.9 Dạng 8x8 của bộ nhân Vedic 20
Hình 3.10 Bộ nhân Vedic 8x8 trong quy trình tính toán bộ lọc FIR 20
Hình 3.11: Dạng của bộ cộng Ripple Carry Adder(RCA) 21
Hình 3.12 Sơ đồ thiết kế Flip Flop 21
Hình 5.1 Quy trình thiết kế ASIC 32
Hình 5.2 Lưu đồ thuật toán 33
Hình 5.3 Các vấn đề cần quan tâm trong bước tổng hợp xuống lớp cổng 34
Hình 5.4 Các file đầu vào và đầu ra thông qua phần mem DC 35
Hình 6.1 Error viewer của ModelSim 37
Hình 6.2 Ket simulator testbench với thuật toán thông thường 38
Hình 6.3a Dataflow của bộ lọc FIR trước khi tổng hợp 38
Hĩnh 6.3b Dataflow đầu vào của bộ lọc FIR trước khi tổng hợp 38
Trang 11Luận văn thạc sĩ GVHD: Trương Quang Vinh
Hình 6.6c Dataflow đầu ra của bộ lọc FIR trước khi tổng hợp vơi thuật toán dịch bit
nhân 41
Hình 6.7 Kết quả RTL bằng thuật toán nhân Vedic và cộng RCA 41
Hình 6.8 Kết quả testbench với thuật toán nhân Vedic và cộng RCA 42
Hình 6.9a Dataflow bộ lọc FIR trước khi tổng hợp với Vedic vàRCA 42
Hình 6.9b Dataflow bộ lọc FIR trước khi tổng hợp với Vedic vàRCA 43
Hình 6.10 Kiểm tra vcs tool vơi thuạt toán thông thường 44
Hình 6.11 Kết quả mô phỏng testbench bằng vcs synopsys tool 44
Hình 6.12 Schematic của testbench 45
Hình 6.13a Schematic tất cả các khối của bộ lọc FIR 45
Hình 6.13b Schematic của khối vào 46
Hình 6.13c Schematic của khối ra 46
Hình 6.14 Kiểm tra với thuật toán dịch bit nhân với hằng số H 47
Hình 6.15 kết testbench của bài toán dịch bit nhân 48
Hình 6 lóa Schematic với bài toán dịch bit nhân 48
Hình 6.16b Schematic đầu vào với bài toán dịch bit nhân 48
Hình 6.lóc Schematic đầu ra với bài toán dịch bit nhân 49
Hình 6.17 Kết quả kiểm tra với Vedic và RCA 50
Hình 6.18 kết quả testbench với Vedic và RCA 50
Hình 6.19 Schematic với Vedic và RCA 51
Hình 7.1 Symbol của bộ lọc FIR 65
Hình 7.2 Tống hợp logic với bài toán thông thường 65
Hình 7.3 Tổng hợp logic của thuật toán dịch bit nhân 66
Hình 7.4 Tổng hợp logic của bài toán Vedic và RCA 66
Trang 12Luận văn thạc sĩ GVHD: Trương Quang Vinh
DANH SÁCH BẢNG SÓ LIỆU
Bảng 2.1 kết quả nghiên cứu về thiết kế “Low Power FIR filter design for Image
Processing” [2] 4
Bảng 3.1: Thiết lập bảng LUT cho bộ lọc FIR 19
Bảng 7.1: Kết quả mô phỏng DC compiler (CMOS 90nm) 67
Bảng 7.2: Kết quả mô phỏng DC compiler (CMOS 65nm) 67
Trang 13Luận văn thạc sĩ GVHD: Trương Quang Vinh
DANH TỪ VIÉT TẮT
Trang 14Luận văn thạc sĩ GVHD: Trương Quang Vinh
CHƯƠNG 1 MỞ ĐẦU 1.1 LÝ DO CHỌN ĐỀ TÀI
Ngày nay các thiết bị di động như điện thoại di động, máy tính xách tay, hay các thiết bị y sinh cầm tay, máy chụp ảnh, máy quay phim ngày càng trở nên phổ biến
và một phần tất yếu trong cuộc sống Bộ lọc đáp ứng xung hữu hạn (FIR Filter hay là Finite Impulse Response filter) trở thành một bộ phận rất quan trọng chuyển hóa năng lượng xử lý tín hiệu cho bộ lọc để lọc các tín hiệu cho các thiết bị trên Bên cạnh đó, các tín hiệu và bộ lọc sử dụng các nguồn năng lượng để thực hiện các quá trình chuyển đổi tín hiệu và cũng như lọc các tín hiệu
Hình 1.1 Sơ đồ của hệ thống bộ lọc FIR Việc sử dụng bộ lọc FIR nhằm tạo ra nhiều mức xử lý khác nhau phục vụ cho các mạch module chức năng, thiết bị và các ứng dụng trong cùng một hệ thống Bộ lọc FIR có các đặc tính pha tuyến tính đảm bảo tính ổn định và dễ thực hiện với các số nhân, bộ cộng và phần tử trễ, vì vậy bô lọc FIR được sử dụng rộng rãi số lượng tap trong bộ lọc kỹ thuật số khác nhau tùy theo ứng dụng Trong các chip lọc thương mại
có số lượng tap cố định, các hệ số bằng không được tải vào các thanh ghi cho các vòi không sử dụng và các phép tính không cần thiết phải được thực hiện Đe giảm bớt vấn
Trang 15Luận văn thạc sĩ GVHD: Trương Quang Vinh
Ở Việt Nam, sự phát triển công nghệ vi mạch số đang triển mạch trong lĩnh vực gia công và thiết kế chip, bên cạnh các đề tài nghiên cứu về thiết kế chip xử lý âm thanh, hình ảnh Nhu cầu thiết kế bộ lọc kỹ thuật số dạng vi mạch số tích hợp trong các chip xử lý nhằm cung cấp năng lượng cho các hoạt động của vi mạch số trên chip
Xuất phát từ nhu cầu cấp thiết đó, tôn xin chọn đề tài: “Thiết kế ASIC cho bộ lọc FIR
công suất thấp” sử dụng công nghệ vi mạch số TSMC 90nm và TSMC 65nm
1.2 MỤC ĐÍCH NGHIÊN cứu
Thực hiện thành công thiết kế bộ lọc FIR trên nên công nghệ vi mạch số với 90nm và 65nm sử dụng tap cố định và tần số thiết kế để tối ưu công suất và độ trễ của mạch từ (80.69pW, 198.2 pW) và (0.25 ns, 7.26 ns) thành (76.56 pW, 193 pW) và (8.19 ns, 8.84 ns) với thiết kế là điện áp 1.6V, 1.32V và tần số thiết kế là 100MHz
1.3 ĐÓI TƯỢNG VÀ PHẠM VI NGHIÊN cứu
1.3.1 Đối tượng nghiên cửu
- Mô hình CMOS 90nm và CMOS 65nm với các tham số sử dụng để thiết kế
- Phần mềm Matlab: Hệ thống FIR filter trên nên Matlab/Simulink
- Bộ lọc đáp ứng xung hữu hạn dạng vi mạch: Khối tín hiệu vào dạng số, hồi tiếp, bộ nhân, bộ cộng, khối tín hiệu ra
- Các phương pháp cải tiến hoặc khối chức năng nhằm cải tiến hiệu suất
1.3.2 Phạm vi nghiên cứu
- Bộ lọc FIR điều khiển thông qua hồi tiếp nhiễu (coeffiency: Hi)
Trang 16Luận văn thạc sĩ GVHD: Trương Quang Vinh
- Các tham số cơ bản proccess CMOS 90nm dùng trong thiết kế
- Thiết kế và mô phỏng trên phần mềm Synopsys tool
1.4 Ý NGHĨA KHOA HỌC VÀ Ý NGHĨA THựC TIỄN
1.4.1 Ý nghĩa khoa học
- Ý nghĩa khoa học Từ kết qua nghiên cứu của đề tài góp phần phong phú thư viện vi mạch sử dụng công nghệ 90nm và 65nm tại các nước Ngoài cũng như ở Việt Nam
- Là cơ sở để ứng dụng, cải tiến và hoàn chỉnh hệ thống trong các hệ thống vi mạch thực tế, góp phần làm phong phú thư viện vi mạch trong nước Viêt Nam
1.4.2 Ý nghĩa thực tiễn
Với công suất hoạt động được tính toán trong quá trình thiết kế ASIC cho bộ lọc FIR với bài toán thông thường là 80.69pW.Thực tiễn trong quá trình thiết kế của luận văn này khi áp dụng bài toán nhân Vedic kết hợp với cộng RCA có kết quả thiết
kế đạt được công suất là 76.56pW
Trang 17Luận văn thạc sĩ GVHD: Trương Quang Vinh
2.1 TÌNH HÌNH NGHIÊN cứu NGOÀI NƯỚC
Trước đây, bài nghiên cứu của “JUN MO JUNG và JONG WHA CHONG” ngày 3 tháng 8 năm 2000 đã thiết kế bộ lọc FIR công suất thấp cho xử lý ảnh“A Low Power FIR filter DESIGN for Imange Processing” bang bài toán lọc thông thấp để tạo các thanh ghi tap và Clock Gating, bởi vì công nghệ CMOS với Synopsys tool những bốn điều kiện khác nhau đã đo được kết của công suất như bảng sau:
TABLE I Experimental results
Ngày 10 tháng 4 năm 2015, “T.Radha và Velmurugan” đã nghiên cứu thiết kế
bộ lọc kỹ thuật số đáp ứng xung hữu hạn bằng phương pháp tối ưu bộ cộng và bộ nhân
để thu được công suất thấp “Low Power Digital FIR Filter Design Using Optimized Adder and Multiplier” tại An độ Hai nghiên cứu viên này, đã chứng minh được công suất và trễ trước khi sử dụng bài toán tối ưu Adder và Multiplier là 193mW và 30.496ns nhưng sau khi sử dụng bài toán tối ưu là 191mW và 27.61ns [4],
Trang 18Luận văn thạc sĩ GVHD: Trương Quang Vinh
Cuối cùng, dự vào bài báo của “Soumee Sharmmeela Pattnaik, Ritisnigdha Das,
và Siba Kumar Panha” thiết kế “Low Power Transversal FIR Fitter for VLSI Singal Processing Applications” Bài báo này, cho biết bài toán Transversal của hệ thống bộ lọc FIR được triển khai nhanh chóng đối với việc thiết kế kỹ thuật vi mạch số để đạt được công suất thấp với bài toán CSLA và MRP bằng Xilinx tool [1]
2.2 TÌNH HÌNH NGHIÊN cứu TRONG NƯỚC
Hiện tại Việt Nam đang phát triển về vi mạch rất nhiều, và công nghệ thiết kế cũng là quan trọng cho xã hội cũng như người dùng Do, sự phát triển đó Việt Nam thiết kế tại công ty vi mạch của nước ngoài đặt tại Viêt Nam sử dụng rất nhiều tools của công ty vi mạch để thiết kế ASIC cho thời điểm này, cũng như tương lai Các công
ty vi mạch đó sử dụng thư viện khác nhau như: TSMC 180nm, TSMC 90nm, TSMC 65nm, TSMC 45nm và cũng có một công ty tạo thư viện riêng cho họ Ngôn ngữ thiết kế ASIC thông thường người thiết kế RTL toàn thiết kế bằng ngôn ngữ Verilog code, và VHDL để thiết kế synthensis cũng như thiết kế ASIC Bài của tác giả Phan Thi Minh là thiết kế “Mô hình hóa mức RTL và thực thi mảng phần cứng có thể tái cấu hình cấu trúc thô cho các ứng dụng xử lý đa phương tiện” trong đó phần về thiết kế bộ lọc FIR cho quá trình xử lý tín hiệu video, hình ảnh và tiếng nói trong bộ đa phương tiện [5] Gần đây, hai học viên của trường đại học Bách Khoa Ha nội tại Trung tâm nghiên cứu triển khai công nghệ cao đã nghiên cứu về “Thiết bị logic lập trĩnh được trong ứng dụng xử lý tín hiệu số” cũng nêu như sau: Họ các thiết bị lập trĩnh được bao gồm SPPD, CPLD, FPGA, GPU, CPU, ASIC , là một công nghệ chế tạo PLD, và cũng như ASIC đã tiến tới công nghệ nao (90nm/cell) điều này không những làm tối giản về kích thước mà còn giảm thiểu công suất tiêu thụ, tăng khả năng tích hợp cũng
Trang 19Luận văn thạc sĩ GVHD: Trương Quang Vinh
2.3 NGHIỆM VỤ CỦA LUẬN VĂN 2.3.1 Mục tiêu luận văn
Hình 2.1 Khối của bộ lọc FIR sau khi thiết kế bằng ASIC công nghệ CMOS
90nm
Bộ lọc FIR có công suất cao thành bộ lọc FIR công suất thấp được ứng dụng rất nhiều trong các khối vi mạch, là một thành phần quan trọng khối xử lý hình ảnh, âm thanh, của các thiết bị di động, y sinh Bộ lọc FIR được sử dụng nhằm cải thiện hiệu suất giảm áp, tiết kiệm năng lượng cho người sử dụng Bên cạnh đó vơi sự phát về công nghệ thiết kế vi mạch số nên bài luận văn nhằm thiết kế bộ lọc FIR có công suất và tốc
độ xử lý nhanh dựa vào bài toán của bộ lọc ở hình 2.1 để mô phỏng cho quá trình thiết
kế
2.3.2 Nhiệm vụ luận văn
Nhiệm vụ của luận văn được xây dựng trên qui trình thiết kế vi mạch số được
mô tả bởi hình 2.2 Một quy trình cơ bản để tạo ra một vi mạch số bao gồm các bước chính là phân tích thiết kế, kiểm tra và sửa lỗi, thiết kế vật lý, chế tạo/sản xuất
Phân tích thiết kế bao gồm hai công đoạn chính là phân tích cấu trúc và mô tả
mã nguồn Phân tích cấu trúc thiết kế là sơ đồ khối, sơ đồ tín hiệu giao tiếp, mạch
Trang 20Luận văn thạc sĩ GVHD: Trương Quang Vinh
nguyên lý, giản đồ định thời, dựa trên các yêu cầu thiết kế Các thông tin này được thể hiện bằng các hình vẽ hoặc mô tả Mô tả mã nguồn thường gọi là mô tả RTL code, là
sử dụng ngôn ngữ mô tả phần cứng để mô tả thiết kế dựa trên các phân tích cấu trúc đã thực hiện Hai ngôn ngữ mô tả phần cứng thông dụng là Verilog và VHDL Phần mềm
có thể dụng là các trình soạn thảo có sẵn trong các phần mềm thiết kế hoặc Notepad++, Emeditor, VI, VIM, Xemacs, conTEXT Sau khi đã hoàn thành RTL code, người thiết
kế cần thực hiện kiểm tra các quy trình về chu pháp (syntax), luật thiết kế (design rule) hoặc các luật riêng của phần mềm thiết kế
Kiểm tra và sửa lỗi là công đoạn thực hiện mô phỏng thiết kế các phần mềm chuyên dung Có hai cấp độ mô phỏng là mô phỏng mã nguồn, hay mô phỏng mức RTL code, và mô phỏng mức cổng Mô phỏng mức RTL code là thực hiện mô phỏng thiết kế với RTL code Công việc chính của bước này là mô phỏng chức năng mà không tính đến định thời và độ trễ vật lý của tín hiệu Mô phỏng mức cổng là thực hiện mô phỏng thiết kế chức năng có tính đến định thời và độ trễ của các tín hiệu
Thiết kế vật lý thực hiện công đoạn chính là tổng hợp logic và layout Tổng hợp
và thực hiện dịch RTL code trên một thư viện công nghệ xác định để tạo ra tập in netlist Layout là sử dụng netlist để bổ trí vị trí các thành phần logic trên một diện tích
để tạo thành bản thiết kế của lõi chip
Trang 21Luận văn thạc sĩ GVHD: Trương Quang Vinh
- Thiết kế cơ sở lý thuyết và các thông số kỹ thuật tuần theo quy trình mô phỏng vi mạch số có công suất thấp của bộ lọc FIR
- Thiết kế sơ đồ khối, sơ đồ tín hiệu giao tiếp mạch nguyên lý, giản đồ định thời dựa vào bộ lọc FIR và thiết kế các tập tin mã nguồn (RTL code)
- Kiểm tra và sửa lỗi: Môi trường mô phỏng của thiết kế, RTL code đã được sửa lỗi và đảm bảo thực dùng chức năng sau khi thực hiện mô phỏng mức RTL code, các file tổng hợp và layout đã được sửa lỗi và đảm bảo thực thì đúng chức năng thiết kế và định thời sau khi thực thì mô phỏng mức cống bằng phần mềm vcs (Synopsys), Modelsim
Trang 22Luận văn thạc sĩ GVHD: Trương Quang Vinh
- Thiế kế vật lý (Physical Design): Thiết kế Design Compiler bằng công nghệ CMOS 90nm để tối ưu công suất và độ trễ của bộ lọc FIR dựa trên phần mềm synopsys
Trang 23Luận văn thạc sĩ GVHD: Trương Quang Vinh
CHƯƠNG 3 TỔNG QUAN LÝ THUYẾT VÀ THIÉT KÉ CÔNG SUẤT
THẤP CHO Bộ LỌC FIR
3.1 TỔNG QUAN LÝ THUYẾT CỦA Bộ LỌC FIR
Lọc là hệ thống điền hình và thường được sử dụng nhất trong hệ thống rời rạc thời gian Lọc thay đổi đạc tính biên độ tần số, hoặc pha tần số của tín hiệu ra theo cách mà ta muốn Một ứng dụng điền hình của lọc tách tín hiệu mong muốn ra khởi nền nhiễu Lọc số là những thuật toán tính toán được tiến hành bằng phần cứng hoặc phần mềm, ngược lại lọc tương tự là tổng trung bình của tín hiệu vào tại một vài thời điểm
Lọc số vượt trội hơn so với lọc tương tự trong nhiều lĩnh vực xử lý tín hiệu: âm thanh, hình ảnh, video, nén dữ liệu, sinh học Điểm thuận lợi chính của lóc số là:
- Chúng có thể được thiết kế để có đáp ứng pha tuyến tính
- Chúng có thể được thiết kế sử dụng sự cải tiến của kỹ thuật ASIC
- Chúng có thể dễ dàng lập trình và lập trình lại với những chức năng khác nhau
- Chúng ít nhạy với sự thay đổi môi trường (nhiễu, nhiệt độ, nguồn công suất) Tuy nhiên lọc số cũng có một số điểm bất lợi như chúng có thể bị ảnh hưởng từ hiệu ứng chiều dài từ vô hữu hạn
Lọc số được phần loại như đáp ứng xung hữu hạn (FIR), nó cũng là lọc không
đệ qui, và đáp ứng xung vô hạn (IIR), lọc đệ qui Chương nay trĩnh bày về bô lọc đáp ứng xung hữu hạn (FIR)
3.1.1 Bộ lọc đáp ứng xung hữu hạn (FIR Filter)
3.1.1.1 Khái niệm
Lọc số đáp ứng xung hữu hạn (FIR filter) là một bộ lọc kỹ thuật số không đệ qui có đáp ứng xung hữu hạn vì sau một thời gian hữu hạn đáp ứng của bộ lọc đáp ứng xung hữu hạn on định bằng không Phương trình tín hiệu vào ra của lọc FIR là:
Trang 24Luận văn thạc sĩ GVHD: Trương Quang Vinh
M
k=-M
Với hỤc) là những hệ số, hay đáp ứng xung của lọc, x(n — k) là tín hiệu vào x(ìi)
bị trễ k mẫu Với lọc FIR nhân quả công thưc trở thành:
M
k=0
(3.2)
y[n] = h(0)x(n) + h(i)x(n — 1) + —I- h(M)x(n — M) (3.3)
3.1.1.2 Sơ đồ khối lọc FIR
Sơ đồ khối của bộ lọc đáp đứng xung hữu hạn được liệt kê ở hĩnh
Trang 25Luận văn thạc sĩ GVHD: Trương Quang Vinh
3.1.1.3 Kiến trúc của bộ lọc FIR
Hình 3.3 Kiến trúc của bộ lọc đáp ứng xung hữu hạn (Structure of FIR Filter) Phường trình tổng quan của bộ lọc FIR:
Với X(z) là đầu vào, Y(z) là đầu ra của bộ lọc Trong thực hiện, một hàm đã
cho được sử dụng để chuyển đổi thành cấu trúc bộ lọc phù hợp
3.1.2 Ưu điểm và nhược điểm
Trang 26Luận văn thạc sĩ GVHD: Trương Quang Vinh
- Các bộ lọc FIR nhận ra không đệ quy vốn đã ổn định và không có dao động chu
kỳ giới hạn khi thực hiện trên một hệ thống kỹ thuật số có độ dài từ hữu hạn
- Phương pháp thiết kế tuyệt vời có sẵn cho các loại bộ lọc FIR với thông số kỹ thuật tùy ý
- Các vấn đề về thiết kế và nhiễu ít phức tạp hơn bộ lọc IIR
3.2 THIẾT KẾ CÔNG SUẤT THẤP CHO Bộ LỌC FIR
3.2.1 Công suất của CMOS
Có ba nguồn năng lượng chính của kỹ thuật số công nghệ CMOS được tóm tắt trong phương trĩnh sau [8]:
Ptotal = (^LYdd^p) + OscYdd) "F OleakageYdd) (3.6)
chuyển đổi điện (yêu tố hoạt động) Thư hai là đại diện của công suất tiêu tan do dòng
dòng trực tiếp từ nguồn cùng cấp tới mặt đất Đại diện cuối cùng là dòng điện tĩnh
heakagephát sinh từ các hiệu ứng phun nền và các hiệu ứng ngưỡng, và chủ yếu được xác định bởi các cân nhắc công nghệ chế tạo
Trang 27Luận văn thạc sĩ GVHD: Trương Quang Vinh
thấp: điện áp, điện dung vật lý và hoạt động Tối ưu hóa cho sức mạnh do đó luôn luôn liên quan đến một nỗ lực để giảm một hoặc nhiều các yếu tố này (giả sử rằng giảm hiệu suất là không cho phép)
Với sự giới thiệu ấn tượng về công nghệ thiết kế điện năng thấp, thường được thiết kế kỹ thuật số đòi hỏi tối ưu hóa ở mọi cấp độ của hệ thống phân cấp thiết kế, tức
là công nghệ, thiết bị, vi mạch số, kiến trúc (cấu trúc), thuật toán (hành vi) và hệ thống cấp độ Để giải quyết thách thức để giảm điện năng, phương pháp tiếp cận nhiều mặt phải được áp dụng để tấn công vấn đề ở nhiều mặt khác nhau, một số được chỉ ra dưới đây: Giảm dung lượng chip và gói: Điều này có thể đạt được thông qua quá trình phát triển như SOI với các giếng đã cạn kiệt hoàn toàn, quy mô mở rộng thành các kích thước thiết bị phụ micron và các chất kết nối tiên tiến như Mô-đun đa chip (MCM)
Cách tiếp cận này có thể rất hiệu quả nhưng rất tốn kém Cân bằng điện áp: Cách tiếp cận này là chìa khóa hứa hẹn nhất để đạt được mức giảm năng lượng lớn hơn, nhưng thường đòi hỏi các kỹ thuật để bù cho hiệu năng hệ thống giảm, các kiến trúc song song, pipelining hoặc nhân bản phần cứng cung cấp cơ chế cho giao dịch này bằng cách duy trĩ thông lượng mức sử dụng tốc độ thiết bị chậm hơn và do đó cho phép vận hành điện áp thấp Sử dụng các chiến lược quản lý năng lượng: Tiết kiệm năng lượng
có thể đạt được bằng các kỹ thuật quản lý điện năng tĩnh và động khác nhau phụ thuộc rất nhiều vào ứng dụng, nhưng có thể đáng kể Điều này bao gồm các kiến trúc mạch tự điều chỉnh và thích nghi có thể phản ứng hiệu quả với thay đổi môi trường cũng như các số liệu thống kê dữ liệu khác nhau
Đe sử dụng một phương pháp thiết kế tích hợp: Điều này đòi hỏi sự phát triển của các kỹ thuật và công cụ có thể quyển lực cho tổng hợp hành vi, tổng hợp logic và tối ưu hóa bố cực Yêu cầu chính cho điều này là ước tính chính xác và hiệu quả chi phí điện năng của việc thực hiện thay thế và khả năng giảm thiểu sự tiêu hao năng lượng tùy thuộc vào các hạn chế về hiệu năng
Trang 28Luận văn thạc sĩ GVHD: Trương Quang Vinh
3.2.2 Công suất kỹ thuật số của bộ lọc FIR
3.2.2.1 Kỹ thuật đường ống (Pipelining)
Việc chuyển đổi đường ống dẫn đến giảm đường đi tới hạn, có thể được khai thác để tăng tốc độ đồng hồ hoặc tốc độ lấy mẫu hoặc giảm mức tiêu thụ điện ở cùng tốc độ Có hai ưu điểm chính khi sử dụng pipelining tốc độ cao hơn và công suất thấp hơn
điện dung đi lạc trong đường dẫn tới hạn Đối với các mạch CMOS, độ trễ lan truyền
có thể được viết là:
Tpd — Ccharg eVp KVo- Vt) 2
(3.7)
đơn, tức là điện dung dọc theo đường tới hạn, v 0 là điện áp nguồn và v t là điện áp
một mạch CMOS có thể được ước tính bằng cách sử dụng phương trĩnh sau:
Trang 29Luận văn thạc sĩ GVHD: Trương Quang Vinh
đổi Nếu duy trì tốc độ đồng hồ tương tự, tức là tần số đồng hồ f được duy trì, chỉ một
mức tiêu thụ điện năng của bộ lọc pipelined sẽ là:
Do đó, mức tiêu thụ điện năng của hệ thống đường ống đã được giảm xuống
bằng hệ số p so với hệ thống tham chiếu
Hình 3.4 Dạng trực tiếp của bộ lọc FIR
Hệ số giảm tiêu thụ điện năng, p, có thể được xác định bằng cách kiểm tra mối quan hệ giữa độ trễ truyền của bộ lọc ban đầu và bộ lọc pipelined Độ trễ lan truyền của
bộ lọc ban đầu được cho bởi:
Trang 30Luận văn thạc sĩ GVHD: Trương Quang Vinh
trĩnh bậc hai sau đây có thể thu được để giải quyết p,
Trang 31Luận văn thạc sĩ GVHD: Trương Quang Vinh
nhất định để tính toán các mạch đo xung nhịp Khỉ sử dụng clock gating mạch sẽ giảm điện dung để chuyển mạch và hoạt động chuyển mạch của cổng logic được cung cấp hởi các thành phần lưu trữ vì các chuyển đổi không cần thiết [10]
Phép toán FIR cơ bản bao gồm một loạt các phép nhân và phép cộng, điều quan trọng là xem xét các vấn đề phức tạp tính toán và sức mạnh của các hoạt động số học
cơ bản này đề giải quyết các khả năng giảm năng lượng trong tính toán FIR Những ván
đề này có thể được coi là tối ưu Để tối ưu công suất cho bộ lọc, bài này áp dụng bộ nhân Vedic và bộ cộng Ripple Carry Adder (RCA) [11] và dịch bit của bộ nhân và bộ cộng [12], đối với hệ thống là một hằng số Dựa vào bào toán này để thiết kế systhensis cho bộ lọc FIR để có thể tối ưu công suất của mạch
2 1] như hình 3.6
Trang 32Luận văn thạc sĩ GVHD: Trương Quang Vinh
Hình 3.7 Sơ đồ thiết kế bộ lọc FIR 5 tap Thiết kế bảng LUT cho bộ lọc FIR với hệ số của hệ thống đã biết trước là [5 4
Input Xin
Trang 33Luận văn thạc sĩ GVHD: Trương Quang Vinh
3.2.3.3 Bộ nhân Vedic và bộ cộng RCA
Bộ nhân Vedic là một bộ nhân xử lý tính toán nhanh hơn bộ nhân thông thường bởi vì, số trễ khi tính toán ít hơn bộ nhân khác Bộ nhân Vedic cho phép kiểu nhân là 2x2, 4x4, 8x8, và 16x16 vẫn Nhưng trong bài luận văn này chỉ lấy bộ nhân Vedic 8x8 thực phép nhân không dấu để tối công suất chô bộ lọc FIR Bộ nhân Vedic dạng 8x8 được mình họa trong hình 3.6 [10], [4]
Carry
Hình 3.9 Dạng 8x8 của bộ nhân Vedic
Hình 3.10 Bộ nhân Vedic 8x8 trong quy trình tính toán bộ lọc FIR
Trang 34Luận văn thạc sĩ GVHD: Trương Quang Vinh
Thông thường bộ nhân Vedic toàn sử dụng bộ cộng RCA để có thể xử lý kết quả của bộ nhân này Đây là sở đồ minh họa về bộ cộng RCA:
Hình 3.11: Dạng của bộ cộng Ripple Carry Adder (RCA) Trong quy trình thiết bộ lọc công suất thấp cho bộ lọc FIR, nghiên cứu viện có rất cách để tối ưu nhưng trong bài này tôi lấy bộ nhân Vedic kết hợp với bộ cộng Ripple Carry Adder Bởi bộ cộng Ripple Carry Adder có trễ xử lý tính toán hơn các bài toán Sau khi thực hiện tính toán xong tôi lấy D Flip Flop để tạo các clock cho đầu ra của bộ lọc
Trang 35Luận văn thạc sĩ GVHD: Trương Quang Vinh
3.2.3.4 Thông số thiết kế RTL cho bộ lọc FIR
Dựa vào hình 3.7 thiết kê thông số của RTL bằng thuật toán thông thường, dich bit bộ nhân, và nhân Vedic kết hợp bộ cộng RCA như sau:
• Thiết lập bộ nhân MCM bằng thuật toán thông thường:
• Thiết lập bộ nhân MCM bằng dich bit:
MCMO = (Xin«2) + Xin;
• Thiết lập bộ nhân Vedic với bài toán MCM:
Eight_vedic mul_4( a(Xin_tmp), ,b(H4), c(MCM4));
Eight_vedic mul_3( a(Xin_tmp), ,b(H3),.c(MCM3));
Eight_vedic mul_2( a(Xin_tmp), ,b(H2), c(MCM2));
Trang 36Luận văn thạc sĩ GVHD: Trương Quang Vinh
Eight_vedic mul_ 1 ( a(Xin_tmp), b(H 1), c(MCM 1));
Eight_vedic mul_0( a(Xin_tmp), b(HO), c(MCMO));
Đối với Vedic chỉ áp dụng với số không có dấu, vậy phải chuyển từ số có dấu sang số không dấu
ca2 #(.N(16))cal( in(MCM4), out(MCM4_ca));
ca2 #(.N(16))ca2(.in(MCM3),.out(MCM3_ca));
ca2 #(.N(16))ca3(.in(MCM2),.out(MCM2_ca));
ca2 #(.N( 16)) ca4(.in(MCM 1), out(MCM
Cộng RCA của Vedic:
adder_n_bit #(.N(16)) add_l(.a(Ql), b(MCM3_tmp), cin(0), sum(add_outl), cout()); adder_n_bit #(.N(16)) add_2(.a(Q2), b(MCM2_tmp), cin(0), sum(add_out2), cout()); adder_n_bit #(.N(16)) add_3(.a(Q3), b(MCMl_tmp), cin(0), sum(add_out3), cout()); adder_n_bit #(.N(16)) add_4(.a(Q4), b(MCMO_tmp), cin(0), sum(add_out4), cout());
Trang 37Luận văn thạc sĩ GVHD: Trương Quang Vinh
CHƯƠNG 4 THIÊT KÉ RTL CHO Bộ LỌC FIR BẰNG VERILOG
//I I I I I I I I Advisor: Truong Quang vinh I I I I I I I I I I I I I
+ ///ASIC Design of low power fir filter +
//(We use algorithms MCM for convolution of FIR filters)
output reg signed [DATA_WIDTH-1:0] Yout; input wire signed
[COEF_WIDTH-l:0] xin; input wire CLK, RST;
//Internal variables
wire signed [COEF_WIDTH- :0] HO,HI,H2,H3,H4;
wire signed [DATA_WIDTH-1:0] MCM0,MCM1,HCM2 ( MCM3, MCM4,add_outl,add_out2,add_out3, add_out4; wire signed [DATAJ7IDTH-1:0] Ql r Q2,Q3,Q4;
//Assign the last adder output to final output
always^ (posedge CLK or negedge RST)
Trang 38Luận văn thạc sĩ GVHD: Trương Quang Vinh
4.1.2 Khối RTL cho bộ lọc FIR bằng dịch bit bằng bài toán MCM
/////////Advisor: Truong Quang VinhWWWWWWWW +
//(We use algorithms convolution and FIR filters) +
CLK, RST;
//Internal variables
//Shift bit multiplier of coef signal
assign MCM 0 = (xin « } + xin;
xin;
Trang 39Luận văn thạc sĩ GVHD: Trương Quang Vinh
4.1.3 Khối RTL cho bộ lọc FIR bằng Vedic và RCA của MCM
// - Advisor: Truong Qua ng vinh - +
///ASIC De sign of low pow er fir filter +
//(We use alg orithms Vedi c a nd RC A of conv olution FI R filters)
output reg sig ned [DATA_ wIDTH—1:0] Yout; input
signe d [COEFWIDTH -l:0] xin; input CLK r RST;
//Internal varia ble s
wire signe d [COEF WIDTH-1 0] HO ,Hl f ¥ L 2 rH3 , H4 ;
wire signe d [DATA - WIDTH-1 0] MC M0, M CM 1,MC M2 r M CM3, MC M4,add _ outl ,add_out 2, add_
wire signe d [DATA - WIDTH-1 0] MC M0_tmp, MC Ml_tmp, MC M2_tmp, MC M3_tmp, MC M4_tmp ;
wire signe d [DATA - ' W I DT H -1 0] MC M0_c a ,MC Ml_ ca , MC M2_ ca, M CM3 _ ca, MC M4_ ca ;
wire signe d [ DAT
A_
WIDTH-1 0] Ql, Q2 rQ3 J Q4 ; wire signe d [COEF WIDTH-1 0] xin_tmp;
wire signe d [COEF - WIDTH-1 0] xin ca2;
c(MC M4})
// convert sig ned to un signe d number
ca2 ca Q(.in(Xin), out(Xin_ca2));
as sign xin_tm p = xin[7]?XỈn_ ca2 :xi n;
//filter coefficie nt initializ ation s
//Multipl e con stant multi plicat ion s
Eight_vedic mul _4 (.a(xin_tmp) ,.b{H4)
Eight_vedic mul _3 (.a{Xin_ tmp), b{H3), c(MCM3));
Eight_vedic mul _2 (.a{Xin_ tmp)f b(H2),.c(MCM2));
Eight_vedic mul _l (.a{xin_tm p) ,.b(Hi) ,.c(MC Ml) );
Eight_vedic mul _0 (.a{xin_tm p) ,.b(HO) ,.c(MC MO) );
// convert un signed to signe d number
ca2 #(.N{16>) cal{.in(M CM 4) f out<MCM4_ca));
ca2 #{.N(16)> ca2(.in(MCM3), out( MCM3_ca))
ca2 #(.N(16)) ca3(.in(MCM2) ,.out< MC M2 _ca) )
ca2 #(.N(16)) ca4(.in(MCM1) ,.out< MC Ml _ca))
ca2 #(.N(16)) ca5{ ỉn(M C MO) f out{ MC M0_ ca) )
as sign MCM4_tmp = xin [7]? MCM4_ ca: M CM4;
as sign MCM3_tmp = xln[7] ? MCM3_ ca: MCM3
as sign MCM2_tmp = xin [7]? MCM2_ ca: M CM2
as sign MCMl_tmp = xin[7]? MC Ml_ ca: MC Ml
as sign MCM0_tmp = xin [7]? MCM0_ ca: M CMO
add_3(.a{Q3), add_4(.a{Q4) f
//flipflop insta ntiation s (for introducing a delay)
DFF dffl {.RST(RST) ,.CLK(CLK) ,.D{ MC M4_tmp) ,.Q(Q1) );
DFF df f2 {.RST(RST) , CLK(C LK) ,.D{add _OUtl) ,.Q (Q2) );
DFF dff3 {.RST(RST) ,.CLK(CLK) ,.D{add _out2) ,.Q(Q3) ); DFF dff 4
{.RST(RST),.CLK(C LK) ,.D{add _out3),.Q (Q4) ); //Assi gn the la st adder
output to final output, alw ays© (pose dge CLK or posedg e RST) begin
.couto);