历史上的今天
今天是:2024年10月13日(星期日)
2020年10月13日 | 工程师深谈ARM+FPGA的设计架构
2020-10-13 来源:elecfans
最近学习了ARM+FPGA的设计架构,ARM和FPGA结构的通信大致可以分为两种:
一种是数据量小、通信速率要求不高的情况,可以考虑采用SPI、IIC等差UN星通信方式。ARM都带有相关的SPI通信控制器等,在ARM端直接对相关的SPI通信控制器操作就可以了。而FPGA这一端可作为SPI从,按照SPI协议的时序写好从设备接口,这个工作量没有多大,所以相对都比较容易。

另一种是数据量大、通信速率要求较高的情况,就要采用并行总线的方式了。这时把FPGA当做ARM的一个片外的SRAM访问就可以,可以在FPGA内部生成一个双口RAM,输出的数据总线管腿直接连接到ARM的并行总线的数据总线上,双口RAM一端的地址总线也一样直接连接到ARM的并行总线中的地址总线。这样就可以实现FPGA从DPRAM一端读写,ARM从DPRAM的另一端读写的功能了,当然还需要其他一些使能或片选的控制信号。这里FPGA一侧较好实现,而ARM一侧需要开发SRAM(FPGA)驱动,这个还没有实际做过,所以没有把握。
NXP的ARM即LPC系列的并行总线称之为外扩地址与数据总线,由EMC(外部存储器控制器)控制,通过对EMC寄存器的控制就可以实现在外扩地址和数据总线上的数据收发。若是采用LPC系列ARM加一片FPGA,实现他们通信的关键应该在于这个EMC寄存器的控制,不知道按照一定的顺序操作这个寄存器组写出来的数据收发程序是不是就可以称之为所谓的驱动,求大神解释。

TI的ARM或DSP都有一个GPMC(通用内存控制器),它类似于LPC的EMC,是TI的芯片中用于与外部存储设备如NORFLASH、NANDFLASH、SRAM等通信的一个借口。对于这个同样也有上边的那个疑问。
三星的S5PV210则是有一组并行总线接口,称之为SROM,同样也有一个SROM控制器,支持外扩的NORFALSH、NANDFLASH、SRAM 等,应该也类似于LPC系列的EMC。我通过对这个控制寄存器的操作就可以实现对外部SRAM(FPGA)的读写,不知道这样理解对不对。
还有一个疑问就是,如果有操作系统,再要实现ARM和FPGA的通信是不是就没有这样简单了?在没有操作系统时,我仅仅对某个相关的控制寄存器操作就可以实现,这时就不可行了?这些都是以后要弄明白的。调研了这么长时间,始终没有着手找找现有的资源,写写程序做一下这个通信,感觉还是没有理解到位。果真是什么东西都要实践一下才能理解深刻。手头有一块LPC2478的ARM加FPGA的板子,但没有操作系统或者只有UC/OSII,不知道跟ARM有操作系统如Linux时,有什么区别。先上手做一做吧。
上一篇:ARM核心板在溯源秤中的应用
下一篇:基于ARM处理器的机器人硬件设计
史海拾趣
|
错误提示:identifier expected,该错误是指向我的.H的头文件的,请问这个是什么意思?该怎么找错在哪里了?在线等,敬请高手指点!先谢谢了!… 查看全部问答> |
|
经过这些天的查找资料,基本上人脸识别的算法都搞清了。。。下面简述一下各种算法: (1) FPGA硬件选型采用Xilinx公司的Vertex芯片。该单元由视频采集模块、异步FIFO模块、视频解码模块、I2C 配置接口模块、图像帧存控制模块、图像低级处理模块、通 ...… 查看全部问答> |
|
CC1101、CC2530都写的最大电压3.9V,工作电压为1.8(2.0)~3.6V。 那么如果电压时3.7V,是否能稳定工作?芯片有没有损坏的危险?还是芯片不会坏,单片机有故障等危险? 因为设计需要使用3.7V电池。实际回路中约3.67V。超过3.6V,故有此提问。请大家 ...… 查看全部问答> |
|
各位好,变量定义如下: char xdata ziku[] = {...} _at_ 0x0020; unsigned xdata int shuzu[] = {...}; unsigned xdata long ack; 求教:下面那两个未指定固定位置的xdata类型变量在编译的时候是否会和上面被指定固定位置的变量重叠呢?谢谢… 查看全部问答> |
|
分析仪基本参数 1、采样率100MHz 2、采样通道16 3、存储容量(待定) 4、存储深度(待定) 5、测量范围0-5V 6、支持协议(有待开发) 核心芯片选择 1、USB接口芯片(CY7C68013A-100AXC)16位FIFO接口。 2、FPGA (EP2C5Q208C8N orEP2C8Q20 ...… 查看全部问答> |
|
随着时代的发展和竞争环境的不断变化,在职场上打拼多年的“老兵们”渐渐开始有所顾虑:“这份工作我要一直做下去吗?是不是该换个环境?”在你的潜意识里,你是不是也不止一次地问过自己,也许是出于生活的压力,也许是出于个人发展的需要,多 ...… 查看全部问答> |
|
本帖最后由 paulhyde 于 2014-9-15 03:09 编辑 如题,最近在做一个用示波器显示8个递减圆的题目,利用示波器的X-Y去显示,编程都编号的,但实际调试的时候发现两个单片机时钟不能同步,请问有什么办法可以使两片单片机使用同一个时钟啊? &nb ...… 查看全部问答> |
|
本帖最后由 abofly 于 2015-11-2 18:48 编辑 由于本人目前只接触过一个嵌入式操作系统μCos,因此本次设计采用了该系统。 新旗舰机的诞生必定导致老款的降价,人们似乎总是在追求最新……,呵呵我也不例外。 操作系统当然想用最新的,直接官 ...… 查看全部问答> |




