1. Trang chủ
  2. » Luận Văn - Báo Cáo

Thuật toán xử lý ảnh trên kit DSP

113 915 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 113
Dung lượng 3,39 MB

Nội dung

Thuật toán xử lý ảnh trên kit DSP Một trong những lĩnh vực được ứng dụng rất nhiều trong công nghiệp,trong y tế,trong quốc phòng là xử lý, phân tích hình ảnh và video. Để phát triển và cho phép người dùng thử nghiệm những ứng dụng này thì những kit phát triển DSP của TI có những tính năng và môi trường làm việc rất phù hợp. Các kit DSP nói riêng và kit DSP EVMDM642 nói riêng có mức độ tích hợp và tốc độ xử lý rất cao.,nó đáp ứng được những yêu cầu trong lĩnh vực xử lý số ,tín hiệu,và xử lý hình ảnh,xử lý video. Vì những ứng dụng rộng rãi của của lĩnh vực này nên nhóm sinh viên chúng em đã quyết định chọn đề tài “Tìm hiểu về DSP Evaluation board EVMDM642 ứng dụng xử lý ảnh”. Để có thể thực hiện và hoàn thành đề tài này em xin chân thành cảm ơn thầy TS. Lê Dũng và các thầy cô trong bộ môn đã tận tình giúp đỡ và tạo mọi điều kiện thuận lợi nhất về phương tiên,dụng cụ cũng như về mặt kiến thức cho chúng em trong suốt quá trình thực hiện đề tài. Nhóm sinh viên thực hiện đã hoàn thành được những yêu cầu mà đề tài đồ án đặt ra đó là tìm hiểu về hoạt động của board EVMDM642 và cài đặt một số những thuật toán xử lý ảnh sử dụng board này.

Trang 1

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG

Giảng viên hướng dẫn: TS.LÊ DŨNG

Sinh viên thực hiện: ĐÀO ĐĂNG TOÀN

NGUYỄN VĂN TIỆP

LÊ CAO BẰNG

Hà Nội, 6-2013

Trang 2

BỘ GIÁO DỤC VÀ ĐÀO TẠO CỘNG HÒA XÃ HÔI CHỦ NGHĨA VIỆT NAM

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN ĐIỆN TỬ - VIỄN THÔNG

Giảng viên hướng dẫn: TS.LÊ DŨNG

Sinh viên thực hiện: ĐÀO ĐĂNG TOÀN

NGUYỄN VĂN TIỆP

LÊ CAO BẰNG

Cán bộ phản biện: NCS.TRƯƠNG CAO DŨNG

ThS.NGUYỄN QUANG MINH

TS.TRẦN ĐỖ ĐẠT

TS.NGÔ VŨ ĐỨC

TS.NGUYỄN VŨ SƠN

Hà Nội, 6-2013

Trang 3

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

-

Độc lập - Tự do - Hạnh phúc

-

NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP

Họ và tên sinh viên: Đào Đăng Toàn Số hiệu sinh viên: 20082691

Họ và tên sinh viên: Nguyễn Văn Tiệp Số hiệu sinh viên: 20082676

Họ và tên sinh viên: Lê Cao Bằng Số hiệu sinh viên: 20080171 Khoá:53 Khoa: Điện tử - Viễn thông Ngành: Điện

tử

1 Đầu đề đồ án: Tìm hiểu về DSP Evaluation board EVMDM642 ứng dụng

các thuật toán xử lý ảnh

2 Các số liệu và dữ liệu ban đầu:

Một camera tương tự, một board DSP EVMDM642, một bộ nạp blackhawk

bhusb-560m và các dây nối đi kèm

3 Nội dung các phần thuyết minh và tính toán:

5 Họ tên giảng viên hướng dẫn: TS Lê Dũng

6 Ngày giao nhiệm vụ đồ án: 15/3/2013

7 Ngày hoàn thành đồ án: 4/6/2013

Ngày tháng năm

Sinh viên đã hoàn thành và nộp đồ án tốt nghiệp ngày tháng năm

Cán bộ phản biện

BỘ GIÁO DỤC VÀ ĐÀO TẠO

Trang 4

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI

-

BẢN NHẬN XÉT ĐỒ ÁN TỐT NGHIỆP Họ và tên sinh viên: Đào Đăng Toàn Số hiệu sinh viên: 20082691 Họ và tên sinh viên: Nguyễn Văn Tiệp Số hiệu sinh viên: 20082676 Họ và tên sinh viên: Lê Cao Bằng Số hiệu sinh viên: 20080171 Khoá:53 Khoa: Điện tử - Viễn thông Ngành: Điện tử Giảng viên hướng dẫn: TS.Lê Dũng Cán bộ phản biện: : NCS.Trương Cao Dũng ThS Nguyễn Quang Minh TS TRần Đỗ Đạt TS Ngô Vũ Đức TS Nguyễn Vũ Sơn 1 Nội dung thiết kế tốt nghiệp:

2 Nhận xét của cán bộ phản biện:

Trang 5

Ngày tháng năm Cán bộ phản biện ( Ký, ghi rõ họ và tên )

Trang 6

LỜI MỞ ĐẦU

Ngày nay khi khoa học và công nghệ ngày một phát triển, đặc biệt là lĩnh vực công nghệ số,công nghệ điện tử Trong lĩnh vực điện tử yêu cầu về tốc độ xử lý, cũng như kích thước của những linh kiện,sản phẩm ngày càng cao Tốc độ xử lý của chip được cải thiện rất nhanh vì vậy chúng có khả năng xử lý tốt trong các lĩnh vực công nghệ âm thanh và hình ảnh

Một trong những lĩnh vực được ứng dụng rất nhiều trong công nghiệp,trong

y tế,trong quốc phòng là xử lý, phân tích hình ảnh và video Để phát triển và cho phép người dùng thử nghiệm những ứng dụng này thì những kit phát triển DSP của

TI có những tính năng và môi trường làm việc rất phù hợp Các kit DSP nói riêng

và kit DSP EVMDM642 nói riêng có mức độ tích hợp và tốc độ xử lý rất cao.,nó đáp ứng được những yêu cầu trong lĩnh vực xử lý số ,tín hiệu,và xử lý hình ảnh,xử

lý video

Vì những ứng dụng rộng rãi của của lĩnh vực này nên nhóm sinh viên chúng

em đã quyết định chọn đề tài “Tìm hiểu về DSP Evaluation board EVMDM642 ứng dụng xử lý ảnh”

Để có thể thực hiện và hoàn thành đề tài này em xin chân thành cảm ơn thầy

TS Lê Dũng và các thầy cô trong bộ môn đã tận tình giúp đỡ và tạo mọi điều kiện thuận lợi nhất về phương tiên,dụng cụ cũng như về mặt kiến thức cho chúng em trong suốt quá trình thực hiện đề tài

Nhóm sinh viên thực hiện đã hoàn thành được những yêu cầu mà đề tài đồ án đặt ra đó là tìm hiểu về hoạt động của board EVMDM642 và cài đặt một số những thuật toán xử lý ảnh sử dụng board này

Mặc dù chúng em đã cố gắng và nỗ lực hết mình để hoàn thành đồ án tốt nghiệp này, song chắc chắn không thể tránh khỏi những sai sót và hạn chế Vì vậy, chúng

em rất mong sẽ nhận được sự đóng góp ý kiến của thầy cô giáo và các bạn để đề tài tốt nghiệp này được hoàn thiện hơn Xin chân thành cảm ơn!

Nhóm sinh viên thực hiện

TÓM TẮT ĐỒ ÁN

Xử lý hình ảnh,video là một lĩnh vực mang tính khoa học và công nghệ

Trang 7

Những năm gần đây sự phát triển của lĩnh vực này ngày càng nhanh,kích thích các trung tâm nghiên cứu phát triển ứng dụng của nó

Đồ án tập trung nghiên cứu cách sử dụng bộ kit phát triển của TI: board EVMDM642 Bởi vì sự chuyên dụng trong việc xử lý hình ảnh , nên sự nghiên cứu

về hoạt động của kit là cần thiết Đồng thời đồ án cũng đưa ra những kết quả ban đầu trong việc thử nghiệm các thuật toán xử lý hình ảnh,video

Nội dung của đồ án bao gồm 3 chương:

Chương I : Khái quát chung

Chương II : Quy trình xử lý dữ hiệu video của DSP board EVMDM642 Chương III : Quy trình thực hiện đồ án và các kết quả thu được

ABSTRACT Image processing and video processing is a scientific and technological field In few recent years,the development of the field is growing rapidly, It stimulated research and development centers to develop its applications

We’s thesis focused on the usage of TI development kits: EVMDM642 board Because the specialization in image processing, so reseaching about the activities of this kit is necessary Beside, the thesis also provides the initial results

of the testing of image, video processing algorithms

The contents of the thesis includes 3 chapters:

Chapter I : Overview

Chapter II : The procedure video data process of DSP board EVMDM642 Chapter III : The implementation procedure of thesis and the results obtained

PHÂN CÔNG NHIỆM VỤ

Nhiệm vụ thực hiện Nhiệm vụ chung

Trang 8

Đào Đăng

Toàn 20082691

Thực hiện thuật toán làm nổi đường biên sobel và quick mask ,tăng giảm độ sáng của

ảnh

Tìm hiểu về cách thức hoạt động của trình biên dịch Code Composer Studio cũng như hoạt động của board DSP EVMDM642 Quá trình xử lý luồng dữ liệu video Cách thức hoạt động và lưu trữ của các bộ đệm và bộ nhớ

Nguyễn Văn

Tiệp 20082676

Cách thức tác động lên từng

ô nhớ của bộ nhớ DSP, viết dòng chữ chạy trên màn hình, hiển thị hình ảnh của ảnh đảo ngược,xử lý lọc Gauss cho ảnh

Lê Cao Bằng 20080171

Chuyển đổi từ ảnh mầu sang ảnh grayscale.phân chia ,hiển thị nhiều ảnh lên màn

hình

TÓM TẮT ĐỒ ÁN 6PHÂN CÔNG NHIỆM

VỤ……….8

DANH SÁCH HÌNH VẼ 10DANH SÁCH BẢNG BIỂU 12

Trang 9

DANH SÁCH CÁC TỪ VIẾT TẮT 14

CHƯƠNG 1: KHÁI QUÁT CHUNG 17

1.1 Tổng quan về các ứng dụng của các bộ DSP 17

1.1.1 Các ưu điểm của xử lý số tín hiệu 17

1.1.2 Sử dụng DSP để thực hiện: 17

1.1.3 Các lĩnh vực ứng dụng DSP: 17

1.1.4 Đặc điểm của các bộ DSP: 18

1.2 Quá trình thực hiện 19

1.3 Nội dung tìm hiểu về board TMS320DM642 20

1.3.1 Lắp đặt phần cứng 20

1.3.2 Các thành phần phần cứng của board 21

1.4 Code Composer Studio và ngôn ngữ lập trình 30

1.4.1 Giới thiệu tổng quan về CCS 30

1.4.2 Ngôn ngữ lập trình trên CCS với DSP 31

1.4.3 Download,cài đặt và làm việc với Code Composer Studio 32

CHƯƠNG 2: QUY TRÌNH XỬ LÝ DỮ LIỆU VIDEO CỦA DSP BOARD EVMDM642 47

2.1 Sơ đồ đường đi của luồng dữ liệu video 47

2.2 Video Capture Port 48

2.2.1 Cấu hình Video Capture FIFO 48

2.2.2 Chọn chế độ thu video 50

2.2.3 Chế độ thu video chuẩn BT 656 51

2.2.4 Các kênh thu BT.656 51

2.2.5 Mã tham chiếu thời gian BT.656 52

2.2.6 Cửa sổ video BT.656 54

2.2.7 Lấy mẫu dữ liệu BT.656 56

2.2.8 Cách thức đóng gói trong bộ đệm của BT.656 56

2.2.9 Các chế độ thu videoY/C 59

2.2.10 Chế độ bắt dữ liệu Raw 63

2.3 Các cổng video hiển thị 67

2.3.1 Các chế độ lựa chọn hiển thị 67

Trang 10

2.3.2 Chế độ hiển thị video dạng BT.656 72

2.3.3 Chế độ hiển thị video Y/C 75

2.3.4 Chế độ hiển thị ảnh thô (RAW) 77

2.3.5 Tổ chức trường và khung hình trong hiển thị video 79

2.3.6 Hiển thị video dạng dữ liệu thô (raw data mode) 81

2.3.7 Hiển thị video dạng BT.656 hoặc chế độ Y/C 83

CHƯƠNG 3: QUY TRÌNH THỰC HIỆN ĐỒ ÁN VÀ CÁC KẾT QUẢ THU ĐƯỢC 86

3.1 Chương trình gốc 86

3.2 Thu dữ liệu từ camera,hiển thị video lên màn hình 87

3.3 Các phần đã thực hiện 89

3.3.1 Chuyển video từ mầu sang ảnh grayscale và chia màn hình làm bốn phần, mỗi phần hiển thị một ảnh 89

3.3.2 Thực hiện thuật toán nổi đường biên.Tăng giảm độ sáng của ảnh 94

3.3.3 Phương pháp lọc gauss, thuật toán viết dòng chữ chạy và đảo ảnh 101

KẾT LUẬN 112

DANH MỤC TÀI LIỆU THAM KHẢO 113

DANH SÁCH HÌNH VẼ Chương 1 Hình 1 1 Ví dụ về cài đặt phần cứng 21

Hình 1 2 Sơ đồ khối DM642 EVM 22

Hình 1 3 Giao diện bộ nhớ Flash 24

Hình 1 4 Sơ đồ board layout 27

Hình 1 5 Bản đồ bộ nhớ KIT DM642 28

Hình 1 6 Sơ đồ biên dịch của chương trình 31

Hình 1 7 Bắt đầu cài đặt CCS 3.1 34

Hình 1 8 Lựa chọn cài đặt CCS 3.1 34

Hình 1 9 Lựa chọn dòng chip hỗ trợ 35

Hình 1 10 Hoàn thành cài đặt CCS3.1 35

Hình 1 11 Biểu tượng của chương trình sau khi cài đặt 36

Trang 11

Hình 1 12 Cài đặt cho CCS3.1 36

Hình 1 13 Lựa chọn thiết lập 37

Hình 1 14 Thiết lập Properties cho DM642 37

Hình 1 15 Cửa sổ làm việc của CCS 3.1 38

Hình 1 16 Lựa chọn mở project 38

Hình 1 17 Màn hình cài đặt CCS 5.3 39

Hình 1 18 Lựa chọn thư mục làm việc 39

Hình 1 19 Tùy chọn License 40

Hình 1 20 Màn hình làm việc CCS 5.3 40

Hình 1 21 Tạo mới 1 project 41

Hình 1 22 Tùy chọn cho project khởi tạo 42

Hình 1 23 Thêm file cho project 43

Hình 1 24 Tùy chọn thêm file 43

Hình 1 25 Build 1 project 44

Hình 1 26 Nạp file out xuống KIT 45

Hình 1 27 Thiết lập file out mặc định cho debug 46

Chương 2 Hình 2 1 Sơ đồ luồng dữ liệu video 47

Hình 2 2 Cấu hình BT 656 Video Capture FIFO 48

Hình 2 3 Cấu hình 8/10-Bit Raw Video Capture và TSI Video Capture FIFO 49

Hình 2 4 Cấu hình Y/C Video Capture FIFO 50

Hình 2 5 Cấu hình 16/20-Bit Raw Video Capture FIFO 50

Hình 2 10 Các tham số video capture 55

Hình 2 11 Tiêu chuẩn chung của chuẩn thu video 55

Hình 2 12 Bit BT.656 FIFO Packing 57

Hình 2 13 10-Bit BT.656 FIFO Packing 58

Hình 2 14 Đóng gói 10-Bit BT.656 Dense FIFO 59

Hình 2 15 Đóng gói 10-Bit Y/C FIFO 62

Hình 2 16 Đóng gói chế độ 10-Bit Y/C FIFO dày đặc 63

Hình 2 17 Đóng gói dữ liệu raw 8-bit trong FIFO 65

Hình 2 18 Đóng gói dữ liệu raw 10-bit trong FIFO 66

Hình 2 19 Đóng gói dữ liệu raw10-Bit dày trong FIFO 66

Hình 2 20 Đóng gói dữ liệu raw 16-bit 66

Hình 2 21 Đóng gói dữ liệu raw trong FIFO 67

Hình 2 22 Quá trình quét 1 ảnh I 68

Hình 2 23 Quá trình quét 1 ảnh P 68

Hình 2 24 Khung hình 1 ảnh I 69

Hình 2 25 Khung hình 1 ảnh P 70

Hình 2 26 Hoạt động bộ đếm FLCOUNT 71

Trang 12

Hình 2 27 Hoạt động của bộ đếm FLCOUNT 71

Hình 2 28 Chuỗi đầu ra của định dạng BT656 73

Hình 2 29 Timing theo phương ngang mode BT656 (với kích thước khung là 525) 73

Hình 2 30 Giải đóng gói ở chế độ BT656 8 bit 75

Hình 2 31 Timing theo phương ngang chế độ Y/C 76

Hình 2 32 Giải đóng gói bộ đệm FIFO chế độ Y/C 8- bit 77

Hình 2 33 Giải đóng gói bộ đệm dữ liệu ảnh thô 79

Chương 3 Hình 3 1 Build chương trình trên CCS3.1 86

Hình 3.2 Bố trí màn hình hiển thị 92

Hình 3.3.2.1 Hiển thị các ảnh khác nhau trên màn hình……… 103

Hình 3.3.3.1 Bố trí màn hình hiển thị……… 108

Hình 3.3.3.2 Kích thước của một chữ……… … 109

Hình 3.3.3.3 Cách chuyển dữ liệu của một dòng của ký tự thành giá trị trung gian sử dụng trong hàm gán giá trị cho mảng……… 110

DANH SÁCH BẢNG BIỂU Chương 1 Bảng 1 1 Chức năng các chip select 22

Bảng 1 2 Các tần số có sẵn sử dụng xung clock đầu vào 25Mhz 23

Bảng 1 3 Cấu hình các chân ECLKIN 23

Bảng 1 4 Địa chỉ và page 24

Bảng 1 5 Dải địa chỉ do CE1 quy định 25

Bảng 1 6 Chức năng các thanh ghi đồng bộ bộ nhớ 25

Bảng 1 7 Cấu hình switch S1 28

Bảng 1 8 Cấu hình switch S2 29

Bảng 1 9 Nguồn cung cấp cho các thành phần của board 29

Chương 2 Bảng 2 1 Các chế độ lựa chọnVideo Capture 50

Bảng 2 2 Mã tham chiếu thời gian video BT.656 52

Bảng 2 3 Các bít bảo vệ BT 656 53

Bảng 2 4 Sự sửa lỗi bởi các bit bảo vệ 53

Trang 13

Bảng 2 5 Các chế độ hoạt động thu video raw 64Bảng 2 6 Bảng các chế độ hiển thị 67Bảng 2 7 Mã hóa quá trình hiển thị 80

Trang 14

DANH SÁCH CÁC TỪ VIẾT TẮT

UART Universal Asinchonus Receiver Transmitter

SPDIF Sony/Philips Digital Interface Format

VDFRMSZ Video Display Frame Size Register

EEPROM Electrically Erasable Programmable Read-Only Memory

Trang 15

BSL Board Support Libraries

DEDSEC Double Error Detection , Single Error Correction

VCTHRLD Video Capture Threshold Register

VCxSTRT1 Video Capture Channel x Field 1 Start Register

VCACTL Video Capture Channel A Control Register

VDCTL Video Display Control Register

Trang 16

ILCOUNT Image Line Counter

VDFRMSZ Video Display Frame Size Register

VDHBLNK Video Display Horizontal Blanking Register

VDVBLKS1 Video Display Field 1 Vertical Blanking Start Register VDVBLKE1 Video Display Field 1 Vertical Blanking End Register

VDBLKE2 Video Display Field 2 Vertical Blanking End Register

VDVSYNE1 Video Display Field 1 Vertical Synchronization End Register

VDVSYNS2 Video Display Field 2 Vertical Synchronization Start

Register VDVSYNE2 Video Display Field 2 Vertical Synchronization End Register VDHSYNC Video Display Horizontal Synchronization Register

VDFLDT1 Video Display Field 1 Timing Register

VDFLDT2 Video Display Field 2 Timing Register

VDDISPEVT Video Display Display Event Register

VPIE Video Port Interrupt Enable Register

Trang 17

CHƯƠNG 1: KHÁI QUÁT CHUNG 1.1 Tổng quan về các ứng dụng của các bộ DSP

1.1.1 Các ưu điểm của xử lý số tín hiệu

- Ít linh kiện hơn

- Hoạt động ổn định

- Ứng dụng rộng dãi

- Độ kháng nhiễu cao

- Ổn định với thay đổi nguồn nuôi

- Khả năng tự kiểm tra

Các hàm xử lý tín hiệu: nén tín hiệu,lấy trung bình,tính năng lượng, …

Các hàm phân tích phổ : DFT,IDFT, biến đổi sin,cosin …

Chuyển phát dữ liệu : Modem , máy fax , mạng LAN …

Xử lý tín hiệu âm thanh: tổng hợp âm thanh, các bộ trộn và hòa âm

Máy tính: điều khiển servo đĩa quang, mạng máy tính ,đồ họa hai chiều và ba chiều, bộ đồng xử lý toán học,máy tính laze , hệ thống đa nhiệm , âm thanh số …

Đo lường : lọc số , các bộ phân tích phổ, các máy phát tín hiệu

Trang 18

Truyền hình: truyền hình số , màn hình độ phân giải cao

Xử lý tiếng nói : tổng hợp tiếng nói, nhận dạng tiếng nói

Trang 19

1.2 Quá trình thực hiện

Thứ tự các

bước thực

hiện đồ án

1 Chạy thử ,kiểm tra bo mạch, các

thiết bị và dây nối

Kiểm tra xem kit có hoạt động

tốt hay không

2 Tìm hiểu về phần cứng của kít

TMS320DM642 GDK

Tìm hiểu về các thành phần phần cứng và các chức năng của

chúng

3

Tìm hiểu về Code Composer Studio,ngôn ngữ sử dụng của CCS trong ứng dụng với kit

xuống kit và chạy thử

Kết nối kit với máy tính,biên dịch chương trình bằng CCS và nạp chương trinh qua emulator BH-USB 560M

Trang 20

7 Phát triển chương trình

Dựa vào chương trình nhỏ có trước ( hiển thị 8 thanh mầu tĩnh trên màn hình ) phát triển thành chương trình thu video

8 Mỗi người phát triển một

chương trình riêng

Từ chương trình thu video ở trên, mỗi người viết một chương trinh với những thuật toán khác nhau như trong phần nhiệm vụ

đã nêu

Từ những chương trình riêng biệt, tổng hợp lắp ghép để tạo ra một chương trình hoàn chỉnh

10 Kiểm tra chức năng chương

trình

Đánh giá kết quả thu được, kiểm tra sự thực hiện đúng đắn của chương trình và sửa lỗi

báo cáo

1.3 Nội dung tìm hiểu về board TMS320DM642

1.3.1 Lắp đặt phần cứng

Để chạy ví dụ, phần cứng phải được lắp đặt chính xác

Đầu tiên DM642 EVM phải được kết nối với nguồn tương thích

USB560 emulator phải được kết nối tới JTAG pin để tải code mô phỏng xuống board và điều khiển nó từ Code Composer Studio IDE

Nối nguồn tương thích cho emulator USB560-M

Trang 21

thể )

Hình 1 1Ví dụ về cài đặt phần cứng 1.3.2 Các thành phần phần cứng của board

1.3.2.1 Sơ đồ khối của board

Trang 22

Hình 1 2 Sơ đồ khối DM642 EVM 1.3.2.2 Các thuộc tính chính của board

 Giao diện EMIF

DM642 kết hợp 64 bits bên ngoài giao diện bộ nhớ,4 chip enable chia không gian địa chỉ và cho phép đồng bộ và không đồng bộ ở 8,16,32 và 64 bits DM642 EVM sử dụng các “chip select” là CE0, CE1, và CE3 CE0 được định tuyến tới SDRAM có độ rộng bus là 64 bits CE1 được sử dụng cho 8 bit flash,UART và FPGA function CE3 được đặt cho chức năng đồng bộ Cả CE2 và CE3 được định tuyến tới giao diện kết nối card con

Bảng 1 1 Chức năng các chip select

Giao diện card con

Trang 23

 Giao diện bộ nhớ SDRAM

DM642 EVM giao tiếp với SDRAM qua bus 64 bits trong không gian CE0 Không gian SDRAM (32 megabyte) được sử dụng để chứa chương trình,dữ liệu,và video Bus sử dụng một vòng khóa pha(PLL)bên ngoàiđể tạo tần số 133 Mhz cho SDRAM hoạt động với hiệu năng tối ưu Refresh cho SDRAM được xử lý tự động bởi DM642

PLL được sử dụng cho EMIF là một ICS512 Clock đầu vào PLL này là 25 Mhz Bảng sau biểu diễn tần số sẵn có sử dụng xung clock đầu vào 25 Mhz:rc

Bảng 1 2 Các tần số có sẵn sử dụng xung clock đầu vào 25Mhz

Bảng 1 3 Cấu hình các chân ECLKIN

Trang 24

Flash Memory Interface

Hình 1 3 Giao diện bộ nhớ Flash

 Giao diện UART

Dual UART ( TLC16C752) là bộ nhớ đã map vào nửa trên của không gian

Flash A0 – A18 A19 – A21

Trang 25

CE1 của DM642 dọc theo thanh ghi đồng bộ FPGA Mỗi UART,A và B chiếm 8 vị trí CE1 được cấu hình cho 8 bit truy cập trên DM642 EVM, dải địa chỉ được show trong bảng sau:

Bảng 1 5 Dải địa chỉ do CE1 quy định

 Giao diện đồng bộ bộ nhớ FPGA

FPGA có 10 thanh ghi đồng bộ bộ nhớ,cái thường có vị trí cao nhất của không gian CE1 Những biến thanh ghi thực hiện chức năng của chúng được liệt kê như ở dưới Nhiều thông tin thì có sẵn trên những thanh ghi này trong hướng dẫn sử dụng của TMS320DM642 EVM OSD FPGA

Bảng 1 6 Chức năng các thanh ghi đồng bộ bộ nhớ

Trang 26

0x9008 001D Reserved

0x9008 001E Reserved

 EMIF Buffer/Decoder Control

Bộ đệm EMIF và hàm decode được thực hiện với thiết bị mảng logic GAL 16LV8D generic ,U15 Thiết bị thực hiện giải mã cơ bản cho flash và UART và điều khiển bộ đệm cho CE1,CE2 và CE3

 Video Port/McASP Interfaces

DM642 có 3 cổng video on chip,những cổng này có thể chia ra để cho phép tùy chọn hàm như McASP hoặc SPDIF trên cổng 0 và cổng 1 DM642 EVM sử dụng tất cả ba cổng video này Cổng video 0 và cổng video 1 được sử dụng cho capture port và cổng video 2 được sử dụng như một cổng hiển thị Trong một cấu hinh EVM chuẩn,cổng video 0 và cổng video 1 được thiết lập cho việc chia ra để cho phép chức năng McASP được thực hiện và giao tiếp với một TLV320AIC23 stereo codec hoặc để giao tiếp với đầu ra SPDIF J9

 Video Decoder Ports

Trên DM642 EVM chia ra các cổng video 0 và cổng video 1 được sử dụng như đầu vào capture: cổng capture 1 và cổng capture 2 Những cổng này giaotiếp với bộ giải mã video Philips SAA7115H Cổng video được chạy qua switch CBT để chúng có thể lựa chọn vô hiệu hóa sử dụng cable con Nửa bên kia của cổng được

sử dụng trên giao diện board McASP (cổng audio nối tiếp đa kênh ) Cổng capture 1 giao tiếp với nguồn video qua 1 jack loại RCA , J15 và 4 chân S-Video mini-din connector J16 Đầu vào có thể kết hợp với nguồn video như một DVD player hay video camera SAA7115 khả trình qua bus I2C của DM642 và có thể giao tiếp với phần lớn các chuẩn video như NTSC,PAL và SECAM bởi những chương trình tương thích với những thanh ghi nội trong bộ giải mã

Trang 27

Hình 1 4 Sơ đồ board layout

 Các thành phần khác như:

a Cổng mã hóa video

b FPGA Video Functions

c Giao diện AIC23

d Audio PLL/VCXO Circuit/Bộ tạo xung PLL1708

e Giao diện PCI

f Giao diện PCI EEPROM

g Giao diện Ethernet

h Giao diện HPI

i Giao diện I2C

j Giao diện SPDIF

k Daughter Card Interface

l FPGA

m DM642 Core CPU Clock

n Bộ thiết lập HDTV

1.3.2.4 Memory map

Họ C6000 ( C64xx ) của DSP có không gian địa chỉ lớn Code chương trình

và dữ liệu có thể được đặt bất kỳ nơi đâu trong một không gian địa chỉ thống nhất.Địa chỉ luôn luôn là 32 bits

Memory map biểu diễn không gian địa chỉ của vi xử lý DM642 ở cột bên trái với những chi tiết rõ ràng sử dụng mỗi vùng như thế nào ở bên phải Mặc định ,bộ

Trang 28

nhớ bên trong được đặt ở vị trí bắt đầu của không gian địa chỉ

EMIF ( External Memory Interface ) có 4 vùng riêng biệt có thể đánh địa chỉ gọi là không gian Chip Enable ( CE0 – CE3 ) SDRAM chiếm giữ CE0 trong khi Flash,UART và FPGA được map tới CE1 Cable con sử dụng CE2 và CE3 CE3 được cấu hình cho hoạt động đồng bộ cho chức năng hiển thị màn hình và các thanh ghi đồng bộ khác thực hiện trong external FPGA

Hình 1 5 Bản đồ bộ nhớ KIT DM642 1.3.2.5 Thiết lập switch cấu hình

EVM board có hai vị trí switch cấu hình cho phép người sử dụng điều khiển các trạng thái hoạt động của DSP khi mà nó vừa mới thoát khỏi trạng thái reset Switch cấu hình được gắn nhãn là S1 và S2 trên EVM board

Switch 1 cấu hình “boot mode” sẽ được sử dụng khi DSP bắt đầu thực hiện Mặc định,switch được cấu hình để boot EMIF ( out of 8 bit flash ) trong mode little endian Bảng sau thể hiện thiết lập cho switch:

Bảng 1 7 Cấu hình switch S1

Trang 29

off off No boot

1.3.2.6 Nguồn cung cấp cho board

EVM hoạt động ở điện áp đơn + 5V nguồn cấp từ bên ngoài kết nối với đầu vào chính ( J5 ) hoặc từ khe PCI.Bên trong, đầu vào +5V được kết nối vào trong +1,4V và +3.3V sử dụng cuộn dây điều chỉnh điện áp của Texas Instrument Nguồn cung +1,4V được sử dụng cho “DSP core” trong khi nguồn cung +3.3V được sử dụng cho “DSP I/O buffer” và tất cả các chíp khác trên board Dây nguồn là loại 2,5

mm barel-type plug

Bảng 1 9 Nguồn cung cấp cho các thành phần của board

Trang 30

TP8 +3.3V DSP I/O and logic

1.4 Code Composer Studio và ngôn ngữ lập trình

1.4.1 Giới thiệu tổng quan về CCS

CCS cung cấp một IDE để kết hợp chặt chẽ những công cụ phần mềm CCS bao gồm những công cụ để sinh code như một trình biên dịch C, một assembler và một linker Nó có khả năng đồ họa và hỗ trợ gỡ lỗi thời gian thực

C compiler biên dịch một chương trình nguồn C với định dạng *.c thành một file assembly với định dạng *.asm Trình biên dịch assembler lại assembles một file *.asm thành file ngôn ngữ máy ( *.obj )

Linker tổng hợp các file đối tượng ngôn ngữ máy và đối tượng thư viện dùng như đầu vào để tạo ra các file thực thi *.out File thực thi này biểu diễn một định dạng file đối tượng chung được kết nối ( COFF: Common Object File Format ) , phổ biến trong hệ thống Unix-based

Các file trong một project CCS:

*.out có thể được load và chạy trực tiếp xuống board DSP

*.pjt là file project , tạo và xây dựng, đặt tên một project

*.c là chương trình mã nguồn C

*.asm là chương trình mã nguồn assembly được tạo bởi người dùng thông qua C compiler hoặc linear optimizer

*.sa là linear assembly source program

*.h là header support file

*.lib là file thư viện

*.cmd : file command linker, có nhiệm vụ map phiên làm việc tới bộ nhớ

*.obj là file đối tượng được tạo bởi assembler

*.out là file thực thi,được tạo bởi linker để load và chạy chương trình trên TMS320DM642 board

*.cdb là file cấu hình khi sử dụng DSP/BIOS

Trang 31

Hình 1 6 Sơ đồ biên dịch của chương trình

Các ứng dụng DSP thường có yêu cầu hiệu năng cao Do vậy các lập trình viên thường sử dụng ngôn ngữ assembly Tuy rất nó hiệu quả nhưng thời gian đưa

ra sản phẩm lâu dẫn đến việc sử dụng C trong lập trình cho DSP trở nên phù hợp hơn Có một số lý do cơ bản để sử dụng C thay cho assembly:

+ C dễ phát triển hơn +C dễ duy trì hơn + C tương đối dễ di chuyển Ngôn ngữ C cho phép bạn xây dựng một chương trình di động và nhanh chóng có thể kiểm tra khả năng thực thi với nó Các nhà sản xuất có thể thấy được kết quả sớm trong chu kỳ phát triển sản phẩm Tuy nhiên ngôn ngữ C vẫn có vấn đề riêng của nó, bắt nguồn từ khoảng cách giữa ngôn ngữ lập trình , thiết kế và phần cứng ANSI C không được thiết kế như một ngôn ngữ xử lý tín hiệu Nó nhấn mạnh vào thiết kế hệ thống chứ không phải là toán học Do vậy ANSI C không phải là ngôn ngữ tự nhiên nhất để thực hiện thuật toán DSP

Các bộ vi xử lý DSP có nhiều yếu tố để tăng sự tương thích, chẳng hạn như chế độ tối ưu địa chỉ Do vậy trong thiết kế vi xử lý, DSP thường sử dụng assembly trong các đoạn mã yêu cầu hiệu năng quan trọng

Với tất cả các lý do trên , hiệu suất của mã biên dịch có thể thấp hơn so với assembly

Ngôn ngữ lập trình C cung cấp một mô hình tính toán thống nhất Một lập trình viên có thể giả định chương trình của mình sẽ có kết quả tương tự trên nền

Trang 32

tảng nào Tuy mô hình thực thi trên các nền tảng có khác nhau

C cũng giả định một bộ nhớ nền tảng lớn Trên thực tế, hiệu năng truy cập bộ nhớ trong một số trường hợp có thể là nhân tố chính ảnh hưởng tới hiệu suất ứng dụng

Các tính năng phần cứng là rất cấn thiết để xử lý hiệu quả nhưng không được

hỗ trợ trong C Do vậy để xây dựng được các chương trình có hiệu năng cao ta không thể bỏ qua các nền tảng phần cứng Các chương trình sẽ được tăng tốc khi có chương trình chuyên dụng cho phần cứng cụ thể Tuy nhiên điều này sẽ làm cho chương trình lớn hơn, phức tạp hơn và ít di động hơn

1.4.3 Download,cài đặt và làm việc với Code Composer Studio

1.4.3.1 Download Code Composer Studio 5.3 và CCS 3.1

B1 Vào website http://processors.wiki.ti.com/index.php/Download_CCS

B2 Download bản 5.3 off-line Installers

B3 Thực hiện cài đặt trên máy

B4 Đăng ký một tài khoản trên trang ti.com và kích hoạt tài khoản

B5 Download file active và sử dụng file đó để active CCS

Vì hiện nay các trang web của TI không còn hỗ trợ trực tiếp cho việc download CCS 3.1 vì vậy phải gửi mail cho họ để xin lại đường link down Khi down được ta chỉ việc click vào file launch.exe và cài đặt bằng việc click “next”, và cuối cùng là “finish”

Lý do phải cài 2 phiên bản khác nhau của CCS này là vì CCS 5.3 thì không tương thích với việc debug code cho TMS320DM642 nhưng phần mềm này có thể nạp được file out xuống kit EVMDM642 Trong khi đó CCS 3.1 lai chỉ làm việc được trong môi trường Win XP, và có thể debug code tạo file out Nhưng bản CCS 3.1 lại không nạp được code xuống EVMDM642

Ở đây có một chú ý là chúng em sử dụng máy ảo để chạy Win XP và cài đặt CCS 3.1 trên đó Còn trên Win 7 32 bít chúng em cài CCS 5.3 ( không dùng Win 7

64 bit bởi vì chạy trên Win 7 64 bít gặp khá nhiều trục trặc do không tương thích môi trường ) Thêm nữa chún em chưa sử dụng máy thật XP để chạy CCS 3.1 nên cũng chưa giám khẳng định là trên Win XP chạy tại máy thật thì CCS có thể debug, compile và run nạp code xuống kit hay không

Trong đồ án này chúng em sử dụng gói example đi kèm board mà TI cung cấp download tại địa chỉ: http://www.mediafire.com/?os2bez5d2lje48h Khi

Trang 33

download về sẽ được một file có tên là evmdm642.zip , Trong file này có những file nhỏ: demo chứa những file out,có thể lấy những file này chạy luôn được chương trình File docs là file chứa những tài liệu tham khảo cho việc tìm hiểu về cách sử dụng board DSP evmdm642 file examples chứa những ví dụ được TI viết sẵn, những ví dụ này miêu tả những chức năng cơ bản của board File gel chứa file evmdm642.gel , khi cấu hình thiết bị đích chúng ta cần phải add file này vào

Hình 1 7 Thư mục chứa file gel 1.4.3.2 Bắt đầu làm việc với CCS

 Với CCS 3.1

Khi ta download về xuất hiện thư mục CCS 3.1 và ta click vào file launch.exe và bắt đầu tiến hành setup

Trang 34

Hình 1 8 Bắt đầu cài đặt CCS 3.1 Sau đó ta sẽ nhấn chọn “Install Product”:

Hình 1 9 Lựa chọn cài đặt CCS 3.1 Tiếp tục ta nhấp chọn “ C6000 Code Composer Studio v3.1”

Trang 35

Hình 1 10 Lựa chọn dòng chip hỗ trợ Sau đó CCS 3.1 sẽ hiện ra màn hình cài đặt thông thường và nhiệm vụ của ta bây giờ là click “next” và “finish” và hoàn thành cài đặt

Hình 1 11 Hoàn thành cài đặt CCS3.1 Sau khi cài đặt xong Desktop sẽ xuất hiện biểu tượng của bộ phần mềm CCS

Trang 36

cho ta làm việc:

Hình 1 12 Biểu tượng của chương trình sau khi cài đặt

Để làm việc với CCS 3.1, đầu tiên ta phải chạy file “Setup CCStudio 3.1” để chọn mô hình chíp cho CCStudio 3.1:

Hình 1 13 Cài đặt cho CCS3.1 Sau đó ta phải set “properties” cho con DM642 của ta để nó phù hợp với

TMS320DM642 trên board của ta

Trang 37

Hình 1 14 Lựa chọn thiết lập Khi hộp thoại properties của DM642 hiện ra ta sẽ thiết lập lại các thông số của nó như sau

Hình 1 15 Thiết lập Properties cho DM642

Ở đây có hai option cần chú ý là Gel file và CPU Clock Về Gel file thì ta

chọn đường dẫn tới file gel của chúng ta Và CPU clock ta thay đổi từ 600 lên 720 MHz Sau khi chọn xong ta click “Save & Quit” Khi đó cửa sổ làm việc với code của CCS 3.1 sẽ hiện lên

Trang 38

Hình 1 16 Cửa sổ làm việc của CCS 3.1

Vì trong đồ án của chúng em sẽ sử dụng những ví dụ có sẵn trong gói phần mềm đi kèm theo board EVMDM642,do đĩa đi kèm theo board đã bị bị mất nên chúng em sẽ download gói evmdm642.zip này trên internet Để mở một project có sẵn chúng ta sẽ click chuột phải vào “project” và chọn “ open project” rồi tìm đến thư mục chứa file “.pjt” để add vào của sổ làm việc của ta

Hình 1 17 Lựa chọn mở project

Về compile và build cơ bản cũng giống như những trình biên dịch của những

Trang 39

ngôn ngữ khác Nên nhóm sẽ không nêu thêm chi tiết về các làm việc với nó nữa

 Về làm việc với CCS v5.3

Sau khi click đúp vào biểu tượng trên desktop màn hình khởi động của CCS

sẽ hiện lên như sau:

Hình 1 18 Màn hình cài đặt CCS 5.3

Ta sẽ thấy suất hiện 1 block nhắc việc chọn đường dẫn cho workspace,có thể chọn workspace như mặc định hoặc tùy chọn vào foder mà mình muốn chứa

Hình 1 19 Lựa chọn thư mục làm việc

Ở đây lần đầu tiên khi sử dụng CCS ta sẽ được nhắc để “active version” cho CCS ta có thể chọn FREE licence,hoặc vào web của TI để active

Trang 40

Hình 1 20 Tùy chọn License CCS tích hợp môi trường phát triển IDE sẽ được load và ta sẽ thấy màn hình welcome như sau:

Hình 1 21 Màn hình làm việc CCS 5.3

Để tạo một project mới:

Khi muốn tạo một project mới,ở của sổ giao diện chính ta chọn File sau đó chọn New và New CCS project Lúc này một dialog box sẽ suất hiện và có các lựa

Ngày đăng: 03/11/2014, 18:11

HÌNH ẢNH LIÊN QUAN

Hình 1. 4 Sơ đồ board layout - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 4 Sơ đồ board layout (Trang 27)
Hình 1. 6 Sơ đồ biên dịch của chương trình  1.4.2. Ngôn ngữ lập trình trên CCS với DSP - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 6 Sơ đồ biên dịch của chương trình 1.4.2. Ngôn ngữ lập trình trên CCS với DSP (Trang 31)
Hình 1. 10 Lựa chọn dòng chip hỗ trợ - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 10 Lựa chọn dòng chip hỗ trợ (Trang 35)
Hình 1. 11 Hoàn thành cài đặt CCS3.1 - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 11 Hoàn thành cài đặt CCS3.1 (Trang 35)
Hình 1. 14 Lựa chọn thiết lập - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 14 Lựa chọn thiết lập (Trang 37)
Hình 1. 15 Thiết lập Properties cho DM642 - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 15 Thiết lập Properties cho DM642 (Trang 37)
Hình 1. 19 Lựa chọn thư mục làm việc - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 19 Lựa chọn thư mục làm việc (Trang 39)
Hình 1. 18 Màn hình cài đặt CCS 5.3 - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 18 Màn hình cài đặt CCS 5.3 (Trang 39)
Hình 1. 20 Tùy chọn License - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 20 Tùy chọn License (Trang 40)
Hình 1. 21 Màn hình làm việc CCS 5.3  Để tạo một project mới: - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 21 Màn hình làm việc CCS 5.3 Để tạo một project mới: (Trang 40)
Hình 1. 22 Tạo mới 1 project - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 22 Tạo mới 1 project (Trang 41)
Hình 1. 23 Tùy chọn cho project khởi  tạo - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 23 Tùy chọn cho project khởi tạo (Trang 42)
Hình 1. 24 Thêm file cho project - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 24 Thêm file cho project (Trang 43)
Hình 1. 26 Build 1 project  Load project vào Target Hardware - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 26 Build 1 project Load project vào Target Hardware (Trang 44)
Hình 1. 27 Nạp file .out xuống KIT  Để chạy chương trình trên Target hardware - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 27 Nạp file .out xuống KIT Để chạy chương trình trên Target hardware (Trang 45)
Hình 1. 28 Thiết lập file .out mặc định cho debug - Thuật toán xử lý ảnh trên kit DSP
Hình 1. 28 Thiết lập file .out mặc định cho debug (Trang 46)
Hình 2. 1 Sơ đồ luồng dữ liệu video - Thuật toán xử lý ảnh trên kit DSP
Hình 2. 1 Sơ đồ luồng dữ liệu video (Trang 47)
Hình 2. 2 Cấu hình BT .656 Video Capture FIFO - Thuật toán xử lý ảnh trên kit DSP
Hình 2. 2 Cấu hình BT .656 Video Capture FIFO (Trang 48)
Hình 2. 6 Các tham số video capture - Thuật toán xử lý ảnh trên kit DSP
Hình 2. 6 Các tham số video capture (Trang 55)
Hình 2. 8 Bit BT.656 FIFO Packing - Thuật toán xử lý ảnh trên kit DSP
Hình 2. 8 Bit BT.656 FIFO Packing (Trang 57)
Hình 2. 9 10-Bit BT.656 FIFO Packing - Thuật toán xử lý ảnh trên kit DSP
Hình 2. 9 10-Bit BT.656 FIFO Packing (Trang 58)
Hình 2. 10 Đóng gói 10-Bit BT.656 Dense FIFO  2.2.9. Các chế độ thu videoY/C - Thuật toán xử lý ảnh trên kit DSP
Hình 2. 10 Đóng gói 10-Bit BT.656 Dense FIFO 2.2.9. Các chế độ thu videoY/C (Trang 59)
Hình 2. 11 Đóng gói 10-Bit Y/C FIFO - Thuật toán xử lý ảnh trên kit DSP
Hình 2. 11 Đóng gói 10-Bit Y/C FIFO (Trang 62)
Hình 2. 20 Khung hình 1 ảnh I - Thuật toán xử lý ảnh trên kit DSP
Hình 2. 20 Khung hình 1 ảnh I (Trang 69)
Hình 2. 21 Khung hình 1 ảnh P  2.3.1.2.  Bộ đếm hiển thị hình ảnh - Thuật toán xử lý ảnh trên kit DSP
Hình 2. 21 Khung hình 1 ảnh P 2.3.1.2. Bộ đếm hiển thị hình ảnh (Trang 70)
Hình 2. 26 Giải đóng gói ở chế độ BT656 8 bit  2.3.3. Chế độ hiển thị video Y/C - Thuật toán xử lý ảnh trên kit DSP
Hình 2. 26 Giải đóng gói ở chế độ BT656 8 bit 2.3.3. Chế độ hiển thị video Y/C (Trang 75)
Hình 3.1 Build chương trình trên CCS3.1 - Thuật toán xử lý ảnh trên kit DSP
Hình 3.1 Build chương trình trên CCS3.1 (Trang 86)
Hình 3.3.2.1 Hiển thị các ảnh khác nhau trên màn hình - Thuật toán xử lý ảnh trên kit DSP
Hình 3.3.2.1 Hiển thị các ảnh khác nhau trên màn hình (Trang 100)
Hình 3.3.3.1 Bố cục màn hình hiển thị - Thuật toán xử lý ảnh trên kit DSP
Hình 3.3.3.1 Bố cục màn hình hiển thị (Trang 104)
Hình 3.3.3.2 : Kích thước của một chữ - Thuật toán xử lý ảnh trên kit DSP
Hình 3.3.3.2 Kích thước của một chữ (Trang 105)

TỪ KHÓA LIÊN QUAN

TRÍCH ĐOẠN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w