-
公开(公告)号:US5659700A
公开(公告)日:1997-08-19
申请号:US388567
申请日:1995-02-14
申请人: Hwang-Chung Chen , Shih-Chang Hsu
发明人: Hwang-Chung Chen , Shih-Chang Hsu
CPC分类号: G06F5/10 , G06F9/3552 , G06F2205/106 , G06F7/72
摘要: A method and apparatus for generating a modulo address for accessing a circular buffer. The method and apparatus accept as inputs a length L of the circular buffer, a current address A of the circular buffer, and an offset M between the current address and the next address to be generated. The offset M may be positive or negative. During operation of the present invention, the current address A first is broken down into a base address B and an offset from the base address a. Then, in accordance with the length L and the offset M, the invention determines an absolute offset and a wrapped offset. One of these offsets is added to the base address B to generate a next address for the circular buffer. The determination of which offset to add to the base address B is made by performing one of two comparisons. Specifically, either the absolute offset is compared to a predetermined value indicating the beginning of the circular buffer or the absolute offset is compared to a predetermined value indicating the end of the circular buffer, depending on a sign of the offset M. In a second embodiment of the invention, one of the offsets is added to the base address B in accordance with a Wrap flag determined by the circuit.
摘要翻译: 一种用于生成用于访问循环缓冲器的模地址的方法和装置。 该方法和装置接受循环缓冲器的长度L,循环缓冲器的当前地址A以及当前地址和要生成的下一个地址之间的偏移M的输入。 偏移M可以是正或负。 在本发明的操作期间,当前地址A首先被分解为基地址B和与基地址a的偏移。 然后,根据长度L和偏移量M,本发明确定绝对偏移和包围偏移。 这些偏移中的一个被添加到基地址B以生成循环缓冲器的下一个地址。 通过执行两个比较之一来确定要添加到基址B的偏移。 具体地说,取决于偏移量M的符号,将绝对偏差与表示圆形缓冲器的开始的预定值进行比较,或将绝对偏移与表示圆形缓冲器的结束的预定值进行比较。在第二实施例中 根据由电路确定的Wrap标志,将一个偏移量添加到基地址B。
-
公开(公告)号:US5918252A
公开(公告)日:1999-06-29
申请号:US756268
申请日:1996-11-25
申请人: Hwang-Chung Chen , Shih-Chang Hsu
发明人: Hwang-Chung Chen , Shih-Chang Hsu
CPC分类号: G06F5/10 , G06F9/3552 , G06F2205/106 , G06F7/72
摘要: A method and apparatus for generating a modulo address for accessing a circular buffer. The method and apparatus accept as inputs a length L of the circular buffer, a current address A of the circular buffer, and an offset M between the current address and the next address to be generated. The offset M may be positive or negative. During operation of the present invention, the current address A first is broken down into a base address B and an offset from the base address a. Then, in accordance with the length L and the offset M, the invention determines an absolute offset and a wrapped offset. One of these offsets is added to the base address B to generate a next address for the circular buffer. The determination of which offset to add to the base address B is made by performing one of two comparisons. Specifically, either the absolute offset is compared to a predetermined value indicating the beginning of the circular buffer or the absolute offset is compared to a predetermined value indicating the end of the circular buffer, depending on a sign of the offset M. In a second embodiment of the invention, one of the offsets is added to the base address B in accordance with a Wrap flag determined by the circuit.
摘要翻译: 一种用于生成用于访问循环缓冲器的模地址的方法和装置。 该方法和装置接受循环缓冲器的长度L,循环缓冲器的当前地址A以及当前地址和要生成的下一个地址之间的偏移M的输入。 偏移M可以是正或负。 在本发明的操作期间,当前地址A首先被分解为基地址B和与基地址a的偏移。 然后,根据长度L和偏移量M,本发明确定绝对偏移和包围偏移。 这些偏移中的一个被添加到基地址B以生成循环缓冲器的下一个地址。 通过执行两个比较之一来确定要添加到基址B的偏移。 具体地说,取决于偏移量M的符号,将绝对偏差与表示圆形缓冲器的开始的预定值进行比较,或将绝对偏移与表示圆形缓冲器的结束的预定值进行比较。在第二实施例中 根据由电路确定的Wrap标志,将一个偏移量添加到基地址B。
-