Matrix vhdl中的矩阵放大

Matrix vhdl中的矩阵放大,matrix,vhdl,Matrix,Vhdl,我有一个矩阵(大小nxm)在matlab中。我想把矩阵的大小扩大到n+2x,m+2y),在原始的nxm矩阵周围加上零 例如: 原始2x2矩阵 1 2 34 新的4x4矩阵[0 0;0 1 2 0;0 3 4 0;0 0 0 0] 0 0 0 0 0 1 2 0 0 3 4 0 0 0 0 0 我如何用vhdl实现它 类型矩阵是自然的数组(自然范围,自然范围); 信号矩阵x2x2:矩阵(0到1,0到1); 信号矩阵x6x4:矩阵(0到5,0到3); 函数展开_矩阵(m:matrix;x:natur

我有一个矩阵(大小nxm)在matlab中。我想把矩阵的大小扩大到n+2x,m+2y),在原始的nxm矩阵周围加上零

例如: 原始2x2矩阵 1 2 34

新的4x4矩阵[0 0;0 1 2 0;0 3 4 0;0 0 0 0] 0 0 0 0 0 1 2 0 0 3 4 0 0 0 0 0

我如何用vhdl实现它

类型矩阵是自然的数组(自然范围,自然范围);
信号矩阵x2x2:矩阵(0到1,0到1);
信号矩阵x6x4:矩阵(0到5,0到3);
函数展开_矩阵(m:matrix;x:natural;y:natural)返回矩阵为
固定行:自然:=m'长度(1)+2*y;
常数列:自然:=m'长度(2)+2*x;
变量mx:matrix(0到ROWS-1,0到COLS-1):=(其他=>(其他=>0));
开始
对于y中的r到y+m'长度(1)-1圈
对于x到x+m'长度的c(2)-1圈
mx(r,c):=m(r-y,c-x);
端环;
端环;
返回mx;
末端功能;
开始
matrix2x2