Hiện nay phòng thí nghiệm trường tôi đang có một kit Virtex4. Tôi có nhiệm vụ phải viết code cho một chương trình tạo 2 chuối walsh 32 nhân với 2 tín hiệu số vào để tạo ra được tín hiệu cosin tăng. Ai biết chi dùm với. Tôi cũng mới nghiên cứu FPGA mà lại phải viết khóa luận tốt nghiệp. Nguy quá!
Thông báo
Collapse
No announcement yet.
Tạo dãy walsh với VHDL thế nào?
Collapse
X
-
Bạn sẽ tạo ra Walsh series như thế nào? 32 coefficients hay là 32-bit?
Equation để tạo ra cosine như thế nào? cos = w1 * x1 * y1 + w2 * x2 * y2 ....? vv ...
Trước khi nói đến VHDL, bạn nên model trước trong matlab hoặc pylab (Python). Có lẽ bạn đã làm rồi, thì nếu có thể bạn nên đưa lên để dễ dàng hình dung hơn và bàn đến bước kế tiếp.
-
Ơn trời! Cảm ơn nemesis21 rất nhiều! Vậy là tôi có có cơ hội được học hỏi rồi.
Thực ra tôi mới nhận đề tài và dường như chưa có kiến thức gì về nó cả. Nếu được thì pro có thể cho tôi tài liệu liên quan được không? Tôi cũng còn chưa biết cả về 32 bit và 32 coefficients là như thế nào. (quandv49@gmail.com)Vital
Comment
-
Bạn nên nói rõ hơn về đề tài của bạn
Bạn có hai tín hiệu số ở đầu vào, có lẽ là hai tín hiệu in-phase / quadrature? Hai tín hiệu đó cần được nhân với chuỗi Walsh 32 (= chuỗi 32 số 0 xen kẽ với chuỗi 32 số 1???)? Sau đó đưa qua một bộ lọc cosin tăng (raised cosine filter), đại khái là một bộ lọc FIR?
Luận tốt nghiệp của bạn là về toán hay là về FPGA? Bạn nên tìm hiểu lại kỹ về yêu cầu của phần toán trước. Về phần toán, tôi chỉ có thể đoán mò về đề tài của bạn thôi, chưa chắc là đúng với ý của người đã đưa ra đề tài. Về phần FPGA cũng vậy. Module của bạn sẽ được tùy nghi sử dụng toàn con chip hay chỉ là một phần, phải kết hợp với nhiều module khác? Tín hiệu đầu vào từ đâu? Tín hiệu đầu ra như thế nào? Phải làm thế nào để chứng minh rằng module của bạn hoại động hiệu quả? vv ...
Comment
-
Nói thật là thầy hướng dẫn của em cũng chưa từng làm FPGA. Ngành của em cũng không được học gì về FPGA nên chính thầy cũng không hiểu gì lắm. Đại khái là thầy em đang có 1 bộ kit virtex4 có 2 ADC và 2 DAC. Thầy muốn dùng kit này để nghiên cứu và phát triển đề tài của thầy về MIMO. Chính vì rất mới nên thầy chỉ giao cho mỗi sv một phần việc nhỏ để làm khóa luận. Phần của em là tạo ra các chuỗi walsh 32 để nhân với 2 cặp tín hiệu I-Q (MIMO mà). sau đó đưa vào một bộ lọc cosin tăng. Với đề tài này thầy chỉ yêu cầu khi đưa vào 2 luồng tín hiệu đã được điều chế vuông pha là tín hiệu dạng xung vuông và tín hiệu ra phải là tín hiệu dạng coisin tăng.
Rất cảm ơn nemesis21 đã nhiệt tình giúp đỡ!Vital
Comment
-
Vậy có lẽ bạn không muốn tạo dãy Walsh trên FPGA, mà dãy Walsh bạn đã tính sẵn, chỉ lưu trên FPGA và sử dụng để nhân với hai cặp tín hiệu IQ?
Tài liệu về VHDL tiếng Việt thì tôi không có, tiếng Anh thì bạn chịu khó tìm trên Google một chút, có rất nhiều các tutorial. Nếu bạn đã có kit, thì có lẽ cũng đã có software đầy đủ (nếu không thì đi download ISE Webpack và Modelsim), và có lẽ cũng đã có một số code mẫu. Nếu có sẵn code mẫu, song song với việc đọc các tài liệu để hiểu thêm về cấu trúc, bạn nên mô phỏng (simulate) trong Modelsim xem nó hoạt động như thế nào, sau đó mới từ từ sửa đổi thêm thắt trong code mẫu đó xem hiệu ứng như thế nào, rồi sau nữa từng bước từng bước tiến tới. Đó là quá trình làm quen cấp tốc với VHDL.
Về phần thuật toán, trước tiên bạn nên mô phỏng kỹ càng trong Matlab, rồi sau đó hoán chuyển từng bước đến VHDL.
Lấy thí dụ một phép tính vector/matrix vô cùng đơn giản trong Matlab: X = [a; b; c]; Y = [d, e, f]; Z = X * Y;
Nhưng trong FPGA, mỗi clock cycle bạn chỉ có thể làm những phép tính đơn giản như + - * /. FPGA không biết làm các phép tính cao cấp với vector và matrix.
Bạn nên viết lại Matlab script dùng những phép tính FPGA có thể thực hiện, thí dụ như:
Z(1,1) = X(1) * Y(1);
Z(1,2) = X(1) * Y(2);
...
Z(3,3) = X(3) * Y(3);
Khi hoán chuyển sang VHDL, theo phương pháp đó thì bạn có thể tính cả matrix chỉ trong vòng 1 clock cycle, nhưng bạn cần phải dùng đến 9 multiplier, tiêu tốn nhiều tài nguyên hơn.
Hoặc bạn có thể viết lại dùng for loop:
for i = 1 : 3
__for j = 1 : 3
____Z(i,j) = X(i)*Z(i)
__end
end
Khi hoán chuyển sang VHDL, theo phương pháp đó bạn cần 9 clock cycle để tính cả matrix, nhưng đổi lại tốn ít tài nguyên hơn.
Đại khái là như vậy. Mô phỏng thuật toán cao cấp trên Matlab trước, sau đó chuyển xuống cấp thấp hơn, phù hợp với khả năng của FPGA, mô phỏng kỹ càng để không có sai số giữa hai Matlab model, sau đó mới tính đến chuyển sang VHDL và mô phỏng trên Modelsim, trước khi chuyển sang hardware.
Comment
-
Vâng. Rất cảm ơn anh! Về VHDL thì em cũng biết sơ sơ. Nhưng e chưa biết làm thế nào với cái đề tài của mình. E sẽ tìm hiểu thêm. Nói thật em rất mông nung chưa tìm được hướng đi chính xác nào cả. E có search google nhiều rồi nhưng chưa tìm ra code mẫu. Nếu a có tài liệu gì về walsh và về code VHDL liên quan thì cho em xem làm mẫu với. Cảm ơn pro nhiều!Vital
Comment
Bài viết mới nhất
Collapse
-
Trả lời cho Biết gì nói nấy, cãi chửi thoải máibởi nhathung1101Con mẹ mày! Thằng bố mày!
Ngủ với nhau rồi đẻ ra mày!
Với bao nhiêu hy vọng, niềm tin....
Giờ mày ngu thế thì bố mẹ mày nghĩ thế nào???
Ít nhất thì phải biết lo thân chứ, hả con...
Bố...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 23:42 -
-
bởi nhathung1101Vì những sản phẩm loại này, tôi vứt đầy dưới gầm bàn.
Bạn đăng lên để bán hay gián tiếp quảng cáo cho họ???...-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 23:29 -
-
bởi nhathung1101Bạn thử kiểm nghiệm với thiết bị nào???
Tôi xưa nay ghét hàng TQ. Nhưng phải có bằng chứng.
Và tôi đang nghi ngờ bạn bán hàng TQ thì phải???
Nếu vậy là xong luôn!-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 23:20 -
-
bởi nhathung1101Còn không hiểu, đổ tội cho "CÔNG NHÂN LÀM ẨU", thì bạn tự xem bản thân nhé.
Nói láo là không được. Bằng chứng đâu?
Cho bạn 3 ngày để chứng minh. Nếu không khóa luồng để tránh thị phi.-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 23:13 -
-
bởi nhathung1101Nếu bạn làm việc nghiêm chỉnh với Bô Inh hay E Bớt, họ có công thức toàn diện cho cánh quạt của bạn.
Họ có công thức, còn bạn tìm ra hay không thì do bạn.
Còn ở VN, vẫn rất tự hào vì có em đang học lớp 10 đã tính...-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 23:10 -
-
Trả lời cho Biết gì nói nấy, cãi chửi thoải máibởi nhathung1101Đêm nay về, háo hức xem ae cãi chửi nhau thế nào?
Nhưng vắng hơn chùa Bà Đanh!!!
Thiếu tôi mất vui hay là các vị đang định làm gì???
Cảnh báo luôn: Những luồng vô bổ tôi sẽ xóa trong phút mốt, nếu không đáp...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 22:56 -
-
Trả lời cho Hàn chì thiếc lên nhôm.bởi nhathung1101Lại hạ cánh. Nhâm nhi chén rượu, đọc vài bài cho nó hài....
Nhưng chẳng thấy lão Phàm. Chắc lão lại bị bà í bắt ngủ chung rồi!!!
Thành thật chia buồn.-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 22:40 -
-
bởi dinhthuong80Video thô (vì chưa ghép lời và chữ phụ đề) test bô MPPT SR-DM120-W ( dùng cho pin LiPO4 24.6V/24Ah, công suất ra Led 120W max) : https://youtu.be/RbFzK_Za_r4?si=-ztHM755BncBVnx_
-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 17:00 -
-
bởi dinhthuong80Một số bộ/model Điều khiển sạc NLMT (MPPT) dùng cho đèn Led của Hãng SRNE không có chức năng bảo vệ nhiệt độ (bị lỗi không ngắt quá nhiệt: SR-EH120-W, SR-EH120-ES, SR-DM120-W, ...), do đó pin LiPO4 dùng nó có thể sạc hoặc xả bất kể nhiệt độ cao đến đâu, 75-200 độ C!
dinht...-
Channel: Đánh giá sản phẩm DTVN
Hôm qua, 16:53 -
Comment