Vivado HLS C/C++代码仿真 (0)

cpp 复制代码
#include "ap_fixed.h"
typedef ap_fixed<10,8> DTYPE;
typedef ap_fixed<16,2> CTYPE;
void multiAdd(CTYPE c0,CTYPE c1,CTYPE c2,CTYPE c3,DTYPE x0,DTYPE x1,DTYPE x2,DTYPE x3,DTYPE *y);
cpp 复制代码
#include "multiadd.h"
void multiAdd(CTYPE c0,CTYPE c1,CTYPE c2,CTYPE c3,DTYPE x0,DTYPE x1,DTYPE x2,DTYPE x3,DTYPE *y)
{
	*y = c0*x0+c1*x1+c2*x2+c3*x3;
}
cpp 复制代码
#include "multiadd.h"
#include "stdio.h"
#include "stdlib.h"
int main()
{
	CTYPE c0=0.1,c1=0.2,c2=0.3,c3=0.4;
	DTYPE x0=100,x1=100,x2=100,x3=100;
	DTYPE y;
	int yy,i,fail = 0;
	for(i = 0;i<10;i++)
	{
		multiAdd(c0,c1,c2,c3,x0,x1,x2,x3,&y);
		yy = y;
		printf("%d\n",yy);
		if(abs(yy-(100+i))>1)
				{
					fail = 1;
				}
			x0++;x1++;x2++;x3++;
	}

	return fail;
}

其中,multiadd.h是数据类型重定义的头文件,可以自己确定数据精度;

multiadd.cpp是顶层函数实现的cpp文件;

multiadd_tb.cpp是testbench文件.

相关推荐
ShiMetaPi12 小时前
GM-3568JHF丨ARM+FPGA异构开发板应用开发教程:01 UART读写案例
arm开发·单片机·嵌入式硬件·fpga开发·fpga·rk3568
XINVRY-FPGA3 天前
XCZU47DR-2FFVE1156I XilinxFPGA Zynq UltraScale+ RFSoC
嵌入式硬件·fpga开发·云计算·硬件工程·射频工程·fpga
ALINX技术博客7 天前
【ALINX 教程】FPGA Multiboot 功能实现——基于 ALINX Artix US+ AXAU25 开发板
fpga开发·fpga
jz_ddk8 天前
[实战] Zynq-7000 PCAP接口完全指南
fpga·ps·zynq·pcap·pl
林伟_fpga8 天前
从体系结构的维度认知FPGA
系统架构·fpga
Joshua-a8 天前
FPGA基于计数器的分频器时序违例的解决方法
嵌入式硬件·fpga开发·fpga
unicrom_深圳市由你创科技11 天前
专业fpga定制开发解决方案
fpga开发·fpga
FPGA小迷弟13 天前
ModelSim操作教程 详细操作手册【一】
fpga开发·fpga·modelsim·fpga仿真·rtl仿真
FPGA小迷弟17 天前
京微齐力FPGA联合modelsim仿真操作
fpga开发·ic·verilog·fpga·仿真
FPGA小迷弟17 天前
FPGA在工业控制行业的应用,行业研究文章
fpga开发·制造·数据采集·fpga·工业控制