SPI接口的Verilog语言实现.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
SPI接口的Verilog语言实现

电子与电气工程系 课程设计、专题(综合)实验报告 课题名称__串行接口IP核的设计与验证(spi)_ 专 业____ 电子信息工程________ 班 级_____ 08电子1班__________ 学 号__0806012103_ 0806012104_ 姓 名___ 高江柯____吴冠雄__ ______ 成 绩________________________ 指导教师_______袁江南____________ 2011年 6 月 15 日 串行接口IP核的设计与验证(SPI) (FPGA作为主机) 实验目的: 通过本实验的学习,使学生掌握使用VHDL 设计一个实用数字系统的能力,以及单片机串行接口编程等知识,训练 VHDL以及单片机的编程与综合使用能力,培养工程设计的基本技能,为今后毕业设计以及实际工作奠定基础。 实验原理 SPI 接口是在 CPU 和外围低速器件之间进行同步串行数据传输,在主器件的移位脉冲下,数据按位传输,高位在前,地位在后,为全双工通信,数据传输速度总体来说比I2C 总线要快,速度可达到几Mbps。 SPI 接口是以主从方式工作的,这种模式通常有一个主器件和一个或多个从 器件,其接口包括以下四种信号: (1)MOSI –主器件数据输出,从器件数据输入 (2)MISO –主器件数据输入,从器件数据输出 (3)SCLK – 时钟信号,由主器件产生 (4)/CS –从器件使能信号,由主器件控制 在点对点的通信中,SPI 接口不需要进行寻址操作,且为全双工通信,显得简单高效。 SPI接口在内部硬件实际上是两个简单的移位寄存器,传输的数据为8位,在主器件产生的从器件使能信号和移位脉冲下,按位传输,高位在前,低位在后。下图所示,在 SCLK 的下降沿上数据改变,同时一位数据被存入移位寄存器。 实验步骤: 查找关于SPI的资料,认识理解SPI。 根据SPI传输数据的时序图构建出SPI的框图。 利用自顶向下的方法根据框图分模块进行程序的编写。 把各模块连接构成完整的SPI传输系统。 进行仿真验证。 在康芯开发板上验证此SPI系统收发及中断功能是否正常。(由于时间原因其步未能完成) 设计过程: 模块1: 输入说明: data7[7..0] : FPGA写数据到RAM的输入口。 enable : 为输入使能。 reset : 复位。 clk : 输入时钟。 contr_addr[5..0]: FPGA写数据到RAM的地址的最大值,即写入RAM中数据的个数。 feedback : SPI系统发送完数据的反馈,提示FPGA又可以重新写数据到RAM,然后发送。 输出说明: wr_en : 控制RAM写使能。 wr_addr : 写数据到RAM的地址控制,写一数据地址加一。 wr_clock : RAM写数据时钟,上升沿有效。 fullflag : RAM写满的标志。 data_out[7..0] : RAM中写入的数据。 模块说明: FPGA通过SPI发送数据,数据必须要有个缓存阶段。此设计中是利用RAM作为缓存。该模块就是数据写入RAM的控制器,并提示FPGA开始发送数据及发送多少个数据。SPI发送完数据后提示FPGA重新写数据到RAM继续发送。 仿真时序图: 模块2: 输入说明: data[7..0] :输入RAM的数据。 wraddress[5..0] :RAM写地下输入,写一数据地址加一。 wren :RAM写使能 rdaddress[5..0] :RAM读地址输入,读一数据地址加一。 rden :RAM读使能 wrclock

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档