发明名称 具有有效使用记忆体之循环定址的方法及系统
摘要 一种用于记忆体中之循环区域(Circular Buffer)的位址产生装置,其中循环区域的上边界隐含于目前位址(Current Address)内。此种方法可单独应用,或者结合以隐藏式下边界为基准之循环区域,进而改善记忆体的使用效率,以及增加积体电路之循环区域设计上的弹性。此双模式位址产生器具有数个输入及目标位址产生逻辑。其中,这些输入系接收目前位址A、位址偏移M、区域长度L及一控制讯号。而目标位址产生逻辑系根据A、M、以及L,而计算出用于以隐藏式下边界为基准之循环区域的第一个记忆体位址,以及用于以隐藏式上边界为基准之循环区域的第二个记忆体位址。而控制讯号会选择第一记忆体位址或第二记忆体位址中的一个为最后的输出。第一记忆体位址系由目前位址A加上位址偏移M所产生,其用于具有隐藏式下边界X及包括自X到(X+L)的第一循环区域。以及第二记忆体位址系由目前位址A加上位址偏移M所产生,其用于具有隐藏式上边界Y及包括自Y到(Y-L)的第二循环区域。
申请公布号 TW550457 申请公布日期 2003.09.01
申请号 TW091101114 申请日期 2002.01.24
申请人 旺宏电子股份有限公司 发明人 邹宏基
分类号 G06F12/00 主分类号 G06F12/00
代理机构 代理人 詹铭文 台北市中正区罗斯福路二段一○○号七楼之一;萧锡清 台北市中正区罗斯福路二段一○○号七楼之一
主权项 1.一种用于记忆体中之循环区域的位址产生装置,包括:复数个输入,用以接收一目前位址A、一位址偏移M、一区域长度値L及一控制讯号;以及一逻辑,其组成系回应于A、M、以及L,而用以计算出用于记忆体中的位置之一第一记忆体位址及一第二记忆体位址,以及回应于该控制讯号,用以选择该第一记忆体位址或该第二记忆体位址为输出,其中该第一记忆体位址系相当于该目前位址A加上该位址偏移M,并用于存取资料于具有一位址边界X与包括从位址X到位址(X+L)之一第一循环区域,以及该第二记忆体位址系相当于该目前位址A加上该位址偏移M,并用于存取资料于具有一位址边界Y与包括从位址Y到位址(Y-L)之一第二循环区域。2.如申请专利范围第1项所述之用于记忆体中之循环区域的位址产生装置,其中当L的値以二进位表示时,在位元位置N,具有一领先1,以及该位址边界X系由该目前位址A之低阶N个位元均以0取代而得,以及该位址边界Y系由该目前位址A之低阶N个位元均以1取代而得。3.如申请专利范围第1项所述之用于记忆体中之循环区域的位址产生装置,其中该些输入包括用以储存A、M与L之复数个暂存器。4.如申请专利范围第1项所述之用于记忆体中之循环区域的位址产生装置,其中该些输入包括用以储存A、M、L与该控制讯号之复数个暂存器。5.如申请专利范围第1项所述之用于记忆体中之循环区域的位址产生装置,其中该逻辑包括:一第一加法器,用以产生一第一输出,该第一输出相等于A+M,并伴随着一进位输出讯号;一第二加法器,用以产生一第二输出,当M的符号为正时,该第二输出相等于一第一绕折位址(A+M)-(L+1),并伴随着一进位输出讯号,或当M的符号为负时,该第二输出相等于一第二绕折位址(A+M)+(L+1),并伴随着一进位输出讯号;以及一选择逻辑,系回应于来自该第一加法器之进位输出讯号及该第二加法器之进位输出讯号,而用以选择该第一输出或该第二输出。6.如申请专利范围第1项所述之用于记忆体中之循环区域的位址产生装置,其中当L的値以二进位表示时,在位元位置N,具有一领先1,以及该位址边界X系由该目前位址A之低阶N个位元均以0取代而得,以及该位址边界Y系由该目前位址A之低阶N个位元均以1取代而得,以及该逻辑包括:一第一加法器,用以产生一第一输出,该第一输出相等于A+M,并在位元位置N,具有一进位输出讯号;一第二加法器,用以产生一第二输出,当M的符号为正时,该第二输出相等于一第一绕折位址(A+M)-(L+1),并在位元位置N,具有一进位输出讯号,或当M的符号为负时,该第二输出相等于一第二绕折位址和(A+M)+(L+1),并在位元位置N,具有一进位输出讯号;以及一选择逻辑,系回应于来自该第一加法器的进位输出讯号及该第二加法器之进位输出讯号,以及回应于该控制讯号,而用以选择该第一输出或该第二输出。7.如申请专利范围第6项所述之用于记忆体中之循环位址区域的位址产生装置,其中所组成的该选择逻辑:选择到该第一加法器的输出的情况为:当该控制讯号系设定用于该第一记忆体位址、该位址偏移为正、以及来自该第一加法器与该第二加法器之进位输出均非为1,或当该控制讯号系设定用于该第一记忆体位址、该位址偏移为负、以及来自该第一加法器之进位输出为1,或当该控制讯号系设定用于该第二记忆体位址、该位址偏移为正、以及来自该第一加法器之进位输出为为0,或当该控制讯号系设定用于该第二记忆体位址、该位址偏移为负、以及来自该第一加法器与该第二加法器之进位输出都为l;以及选择到该第二加法器的输出的情况为,当该控制讯号系设定用于该第一记忆体位址、该位址偏移为正、以及来自该第一加法器或该第二加法器之进位输出至少一个为1,或当该控制讯号系设定用于该第一记忆体位址、该位址偏移为负、以及来自该第一加法器之进位输出为0,或当该控制讯号系设定用于该第二记忆体位址、该位址偏移为正、以及来自该第一加法器之进位输出为1,或当该控制讯号系设定用于该第二记忆体位址、该位址偏移为负、以及来自该第一加法器或该第二加法器之进位输出至少一个为0。8.一种用于记忆体中之具有隐藏式上位址边界之循环区域的位址产生装置,包括:复数个输入,用以接收一目前位址A、一位址偏移M、以及一区域长度値L;以及一逻辑,其组成系回应于A、M、以及L,而用以计算出一记忆体位址,其中该记忆体位址系相当于该目前位址A加上该位址偏移M,并用于存取资料于一位址边界Y与包括从位址Y到位址(Y-L)之一循环区域。9.如申请专利范围第8项所述之用于记忆体中之具有隐藏式上位址边界之循环区域的位址产生装置,其中当L的値以二进位表示时,在位元位置N,具有一领先1,以及该位址边界Y系由该目前位址A之低阶N个位元均以1取代而得。10.如申请专利范围第8项所述之用于记忆体中之具有隐藏式上位址边界之循环区域的位址产生装置,其中该些输入包括用以储存A、M与L之复数个暂存器。11.如申请专利范围第8项所述之用于记忆体中之具有隐藏式上位址边界之循环区域的位址产生装置,其中该逻辑包括:一第一加法器,用以产生一第一输出,该第一输出相等于A+M,并伴随着一进位输出讯号;一第二加法器,用以产生一第二输出,当M的符号为正时,该第二输出相等于一第一绕折位址(A+M)-(L+1),并伴随着一进位输出讯号,或当M的符号为负时,该第二输出相等于一第二绕折位址(A+M)+(L+1),并伴随着一进位输出讯号;以及一选择逻辑,系回应于来自该第一加法器的进位输出讯号及该第二加法器之进位输出讯号,而用以选择该第一输出或该第二输出。12.如申请专利范围第8项所述之用于记忆体中之具有隐藏式上位址边界之循环区域的位址产生装置,其中当L的値以二进位表示时,在位元位置N,具有一领先1,而该位址边界Y系由该目前位址A之低阶N个位元均以1取代而得,以及该逻辑包括:一第一加法器,用以产生一第一输出,该第一输出相等于A+M,并在位元位置N,具有一进位输出讯号;一第二加法器,用以产生一第二输出,当M的符号为正时,该第二输出相等于一第一绕折位址(A+M)-(L+1),并在位元位置N,具有一进位输出讯号,或当M的符号为负时,该第二输出相等于一第二绕折位址和(A+M)+(L+1),并在位元位置N,具有一进位输出讯号;以及一选择逻辑,系回应于来自该第一加法器的进位输出讯号及该第二加法器之进位输出讯号,而用以选择该第一输出或该第二输出。13.如申请专利范围第12项所述之用于记忆体中之具有隐藏式上位址边界之循环区域的位址产生装置,其中所组成的该选择逻辑:选择到该第一加法器的输出的情况为,当该位址偏移为正,以及来自该第一加法器之进位输出为0,或当该位址偏移为负,以及来自该第一加法器与该第二加法器之进位输出都为1:以及选择到该第二加法器的输出的情况为,当该位址偏移为正,以及来自该第一加法器之进位输出为1,或当该位址偏移为负,以及来自该第一加法器或该第二加法器之进位输出至少一个为0。14.一种积体电路,包括:一处理器;复数个暂存器,耦接于该处理器,用以储存一目前位址A、一位址偏移M、以及一区域长度値L:一记忆体;以及一位址产生器,耦接于该处理器,用以产生用于该记忆体的位址,该位址产生器的组成系回应于A、M、以及L,而用以计算出用于记忆体中的位置之一第一记忆体位址及一第二记忆体位址,以及回应于一控制讯号,用以选择该第一记忆体位址或该第二记忆体位址为输出,其中该第一记忆体位址系相当于该目前位址A加上该位址偏移M,并用于存取资料于具有一位址边界X与包括从位址X到位址(X+L)之一第一循环区域,以及该第二记忆体位址系相当于该目前位址A加上该位址偏移M,并用于存取资料于具有一位址边界Y与包括从位址Y到位址(Y-L)之一第二循环区域。15.如申请专利范围第14项所述之积体电路,其中当L的値以二进位表示时,在位元位置N,具有一领先1,以及该位址边界X系由该目前位址A之低阶N个位元均以0取代而得,以及该位址边界Y系由该目前位址A之低阶N个位元均以1取代而得。16.如申请专利范围第14项所述之积体电路,其中该处理器包括一解码器,该解码器系回应于指令,并将该目前位址A、该位址偏移M、以及该区域长度値L储存于该些暂存器中。17.如申请专利范围第14项所述之积体电路,其中该位址偏移M与该控制讯号系储存于单一暂存器中。18.如申请专利范围第14项所述之积体电路,其中该位址产生器包括:一第一加法器,用以产生一第一输出,该第一输出相等于A+M,并伴随着一进位输出讯号;一第二加法器,用以产生一第二输出,当M的符号为正时,该第二输出相等于一第一绕折位址(A+M)-(L+1),并伴随着一进位输出讯号,或当M的符号为负时,该第二输出相等于一第二绕折位址(A+M)+(L+1),并伴随着一进位输出讯号;以及一选择逻辑,系回应于来自该第一加法器的进位输出讯号及该第二加法器之进位输出讯号,而用以选择该第一输出或该第二输出。19.如申请专利范围第14项所述之积体电路,其中当L的値以二进位表示时,在位元位置N,具有一领先1,以及该位址边界X系由该目前位址A之低阶N个位元均以0取代而得,以及该位址边界Y系由该目前位址A之低阶N个位元均以1取代而得,以及该位址产生器包括:一第一加法器,用以产生一第一输出,该第一输出相等于A+M,并在位元位置N,具有一进位输出讯号;一第二加法器,用以产生一第二输出,当M的符号为正时,该第二输出相等于一第一绕折位址(A+M)-(L+1),并在位元位置N,具有一进位输出讯号,或当M的符号为负时,该第二输出相等于一第二绕折位址(A+M)+(L+1),并在位元位置N,具有一进位输出讯号;以及一选择逻辑,系回应于来自该第一加法器的进位输出讯号及该第二加法器之进位输出讯号,以及回应于该控制讯号,而用以选择该第一输出或该第二输出。20.如申请专利范围第19项所述之积体电路,其中所组成的该选择逻辑:选择到该第一加法器的输出的情况为,当该控制讯号系设定用于该第一记忆体位址、该位址偏移为正、以及来自该第一加法器与该第二加法器之进位输出均非为1,或当该控制讯号系设定用于该第一记忆体位址、该位址偏移为负、以及来自该第一加法器之进位输出为1,或当该控制讯号系设定用于该第二记忆体位址、该位址偏移为正、以及来自该第一加法器之进位输出为0,或当该控制讯号系设定用于该第二记忆体位址、该位址偏移为负、以及来自该第一加法器与该第二加法器之进位输出都为1;以及选择到该第二加法器的输出的情况为,当该控制讯号系设定用于该第一记忆体位址、该位址偏移为正、以及来自该第一加法器或该第二加法器之进位输出至少一个为1,或当该控制讯号系设定用于该第一记忆体位址、该位址偏移为负、以及来自该第一加法器之进位输出为0,或当该控制讯号系设定用于该第二记忆体位址、该位址偏移为正、以及来自该第一加法器之进位输出为1,或当该控制讯号系设定用于该第二记忆体位址、该位址偏移为负、以及来自该第一加法器或该第二加法器之进位输出至少一个为0。21.一种积体电路,包括:一处理器;复数个暂存器,耦接于该处理器,用以储存一目前位址A、一位址偏移M、以及一区域长度値L;一记忆体;以及一位址产生器,系产生用于记忆体中之具有隐藏式上位址边界之循环区域,该位址产生器的组成系回应于A、M、以及L,而用以计算出一记忆体位址,而该记忆体位址系相当于该目前位址A加上该位址偏移M,并用于具有一位址边界Y与包括从位址Y到位址(Y-L)之一循环区域。22.如申请专利范围第21项所述之积体电路,其中当L的値以二进位表示时,在位元位置N,具有一领先1,以及该位址边界Y系由该目前位址A之低阶N个位元均以1取代而得。23.如申请专利范围第21项所述之积体电路,其中该处理器包括一解码器,该解码器系回应于指令,并将该目前位址A、该位址偏移M、以及该区域长度値L储存于该些暂存器中。24.如申请专利范围第21项所述之积体电路,其中该位址产生器包括:一第一加法器,用以产生一第一输出,该第一输出相等于A+M,并伴随着一进位输出讯号;一第二加法器,用以产生一第二输出,当M的符号为正时,该第二输出相等于一第一绕折位址(A+M)-(L+1),并伴随着一进位输出讯号,或当M的符号为负时,该第二输出相等于一第二绕折位址(A+M)+(L+1),并伴随着一进位输出讯号;以及一选择逻辑,系回应于来自该第一加法器的进位输出讯号及该第二加法器之进位输出讯号,而用以选择该第一输出或该第二输出。25.如申请专利范围第21项所述之积体电路,其中当L的値以二进位表示时,在位元位置N,具有一领先1,而该位址边界Y系由该目前位址A之低阶N个位元均以1取代而得,以及该位址产生器包括:一第一加法器,用以产生一第一输出,该第一输出相等于A+M,并伴随着一进位输出讯号;一第二加法器,用以产生一第二输出,当M的符号为正时,该第二输出相等于一第一绕折位址(A+M)-(L+1),并伴随着一进位输出讯号,或当M的符号为负时,该第二输出相等于一第二绕折位址(A+M)+(L+1),并伴随着一进位输出讯号;以及一选择逻辑,系回应于来自该第一加法器的进位输出讯号及该第二加法器之进位输出讯号,而用以选择该第一输出或该第二输出。26.如申请专利范围第25项所述之积体电路,其中所组成的该选择逻辑:选择到该第一加法器的输出的情况为,当该位址偏移为正,以及来自该第一加法器之进位输出为0,或当该位址偏移为负,以及来自该第一加法器与该第二加法器之进位输出都为1;以及选择到该第二加法器的输出的情况为,当该位址偏移为正,以及来自该第一加法器之进位输出为1,或当该位址偏移为负,以及来自该第一加法器或该第二加法器之进位输出至少一个为0。图式简单说明:第1图绘示的是本发明之具有隐藏式上/下边界循环位址产生器的积体电路处理器之简化方块图;第2a、2b、以及2c图分别绘示的是用于习知技术之隐藏式下位址边界的循环区域的位址分布示意图、用于本发明之一隐藏式上位址边界的循环区域的实施例之位址分布示意图、以及用于本发明之一结合隐藏式上位址边界与隐藏式下位址边界的循环区域的实施例之位址分布示意图;第3图绘示的是根据习知技术之以隐藏式下位址边界为基底的循环位址产生器的简化逻辑图;第4图绘示的是根据本发明之一以隐藏式上位址边界为基底的循环位址产生器之实施例的简化逻辑图;第5图绘示的是根据本发明之一结合隐藏式上位址边界与隐藏式下位址边界的循环位址产生器之实施例的逻辑图;以及第6图绘示的是根据本发明之一隐藏式上位址边界的循环位址产生器之实施例的逻辑图,图中显示藉由优先权选择器,会选择到在位置N的进位输出。
地址 新竹市新竹科学园区力行路十六号