thiết kế và thực hiện bộ mã chập trên tms320c6414 dsk

37 296 0
thiết kế và thực hiện bộ mã chập trên tms320c6414 dsk

Đ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

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH BÁO CÁO TỔNG KẾT ĐỀ TÀI KH&CN CẤP TRƯỜNG THIẾT KẾ VÀ THỰC HIỆN BỘ MÃ CHẬP TRÊN TMS320C6414 DSK S K C 0 9 MÃ SỐ: T2011 - 17 S KC 0 3 Tp Hồ Chí Minh, 2011 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH BÁO CÁO TỔNG KẾT ĐỀ TÀI KH&CN CẤP TRƯỜNG THIẾT KẾ VÀ THỰC HIỆN BỘ MÃ CHẬP TRÊN TMS320C6414 DSK MÃ SỐ : T2011 – 17 Chủ nhiệm đề tài : ĐẶNG PHƯỚC HẢI TRANG THÀNH PHỐ HỒ CHÍ MINH - 2011 Thiết kế thực mã chập TMS320C6416 DSK CHƢƠNG MỞ ĐẦU 1.1 Cơ sở khoa học thực tiễn đề tài Tín hiệu truyền môi trường luôn chịu tác động nhiễu, hệ thống thực công việc tách tín hiệu khỏi nhiễu cách hoàn hảo hệ thống tối ưu Người ta thực việc tách nhiễu khỏi tín hiệu cách thêm vào tín hiệu bit dư, công việc trình mã hóa kênh Nếu nhận tín hiệu, ta tiến hành giải mã hiệu giải mã không cao Thay vào đó, nên đánh giá độ tin cậy giải mã bit bit dựa tín hiệu thu Những thông tin thể độ tin cậy so sánh với bit thông tin lân cận, từ giải mã thông tin gốc Thế công việc phức tạp, đặc biệt độ dài ghi dịch tạo mã tăng lên Thuật toán Viterbi làm giảm độ phức tạp thông qua việc kết hợp định mềm để định xem chuỗi thông tin giống với chuỗi thông tin phát Thuật toán chứng minh cho kết giống với kết phương pháp giải mã tối ưu với độ phức tạp cao 1.2 Mục đích đề tài Thuật toán Viterbi sử dụng hầu hết hệ thống thông tin di động tế bào, thông tin tàu vũ trụ hay tên lửa dẫn đường Sau này, hệ thống thông tin quân mạng thông tin số tuyến truyền dẫn viba hay hệ thống thông tin di động GSM, CDMA dùng thuật toán để giải mã mã xoắn Nhằm mục đích tìm hiểu thực mã chập DSK, đồng thời khai thác kit cho môn thực tập, người thực chọn đề tài làm đề tài nghiên cứu khoa học 1.3 Nhiệm vụ giới hạn đề tài Đề tài không sâu vào ứng dụng thuật toán Viterbi mà tập trung vào việc nghiên cứu thuật toán Viterbi thiết kế thực mã chập DSK Nội dung đề tài gồm: -1- Thiết kế thực mã chập TMS320C6416 DSK  Tìm hiểu sở lý thuyết thuật toán Viterbi  Mô giải mã Viterbi Matlab  Thiết kế giải mã Viterbi ngôn ngữ C  Cài đặt thiết kế lên kit Kết đề tài ứng dụng thông tin vệ tinh, Wimax, CDMA… 1.4 Phƣơng pháp nghiên cứu  Mô phần mềm Matlab  Thiết kế giải mã Viterbi C  Thực kit DSK -2- Thiết kế thực mã chập TMS320C6416 DSK CHƢƠNG CƠ SỞ LÝ THUYẾT 2.1 Lý thuyết thuật toán Viterbi 2.1.1 Mã hóa kênh hệ thống thông tin Hình 2.1: Sơ đồ khối tổng quát hệ thống thông tin số Mã hóa gồm mã hóa nguồn mã hóa kênh Mã hóa nguồn nhằm mục đích đơn giản hóa nguồn tin, tức loại bỏ thông tin cần thiết Mã hóa kênh nhằm mục đích giảm thiểu xác suất sai thông tin truyền qua kênh truyền Việc giảm xác suất sai dựa vào việc phát sai sửa sai dẫn đến việc tăng tỷ số SNR, nhờ giảm công suất tiết kiệm lượng, thuận lợi cho việc bảo mật, trãi phổ tăng độ xác thông tin nhận Lý thuyết mã hóa đại số chia làm loại mã chính:  Mã khối  Mã Trellis Mã Trellis hay gọi mã chập (kết hợp) sử dụng modem dải tần âm (V.32, V.17, V.34) điện thoại di động GSM, thiết bị truyền thông quân đội vũ trang thiết bị truyền thông với vệ tinh -3- Thiết kế thực mã chập TMS320C6416 DSK Thuật toán Viterbi thuật toán tối ưu dùng để giải mã mã chập 2.1.2 Cấu trúc mã chập Một mã tích chập đưa bit kiểm tra vào chùm bit liệu thông qua việc sử dụng ghi dịch hình sau: Hình 2.2 : Bộ mã tích chập có bit ngõ vào xi bit mã hóa ngõ ci Các bit đưa vào ghi dịch bit ngõ tính cách cộng modulo bit vào với nội dung ghi dịch Gọi k số bit thông tin ngõ vào song song n số bit mã hóa ngõ song song thời điểm, tốc độ mã hóa r mã chập định nghĩa là: r = k/n Chiều dài bắt buộc K mã chập K = m+1, với m số ô nhớ lớn ghi dịch Tương ứng với tốc độ mã hóa (các mã đơn giản), người ta thử nghiệm chọn số đa thức sinh cho hiệu mã hóa cao để sử dụng Giá trị chuỗi đầu kênh không phụ thuộc vào k bit thông tin đầu vào mà phụ thuộc vào (m-1)k bit trước đó, gọi mã chập (n,k,m) Trong hình sau, mã có tốc độ mã hóa r=2/3, kích cỡ nhớ lớn m=3, chiều dài bắt buộc K=4 -4- Thiết kế thực mã chập TMS320C6416 DSK Hình 2.3 : Bộ mã hóa tích chập có k=1, n=2, r=1/2, m=2, K=3 Sơ đồ trạng thái: Hình 2.4: Biểu diễn sơ đồ trạng thái Sơ đồ hình lƣới: -5- Thiết kế thực mã chập TMS320C6416 DSK Sơ đồ hình cây: 00 00 00 00 11 00 10 00 10 11 01 10 01 11 00 11 10 01 00 11 00 10 10 01 01 01 11 10 11 Hình 2.6 : Sơ đồ hình mã (2,1,2) 2.2 Giải mã mã tích chập Viterbi Thuật toán giải mã Viterbi hai loại thuật toán giải mã sử dụng với mã hóa mã chập- loại khác giải mã Ưu điểm thuật toán giải mã Viterbi có thời gian giải mã ổn định Điều tốt cho việc thực thi giải mã phần cứng Nhưng yêu cầu tính toán tăng theo hàm mũ hàm chiều dài ràng buộc, vậy, thực tế, người ta thường giới hạn chiều dài ràng buộc K = nhỏ Người ta sử dụng loại giải mã mã tích chập: giải mã định mềm giải mã định cứng Giải mã định cứng sử dụng lượng tử hóa bit giá trị kênh nhận Giải mã định mềm sử dụng lượng tử hóa nhiều bit giá trị kênh nhận Giải mã định mềm lý tưởng giá trị kênh nhận được sử dụng trực tiếp giải mã kênh lượng tử hóa không xác định -6- Thiết kế thực mã chập TMS320C6416 DSK Hình 2.7: Giải mã định cứng định mềm 2.2.1 Thuật toán Viterbi định cứng Trong mã tích chập, chuỗi ngõ vào bị xoắn lại thành chuỗi mã hóa c Chuỗi c phát qua kênh nhiễu chuỗi nhận chuỗi r Thuật toán Viterbi ước đoán khả xãy lớn cho chuỗi y từ chuỗi nhận r, cho xác suất p(r/y) lớn Chuỗi y phải chuỗi mã hóa cho phép chuỗi tùy ý Cho mã tích chập có tốc độ r, ngõ vào mã hóa k bit song song ngõ n bit song song thời điểm Chuỗi ngõ là: x = [ xo1 , xo2 , …, xok , x11 ,…, x1k ,…, xL+m+11 ,…, xL+m+1k ] (2.1) chuỗi mã hóa là: c = [ co1 , co2 , …, , c11 ,…, c1n ,…, cL+m+11 ,…, cL+m+1n ] (2.2) Trong đó, L chiều dài chuỗi tin ngõ vào, m chiều dài lớn ghi dịch Ta phải thêm vào đuôi chuỗi tin gõ vào m bit mã hóa tích chập trở trạng thái tất zero Bộ mã hóa phải bắt đầu kết thúc trạng thái tất zero Chỉ số bên số thời gian, số bên số ngõ vào số ngõ song song thời điểm Các chuỗi nhận r chuỗi ước đoán y mô tả sau: r = [ ro1 , ro2 , …, ron , r11 ,…, r1n ,…, rL+m+11 ,…, rL+m+1n ] -7- (2.3) Thiết kế thực mã chập TMS320C6416 DSK y = [ yo1 , yo2 , …, yon , y11 ,…, y1n ,…, yL+m+11 ,…, yL+m+1n ] (2.4) Thuật toán Viterbi chọn chuỗi y cho p(r/y) lớn Giả sử kênh không nhớ, tức trình nhiễu tác động lên bit độc lập với trình nhiễu tác động lên bit khác Như vậy, xác suất tập hợp kiện độc lập tương ứng với tích xác suất kiện riêng lẽ Vì vậy: p(r y )  L  m 1  i 0 p(r i  y ) p(ri y ) p(ri y )  i 2 i n n i L  m 1  i 0  n    p(ri j yij )     j 1  (2.5) Biểu thức gọi hàm có khả xãy y với chuỗi r nhận Việc ước đoán p(r/y) lớn lg[p(r/y)] lớn nhất, hàm logarit hàm tăng dần Như vậy: lg p(r y )  L  m 1  i 0 n  j j lg p ( r y )  i i  j    (2.6) Vì thao tác tổng dễ dàng hàm lg, nên metric bit định nghĩa sau: M ( rij / yij ) = a [ lg p( rij / yij ) + b] (2.7) Trong đó, a b chọn trước metric bit số nguyên dương nhỏ Các giá trị a b định nghĩa cho kênh hệ thống nhị phân (BSC) hay giải mã định cứng Hình 2.8: Kênh hệ thống nhị phân BSC, p xác suất chéo Thông thường a b chọn sau: a b = - lg (1 - p) lg ( p)  lg (1 p) (2.8) (2.9) -8- Thiết kế thực mã chập TMS320C6416 DSK mềm sử dụng lượng tử hóa nhiều bit, tạo độ tin cậy giải mã cao so với giải mã định mềm sử dụng lượng tử bit  Tỷ số tín hiệu/nhiễu SNR cao kênh truyền nhiễu, đó, giải mã định cứng mềm cho kết giải mã gần Trong hình 3.10, tỷ số tín hiệu nhiễu > 8.5dB BER định cứng mềm giống  Đường BER giải mã định mềm nằm thấp đường BER giải mã định cứng Điều có nghĩa với tỷ số Eb/No giải mã định mềm có BER nhỏ so với giải mã định cứng Do đó, xác suất sai bit nhỏ Trong hình 3.10, tỷ số Eb/No = 5dB, BER định mềm 10-4 BER định cứng gần 102.5  Vì giải mã định mềm sử dụng lượng tử nhiều bit nên nhớ cần để lưu trữ cho việc giải mã định mềm lớn nhiều so với giải mã định cứng - 21 - Thiết kế thực mã chập TMS320C6416 DSK CHƢƠNG THỰC HIỆN THUẬT GIẢI VITERBI TRÊN DSK 4.1 Giới thiệu Kit TMS320C6416 DSK Bộ kit TMS320C6416 gọi tắt C6416, thuộc họ C6x sản phẩm hãng Texas Intrusment, 32 bit DSP Đây kit DSP với vi xử lý có chức đặc biệt tính toán số học chuyên sâu, có ứng dụng rộng rãi từ xử lý ảnh đến thông tin di động, camera số, MP3… Đồng thời, kết hợp chip DSP, CCS (Code Composer Studio) phần cứng khác hình thành nên DSK (DSP Starter Kit) Kit hoạt động tần số 225MHz có thông số sau:  16 Mbytes SDRAM, nhớ 32 bit EMIF  Bộ nhớ flash 512 Kbytes, giao diện bit (có thể 256 Kb)  Bộ nhớ Kbytes cho lưu trữ liệu L1D  Bộ nhớ Kbytes cho lưu trữ chương trình L1P  Bộ nhớ L2 với 256 Kbytes  Một codec AIC23 16 bit stereo với tốc độ 12 MHz, tần số lấy mẫu từ Khz đến 96 KHz  LED switch DIP cho CPLD  Cấu hình phần mềm phù hợp với CPLD  Mở rộng khả kết nối với card bên - 22 - Thiết kế thực mã chập TMS320C6416 DSK Hình 4.1: Cấu trúc kit TMS320C6416 4.2 Kiến trúc thiết kế Cấu trúc giải mã chia làm khối: khối BMP xử lý trạng thái Metric khối TRB truy ngược trước Hình 4.2: Cấu trúc giải mã Khối BMP (Branch Metric processing) xử lý liệu ngõ vào, sử dụng giải thuật Trellis để tìm đường tồn tốt BMP bao gồm khối nhỏ:  BMC (Branch Metric Calculation) tính toán nhánh Metric từ liệu vào sở Trellis  ACS (Add Compare Select) tính toán việc cộng vào, so sánh lựa chọn đường tốt  SUR (Survivor) lưu nhánh Metric tốt - 23 - Thiết kế thực mã chập TMS320C6416 DSK Hình 4.3: Sơ đồ khối BMP Khối TRB (Tracing Back) truy ngược trở dọc theo Trellis dựa lưu trữ Việc truy ngược xử lý 2K-1 ghi, lưu trữ trạng thái Sau truy ngược ghi trạng thái lưu lại bit giải mã vào FIFO, cần phải swap bit để lấy lại chuỗi bit ban đầu Hình 4.4: Luồng điều khiển khối TRB - 24 - Thiết kế thực mã chập TMS320C6416 DSK 4.3 Giải vấn đề Trong phần này, ta sử dụng mã chập (3,1,2), tức có ngõ ra, ngõ vào ghi dịch, đồng thời sử dụng thuật toán giải mã Viterbi định cứng lẫn định mềm Trong hệ thống sử dụng thuật toán giải mã định cứng, tín hiệu vào dạng cosin mã hóa kênh Ngõ sau mã hóa lưu đệm, sau qua giải mã để trở dạng cosin ban đầu Có thể xem dạng sóng sau mã hóa giải mã phần mềm CCS Trong hệ thống sử dụng thuật toán giải mã định mềm, tín hiệu vào dạng cosin mã hóa kênh Ngõ sau mã hóa điều chế BPSK, đó, mức chuyển thành (-1) mức chuyển thành (+1) Sau tín hiệu cộng thêm nhiễu Gauss AWGN (thông số AWGN thay đổi được), cuối qua giải mã Có thể xem dạng sóng sau mã hóa giải mã phần mềm CCS Trong phần mô này, tín hiệu cosin sau lấy mẫu mã hóa mã chập (3,1,2), ta phân tích đặc điểm mã để thực mô 4.3.1 Điều chế BPSK nhiễu AWGN giải mã định mềm Trong thiết lập giải mã định mềm, ngõ mức 1/0 mã hóa chập điều chế BPSK cách chuyển thành (-1) thành (+1) Điều thực việc sử dụng phương trình y = 2x – cho ký tự ngõ mã hóa chập, đó, x ký tự ngõ mã hóa y ngõ điều chế BPSK Để tạo kênh truyền có nhiễu, ta cộng nhiễu AWGN vào tín hiệu điều chế AWGN nhiễu có phân bố dạng hình chuông, có phân bố theo thời gian mô tả theo phân bố Gauss Phân bố có trị trung bình độ lệch chuẩn hàm theo tỷ số SNR tín hiệu nhận Độ lệch chuẩn nhiễu thay đổi tùy thuộc vào giá trị SNR khác đầu vào giải mã - 25 - Thiết kế thực mã chập TMS320C6416 DSK Để thuận tiện hơn, ta sử dụng hàm tương đồng với phân bố Gausian, hàm Rayleigh Nhiễu Gauss với độ lệch chuẩn  mô tả theo công thức bên   R   ln   1U  (4.1) G  R cos(V ) (4.2) Trong đó,  giá trị thay đổi hàm Rayleigh; U,V giá trị biến ngẫu nhiên đơn trị; R biến ngẫu nhiên Rayleigh 4.3.2 Thuật toán giải mã Viterbi Thuật toán giải mã Viterbi sử dụng sơ đồ Trellis để giải mã, lặp lại bước sau trạng thái sơ đồ Trellis: Add: Tại trạng thái giải mã, tính metric nhánh Các metric nhánh cộng với trạng thái Trellis tích lũy trước đó, sau lưu lại thành metric đường phần Compare: So sánh metric đường phần trạng thái giải mã với Select: Metric đường phần tốt (survivor) chọn (thường chọn giá trị cao nhất), metric đường phần lại bị bỏ qua Một metric kết “distance” ký tự nhận với tất ký tự có kênh Các metric tính theo phương pháp khác tùy vào cách giải mã Đối với giải mã định cứng, khoảng cách Hamming, số bit khác ký tự Đối với giải mã định mềm khoảng cách Euclidean điểm tín hiệu nhóm tín hiệu 4.3.3 Thực mô Trong mô này, ta sử dụng tốc độ lấy mẫu kHz, nhớ đệm kích thước 128, ngõ mã hóa 32 bit, ngõ vào ngõ giải mã 16 bit Ngõ vào: có ngõ vào khác nhau, tương ứng với tín hiệu cosin: cos 666, cos666+cos1500, cos666+cos2200 Kỹ thuật giải mã: định cứng mềm - 26 - Thiết kế thực mã chập TMS320C6416 DSK Nhiễu: nhiễu AWGN với độ lệch chuẩn có giá trị khác (0, 0.3, 0.4, 2, 3) Tiến hành mô trường hợp:  Trường hợp 1: ngõ vào cos666, định mềm,  =0  Trường hợp 2: ngõ vào cos666, định mềm,  =0.4  Trường hợp 3: ngõ vào cos666, định mềm,  =3.0  Trường hợp 4: ngõ vào cos666+cos1500, định cứng - 27 - Thiết kế thực mã chập TMS320C6416 DSK 4.4 Giải thuật thiết kế Bắt đầu Dữ liệu vào Tính metric nhánh Liên kết metric nhánh trước Cộng, so sánh, lựa chọn Kết thúc Lưu trữ thông tin đường Dữ liệu Truy hồi Trellis cuối Đ S Hình 4.5: Lưu đồ giải thuật chương trình 4.5 Kết thực TMS320C6416 Quá trình thực chia làm hai trình, thứ lập trình giải thuật mã hóa mã chập thuật giải Viterbi chạy mô sử dụng phần mềm mô có sẵn CCS 3.1; thứ hai tiến hành biên dịch tổng hợp đổ chương trình lên Kit C6416 - 28 - Thiết kế thực mã chập TMS320C6416 DSK Hình 4.6: Mô trường hợp 1: a) ngõ mã hóa; b) ngõ giải mã Với định mềm, ngõ mã hóa nằm khoảng (-1,+1) (hình 4.16) Khi tăng mức nhiễu lên giá trị ngõ thay đổi quanh mức -1 +1 Khi cho độ lệch chuẩn 0, 0.3 hay 0.4 ngõ giải mã giữ dạng sóng giống cosin ngõ vào mã hóa (hình 4.17) Tăng độ lệch chuẩn lên mức 3.0 ngõ giải mã không giống với ngõ vào cosin ban đầu (hình 4.18) Hình 4.7: Mô cho trường hợp Hình a) ngõ mã hóa với σ=0.4; hình b) ngõ giải mã - 29 - Thiết kế thực mã chập TMS320C6416 DSK Hình 4.8: Mô cho trường hợp 3: a) ngõ mã hóa với σ=3.0; ngõ giải mã - 30 - b) Thiết kế thực mã chập TMS320C6416 DSK Hình 4.9: Mô cho trường hợp 4: a) ngõ vào mã hóa; b) ngõ mã hóa; c) ngõ giải mã Trường hợp 4, ngõ mã hóa nằm (0, 1), trường hợp không cộng nhiễu nên ngõ giải mã giống với ngõ vào mã hóa (hình 4.19) - 31 - Thiết kế thực mã chập TMS320C6416 DSK CHƢƠNG KẾT LUẬN 5.1 Tổng kết nhận xét Tổng kết lại, đề tài người thực làm nội dung sau:  Khái niệm phân tích mã chập, cách thức mã hóa sử dụng mã chập, cấu trúc mã hóa chập  Khái niệm phân tích thuật toán giải mã Viterbi, cách thuật toán Viterbi giải mã tín hiệu sửa sai lỗi xảy kênh truyền, phân biệt hai phương pháp giải mã định cứng định mềm  Thực mô Matlab để xem hiệu thuật toán Viterbi  Thiết kế IP core thực chức trên Kit TMS320C6416 ngôn ngữ C để kiểm chứng kết mô Qua kết mô Matlab, người thực rút nhận xét sau:  Mã hóa kênh truyền giúp giảm thiểu tác động nhiễu cải thiện tin tức tốt  Thuật toán giải mã Viterbi đạt hiệu cao, xác suất lỗi thấp  Trên kênh truyền có lỗi Gauss trắng, tín hiệu phục hồi tốt  Thuật toán Viterbi với định mềm cho kết tốt định cứng Vì với định mềm tín hiệu sau nhận thu lượng tử với nhiều mức, dẫn đến xác suất sai thấp so với định cứng  Trong kênh truyền có tỉ số SNR cao, thuật toán Viterbi với định cứng mềm cho kết tốt gần  Đối với lỗi nhiều bit liên tiếp, thuật toán Viterbi không mang lại hiệu - 32 - Thiết kế thực mã chập TMS320C6416 DSK 5.2 Tồn hƣớng phát triển đề tài Những mặt tồn Việc mô Matlab mô tả kit tiến hành với mã đơn giản tốc độ 1/3 với chiều dài ràng buộc thấp (3) Vì thế, kết mô không bao quát nói hết ưu nhược điểm thuật toán Việc giải mã Viterbi định mềm thực với phương pháp dùng khoảng cách Euclidean Hƣớng phát triển đề tài Với giới hạn thời gian khả có hạn nên người thực chưa tìm hiểu hoàn chỉnh mã chập thuật giải Viterbi Vì vậy, phương pháp thực lập trình không giải pháp tối ưu Nếu có hội để nghiên cứu tiếp đề tài nâng lên để thực tối ưu hóa cho thu Viterbi, thử nghiệm với mã khác để từ tìm mã tối ưu cho kênh truyền AWGN Từ kết đề tài, thiết kế IP core thực chức khác hệ thống thông tin số, nghiên cứu tiến hành xây dựng mã hóa nguồn - 33 - Thiết kế thực mã chập TMS320C6416 DSK TÀI LIỆU THAM KHẢO TIẾNG VIỆT [1] Nguyễn Hữu Phương, Xử lý tín hiệu số, NXB ĐHQG Tp.HCM [2] Nguyễn Minh Khánh Ngọc, luận văn thạc sĩ, ĐHBK TpHCM, 2009, 86 trang TIẾNG NƢỚC NGOÀI [1] Hang Nguyen, Pierre Duhamel: Optimal Soft-Output Viterbi Algorithm [2] Jean Mark Gawron: Viterbi Algorithm Background [3] John Proakis, Digital Communications (Chapter 8-Block and Convolutional Channel Codes), McGraw-Hill Science/ Engineering/ Math, 4th, 2000 [4] Fu Hua Huang, Evaluation of Soft Output Decoding for Turbo Codes(chapter 2_convolution codes), Master's Thesis, 1997 [5] Mr Chip Fleming, A Tutorial on Convolutional Coding with Viterbi Decoding, Spectrum Applications, 2006 [6] Wei Chen, RTL implementation of Viterbi decoder, Master’s thesis performed in Computer Engineering, 2006 [7] Rulph Chassaing, DSP and Aplications with the C6713 and C6416 DSK, WileyInterscience, 2005 - 34 -

Ngày đăng: 04/09/2016, 14:37

Từ khóa liên quan

Mục lục

  • SKC003397 1.pdf

    • Page 1

  • SKC003397.pdf

    • 1 BIA TRUOC bckqnckh CTRUONG.pdf

      • Page 1

    • 2 BIA NCKH 2011.pdf

    • 3 Noi dung.pdf

    • 4 BIA SAU.pdf

      • Page 1

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan