TAILIEUCHUNG - DSP applications using C and the TMS320C6X DSK (P8)

Code Optimization • • • • • Optimization techniques for code efficiency Intrinsic C functions Parallel instructions Word-wide data access Software pipelining In this chapter we illustrate several schemes that can be used to optimize and drastically reduce the execution time of your code. These techniques include the use of instructions in parallel, word-wide data, intrinsic functions, and software pipelining. INTRODUCTION Begin at a workstation level; for example, use C code on a PC. While code written in assembly (ASM) is processor-specific, C code can readily be ported from one platform to another. However, optimized ASM code runs faster than C and. | DSP Applications Using C and the TMS320C6x DSK. Rulph Chassaing Copyright 2002 John Wiley Sons Inc. ISBNs 0-471-20754-3 Hardback 0-471-22112-0 Electronic 8_ Code Optimization Optimization techniques for code efficiency Intrinsic C functions Parallel instructions Word-wide data access Software pipelining In this chapter we illustrate several schemes that can be used to optimize and drastically reduce the execution time of your code. These techniques include the use of instructions in parallel word-wide data intrinsic functions and software pipelining. INTRODUCTION Begin at a workstation level for example use C code on a PC. While code written in assembly ASM is processor-specific C code can readily be ported from one platform to another. However optimized ASM code runs faster than C and requires less memory space. Before optimizing make sure that the code is functional and yields correct results. After optimizing the code can be so reorganized and resequenced that the optimization process makes it difficult to follow. One needs to realize that if a C-coded algorithm is functional and its execution speed is satisfactory there is no need to optimize further. After testing the functionality of your C code transport it to the C6x platform. A floating-point implementation can be modeled first then converted to a fixed-point implementation if desired. If the performance of the code is not adequate use 239 240 Code Optimization different compiler options to enable software pipelining discussed later reduce redundant loops and so on. If the performance desired is still not achieved you can use loop unrolling to avoid overhead in branching. This generally improves the execution speed but increases code size. You also can use word-wide optimization by loading accessing 32-bit word int data rather than 16-bit half-word short data. You can then process lower and upper 16-bit data independently. If performance is still not satisfactory you can rewrite the time-critical .

TÀI LIỆU LIÊN QUAN
31    426    56
TỪ KHÓA LIÊN QUAN
TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.