PIC Vietnam

Go Back   PIC Vietnam > Microchip PIC > dsPIC - Bộ điều khiển tín hiệu số 16-bit

Tài trợ cho PIC Vietnam
Trang chủ Đăng Kí Hỏi/Ðáp Thành Viên Lịch Bài Trong Ngày Vi điều khiển

dsPIC - Bộ điều khiển tín hiệu số 16-bit Theo dự kiến của Microchip, vào khoảng năm 2011 dsPIC sẽ có doanh số lớn hơn PIC

 
 
Ðiều Chỉnh Xếp Bài
Prev Previous Post   Next Post Next
Old 15-05-2006, 08:59 PM   #17
namqn
Trưởng lão PIC bang
 
Tham gia ngày: Feb 2006
Nơi Cư Ngụ: Tp. HCM, Việt Nam
Bài gửi: 3,025
:
Send a message via Yahoo to namqn
Trích:
Nguyên văn bởi escapevn
Hic, tại lúc trước em quên ko add file libdsp-coff.a nên sử dụng hàm dsp mới không được anh à. Bây giờ thì OK rồi.
Bác giải thích cho em về các thanh ghi CORCON và các thanh Accumulator, vai trò của nó trong các hàm DSP đc không? Các hàm dsp tác động tới số kiểu fractional và float thì khác nhau thế nào?
Còn các thanh ghi như XMODSRT, XMODEND, YMODSRT, YMODEND có vai trò thế nào trong dsp? em thấy trong ví dụ về FIR của microchip thì họ có modified mấy thanh ghi này.
Mong bác giúp đỡ.
Phần này khá dài dòng, tôi giải thích vắn tắt dưới đây:
Thanh ghi CORCON:
US: Bit điều khiển dấu các phép nhân của DSP (có dấu hay không dấu)
EDT: Bit điều khiển chấm dứt sớm vòng lặp DO, đọc về luôn là '0'
DL<2:0>: Các bit thể hiện mức lồng của vòng lặp DO (0 đến 7)
SATA: Bit cho phép thanh ghi AccA bão hòa (bị chặn)
SATB: Bit cho phép thanh ghi AccB bão hòa (bị chặn)
SATDW: Bit cho phép bão hòa không gian dữ liệu ghi từ DSP
ACCSAT: Bit chọn chế độ bão hòa của thanh ghi tích lũy (bình thường hay siêu bão hòa)
IPL3: Bit trạng thái mức ưu tiên ngắt (dùng kết hợp với IPL<2:0> trong thanh ghi trạng thái SR)
PSV: Bit cho phép PSV (Program Space Visibility) trong không gian dữ liệu
RND: Bit chọn chế độ làm tròn (có thiên hướng-quy ước hay không thiên hướng-hội tụ)
IF: Bit chọn chế độ nhân số nguyên hay fractional

Lõi DSP trong dsPIC chỉ xử lý số nguyên hay fractional, các số float sẽ được chuyển thành số fractional để xử lý, sau đó trả kết quả về dạng float trở lại. Để tăng tốc độ tính toán, dsPIC dùng 2 thanh ghi tích lũy, để load đồng thời hai toán hạng. Đây cũng là lý do để xuất hiện hai thanh ghi địa chỉ X và Y, cũng như các vùng nhớ tương ứng.

Nếu dùng các lệnh DSP có đọc dữ liệu thì bắt buộc phải dùng cả hai vùng nhớ X và Y, do đó phải set up các thanh ghi XMODSRT, XMODEND, YMODSRT, và YMODEND cho chính xác. Các lệnh DSP ghi dữ liệu chỉ thông qua bus X.

XMODSRT, XMODEND: các thanh ghi địa chỉ bắt đầu và kết thúc cho các bộ đệm modulo (vòng) trong không gian địa chỉ bộ nhớ dữ liệu X
YMODSRT, YMODEND: các thanh ghi địa chỉ bắt đầu và kết thúc cho các bộ đệm modulo (vòng) trong không gian địa chỉ bộ nhớ dữ liệu Y

Bạn xem thông tin chi tiết trong các tài liệu sau của Microchip:
DS51456c: 16-bit Language Tool Libraries
DS70046e: dsPIC30F Family Reference Manual
DS70157b: dsPIC30F/33F Programmer's Reference Manual

Về việc dùng các hàm ma trận với dữ liệu float, thư viện DSP của Microchip cung cấp hai hàm chuyển đổi giữa float và fractional, do đó bạn có thể chuyển số float thành fractional, dùng các hàm xử lý, sau đó trả lại về số float nếu bạn muốn, thông qua 2 hàm chuyển đổi này.

Thân,
__________________
Biển học mênh mông, sức người có hạn.

Đang gặp vấn đề cần được giúp đỡ? Hãy dành ra vài phút đọc luồng sau:
http://www.picvietnam.com/forum/showthread.php?t=1263
namqn vẫn chưa có mặt trong diễn đàn   Trả Lời Với Trích Dẫn
 


Quyền Sử Dụng Ở Diễn Ðàn
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is Mở
Smilies đang Mở
[IMG] đang Mở
HTML đang Tắt

Chuyển đến

Similar Threads
Ðề tài Người gửi Chuyên mục Trả lời Bài mới
dsPIC Tutorial 1-Tạo và biên dịch một project (ASM30) namqn dsPIC - Bộ điều khiển tín hiệu số 16-bit 16 22-08-2012 12:35 AM


Múi giờ GMT. Hiện tại là 04:33 PM.


Được sáng lập bởi Đoàn Hiệp
Powered by vBulletin®
Page copy protected against web site content infringement by Copyscape
Copyright © PIC Vietnam