Đăng ký Đăng nhập
Trang chủ Thiết kế dsp processor tms320c25 trên fpga ...

Tài liệu Thiết kế dsp processor tms320c25 trên fpga

.PDF
125
2
70

Mô tả:

ðại Học Quốc Gia Tp. Hồ Chí Minh TRƯỜNG ðẠI HỌC BÁCH KHOA ------------------------- NGUYỄN XUÂN NAM THIẾT KẾ DSP PROCESSOR TMS320C25 TRÊN FPGA Chuyên ngành: KỸ THUẬT ðIỆN TỬ LUẬN VĂN THẠC SĨ TP. HỒ CHÍ MINH, tháng 07 năm 2009 ðại Học Quốc Gia Tp. Hồ Chí Minh TRƯỜNG ðẠI HỌC BÁCH KHOA ------------------------- NGUYỄN XUÂN NAM THIẾT KẾ DSP PROCESSOR TMS320C25 TRÊN FPGA Chuyên ngành : KỸ THUẬT ðIỆN TỬ LUẬN VĂN THẠC SĨ TP. HỒ CHÍ MINH, tháng 07 năm 2009 CÔNG TRÌNH ðƯỢC HOÀN THÀNH TẠI TRƯỜNG ðẠI HỌC BÁCH KHOA ðẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH Cán bộ hướng dẫn khoa học: ThS. HỒ TRUNG MỸ, TS. HÀ HOÀNG KHA (Ghi rõ họ tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 1: (Ghi rõ họ tên, học hàm, học vị và chữ ký) Cán bộ chấm nhận xét 2: (Ghi rõ họ tên, học hàm, học vị và chữ ký) Luận văn thạc sĩ ñược bảo vệ tại HỘI ðỒNG CHẤM BẢO VỆ LUẬN VĂN THẠC SĨ TRƯỜNG ðẠI HỌC BÁCH KHOA, NGÀY THÁNG NĂM ðẠI HỌC QUỐC GIA TP. HCM TRƯỜNG ðẠI HỌC BÁCH KHOA ---------------- CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM ðộc Lập - Tự Do - Hạnh Phúc ---oOo--- Tp. HCM, ngày . . . . . tháng . . . . . năm 2009 NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ và tên học viên : NGUYỄN XUÂN NAM Ngày, tháng, năm sinh : 25/03/1980 Chuyên ngành : KỸ THUẬT ðIỆN TỬ Mã số ngành : 605270 MSHV : 0140 7347 Khoá : 2007 Giới tính: Nam Nơi sinh: Ninh Bình 1- TÊN ðỀ TÀI: Thiết kế DSP processor TMS320C25 trên FPGA. 2- NHIỆM VỤ LUẬN VĂN: • Tìm hiểu cơ sở lý thuyết và phương pháp lập trình ngôn ngữ VHDL. • Ứng dụng ngôn ngữ VHDL ñể thiết kế DSP processor. • Mô phỏng ñánh giá việc thực thi của DSP processor trên phần mềm Quartus II 7.0 Wed Edition và sau ñó thực hiện trên kit DE2. 3- NGÀY GIAO NHIỆM VỤ : 4- NGÀY HOÀN THÀNH NHIỆM VỤ : 03.07.2009 5- HỌ VÀ TÊN CÁN BỘ HƯỚNG DẪN : ThS. HỒ TRUNG MỸ, TS. HÀ HOÀNG KHA Nội dung và ñề cương Luận văn thạc sĩ ñã ñược Hội ðồng Chuyên Ngành thông qua. CÁN BỘ HƯỚNG DẪN (Họ tên và chữ ký) CHỦ NHIỆM BỘ MÔN QUẢN LÝ CHUYÊN NGÀNH (Họ tên và chữ ký) LỜI CẢM ƠN ðề tài luận văn ñược hoàn thành với sự hướng dẫn và giúp ñỡ rất tận tình của thầy hướng dẫn trực tiếp Hồ Trung Mỹ, và thầy Hà Hoàng Kha. Xin gửi lời cảm ơn chân thành ñến thầy. Xin ñược gửi lời cảm ơn chân thành ñến các thầy cô giáo trường ðại Học Bách Khoa Tp. Hồ Chí Minh và các thầy cô giáo thuộc lĩnh vực khác, ñã cung cấp nhiều kiến thức và tạo mọi ñiều kiện thuận lợi cho em hoàn thành khóa học. Xin chân thành cảm ơn các bạn học viên cao học khóa 2007 ngành Kỹ Thuật ðiện Tử trường ðại Học Bách Khoa Tp.Hồ Chí Minh ñã nhiệt tình giúp ñỡ trao dồi kiến thức trong quá trình học tập. Cuối cùng xin ñược gửi lời cảm ơn ñến gia ñình, bạn bè ñã tạo ñiều kiện thuận lợi cũng như sự giúp ñỡ về vật chất lẫn tinh thần trong quá trình học tập và thực hiện luận văn. Tp. Hồ Chí Minh, ngày 03 tháng 07 năm 2009 Nguyễn Xuân Nam Tóm Tắt Luận Văn TÓM TẮT LUẬN VĂN 1. Tìm hiểu về công nghệ FPGA. 2. Tìm hiểu cơ sở lý thuyết và phương pháp lập trình ngôn ngữ VHDL. 3. Sử dụng ngôn ngữ VHDL ñể thiết DSP processor dựa trên cấu trúc của DSP TMS320C25 của hãng Texas Instruments :  Thiết kế hai khối chính : ñường dữ liệu (datapath), ñiều khiển (control).  Thiết kế khối bộ nhớ : RAM, ROM.  Thiết kế khối thanh ghi.  Thiết kế khối tạo ngắt trong và ngoài.  Thiết kế khối Timer. 4. Chức năng của DSP sau khi ñược thiết kế : ngắt ngoài (INT0,INT1), ngắt trong (Timer, TRAP), thực hiện chương trình con, tập lệnh ñịnh hướng cho lĩnh vực xử lý số tín hiệu. 5. Mô phỏng timing các khối thiết kế trên phần mềm Quartus II 7.0 wed Edition. 6. Thực hiện mô phỏng chương trình ví dụ, chương trình thực hiện bộ lọc FIR, chương trình thực hiện bộ lọc IIR. Mục Lục MỤC LỤC CHƯƠNG 1 GIỚI THIỆU LUẬN VĂN ....................................................... 1 1.1 GIỚI THIỆU CÁC TÍNH CHẤT ðẶC BIỆT CỦA DSP .................................... 1 1.1.1 Các bộ nhân nhanh (Fast Multipliers).... ....................................................... 1 1.1.2 Nhiều ñơn vị thực thi (multiple execution units) ........................................... .1 1.1.3 Truy cập bộ nhớ hiệu quả (efficient memory access)..................................... 1 1.1.4 ðịnh dạng dữ liệu ( format data) ................................................................... 2 1.1.5 Tổ chức hợp lý I/O .......................................................................................... 3 1.1.6 Tập lệnh ñặc biệt ............................................................................................ 3 1.2 CÁC CẤU TRÚC CỦA DSP .............................................................................. 3 1.2.1 Cấu trúc của các bộ xử lý DSP truyền thống ................................................. 3 1.2.2 Các bộ xử lý DSP cải tiến ( xem hình 1.2) ..................................................... 4 1.2.3 Nhiều cấu trúc mới DSP ñược ra ñời ............................................................. 4 1.2.3.1 VLIW (hình 1.3) ...................................................................................... 4 1.2.3.2 SIMD (Single Instruction Multiple Data) ............................................... 5 1.2.3.3 MIMD (Mutiple Instruction Multiple Data)............................................ 6 1.2.4 Xu hướng tương lai......................................................................................... 7 1.3 ỨNG DỤNG CỦA DSP ....................................................................................... 7 1.4 CÔNG VIỆC LIÊN QUAN ðẾN LUẬN VĂN ................................................. 7 1.5 TỔ CHỨC LUẬN VĂN ...................................................................................... 8 CHƯƠNG 2 CÔNG NGHỆ FPGA ................................................ 9 2.1 GIỚI THIỆU FPGA ............................................................................................ 9 2.1.1 Sự phát triển của thiết bị lập trình ñược ........................................................ 9 2.1.2 FPGA là gì .................................................................................................... 11 Mục Lục 2.1.2.1 Các logic block ...................................................................................... 12 2.1.2.2 Các nguồn kết nối .................................................................................. 13 2.1.3 Ứng dụng của FPGA .................................................................................... 13 2.1.4 Quá trình cài ñặt .......................................................................................... 15 2.2 CÁC LOẠI FPGA ............................................................................................. 16 2.2.1 Các công nghệ lập trình chip ....................................................................... 16 2.2.1.1 Cộng nghệ lập trình dùng RAM tĩnh ..................................................... 17 2.2.1.2 Công nghệ lập trình dùng cầu chì nghịch (anti-fuse) ............................ 19 2.2.1.3 Công nghệ lập trình dùng EPROM và EEPROM ................................. 20 2.2.1.4 Tóm tắt các công nghệ lập trình chip .................................................... 22 2.2.2 Các loại FPGA trên thị trường .................................................................... 23 CHƯƠNG 3 NGÔN NGỮ MÔ TẢ PHẦN CỨNG VHDL ......... 24 3.1 GIỚI THIỆU VHDL ......................................................................................... 24 3.2 THIẾT KẾ VHDL .............................................................................................. 26 3.3 THƯ VIỆN.......................................................................................................... 27 3.4 PACKAGE ........................................................................................................ 28 3.5 ENTITY ............................................................................................................. 29 3.6 ACHITECTURE ............................................................................................... 29 3.7 CONFIGURATION.......................................................................................... 31 3.8 CÁC ðẶC TÍNH CỦA VHDL......................................................................... 31 3.9 ðỐI TƯỢNG DỮ LIỆU VÀ QUÁ TRÌNH ..................................................... 33 3.9.1 Tín hiệu ......................................................................................................... 34 3.9.2 Biến ............................................................................................................... 34 3.9.3 Hằng số ......................................................................................................... 35 3.9.4 Quá trình và câu lệnh quá trình ................................................................... 35 Mục Lục 3.9.5 Câu lệnh tuần tự ........................................................................................... 36 3.9.5.1 Câu lệnh IF ............................................................................................ 36 3.9.5.2 Câu lệnh case ......................................................................................... 36 3.9.5.3 Câu lệnh lặp ........................................................................................... 36 3.9.5.4 Câu lệnh chờ .......................................................................................... 37 3.10 CHƯƠNG TRÌNH CON ................................................................................ 37 CHƯƠNG 4 TẬP LỆNH CỦA DSP TMS320C25 ........................ 38 4.1 CHẾ ðỘ ðỊNH ðỊA CHỈ BỘ NHỚ ................................................................ 38 4.1.1 Chế ñộ ñịa chỉ trực tiếp ................................................................................ 38 4.1.2 Chế ñộ ñịa chỉ gián tiếp ............................................................................... 39 4.1.3 Chế ñộ ñịa chỉ tức thời ................................................................................. 41 4.2 TẬP LỆNH CỦA TMS320C25........................................................................ 42 4.2.1 Nhóm lệnh tham chiếu thanh ghi .................................................................. 43 4.2.1.1 ABS, lệnh trị tuyệt ñối thanh ghi ACC ................................................ 43 4.2.1.2 ADD, cộng thanh ghi ACC với nội dung bộ nhớ dữ liệu ñược dịch..... 44 4.2.1.3 AND, lệnh and nội dung bộ nhớ dữ liệu với thanh ghi ACC ................ 45 4.2.1.4 CMPL, lệnh lấy bù thanh ghi ACC ....................................................... 46 4.2.1.5 LAC, nạp thanh ghi ACC với nội dung bộ nhớ dữ liệu ñược dịch ....... 46 4.2.1.6 LACK, nạp ACC hằng số 8 bit.............................................................. 47 4.2.1.7 OR, lệnh or nội dung bộ nhớ dữ liệu với thanh ghi ACC ..................... 48 4.2.1.8 SACH, lưu trữ 16 bit cao của thanh ghi ACC ....................................... 49 4.2.1.9 SACL, lưu trữ 16 bit thấp của thanh ghi ACC ...................................... 50 4.2.1.10 SUB, trừ thanh ghi ACC với nội dung bộ nhớ dữ liệu ñược dịch....... 51 4.2.1.11 ZALH, nạp 16 bit cao thanh ghi ACC ................................................ 51 4.2.1.12 ZALS, nạp 16 bit thấp thanh ghi ACC ................................................ 52 Mục Lục 4.2.2 Nhóm lệnh thanh ghi phụ và pointer trang dữ liệu ...................................... 53 4.2.2.1 LAR, lệnh nạp thanh ghi phụ ................................................................ 53 4.2.2.2 LARK, lệnh nạp thanh ghi phụ hằng số ................................................ 54 4.2.3 Nhóm lệnh thanh ghi T, P và nhân ............................................................... 54 4.2.3.1 APAC, lệnh cộng nội dung thanh ghi ACC với P ................................. 54 4.2.3.2 LT, lệnh nạp thanh ghi T ....................................................................... 55 4.2.3.3 LTA, lệnh nạp thanh ghi T và tích lũy kết quả nhân trước ñó .............. 56 4.2.3.4 LTD, nạp thanh ghi T, tích lũy kết quả nhân trước ñó và chuyển dữ liệu................................................................................... 57 4.2.3.5 LTP, lệnh nạp thanh ghi T, lưu trữ thanh ghi P vào ACC .................... 58 4.2.3.6 LTS, lệnh nạp thanh ghi T và trừ kết quả nhân trước ñó ...................... 59 4.2.3.7 MPY, lệnh nhân, nhân với T, lưu trữ kết quả vào P.............................. 60 4.2.3.8 MPYA, lệnh nhân và tích lũy kết quả nhân trước ñó ............................ 61 4.2.3.9 MPYK, lệnh nhân tức thời .................................................................... 62 4.2.3.10 MPYS, lệnh nhân và trừ kết quả trước ñó ........................................... 63 4.2.3.11 PAC, lệnh nạp ACC nội dung của P ................................................... 63 4.2.4 Nhóm lệnh nhảy và gọi chương trình con .................................................... 64 4.2.4.1 B, lệnh nhảy không ñiều kiện ................................................................ 64 4.2.4.2 BGEZ, lệnh nhảy nếu ACC lớn hơn hoặc bằng không ......................... 65 4.2.4.3 BGZ, lệnh nhảy khi ACC lớn hơn không.............................................. 65 4.2.4.4 BLEZ, lệnh nhảy khi ACC nhỏ hơn hoặc bằng không ......................... 66 4.2.4.5 BLZ, lệnh nhảy khi ACC nhỏ hơn không ............................................. 66 4.2.4.6 BNZ, lệnh nhảy khi ACC khác không .................................................. 67 4.2.4.7 BZ, lệnh nhảy khi ACC bằng không ..................................................... 67 4.2.4.8 CALL, lệnh gọi chương trình con ......................................................... 68 4.2.4.9 RET, lệnh trở về từ chương trình con ................................................... 68 4.2.4.10 TRAP, lệnh ngắt ñược ñịnh nghĩa bởi phần mềm ............................... 69 Mục Lục 4.2.5 Nhóm lệnh thao tác bộ nhớ dữ liệu và I/O .................................................. 70 4.2.5.1 IN, lệnh nhập dữ liệu từ cổng vào ......................................................... 70 4.2.5.2 OUT, lệnh xuất dữ liệu ñến cổng ra ...................................................... 70 4.2.6 Nhóm lệnh ñiều khiển ................................................................................... 71 4.2.6.1 DINT, lệnh không cho phép ngắt .......................................................... 71 4.2.6.2 EINT, lệnh cho phép ngắt...................................................................... 72 4.2.6.3 LST, lệnh nạp thanh ghi trạng thái nội dung bộ nhớ dữ liệu ................ 72 4.2.6.4 NOP, lệnh không thực thi ...................................................................... 73 4.2.6.5 SST, lệnh lưu trữ thanh ghi trạng thái vào vùng bộ nhớ dữ liệu .......... 74 4.3 TỔNG SỐ LỆNH THIẾT KẾ CHO DSP ......................................................... 74 4.3.1 Nhóm lệnh tham chiếu thanh ghi ACC ......................................................... 74 4.3.2 Nhóm lệnh thanh ghi phụ và poiter trang dữ liệu ........................................ 74 4.3.3 Nhóm lệnh thanh ghi T, P, và nhân .............................................................. 74 4.3.4 Nhóm lệnh nhảy và gọi chương trình con .................................................... 74 4.3.5 Nhóm lệnh thao tác bộ nhớ dữ liệu và I/O ................................................... 74 4.3.6 Nhóm lệnh ñiều khiển ................................................................................... 74 CHƯƠNG 5 MÔ TẢ CẤU TRÚC CỦA DSP BẰNG NGÔN NGỮ VHDL........ 75 5.1 KIẾN TRÚC CỦA DSP TMS320C25............................................................... 75 5.2 KHỐI TỔNG QUÁT CỦA LÕI DSP ðƯỢC THIẾT KẾ .............................. 77 5.3 KHỐI ðƯỜNG DỮ LIỆU (DATAPATH) ....................................................... 77 5.3.1 Cấu trúc của khối CALU .............................................................................. 77 5.3.1.1 Thanh ghi dịch và kết quả mô phỏng .................................................... 79 5.3.1.2 Kết quả mô phỏng bộ nhân 16x16 bit ................................................... 80 5.3.1.3 Kết quả mô phỏng ALU ........................................................................ 80 5.3.1.4 Kết quả mô phỏng thanh ghi ACC ........................................................ 82 Mục Lục 5.3.2 Cấu trúc của khối bộ ñếm chương trình và ngăn xếp .................................. 82 5.3.2.1 Kết quả mô phỏng PC (program counter) ............................................. 83 5.3.3 Cấu trúc của khối thanh ghi phụ .................................................................. 84 5.4 KHỐI RAM, ROM ............................................................................................ 86 5.4.1 Kết quả mô phỏng khối RAM ....................................................................... 86 5.4.2 Kết quả mô phỏng khối ROM ....................................................................... 86 5.5 KHỐI TIMER .................................................................................................... 87 5.5.1 Kết quả mô phỏng timer ............................................................................... 87 5.6 KHỐI THANH GHI .......................................................................................... 87 5.7 KHỐI TẠO NGẮT............................................................................................. 88 5.8 KHỐI ðIỀU KHIỂN (CONTROL) .................................................................. 88 5.8.1 Giản ñồ ñịnh thời cho lệnh một word........................................................... 88 5.8.2 Giản ñồ ñịnh thời cho lệnh hai word ........................................................... 89 5.8.3 Giản ñồ ñịnh thời cho phục vụ ngắt ............................................................. 89 5.8.4 Sơ ñồ máy trạng thái mô tả hành vi của DSP .............................................. 90 5.8.5 Kết quả mô phỏng khối ñiều khiển (control) và khối thanh ghi khi kết nối với các khối ñã thực hiện và mô phỏng ở trên ............................................................ 91 CHƯƠNG 6 ỨNG DỤNG VÀ HƯỚNG PHÁT TRIỂN ðỀ TÀI .........................93 6.1 ỨNG DỤNG CỦA THIẾT KẾ .......................................................................... 93 6.1.1 Ví dụ.............................................................................................................. 93 6.1.2 Bộ lọc FIR..................................................................................................... 99 6.1.3 Bộ lọc IIR .................................................................................................... 104 6.2 HƯỚNG PHÁT TRIỂN ðỀ TÀI .................................................................... 111 Code source …………………………………………………………………… 112 Tài liệu tham khảo ……………………………………………………………. 136 Lý lịch khoa học ………………………………………………………………. 137 Giới Thiệu Luận Văn CHƯƠNG 1 GIỚI THIỆU LUẬN VĂN 1.1 GIỚI THIỆU CÁC TÍNH CHẤT ðẶC BIỆT CỦA DSP 1.1.1 Các bộ nhân nhanh (Fast Multipliers)  Một trong những thuật toán ñược biết ñến là bộ lọc FIR : y=∑h*x. Hoạt ñộng chính là nhân và cộng. Phép nhân là hoạt ñộng thường thấy nhất trong xử lý tín hiệu số (tích chập, phép biến ñổi Fourier, bộ lọc IIR) . Yêu cầu : - Những hoạt ñộng nhân và tích luỹ nhanh. - Dịch, nhân và cộng trong một vòng lặp. Mỗi hoạt ñộng yêu cầu một hoặc hai chu kỳ máy. - Phát triển phần cứng ñặc biệt cho hoạt ñộng nhân. Dẫn ñến tất cả processor hiện ñại gồm có ít nhất một hoặc nhiều bộ nhân một chu kỳ chuyên dụng hoặc các ñơn vị nhân tích luỹ (MAC) ñược tổ hợp lại với nhau. 1.1.2 Nhiều ñơn vị thực thi (multiple execution units)  Cần thực thi công việc tính toán nhiều : trong thời gian thực, bộ lọc số với tốc ñộ lấy mẫu từ 10-100Khz trong thời gian thực.  Nhiều ñơn vị thực thi ñộc lập ñược yêu cầu hoạt ñộng song song : ALU và thanh ghi dịch hoạt ñộng song song với các ñơn vị MAC. 1.1.3 Truy cập bộ nhớ hiệu quả (efficient memory access)  Thực hiện một MAC trong một chu kỳ : - Một chu kỳ nạp lệnh MAC. - Một chu kỳ nạp một mẫu dữ liệu. - Một chu kỳ nạp hệ số bộ lọc.  ðể thực hiện tốt yều cầu về bandwith của bộ nhớ lớn. Các phương pháp sau ñây ñược sử dụng : sử dụng hai hoặc nhiều bank bộ nhớ tách biệt nhau, mỗi bank có bus riêng của nó, mỗi bank có thể ñọc hoặc viết trong mỗi chu kỳ máy, xem hình 1.1 1 Giới Thiệu Luận Văn  Phần cứng chuyên dụng hỗ trợ cho việc tính toán ñịa chỉ bộ nhớ : các ñơn vị tạo ñịa chỉ (address generation units). More optimized DSP processors General purpose processors Bus OR Early DSP processors Hình 1.1 Sử dụng một hay nhiều bank bộ nhớ  Trong các thuật toán của DSP, việc truy cập bộ nhớ có thể dự ñoán trước ñược, ví dụ các hệ số bộ lọc FIR, ñược truy cập thường xuyên, sử dụng : - ðịa chỉ gián tiếp thanh ghi với việc tăng bổ sung dữ liệu : tăng pointer ñịa chỉ nơi mà việc tính toán lặp lại nhiều lần ñược thực hiện trên một chuỗi dữ liệu. - ðịa chỉ vòng (circular addressing) : cho phép bộ xử lý truy cập thường xuyên dữ liệu và sau ñó tự ñộng quay lại ñịa chỉ ban ñầu. 1.1.4 ðịnh dạng dữ liệu ( format data)  Các thuật toán của DSP thường sử dụng ñịnh dạng dấu chấm ñộng. ðòi hỏi phần cứng phức tạp hơn dẫn ñến giá thành và công suất tiêu tán cao.  Các bộ xử lý dấu chấm tĩnh : giá thành rẻ và công suất tiêu tán thấp.  Sử dụng ñộ rộng word dữ liệu ngắn nhất, ñảm bảo ñộ chính xác thích hợp (xem xét ñến giá thành và công suất tiêu tán). 2 Giới Thiệu Luận Văn 1.1.5 Tổ chức hợp lý I/O  Các giao tiếp I/O song song và nối tiếp ñặc biệt.  Các cơ chế ñiều khiển I/O ñược tổ chức hợp lý : DMA (direct memory access) 1.1.6 Tập lệnh ñặc biệt Có hai mục ñích trong tập lệnh này : - Maximum việc sử dụng phần cứng, dẫn ñến tăng hiệu quả sử dụng phần cứng. - Minimum không gian bộ nhớ ñể lưu trữ chương trình DSP (bộ nhớ giá thành cao).  Làm cho lệnh của DSP phức tạp hơn.  DSP không lập trình ở ngôn ngữ mức cao như : C, C++…  Sự tối ưu chương trình thì cần thiết.  Nhiều lệnh ñơn giản hơn cho các nhà lập trình. 1.2 CÁC CẤU TRÚC CỦA DSP 1.2.1 Cấu trúc của các bộ xử lý DSP truyền thống  Cấu trúc DSP của những thập niên 80 : - Một lệnh trên một chu kỳ. - Một bộ multiplier hoặc một ñơn vị MAC, một ALU, một vài ñơn vị thực thi lệnh. - Tần số hoạt ñộng 20-50 Mhz. Ví dụ : họ Analog Device’s ADSP-21xx, họ Texas Instruments TMS320C2xx, họ Motorola DSP560xx  Cấu trúc DSP của thế hệ giữa : - Motorola DSP563xx, Texas Instruments TMS320C54x. - Tốc ñộ xung clock tăng (100- 150Mhz). - Thêm thanh ghi dịch thùng (barrel register) hoặc cache lệnh. - Pipeline - Giá thành, công suất tiêu tán thấp. 3 Giới Thiệu Luận Văn - Ứng dụng trong modem tốc ñộ cao, ứng dụng truyền thông di ñộng. 1.2.2 Các bộ xử lý DSP cải tiến ( xem hình 1.2)  Các ñơn vị thực thi song song : các ñơn vị nhân và cộng thứ hai ñược thêm vào.  Các tập lệnh mở rộng : nhiều thao tác hơn trên một lệnh.  Hai MAC trên một chu kỳ xung clock.  Bus dữ liệu rộng hơn : ( nhiều word dữ liệu trên một chu kỳ xung clock). Hình 1.2 Cấu trúc DSP truyền thống và cải tiến 1.2.3 Nhiều cấu trúc mới DSP ñược ra ñời Mục ñích làm cho DSP dễ dàng ñược lập, sử dụng lệnh ñơn giản, các lệnh ñược thực thi trong các nhóm song song, các nhà sản xuất Texas Instruments, Analog Devices, Motorola sử dụng cấu trúc mới với phương pháp VLIW (very long instruction word). 1.2.3.1 VLIW (hình 1.3) Là loại có cấu trúc thực thi nhiều lệnh song song với nhau, cung cấp nhiều ñơn vị thực thi, mỗi ñơn vị thực thi thực hiện những lệnh riêng của nó, loại tiêu biểu thực hiện 4 Giới Thiệu Luận Văn bốn hoặc tám lệnh trên một chu kỳ. Các nhà lập trình xác ñịnh lệnh nào sẽ ñược thực hiện song song. Sử dụng word lệnh 32 bit. Hình 1.3 Kiến trúc bộ nhớ và các ñơn vị thực thi TMS320C62xx (8 ñơn vị thực thi) Sự cải tiến là : xác ñịnh ñơn vị chức năng nào sẽ thực thi lệnh, các lệnh có một vài giới hạn trên việc sử dụng thanh ghi và các chế ñộ ñịnh ñịa chỉ làm dễ dàng hơn trong việc lập trình assembly. Sự bất lợi : ñối với lệnh ñơn giản yều cầu nhiều hướng dẫn (dispath) ñể thực thi công việc, word rộng hơn nên yêu cầu bộ nhớ chương trình nhiều hơn, giá thành chip cao hơn. 1.2.3.2 SIMD (Single Instruction Multiple Data) Cùng một lệnh nhưng ñược thực thi bởi nhiều bộ xử lý, trên các chuỗi dữ liệu khác nhau. Mỗi bộ xử lý có bộ nhớ dữ liệu riêng của nó, nhưng chỉ có duy nhất một bộ 5 Giới Thiệu Luận Văn nhớ chương trình và bộ xử lý ñiều khiển. Phù hợp cho thuật toán dữ liệu song song cao và luồng ñiều khiển ít phụ thuộc vào dữ liệu. processor processor Hình 1.4 SIMD 1.2.3.3 MIMD (Mutiple Instruction Multiple Data) Hình 1.5 MIMD Mỗi bộ xử lý nạp các lệnh riêng của nó và thực thi trên dữ liệu riêng của nó. Bộ nhớ có thể chia sẻ hoặc riêng biệt. Linh ñộng trong việc thực hiện công việc bởi một máy hoặc các máy ña lập trình. Dẫn ñến phần cứng phức tạp và chi phí cao hơn. 6 Giới Thiệu Luận Văn Các bộ xử lý DSP cung cấp sự pha trộn tốt nhất : sự thực thi, công suất tiêu tán,và giá thành, sự sẵn có các thanh công cụ ñể phát triển, các ứng dụng yêu cầu sự pha trộn giữa DSP (tốt trong xử lý tín hiệu số) và microcontroller (tốt trong ñiều khiển). 1.2.4 Xu hướng tương lai  Công việc trong tương lai là cải tiến tốc ñộ, công suất tiêu tán thấp, giảm việc sử dụng bộ nhớ.  Kiến trúc mới : các bộ gia tốc phần cứng ñược plug-in.  Có thể cấu hình lại chiều dài của word lệnh.  Logic có thể lập trình trên chip.  Hệ thống nhúng. 1.3 ỨNG DỤNG CỦA DSP Hình 1.6 Ứng dụng DSP 1.4 CÔNG VIỆC LIÊN QUAN ðẾN LUẬN VĂN Sử dụng phần mềm : Quartus II và modelsim của Altera, phiên bản Wed Edition 7.0 ñể tổng hợp và mô phỏng kết quả. 7 Giới Thiệu Luận Văn Sử dụng phần cứng : kit DE2 Development and Education Board của Altera ñể kiểm tra thiết kế DSP dựa trên cấu trúc của TMS320C25 ở mức ñộ phần cứng. Hình 1.7 Kit DE2 1.5 TỔ CHỨC LUẬN VĂN Luận văn ñược chia thành sáu chương : Chương 1 : giới thiệu chung về DSP bao gồm các tính chất và ứng dụng, tổ chức luận văn và công việc liên quan ñến luận văn. Chương 2 : giới thiệu công nghệ FPGA. Chương 3 : giới thiệu ngôn ngữ mô tả phần cứng (VHDL). Chương 4 : giới thiệu tập lệnh của DSP TMS320C25. Chương 5 : mô tả cấu trúc của DSP TMS320C25 bằng ngôn ngữ VHDL. Chương 6 : ứng dụng kết luận và hướng phát triển ñề tài. 8
- Xem thêm -

Tài liệu liên quan