CN1687908A - 通过总线进行数据读取的装置和方法 - Google Patents

通过总线进行数据读取的装置和方法 Download PDF

Info

Publication number
CN1687908A
CN1687908A CNA2005100708745A CN200510070874A CN1687908A CN 1687908 A CN1687908 A CN 1687908A CN A2005100708745 A CNA2005100708745 A CN A2005100708745A CN 200510070874 A CN200510070874 A CN 200510070874A CN 1687908 A CN1687908 A CN 1687908A
Authority
CN
China
Prior art keywords
bus
storage
functional part
push
data
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
Application number
CNA2005100708745A
Other languages
English (en)
Other versions
CN100341010C (zh
Inventor
刘健
周芬
周天夷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Vimicro Corp
Original Assignee
Vimicro Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Vimicro Corp filed Critical Vimicro Corp
Priority to CNB2005100708745A priority Critical patent/CN100341010C/zh
Priority to US11/221,406 priority patent/US20060265527A1/en
Publication of CN1687908A publication Critical patent/CN1687908A/zh
Priority to TW094146870A priority patent/TW200725280A/zh
Priority to JP2005379913A priority patent/JP2006323817A/ja
Priority to KR1020050132896A priority patent/KR20060119692A/ko
Application granted granted Critical
Publication of CN100341010C publication Critical patent/CN100341010C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4208Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus
    • G06F13/4217Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a system bus, e.g. VME bus, Futurebus, Multibus with synchronous protocol
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Bus Control (AREA)
  • Communication Control (AREA)

Abstract

本发明公开了一种总线系统中的存储装置及相应的数据读取方法。该存储装置连接在总线上进行数据存取并且包括同步存储器,还包括先进先出存储器,该先进先出存储器连接在同步存储器和总线之间;在该存储装置接收到总线控制器发出的总线应答信号之前,该先进先出存储器缓存来自同步存储器的需要通过总线读出的数据,其中位于该先进先出存储器最上面的数据驱动着总线;当该存储装置接收到总线应答信号时,该先进先出存储器开始工作。本发明可有效提高总线的利用效率。

Description

通过总线进行数据读取的装置和方法
技术领域
本发明涉及通过总线进行数据存取的装置和方法,特别地,涉及通过总线进行数据读取的装置和方法。
背景技术
随着科技发展的日新月异,电子设备对嵌入式存储器的需求越来越大,由于设备内部的各个功能部件都需要对存储器进行访问,这样就有了总线的概念。各个功能部件都挂在设备内部的总线上,当需要访问存储器时,首先向总线控制器提出请求,如果总线处于空闲状态或者提出请求的功能部件的优先级较高,则被授予总线的控制权,通过总线来完成部件对存储器的访问。
由于所有的功能部件与嵌入式存储器都挂在总线上,因此嵌入式存储器也可以看作是一个功能部件,只不过它完成的功能是数据的存取罢了。而功能部件与功能部件之间也会进行通信,完成数据的交换。
一般地,功能部件与总线控制器之间的通信机制是建立在握手协议的基础上,所有的功能部件都可以看作是总线控制器的客户。当功能部件需要通过总线传输数据时,首先向总线控制器提出总线请求,要求占有总线进行数据传输,当总线控制器经过优先级仲裁认为当前功能部件的优先级最高时,向当前功能部件提供应答信号,允许其占有总线,数据开始传输。如果在传输过程中有更高优先级的功能部件提出总线请求,则中止当前功能部件的应答信号,停止这一次数据传输,并同时向更高优先级的功能部件提供总线占有权。
可以看到,在总线控制过程中,如果某一功能部件的优先级最高,那么从这个功能部件提出总线请求到它开始利用总线传输数据的时间内,总线并没有传输数据,属于额外的开销。这段时间越短,总线的利用效率越高,总线的性能也就越高。在这段时间内,总线控制器从接收到总线请求信号到给出总线应答信号的延时是相对固定的,这一过程也就是总线控制器进行优先级仲裁的过程。因此,从功能部件接收到总线应答信号到真正占有总线,开始数据传输这段时间的延时越短,总线的利用效率也就越高。
而常规的电路由于结构的限制,无法充分利用总线的数据传输能力。参照图1,图1示出了常规的总线请求和应答及相应的数据信号时序关系。其中,CLOCK代表总线时钟;BUS_REQ代表功能部件发出的总线请求信号;BUS_ACK代表总线控制器产生的总线应答信号,表示总线占有权的成功转移;DATA信号代表在总线上传输的数据。由于常规的电路设计都是基于同步电路设计,输出必须经过触发器锁存,所以从功能部件接收到总线应答信号后开始驱动内部数据输出到总线,最快也只能在下个时钟跳变时将第一个数据D0送到数据总线上。也就是说,功能部件从接收到总线应答信号到占有总线传输数据总是要耗费一个时钟周期以上的时间,这样,就有一个时钟周期被白白浪费掉了,降低了总线的利用效率。
发明内容
本发明的目的在于,提高总线的利用效率。
根据本发明的第一方面,提供一种总线系统中的存储装置,所述存储装置连接在总线上进行数据存取并且包括同步存储器,其特征在于,所述存储装置还包括先进先出存储器,该先进先出存储器连接在同步存储器和总线之间;在所述存储装置接收到总线控制器发出的总线应答信号之前,所述先进先出存储器缓存来自同步存储器的需要通过总线读出的数据,其中位于所述先进先出存储器最上面的数据驱动着总线;当所述存储装置接收到所述总线应答信号的时候,所述先进先出存储器开始工作。
在第一方面中,优选地,所述先进先出存储器在存储装置向总线控制器发出总线请求信号之前或同时,缓存来自同步存储器的数据。
优选地,当所述先进先出存储器不满的时候,所述同步存储器中的数据补入先进先出存储器。
优选地,所述先进先出存储器由D触发器构成。
优选地,所述先进先出存储器具有小存储容量。
根据第二方面,提供一种总线系统,包括根据本发明第一方面的存储装置。
根据第三方面,提供一种总线系统中的功能部件,所述功能部件连接在总线上进行数据传输,其特征在于,所述功能部件包括先进先出存储器,在所述功能部件接收到总线控制器发出的总线应答信号之前,所述先进先出存储器缓存需要读出的数据,其中位于所述先进先出存储器最上面的数据驱动着总线;当所述功能部件接收到所述总线应答信号的时候,所述先进先出存储器开始工作。
在第三方面中,优选地,所述功能部件包括同步存储器,用于存储向所述先进先出存储器缓存前的数据。
优选地,所述先进先出存储器在功能部件向总线控制器发出总线请求信号之前或同时,缓存需要读出的数据。
优选地,当所述先进先出存储器不满的时候,所述功能部件中需要读出的数据补入先进先出存储器。
优选地,所述先进先出存储器由D触发器构成。
优选地,所述先进先出存储器具有小存储容量。
根据第四方面,提供一种总线系统,包括根据本发明第三方面的功能部件。
根据第五方面,提供一种通过总线对功能部件进行数据读取的方法,功能部件连接在总线上进行数据传输,其特征在于,所述功能部件具有先进先出存储器,在接收到总线控制器发出的总线应答信号之前,所述功能部件利用该先进先出存储器来缓存需要读出的数据,其中位于所述先进先出存储器最上面的数据驱动着总线;当所述功能部件接收到所述总线应答信号的时候,所述先进先出存储器开始工作。
在第五方面中,优选地,在向总线控制器发出总线请求信号之前或同时,所述功能部件利用该先进先出存储器来缓存需要读出的数据。
优选地,当所述先进先出存储器不满的时候,向其中补入需要读出的数据。
优选地,所述先进先出存储器由D触发器构成。
优选地,所述先进先出存储器具有小存储容量。
根据本发明,在功能部件中加入容量较小的先进先出存储器来进行数据传输,由于先进先出存储器无需寻址,所以可在最短时间内响应总线应答信号,将数据在总线应答有效的当前时钟内就驱动到总线上,从而提高了总线的利用效率。
附图说明
图1示出了常规的总线请求和应答及相应的数据信号时序关系;
图2示出了本发明一个实施例的总线系统结构框图;
图3示出了本发明的总线请求和应答及相应的数据信号时序关系。
为更好地理解本发明,下面仅以一个实施例结合附图对本发明作进一步说明。
具体实施方式
参照图2,图2示出了本发明一个实施例的总线系统结构框图。该总线系统包括总线控制器、总线以及多个功能部件10、20。功能部件10、20可以是具有某种特定功能的任何模块,如存储装置、MP3解码器、编解码器(codec)等。为简明起见,与常规总线系统的工作原理、过程相同的部分,这里不再赘述。
功能部件10包括同步存储器11,还包括先进先出存储器(FIFO)12,先进先出存储器12连接在同步存储器11和总线之间。优选地,使用D触发器来实现先进先出存储器,因此其输出也满足经过触发器锁存的条件。D触发器的特点是比较灵活,可以在当前时钟周期就输出数据。最好该先进先出存储器的容量较小,由此带来的面积开销可以忽略不计。
当有数据需要通过总线进行传输时,功能部件10一方面向总线控制器发出总线请求信号BUS_REQ1;另一方面,在接收到总线控制器发出的总线应答信号BUS_ACK1之前,将同步存储器11中的数据读出并存储在先进先出存储器12中,直到它满为止。优选地,在向总线控制器发出总线请求信号BUS_REQ1之前或同时,将数据读出并缓存在先进先出存储器12中。先进先出存储器12最上面的数据始终驱动着总线,无论总线是否给予它使用权。
当总线应答信号BUS_ACK1产生时,总线占有权被转移给功能部件10,先进先出存储器12开始工作。由于位于该先进先出存储器最上面的数据始终驱动着总线,因此这个数据可以被立刻使用而不会浪费一个时钟周期,在下一个时钟周期,根据先进先出存储器的特性,其第二个数据将被弹到上面来,继续总线传输。同时只要先进先出存储器12不满,就从同步存储器11中读出数据写入先进先出存储器12。这样,总线到功能部件10内部的同步存储器11之间的内部开销被节省掉了。
由于先进先出存储器的读写速度等于总线传输速度,因此除了功能器件的数据传输结束的情况以外,不会出现由于先进先出存储器的读写速度慢而影响总线效率的情况。
参照图3,图3示出了本发明的总线请求和应答及相应的数据信号时序关系。D0代表先进先出存储器12中最上面的数据,它始终驱动着总线,即使没有BUS_ACK1。这样当BUS_ACK1有效的第一个时钟周期内,D0就可以通过总线传输。对比图1和图3,在同样长的总线应答时间内,改进前的常规结构只能传输3个数据,而改进后的结构可以传输4个数据,提高了总线的利用效率。
在此实施例中,虽然先进先出存储器通过D触发器实现,但是在满足总线应答信号有效前读出第一个数据的前提下,先进先出存储器也可采用RAM来实现。另外,功能部件10具有同步存储器,然而,本领域技术人员能够理解的是,功能部件10也可以不具有同步存储器,而只要其中存在需要通过总线读数据来实现数据交换的情况,均适用本发明。
显而易见,在此描述的本发明可以有许多变化,这种变化不能认为偏离本发明的精神和范围。因此,所有对本领域技术人员显而易见的改变,都包括在本权利要求书的涵盖范围之内。

Claims (18)

1、一种总线系统中的存储装置,所述存储装置连接在总线上进行数据存取并且包括同步存储器,其特征在于,所述存储装置还包括先进先出存储器,该先进先出存储器连接在同步存储器和总线之间;在所述存储装置接收到总线控制器发出的总线应答信号之前,所述先进先出存储器缓存来自同步存储器的需要通过总线读出的数据,其中位于所述先进先出存储器最上面的数据驱动着总线;当所述存储装置接收到所述总线应答信号的时候,所述先进先出存储器开始工作。
2、如权利要求1所述的存储装置,其特征在于,所述先进先出存储器在存储装置向总线控制器发出总线请求信号之前或同时,缓存来自同步存储器的数据。
3、如权利要求1所述的存储装置,其特征在于,当所述先进先出存储器不满的时候,所述同步存储器中的数据补入先进先出存储器。
4、如权利要求1至3中任一项所述的存储装置,其特征在于,所述先进先出存储器由D触发器构成。
5、如权利要求1至3中任一项所述的存储装置,其特征在于,所述先进先出存储器具有小存储容量。
6、一种总线系统,其特征在于,包括权利要求1至5中任一项所述的存储装置。
7、一种总线系统中的功能部件,所述功能部件连接在总线上进行数据传输,其特征在于,所述功能部件包括先进先出存储器,在所述功能部件接收到总线控制器发出的总线应答信号之前,所述先进先出存储器缓存需要读出的数据,其中位于所述先进先出存储器最上面的数据驱动着总线;当所述功能部件接收到所述总线应答信号的时候,所述先进先出存储器开始工作。
8、如权利要求7所述的功能部件,其特征在于,所述功能部件包括同步存储器,用于存储向所述先进先出存储器缓存前的数据。
9、如权利要求7所述的功能部件,其特征在于,所述先进先出存储器在功能部件向总线控制器发出总线请求信号之前或同时,缓存需要读出的数据。
10、如权利要求7所述的功能部件,其特征在于,当所述先进先出存储器不满的时候,所述功能部件中需要读出的数据补入先进先出存储器。
11、如权利要求7至10中任一项所述的功能部件,其特征在于,所述先进先出存储器由D触发器构成。
12、如权利要求7至10中任一项所述的功能部件,其特征在于,所述先进先出存储器具有小存储容量。
13、一种总线系统,其特征在于,包括权利要求7至12中任一项所述的功能部件。
14、一种通过总线对功能部件进行数据读取的方法,所述功能部件连接在总线上进行数据传输,其特征在于,所述功能部件具有先进先出存储器,在接收到总线控制器发出的总线应答信号之前,所述功能部件利用所述先进先出存储器来缓存需要读出的数据,其中位于所述先进先出存储器最上面的数据驱动着总线;当所述功能部件接收到所述总线应答信号的时候,所述先进先出存储器开始工作。
15、如权利要求14所述的方法,其特征在于,在向总线控制器发出总线请求信号之前或同时,所述功能部件利用所述先进先出存储器来缓存需要读出的数据。
16、如权利要求14所述的方法,其特征在于,当所述先进先出存储器不满的时候,向其中补入需要读出的数据。
17、如权利要求14至16中任一项所述的方法,其特征在于,所述先进先出存储器由D触发器构成。
18、如权利要求14至16中任一项所述的方法,其特征在于,所述先进先出存储器具有小存储容量。
CNB2005100708745A 2005-05-20 2005-05-20 通过总线进行数据读取的装置和方法 Expired - Fee Related CN100341010C (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CNB2005100708745A CN100341010C (zh) 2005-05-20 2005-05-20 通过总线进行数据读取的装置和方法
US11/221,406 US20060265527A1 (en) 2005-05-20 2005-09-06 Method and apparatus for increasing efficiency in use of data bus
TW094146870A TW200725280A (en) 2005-05-20 2005-12-27 Method and device for controlling data access to data bus
JP2005379913A JP2006323817A (ja) 2005-05-20 2005-12-28 データバスの利用における効率を向上させる方法及び装置
KR1020050132896A KR20060119692A (ko) 2005-05-20 2005-12-29 데이터버스의 사용 효율 개선 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100708745A CN100341010C (zh) 2005-05-20 2005-05-20 通过总线进行数据读取的装置和方法

Publications (2)

Publication Number Publication Date
CN1687908A true CN1687908A (zh) 2005-10-26
CN100341010C CN100341010C (zh) 2007-10-03

Family

ID=35305949

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100708745A Expired - Fee Related CN100341010C (zh) 2005-05-20 2005-05-20 通过总线进行数据读取的装置和方法

Country Status (5)

Country Link
US (1) US20060265527A1 (zh)
JP (1) JP2006323817A (zh)
KR (1) KR20060119692A (zh)
CN (1) CN100341010C (zh)
TW (1) TW200725280A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645053B (zh) * 2009-06-29 2011-01-05 福建星网锐捷网络有限公司 一种提高数据传输效率的方法及装置
CN103824589A (zh) * 2014-03-03 2014-05-28 西安华芯半导体有限公司 一种同步存储器

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107844270A (zh) * 2014-12-31 2018-03-27 华为技术有限公司 一种存储阵列系统及数据写请求处理方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4390969A (en) * 1980-04-21 1983-06-28 Burroughs Corporation Asynchronous data transmission system with state variable memory and handshaking protocol circuits
KR0123239B1 (ko) * 1994-07-06 1997-11-26 김주용 선입선출방식(fifo) 메모리
US6105094A (en) * 1998-01-26 2000-08-15 Adaptec, Inc. Method and apparatus for allocating exclusive shared resource requests in a computer system
AU4211499A (en) * 1998-05-27 1999-12-13 Advanced Testing Technologies, Inc. Automatic test instrument for multi-format video generation and capture
US6484218B1 (en) * 1998-10-08 2002-11-19 Texas Instruments Incorporated Method for improving direct memory access performance
JP2002297533A (ja) * 2001-04-02 2002-10-11 Komatsu Ltd データ転送装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101645053B (zh) * 2009-06-29 2011-01-05 福建星网锐捷网络有限公司 一种提高数据传输效率的方法及装置
CN103824589A (zh) * 2014-03-03 2014-05-28 西安华芯半导体有限公司 一种同步存储器
CN103824589B (zh) * 2014-03-03 2016-10-05 西安紫光国芯半导体有限公司 一种同步存储器

Also Published As

Publication number Publication date
KR20060119692A (ko) 2006-11-24
US20060265527A1 (en) 2006-11-23
TW200725280A (en) 2007-07-01
CN100341010C (zh) 2007-10-03
JP2006323817A (ja) 2006-11-30

Similar Documents

Publication Publication Date Title
CN1530819A (zh) 缓冲芯片及—或多存储装置之驱动方法
CN1343987A (zh) 半导体存储器件及采用其的存储模块和系统
CN1766862A (zh) 包括存储器存取控制器和总线的存储器件的微处理器系统
CN1376280A (zh) 总线系统的事务调度
CN1825479A (zh) 改进的双数据速率ⅱ型动态随机存取存储器数据通路
WO2005071557A2 (en) A multiple address two channel bus structure
CN1993936A (zh) FlexRay通信组件
CN1492342A (zh) 电子设备和存储装置的启动控制方法
CN1825295A (zh) 数据传输控制装置、图像处理装置和数据传输控制方法
CN101036197A (zh) 用于匹配具有不同数量将被同时访问的存储体的存储控制器的非易失性存储装置
CN100341010C (zh) 通过总线进行数据读取的装置和方法
CN102622192A (zh) 一种弱相关多端口并行存储控制器
CN1577608A (zh) 采用数据反向的存储系统和存储系统的数据反向方法
CN1260663C (zh) 串行总线磁盘扩充器和便携式存储装置
CN1664743A (zh) 多层系统和时钟控制方法
US11693798B2 (en) Layered ready status reporting structure
CN100357920C (zh) 平行输入/输出数据传输控制器
CN1353503A (zh) 用于在所需的时序改变脉宽调制的装置
CN101075221A (zh) 管理分离总线上总线代理之间的数据流的方法和系统
CN1441566A (zh) 使用三步通信缓存的通信设备
CN1744068A (zh) 一种适应于串行外围设备接口总线高层协议的帧结构
CN1969269A (zh) 用于传送数据的总线控制器
CN1744069A (zh) 一种适应于串行外围设备接口总线通信方法
CN1787110A (zh) 一种实现接口的方法和装置
CN1992067A (zh) 具有设备间点对点和点对两点链接的存储系统

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
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20071003

Termination date: 20120520