一种多接口SRAM读写控制电路及方法,所述控制电路包括接口信号转换模块和带优先级的多路选择及反馈模块,通过简单的硬件电路,判断系统中访问SRAM的各模块接口的优先级,以协调各模块接口交替连续访问SRAM。本发明专利技术既节省了软件开销,又大大提高了SRAM的访问效率,可以广泛应用于嵌入式SOC芯片。
【技术实现步骤摘要】
本专利技术涉及静态随机存储器控制领域,尤其涉及一种多接口 SRAM读写控制电路及方法。
技术介绍
SRAM (Static Random-Access Memory,静态随机存储器)是一种具有静态存取功能的内存,由于不需要刷新电路即能保存其内部存储的数据,SRAM已经成为目前主流的存储器,并在嵌入式SOC芯片(System on Chip,系统级芯片)中广泛应用。然而,随着集成电路产业的发展,SOC系统内部集成的模块越来越多,这些模块经常需要访问SRAM,当这些模块进行一些并行操作时,由于SRAM同时只能被一个模块访问,所以这些模块必须交替访问SRAM,传统的方法是通过软件协调的方式让它们进行交替访问,这种方法既耗费大量软件资源,又无法实现模块交替时连续访问SRAM,使得SRAM存在等待访问的空闲时间,大大影响了 SRAM的访问效率。
技术实现思路
本专利技术提供一种多接口 SRAM读写控制电路及方法,其目的在于使用硬件方式协调各模块对SRAM的交替访问,从而提高SRAM的访问效率。为达到上述目的,本专利技术采用的技术方案是一种多接口 SRAM读写控制电路,在 SRAM所在系统中,针对需要访问SRAM的多个模块接口,所述读写控制电路设置有多个接口,该多个接口与多个模块接口一一对应,所述读写控制电路包括接口信号转换模块和带优先级的多路选择及反馈模块,其中所述接口信号转换模块实现各模块接口与SRAM接口之间信号的双向匹配,S卩将各模块接口提供的访问信号转换为符合SRAM要求的输入信号,并且把从SRAM读取的输出信号转换为符合各模块接口时序要求的接收信号;所述接口信号转换模块包括以下逻辑电路(1)片选信号转换逻辑,用于将各模块接口提供的访问信号转换为符合SRAM要求的片选信号;(2)读写信号转换逻辑,用于将各模块接口提供的读写信号转换为符合SRAM要求的读写信号;(3)地址信号转换逻辑,用于将各模块接口提供的地址信号转换为符合SRAM空间大小和时序要求的地址信号;(4)输入数据信号转换逻辑,用于将各模块接口提供的输入数据信号转换为符合SRAM 时序要求的输入数据信号;(5)输出数据信号转换逻辑,用于将SRAM提供的输出数据信号转换为符合各模块接口时序要求的接收数据信号;所述带优先级的多路选择及反馈模块包括选择单元和反馈单元,所述选择单元负责判断各模块接口的优先级,并从访问SRAM的多个模块接口中选择优先 级最高的一个模块接口对SRAM进行访问,同时所述反馈单元根据选择单元的最终选择结果向各模块接口发出 反馈信号;其中所述选择单元主要由一组多路选择器组成,每个多路选择器负责一种输入信号的选 择,每个多路选择器的输入为所有模块接口提供的经过相应接口信号转换逻辑转换后的一 种输入信号,每个多路选择器的输出与SRAM输入信号 对应,且所有多路选择器共用一 个使能控制逻辑,该使能控制逻辑为各模块接口片选信号的逻辑运算电路,使能控制逻辑 为各多路选择器提供选择使能信号;所述反馈单元由逻辑与门和逻辑或门组成,优先级最高的模块接口接收到的反馈信号 始终为0,表示优先级最高的模块接口始终不会接收到SRAM忙的反馈信号;其余优先级较 低的各模块接口接收到的反馈信号由所有优先级高于该模块接口的模块接口片选信号先 进行逻辑或,再把逻辑或的结果和该模块接口片选信号进行逻辑与产生。一种多接口 SRAM读写控制方法,多个所述模块接口同时访问SRAM时,每个模块接 口所对应的接口信号转换模块将该模块接口提供的访问信号转换为符合SRAM时序要求和 存储空间要求的输入信号,并将该输入信号输入至所述带优先级的多路选择及反馈模块中 的选择单元,选择单元通过判断各模块接口的优先级,从中选择出优先级最高的模块接口 对SRAM进行访问;在多个模块接口同时访问SRAM的过程中,当优先级最高的模块接口对SRAM发起访 问请求时,所述选择单元的输出为优先级最高的模块接口提供的对SRAM的输入信号,该 输入信号为经过所述接口信号转换模块转换后的输入信号;当优先级最高的模块接口未 对SRAM发起访问请求时,所述选择单元判断优先级次高的模块接口是否对SRAM发起访问 请求,若优先级次高的模块接口对SRAM发起访问请求,则所述选择单元输出为优先级次高 的模块接口提供的对SRAM的输入信号,该输入信号为经过所述接口信号转换模块转换后 的输入信号;以此类推,直至优先级最低的模块接口对SRAM提出访问请求,所述选择单元 选择优先级最低的模块接口提供的对SRAM的输入信号作为输出;若所有模块接口均未对 SRAM提出访问请求,则所述选择单元输出默认值O或I ;所述选择单元的选择结果通过反馈单元向各模块接口发出反馈信号,各模块接口根据 接收到的反馈信号调整各自状态,选择是否继续等待访问SRAM或者转向进行其他操作。上述技术方案中的有关内容解释如下1.上述方案中,所述“多接口”指的是SOC芯片中各模块访问SRAM的接口,SOC芯片中 包括多个需要访问SRAM的模块,比如CPU、USB控制器、SD控制器、DMA控制器、BCH和加解 密控制器等。上述各模块中,CPU通过总线访问SRAM存储一些变量信息以及进行中断处理实现 压栈出栈操作;不占总线的DMA控制器在SRAM和其他模块之间搬运大批量数据时,需要长 时间访问SRAM ;USB控制器和SD控制器通过USB或SD接口接收到的数据需要存储到SRAM 或者需要从SRAM读取数据传送出去时,需要无等待访问SRAM ;BCH通过纠错机制发现从芯 片外部存储到SRAM的数据有错时需要先从SRAM中读取错误数据进行纠错后再写回对应地 址的SRAM单元;加解密控制器通常需要从SRAM中读取原始数据经过加解密后再把加解密 后的数据存入SRAM。2.上述方案中,所述SRAM的输入信号通常至少包括片选信号、地址信号、读写信号、输入数据信号和时钟信号,SRAM的输出信号通常至少包括输出数据信号,其中,时钟信 号可以直接从系统时钟接入。3.上述方案中,所述接口信号转换模块包括片选信号转换逻辑、读写信号转换逻 辑、地址信号转换逻辑、输入数据信号转换逻辑以及输出数据信号转换逻辑。由于各模块接 口访问SRAM时,提供的片选信号、读写控制信号、访问地址信号以及访问数据信号在极性、 数据宽度以及时序上与所访问的SRAM可能不一致,因此,需要根据所选择的SRAM的时序 要求和存储空间大小,对各模块接口访问信号进行转换处理,同时,当各模块接口访问SRAM 读取输出数据信号时,也需要根据各接口模块的要求把从SRAM读取到的输出信号转换为 符合各模块接口时序要求的接收信号,其中所述片选信号转换逻辑根据各模块接口提供的访问信号,采用不同的硬件逻辑把访问 信号转换为符合SRAM要求的片选信号。例如当系统总线上的CPU访问SRAM时,没有直接 提供对SRAM的片选信号,而只提供了总线上的访问请求信号和访问地址信号,需要先通过 译码器对总线上发起的地址信号的高地址位进行译码,然后将译码结果与访问请求信号进 行逻辑与,从而生成CPU对SRAM的片选信号。还有一些模块接口提供的片选信号极性与SRAM片选信号极性相反,例如USB控 制器提供的片选信号是低有效,而SRAM要求的片选信号是本文档来自技高网...
【技术保护点】
一种多接口SRAM读写控制电路,其特征在于:在SRAM所在系统中,针对需要访问SRAM的多个模块接口,所述读写控制电路设置有多个接口,该多个接口与多个模块接口一一对应,所述读写控制电路包括接口信号转换模块和带优先级的多路选择及反馈模块,其中:所述接口信号转换模块实现各模块接口与SRAM接口之间信号的双向匹配,即将各模块接口提供的访问信号转换为符合SRAM要求的输入信号,并且把从SRAM读取的输出信号转换为符合各模块接口时序要求的接收信号;所述接口信号转换模块包括以下逻辑电路:(1)片选信号转换逻辑,用于将各模块接口提供的访问信号转换为符合SRAM要求的片选信号;(2)读写信号转换逻辑,用于将各模块接口提供的读写信号转换为符合SRAM要求的读写信号;(3)地址信号转换逻辑,用于将各模块接口提供的地址信号转换为符合SRAM空间大小和时序要求的地址信号;(4)输入数据信号转换逻辑,用于将各模块接口提供的输入数据信号转换为符合SRAM时序要求的输入数据信号;(5)输出数据信号转换逻辑,用于将SRAM提供的输出数据信号转换为符合各模块接口时序要求的接收数据信号;所述带优先级的多路选择及反馈模块包括选择单元和反馈单元,所述选择单元负责判断各模块接口的优先级,并从访问SRAM的多个模块接口中选择优先级最高的一个模块接口对SRAM进行访问,同时所述反馈单元根据选择单元的最终选择结果向各模块接口发出反馈信号;其中:所述选择单元主要由一组多路选择器组成,每个多路选择器负责一种输入信号的选择,每个多路选择器的输入为所有模块接口提供的经过相应接口信号转换逻辑转换后的一种输入信号,每个多路选择器的输出与SRAM输入信号一一对应,且所有多路选择器共用一个使能控制逻辑,该使能控制逻辑为各模块接口片选信号的逻辑运算电路,使能控制逻辑为各多路选择器提供选择使能信号;所述反馈单元由逻辑与门和逻辑或门组成,优先级最高的模块接口接收到的反馈信号始终为0,表示优先级最高的模块接口始终不会接收到SRAM忙的反馈信号;其余优先级较低的各模块接口接收到的反馈信号由所有优先级高于该模块接口的模块接口片选信号先进行逻辑或,再把逻辑或的结果和该模块接口片选信号进行逻辑与产生。...
【技术特征摘要】
1.一种多接口 SRAM读写控制电路,其特征在于在SRAM所在系统中,针对需要访问 SRAM的多个模块接口,所述读写控制电路设置有多个接口,该多个接口与多个模块接口一一对应,所述读写控制电路包括接口信号转换模块和带优先级的多路选择及反馈模块, 其中所述接口信号转换模块实现各模块接口与SRAM接口之间信号的双向匹配,即将各模块接口提供的访问信号转换为符合SRAM要求的输入信号,并且把从SRAM读取的输出信号转换为符合各模块接口时序要求的接收信号;所述接口信号转换模块包括以下逻辑电路(1)片选信号转换逻辑,用于将各模块接口提供的访问信号转换为符合SRAM要求的片选信号;(2)读写信号转换逻辑,用于将各模块接口提供的读写信号转换为符合SRAM要求的读写信号;(3)地址信号转换逻辑,用于将各模块接口提供的地址信号转换为符合SRAM空间大小和时序要求的地址信号;(4)输入数据信号转换逻辑,用于将各模块接口提供的输入数据信号转换为符合SRAM 时序要求的输入数据信号;(5)输出数据信号转换逻辑,用于将SRAM提供的输出数据信号转换为符合各模块接口时序要求的接收数据信号;所述带优先级的多路选择及反馈模块包括选择单元和反馈单元,所述选择单元负责判断各模块接口的优先级,并从访问SRAM的多个模块接口中选择优先级最高的一个模块接口对SRAM进行访问,同时所述反馈单元根据选择单元的最终选择结果向各模块接口发出反馈信号;其中所述选择单元主要由一组多路选择器组成,每个多路选择器负责一种输入信号的选择,每个多路选择器的输入为所有模块接口提供的经过相应接口信号转换逻辑转换后的一种输入信号,每个多路选择器的输出与SRAM输入信号对应,且所有多路选择器共用一个使能控制逻辑,该使能控制逻辑为各模块接口片选信号的逻辑运算电路,使能控制逻辑为各多路选择器提供选择使能信号;所述反馈单元由逻辑与门和逻辑或门组成,优先级最高的模块接口接收到的反馈信号始终为0,表示优先级最高的模块接口始终不会接收到SRAM忙的反馈信号;其余优先级较低的各模块接口接收到的反馈信号由所有优先级高于该模块接口的模块接口片选信号先进行逻辑或,再把逻辑或的结果和该模块接口片选信号进行逻辑与产生。2.根据权利要求1所述的读...
【专利技术属性】
技术研发人员:郑茳,肖佐楠,匡启和,林雄鑫,张文婷,
申请(专利权)人:苏州国芯科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。