• 方案介绍
  • 附件下载
  • 相关推荐
申请入驻 产业图谱

矩阵乘法器设计Verilog代码VIVADO仿真

08/12 09:18
510
加入交流群
扫码加入
获取工程师必备礼包
参与热点资讯讨论

2-240R61R614P5.doc

共1个文件

名称:矩阵乘法器设计Verilog代码VIVADO仿真

软件:VIVADO

语言:Verilog

代码功能:

矩阵乘法器

设计矩阵乘法器,为2x2矩阵,每个元素为16位,乘法器使用IP核。

FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com

演示视频:

设计文档:

工程文件

程序文件

程序编译

Testbench

仿真图

部分代码展示:

`timescale?1ns?/?1ps
//////////////////////////////////////////////////////////////////////////////////
//?Company:?
//?Engineer:?
//?
//?Create?Date:?2020/04/04?12:42:42
//?Design?Name:?
//?Module?Name:?matrix_mul
//?Project?Name:?
//?Target?Devices:?
//?Tool?Versions:?
//?Description:?
//?
//?Dependencies:?
//?
//?Revision:
//?Revision?0.01?-?File?Created
//?Additional?Comments:
//?
//////////////////////////////////////////////////////////////////////////////////
module?matrix_mul(
input?clk,
input?[15:0]?matrixA_0,//输入矩阵A元素1
input?[15:0]?matrixA_1,//输入矩阵A元素2
input?[15:0]?matrixA_2,//输入矩阵A元素3
input?[15:0]?matrixA_3,//输入矩阵A元素4
input?[15:0]?matrixB_0,//输入矩阵B元素1
input?[15:0]?matrixB_1,//输入矩阵B元素2
input?[15:0]?matrixB_2,//输入矩阵B元素3
input?[15:0]?matrixB_3,//输入矩阵B元素4
output?[31:0]?convolutAB_0,//输出结果元素1
output?[31:0]?convolutAB_1,//输出结果元素2
output?[31:0]?convolutAB_2,//输出结果元素3
output?[31:0]?convolutAB_3//输出结果元素4
);
wire?[31:0]?matrixA_0XmatrixB_0;
wire?[31:0]?matrixA_1XmatrixB_2;
wire?[31:0]?matrixA_0XmatrixB_1;
wire?[31:0]?matrixA_1XmatrixB_3;
wire?[31:0]matrixA_2XmatrixB_0;
wire?[31:0]matrixA_3XmatrixB_2;
wire?[31:0]matrixA_2XmatrixB_1;
wire?[31:0]matrixA_3XmatrixB_3;
//计算结果
assign?convolutAB_0=matrixA_0XmatrixB_0+matrixA_1XmatrixB_2;
assign?convolutAB_1=matrixA_0XmatrixB_1+matrixA_1XmatrixB_3;
assign?convolutAB_2=matrixA_2XmatrixB_0+matrixA_3XmatrixB_2;
assign?convolutAB_3=matrixA_2XmatrixB_1+matrixA_3XmatrixB_3;
mult_IP?I0?(
??.CLK(clk),??//?input?wire?CLK
??.A(matrixA_0),??????//?input?wire?[15?:?0]?A
??.B(matrixB_0),??????//?input?wire?[15?:?0]?B
??.P(matrixA_0XmatrixB_0)??????//?output?wire?[31?:?0]?P
);
mult_IP?I1?(
??.CLK(clk),??//?input?wire?CLK
??.A(matrixA_1),??????//?input?wire?[15?:?0]?A
??.B(matrixB_2),??????//?input?wire?[15?:?0]?B
??.P(matrixA_1XmatrixB_2)??????//?output?wire?[31?:?0]?P
);
mult_IP?I2?(
??.CLK(clk),??//?input?wire?CLK
??.A(matrixA_0),??????//?input?wire?[15?:?0]?A
??.B(matrixB_1),??????//?input?wire?[15?:?0]?B
??.P(matrixA_0XmatrixB_1)??????//?output?wire?[31?:?0]?P
);
mult_IP?I3?(
??.CLK(clk),??//?input?wire?CLK
??.A(matrixA_1),

点击链接获取代码文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=963

  • 2-240R61R614P5.doc
    下载

相关推荐