- 博客(3)
- 问答 (1)
- 收藏
- 关注
原创 AXI4接口
Ready和valid同时为高,写数据有效........,写地址,写数据,返回来的写响应,读地址,读数据都需要握手,是比较稍微复杂的信号。(我感觉也没有什么物理层方面的东西,引脚,接口这种实物),就是用代码实现的两个模块之间的通信,物理层依靠的是FPGA板卡的底部资源来实现。写地址,写数据,写响应,读地址,读数据,这五个通道里都有一对握手信号,握手信号一般都是指valid和ready信号,还有一个对应的信息。两个模块间通信,每个模块都有M端和S端,所以A模块的M发送数据给B模块的S。
2025-04-08 12:10:51
459
原创 verilog对信号取相反数,小于32位需要经过寄存器
注意:蓝色字体图片为modelsim仿真结果,黑色字体图片为vivado sim仿真结果。采用的vivado为2018.3,modelsim为10.6d。对信号(signal)取相反数,如果信号位宽小于32位,直接使用~signal+1进行操作,是不对的。如果位宽大于等于32位宽,直接使用~signal+1进行操作,是没有问题的。因为信号位宽小于32,~signal + 1将会用1补足32位。解决办法,加一个24位宽的寄存器存储。将位宽变为32,结果如下。位宽变为48,结果如下。位宽变为10,结果如下。
2024-10-09 17:22:49
419
原创 Vivado联合Modelsim仿真
在查找过程中,看到有些文章,对modelsim.ini文件进行改写,来使modelsim识别vivado的库。该项作用是编译xilinx下所有的IP,时间较长半个钟左右。vivado的该IP核,输出在第一行,输入在最后一行。挺智障的,记录一下,防止之后再犯。也不一定非要存到xilinx文件下或者modelsim文件下,自己建的文件用来存放Xilinx 编译的库文件。也可以不勾选,时间较快,如果不勾选的话,是不是用到那个IP,自动编译哪个IP?没有实验,暂不确定。查找错误时,找到以下解决方法,试了,没用。
2024-10-08 16:02:57
534
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人