首页> 中国专利> AHB总线访问片上SRAM的高速桥装置及其工作方法

AHB总线访问片上SRAM的高速桥装置及其工作方法

摘要

本发明公开了一种AHB总线访问片上SRAM的高速桥装置,包括寄存器和加一计数器,写操作时,访问AHB总线地址经寄存器寄存一拍后得到的SRAM地址,即上一个时钟周期的AHB总线地址;读操作时,在读操作数据返回拍,访问AHB总线地址经加一计数器加一计数后得到的预测地址,在读操作数据传输未完成拍,AHB总线地址为SRAM地址,即访问当前AHB总线地址。本发明还公开了一种AHB总线访问片上SRAM的高速桥装置的工作方法。本发明使用带有地址预测机制的总线桥加速大容量SRAM的读写访问,提高整个系统的运行效率。

著录项

  • 公开/公告号CN104679681A

    专利类型发明专利

  • 公开/公告日2015-06-03

    原文格式PDF

  • 申请/专利权人 山东华芯半导体有限公司;

    申请/专利号CN201510118530.0

  • 申请日2015-03-18

  • 分类号

  • 代理机构济南舜源专利事务所有限公司;

  • 代理人徐槐

  • 地址 250101 山东省济南市高新区齐鲁软件园大厦B座二层

  • 入库时间 2023-12-18 09:13:55

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-01-12

    授权

    授权

  • 2015-07-01

    实质审查的生效 IPC(主分类):G06F13/16 申请日:20150318

    实质审查的生效

  • 2015-06-03

    公开

    公开

说明书

技术领域

    本发明涉及数据高速处理领域,尤其涉及一种AHB总线访问片上SRAM的高速桥装置及其工作方法。

背景技术

在一个带有高速外设接口并能实现复杂数据处理功能的系统中,SRAM通常起着数据暂存的作用。使用大容量SRAM的初衷是提高系统效率,因为在各种存储设备中,读写速度从快到慢顺序依次是寄存器、SRAM、DRAM、FLASH、传统硬盘。在SOC系统中常以IP形式应用的CPU为提高效率自身带cache,内部有操作cache的接口。而系统其他数据流控制模块需要缓存数据时则可以选择总线上挂载大容量SRAM作为cache,好处在于可以供给多个主设备模块使用调度,并能根据系统需要灵活控制大小。

片上系统最常用的总线是AMBA总线,比较其读写时序标准与SRAM的读写时序,区别在于SRAM的写操作一个时钟周期完成,读操作需要在给出命令的下一时钟周期得到数据,而AHB无论读写操作都是第一个时钟周期传输命令,第二个时钟周期传输数据。普通AHB转SRAM桥的做法就是根据判断读写操作选择不同的命令信号给SRAM,写操作时,命令信号寄存一拍给SRAM,读操作时,命令信号直连SRAM,数据线直连。但这种方式只适用于小容量SRAM, 大容量SRAM的时序局限性在于CK到Q的delay很大,其中CK指的是SRAM的CK pin(clock 管脚),Q指SRAM的DO* pin(data out0~31管脚),例如0.11工艺下UMC的40KSRAM的CK到Q大约是4.2ns,加上时序路径上的其它逻辑很容易超出5ns,亦即不能满足200M的频率。如果系统时钟需要跑到200M及以上则需要将SRAM的读出data寄存一拍以保证总线信号的建立时间。根据总线协议,hready_out信号需要拉低一拍来宣告寄存的那一拍时钟周期为数据未准备好,这样单个读数据传输时需要额外一拍时钟周期。在burst,incremental或者连续single传输时,每三拍hready_out信号就需要拉低一拍(见图1,其中hrdata是sram_rdata寄存一拍)。整个系统的效率随之降低。

发明内容

为了克服现有技术中存在的不足,本发明提供一种AHB总线访问片上SRAM的高速桥装置及其工作方法,使用带有地址预测机制的总线桥加速大容量SRAM的读写访问,提高整个系统的运行效率。

为实现上述目的,本发明提供如下技术方案:

一种AHB总线访问片上SRAM的高速桥装置,包括寄存器和加一计数器,写操作时,访问AHB总线地址经寄存器寄存一拍后得到的SRAM地址,即上一个时钟周期的AHB总线地址;读操作时,在读操作数据返回拍,访问AHB总线地址经加一计数器加一计数后得到的预测地址,在读操作数据传输未完成拍,AHB总线地址为SRAM地址,即访问当前AHB总线地址。

更进一步的,写操作时,在写操作当拍及由写变读的第一拍,访问AHB总线地址经寄存器寄存一拍后得到的SRAM地址,即上一个时钟周期的AHB总线地址。

更进一步的,写操作当拍为AHB总线写操作的数据拍或者SRAM的写操作当拍;所述由写变读的第一拍为AHB总线访问连续操作时读写信号由写变读时的读命令拍。

更进一步的,所述读操作数据传输未完成拍为hready_out信号拉低时的数据拍,所述hready_out信号拉低的条件为:处于hsel信号上升沿、hwrite信号下降沿、sram_wr_en信号下降沿和上拍读操作未命中时。

本发明还提供一种AHB总线访问片上SRAM的高速桥装置的工作方法,写操作时,访问AHB总线地址经寄存器寄存一拍后得到的SRAM地址,即上一个时钟周期的AHB总线地址;读操作时,在读操作数据返回拍,访问AHB总线地址经加一计数器加一计数后得到的预测地址,在读操作数据传输未完成拍,AHB总线地址为SRAM地址,即访问当前AHB总线地址。

更进一步的,写操作时,在写操作当拍及由写变读的第一拍,访问AHB总线地址经寄存器寄存一拍后得到的SRAM地址,即上一个时钟周期的AHB总线地址。

更进一步的,所述写操作当拍为AHB总线写操作的数据拍或者SRAM的写操作当拍;所述由写变读的第一拍为AHB总线访问连续操作时读写信号由写变读时的读命令拍。

更进一步的,所述读操作数据传输未完成拍为hready_out信号拉低时的数据拍,所述hready_out信号拉低的条件为:处于hsel信号上升沿、hwrite信号下降沿、sram_wr_en信号下降沿和上拍读操作未命中时。

本发明有益效果如下:

(1)因大容量SRAM的CK-Q延时过大,加入一级缓存,即hrdata是sram_rdata的寄存而非直连,留出时序裕量给总线上其他逻辑,使系统的时钟频率得以提高并保证了芯片时序。

(2)SRAM的地址产生中引入预测地址在进行读操作时只需第一次读有hready_out信号拉低来抵消从sram_rdata到hrdata的一拍延时,之后的读操作都可以连续起来,形成流水。

(3)在总线连续操作时出现读写切换或者预测不命中的情况时,拉低hready_out信号,保证系统功能正确。

(4)上层软件可以根据系统分配给SRAM的地址直接对其进行读写操作,发起各种数据传输。

(5)本发明适合在片上系统总线挂载大容量SRAM时选择使用,因为大容量SRAM的CK-Q延时较大,读数据延时一拍能够保证在高速时钟频率的情况下满足器件的建立保持时间,给相邻逻辑留下足够的时序裕量。采用本设计可以规避读数据延时一拍反馈给总线所带来的系统连续读效率降低,在增加小的逻辑开销前提下达到提高整个芯片性价比的效果。

附图说明

图1为现有普通AHB转SRAM桥时序图。

图2为本发明提供的普通AHB转SRAM高速桥时序图。

图3为本发明提供的高速桥架构图。

图4为本发明SRAM地址的产生流程图。

图5为本发明hready_out信号拉低流程图。

具体实施方式

下面结合附图对本发明作更进一步的说明。

如图3所示,本发明在普通AHB转SRAM桥基础上增加了地址预测机制,比较总线地址与预测地址,如果一致即可提前一个时钟周期在SRAM中读数,保证了芯片满足时序要求的同时数据可以连续传输;预测地址就是指加一计数得到的地址,假设当前总线上地址是0x0000_1234,该地址是字节地址,去掉最低两位则是字地址,即0x0000_048d,加一计数后变为0x0000_048e,这个地址就是预测地址,在读操作的数据返回拍则使用该预测地址作为SRAM地址。因此本发明开销只是在普通的桥基础上增加一个加1计数器及相关的控制逻辑,不会超过几百个门,效率在总线发送连续读操作时能够提高三分之一,随机传输时与普通AHB转SRAM桥等效。如图2所示,本发明改进后使用预测地址,无需拉低hready_out信号,与图1对比提高了读数据效率。

图3为本发明SRAM地址的产生流程图,总线地址根据读写状态决定是否使用加一计数器加一计数或者寄存器寄存一拍的结果,进而获取SRAM地址,其中:

(1)总线地址为从桥装置输入端口进入的AHB总线地址信号(haddr)。

(2)加一计数是指对从输入端口进入的AHB总线地址信号进行逻辑加一操作得到的一个预测地址,该操作属于纯组合逻辑,即预测地址在总线地址的同一个时钟周期产生。

(3)寄存一拍是指上一个时钟周期的AHB总线地址信号,该操作将总线写操作时的地址寄存,使之与总线写数据在同一个时钟周期内提供给SRAM,满足了SRAM写操作命令数据在同一周期的特性。

SRAM地址的产生类似于多路选择器,读操作时可以选择加一计数得到的预测地址或者总线地址,写操作时使用寄存一拍的地址。

图3中,读操作数据返回拍----AHB总线无论读写都是分命令拍和数据拍两拍完成,命令拍发送地址、传输方式及读写指令,数据拍传输数据,写操作时数据是由AHB总线写向SRAM,读操作时数据是由SRAM返回AHB总线,所以这里的读操作数据返回拍是指AHB总线读数据时一个传输中的数据拍。

读操作数据传输未完成拍----读操作数据拍如果遇到hready_out信号拉低就会持续一直到hready_out信号拉高才宣告数据拍完成,所以读操作数据传输未完成拍即指数据拍中hready_out信号拉低时。

写操作当拍及由写变读的第一拍----因SRAM的写是命令(包括地址,读写信号)数据一起完成的,而AHB是分两拍(先命令拍,再数据拍)完成。所以数据线直接拉给SRAM,但地址线要用上一拍的总线地址,即寄存一拍的总线地址,所以写操作当拍是指AHB总线写操作的数据拍或者SRAM的写操作当拍(因仅需一拍);由写变读的第一拍是指连续操作时读写信号由写变读时的读命令拍,AHB总线的连续操作有流水的概念,由写变读时,写数据拍与读命令拍重合,SRAM使用寄存一拍的地址和写数据完成写操作。由写变读也是hready_out信号拉低的条件,总线的读操作需要延时完成。

图4所示为hready_out信号拉低的四项条件:

1.   hsel信号上升沿,因为总线第一拍发起传输时,从总线给出地址到hrdata反馈回数据必然会经历从sram_rdata到hrdata的一拍延时,所以需要有hready_out信号拉低来宣告数据未准备好。所以无论是否有预测机制,hsel信号上升沿的下一拍hready_out信号都需要拉低(如图1、图2所示)。

2.   hwrite信号下降沿,代表总线行为由写变读。由写变读即第一拍读,第一拍读的时序即需要有hready_out信号拉低来抵消从sram_rdata到hrdata的一拍延时。

3.   sram_wr_en信号下降沿,代表SRAM行为由写变读。因为写操作时SRAM的地址使用的是上一拍的总线地址,即此时总线读命令周期是SRAM真正进行写操作的,所以sram_wr_en比hwrite晚一拍,相应SRAM的读地址也是使用的是上一拍的总线地址,仍然需要有hready_out信号拉低来抵消从sram_rdata到hrdata的一拍延时。

4.   上拍读操作未命中,当上一时钟周期的预测地址与当前时钟周期的总线地址不一致,即预测未命中,则代表SRAM预读出的数据不正确,因当前成为第一个读而需要有hready_out信号拉低来抵消从sram_rdata到hrdata的一拍延时。

以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号