位置:51电子网 » 技术资料 » 存 储 器

双口RAM在自动化系统中的应用

发布时间:2008/5/26 0:00:00 访问次数:2478

        

    

    摘要:对双口ram操作中共享冲突的几种方式进行了讨论和分析。给出了防止这些共享冲突的基本方法,同时结合其在自动化系统中的应用给出了双口ram和现场总线、工业以太网的接口应用方案。

    关键词:双口ram;现场总线;工业以太网;can;dsp

    1 引言

    在现代工业测控系统中,由于对系统的功能和性能要求越来越高,一般都采用高性能的cpu(如dsp)或嵌入式系统(如386ex等来实现测控功能,并将这些智能设备联网组成自动化系统。在早期的应用中,设备联网普遍采用rs232/rs422/rs485方式。随着计算机技术的发展,现场总线技术在自动化系统中的应用逐渐普遍,而采用工业以太网技术则是今后技术发展的一个趋势。

    测控设备的设计可以采用单cpu系统完成整个测控功能和系统联网功能,这样做的缺点是使整个系统的软件设计复杂,系统适应性差,cpu负担较重,影响系统的整体性能。另外一种做法是采用双cpu系统,即用一个cpu完成测控功能,另一个cpu完成系统联网和接口通信功能。由于双cpu系统可按功能分开设计,因此可简化系统软件设计,使系统具有良好的扩展性,以便更好地应对不同的组网要求,提高系统的整体性能。

    

    

    cpu间的通信可以采用串口、并口等方式,但它们共同的缺点是操作复杂、速度慢。因此,随着价格的不断下降,采用双口ram方式在两个cpu系统间交换数据是一个不错的选择。但双口ram有时会发生共享冲突问题。下面讨论防止共享冲突的几种方式。

    

    2 双口ram防止共享冲突的方式

    一般双口ram都提供了两个完全独立的端口,每个端口都有自己的控制线、地址线和数据线,cpu对双口ram端口的操作等效于对它的外部ram进行操作。双口ram在使用上要注意的问题是如何避免两端cpu对同一ram单元的争用,一般来说,双口ram可提供三种防冲突方式,下面结合cypress公司的cy7c144进行说明。cy7c144是采用低功耗cmos工艺生产的8×8k位容量、高速存取(20ns)的双端口静态ram,它还可以用多芯片级联来扩展字宽,其内部原理框图如图1所示。

    2.1 插入等待状态的防冲突方式

    当左右端口同时对同一地址的ram存储单元进行存取时,cy7c144芯片内部的仲裁单元将会给出busy信号。具体来说,busyl、busyr信号的正常状态为高电平,当左端口对一存储单元进行存取时,若右端口也对该存储单元进行操作,则芯片内部的仲裁单元会使信号busyr为低,直到左端口操作完成后再将busyr恢复为高电平。设计中可以利用busy信号作为cpu的等待状态输入,并利用该信号使cpu在操作过程中插入等待状态,避免两端同时对双口ram进行操作。

    

    

    2.2 信号灯防冲突方式

    双口ram通过申请和释放端口的信号灯(也称为令牌)来操作存储单元可以避免发生冲突。一个信号灯对应相应数量的存储单元。双口ram的两端均可对信号灯进行存取。当左端口向信号灯写入“0”再回读信号灯时,若信号灯也为“0”表示左端口拥有对存储单元的控制权,否则表示右端口拥有对存储单元的控制权。不管是否取得对存储单元的控制权,操作完成后都应向信号灯写入“1”以释放信号,从而避免资源的死锁。

    cy7c144芯片提供8个信号灯,每个信号灯的存储单元为8×2k位。对信号灯进行操作时,片选信号(cel、cer)应为高电平,信号灯使能信号(seml、semr)为低电平。a0~a2表示信号灯地址,数据线最低位i/o0代表信号灯的值。对存储单元存取的一般过程如图2所示。

    2.3 中断防冲突方式

    双口ram中最高地址的两个存储单元可以作为信箱使用,左右两端可以同时对它进行操作。其中最高地址为右端口的信箱,次高地址为左端口信箱。以cy7c144芯片为例,偏移地址1ffeh为左端口信箱,偏移地址1fffh为右端口信箱。右端口写入左端口信箱1ffeh时,左端口的信号intl将变为低,左端口读自己的信箱1ffeh时,信号intl将重新为高;

        

    

    摘要:对双口ram操作中共享冲突的几种方式进行了讨论和分析。给出了防止这些共享冲突的基本方法,同时结合其在自动化系统中的应用给出了双口ram和现场总线、工业以太网的接口应用方案。

    关键词:双口ram;现场总线;工业以太网;can;dsp

    1 引言

    在现代工业测控系统中,由于对系统的功能和性能要求越来越高,一般都采用高性能的cpu(如dsp)或嵌入式系统(如386ex等来实现测控功能,并将这些智能设备联网组成自动化系统。在早期的应用中,设备联网普遍采用rs232/rs422/rs485方式。随着计算机技术的发展,现场总线技术在自动化系统中的应用逐渐普遍,而采用工业以太网技术则是今后技术发展的一个趋势。

    测控设备的设计可以采用单cpu系统完成整个测控功能和系统联网功能,这样做的缺点是使整个系统的软件设计复杂,系统适应性差,cpu负担较重,影响系统的整体性能。另外一种做法是采用双cpu系统,即用一个cpu完成测控功能,另一个cpu完成系统联网和接口通信功能。由于双cpu系统可按功能分开设计,因此可简化系统软件设计,使系统具有良好的扩展性,以便更好地应对不同的组网要求,提高系统的整体性能。

    

    

    cpu间的通信可以采用串口、并口等方式,但它们共同的缺点是操作复杂、速度慢。因此,随着价格的不断下降,采用双口ram方式在两个cpu系统间交换数据是一个不错的选择。但双口ram有时会发生共享冲突问题。下面讨论防止共享冲突的几种方式。

    

    2 双口ram防止共享冲突的方式

    一般双口ram都提供了两个完全独立的端口,每个端口都有自己的控制线、地址线和数据线,cpu对双口ram端口的操作等效于对它的外部ram进行操作。双口ram在使用上要注意的问题是如何避免两端cpu对同一ram单元的争用,一般来说,双口ram可提供三种防冲突方式,下面结合cypress公司的cy7c144进行说明。cy7c144是采用低功耗cmos工艺生产的8×8k位容量、高速存取(20ns)的双端口静态ram,它还可以用多芯片级联来扩展字宽,其内部原理框图如图1所示。

    2.1 插入等待状态的防冲突方式

    当左右端口同时对同一地址的ram存储单元进行存取时,cy7c144芯片内部的仲裁单元将会给出busy信号。具体来说,busyl、busyr信号的正常状态为高电平,当左端口对一存储单元进行存取时,若右端口也对该存储单元进行操作,则芯片内部的仲裁单元会使信号busyr为低,直到左端口操作完成后再将busyr恢复为高电平。设计中可以利用busy信号作为cpu的等待状态输入,并利用该信号使cpu在操作过程中插入等待状态,避免两端同时对双口ram进行操作。

    

    

    2.2 信号灯防冲突方式

    双口ram通过申请和释放端口的信号灯(也称为令牌)来操作存储单元可以避免发生冲突。一个信号灯对应相应数量的存储单元。双口ram的两端均可对信号灯进行存取。当左端口向信号灯写入“0”再回读信号灯时,若信号灯也为“0”表示左端口拥有对存储单元的控制权,否则表示右端口拥有对存储单元的控制权。不管是否取得对存储单元的控制权,操作完成后都应向信号灯写入“1”以释放信号,从而避免资源的死锁。

    cy7c144芯片提供8个信号灯,每个信号灯的存储单元为8×2k位。对信号灯进行操作时,片选信号(cel、cer)应为高电平,信号灯使能信号(seml、semr)为低电平。a0~a2表示信号灯地址,数据线最低位i/o0代表信号灯的值。对存储单元存取的一般过程如图2所示。

    2.3 中断防冲突方式

    双口ram中最高地址的两个存储单元可以作为信箱使用,左右两端可以同时对它进行操作。其中最高地址为右端口的信箱,次高地址为左端口信箱。以cy7c144芯片为例,偏移地址1ffeh为左端口信箱,偏移地址1fffh为右端口信箱。右端口写入左端口信箱1ffeh时,左端口的信号intl将变为低,左端口读自己的信箱1ffeh时,信号intl将重新为高;

相关IC型号

热门点击

 

推荐技术资料

循线机器人是机器人入门和
    循线机器人是机器人入门和比赛最常用的控制方式,E48S... [详细]
版权所有:51dzw.COM
深圳服务热线:13751165337  13692101218
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!