微控制器双端口RAM操作中冲突检测的装置和方法制造方法及图纸

技术编号:2883587 阅读:211 留言:0更新日期:2012-04-11 18:40
通过微控制器地址总线将微控制器耦合到双端口RAM。通过外设地址总线将外设耦合到双端口RAM。地址比较器比较微控制器地址总线和外设地址总线以产生一个中断微控制器的冲突错误信号。逻辑功能单元耦合在微控制器和双端口RAM之间。错误信号至少是部分根据微控制器地址总线的第一地址和外设地址总线上的第二地址的比较,以及是否微控制器和外设之间是对双端口RAM同时访问。因此,当微控制器同时存取被禁止和通过冲突错误信号禁止被通知到微控制器的时候,外设是被允许存取的。(*该技术在2021年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术一般涉及存储器存储结构,更具体地,涉及对双端口RAM操作的冲突检测。双端口存储器用于在两个数据源如微控制器和外设数据源间执行共享存储空间。因为从双端口存储器中读回的数据不改变它的内容,所以同时读处理不产生问题而同时写入处理却会产生问题。更特别地,因为数据能在任何时间被传递到任何地址的存储器中,因而对同一地址同时写入操作可能将内容改变成为一个不确定的值。发生的这种情况就称为“写入冲突”。写入冲突问题已经通过防止冲突发生的约束确定如确定重缓冲结构或通过总线仲裁的时分复用得到解决。这种仲裁通常是写入要求和授权协议的形式,授权协议暂停从处理直到主处理放弃对该地址的访问并将一授权返回到从处理。在这种总线仲裁结构中,共享存取是按时间计划的,当主处理没有及时授权总线让从处理向其内写入数据时给出错误指示。另一个仲裁的通用形式是将写入存取分时,这样就不会有两个装置能够同时写入任何一个地址。这种分时仲裁设计要求以一预定的方式定时以防止同时写入的出现。这些关于写入冲突问题的解决方法引入了一个对存储器的任何位置的存储器写入处理的不可预知的时间延迟。任何一个预定时间的仲裁涉及一个时间处罚,以及仲裁硬件设计的复杂性。所以,现在需要的是可以排除或减轻这些问题的存储器存储结构。同时写入处理发生在允许微控制器和外设都对双端口RAM(“DPR”)执行读出和写入的操作的情况。如果微控制器和外设都访问DPR的相同地址,则微控制器的存取被禁止而外设的存取继续。如果微控制器被中断,可以采取诸如对作为错误的存取操作计数或重试该存取之类的合适的动作。在本专利技术的实施例中,通过微控制器数据总线和微控制器地址总线将微控制器耦合到双端口RAM。通过外设数据总线和外设地址总线将外设耦合到双端口RAM。地址比较器有输入端口,输入端口耦合到微控制器写入信号、微控制器地址总线、和外设地址总线。地址比较器具有在耦合到微控制器中断口的控制总线上产生中断信号的功能。在微控制器和双端口RAM之间插入的是逻辑功能单元,逻辑功能单元可以由例如电路或软件实现。逻辑功能单元的输出端耦合到双端口RAM。中断信号是至少部分根据微控制器地址总线的第一地址和外设地址总线的第二地址的比较,以及微控制器和外设是否同时访问双端口RAM而产生的。通过下面结合示例性地说明本专利技术的特点,从对附图进行的详细描述中,本专利技术的其他方面和优点将会变得更加清楚。附图说明图1示出了一个根据本专利技术原理的存储器存储结构的例子。如图1所示,为了说明的目的,微控制器10和外设14共享通用的双端口存储器12。微控制器和外设的对同一地址同时存取,例如写入操作,会产生写入冲突错误或中断微控制器但允许外设继续执行存取操作的中断信号。对于微控制器10和外设14的数据流是流入双端口RAM(“DPR”)12和从双端口RAM中流出的。微控制器10和外设14每个都有地址总线和数据总线使从DPR12两侧都可以随机存取。微控制器10具有内置中断能力。如果发生了通过微控制器10和外设14在同一地址的同时存取(例如,写入)操作,则通过线16上的中断信号中断微控制器,这样只有外设被允许访问DPR12中的该地址。接着微控制器10可以进行合适的动作。根据图1所示的实施例,微控制器10通过微控制器数据总线18和微控制器地址总线20和DPR12的第一数据端口相连。微控制器10在微控制器数据总线18上对DPR12进行存取。逻辑功能单元22插入在微控制器10和DPR12之间。逻辑功能单元22的输出连接到DPR12的第一数据端口。外设14通过外设数据总线30和外设地址总线32连接到DPR12的第二数据端口。外设14通过外设数据总线30访问DPR12。地址比较器36有四个输入端口。地址比较器36的这四个输入端口耦合到微控制器写入信号、微控制器地址总线20、外设写入信号、和外设地址总线32。地址比较器36在线16上产生冲突错误信号。冲突错误信号的产生是基于(a)微控制器地址总线20的第一地址和外设地址总线32的第二地址的比较,以及(b)微控制器10和外设14是否是同时存取DPR12(例如,写入到)。例如,(a)外设14和微控制器10不同时写入时,或(b)外设写入的DPR中的地址和微控制器写入的DPR中的地址是不同的,则地址比较器36不产生冲突错误信号。但是,如果外设14和微控制器同时写入,以及如果外设写入的DPR中的地址和微控制器写入的DPR中的地址是相同的,则地址比较器36就产生冲突错误信号。在本例中,冲突错误信号指示一个写入冲突。在图1所示的特定的实施例中,地址比较器36产生的写入冲突的中断信号通过控制线16的方式施加到微控制器10的中断端口。冲突信号也连接到逻辑功能单元的输入端口。地址比较器36输出的冲突错误信号通常是一个逻辑假状态(例如,代表“0”)。当在其假状态的中断信号输入到逻辑功能单元22时,逻辑功能单元22的输出是(a)当在微控制器数据总线18上的从微控制器10输出的数据是真时,在其为逻辑真状态(例如,代表“1”)或(b)当在微控制器数据总线18上的从微控制器10输出的数据是假时,在其为逻辑假状态(例如,代表“0”)。作为例子,逻辑功能单元可以实现如下表所描述的逻辑功能。本领域技术人员都知道,该表表示的逻辑功能可以通过多种方法实现,包括硬件或软件逻辑“与”操作。 因此,当冲突错误信号是逻辑假状态时,逻辑功能单元22的输出跟随着逻辑功能单元22的输入B。微控制器10在其中断端口接收来自线16的冲突错误信号。微控制器10根据冲突错误信号确定是否使能或不使能从微控制器输出数据。当通常是逻辑假状态时的该冲突错误信号变成逻辑真状态时,从微控制器10到DPR12的写入信号被有效地不使能。因此,在外设14的写入操作进行的同时,微控制器的写入操作被中断并被禁止。在到DPR12的存取时间需要被预知的应用中,本专利技术保证对于外设14到DPR12的存取。由于微控制器10和外设14二者试图同时存取操作(例如,写入操作)而产生错误并按照上述示范的实施例中的描述该同时存取操作是可以防止的。外设14在写入到DPR12时有优先权并且微控制器10在错误发生前预先被中断。根据本专利技术的特定应用,微控制器10可以具有优先权而不是外设14具有优先权。在这种情况下,如图所示的微控制器10和外设14的相对位置关系则要被翻转,冲突错误信号施加到外设14上。并且,DPR12不限于存储器设备且可以是任何合适的双端口装置。在本专利技术的特定形式已经被说明和描述的同时,可以看出在不背离本专利技术的精神和范围的前提下可以有多种改进。权利要求1.一种装置,包括双端口设备;第一设备,包括中断输入,以及实施地耦合到双端口设备的第一数据总线和第一地址总线;第二设备,包括第二数据总线,以及实施地耦合到双端口设备的第二据总线和第二址总线;和地址比较器,实施地耦合到第一地址总线和第二地址总线,以便通过第一和第二设备根据预定的双端口设备的同时存取产生的冲突错误信号。2.如权利要求1中的装置,还包括逻辑功能单元,实施地耦合在第一和第二装置之间,以响应冲突错误信号禁止第一装置而停止对双端口装置的访问;3.如权利要求2中的装置,其中,第一装置产生存取信号,以及逻辑功能单元包括至少一个冲突错误信号和存取信号的本文档来自技高网...

【技术保护点】
一种装置,包括:双端口设备;第一设备,包括中断输入,以及实施地耦合到双端口设备的第一数据总线和第一地址总线;第二设备,包括第二数据总线,以及实施地耦合到双端口设备的第二据总线和第二址总线;和地址比较器,实施地耦合到第一地址总 线和第二地址总线,以便通过第一和第二设备根据预定的双端口设备的同时存取产生的冲突错误信号。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:西奥多J迪佩纳尔斯蒂芬纳斯P杜文哈格迈克尔S派斯卡
申请(专利权)人:密克罗奇普技术公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1