毕业设计论文基于FPGA的SPI串行外围接口接口设计.doc
《毕业设计论文基于FPGA的SPI串行外围接口接口设计.doc》由会员分享,可在线阅读,更多相关《毕业设计论文基于FPGA的SPI串行外围接口接口设计.doc(38页珍藏版)》请在三一办公上搜索。
1、武汉理工大学本科学生毕业设计(论文)开题报告基于FPGA的SPI串行外围接口接口设计1、目的和意义及发展现状SPI是英文Serial Peripheral Interface的缩写,中文意思是串行外围设备接口,SPI是Motorola公司推出的一种同步串行通讯方式,是一种三线同步总线,它是一种常用的标准接口,由于其使用简单方便且节省系统资源,很多芯片都支持该接口,SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间等等。当然,串口通信还有其他的接口方式,SPI接口和UART相比,多了一条同步时钟线,上面UART的缺点也就是它的优点了,对通信
2、双方的时序要求不严格不同设备之间可以很容易结合,而且通信速度非常快。一般用在产品内部元件之间的高速数据通信上面,如大容量存储器等。这就凸现SPI的好处。SPI接口的扩展有硬件和软件两种方法,软件模拟SPI接口方法虽然简单方便,但是速度受到限制,在高速且日益复杂的数字系统中,这种方法显然无法满足系统要求,所以采用硬件的方法实现最为切实可行。这使得与SPI有关的软件就相当简单,使CPU有更多的时间处理其他事务。当前,基于主从处理器结构的系统架构已经成为一种主流(如 DSP+FPGA,MCU+FPGA等),FPGA是在ASIC的基础发展出来的,它克服了专用 ASIC不够灵活的缺点。与其他中小规模集成
3、电路相比,其优点主要在于它有很强的灵活性,即其内部的具体逻辑功能可以根据需要配置,对电路的修改和维护很方便。目前,FPGA的容量已经跨过了百万门级,使得 FPGA成为解决系统级设计的重要选择方案之一。在这种架构下,应用FPGA来构建SPI通信接口是切实可行的。参考文献:1 孙丰军,余春暄. S P I 串行总线接口的V e r i l o g 实现. 北京工业大学 电子信息与控制工程学院 北京 10002.2 刘福奇,刘波. Verilog HDL应用程序. 电子工业出版社,2009.103 顾卫刚. 串行外围接口. 陕西:西安交通大学,2004.4 徐洋等.基于Verilog HDL的FPG
4、A设计与工程应用.人民邮电出版社.20095 K.Babulu, K.Soundara Rajan. FPGA IMPLEMENT ATION OF SPI TRANSCEIVER MACROCELL INTERFACE WITH SPI SPECIFICATIONS. JNTU Colleage off Engineering,2008.2、基本内容和技术方案2.1、研究的基本内容(1)熟悉通信及通信接口相关方面的知识,学习并掌握SPI通信接口的结构,协议及原理。(2)熟悉VERILOG语言及其开发环境ISE,使用该语言进行数字电路(FPGA)设计,慢慢深入VERILOG语言。(3)设计流程
5、图,状态图,并一步步用Verilog语言实现仿真验证I接口串口通信。(4)采用实验板或自行设计电路进行调试,并采用相关仪器验证。(5)系统整体调试、优化,或就某一部分进行优化并做深入的研究与扩展。2.2、 技术方案(1)硬件设计模型硬件实现主要是基于PLD的CPLD,FPGA中实现。如FPGA是在ASIC的基础发展出来的,它克服了专用 ASIC不够灵活的缺点。与其他中小规模集成电路相比,其优点主要在于它有很强的灵活性,即其内部的具体逻辑功能可以根据需要配置,对电路的修改和维护很方便。目前,FPGA的容量已经跨过了百万门级,使得 FPGA成为解决系统级设计的重要选择方案之一。在这种架构下,应用F
6、PGA来构建SPI通信接口是切实可行的。下图模式一种主从模式:微处理器微处理器接口SPI总线接口adr_i1:0dat_i7:0dat_o7:0int_owe_ics_omiso_imosi_osck_orst_iSPI 接口作为主机与从机的通讯接口,主要完成以下工作: SPI将从主机接收到的8位的并行数据,转换为从机所能接收的串行数据,并将该数据根据SPI协议送给从机。 主机产生从机所需的时钟信号SCLK,片选信号CS。 接收从从机传回的读信号和串行数据,并将其转换为并行数据。(2)系统实现方案用FPGA实现SPI串行外围接口是一个比较复杂的系统较大的系统没有科学的设计方法就很难保证不出错,
7、并很难言简意赅的清晰思路完成方案。此方案采用了状态机来设计,本项目的研究主要采用理论分析、逻辑推理、试验调试等方法。针对状态机,其主要有以下特点:1)有限状态机克服了纯硬件数字系统顺序方式控制不灵活的缺点。 2)状态机的结构模式相对简单。 3)状态机容易构成性能良好的同步时序逻辑模块。 4)状态机的Verilog HDL表述丰富多样。 5)在高速运算和控制方面,状态机更有其巨大的优势。 6)就可靠性而言,状态机的优势也是十分明显的。基于以上特点,用状态机的方法描述SPI通信过程简单方便并可靠,基于状态机,SPI通信接口的状态大致转移图如下所示:首先是SPI接口在等待状态,当检测到发送指令时触发
8、信号进入发送状态,在系统指令下检测到写信号时进入发送数据状态,然后一位位发送数据,当检测到读信号时,进入读状态,当检测到发送接收都完毕时,进入发送接收完毕状态,再转向等待状态。(3)关键技术的实现时序问题将总线控制信号封装成指令,使用者只需通过发送指令的方式操作,避免了复杂的时序逻辑设计问题。全双工传输方式的设计如果全部使用状态机的方式完成设计,则可发现其很难完成全双工即收发独立模式,则在此过程中可以采用流水线设计方式,使之收与发之间独立进行,便可完成全双工传输方式的设计。3、进度安排第12周:查阅相关SPI文献资料,对其相关研究内容进行大体了解,并明确其原理和基本实现方案,完成开题报告,熟悉
9、ISE操作和在线调试,了解Verilog HDL语言的基本语法。第34周:详细理解和研究SPI的原理,对Verilog HDL语言有一定的理解。第512周:对于Verilog HDL语言有深入理解,并具备一定的编程能力,能设计基本单元器件,并能读懂大型程序,熟练状态机的设计方法,对SPI有着工作过程有着细致的了解第13-16周:完成并修改毕业论文。第17周: 准备论文答辩。4、指导教师意见 指导教师签名: 年 月 日 武汉理工大学学士学位论文目录摘要IAbstractII1 绪论31.1课题研究背景31.2 SPI研究目的及意义41.3 本章小结42 SPI原理分析52.1 SPI介绍52.2
10、 SPI工作模式62.3 SPI传输模式62.4 SPI协议72.5 本章小结83 方案论证103.1在51系列单片机系统中实现103.2 用可编程逻辑器件设计SPI113.3 本章小结114 SPI的电路设计124.1 SPI设计系统的功能124.2 SPI各部分具体实现124.2.2 SPI系统中所用的寄存器134.2.3 SPI速率控制144.2.4 SPI控制状态机144.2.5 SPI程序设计流程图154.3 SPI仿真及开发板上调试验证分析164.3.1 仿真分析164.3.2开发板上调试184.4 本章小结205 论文总结21致谢22参考文献23附录124附录228摘要随着专用集
11、成电路(ASIC)设计技术的进步以及超大规模集成电路(VLSI)工艺技术的飞速发展,以及其价格的日益降低,采用FPGA编程的硬件电路来实现诸如SPI接口也日益切实可行,相对软件实现具有更好的优点。SPI接口是一种常用的标准接口,由于其使用简单方便且节省系统资源,很多芯片都支持该接口,SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间等等。由于SPI接口是一种事实标准,并没有标准协议,大部分厂家都是参照Motorola的SPI接口定义来设计的,但正因为没有确切的版本协议,不同厂家产品的SPI接口在技术上存在一定的差别,容易引起歧义,有的甚至
12、无法互联(需要用软件进行必要的修改)。本文基于一种使用较为普遍的协议来进行设计,并参照Motorola公司的MC68HC11A8单片机中的SPI模块定义来设计的简化的SPI接口,用Verilog语言进行编写设计,并在ISE软件上进行设计仿真,并在基于Xlinx公司的Spartan-3E芯片的Digilent公司出品的Nexys2开发板上用在线逻辑分析仪chipscope进行板上调试验证观察结果,并完成实现功能,并具有一些独创性的设计。关键词:FPGA Verilog SPI协议 chipscope ISE AbstractWith the advances in design technolo
13、gy of ASIC and VLSIs rapid development, and its price is lower, the hardware circuit based on FPGA programming interface to achieve such as SPI is feasible, and it realizes better than software. SPI interface is a common standard interface, due to its simple and convenient use and save system resour
14、ce , a lot of chips support this interface. SPI interface is extensively applied in EEPROM, FLASH, real-time clock, AD converter, and digital signal processor and digital signals decoder, etc.Due to the interface is a fact SPI standard, and it has no standard protocol, most manufacturers design the
15、SPI refer to the interface definition of Motorolas reference.Because of no definite agreement, there is a lot of different versions of the products in the technology exists on SPI interface, easy cause of ambiguity, some even cannot interconnect (need to do some modification). Based on a common prot
16、ocols for design, and the company MC68HC11A8 microcontroller of Motorola module definition to design the SPI simplified SPI interface, with Verilog language writing, and in the design of the software design ISE simulation, and based on the Xlinx company Digilent chip Spartan 3E - the Nexys2 developm
17、ent board with online logic analyzers chipscope on board, and debugging validation observations, and complete functionality has some distinctive design. Keywords:FPGA Verilog SPI protocol chipscope ISE1 绪论在研究SPI串行外围接口之前,我们首先要对其背景及其研究的目的要有所了解。1.1课题研究背景数据传送有串行传送和并行传送两种方。并行传送以其高速度占领了数据传送领域很长一段时间,采用并行传送
18、的集成电路、外围设备可谓不计其数,从CPU、RAM/ROM到打印机。从原理上讲,串行传输是按位传输方式,只利用一条信号线进行传输,例如:要传送一个字节(8位)数据,是按照该字节中从最高位逐位传输,直至最低位。 而并行传输是一次将所有一字节中8位信号一并传送出去。自然最少需要8根信号线。 如果按每次传送的数据流量来看,并行传输要远快于串口,在电脑发展初期,由于数据传输速率不是很高,并行传输还是很快的。 但并行传输也有它的缺点: (1)干扰问题上面的人已经提到。 其根本原因是由于传输速率太快,一般达到100M以上,信号线上传递的频率将超过100MHz,想想看,调频收音机的频率也不过88108MHz
19、,也就是说,若用并行传输的话,是8根天线放在一起来传输信号,易发生干扰。但如果加强屏蔽,减小信号线间的耦合电容,是可以继续增大传输速率的,不过这将变得不现实,因为这必然导致信号线将耗用更多金属,截面积更大。但这并不是不能解决的问题。 (2)并行传输速率提升困难的最主要原因是同步问题 并行传输时,发送器是同时将8位信号电平加在信号线上,电信号虽然是以光速传输的,但仍有延迟,因此8位信号不是严格同时到达接受端,速率小时,由于每一字节在信号线上的持续时间较长,这种到达时间上的不同步并不严重,随着传输速率的增加,与8位信号到达时间的差异相比,每一字节的持续时间显得越来越短,最终导致前一字节的某几位与后
20、一字节的几位同时到达接受端,这就造成了传输失败,而且随着信号线的加长这种现象还会越发严重,直至无法使用。这是并口传输的致命缺点。 串行传输由于只有一位信号在信号线上,没有位同步问题,因此传送频率可以继续提高,当前传输速率已经达到1Gb/s(1000M)以上,而且还在提高,而并行传输在100Mb/s左右就停滞不前了,可以预见,串行传输将会比并行传输越来越快。 为此,串行传输已经成为当今外设接口的主流传输方式,为此,摩托罗拉公司开发出了同步外设接口(SPI),并随着时间不断改进,由于其占用线的资源少,且稳定可靠,该总线大量用在与EEPROM、ADC、FLASH和显示驱动器之类的慢速外设器件通信,现
21、在很多单片机等都有SPI模块来连接外围设备,从而使主机与外设传输数据更加方便。1.2 SPI研究目的及意义SPI是一种同步串行通讯方式,是一种三线同步总线,它是一种常用的标准接口,由于其使用简单方便且节省系统资源,很多芯片都支持该接口,SPI接口主要应用在EEPROM,FLASH,实时时钟,AD转换器,还有数字信号处理器和数字信号解码器之间等等。当然,串口通信还有其他的接口方式,SPI接口和UART相比,多了一条同步时钟线,对通信双方的时序要求不严格不同设备之间可以很容易结合,而且通信速度非常快。一般用在产品内部元件之间的高速数据通信上面,如大容量存储器等。这就凸现SPI的好处。为此,研究SP
22、I接口,可以更容易了解并外围器件传输过程,并对其已定义的进行改进,并使之更加可靠,功能强化。SPI接口的扩展有硬件和软件两种方法,软件模拟SPI接口方法虽然简单方便,但是速度受到限制,在高速且日益复杂的数字系统中,这种方法显然无法满足系统要求,所以采用硬件的方法实现最为切实可行。这使得与SPI有关的软件就相当简单,使CPU有更多的时间处理其他事务。SPI接口是一种事实标准,并没有标准协议,大部分厂家都是参照Motorola的SPI接口定义来设计的,但正因为没有确切的版本协议,不同厂家产品的SPI接口在技术上存在一定的差别,容易引起歧义,有的甚至无法互联(需要用软件进行必要的额修改)。当前,基于
23、主从处理器结构的系统架构已经成为一种主流(如 DSP+FPGA,MCU+FPGA等),FPGA是在ASIC的基础发展出来的,它克服了专用 ASIC不够灵活的缺点。与其他中小规模集成电路相比,其优点主要在于它有很强的灵活性,即其内部的具体逻辑功能可以根据需要配置,对电路的修改和维护很方便。目前,FPGA的容量已经跨过了百万门级,使得 FPGA成为解决系统级设计的重要选择方案之一。在这种架构下,应用FPGA来构建SPI通信接口是切实可行的。并FPGA是可编程并可重复擦写的,从而具有更大的灵活性,在协议不标准的情况下,可根据外围设备的不同而灵活的改动SPI设计,使设计周期大大降低,并与外围设备连接更
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 FPGA SPI 串行 外围 接口 设计
链接地址:https://www.31ppt.com/p-4863414.html