AT24系列存储器数据串并转换接口的IP核设计_第1页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、at24系列存储器数据串并转换接口的ip核设计1 i2c的基本概念i2c总线协议是philips公司推出的总线协议。它是多主机总线,通过2根线(sda-aserial data line,scl-a serial clock line)与衔接到总线上的器件之间传送信息,按照地址识别每个器件。例如,微控制器、驱动器、存储器、键盘,衔接的器件可以工作在发送和(或)接收状态。很明显,lcd驱动器等一些器件只能是接收器,而存储器可以发送和接收数据。对于at24系列存储器来说,器件的地址是通过把地址输入端a0,a1,a2举行硬件衔接来确定的。图1是典型的i2c总线结构。sda和scl都是双向线,通过上拉

2、接正电源。当总线空闲时,这两根线处于高电平状态,连到总线的器件的输出级必需是开漏极或集电极开路,以具有线“与”的功能。设备与总线的接口2所示。2 i2c总线的数据传输在i2c总线的数据传输过程中,定义了开头和停止信号。3所示,scl保持“高”,sda由“高”变为“低”为开头信号;scl保持“高”,sda由“低”变为“高”为停止信号。开头(s)和停止(p)信号由主器件产生。在时钟高电平期间上的数据必需保持稳定,4所示,惟独在时钟线scl的时钟低电平期间,sda线上高电平或低电平才干变幻。到sda线上的每个字节必需是8位长度,每次传输的字节数是不受限制的,每个字节后面必需跟一个响应位。假如一个接收

3、器件在完成其他功能前(如一个内部中断)不能接收另一个数据的完整字节时,可以使时钟保持低电平,以促使发送器进入等待状态。当接收器预备好接收下一个数据字节并释放scl线,数据传输继续举行。图5表示出了i2c总线上的数据传送时序。数据传送具有应答是必需的。与应答对应的时钟脉冲由主控器件产生。发送器在应答期间必需下拉sda线。当寻址的被控器件不能应答时,数据保持为高,于是主器件产生停止信号终止传输。3 ip核的设计3.1该ip核设计与软件实现的比较在i2c总线的应用中,实现微机与at24系列存储器之间的通信,可以把微机的通用i/o口作为i2c总线的接口,通过汇编由软件控制实现数据的传输。因为软件在操作

4、上时光的缘由,速度总要受到限制。并且汇编控制也很难作为一个统一的标准在应用中推广。通过ip核设计,我们可以在硬件上实现数据串并转换的目的。工作的速度只与存储器本身的特性有关,克服了软件在此方面的不足。3.2系统设计计划该系统主要由i2c串行移位寄存器(ssr)、数据缓冲寄存器(idbr)、控制寄存器(icr)、状态寄存器(isr)、从地址寄存器(iccr)、scl产生器(scl generator)及其他总线组成。图6为其基本内部结构。在该系统中,ssr把并行数据变为串行数据,传输给存储器,或者把存储器的串行数据变为并行数据,传输为处理器;idbr把并口来的数据或把被转换成并行的数据暂且装载起

5、来;icr控制着囫囵系统的读/写、数据的转换等操作;isr则监视着系统的状态。3.3数据的通信格式主控制器(cpu)假如要从存储器读数据或者写(0表示写)数据到存储器,则需经过接口转换。sda上的信号传输要遵循一定的格式。在主控制器(cpu)给存储器写数据时,把设备地址、字节地址和数据送给接口,接口完成与存储器之间的数据交换。如下:其中确认(a)是存储器传送给接口的信号,其余的如开头(s)、设备地址等信号是接口产生的信号。主控制器从接口读数据时,会把设备地址、字节地址和读信号告知接口,接口通过与存储器举行数据交换,把数据读出来,送给主控制器。数据格式如下:其中确认(a)和数据是存储器产生的,其

6、余的如开头(s)、设备地址、停止(p)等信号是接口产生的。3.4ip核的设计该ip核的vhdl设计从低到高共5个模块。这几个模块分离为头地址移位寄存器模块、数据移位寄存器模块、计数器模块、控制模块和外围综合模块。头地址移位寄存器是用来装载写入(读出)设备地址,在控制模块的控制下,把设备地址移位到串行数据线sda上。数据移位寄存器是用来装载写入/读出的数据、字节地址,并在控制模块的控制下,把写入的数据、字节地址移位到sda上,或者把从sda读出的串行数据变为并行数据,以传送给主控制器。在该ip核设计中,需要对移位的数据字节举行记数,计数器模块实现该功能。控制模块主要通过以刚提到的三个模块为基础,

7、实现了数据的单向传输,也就是把双向的数据线分成2根单向的数据线来传输数据。而外围综合模块则把2根单向的的数据线综合成一根双向的数据线sda,实现了接口的串并转换功能。3.5vhdl的实现与硬件描述语言vhdl(very-high speed ic hard-ware description language)是一种用于电路设计的高层次描述语言,具有行为级、寄存器传输级和门级等多层次描述,并具有容易、易读、易修改和与工艺无关等优点。本设计采纳max+plus 9.5 作为综合工具,对设计的vhdl程序举行调试和波形仿真。在调试中,max+plus 生成所需要的i2c接口模块,7所示,表示了囫囵接口的外部结构。其中各个管脚的意义如下:在仿真中,挑选epf10k10lc84-3 作为下载芯片来实现模拟仿真。当向存储器写数据时,串行时钟线和数据线得到图8所示的仿真波形。当从芯片中读数据时,串行数据线和时钟线上得到的仿真波形9。4结论以上介绍了基于i2c总线协议的at24系列存储器数据串并转换接口的vhdl设计,该

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论