chun2495 发表于 2014-12-22 15:18:02

F想使用PGA+ARM做超声设备,哪个方案可行?

小弟最近想设计一款FPGA+ARM的超声设备,FPGA实现超声采样、处理、超声显示,arm(带linux系统)负责界面显示和外围驱动。但苦于网上没有类似开发板可以学习(icore2的只有arm7不带系统)。
所以想请教阿莫大神帮忙分析下构架。
1.FPGA+ARM9/11。
2.FPGA(altera cycloneV FPGA),这一款集成了ARM硬核。
不知哪个方案可行?

zxq6 发表于 2014-12-22 15:33:21

用外部的arm+fpga靠谱些,Cyclone V集成的那个,资料少点,不好玩转。

chun2495 发表于 2014-12-22 15:35:26

zxq6 发表于 2014-12-22 15:33
用外部的arm+fpga靠谱些,Cyclone V集成的那个,资料少点,不好玩转。

arm和fpga之间用什么通信呢? fsmc?

zxq6 发表于 2014-12-22 15:44:28

chun2495 发表于 2014-12-22 15:35
arm和fpga之间用什么通信呢? fsmc?

哈哈,FSMC?你都要跑linux了还不忘记STM32?你得用ARM9及更快的吧,外部并行总线多的是。那个不叫FSMC了哈哈。
如果交互的信息不多,spi更方便。

tam2907 发表于 2014-12-22 15:48:09

ARM可否替换为51

my二月兰 发表于 2014-12-22 15:52:36

确实这个方案实际上是很成熟的,但确实没有神人出开发板,主要是软硬件得通吃,工程量比较大,1人应该是很难搞定的,之前试过ARM9+FPGA,用总线,跑VxWorks,但没有成功,主要是VxWorks的驱动那块没有搞定,然后就没有然后了{:sweat:}

rowen800 发表于 2014-12-22 15:52:57

直接上zynq

chun2495 发表于 2014-12-22 15:54:28

zxq6 发表于 2014-12-22 15:44
哈哈,FSMC?你都要跑linux了还不忘记STM32?你得用ARM9及更快的吧,外部并行总线多的是。那个不叫FSMC了 ...

哦 这样啊 我之前用的就是arm7不带系统。 那两个之间的通信介质是什么呢 sram吗?还是缓存

一个人· 发表于 2014-12-22 15:54:34

本帖最后由 一个人· 于 2014-12-22 15:56 编辑

做声呐?相控阵?还是?ZYNQ7000方案不错!

chun2495 发表于 2014-12-22 15:55:11

tam2907 发表于 2014-12-22 15:48
ARM可否替换为51

那就没法跑linux了

rowen800 发表于 2014-12-22 15:55:35

直接上zynq啊

rowen800 发表于 2014-12-22 15:56:22

直接上zynq啊

chun2495 发表于 2014-12-22 15:58:02

rowen800 发表于 2014-12-22 15:52
直接上zynq

目前我们公司只用altera

chun2495 发表于 2014-12-22 15:59:46

一个人· 发表于 2014-12-22 15:54
做声呐?相控阵?还是?ZYNQ7000方案不错!

一直用的是altera,我负责软件,所以硬件方案很难改

mcu_mouse 发表于 2014-12-22 16:01:57

把FPGA挂在ARM的总线上,当成外设来用。然后,FPGA要写程序,ARM要写驱动。硬件一个人,FPGA一个人,ARM驱动一个人,ARM软件一个人{:lol:}

tam2907 发表于 2014-12-22 16:02:16

chun2495 发表于 2014-12-22 15:55
那就没法跑linux了

一定要跑linux么?

chun2495 发表于 2014-12-22 16:03:48

tam2907 发表于 2014-12-22 16:02
一定要跑linux么?

嗯 ,要是简单的直接nios裸机或者ucos就行了

一个人· 发表于 2014-12-22 16:04:08

chun2495 发表于 2014-12-22 15:54
哦 这样啊 我之前用的就是arm7不带系统。 那两个之间的通信介质是什么呢 sram吗?还是缓存 ...

哦,做什么东西呀?可以介绍下不?

tam2907 发表于 2014-12-22 16:05:45

mcu_mouse 发表于 2014-12-22 16:01
把FPGA挂在ARM的总线上,当成外设来用。然后,FPGA要写程序,ARM要写驱动。硬件一个人,FPGA一个人,ARM驱 ...

之前做过一个检测系统就是把FPGA跟单片机总线通讯模拟的是8080

chun2495 发表于 2014-12-22 16:09:53

mcu_mouse 发表于 2014-12-22 16:01
把FPGA挂在ARM的总线上,当成外设来用。然后,FPGA要写程序,ARM要写驱动。硬件一个人,FPGA一个人,ARM驱 ...

那fpga就得开辟一块内存来和arm通信了?

chun2495 发表于 2014-12-22 16:11:37

一个人· 发表于 2014-12-22 16:04
哦,做什么东西呀?可以介绍下不?

类似于小马哥的icore2 ,fpga+arm方案,只是多了个跑系统。做B超仪器界面

一个人· 发表于 2014-12-22 16:26:27

chun2495 发表于 2014-12-22 16:11
类似于小马哥的icore2 ,fpga+arm方案,只是多了个跑系统。做B超仪器界面

我草,做B超,高大上呀!阵列探头搞到了?

chun2495 发表于 2014-12-22 16:31:43

一个人· 发表于 2014-12-22 16:26
我草,做B超,高大上呀!阵列探头搞到了?

我只做软件 硬件算法才是王道

chenxujiaoyang 发表于 2014-12-22 16:45:16

Cortex A8 + MAX II CPLD

chenxujiaoyang 发表于 2014-12-22 16:45:32

Cortex A8 + MAX II CPLD

NJ8888 发表于 2014-12-22 16:50:53

我6410+X3S400

Vampireyifeng 发表于 2014-12-22 16:57:13

我也打算做一个类似的东西,我打算用fpga和我的imx283一起做,界面用qt写{:biggrin:}

chenxujiaoyang 发表于 2014-12-22 17:09:51

Cortex A8 + MAX II CPLD

gongxd 发表于 2014-12-22 19:59:10

有开发板的 软件无线电平台

chun2495 发表于 2014-12-22 21:14:05

gongxd 发表于 2014-12-22 19:59
有开发板的 软件无线电平台

发个链接吧

chun2495 发表于 2014-12-22 21:16:34

chenxujiaoyang 发表于 2014-12-22 17:09
Cortex A8 + MAX II CPLD

哪个板子? 发个链接吧

wyeth 发表于 2014-12-22 21:35:33

我倒是对楼主研究超声波探头比较感兴趣,想问下楼主:这个用作超声波探头的,是不是与普通的很不一样?AD采样位数要多少才能把图像数据正确采集?

spcm 发表于 2014-12-22 22:09:47

am3354 + ep4ce15

wang110 发表于 2014-12-22 22:44:26

Zynq7 ISE14.7 正捣鼓中......
感觉还不错

moon2jin 发表于 2014-12-22 23:53:45

建议用方案1,进度好控制,可以分开搞。如果体积有限制,用2问题不大。

chun2495 发表于 2014-12-23 09:15:52

wyeth 发表于 2014-12-22 21:35
我倒是对楼主研究超声波探头比较感兴趣,想问下楼主:这个用作超声波探头的,是不是与普通的很不一样?AD采 ...

我没有搞硬件 不过我大致知道一点 机械扇扫ad 8位就ok 了 ,线阵凸阵等可以8位也可以16位,只不过通道数多,16或32通道

wq_601840968 发表于 2014-12-23 09:25:48

确实没见过 能跑linux + fpga的开发板....

liangzanyao 发表于 2014-12-23 09:36:48

当然FPGA+ARM;两个器件功能没太大关联。用分离架构就好了。出了问题可以单独排查。

chun2495 发表于 2014-12-23 09:48:12

liangzanyao 发表于 2014-12-23 09:36
当然FPGA+ARM;两个器件功能没太大关联。用分离架构就好了。出了问题可以单独排查。 ...

我其实更倾向于第二种 因为我做了很多nios项目 只是现在担心没人玩飓风5,怕项目出现问题没人交流

浮华一生 发表于 2014-12-23 09:50:44

方案1感觉靠谱些. 至少感觉周期没2长. 方案2 资料少,用的人少,出问题不容易解决!   方案1可以把FPGA封装成SRAM接口,ARM9直接以存储内存的方式进行访问就行.

chun2495 发表于 2014-12-23 10:06:51

浮华一生 发表于 2014-12-23 09:50
方案1感觉靠谱些. 至少感觉周期没2长. 方案2 资料少,用的人少,出问题不容易解决!   方案1可以把FPGA封装成S ...

怎么封装呢?fpga那边需要开辟一块内存吗?

浮华一生 发表于 2014-12-23 10:21:58

chun2495 发表于 2014-12-23 10:06
怎么封装呢?fpga那边需要开辟一块内存吗?

不一定啊! 只是封装SRAM的时序! 你随便拿一个SRAM的数据手册看看, 实现它的时序啊!这只是实现通信的手段,至于你怎么用那是你后面协议的事情!

liangzanyao 发表于 2014-12-23 11:24:02

chun2495 发表于 2014-12-23 09:48
我其实更倾向于第二种 因为我做了很多nios项目 只是现在担心没人玩飓风5,怕项目出现问题没人交流 ...

如果对FPGA更熟悉的话,那就FPGA。我毕竟如果没有用过nios又要马上上nios的话需要花挺多时间学习。很多时候采取哪种架构跟项目时间、工程师经验有关。

chun2495 发表于 2014-12-23 11:48:58

liangzanyao 发表于 2014-12-23 11:24
如果对FPGA更熟悉的话,那就FPGA。我毕竟如果没有用过nios又要马上上nios的话需要花挺多时间学习。很多时 ...

{:smile:}

simon51 发表于 2014-12-23 13:38:37

方案1吧,灵活多了,适合多个人协作

qs6361036 发表于 2014-12-23 13:50:56

方案1是个好的选择 ,但是难度不小

bitcoin2 发表于 2014-12-23 13:58:09

FPGA+ARM的超声设备

alfred1 发表于 2014-12-23 14:23:01

am3358 + ep2c4

bitcoin2 发表于 2014-12-23 15:33:55

阿莫大神帮忙

earlybird_bj 发表于 2014-12-23 20:17:34

方案一更靠谱,好多公司一直就是采用的这种组合方式。系统可以像访问内存一样访问FPGA的内容。

chun2495 发表于 2014-12-23 20:34:47

earlybird_bj 发表于 2014-12-23 20:17
方案一更靠谱,好多公司一直就是采用的这种组合方式。系统可以像访问内存一样访问FPGA的内容。 ...

arm访问fpga的内存?
还是访问fpga外挂的一块内存?

earlybird_bj 发表于 2014-12-23 20:55:36

如,40楼的兄台的方法,访问FPGA模拟出来的内存

chun2495 发表于 2014-12-23 21:39:50

earlybird_bj 发表于 2014-12-23 20:55
如,40楼的兄台的方法,访问FPGA模拟出来的内存

那如果需要一大块内存呢 比如fpga采集一幅图像(800*600),arm需要将图像进行sd卡存储,那么的需要很大的内存啊 fpga的内存很宝贵的

NJ8888 发表于 2014-12-23 21:43:16

按楼主目前状况这个项目做不下去的

chun2495 发表于 2014-12-23 21:50:47

NJ8888 发表于 2014-12-23 21:43
按楼主目前状况这个项目做不下去的

其实arm+fpga我们已经在做了,用的arm7跑裸机。只是跑系统的arm还在看方案

liuruoshui 发表于 2014-12-23 21:51:33

Vampireyifeng 发表于 2014-12-22 16:57
我也打算做一个类似的东西,我打算用fpga和我的imx283一起做,界面用qt写 ...

请问两者之间怎么通信呢?

qzh 发表于 2014-12-23 21:57:27

ALTERA的CycloneV SOC也可以,玩的人不多

gwnpeter 发表于 2014-12-23 22:08:27

我用过2440 + 3s50an 总线结构 +wince6

chun2495 发表于 2014-12-23 22:11:30

gwnpeter 发表于 2014-12-23 22:08
我用过2440 + 3s50an 总线结构 +wince6

2440差不多10年前的东西了 你现在用的什么芯片

cocoloong 发表于 2014-12-31 23:05:46

淘宝有二手的板子卖,你可以找找

YFM 发表于 2015-1-2 07:48:30

看看我这个板子http://www.amobbs.com/thread-5568173-1-1.html

y623704481 发表于 2015-1-4 21:50:55

工作量实在有点大

q8360428 发表于 2015-1-9 11:12:24

chun2495 发表于 2014-12-22 15:35
arm和fpga之间用什么通信呢? fsmc?

楼主哪个公司!(可私聊我哦)    Altera SOC中的 FPGA 和硬核 (HPS) A9 的通信是通过AXI 桥实现的  通信峰值带宽可达125Gbps

{:lol:}这就是SOC 和双芯方案比   的优势

q8360428 发表于 2015-1-9 11:28:50

chun2495 发表于 2014-12-23 21:39
那如果需要一大块内存呢 比如fpga采集一幅图像(800*600),arm需要将图像进行sd卡存储,那么的需要很大 ...

Altera SOC 有三种桥   {:biggrin:}可以直接访问 HPS(Hard Processor System) 的SDRAM

HPS-to-FPGA: configurable 32, 64, or 128 bit AMBA AXI interface
FPGA-to-HPS: configurable 32, 64, or 128 bit AMBA AXI interface
FPGA-to-HPS SDRAM controller: up to 6 masters (command ports), 4x 64 bit read data ports and 4x 64 bit write data ports

AngYa 发表于 2015-1-9 13:02:54

我们原来做过很多ARM(TI/Samsung/Freescale)+FPGA的方案,这种方案特点是选择余地大,开发容易点。缺点是面积大点,成本高点。如果ARM和FPGA通信数据量少,用个SPI或UART或I2C就可以了,如果数据量大,用ARM的局部总线(各家叫法不一),把FPGA做为SRAM外设。如果数据量大且要求ARM CPU利用率低,则需要把DMA用上。

chun2495 发表于 2015-1-9 13:27:33

q8360428 发表于 2015-1-9 11:28
Altera SOC 有三种桥   可以直接访问 HPS(Hard Processor System) 的SDRAM

HPS-to-FPG ...

关键是用fpga硬核arm9人太少 又要跑linux系统 到时候估计遇见问题也没人会解答 。
不知道arm9跑多少M? sdram应该用ddr替换吧。

q8360428 发表于 2015-1-9 15:47:59

chun2495 发表于 2015-1-9 13:27
关键是用fpga硬核arm9人太少 又要跑linux系统 到时候估计遇见问题也没人会解答 。
不知道arm9跑多少M? s ...

800M   肯定 是上DDR3.。。          只不过统称SDRAM控制器

freefei 发表于 2015-1-9 16:50:16

ZYNQ比cycloneV FPGA的资料的多

gginhouse 发表于 2015-1-23 14:40:15

am335x+cylone4 采用GPMC总线

hongbo3636 发表于 2015-1-23 15:57:33

前两天刚搞了个ARM+FPGA方案,就是把FPGA挂在ARM的总线上

chun2495 发表于 2015-1-24 23:12:57

hongbo3636 发表于 2015-1-23 15:57
前两天刚搞了个ARM+FPGA方案,就是把FPGA挂在ARM的总线上

arm是带系统的还是? fsmc吗

jssd 发表于 2015-1-25 08:28:58

ZYNQ是正解。我们都做出开发板了。功能非常强大

qsmq46 发表于 2015-1-25 09:17:09

AMR和FPGA的通信主要看ARM芯片有什么接口,DDR FLASH SD卡这些都可以用来和FPGA通信,FPGA模拟这些时序都是小意思,主要看运用、还有传输的速度要求。

Inside 发表于 2015-1-25 11:03:32

方案一,FPGA+ARM的方案在视频采集上比较成熟,不过高端的视频采集设备上一般用TI的DSP芯片,包含ARM+DSP两个核
目前在做一个 DM8168+FPGA 的项目,用的是 GPMC 总线,FPGA端挂两块 SRAM 做乒乓缓存,DSP端用DMA读取。

hongbo3636 发表于 2015-1-26 08:39:09

chun2495 发表于 2015-1-24 23:12
arm是带系统的还是? fsmc吗

ARM上跑Linux

wdooy 发表于 2015-2-1 15:11:44

也想学习学习这方面的知识,想买个开发板,推见下?

chun2495 发表于 2015-2-1 21:28:31

wdooy 发表于 2015-2-1 15:11
也想学习学习这方面的知识,想买个开发板,推见下?

不跑系统的话建议买icore2就可以了 跑系统的话暂时还没找到合适的板子

richards 发表于 2015-2-1 23:27:30

zynq 7000系列真心感觉不错

wdooy 发表于 2015-2-16 10:27:42

richards 发表于 2015-2-1 23:27
zynq 7000系列真心感觉不错

太贵了,呵呵

mcupro 发表于 2015-2-16 11:05:04

1, 用专门的ARM系统跑LINUX。成本低,技术成熟,稳定。
2,通过某种方式链接FPGA 和ARM,速度要求高可以采用内存映射方式,要求低可以采用SPI等接口。
3,在ARM-LINUX做驱动,将FPGA做为字符文件来对待。
4,FPGA的配置采用被动串行方式,由ARM给加载配置,很灵活。
5,既然选择ARM+FPGA就应该很明确各自分工了吧,FPGA做大带宽,高速度的并行处理,或者是自己编写的复杂外设(比如30个UART等)。ARM主要做复杂的控制或者通讯以及界面。

以前做过一个电表远程数据采集,就用的是 AT91RM9200 + FPGA的方式,就是按照以上5点做的,希望对你有启发帮助。

bj232 发表于 2015-2-16 12:22:10

FPGA还需要考虑配置芯片,多个电源,难度瞬间大好多

chun2495 发表于 2015-3-2 09:19:05

mcupro 发表于 2015-2-16 11:05
1, 用专门的ARM系统跑LINUX。成本低,技术成熟,稳定。
2,通过某种方式链接FPGA 和ARM,速度要求高可以采用 ...

对于第二点 内存映射 是FPGA+RAM+ARM(地址映射到RAM) 还是FPGA+ARM(FPGA的内存)?

xh2008email 发表于 2015-3-13 19:21:52

mcupro 发表于 2015-2-16 11:05
1, 用专门的ARM系统跑LINUX。成本低,技术成熟,稳定。
2,通过某种方式链接FPGA 和ARM,速度要求高可以采用 ...

非常好的建议,{:victory:}

gwnpeter 发表于 2015-5-6 12:01:38

一直在使用,arm9(2440) + 7'TFT + wince6 + 16bitbus + xilinx

AngYa 发表于 2015-5-7 09:32:45

rerainings 发表于 2015-5-6 11:52
想问下,这个FPGA 和ARM的系统中需要ARM去配置FPGA吗?
还是说各自为战,arm和fpga各自用自己的JTAG来配置 ...

既然有了ARM,就可以用ARM去串行配置FPGA了,方便用ARM升级FPGA,就不用JTAG了。
ARM和FPGA通信,数据量大可以用ARM的并行数据总线,数据量小可以用SPI等。

AngYa 发表于 2015-5-7 23:43:38

rerainings 发表于 2015-5-7 15:34
现在做的是图像传输,串行通信速率达不到要求,打算用DMA,不知道这个DMA是什么个情况,研究中。。。

这 ...

这个DMA依赖于具体的ARM种类,例如有些ARM你可以通过fpga给个中断给ARM,ARM收到中断后调用DMA实现fpga内存和arm内存的数据搬移。

lgzskywolf 发表于 2015-5-8 10:38:11

第二的方案感觉效率、速度可以做的高一点,另外,建议不要用Altera的片子,用Xilinx的Zynq,资料多一点。

lgzskywolf 发表于 2015-5-8 10:38:57

第二的方案感觉效率、速度可以做的高一点,另外,建议不要用Altera的片子,用Xilinx的Zynq,资料多一点。

GnssDoppler 发表于 2015-5-15 14:07:45

第一个方案用的比较多,我们做接收机的都是用的这种方案。还有DSP+FPGA的,都是比较成熟的了

GnssDoppler 发表于 2015-5-15 14:09:46

第二种方案就需要上Xilinx的Z7系列带soc的

gwnpeter 发表于 2015-5-23 02:30:57

rerainings 发表于 2015-5-7 15:35
这二者是如何通信的?
串行还是并行?

16bitbus肯定是并口了,fpga内部实现寄存器,通过总线映射到arm里面,arm相当于增加了一些寄存器。
不过wince需要增加一个设备驱动,驱动运行在内核空间,
然后wince再打开这个设备,进行访问,程序运行在用户空间

abandon 发表于 2015-5-23 12:48:31

my二月兰 发表于 2014-12-22 15:52
确实这个方案实际上是很成熟的,但确实没有神人出开发板,主要是软硬件得通吃,工程量比较大,1人应该是很 ...

看起来比较可惜啊

abandon 发表于 2015-5-23 12:51:30

gwnpeter 发表于 2015-5-6 12:01
一直在使用,arm9(2440) + 7'TFT + wince6 + 16bitbus + xilinx

对于操作系统 Android 还是linux 现在我很犹豫啊..

siyeb 发表于 2015-5-27 12:17:23

chun2495 发表于 2015-3-2 09:19
对于第二点 内存映射 是FPGA+RAM+ARM(地址映射到RAM) 还是FPGA+ARM(FPGA的内存)? ...

是将ARM的一块内存区域映射到FPGA上,然后ARM以访问内存的方式访问FPGA,此时FPGA成为了ARM的一个外设。

这个跟FPGA的内存没有关系。你就把FPGA当成一个SRAM或者SDRAM什么的就行了。

举个例子:

比如你用FPGA采了一阵图像,然后FPGA给ARM中断,ARM就开始按设定的地址访问FPGA(推荐DMA方式),FPGA把图像数据按地址发出去就行了。

当然,这玩意儿还是离不开FPGA的内存,因为你存图是需要内存的嘛。

gwnpeter 发表于 2015-5-27 15:20:16

abandon 发表于 2015-5-23 12:51
对于操作系统 Android 还是linux 现在我很犹豫啊..

这个是有点坑.............
安卓工业上,稳定性稍差
linux开发界面麻烦........
wince6老系统,新cpu不支持........
md.......................

坐等win8.1的小硬件系统

abandon 发表于 2015-5-27 20:19:41

gwnpeter 发表于 2015-5-27 15:20
这个是有点坑.............
安卓工业上,稳定性稍差
linux开发界面麻烦........


觉得linux还是有它的生命力的.

辰星和月 发表于 2015-5-27 20:37:11

怎么这个帖子又被顶上来了,,,

lyl520719 发表于 2015-5-28 12:15:33

我在用FPGA+ STM32,用在工控方面。

masonson 发表于 2015-6-8 07:44:00

Inside 发表于 2015-1-25 11:03
方案一,FPGA+ARM的方案在视频采集上比较成熟,不过高端的视频采集设备上一般用TI的DSP芯片,包含ARM+DSP两 ...

已经做成了么?方便加下扣扣讨论一下么? 471086523

风过不留痕z 发表于 2023-9-7 20:21:32

这么多年过去了,现在大家都用的啥方案,再来讨论讨论啊
页: [1] 2
查看完整版本: F想使用PGA+ARM做超声设备,哪个方案可行?