CN101078979A - 具有多通道指令预取功能的存储控制电路 - Google Patents
具有多通道指令预取功能的存储控制电路 Download PDFInfo
- Publication number
- CN101078979A CN101078979A CNA2007100248312A CN200710024831A CN101078979A CN 101078979 A CN101078979 A CN 101078979A CN A2007100248312 A CNA2007100248312 A CN A2007100248312A CN 200710024831 A CN200710024831 A CN 200710024831A CN 101078979 A CN101078979 A CN 101078979A
- Authority
- CN
- China
- Prior art keywords
- instruction
- sdram
- address
- dram
- control circuit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Dram (AREA)
- Advance Control (AREA)
Abstract
本发明公开了一种具有多通道指令预取功能的存储控制电路,涉及微处理器内部的存储控制电路。包括有两个指令预取缓冲器(L1、L2),SDRAM/DRAM逻辑控制电路,总线接口,地址译码器,地址比较器,SDRAM/DRAM读写控制电路以及片外SDRAM/DRAM存储体等。两个通道指令预取缓冲器采用乒乓方式工作,从而使在读取片外SDRAM/DRAM存储体中的指令填充指令预取缓冲器时,消除了CAS的等待时间。同时采用两组指令预取缓冲器,减少了在程序出现循环时因打断当前正在工作的指令预取缓冲器,重新预取指令而增加的预充电和激活的等待时间。采用页面不命中惩罚控制电路,减少了在程序连续出现跳转时的预充电时间。
Description
技术领域
本发明涉及一种存储器控制电路,尤其涉及一种具有多通道指令预取功能的SDRAM/DRAM存储器控制电路。
背景技术
SDRAM/DRAM(Synchronous Dynamic Random Access Memory/Dynamic RandomAccess Memory)是一种常用的同步动态随机存储器/动态随机存储器,以阵列方式存储数据,因此,每个数据都具有行列地址。如图1所示,当CPU读取一个数据时,需向存储器芯片组发起一个激活命令Ac,将该数据所在的行地址的所有数据均传输到敏感放大器上进行读写,其中,一行的数据称之为一页,大小通常是512~2048字节,之后控制器再发读命令RD或写命令WR,即根据列地址在敏感放大器中找出所要读取的数据。每次存取数据以组(Burst)为单位,其组可以是1、2、4、8或1024个字/字节等,每个命令之间都需要周期等待。当发出写命令后,下一个周期就能写入数据,但如果发出的是读命令,将需要额外的2~3个等待周期,亦称为CAS(ColumnAddress Strobe)等待。特别地,如果存取数据的行地址与当前敏感放大器的行地址不一致,将发生页不命中,此时需要将原来页的内容通过预充电命令Pr放回至存储器芯片组中,再把需要存取数据的行的内容通过激活命令Ac将整页的数据传输到敏感放大器中进行存取,如图2所示。如果存取数据的行地址与当前敏感放大器的行地址一致,将发生页命中,就可以直接访问,不需要预充电命令Pr和激活命令Ac。在访问SDRAM/DRAM存储器时,还可采用访问存储器后就通过预充电命令Pr将当前页面关闭,如图3所示,该预充电命令Pr是在读取存储器时发起的,所以其操作时间与读取存储器时间重叠;在下一次访问时,需要使用激活命令Ac先打开要访问的页面,才能进行存储器的读取或写入。
在传统的存储器(如SDRAM/DRAM)硬件电路设计中,通常是根据外部存储器的特性来设计访问存储器的控制电路。通常在SDRAM/DRAM控制器中引入缓冲器FIFO(FirstInput First Output)先进先出队列来存储数据。当SDRAM/DRAM控制器向SDRAM/DRAM存储器请求访问时,SDRAM/DRAM控制器以成组(Burst)的方式读取存储数据,一次成组的数量可以是1、2、4、8或1024个字/字节等。当数据被一次读入到FIFO中后,处理器就访问FIFO中的内容。如果此时处理器访问完FIFO中的内容,且需要访问下一个数据时,就需要SDRAM/DRAM控制器再次发起SDRAM/DRAM存储器的访问请求。在向SDRAM/DRAM存储器发起访问请求时,总存在一个CAS等待时间。因此,SDRAM/DRAM控制器每次向SDRAM/DRAM存储器读取数据时都要有一个额外的2~3个等待周期延迟。这个延迟使得处理器进入等待状态,增加了程序执行的时间,降低了系统运行的效率。所以,如何降低读数据等待延迟,减少CAS等待时间成为了SDRAM/DRAM控制器中的缓冲器优化设计的主要考虑因素之一。
发明内容
本发明的目的在于克服现有技术之不足,提供一种具有多通道指令预取功能的SDRAM/DRAM存储器控制电路,降低读数据等待延迟时间,从而提高微处理器执行程序的速度。
本发明的上述目的由以下技术方案实现:
本发明的具有多通道指令预取功能的存储控制电路,如图5所示,包括SDRAM/DRAM逻辑控制电路,指令预取缓冲器,地址比较器,总线接口,SDRAM/DRAM读写控制电路,地址译码器,片外SDRAM/DRAM存储体。指令预取缓冲器至少有两个通道,如L1和L2,全部的指令预取缓冲器的字节数是片外SDRAM/DRAM存储体的页字节的整数倍。
SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路发出SDRAM/DRAM读/写控制信号,完成对片外SDRAM/DRAM存储体的读写控制,通过总线接口的数据总线为指令预取缓冲器提供读取得指令。指令预取缓冲器通过总线接口的数据总线为CPU中的指令寄存器提供需要执行的指令。地址译码器在SDRAM/DRAM逻辑控制电路的控制下解析地址,并输出给地址比较器,地址比较器产生地址命中信号控制指令预取缓冲器中的一个通道工作,为CPU提供需要执行的指令,地址比较器产生地址不命中信号传送给SDRAM/DRAM逻辑控制电路,用于打断CPU从指令预取缓冲器中取指以及控制为指令预取缓冲器重新从片外SDRAM/DRAM存储体读取指令。在CPU访问片外SDRAM/DRAM存储体读取指令时,通过总线接口向SDRAM/DRAM逻辑控制电路发出总线请求信号,并通过总线接口中的地址总线将地址传输给地址译码器。
地址比较器中寄存有指令预取缓冲器中所存放指令的地址,当CPU取指时,总线接口来的地址总线信号经地址译码器译码送到地址比较器与所存放的地址进行比较,如果此时两者的地址相同,即地址命中,地址比较器产生地址命中信号,控制当前需要取指的指令预取缓冲器中的一个通道缓冲器工作,并通过总线接口中的数据总线直接从当前工作的指令预取缓冲器中的一个通道缓冲器取指令;如果CPU所需要执行的指令不在指令预取缓冲器中,即执行了跳转指令,并且跳转的目的地址不在指令预取缓冲器中指令的地址范围,此时地址比较器经过地址比较产生地址不命中信号,并通知SDRAM/DRAM逻辑控制电路,打断指令预取动作,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体按其工作时序要求先发出预充电命令Pr将当前页面关闭,再发出激活命令Ac打开要访问的页面,指令预取缓冲器中的第一个通道指令预取缓冲器L1重新从跳转指令的目的地址处从片外SDRAM/DRAM存储体读取指令,其后指令预取缓冲器中其他通道指令预取缓冲器顺序从片外SDRAM/DRAM存储体进行指令读取。
当CPU顺序执行指令时,所需要执行的指令从指令预取缓冲器中当前正在工作通道的缓冲器取完指令后,将转向指令预取缓冲器中的下一个通道缓冲器去取指,所述的所有指令预取缓冲器的各通道在地址比较器输出的地址命中信号控制下按顺序周而复始地交替方式工作。当CPU访问指令预取缓冲器中当前正在工作通道的指令预取缓冲器时,SDRAM/DRAM逻辑控制电路将按照设定的时序逻辑主动通过SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发起读指令RD操作,以填充指令预取缓冲器中的下一个通道指令预取缓冲器,使得读取指令和CAS等待时间重叠,从而保证当CPU访问完当前工作通道的指令预取缓冲器时,可以无CAS延迟地访问下一个通道指令预取缓冲器中存放的指令。
较为典型的是指令预取缓冲器有两个通道L1和L2,即可保证CPU在顺序执行指令时,可以无CAS等待时间地从指令预取缓冲器中取指执行指令。两个通道指令预取缓冲器L1和L2交替乒乓式工作,地址比较器有两路输出的地址命中信号分别控制两个通道的指令预取缓冲器L1和L2交替乒乓式工作,两个通道指令预取缓冲器L1和L2与总线接口的数据总线相连。
本发明的优点及效果是提供一种可以使CPU从片外SDRAM/DRAM存储体读取指令时,减少CPU访问片外SDRAM/DRAM存储体的CAS等待时间。如图4所示,在从SDRAM/DRAM存储体中读取指令填充指令预取缓冲器时,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路进行对指令预取缓冲器的一个通道缓冲器(如L1)从片外SDRAM/DRAM存储体填充指令的同时,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发出下一个读指令命令RD,经过有CAS的等待时间,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路进行对指令预取缓冲器的一个通道缓冲器(如L2)从片外SDRAM/DRAM存储体填充指令。SDRAM/DRAM读写控制电路发出下一个读指令RD后的CAS等待时间与上一个从片外SDRAM/DRAM存储体读取指令填充指令预取缓冲器的时间相互重叠,从而保证了CPU顺序执行指令时,可以无CAS等待时间地指令预取缓冲器中获得需要执行的指令。
一般计算机程序中存在大量的循环结构,如:for、while和do...while等语句结构,在指令的安排上表现为:循环条件判断-循环体-再回到循环条件判断的指令组织结构,或者是循环体-循环条件判断-再回到循环体的开始处。在循环结构的程序中,因存在跳转指令,指令预取缓冲器的预取指操作会被同一条跳转指令多次打断,为减少CPU从指令预取缓冲器取指执行被打断的次数,减少因增加对片外SDRAM/DRAM存储体发出预充电命令Pr关闭当前页面和发出激活命令Ac激活要访问的页面而带来的CPU等待时间,本发明增设两组指令预取缓冲器L1和L2以及R1和R2,指令预取缓冲器选择电路,跳转地址判断电路,加锁器电路,如图6所示。指令预取缓冲器选择电路受控于地址译码器的输出信号,其输出两路信号分别连接地址比较器1和地址比较器2,用于选择一组指令预取缓冲器为当前的工作组,地址比较器1控制指令预取缓冲器的两个通道L1和L2的内部切换工作,地址比较器2控制指令预取缓冲器的两个通道R1和R2的内部切换工作,跳转地址判断电路受控于地址译码器,其输出控制加锁器电路,加锁器电路的输出控制指令预取缓冲器的两个通道R1和R2的取指锁定与解锁。在CPU执行循环结构的程序时,第二组指令预取缓冲器R1和R2用于存放循环条件判断部分的指令,或者循环体开始部分的指令,第一组指令预取缓冲器周而复始地交替工作用于存放循环体部分的指令,从而减少了CPU执行跳转指令时打断当前正在工作的指令预取缓冲器重新取指的次数,减少了因需要对片外SDRAM/DRAM存储体发出预充电命令Pr和激活命令Ac而使CPU处于等待的时间。
本发明的优点及效果还表现在当CPU执行循环结构的指令序列时,提供一种采用两组指令预取缓冲器,减少因CPU在执行跳转指令而打断指令预取缓冲器预取指令操作的次数,从而减少SDRAM/DRAM读写控制电路对片外SDRAM/DRAM存储体发出预充电命令Pr和激活命令Ac的次数,减少CPU访问外存时的等待时间。使用第二组指令预取缓冲器锁定循环程序结构的条件判断部分的指令,或者循环体开始部分的指令,使用第一组指令预取缓冲器执行循环体部分的指令,从而减少了因循环体指令执行结束返回到条件判断部分指令执行这一过程的打断指令预取操作的次数,或者经循环条件判断返回到循环体开始处这一过程的打断指令预取操作的次数。当CPU执行指令为跳转指令时,跳转的目的地址通过总线接口的地址总线送到地址译码器,其输出送到地址比较器1和地址比较器2,地址比较器与跳转的目的地址进行比较,如果跳转的目的地址在当前正在工作的指令预取缓冲器中指令的地址范围内,CPU继续在当前工作的指令预取缓冲器中取指执行;如果跳转的目的地址不在当前正在工作的指令预取缓冲器中指令的地址范围内,也不在第二组指令预取缓冲器中指令的地址范围内,则打断当前正在工作的指令预取缓冲器工作,转到由第二组指令预取缓冲器预取工作,CPU在第二组指令预取缓冲器中取指执行;如果跳转的目的地址不在当前正在工作的指令预取缓冲器中指令的地址范围内,而在第二组指令预取缓冲器中指令的地址范围内,则转到由第二组指令预取缓冲器预取工作并锁定第二组指令预取缓冲器,此时,第二组指令预取缓冲器锁定循环结构程序的条件判断部分的指令,或者循环体开始部分的指令。
本发明在SDRAM/DRAM逻辑控制电路中设置有一页不命中惩罚电路,如图7所示,其包含有页面比较器,页面命中计数器,当前页地址寄存器。在取指令填充指令预取缓冲器时将页地址打入当前页地址寄存器中,来自总线接口中地址总线的跳转目的地址经地址译码器送到SDRAM/DRAM逻辑控制电路中的页面比较器与SDRAM/DRAM逻辑控制电路中的当前页地址寄存器的当前页地址进行比较,页面比较器输出的比较结果对页面命中计数器进行加1、减1或置数操作。当CPU执行跳转指令并且转移的目的地址连续不在当前页面中的次数超过惩罚状态设定值时,启动页不命中惩罚电路,改变对片外SDRAM/DRAM存储体的读取指令的控制方式,采用发出激活命令Ac激活所要访问的页面,指令预取缓冲器取指填充,随后,发出预充电命令Pr关闭当前访问的页面的工作方式,从而使预充电所需等待时间Pt与读取指令填充指令预取缓冲器的时间重叠,减少CPU执行指令的等待时间。当CPU执行跳转指令并且转移的目的地址连续在当前页面中的次数超过关闭惩罚状态设定值时,关闭页不命中惩罚电路,退出惩罚状态,恢复到对片外SDRAM/DRAM存储体的读取指令的控制方式,采用直接从片外SDRAM/DRAM存储体的当前页面读取指令填充指令预取缓冲器的工作方式。一般惩罚状态设定值为两次计数,关闭惩罚状态设定值为四次计数。
本发明的优点及效果还表现在指令预取缓冲器预取指令时,连续出现跳转指令,并且跳转的目的地址均不在当前页面中,此时,在每一次对指令预取缓冲器预取指令时,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发出预充电命令Pr关闭当前页面,使预充电等待时间Pt与读取指令的时间重叠,如图3所示。从而减少当CPU执行跳转指令并且连续跳转不在当前页面时的等待时间。
附图说明
图1是SDRAM/DRAM页命中时的读写时序图;
图2是SDRAM/DRAM页不命中时的读写时序图;
图3是访问SDRAM/DRAM后即关闭页面的时序图;
图4是本发明的双通道预取指令缓冲器访问SDRAM/DRAM时序图;
图5是本发明的双通道预取指令存储控制电路原理图;
图6是本发明的两组双通道预取指令存储控制电路原理图;
图7是本发明的页不命中惩罚电路原理图;
图8是本发明的两组双通道预取指令存储控制电路工作流程图;
图9是本发明的页不命中惩罚电路工作流程图;
图10是循环条件判断在前的循环语句流程图;
图11是循环条件判断在后的循环语句流程图。
附图符号说明
At::激活等待时间;
Pt:预充电等待时间;
CAS:读操作等待时间;
Ac:激活命令;
Pr:预充电命令;
RD:读操作;
WR:写操作;
Dx:总线上的传输数据。
具体实施方式
下面结合附图与具体实施方式对本发明作进一步详细描述。
如图5所示,双通道预取指令存储控制电路,其中包括两个通道的指令预取缓冲器L1和L2。指令预取缓冲器L1和L2的字节数是片外SDRAM/DRAM存储体的页字节的整数倍,如每个通道预取指令缓冲器长度为32Bytes,即4条指令,片外SDRAM/DRAM存储体的页字节数应为64的整数倍。指令预取缓冲器在从片外SDRAM/DRAM存储体预取指令时,具有数据对齐功能,即指令预取缓冲器的第一个通道存放的第一条指令应当来源于片外SDRAM/DRAM存储体页内地址为64的整数倍存放的指令,可以是0、64、128、192、......等地址存放的指令,该功能由地址译码器完成。双通道预取指令缓冲器L1和L2采用乒乓工作方式,当第一个通道指令预取缓冲器L1在SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路读取片外SDRAM/DRAM存储体中4条指令填充的同时,发出下一个读指令命令RD,在CAS读取等待时间结束时完成前4条的读取和填充,即可进行下4条指令的读取并填充第二个通道指令预取缓冲器L2。在CPU结束第一个通道4条指令的访问后,可以无等待地读取第二个通道指令预取缓冲器L2里面的指令执行,同时第一个通道指令预取缓冲器L1预取接下来的4条指令。两个通道如此反复的交替工作,使得CAS读取等待时间重叠,再者,因为指令预取缓冲器是在片内的,所以CPU对它的访问无需等待。如果CPU是以流水线的方式取指令工作,则每一个时钟可以执行一条指令,当CPU经过四个时钟周期把指令预取缓冲器L1里的指令执行完毕后,指令预取缓冲器L2已经填满,CPU可以无CAS等待地执行指令预取缓冲器L2中的下一条指令;此时的指令预取缓冲器L1中的指令被执行过,因此可以通过SDRAM/DRAM逻辑控制电路接着片外SDRAM/DRAM存储体发起读指令请求,填充下一个4条指令。L1与L2以乒乓的工作方式保证了CPU始终是在无CAS时钟周期等待的情况下运行,提高了取指令的效率,加快了系统运行速度。缩短了系统的执行时间。两个通道的指令预取缓冲器L1和L2可以是不等长度的,从方便具体电路设计考虑,等长的指令预取缓冲器为优选。指令预取缓冲器可以是两个通道以上,当指令预取缓冲器有多个通道时,各通道预取指令在地址比较器的控制下,按照顺序填充,并循环周而复始地轮流工作,某一时刻只有一个通道的指令预取缓冲器工作填充指令。从方便具体电路设计考虑,两个指令预取缓冲器即可实现CPU无CAS等待时间地执行指令,而且电路设计简单,故为优选方案。
程序中存在大量的循环结构,如图10和图11所示,从其生成目标代码来看,一般有两种结构,图10为循环条件判断在前的循环语句结构流程图,即循环条件判断在前,循环体在后。图11为循环条件判断在后的循环语句结构流程图,即开始为循环体,其后为循环条件判断。当CPU执行循环指令序列时,会多次执行同一条跳转指令,多次打断指令预取缓冲器的预取指操作,为此本发明通过增加一组指令预取缓冲器来减少指令预取的打断次数。如图6所示,两组双通道预取指令存储控制电路,与图5相比,多了一组指令预取缓冲器R1和R2,同时在地址译码电路和地址比较电路之间增加了一个指令预取缓冲器选择电路,该电路用于选择当前是哪一组指令预取缓冲器在工作。同时还增加了一个跳转地址判断电路,判断程序是否出现循环状态。还增加了一个对第二组指令预取缓冲器R1和R2进行锁定和解锁的加锁器电路,当程序出现循环结构时,使用第二组指令预取缓冲器锁定循环程序结构的条件判断部分的指令,或者循环体开始部分的指令,使用第一组指令预取缓冲器执行循环体部分的指令,从而减少了因循环返回跳转这一过程的打断指令预取操作的次数。结合图8所示来说明,两组双通道预取指令存储控制电路工作过程:
开始CPU访问片外SDRAM/DRAM存储体读取指令时,通过总线接口向SDRAM/DRAM逻辑控制电路发出总线请求信号,并通过总线接口中的地址总线将地址传输给地址译码器,地址译码器在SDRAM/DRAM逻辑控制电路的控制下解析地址,并输出给指令预取缓冲器选择电路用于选择第一组指令预取缓冲器为当前工作组,为CPU提供需要执行的指令。当CPU执行跳转指令且不命中第一组指令预取缓冲器L1和L2的指令地址时,即地址比较器1输出不命中信号给SDRAM/DRAM逻辑控制电路。在SDRAM/DRAM逻辑控制电路的控制下,地址译码器控制指令预取缓冲器选择电路选择第二组指令预取缓冲器R1和R2工作,只进行一次指令读取填充并锁定:SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体按其工作时序要求先发出预充电命令Pr将当前页面关闭,经过预充电等待时间Pt后再发出激活命令Ac打开要访问的页面,经过激活等待时间At再发出读操作命令RD,经过CAS等待时间,第二组指令预取缓冲器R1和R2重新从跳转指令的目的地址处从片外SDRAM/DRAM存储体读取指令,当第二组指令预取缓冲器R1和R2取指填充满指令后,由地址译码器经跳转地址判断电路控制加锁器电路对第二组指令预取缓冲器R1和R2进行加锁,然后就转向对第一组指令预取缓冲器L1和L2取指填充。此时,CPU执行完第二组缓冲器中的指令时,转回第一组缓冲器去取指执行,第一组指令预取缓冲器继续为CPU提供预取指令。如果CPU取指执行第二组指令预取缓冲器中的指令有跳转指令且转移的目的地址超出第二组指令缓冲器中指令的地址范围,由地址译码器经跳转地址判断电路控制加锁器电路对第二组指令预取缓冲器R1和R2进行解锁,CPU打断执行第二组指令预取缓冲器中的指令,重新跳转指令的目的地址处从片外SDRAM/DRAM存储体读取指令填充第二组指令预取缓冲器R1和R2一次,由地址译码器经跳转地址判断电路控制加锁器电路对第二组指令预取缓冲器R1和R2进行加锁,CPU继续从第二组指令预取缓冲器中取指执行。当执行完第二组指令预取缓冲器中的指令后,继续从第一组指令预取缓冲器L1和L2中取指令执行,并在第一组指令预取缓冲器L1和L2内周而复始地交替工作。如果CPU在执行第一组指令预取缓冲器中的指令再次碰到跳转指令,则跳转的目的地址由总线接口的地址总线经地址译码器译码送到跳转地址判断电路进行判断:当跳转的目的地址与第二组指令预取缓冲器中指令的地址相同时,说明第二组指令预取缓冲器锁定循环条件判断部分的指令,或者锁定循环体开始部分的指令,通过SDRAM/DRAM逻辑控制电路控制CPU转向从第二组指令预取缓冲器中取指执行;如果地址不同,则加锁器电路在跳转地址判断电路的控制下发出解锁信号,将第二组指令预取缓冲器R1和R2中的指令内容解锁,并回到对第二组指令预取缓冲器R1和R2从片外SDRAM/DRAM存储体中取指填充满,由地址译码器经跳转地址判断电路控制加锁器电路对第二组指令预取缓冲器R1和R2进行加锁。如此周而复始地工作,始终企图通过第二组指令预取缓冲器来存放循环程序结构的条件判断部分的指令序列,或者循环体开始部分的指令序列,使用第一组指令预取缓冲器的不断预取指令为CPU提供循环体部分指令的执行。这种两组指令预取缓冲器结构电路以及控制工作的方法适用于如for、while和do...while...等循环语句,这些循环语句在编译后生成指令序列时,往往是条件判断部分的指令序列在前面,循环体指令序列在后面,如图10所示,或者是循环体在前,循环条件判断在后,如图11所示。
当程序在执行过程中发生跳转,而该跳转的地址范围超过了片外SDRAM/DRAM存储体当前存放在敏感放大器里的地址时,外部存储器发生页面不命中事件。此时需要使用预充电命令Pr关闭当前页面,再使用激活命令Ac打开所要访问的页面。这一预充电到激活过程使得CPU处于等待状态,增加了程序的执行时间,降低了系统的性能,本发明技术方案中采用具有页不命中惩罚控制电路来减少这种等待时间。从图3中可以看出,如果采用读取指令后就关闭页面的做法,则每次都需要发起激活命令Ac,增加了处理器的等待时问。但如果每次访问外部存储器都发生页面不命中时,则可以省去预充电命令Pr带来的等待时间。因此,本发明的设计方案是:当连续访问外部存储器时都是在同一个页面时,可以不必要采用读取指令RD后就关闭页面的做法,而是一直将页面打开;当访问外部存储器时连续出现所访问的指令地址不在同一页范围内,则采用读取指令RD后就关闭页面的做法,即每次访问结束后始终关闭存储器页面,以节约预充电操作时间Pt。图7为页面不命中惩罚电路,在SDRAM/DRAM逻辑控制电路中增加有页面比较器,页面命中计数器,当前页地址寄存器。其控制过程如图9所示:一开始先激活所需要访问的页面,然后CPU取指令。然后判断当前所取指令是否在当前页面中(即页命中),如果是,则页面命中计数器清0,然后继续CPU取指;反之,此时发生页面不命中,则需要预充电命令Pr关闭当前页面,同时页面命中计数器加1。然后再判断页面命中计数器当前的计数值是否超过2,如果是,则证明连续两次页面不命中,进入惩罚状态;否则,如果计数值没有超过2,则直接激活所要访问的页面,并且让CPU取指令。当电路进入惩罚状态时,设置页面命中计数器为4,并激活所要访问的页面,然后同时执行取指令和预充电命令Pr,这样可以省去下一次的预充电操作时间Pt。然后判断取指是否页命中,如果页面不命中,则页面命中计数器重新设置为4,再回到激活、读取指令、预充电关闭页面的工作方式;否则,页面命中计数器减1,随后判断当前页面命中计数器是否为0,如果为0,则证明有连续四次的页命中,应该退出页面不命中惩罚状态;否则,则还在惩罚状态,激活所要访问的页面,依旧同时执行取指令和预充电命令。
对于具有两组指令预取缓冲器的电路可以在进行预取指是否命中当前页面判断的同时,对是否命中另一组指令预取缓冲器中指令的地址进行判断,如果命中也可视为命中页面并转入另一组指令预取缓冲器工作。电路进入惩罚状态的条件可以连续两次不命中,也可以是连续三次不命中等。电路退出惩罚状态的条件可以是连续四次命中,也可以是三次等。
采用双通道预取指令缓冲器的乒乓工作方式,在读指令时覆盖CAS等待时间,可以大大降低指令执行时间。而采用两组指令预取缓冲器的工作方式,可以避免很多因为循环跳转而重新填充预取指令缓冲器的情况。通过使用页面不命中惩罚控制电路,使得程序在执行过程中可以节约很多预充电操作和预充电一激活操作带来的处理器等待时间。在引入了双通道预取指令缓冲器之后,比传统嵌入式系统在性能上平均提升了40%,功耗也因页面不命中率的减少而降低。传统的SDRAM/DRAM控制器在进行一次成组传输时(如一次成组传输为4个字),则首先需要2~3个CAS的时钟等待,然后是4个时钟周期的传输时间(传一个字需要一个时钟时间),所以总共需要6~7个时钟周期才能填充好FIFO,只有填充好FIFO后处理器才能读取指令。根据处理器的流水性作业特征,执行一个指令只需消耗一个时钟周期。因此,从取这四条指令(每条指令占一个字)指令到执行完指令实际消耗的周期数为10~11。在引入预取功能后,在第一个通道指令预取缓冲器填充好后,第二个通道指令预取缓冲器便开始填充,所以当处理器访问完第一个通道指令预取缓冲器后,便可以无等待的访问第二个通道指令预取缓冲器。因此,只要指令是顺序执行,就可以始终无延迟的取指令。在这种情况下,从取指令到指令执行完毕系统总共消耗了4个时钟周期。可以看出其效率大为提升,提升比例约为64%((11-4)/11)。而在多媒体实验中,访问指令时间占到了总的执行时间的64%左右,所以在引入指令预取功能后,系统总的提升时间约为64%×64%=40%。通过了MP3、JPEG、MPEG-4等多媒体实验证明,其性能平均提升实为40%左右。
Claims (5)
1、一种具有多通道指令预取功能的存储控制电路,包括总线接口,SDRAM/DRAM读写控制电路,地址译码器,片外SDRAM/DRAM存储体,SDRAM/DRAM读写控制电路发出SDRAM/DRAM读/写控制信号,完成对片外SDRAM/DRAM存储体的读写控制;
其特征在于还包括有地址比较器,SDRAM/DRAM逻辑控制电路,至少两个通道的指令预取缓冲器(L1、L2)通过总线接口的数据总线为CPU中的指令寄存器提供需要执行的指令,全部的指令预取缓冲器(L1、L2)的字节数是片外SDRAM/DRAM存储体的页面字节的整数倍,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路工作;
在CPU访问片外SDRAM/DRAM存储体读取指令时,通过总线接口向SDRAM/DRAM逻辑控制电路发出总线请求信号,并通过总线接口中的地址总线将地址传输给地址译码器,地址译码器在SDRAM/DRAM逻辑控制电路的控制下解析地址,并输出给地址比较器,地址比较器产生地址命中信号控制指令预取缓冲器(L1、L2)中的一个通道工作,为CPU提供需要执行的指令,地址比较器产生地址不命中信号传送给SDRAM/DRAM逻辑控制电路,用于打断CPU从指令预取缓冲器(L1、L2)中取指并让指令预取缓冲器(L1、L2)重新从片外SDRAM/DRAM存储体读取指令;
地址比较器中寄存有指令预取缓冲器(L1、L2)中所存放指令的地址,当CPU取指时,总线接口传递来的地址总线信号经地址译码器译码送到地址比较器与所存放的地址进行比较,如果此时两者的地址相同,即地址命中,地址比较器产生地址命中信号,控制当前需要取指的指令预取缓冲器(L1、L2)中的一个通道缓冲器工作,并通过总线接口中的数据总线直接从当前工作的指令预取缓冲器(L1、L2)中的一个通道缓冲器取指令;如果CPU所需要执行的指令不在指令预取缓冲器(L1、L2)中,即执行了跳转指令,此时地址比较器经过地址比较产生地址不命中信号,并通知SDRAM/DRAM逻辑控制电路,打断指令预取动作,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体按其工作时序要求先发出预充电命令(Pr)将当前页面关闭,经预充电等待时间(Pt)延迟后,再发出激活命令(Ac)打开要访问的页面,经激活等待时间(At)延迟后,指令预取缓冲器(L1、L2)中的第一个通道指令预取缓冲器(L1)重新从跳转指令的目的地址处从片外SDRAM/DRAM存储体读取指令,其后指令预取缓冲器(L1、L2)中其他通道指令预取缓冲器顺序从片外SDRAM/DRAM存储体进行读取指令;
当CPU顺序执行指令时,所需要执行的指令从指令预取缓冲器(L1、L2)中当前正在工作通道的缓冲器取完指令后,将转向指令预取缓冲器(L1、L2)中的下一个通道缓冲器去取指,所述的所有指令预取缓冲器(L1、L2)在地址比较器输出的地址命中信号控制下按顺序周而复始地交替方式工作;当CPU访问指令预取缓冲器(L1、L2)中当前正在工作通道的指令预取缓冲器时,SDRAM/DRAM逻辑控制电路将按照设定的时序逻辑主动通过SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发起读指令(RD)操作,以填充指令预取缓冲器(L1、L2)中的下一个通道指令预取缓冲器,保证当CPU访问完当前工作通道的指令预取缓冲器时,可以无CAS延迟地访问下一个通道指令预取缓冲器中存放的指令。
2、根据权利要求1所述的具有多通道指令预取功能的存储控制电路,其特征是:所述的指令预取缓冲器(L1、L2)有两个通道,第一通道指令预取缓冲器(L1)和第二通道指令预取缓冲器(L2)交替乒乓式工作,所述的地址比较器有两路输出的地址命中信号分别控制两个通道的指令预取缓冲器(L1、L2)交替乒乓式工作,所述的两个通道指令预取缓冲器(L1、L2)与总线接口的数据总线相连。
3、根据权利要求1或2所述的具有多通道指令预取功能的存储控制电路,其特征在于还有指令预取缓冲器选择电路,跳转地址判断电路,加锁器电路,所述的指令预取缓冲器(L1、L2,R1、R2)有两组;
指令预取缓冲器选择电路受控于所述的地址译码器的输出信号,其输出两路信号分别连接地址比较器1和地址比较器2,用于选择一组指令预取缓冲器为当前的工作组,地址比较器1控制第一组指令预取缓冲器(L1、L2)的内部切换工作,地址比较器2控制第二组指令预取缓冲器(R1、R2)的内部切换工作,跳转地址判断电路受控于地址译码器,其输出控制加锁器电路,加锁器电路的输出控制第二组指令预取缓冲器(R1、R2)的取指锁定与解锁;
在CPU顺序执行指令时,地址译码器控制指令预取缓冲器选择电路选择第一组指令预取缓冲器(L1、L2)工作,当CPU第一次执行跳转指令且不命中第一组指令预取缓冲器(L1、L2)时,地址译码器控制指令预取缓冲器选择电路选择第二组指令预取缓冲器(R1、R2)工作,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体按其工作时序要求先发出预充电命令(Pr)将当前页面关闭,经预充电等待时间(Pt)延迟后,再发出激活命令(Ac)打开要访问的页面,经激活等待时间(At)延迟后,第二组指令预取缓冲器(R1、R2)重新从跳转指令的目的地址处从片外SDRAM/DRAM存储体读取指令,当第二组指令预取缓冲器(R1、R2)取指填充满指令后,由地址译码器经跳转地址判断电路控制加锁器电路对第二组指令预取缓冲器(R1、R2)进行加锁,然后就转向对第一组指令预取缓冲器(L1、L2)取指填充;
SDRAM/DRAM逻辑控制电路控制CPU从第二组指令预取缓冲器(R1、R2)中获取指令执行,当CPU取指执行第二组指令预取缓冲器(R1、R2)中的指令有跳转指令且转移的目的地址超出第二组指令缓冲器(R1、R2)中指令的地址范围时,由地址译码器经跳转地址判断电路控制加锁器电路对第二组指令预取缓冲器(R1、R2)进行解锁,CPU打断执行第二组指令预取缓冲器(R1、R2)中的指令,重新跳转指令的目的地址处从片外SDRAM/DRAM存储体读取指令填充第二组指令预取缓冲器(R1、R2),由地址译码器经跳转地址判断电路控制加锁器电路对第二组指令预取缓冲器(R1、R2)进行加锁,CPU继续从第二组指令预取缓冲器(R1、R2)中取指执行;当执行完第二组指令预取缓冲器(R1、R2)中的指令后,继续从第一组指令预取缓冲器(L1、L2)中取指令执行,并在第一组指令预取缓冲器(L1、L2)内周而复始地交替工作,直到遇到跳转指令;
如果CPU在执行第一组指令预取缓冲器(L1、L2)中的指令再次碰到跳转指令,则跳转的目的地址由总线接口的地址总线经地址译码器译码送到跳转地址判断电路进行判断,当跳转的目的地址与第二组指令预取缓冲器(R1、R2)中指令的地址相同时,通过SDRAM/DRAM逻辑控制电路控制CPU转向从第二组指令预取缓冲器(R1、R2)中取指执行;如果地址不同,则加锁器电路在跳转地址判断电路的控制下发出解锁信号,将第二组指令预取缓冲器(R1、R2)中的指令内容解锁,并回到对第二组指令预取缓冲器(R1、R2)从片外SDRAM/DRAM存储体中取指填充满指令,由地址译码器经跳转地址判断电路控制加锁器电路对第二组指令预取缓冲器(R1、R2)进行加锁。
4、根据权利要求3所述的具有多通道指令预取功能的存储控制电路,其特征是所述的SDRAM/DRAM逻辑控制电路中含有页面不命中惩罚电路,其包含有页面比较器,页面命中计数器,当前页地址寄存器,在取指令填充指令预取缓冲器(L1、L2,R1、R2)时将页地址记录在打入当前页地址寄存器中;
在起初取指填充指令预取缓冲器时,地址信号通过总线接口的地址总线传输给片外SDRAM/DRAM存储体,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发出激活命令(Ac)打开所要访问的页面,经激活等待时间(At)延迟后,当前工作组的指令预取缓冲器(L1、L2,R1、R2)通过数据总线填充指令;当CPU执行来自当前工作组的指令预取缓冲器(L1、L2,R1、R2)中的指令是跳转指令时,来自总线接口中地址总线的跳转目的地址经地址译码器送到SDRAM/DRAM逻辑控制电路中的页面比较器与SDRAM/DRAM逻辑控制电路中的当前页地址寄存器的当前页地址进行比较,当比较结果是同一页时,页面比较器的输出使SDRAM/DRAM逻辑控制电路中的页面命中计数器清零,当前工作组的指令预取缓冲器(L1、L2,R1、R2)继续按照片外SDRAM/DRAM存储体页命中的工作时序取指填充;当比较结果不是在同一页时,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发出预充电命令(Pr)关闭当前访问的页面,并且页面比较器的输出使SDRAM/DRAM逻辑控制电路中的页面命中计数器加1计数一次;
当页面命中计数器计数值小于惩罚状态设定值时,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发出激活命令(Ac)打开所要访问的页面;当页面命中计数器计数值大于等于惩罚状态设定值时,即进入惩罚状态,页面命中计数器预置为关闭惩罚状态设定值,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发出激活命令(Ac)激活所要访问的页面,当前工作组的指令预取缓冲器(L1、L2,R1、R2)按照片外SDRAM/DRAM存储体的工作时序取指填充,随后,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发出预充电命令(Pr)关闭当前访问的页面;
在电路处在惩罚状态下,当CPU执行来自当前工作组的指令预取缓冲器(L1、L2,R1、R2)中的指令是跳转指令时,来自总线接口中地址总线的跳转目的地址经地址译码器送到SDRAM/DRAM逻辑控制电路中的页面比较器与SDRAM/DRAM逻辑控制电路中的当前页地址寄存器的当前页地址进行比较,当比较结果不是同一页时,页面比较器的输出使页面命中计数器重新置为关闭惩罚状态设定值,SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发出激活命令(Ac)激活所要访问的页面,当前工作组的指令预取缓冲器(L1、L2,R1、R2)按照片外SDRAM/DRAM存储体的工作时序取指填充;如果比较结果是当前页面,页面比较器的输出使页面命中计数器减1计数;
当页面计数器的值为零时,即退出惩罚状态,回到由SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发出一次激活命令(Ac)激活需要访问的页面,当前工作组的指令预取缓冲器(L1、L2,R1、R2)从片外SDRAM/DRAM存储体取指填充的工作状态;如果页面命中计数器不为零,则仍在惩罚状态,由SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发出激活命令(Ac)激活需要访问的页面,然后当前工作组的指令预取缓冲器(L1、L2,R1、R2)从片外SDRAM/DRAM存储体取指填充,指令填充满后,再由SDRAM/DRAM逻辑控制电路控制SDRAM/DRAM读写控制电路向片外SDRAM/DRAM存储体发出预充电命令(Pr)关闭当前访问的页面。
5、根据权利要求4所述的具有多通道指令预取功能的存储控制电路,其特征是:所述的惩罚状态设定值为两次计数,所述的关闭惩罚状态设定值为四次计数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007100248312A CN100449481C (zh) | 2007-06-29 | 2007-06-29 | 具有多通道指令预取功能的存储控制电路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2007100248312A CN100449481C (zh) | 2007-06-29 | 2007-06-29 | 具有多通道指令预取功能的存储控制电路 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101078979A true CN101078979A (zh) | 2007-11-28 |
CN100449481C CN100449481C (zh) | 2009-01-07 |
Family
ID=38906468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2007100248312A Expired - Fee Related CN100449481C (zh) | 2007-06-29 | 2007-06-29 | 具有多通道指令预取功能的存储控制电路 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100449481C (zh) |
Cited By (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101887360A (zh) * | 2009-07-10 | 2010-11-17 | 威盛电子股份有限公司 | 微处理器的数据预先撷取器及方法 |
CN102207916A (zh) * | 2011-05-30 | 2011-10-05 | 西安电子科技大学 | 一种基于指令预取的多核共享存储器控制设备 |
CN102270181A (zh) * | 2010-06-01 | 2011-12-07 | 炬力集成电路设计有限公司 | 一种内存访问方法和装置 |
WO2012065472A1 (zh) * | 2010-11-17 | 2012-05-24 | 中兴通讯股份有限公司 | 一种同步动态存储器读写控制方法、装置和系统 |
WO2012088879A1 (zh) * | 2010-12-29 | 2012-07-05 | 炬才微电子(深圳)有限公司 | 一种ddr控制器及其实现方法和芯片 |
CN102567222A (zh) * | 2010-12-15 | 2012-07-11 | 北京兆易创新科技有限公司 | 一种数据的存取方法和装置 |
CN102622317A (zh) * | 2011-01-12 | 2012-08-01 | 索尼公司 | 存储器访问控制电路、预取电路、存储器设备和信息处理系统 |
CN101539853B (zh) * | 2008-03-21 | 2012-08-22 | 富士通株式会社 | 信息处理单元、执行方法和指令序列生成方法 |
CN102789540A (zh) * | 2012-06-14 | 2012-11-21 | 中国电子科技集团公司第四十一研究所 | 一种信号分析仪器多次测量数据的实时计算装置 |
CN103279440A (zh) * | 2013-05-10 | 2013-09-04 | 北京宇航系统工程研究所 | 一种单机模块间总线通信方法 |
CN105183663A (zh) * | 2010-03-29 | 2015-12-23 | 威盛电子股份有限公司 | 预取单元和数据预取方法 |
CN107562658A (zh) * | 2017-09-06 | 2018-01-09 | 北京融通高科微电子科技有限公司 | Cpu取指系统及取指方法 |
CN109614146A (zh) * | 2018-11-14 | 2019-04-12 | 西安翔腾微电子科技有限公司 | 一种局部跳转指令取指方法及装置 |
CN111723920A (zh) * | 2019-03-22 | 2020-09-29 | 中科寒武纪科技股份有限公司 | 人工智能计算装置及相关产品 |
CN112015676A (zh) * | 2019-05-29 | 2020-12-01 | 中南大学 | 一种支持软件按需模块式加载的预取方案 |
CN112395218A (zh) * | 2020-10-29 | 2021-02-23 | 南京扬贺扬微电子科技有限公司 | 具有DDR高传输介面的新型SPI-NAND Flash存储芯片及操作方法 |
CN112835523A (zh) * | 2021-02-02 | 2021-05-25 | 致真存储(北京)科技有限公司 | 一种存储系统及其数据存取的方法 |
CN112905237A (zh) * | 2019-12-04 | 2021-06-04 | 北京百度网讯科技有限公司 | 指令预取方法、装置、设备和介质 |
CN116185497A (zh) * | 2023-01-06 | 2023-05-30 | 格兰菲智能科技有限公司 | 命令解析方法、装置、计算机设备和存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI769080B (zh) * | 2021-09-17 | 2022-06-21 | 瑞昱半導體股份有限公司 | 用於同步動態隨機存取記憶體之控制模組及其控制方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5914906A (en) * | 1995-12-20 | 1999-06-22 | International Business Machines Corporation | Field programmable memory array |
CN1217342C (zh) * | 2001-03-09 | 2005-08-31 | 矽统科技股份有限公司 | 多通道存储管理系统 |
US6924664B2 (en) * | 2003-08-15 | 2005-08-02 | Kilopass Technologies, Inc. | Field programmable gate array |
CN2791752Y (zh) * | 2005-04-04 | 2006-06-28 | 苏州鹞鹰数据技术有限公司 | 高速数据存储设备 |
-
2007
- 2007-06-29 CN CNB2007100248312A patent/CN100449481C/zh not_active Expired - Fee Related
Cited By (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101539853B (zh) * | 2008-03-21 | 2012-08-22 | 富士通株式会社 | 信息处理单元、执行方法和指令序列生成方法 |
CN101887360A (zh) * | 2009-07-10 | 2010-11-17 | 威盛电子股份有限公司 | 微处理器的数据预先撷取器及方法 |
CN105183663B (zh) * | 2010-03-29 | 2018-11-27 | 威盛电子股份有限公司 | 预取单元和数据预取方法 |
CN105183663A (zh) * | 2010-03-29 | 2015-12-23 | 威盛电子股份有限公司 | 预取单元和数据预取方法 |
CN102270181B (zh) * | 2010-06-01 | 2013-10-02 | 炬力集成电路设计有限公司 | 一种内存访问方法和装置 |
CN102270181A (zh) * | 2010-06-01 | 2011-12-07 | 炬力集成电路设计有限公司 | 一种内存访问方法和装置 |
WO2012065472A1 (zh) * | 2010-11-17 | 2012-05-24 | 中兴通讯股份有限公司 | 一种同步动态存储器读写控制方法、装置和系统 |
CN102567222A (zh) * | 2010-12-15 | 2012-07-11 | 北京兆易创新科技有限公司 | 一种数据的存取方法和装置 |
WO2012088879A1 (zh) * | 2010-12-29 | 2012-07-05 | 炬才微电子(深圳)有限公司 | 一种ddr控制器及其实现方法和芯片 |
US9685220B2 (en) | 2010-12-29 | 2017-06-20 | Artek Microelectronics Co., Ltd. | DDR controller, method for implementing the same, and chip |
CN102622317B (zh) * | 2011-01-12 | 2016-08-17 | 索尼公司 | 存储器访问控制电路、预取电路、存储器设备和信息处理系统 |
CN102622317A (zh) * | 2011-01-12 | 2012-08-01 | 索尼公司 | 存储器访问控制电路、预取电路、存储器设备和信息处理系统 |
CN102207916A (zh) * | 2011-05-30 | 2011-10-05 | 西安电子科技大学 | 一种基于指令预取的多核共享存储器控制设备 |
CN102207916B (zh) * | 2011-05-30 | 2013-10-30 | 西安电子科技大学 | 一种基于指令预取的多核共享存储器控制设备 |
CN102789540B (zh) * | 2012-06-14 | 2016-01-20 | 中国电子科技集团公司第四十一研究所 | 一种信号分析仪器多次测量数据的实时计算装置 |
CN102789540A (zh) * | 2012-06-14 | 2012-11-21 | 中国电子科技集团公司第四十一研究所 | 一种信号分析仪器多次测量数据的实时计算装置 |
CN103279440A (zh) * | 2013-05-10 | 2013-09-04 | 北京宇航系统工程研究所 | 一种单机模块间总线通信方法 |
CN107562658B (zh) * | 2017-09-06 | 2024-05-28 | 北京世通凌讯科技有限公司 | Cpu取指系统及取指方法 |
CN107562658A (zh) * | 2017-09-06 | 2018-01-09 | 北京融通高科微电子科技有限公司 | Cpu取指系统及取指方法 |
CN109614146A (zh) * | 2018-11-14 | 2019-04-12 | 西安翔腾微电子科技有限公司 | 一种局部跳转指令取指方法及装置 |
CN111723920A (zh) * | 2019-03-22 | 2020-09-29 | 中科寒武纪科技股份有限公司 | 人工智能计算装置及相关产品 |
CN111723920B (zh) * | 2019-03-22 | 2024-05-17 | 中科寒武纪科技股份有限公司 | 人工智能计算装置及相关产品 |
CN112015676B (zh) * | 2019-05-29 | 2022-09-16 | 中南大学 | 一种支持软件按需模块式加载的预取方法 |
CN112015676A (zh) * | 2019-05-29 | 2020-12-01 | 中南大学 | 一种支持软件按需模块式加载的预取方案 |
CN112905237A (zh) * | 2019-12-04 | 2021-06-04 | 北京百度网讯科技有限公司 | 指令预取方法、装置、设备和介质 |
CN112395218A (zh) * | 2020-10-29 | 2021-02-23 | 南京扬贺扬微电子科技有限公司 | 具有DDR高传输介面的新型SPI-NAND Flash存储芯片及操作方法 |
CN112395218B (zh) * | 2020-10-29 | 2024-04-09 | 南京扬贺扬微电子科技有限公司 | 具有DDR高传输介面的SPI-NAND Flash存储芯片及操作方法 |
CN112835523A (zh) * | 2021-02-02 | 2021-05-25 | 致真存储(北京)科技有限公司 | 一种存储系统及其数据存取的方法 |
CN116185497A (zh) * | 2023-01-06 | 2023-05-30 | 格兰菲智能科技有限公司 | 命令解析方法、装置、计算机设备和存储介质 |
CN116185497B (zh) * | 2023-01-06 | 2024-05-07 | 格兰菲智能科技有限公司 | 命令解析方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN100449481C (zh) | 2009-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100449481C (zh) | 具有多通道指令预取功能的存储控制电路 | |
CN102023931B (zh) | 一种自适应缓存预取方法 | |
US7536530B2 (en) | Method and apparatus for determining a dynamic random access memory page management implementation | |
CN102207916B (zh) | 一种基于指令预取的多核共享存储器控制设备 | |
Shao et al. | A burst scheduling access reordering mechanism | |
US6564313B1 (en) | System and method for efficient instruction prefetching based on loop periods | |
Lin et al. | Reducing DRAM latencies with an integrated memory hierarchy design | |
US20190004916A1 (en) | Profiling asynchronous events resulting from the execution of software at code region granularity | |
US7917701B2 (en) | Cache circuitry, data processing apparatus and method for prefetching data by selecting one of a first prefetch linefill operation and a second prefetch linefill operation | |
EP1836583B1 (en) | Dynamic control of memory access speed | |
Goossens et al. | Conservative open-page policy for mixed time-criticality memory controllers | |
KR100936601B1 (ko) | 멀티 프로세서 시스템 | |
US20030159008A1 (en) | Method and apparatus to control memory accesses | |
US9069489B1 (en) | Dynamic random access memory front end | |
JPH04303248A (ja) | マルチバッファデータキャッシュを具えているコンピュータシステム | |
CN104834483B (zh) | 一种提升嵌入式mcu性能的实现方法 | |
US20070233943A1 (en) | Dynamic update adaptive idle timer | |
CN112711383B (zh) | 用于电力芯片的非易失性存储读取加速方法 | |
CN101697146B (zh) | 嵌入式处理器片内指令和数据推送装置 | |
CN114911724A (zh) | 一种基于多bank的cache预取技术的访存结构 | |
CA2378777A1 (en) | Shared program memory with fetch and prefetch buffers | |
Alawneh | A dynamic row-buffer management policy for multimedia applications | |
Pan et al. | Lsp: Collective cross-page prefetching for nvm | |
Zhang | Improving Data Movement Efficiency in the Memory Systems for Irregular Applications | |
Pang et al. | A priority-expression-based burst scheduling of memory reordering access |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20090107 Termination date: 20150629 |
|
EXPY | Termination of patent right or utility model |