unnormal 发表于 2013-5-24 06:56:17

STM32 FPGA共同完成一个项目的各自分工问题

单独使用STM32或者单独使用FPGA来完成一些简单的项目是没有问题的,但是最近想用这两个处理器共同来完成一个项目,充分发挥各自的优势,因为没有这方面的经验,所以不知道这两种处理器共同设计时,需要怎么样的分工,或者说它们应该怎么样连接,程序怎么样操作,才可以同时使用各自的优势,小弟没有经验,恳请各位前辈,各位大侠,在百忙中抽出点时间,为小弟指导一下,小弟在此万分感激,先谢谢各位前辈和大侠了{:handshake:} {:handshake:} {:handshake:}

tiancaigao7 发表于 2013-5-24 07:45:29

一般有现成外设的都用STM32,对于没有现成的外设或者速度性能不满足要求的就用FPGA模拟,计算部分完全交给STM32,FPGA只做控制和数据传输以及保存之用

wye11083 发表于 2013-5-24 08:05:00

tiancaigao7 发表于 2013-5-24 07:45 static/image/common/back.gif
一般有现成外设的都用STM32,对于没有现成的外设或者速度性能不满足要求的就用FPGA模拟,计算部分完全交给S ...

不太准确。FPGA适合干的事是对时序要求严格的事,而ARM适合干那些复杂的事。

tiancaigao7 发表于 2013-5-24 08:21:44

wye11083 发表于 2013-5-24 08:05 static/image/common/back.gif
不太准确。FPGA适合干的事是对时序要求严格的事,而ARM适合干那些复杂的事。 ...

如果准确应该是FGPA与DSP联合,所有逻辑都交给FPGA,DSP全心全意的进行运算。楼主要用MCU和FPGA联合使用,本身在逻辑部分就有很大的重复性。所以我认为从做项目的角度来看,能用STM32外设的尽量用,只有速度不够或者功能不适合的时候用FPGA实现。然后数据的传输和保存都可以采用FPGA,充分利用他的并行特性。

wye11083 发表于 2013-5-24 08:23:05

tiancaigao7 发表于 2013-5-24 08:21 static/image/common/back.gif
如果准确应该是FGPA与DSP联合,所有逻辑都交给FPGA,DSP全心全意的进行运算。楼主要用MCU和FPGA联合使用 ...

FPGA不仅仅是并行性,而且有实时性,主要是实时性。比如用FPGA实现FIR,每周期就能出一组数据。

tiancaigao7 发表于 2013-5-24 08:44:00

wye11083 发表于 2013-5-24 08:23 static/image/common/back.gif
FPGA不仅仅是并行性,而且有实时性,主要是实时性。比如用FPGA实现FIR,每周期就能出一组数据。 ...

楼上要考虑复杂程度。FPGA本身的强项就不是计算,而是逻辑控制。除非对于实时性要求非常高的场合,否则我不喜欢采用FPGA进行数学运算。要想高速计算,采用DSP就可以。

tgnui 发表于 2013-5-24 09:31:54

tiancaigao7 发表于 2013-5-24 08:44 static/image/common/back.gif
楼上要考虑复杂程度。FPGA本身的强项就不是计算,而是逻辑控制。除非对于实时性要求非常高的场合,否则我 ...

实验室内有人把控制和逻辑全放在FPGA上,无核,充分运用速度优势,只要FPGA放得下,保证在控制周期内就能实现,硬件实现,一时钟一输出;反观dsp/arm,运算实现方便,但对控制周期内的计算量斤斤计较,所以比较看好FPGA承担部分算法,与DSP协调

unnormal 发表于 2013-5-24 09:43:47

tiancaigao7 发表于 2013-5-24 08:44 static/image/common/back.gif
楼上要考虑复杂程度。FPGA本身的强项就不是计算,而是逻辑控制。除非对于实时性要求非常高的场合,否则我 ...

感谢您的解答,通过您们说的,我稍微明白了一些,谢谢{:handshake:}

unnormal 发表于 2013-5-24 09:44:08

wye11083 发表于 2013-5-24 08:23 static/image/common/back.gif
FPGA不仅仅是并行性,而且有实时性,主要是实时性。比如用FPGA实现FIR,每周期就能出一组数据。 ...

感谢您的解答,通过您们说的,我稍微明白了一些,谢谢{:handshake:}

unnormal 发表于 2013-5-24 09:44:47

tgnui 发表于 2013-5-24 09:31 static/image/common/back.gif
实验室内有人把控制和逻辑全放在FPGA上,无核,充分运用速度优势,只要FPGA放得下,保证在控制周期内就能 ...

感谢您的解答,通过您{:handshake:} 说的,我稍微明白了一些,谢谢

banye2010 发表于 2013-5-24 09:45:55

例化一个NIOS II

unnormal 发表于 2013-5-24 09:56:46

楼上三位大侠,很感谢您们的回答,小弟其实从大的方向上也有一点点了解,就是FPGA主要优势就是并行处理,接口丰富,而MCU(STM32)主要是复杂的控制,也就是控制一类的,这样您们可能是做了很多很大的项目,这些都是经验,我学习了,我也受益匪浅。不过小弟现在的层次还没有这么高,就是简单的结合方式,或者说我现在还不清楚应该如果将这两种处理器结合在一起工作,比如说接口上是简单的连接在一起呢,还是需要其它的方式?程序是自己编写一些通信协议还是说简单的IO操作?如果有些编程和共同合作的实例就更好了,可能是小弟的要求有些过多了,不过希望前辈们理解一下初学者的小弟,再次感谢各位!

wye11083 发表于 2013-5-24 09:57:37

unnormal 发表于 2013-5-24 09:44 static/image/common/back.gif
感谢您的解答,通过您 说的,我稍微明白了一些,谢谢

是的,基本是这样。FPGA不适合干复杂的活,比如有几十个状态,FPGA光写代码都能写死你。

wildone 发表于 2013-5-24 11:49:53

FPGA负责全部逻辑控制,数字信号处理等工作。CPU负责显示,数据运算,上位机通信。ARM+FPGA一般这么干。

unnormal 发表于 2013-5-24 12:05:16

wye11083 发表于 2013-5-24 09:57 static/image/common/back.gif
是的,基本是这样。FPGA不适合干复杂的活,比如有几十个状态,FPGA光写代码都能写死你。 ...

{:handshake:} 再次感谢前辈{:handshake:}

unnormal 发表于 2013-5-24 12:10:38

banye2010 发表于 2013-5-24 09:45 static/image/common/back.gif
例化一个NIOS II

对于NIOS II来说,确实是不错的,我会好好学习一下的,因为现在很多东西都愿意合作,所以这个方向也需要会的 ,感谢您的回答,谢谢您{:handshake:}

unnormal 发表于 2013-5-24 12:11:57

wildone 发表于 2013-5-24 11:49 static/image/common/back.gif
FPGA负责全部逻辑控制,数字信号处理等工作。CPU负责显示,数据运算,上位机通信。ARM+FPGA一般这么干。 ...

好的 ,谢谢您的解答,我试着这样去操作一下,谢谢您{:handshake:}

oped001 发表于 2013-5-24 12:45:38

tiancaigao7 发表于 2013-5-24 07:45
一般有现成外设的都用STM32,对于没有现成的外设或者速度性能不满足要求的就用FPGA模拟,计算部分完全交给S ...

FPGA搞控制啊?这个东西其实计算速度比片机要快的多

康熙通宝 发表于 2013-5-24 12:53:54

考虑mcu和fpga的DMA方式传输吧

chun2495 发表于 2013-5-24 17:20:20

用NiosII不好吗?我们就是用他的 ,还节省空间和成本 一片FPGA就OK了 现在Nios都是跑100M的

tiancaigao7 发表于 2013-5-24 17:33:52

oped001 发表于 2013-5-24 12:45 static/image/common/back.gif
FPGA搞控制啊?这个东西其实计算速度比片机要快的多

并行计算确实会很快,但是计算的开发编写会比在DSP或者MCU上要复杂很多,如果能够解决这一点的话,其实FPGA能够搞定一切需要IC的地方。完全不需要和STM32或者DSP来联合?但是为什么现在有这么多的这种联合的方案呢?就是因为FPGA的计算想要搞好不容易。

tiancaigao7 发表于 2013-5-24 17:36:13

unnormal 发表于 2013-5-24 12:10 static/image/common/back.gif
对于NIOS II来说,确实是不错的,我会好好学习一下的,因为现在很多东西都愿意合作,所以这个方向也需要 ...

现在不清楚,不过去年用niosII的时候发现虽然主频很高,但是实际代码跑起来很慢。相当于自己用FPGA做了一个MCU,而且还没有人家专业的做得好,何苦呢?我一直认为nios就是玩儿的。既然有更加专业的东西,何苦为要用自己的弱项来和别人的强项去拼?

tiancaigao7 发表于 2013-5-24 17:37:34

tgnui 发表于 2013-5-24 09:31 static/image/common/back.gif
实验室内有人把控制和逻辑全放在FPGA上,无核,充分运用速度优势,只要FPGA放得下,保证在控制周期内就能 ...

能做得好的话,FPGA能够搞定一切,那为什么现在还有大量的DSP或者ARM+GPFA的方案呢?就是因为绝大多数都搞不定各种外设以及运算。因此理想很丰满,现实很骨感。

YFM 发表于 2013-5-24 17:50:44

FPGA 目前已经不再局限于胶合逻辑的应用了,也不在局限于实现一个MCU没有的接口的应用了,一片三十多元的ep4ce6加上SDRAM就能构建一个可以提供每秒20M次32位整数运算的SOPC系统。为什么不用它来做算法呢而去用DSP呢?

unnormal 发表于 2013-5-24 20:41:23

感谢各位这么多的答案,真的是让我受益匪浅啊!看着您们的研究内容,会增加很多知识,谢谢各位{:handshake:}

深海烟花 发表于 2013-5-25 11:10:27

受益匪浅

xlwq 发表于 2013-5-25 12:52:12

毕设在用ICORE做一款简单的数字示波器,方案就是stm32+fpga·······

sky_prince 发表于 2013-5-25 13:11:03

tiancaigao7 发表于 2013-5-24 17:37 static/image/common/back.gif
能做得好的话,FPGA能够搞定一切,那为什么现在还有大量的DSP或者ARM+GPFA的方案呢?就是因为绝大多数都 ...

呵呵,支持您的想法。

7802848 发表于 2013-5-27 11:01:46

诸如arm cortex a15,a8,a9这些核都可以在fpga里面实现,同时fpga还可以做到诸如调制解调,fft,ifft这些实时性要求极高的工作,可以在fpga里面实现除了模拟之外的wifi,bluetooth的所有部分,包括软件

winkle 发表于 2013-6-8 17:18:20

YFM 发表于 2013-5-24 17:50
FPGA 目前已经不再局限于胶合逻辑的应用了,也不在局限于实现一个MCU没有的接口的应用了,一片三十多元的ep ...

Sopc指nois吗

winkle 发表于 2013-6-8 17:20:38

YFM 发表于 2013-5-24 17:50
FPGA 目前已经不再局限于胶合逻辑的应用了,也不在局限于实现一个MCU没有的接口的应用了,一片三十多元的ep ...

Sopc指nois吗

winster321 发表于 2013-6-8 19:44:20

FPGA挺贵,不是定制的应用还是单片机+asic吧。

二进制 发表于 2013-6-9 07:56:20

标记一下

随风_98 发表于 2013-6-11 23:44:41

楼上的讨论都很实际啊,以前看过一个项目,就是用FPGA+DSP来实现的,FPGA也就做做控制逻辑和外部接口的扩展,算法还是DSP来做的。。

aureole 发表于 2013-6-11 23:48:20

贴个我 icore2

bruce_helen 发表于 2013-6-12 16:34:48

aureole 发表于 2013-6-11 23:48 static/image/common/back.gif
贴个我 icore2

真漂亮

aureole 发表于 2013-6-12 16:40:03

bruce_helen 发表于 2013-6-12 16:34 static/image/common/back.gif
真漂亮

谢谢啊, 资料还在整理中, 过几天共享给大家........

http://item.taobao.com/item.htm?spm=a1z10.1.w4004-251734896.5.g5NafP&id=20889895095

dev1255874908 发表于 2013-6-13 22:22:50

stm32主控,fpga主运算。

lyl520719 发表于 2015-2-7 04:18:59

楼上弄反了吧?

ccrt 发表于 2015-2-7 08:21:07

FPGA主要实时性,逻辑控制,一般是STM32完成不那么容易的作为补充

steinwai 发表于 2015-4-18 21:34:39

markmark~~

NJ8888 发表于 2015-4-18 21:51:48

我在用FPGA写状态机,好几功能不同的协同工作,把XC3S400资源用了91%,下面不够了,换XC6SLX45

kinsno 发表于 2015-4-18 22:25:31

wye11083 发表于 2013-5-24 08:05
不太准确。FPGA适合干的事是对时序要求严格的事,而ARM适合干那些复杂的事。 ...

还要加一条,处理高频的PWM;

kinsno 发表于 2015-4-18 22:26:01

wye11083 发表于 2013-5-24 08:05
不太准确。FPGA适合干的事是对时序要求严格的事,而ARM适合干那些复杂的事。 ...

还要加一条,处理高频的PWM;

kinsno 发表于 2015-4-18 22:26:31

本帖最后由 kinsno 于 2015-4-18 22:30 编辑

wye11083 发表于 2013-5-24 08:05
不太准确。FPGA适合干的事是对时序要求严格的事,而ARM适合干那些复杂的事。 ...

还要加一条,处理高频的PWM;尤其是10路8路以上的那种;

stm8s 发表于 2015-4-19 12:36:48

FPGA适合处理数据流,mcu适合复杂逻辑

zhyu 发表于 2015-4-19 13:01:58

tiancaigao7 发表于 2013-5-24 08:21
如果准确应该是FGPA与DSP联合,所有逻辑都交给FPGA,DSP全心全意的进行运算。楼主要用MCU和FPGA联合使用 ...

嗯,同意。FPGA做复杂时序处理和需要并行处理的任务。stm32的外设接口资源比较丰富。

sun92845166 发表于 2015-4-19 13:25:46

aureole 发表于 2013-6-11 23:48
贴个我 icore2

请教一下,机器贴这样一片板子,批量价格和只有几个板子的价格大概各是多少?

辰星和月 发表于 2015-4-19 15:37:23

关注一下

NJ8888 发表于 2015-4-20 19:42:01

STM32+FPGA不太合适吧,我觉得是跑系统的高端ARM+FPGA

steinwai 发表于 2015-4-20 22:50:42

wye11083 发表于 2013-5-24 08:05
不太准确。FPGA适合干的事是对时序要求严格的事,而ARM适合干那些复杂的事。 ...

比如说STM32和FPGA一起做机器人的控制,它们要如何分工才合理呢,能举个例子吗{:3_43:} {:2_36:}

wye11083 发表于 2015-4-20 23:37:20

steinwai 发表于 2015-4-20 22:50
比如说STM32和FPGA一起做机器人的控制,它们要如何分工才合理呢,能举个例子吗   ...

并行算法以及简单的控制逻辑全部交给FPGA去做,串行算法调度全部交给STM32去做。

lyl520719 发表于 2015-7-10 21:06:22

用STM32的ADC与DAC以及复杂运算。

unnormal 发表于 2015-7-13 09:32:07

lyl520719 发表于 2015-7-10 21:06
用STM32的ADC与DAC以及复杂运算。


{:handshake:}

unnormal 发表于 2015-7-13 09:38:26

tao   宝    看到的   stm32   FPGA   CPLD   stc51共同实现的

star_tale 发表于 2015-7-16 15:40:47

tiancaigao7 发表于 2013-5-24 07:45
一般有现成外设的都用STM32,对于没有现成的外设或者速度性能不满足要求的就用FPGA模拟,计算部分完全交给S ...

支持,ms不少应用就这样来设计的,这逻辑控制到底是啥东西啊,举个例子

yzl0208994 发表于 2015-7-16 18:46:50

其实看一下工资就知道应该怎么分配了

FPGA需要经验的人调试,而stm32则不然

独孤帅 发表于 2015-8-2 18:03:31

楼主可以来STM32版关注我的信花派{:lol:},就是STM32和FPGA结合的

超群天晴Surp 发表于 2015-8-2 23:24:31

tiancaigao7 发表于 2013-5-24 08:21
如果准确应该是FGPA与DSP联合,所有逻辑都交给FPGA,DSP全心全意的进行运算。楼主要用MCU和FPGA联合使用 ...

赞同,标准外设stm32能搞定,需要复杂时序控制或者并行大数据处理用Fpga
页: [1]
查看完整版本: STM32 FPGA共同完成一个项目的各自分工问题