gpt4 book ai didi

fpga - Simulink 中两个复数向量的矩阵乘法

转载 作者:行者123 更新时间:2023-12-01 01:29:04 27 4
gpt4 key购买 nike

真的有两个问题,但我想让它更具描述性:

我正在实现一个涉及复向量矩阵乘法的调制器:

举个例子:

cck_encoding_table(1,:)= [  1j  1  1j -1  1j  1 -1j  1 ];
cck_encoding_table(2,:)= [ -1j -1 -1j 1 1j 1 -1j 1 ];
cck_encoding_table(3,:)= [ -1j 1 -1j -1 -1j 1 1j 1 ];
cck_encoding_table(4,:)= [ 1j -1 1j 1 -1j 1 1j 1 ];

基本上,我最终需要在 Simulink(Xilinx)中实现这个硬件:
cck_n_code=exp(1j*Phi1)*cck_encoding_table(index+1,:);

我的问题,如何用复数向量建模矩阵乘法。我的理解是使用 Complex Multiplier .但那是只乘以 2 个复向量

如果我必须在单个时钟中乘以 2 个以上的复数向量是可能的。

我不期待任何像模型本身这样的答案,但如果有解决问题的可能方法/方向

谢谢阅读,
基兰

最佳答案

只需写出矩阵乘法产生的低级方程。输出的每个元素都是对输入向量和矩阵中元素的乘法集合求和的结果。

如果您需要快速完成,请根据需要放置尽可能多的复杂乘法器和加法器,并将输入元素连接到它们 - 这将立即为您提供所有输出,并要求您立即提供所有输入.

或者,将您的输入放入一个内存块(或者可能是 2 个,一个用于向量,一个用于矩阵)并安排一些逻辑,这些逻辑会将正确的地址输入该内存块,以便以适当的顺序迭代元素。这些输入进入复数乘法器,然后进入复数累加器(您可能必须从加法器和可复位寄存器对其进行建模)。您的控制逻辑将需要定期重置此累加器。

累加器的输出可以馈送到下一级,或存储在另一个内存块中(另一个地址供您控制逻辑管理)。

如果您的编码表总是包含仅来自集合 (1,-1,j,-j) 的元素,那么您可以将它们编码为 2 位,而不是存储整个完全表示的复数并编写自定义逻辑它利用这一事实创建了一个比通用乘法器更简单的复数乘法器。

关于fpga - Simulink 中两个复数向量的矩阵乘法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5943283/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com