




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
【通用型SPI总线的IP设计与实现】mbpsm总线控制器 摘要:相对于并行总线,串行总线具有结构简单的优点。近年来人们对系统功能和性能的需求不断地增长,使得处理器需要的外设越来越多。这时串行总线的优点就逐渐显现出来,因此应用的范围也越来越广。本文根据业界通用的SPI标准介绍了一种通用型SPI总线的IP设计与实现方法,采用Verilog-HDL语言完成了电路设计,并用FPGA验证了设计的可行性,并最终使得该设计作为一个完整独立的IP核成功地应用于一系列产品的设计中。 关键词:SPI总线;Verilog-HDL;FPGA;ASIC Design and Implementation of IP core for universal SPI bus ZHANG Bin, LIU Yu, RONG Jin-feng (Xian Supermicro Electronic CO., Ltd, Xian 710061,China) Abstract:Compare with parallel buses, serial buses have its own advantages, the structure of integrated circuit is much more simpler. Recently, Along with the increasing requirement of the function and the performance of device, the number of periphery equipment of CPU is being more and more larger. Under this background, serial buses advantage gradually bees more important, thus, its application margin bees wider and wider. In this thesis, aording to the usual standard of SPI in the field of IC, a method to design and realize IP core of a universal SPI buses is introduced and coded in Verilog-HDL, at the same time the feasibility of our method through FPGA is validated, and finally, this core has been used as an independent IP core in serials ASIC product suessfully. Keywords: SPI buses;Verilog-HDL;FPGA;ASIC 1引言 集成电路(Integrated Circuit ,IC)作为各种信息设备的核心,集成电路的产业规模和技术水平体现一个国家的科技实力、综合国力以及科学界和社会的影响力,也是国家战略性产业。因此不断研究、开发和应用IP技术,发展IC产业有着至关重要的意义。 随着SoC的规模不断扩大,集成的IP模块不断增多,复杂度不断加大,使得各个模块之间通信的问题越来越突出,为了解决这一问题,各大公司都相继推出自己的IP核互联规范。另外,长期以来,外围设备与主机CPU速度之间不匹配始终困扰着人们,影响了计算机系统的迅速发展,随着计算机处理能力及存储规模的迅速增长,这个问题更加突出。 2通用SPI总线介绍 串行外设接口(Serial peripheral interface, SPI)是由Motorola公司推出的一种同步串行外围设备接口。它是一个环形结构,只需要4条线就可以完成主、从设备与各种外围器件的全双工同步通信。在本设计中4根接口线分别是:串行时钟线SPI_CLK、主机输出/从机输入线SPI_DI、主机输入出/从机输出入线SPI_DO、从机选择线SPI_CS。 SPI 总线的主要特点有:可以同时发出和接收串行数据;可以当作主机或从机工作;提供频率可编程时钟;发送结束中断标志;写冲突保护;总线竞争保护等。 SPI系统可分为主机设备和从机设备两大类,其中主机提供SPI时钟信号和片选信号;从机是接受SPI信号的任何集成电路,包括A/D、D/A转换子系统或者其他的MCU等。当SPI工作时,在移位寄存器中的数据逐位从输出引脚输出,同时从输入引脚逐位接收数据。发送和接收都受控于SPI主设备的时钟信号SPI_CLK,从而保证了同步。 SPI_CLK上升沿读SPI_DI的数据,在下降沿输出SPI_DO数据。每次只读或者读写周期开始前,在SPI_CS为高电平期间至少需要产生两个周期的SPI_CLK时钟,以保证内部SPI接口的复位。 SPI接口每次读写时首先由MCU在第一个字节发送寄存器地址和控制位,由控制位指示是只读或读写操作。从第二个字节开始读写数据。串行收发时每字节的MSB在前首先发送,多字节方式寄存器地址自动增加,由SPI_CS判别读写是否结束。当控制位中W=0时,只进行读操作, 控制位中W=1时,进行读写操作,即读出旧的数据,写入新的数据。 3SPI总线读写操作数据格式介绍 SPI接口每次读写数据时,首先由MCU在第一个字节发送寄存器地址和控制位,由控制位指示是只读或只写操作,由第二个字节开始读写数据。串行收发时每字节的MSB首先发送,多字节方式寄存器地址自动增加,由SPI_CS判别读写操作是否结束,当控制位中W=0时只进行读操作,控制位中W=1时进行读写操作,即读出旧的数据并写入新的数据。如图1、2所示。 4SPI总线协议FPGA设计 本文涉及的SPI总线是通信处理芯片的MCU接口,主要功能是接收MCU的控制和发送芯片的告警,MCU的SPI总线作为主设备,通信处理芯片的SPI作为从设备。根据功能需求,本设计简化了SPI的完整协议,仅实现SPI的从模式。本设计中全部采用业内流行的Verilog-HDL语言来实现,用FPGA进行功能验证。 SPI模块接口信号定义如图3所示。 RESET信号是外部提供的硬件复位信号,低电平复位有效;SPI_CS为SPI总线访问使能信号,低电平有效;SPI_CLK为SPI总线访问输入串行时钟;SPI_DI为SPI总线访问输入串行数据;SPI_DO为SPI总线访问输出串行数据;ADDR5:0信号是通过SPI总线接口操作内部寄存器的地址信息,D_RD7:0信号为外部MCU通过SPI总线访问寄存器读出的数据,随地址ADDR5:0的变化而变化;D_WR7:0信号为外部MCU通过SPI接口写入寄存器的数据,WR为写使能,WR信号为高时,在SPI_CLK的上升沿把D_WR7:0数据写入到ADDR5:0的地址中。 SPI总线底层模块接口定义和连接关系如图4所示。 子模块SPI_CTL_GEN的作用是在SPI_CS为低电平期间对SPI_CLK计数,并产生移位寄存器做串并转换时需要定位指示信号ADDR_EN和WR。ADDR_EN为高电平时锁定移位寄存器的输出D_WR7:0即为SPI总线访问的地址ADDR5:0。WR为高电平时锁定移位寄存器的输出D_WR7:0即为SPI总线访问的数据。 子模块SPI_DATA_PRO作用是在SPI_CS为低电平期间对SPI_DI进行移位操作,在ADDR_EN和WR的指示位置分别输出地址操作ADDR5:0和写数据D_WR7:0;同时把需要读出的数据D_RD7:0,进行并串转换,通过移位寄存器到SPI_DO输出。 5SPI总线的电路仿真与FPGA验证 本设计作为芯片的一部分,进行全功能仿真,仿真工具采用的是Cadence 的NC-verilog工具;并采用ALTERACyclone3 系列EP3C25Q240进行了整个芯片的功能验证,其中包含了SPI接口进行配置寄存器和读取配置信息的操作。 图5给出了完整设计的全功能电路仿真结果的一部分截图。具体操作是对地址为0x0A的地址进行写操作,写入的数据是0xDB,如图所示。同时可以看到地址0x0A寄存器的初始值为0x5B,对SPI进行写操作的同时可以读出寄存器之前的原始值。 图6给出了完整设计的全功能电路仿真结果的一部分截图。具体操作是对地址为0x0A的地址进行读操作,读出的数据是0xDB,如图所示。与写入结果完全一致。 6结束语 本设计采用了Verilog高级硬件语言实现了电路设计,并封装为一个IP核,通过FPGA验证功能后,最终作为西安深亚电子有限公司三款通信芯片的MCU标准通信接口部分,分别使用日本富士通0.35m工艺,日本东芝0.35m工艺和中国台湾TSMC0.35m工艺一次流片成功。三款通信芯片在大量用户中使用稳定可靠。 本设计经过实践的检验已作为一个独立的IP核成功地应用于系列产品设计中,体现了非常高的可靠性和可移植性。 _ 1 ISO/IEC 13239,Information Technology-Tele- munication Exchange between Systems-High- Level Data Link Control(HDLC) ProceduresS. Switzerland: Jul, xx. 2 白光泽,基于Verilog-HDL的SPI IP核的设计与仿真实现,制造业自动化xx年10月
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 河南省新乡市2026届化学高一第一学期期中综合测试模拟试题含解析
- 桥梁养护管理培训课件
- 2025注册验船师资格考试(B级船舶检验法律法规)考前模拟试题及答案一
- 核心银行面试题及答案
- 2025注册验船师考试(B级船舶检验法律法规)综合能力测试题及答案一
- 北京市门头沟区2024-2025学年八年级上学期第一次月考物理试题含参考答案
- 2025年初级汽车维修工考试模拟试题集
- 2025年人工智能项目经理面试模拟题及答案详解
- 2025年碳排放权与碳期货市场关联研究面试高频考点
- 公务员面试题实例分析及答案
- 急性胆囊炎疾病概述
- 从零开始讲装置布置:建规、石化规、精细规在工程设计时如何合理选用
- 2025年危险品水路运输从业资格考试复习题库(共500题)
- 小红书运营合作协议书
- 工业固废处置协议书
- 艺术基金授课协议书
- 【杭州】2025年浙江杭州市萧山区综合行政执法局第一次招聘编外人员14人笔试历年典型考题及考点剖析附带答案详解
- 2025保密观题库题库及答案
- 中华人民共和国民营经济促进法
- TBIE004-2023通孔回流焊接技术规范
- DB32T 5045-2025政务服务“一件事一次办”服务规范
评论
0/150
提交评论