ALTERA SOC开发流程(2)——数据传输篇

从上一篇结束后,我们已经将一个简单的工程搭建完毕,其中包含了一些对ARM端的一些配置信息。红圈中的信息就是对数据传输的一些配置,我们可以看到FPGA 到ARM的数据传输采用的是AXI总线协议,前两个都是高速AXI、最后一个是低速AXI,位宽分别设置成128、32、32bit。Altera还单独给了我们一个对DDR直接操作的接口,位宽设置为64bit。

接下来我们开始我们的数据传输之旅,先从最简单的PIO开始。ARM在与FPGA沟通的时候需要我们提供一个中断信号,而这个信号就可以使用PIO进行配置,在IP搜索界面搜索PIO

由于是中断信号,位宽我们设置为1bit,由于是FPGA到ARM端的信号,我们设定模式为输入信号,采用下降沿触发,点击finish。有人就会问,我想设置成上升沿可以吗,很抱歉,我和我的嵌入式工程师朋友多次尝试,只有这样才能成功接收中断信号。

将时钟和复位信号连接、中断连接、数据S1连接至lw_axi总线上,红圈内分别代表的是软件端的lw_axi偏移地址和中断号。到此FPGA配置基本完毕,如果你有一个嵌入式软件工程师的朋友,这个时候就需要他配置linux内核和设备树,用来对接你的信号。如果他也不是很清楚,那么翻阅官方文档。

如图所示,这个是light总线的基地址和中断号地址,把这个地址和偏移地址、中断号地址告诉你的嵌入式软件工程师朋友,他就懂了。如果还是不懂,参考以下链接,我觉得讲的还是可以的

http://www.360doc.com/content/16/0222/22/18252487_536538348.shtml

至此一个简单的PIO控制就成功了,用这个可以让ARM控制FPGA的一个IO点亮一个灯之类的,如果各位开发板上有这个玩意可以试一下。

接下来就可以进行大规模的数据传输了。过两天再写,嘻嘻嘻嘻嘻。

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
FPGA(Field-Programmable Gate Array)是一种可编程逻辑器件,它能够在电路中实现各种数字逻辑功能。Verilog语言则是一种硬件描述语言,用于描述数字系统的行为和结构。本文将通过基于Altera EP4CE10(一款FPGA芯片)进行的FPGA Verilog开发实战指南,向读者介绍如何使用Verilog语言开发FPGA应用。 首先,选择合适的开发工具,例如Altera Quartus Prime软件。在Quartus中,创建一个新的工程,并添加Verilog源文件,用于编写FPGA应用的逻辑代码。在编写代码时,需要了解基本的Verilog语法和模块化设计的原则。 接下来,将FPGA芯片选项设置为Altera EP4CE10,并进行引脚分配。引脚分配是将逻辑信号与FPGA芯片引脚相连接的过程。确保正确地将输入和输出信号与特定引脚相连接,以实现所需的功能。 然后,进行逻辑编译和映射。逻辑编译将Verilog代码转换为低级逻辑网表,并进行逻辑优化。映射阶段将逻辑网表映射到FPGA芯片中的逻辑单元和开关资源。 在映射之后,进行时序分析和布线。时序分析用于验证设计在时序要求下的正确性,以确保信号传输的稳定性和准确性。布线是将逻辑资源与FPGA芯片中的物理资源相互连接的过程。 最后,进行编程和调试。将生成的比特流文件下载到FPGA芯片中,并进行信号调试和性能优化。通过使用逻辑分析仪等工具,可以检查信号的波形和逻辑的正确性,并根据需要进行调整和改进。 在进行FPGA Verilog开发实战时,需要具备较好的数字电路基础和Verilog语言掌握程度。通过实践和经验积累,不断提升对FPGA开发的理解和技能,才能开发出高效和可靠的FPGA应用。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值