在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 11686|回复: 23

[求助] 新手求助,如何实现ARM与DSP+FPGA通信

[复制链接]
发表于 2012-1-21 05:26:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

x
各位好,我以前是学通信的,做的都是软件,现在老板手上有个项目,需要我完成一些硬件的工作,想请有经验的朋友帮忙评估一下整个工作的工作量有多大,以及需要哪些方面的工作:
系统的结构如下:
电气设备连接一块DSP的板子,由该DSP板上的ADC从设备上取数据并做AD转换,然后通过DSP板上FPGA控制的Ethernet接口与ARM板上的Ethernet接口连接,向ARM板发送数据并从ARM板接收指令消息。
以太网口由DM9000A芯片控制,FPGA(cyclone II)与DM9000A连接。

我需要完成的工作是:
1. 在FPGA上编程使以太网口可以正常工作
2. 在DSP上写驱动使DSP可以跟FPGA通信,从而正常的通过网口收发数据

我现在可以说对FPGA和DSP一窍不通,想请教有经验的朋友,以我的程度,完成这项工作最少需要多长时间?如果可能的话,可否给点建议,从哪里入手,应该学习哪些方面的东西,以及这项工作可以分成几个部分做,在下感激不尽!
发表于 2012-1-25 11:48:38 | 显示全部楼层
这个很麻烦,如果你手头上所有的硬件设备都准备好的话,至少需要半年到一年的时间左右。如果系统都没有的话,一个门外汉,两年时间都可能要。
首先,FGPA的编程需要学习以下:
1. verilog HDL编程,最少要从初级学习到中级。能够独立的写出以太网控制器和数据收发器。同时还要写和DSP通信的接口(当然,也可以SOPC)。对于新手来说,还蛮耗费时间的。
2. Altera的Quartus工具的使用,这个找本书,按照例子来搞倒还好。但是真正设计中遇到问题需要调试,那就是时间堆出来的。
2. DSP方面的编程,这一点,因为你本来就是做软件,应该不太难。我本身做硬件的,对这一块也不好评估。
 楼主| 发表于 2012-1-25 23:04:28 | 显示全部楼层
多谢版主~
我这几天也在自己学习,现在发现我们这个板子,FGPA部分跟ALTERL的DE2开发板一样,都是Cyclone II连接DM9000来控制以太网口,我们的板子上FPGA-DSP跟DE2上的管脚连接完全一样,网上DE2的fpga代码能找到,我想先把这部分代码放到我的板子上看看行不行
如果可行,下一步再考虑DSP跟FPGA的接口,DSP跟FPGA用EMIF标准接口,我想实现起来应该也不会太难,应该也有一些示例代码可以借鉴
我也看了一些VHDL的资料,如果从头学起是要花相当多的时间,有现成代码就用这个代码当例子边用边学了
发表于 2012-1-28 21:26:41 | 显示全部楼层
通信.jpg
根据你的描述,通信方式大概如上图所示
但是有一点你没有说清楚:DSP到底有什么作用?AD芯片的输出到底是DSP采集还是FPGA采集?FPGA与DSP芯片又是怎样的关系?
你说打算用EMIF接口来实现FPGA与DSP的通信,这是有问题的。DSP的EMIF接口是用来与外部储存设备进行的通信接口,比如DDR2,如果你用这个接口,完全是没有理解这个接口的意义。一般DSP与FPGA的接口通信有SPI,uart,UPP,以及一个并行接口(具体的忘记了),根据通信速率选择适当的接口。
从你的通信来看,DSP的程序编写不是问题(如果你只是用于数据储存或者传输,而不是复杂的算法计算),问题主要在FPGA如何控制以太网芯片上,你在这方面可能下的功夫更大些。
通信.jpg
通信.jpg
 楼主| 发表于 2012-1-29 11:45:04 | 显示全部楼层
你好,多谢回复!
AD芯片是和DSP连接的,然后DSP和FPGA连接,FPGA和DM9000连接,DM9000和以太网口连接
板子设计是有点奇怪的地方,不过是别人定制的我也只能这样做
DSP和FPGA设计的确实是使用EMIF接口,我查了一下网上,好像也有这么做的,我现在还在找这方面的资料
如您所说,现在DSP确实不做什么工作,需要写的应该就是一个EMIF接口的驱动程序,以及DSP跟AD芯片的接口驱动程序
FPGA方面,我在上面一个贴里提到,ALTERA公司的开发板DE2上面,FGPA-DM9000-以太网口的管脚连接方法跟我们这块板子完全一样,我想把这部分code直接烧到我们的板子上去,看看能不能工作,不过现在还没有做
发表于 2012-1-30 12:02:20 | 显示全部楼层
哪怕你有code,以你的基础,debug都会郁闷死你。
发表于 2012-1-30 16:47:06 | 显示全部楼层
先不说别的了,就算硬件平台已经搭好,就是给FPGA和DSP写点代码,再调试完成,对于一个有一定基础的人来说也要好几个月。更何况你现在硬件环境都没有搞定,对于FPGA和DSP也不了解。在没有其他帮助的情况下,要完成都很困难。
发表于 2012-1-30 16:51:29 | 显示全部楼层
另外,DSP用来干什么的?如果不是用来实现很复杂的算法,那用FPGA内嵌的DSP硬核就可以了,硬件设计也简单点。
 楼主| 发表于 2012-2-1 02:02:47 | 显示全部楼层
请问你说的硬件环境没有搞定是什么意思啊?
FPGA内嵌DSP硬核确实不了解,请问有没有什么相关资料可以学习一下的?DSP在这里不实现什么复杂算法
多谢!
发表于 2012-2-1 08:57:52 | 显示全部楼层
Spartan-3A DSP FPGA 的datasheet:可以看一下
http://www.xilinx.com/support/documentation/spartan-3a_dsp_data_sheets.htm
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-16 10:46 , Processed in 0.032562 second(s), 10 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表