欢迎来到天天文库
浏览记录
ID:27870389
大小:60.00 KB
页数:4页
时间:2018-12-06
《基于FPGA的ARM并行总线设计与仿真分析.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于FPGA的ARM并行总线设计与仿真分析 在数字系统的设计中,FPGA+ARM的系统架构得到了越来越广泛的应用,FPGA主要实现高速数据的处理;ARM主要实现系统的流程控制。人机交互。外部通信以及FPGA控制等功能。I2C、SPI等串行总线接口只能实现FPGA和ARM之间的低速通信;当传输的数据量较大。要求高速传输时,就需要用并行总线来进行两者之间的高速数据传输。 下面基于ARM处理器LPC2478以及FPGA器件EP2C20Q240,以ARM外部总线的读操作时序为例,研究两者之间高速传输的并行总
2、线;其中,数据总线为32位;并在FPGA内部构造了1024x32bits的SRAM高速存储缓冲器,以便于ARM处理器快速读写FPGA内部数据。 1ARM并行总线的工作原理 ARM处理器LPC2478的外部并行总线由24根地址总线。32根数据总线和若干读写、片选等控制信号线组成。根据系统需求,数据总线宽度还可以配置为8位,16位和32位等几种工作模式。 在本设计中,用到ARM外部总线的信号有:CS.WE.OE.DATA[310].ADDR[230].BLS等。CS为片选信号,WE为写使能信号,OE为
3、读使能信号,DATA为数据总线,ADDR地址总线,BLS为字节组选择信号。ARM的外部总线读操作时序图,分别如图1所示。 根据ARM外部并行总线操作的时序,ARM外部总线的读写操作均在CS为低电平有效的情况下进行。由于读操作和写操作不可能同时进行,因此WE和OE信号不能同时出现低电平的情况。 数据总线DATA是双向的总线,要求FPGA也要实现双向数据的传输。在时序图中给出了时序之间的制约关系,设计FPGA时应该满足ARM信号的建立时间和保持时间的要求,否则可能出现读写不稳定的情况。 2FP
4、GA的并行总线设计 2.1FPGA的端口设计 FPGA和ARM之间的外部并行总线连接框图,如图2所示。由于FPGA内部的SRAM存储单元为32位,不需要进行字节组的选择,因此BLS信号可以不连接。为了便于实现ARM和FPGA之间数据的快速传输,FPGA内部的SRAM既要与ARM处理器进行读写处理,还要跟FPGA内部的其他逻辑模块进行数据交换,因此SRAM采用双口RAM来实现。 从端口的方向特性看,DATA端口是INOUT(双向)方式,其余端口均为IN(输入)方式。从端口的功能看,clk20m是
5、全局时钟,在实现时应采用FPGA的全局时钟网络,这样可以有效减少时钟延时,保证FPGA时序的正确性。ADDR是16位的地址总线,由ARM器件输入到FPGA。DATA是32位的双向数据总线,双向总线的设计是整个设计的重点。OE为ARM输入到FPGA的读使能信号。 WE为ARM输入到FPGA的写使能信号。CS为ARM输入到FPGA的片选信号,FPGA没有被ARM选中时必须输出高阻态,以避免总线冲突。
此文档下载收益归作者所有