FPGA——I2C仿真介绍与仿真模型使用

    (没看我之前I2C的原理和代码骗的小伙伴,请先关注浏览观看)既然要通过仿真来验证,就要先明白一点,仿真要达到怎么样的效果才算是验证了设计的正确性,所以这里,仿真的思路也是需要先理清的。

    作为一个I2C控制器,其首要目的自然是要能够按照I2C协议进行数据传输,而本实验在设计I2C控制器时,为了让控制器更加的通俗易懂理解,采用了底层传输逻辑和上层读写控制分开的设计方法,所以验证时,主要验证控制器根据Cmd端口不同的命令组合能否正确驱动SCLK和SDA信号产生传输时序。

     例如,对于本例来说,验证的时候,最基本的想法就是通过在Cmd端口上给出指定的命令,然后产生G0信号,模块是否能够按照Cmd端口上给出的命令组合依次按照预想传输对应的位或者字段。而且还要验证起始位和停止位的时序是否符合时序标准。进而,既然该模块是一个底层的单次传输模块,设计的时候是希望通过多次控制该模块,每次给出不同的命令和数据,最终实现完整的I2C读写时序控制该模块进行多次传输,查看这种多次传输组合成的I2C传输时序是否符合I2C读写时序。所以总结写来,仿真验证的几个要点如下:

1、在Cmd端口给出某命令组合,查看I2C_SDA和I2C_SCL是否按照预期的时序实现Cmd的端口给出的组合命令。

2、在Cmd端口按照一次完整的I2C读写时序给出每个字段传输时需要的命令组合,查看I2C_SDA和I2C_SCL的波形是否与标准的I2C读写一个字节的时序一致。

采用的仿真模型是M24LC04B,大家可以到MicroChip官网进行下载

 

写仿真:

EEPROM器件地址A0,EEPROM寄存器地址B1,写数据DA。

 

读仿真:

EEPROM器件地址A0,EEPROM寄存器地址B0。

 

具体工程和仿真模型请在源码:

https://download.csdn.net/download/weixin_44448586/19773236

  • 4
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论
FPGA使用VGA时序显示图像的仿真过程可以通过以下步骤实现: 1. 首先,需要使用时钟生成模块(PLL)来生成VGA工作所需的时钟信号。这个时钟信号将用于控制图像的扫描和刷新。 2. 接下来,使用图像生成模块(VGA_P)来确定每个有效图像区域的像素点。这个模块将根据控制模块传入的坐标信号,生成待显示图像的色彩信息。 3. 图像控制模块(VGA_C)负责生成行场同步信号,并确定有效图像区域的位置和零点坐标。这个模块还需要接收RGB信息和行场同步信号。 4. 最后,将生成的图像信号通过VGA端口输出,连接到VGA显示器上进行显示。 通过以上步骤,可以在FPGA使用VGA时序显示图像的仿真。这样,你就可以在仿真环境中验证图像的显示效果,并进行必要的调试和优化。 #### 引用[.reference_title] - *1* [FPGA学习——VGA显示](https://blog.csdn.net/weixin_56102526/article/details/124964347)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [FPGA——VGA显示协议](https://blog.csdn.net/a17377547725/article/details/129729079)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Mr~康

你们的鼓励,是我继续创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值