CN101042636A - 先进先出系统和先进先出系统运作方法 - Google Patents

先进先出系统和先进先出系统运作方法 Download PDF

Info

Publication number
CN101042636A
CN101042636A CNA2006101431946A CN200610143194A CN101042636A CN 101042636 A CN101042636 A CN 101042636A CN A2006101431946 A CNA2006101431946 A CN A2006101431946A CN 200610143194 A CN200610143194 A CN 200610143194A CN 101042636 A CN101042636 A CN 101042636A
Authority
CN
China
Prior art keywords
data
fifo
state
command
processor
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
CNA2006101431946A
Other languages
English (en)
Other versions
CN100543665C (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.)
MediaTek Inc
Original Assignee
MediaTek Inc
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 MediaTek Inc filed Critical MediaTek Inc
Publication of CN101042636A publication Critical patent/CN101042636A/zh
Application granted granted Critical
Publication of CN100543665C publication Critical patent/CN100543665C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/1652Handling requests for interconnection or transfer for access to memory bus based on arbitration in a multiprocessor architecture
    • G06F13/1663Access to shared memory

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)
  • Multi Processors (AREA)

Abstract

本发明提供一先进先出(FIFO)系统,用以在一第一装置和一第二装置之间传送数据。其中一处理器处理状态指令以控制数据的传输。一第一数据FIFO装置缓冲输出入该第一装置的数据指令。一第一状态FIFO装置耦接该第一装置和该处理器,缓冲在该第一装置和该处理器之间传送的状态指令。一第二数据FIFO装置缓冲输出入该第二装置的数据指令。一第二状态FIFO装置耦接该第二装置和该处理器,缓冲在该第二装置和该处理器之间传送的状态指令。一FIFO控制器包含一存储器控制器以控制一存储器装置,以及一数据控制器连接该第一和第二数据FIFO装置,使该第一和第二数据FIFO装置之间的数据直接互相传送。

Description

先进先出系统和先进先出系统运作方法
技术领域
本发明是关于先进先出系统,尤其是有关于复制数据时的先进先出缓冲器共享机制。
背景技术
图1为一公知的先进先出(First In First Out;FIFO)系统100耦接至一第一装置115和一第二装置125。在先进先出系统100中包含一存储器控制器120,一第一FIFO装置140和一第二FIFO装置150。该存储器控制器120受到处理器130的控制,对存储器装置110进行存取控制。该第一FIFO装置140是指令进出第一装置115的缓冲界面,而第二FIFO装置150是对应第二装置125的缓冲界面。进出第一FIFO装置140和第二FIFO装置150的指令,有两种类型,状态指令和数据指令。从第一装置115或第二装置125传送出来的状态指令被处理器130解译与执行,而数据指令则通过存储器控制器120被送至存储器装置储存起来。因此,每个第一装置115和第二装置125都各自耦接至存储器控制器120和处理器130,并包含侦测机制用来判断发出的指令属于何种类型,并对应的传送至存储器控制器120或处理器130。
图2a为公知数据读取程序的流程图。在步骤202中,当先进先出系统100从第一装置115要求数据,处理器130发出一状态指令至第一FIFO装置140以初始化读取步骤。该第一装置115接着从第一FIFO装置140中读取并执行该状态指令,以判断被要求的数据是否存在。在步骤204中,从该第一装置115中发出一状态指令至该第一FIFO装置140,用以指出被要求的数据是存在的。接着,该处理器130从该第一FIFO装置140中读取该状态指令。在步骤206中,该第一装置115随后将携带着数据值的至少一数据指令传送至该第一FIFO装置140。在确认数据是可读取的之后,该处理器130命令该存储器控制器120读取第一FIFO装置140中的数据指令并送至存储器装置储存。
图2b为公知数据写入程序的流程图。在步骤212中,如果该先进先出系统100发出一要求欲从存储器装置将数据写入第二装置125,该处理器130发出一状态指令至该第二FIFO装置150以初始化该写入程序。该第二装置125接着从该第二FIFO装置150中读取该状态指令并执行,判断该第二装置125是否有能力接收该数据。在步骤214中,该第二装置125响应一状态指令至该第二FIFO装置150,以表示是否接收数据。该处理器130读取第二FIFO装置150中该回复的状态指令,以确认写入程序可以进行。在步骤216中,在确认写入程序可以进行后,该处理器130命令存储器控制器120从存储器装置中将数据传送至该第二FIFO装置150。在步骤218中,当该第二装置125通过第二FIFO装置150获取数据指令后,回传另一状态指令至第二FIFO装置150以表示数据确收。而该处理器130从该第二FIFO装置150中读取该状态指令,以确认数据写入程序完成。
该先进先出系统100可以是卡片阅读机,而第一装置115和第二装置125可以是SD卡或CF卡之类的存储卡。当有数据要从第一装置115拷贝到第二装置125时,或反之亦然,图2a和图2b的程序就要跑一遍。存储器装置和处理器130都要耗费大量的系统资源和时间。此外,判断指令的类型也需要耗用处理器130的计算能力。因此一个改进的架构是有待研发的。
发明内容
本发明实施例之一提供一先进先出系统,用以在一第一装置和一第二装置之间传送数据。其中一处理器处理状态指令以控制数据的传输。一第一数据FIFO装置缓冲输出入该第一装置的数据指令。一第一状态FIFO装置耦接该第一装置和该处理器,缓冲在该第一装置和该处理器之间传送的状态指令。一第二数据FIFO装置缓冲输出入该第二装置的数据指令。一第二状态FIFO装置耦接该第二装置和该处理器,缓冲在该第二装置和该处理器之间传送的状态指令。一FIFO控制器包含一存储器控制器以控制一存储器装置,以及一数据控制器连接该第一和第二数据FIFO装置,使该第一和第二数据FIFO装置之间的数据直接互相传送。本发明另提供先进先出系统运作方法,用以通过上述先进先出系统,在一第一装置和一第二装置之间传送数据。该处理器个别通过该第一状态FIFO装置和该第二状态FIFO装置传送状态指令至该第一装置和该第二装置,以初始化一复制程序。接着该第一和第二装置个别通过该第一状态FIFO装置和该第二状态FIFO装置,回复对应的状态指令至该处理器以表示初始化已确认。随后该第一装置传送数据指令至该第一数据FIFO装置,并将该数据指令从该第一数据FIFO装置拷贝到该第二数据FIFO装置中。最后该第二装置读取该第二数据FIFO装置中的数据指令。
本发明另一实施例提供一先进先出系统。其中一存储器控制器是用以做为存取一存储器装置的接口。一处理器处理状态指令以控制数据的传输。一第一状态FIFO装置耦接该第一装置和该处理器,缓冲在该第一装置和该处理器之间传送的状态指令。一第二状态FIFO装置耦接该第二装置和该处理器,缓冲在该第二装置和该处理器之间传送的状态指令。一数据FIFO装置,缓冲输出入该第一装置和该第二装置的数据指令。一FIFO控制器耦接该第一状态FIFO装置,该第二状态FIFO装置和该数据FIFO装置,控制该第一装置和该第二装置之间的状态指令和数据指令的传输。本发明另提供先进先出系统运作方法,用以通过上述先进先出系统,在一第一装置和一第二装置之间传送数据。首先,该处理器个别通过该第一状态FIFO装置和该第一选择器传送状态指令至该第一装置和该第二装置,以初始化一复制程序。该第一和第二装置个别通过该第一状态FIFO装置和该第二状态FIFO装置,回复对应的状态指令至该处理器以表示初始化已确认。最后该第一装置传送数据指令至该数据FIFO装置,而该第二装置读取该数据FIFO装置中的数据指令。
在另一实施例中,一先进先出系统只包含一个数据FIFO装置和一个状态FIFO装置。该数据FIFO装置耦接该存储器控制器,用以缓冲输出入该存储器控制器,该第一装置和该第二装置的数据指令。该状态FIFO装置耦接该处理器,缓冲在该第一装置,该第二装置和该处理器之间传送的状态指令。该FIFO装置控制器耦接该数据FIFO装置和该状态FIFO装置,控制该第一装置和该第二装置之间的状态指令和数据指令的传输。基于本实施例的先进先出系统运作方法包含下列步骤。该处理器个别通过该状态FIFO装置传送状态指令至该第一装置和该第二装置,以初始化一复制程序。该第一和第二装置个别通过该状态FIFO装置,回复对应的状态指令至该处理器以表示初始化已确认,接着该第一装置传送数据指令至该数据FIFO装置。最后该第二装置读取该数据FIFO装置中的数据指令。
在上述先进先出系统中,该第一装置和该第二装置为遵守IEEE 1394或USB标准的同型装置或不同型装置。
附图说明
图1为一公知的先进先出系统100耦接至一第一装置115和一第二装置125;
图2a为公知数据读取程序的流程图;
图2b为公知数据写入程序的流程图;
图3a为本发明实施例之一的先进先出系统300,耦接至第一装置115和第二装置125;
图3b为图3a中的先进先出系统300中的FIFO控制器330;
图3c为根据图3a而实施的数据复制程序的流程图;
图4a为本发明实施例之一的先进先出系统400,耦接至第一装置115和第二装置125;
图4b为图4a中的先进先出系统400中的FIFO控制器450;
图4c为根据图4a而实施的数据复制程序的流程图;
图5a为本发明实施例之一的先进先出系统500,耦接至第一装置115和第二装置125;以及
图5b为图5a中的先进先出系统500中的FIFO控制器550。
符号说明:
100~先进先出系统;        110~存储器装置;
120~存储器控制器;        130~处理器;
140~第一FIFO装置;        150~第二FIFO装置;
115~第一装置;            125~第二装置;
300~先进先出系统;        310~第一数据FIFO装置;
320~第二数据FIFO装置;
330~FIFO控制器;          315~第一状态FIFO装置;
325~第二状态FIFO装置;
314~裁决器;              324~裁决器;
312~第一选择器;          322~第二选择器;
400~先进先出系统;        410~第一状态FIFO装置;
420~第二状态FIFO装置;
430~数据FIFO装置;        450~FIFO控制器;
414~第一裁决器;          424~第二裁决器;
412~第一选择器;          422~第二选择器;
432~第三选择器;          500~先进先出系统;
502~数据FIFO装置;        504~状态FIFO装置;
550~FIFO控制器;          512~第一裁决器;
522~第二裁决器;          514~第一选择器;
524~第二选择器。
具体实施方式
为让本发明的上述和其它目的、特征、和优点能更明显易懂,下文特举出较佳实施例,并配合所附图式,作详细说明如下:
图3a为本发明实施例之一的先进先出系统300,耦接至第一装置115和第二装置125。该先进先出系统300包含一FIFO控制器330,一处理器130,一第一数据FIFO装置310,一第一状态FIFO装置315,一第二数据FIFO装置320,以及一第二状态FIFO装置325。该第一数据FIFO装置310和该第一状态FIFO装置315为第一装置115的缓冲界面,各别负责状态和数据指令的传送。而该第二数据FIFO装置320和第二状态FIFO装置325则是对应第二装置125的缓冲界面。这两组电路界面是相同的,所以本实施例只以第一装置115为例。从该第一装置115中送出的指令,在裁决器(arbitrator)314中判别类型,使数据指令送至第一数据FIFO装置310,而状态指令送至第一状态FIFO装置315。所述的FIFO装置可以是双向的,因此欲传给第一装置115的指令亦是通过该第一数据FIFO装置310和第一状态FIFO装置315,使该第一装置115通过裁决器314读取它们。该裁决器314耦接第一数据FIFO装置310和第一状态FIFO装置315,对应的将从第一装置115传来的数据和状态指令转送至第一数据FIFO装置310和第一状态FIFO装置315,或反过来将第一数据FIFO装置310和第一状态FIFO装置315传来的数据和状态指令转送至该第一装置115。该裁决器324则是对第二数据FIFO装置320,第二状态FIFO装置325和第二装置125执行同样的功能。由于状态指令基本上是代表特定功能函数的机械码,专门提供给处理器130执行,因此第一装置115和第二装置125之间不需要互相传送状态指令。在处理器130的控制下,状态指令在第一装置115和第一状态FIFO装置315间,以及第二装置125和第二状态FIFO装置325之间来往传送。在FIFO控制器330中,则由一数据控制器350主控数据指令的传送。更确切的说,数据控制器350掌控了第一数据FIFO装置310,第二数据FIFO装置320和存储器控制器120之中任两者之间的数据指令传输。该FIFO控制器330亦包含了一存储器控制器120,在处理器130的指挥之下控制存储器装置110的存取。
图3b为图3a中的先进先出系统300中的FIFO控制器330。该数据控制器350中包含一第一选择器312和一第二选择器322。该第一选择器312耦接第二数据FIFO装置320和存储器控制器120的输出端,选择其中一个做为第一数据FIFO装置310的输入值。同样的,第二选择器322耦接至第一数据FIFO装置310和存储器控制器120,并选择其中一者做为第二数据FIFO装置320的输入值。
图3c为根据图3a而实施的数据复制程序的流程图。当有数据欲从第一装置115拷贝到第二装置125时,该数据控制器350提供一直接数据信道,不需要经由存储器控制器120和存储器装置110的存取而达成。在步骤301中,当先进先出系统300要进行复制程序时,该处理器130发出状态指令#St1和#St2通过对应的第一状态FIFO装置315,裁决器314,第二状态FIFO装置325和裁决器324传送至该第一装置115和第二装置125,以初始化该复制程序。该状态指令是遵守IEEE 1394规格的格式。举例来说,处理器130以SET_RW_REG_ADRS,WRITE_REG和SET_CMD指令对第一装置115发动一读取程序。同时处理器130也藉由CMD0,ACMD41,CMD2,CMD3和CMD7等指令对第二装置125发动一写入程序。在步骤302中,该第一装置115和第二装置125通过裁决器314,第一状态FIFO装置315,裁决器324和第二状态FIFO装置325回以对应的状态指令#St1和#St2至处理器130,以确认启动程序。在步骤303中,当该处理器130收到初始化被确认的消息,则开始进行数据的传输。该第一装置115通过裁决器314写入数据至该第一数据FIFO装置310。而该数据控制器350从第一数据FIFO装置310将数据拷贝至第二数据FIFO装置320,如数据指令#D1所示。该第二装置125接着通过裁决器324从第二数据FIFO装置320读取数据,如数据指令#D2所示。
图4a为本发明实施例之一的先进先出系统400,耦接至第一装置115和第二装置125。在先进先出系统400中,第一状态FIFO装置410是供作第一装置115和处理器130之间的缓冲界面,用以传送状态指令#St1。而第二状态FIFO装置420则是供#St2在第二装置125和处理器130之间传送的缓冲界面。数据FIFO装置430是一种共享的数据缓冲器,供存储器控制器120,第一装置115和第二装置125三者之间的#D传输。由于第一装置115和第二装置125存取数据是受到状态指令的控制,所以两者的数据指令可以同时储存于同一个数据FIFO装置430中而不致发生错乱。一FIFO控制器450耦接该第一状态FIFO装置410,该第二状态FIFO装置420和该数据FIFO装置430,对进出该第一装置115和第二装置125的数据进行多任务控管。该先进先出系统400对第一装置115和第二装置125是具有向下兼容性的,因此数据流#C1和#C2仍然是遵守公知的通讯协议。
图4b为图4a中的先进先出系统400中的FIFO控制器450。该FIFO控制器450中包含三个选择器和两个裁决器,用以处理数据流的切换。其中第一选择器412耦接第一状态FIFO装置410和数据FIFO装置430,转送其传送来的数据至第一装置115,如Cin1所示。一第二选择器422耦接该第二状态FIFO装置420和该数据FIFO装置430,转送其传送来的数据至第二装置125,如Cin2所示。一第三选择器432耦接至该数据FIFO装置430,用以转送从第一装置115和第二装置125输出的数据至该数据FIFO装置430,如Din所示。该FIFO控制器450各别为第一状态FIFO装置410,第二状态FIFO装置420和数据FIFO装置430提供数据信道以供第一装置115和第二装置125以公知方式运作,因此兼容性不成问题。更进一步的在FIFO控制器450中,该第一裁决器414耦接至第三选择器432和第一状态FIFO装置410,将第一装置115送出的状态指令转送至该第一状态FIFO装置410,将从第一装置115传出的数据指令转送至第三选择器432。一第二裁决器424耦接至第三选择器432和第二状态FIFO装置420,为第二装置125提供相同的功能。
图4c为根据图4a而实施的数据复制程序的流程图。在步骤401中,当先进先出系统400准备进行复制程序从第一装置115拷贝数据至第二装置125时,该处理器130通过第一状态FIFO装置410和第二状态FIFO装置420传送状态指令至第一装置115和第二装置125以初始化该复制程序。在步骤402中,该第一装置115和第二装置125通过第一裁决器414,第二裁决器424,第一状态FIFO装置410和第二状态FIFO装置420回复对应的状态指令至处理器130,做为确认信号。在步骤403,当该处理器130收到确认信号,该第一装置115通过第一裁决器414和第三选择器432写入一笔数据至数据FIFO装置430。接着该第二装置125通过第二选择器422从数据FIFO装置430读取该笔数据。
图5a为本发明实施例之一的先进先出系统500,耦接至第一装置115和第二装置125。在本实施例中,只提供了一数据FIFO装置502和一状态FIFO装置504。该数据FIFO装置502是做为所有装置和存储器控制器120之间所有数据传输#D的共享缓冲界面。状态FIFO装置504耦接处理器130,则是做为所有装置和该处理器130之间的#St传输的共享缓冲界面。为了对第一装置115和第二装置125维持兼容度和通透性,本发明提供了一FIFO控制器550。该FIFO控制器550耦接数据FIFO装置502和状态FIFO装置504,对进出第一装置115和第二装置125的#C1和#C2进行多工管控。
图5b为图5a中的先进先出系统500中的FIFO控制器550。该FIFO控制器550包含两个裁决器和两个选择器。一第一裁决器512耦接该数据FIFO装置502,将从第一装置115和第二装置125输出的指令Cout1和Cout2转送至数据FIFO装置502。一第一选择器514耦接数据FIFO装置502和状态FIFO装置504,将其中输出的数据指令Dout和状态指令Sout转送至第一装置115。一第二裁决器522耦接该状态FIFO装置504,将第一装置115和第二装置125输出的状态指令转送至状态FIFO装置504。一第二选择器524耦接至数据FIFO装置502和状态FIFO装置504,将其中的输出Dout和Sout转送至第二装置125。当先进先出系统500欲执行数据复制程序将数据从第一装置115复制到第二装置125时,处理器130通过状态FIFO装置504,第一选择器514和第二选择器524发出状态指令至第一装置115和第二装置125,以初始化该复制程序。该第一装置115和第二装置125通过第二裁决器522和状态FIFO装置504响应状态指令至处理器130以表示确认。当该处理器130收到确认的消息,第一装置115通过第一裁决器512将一笔数据写入数据FIFO装置502。接着该第二装置125通过第二选择器524从数据FIFO装置502读取该笔数据。在本实施例中,一个数据FIFO装置502被所有装置共享,因此不需要为每一装置准备一特定的FIFO装置,大量的节省了成本。
在上述实施例中,第一装置115和第二装置125各别可以是一MS卡,SD卡,CF卡或任何遵守IEEE 1394和USB标准的装置。先进先出系统也不限定于同时只使用两个装置。当一FIFO装置被多个装置分享时,其中必须以旗标值来辨别每一笔数据或状态指令是属于哪一个装置。该选择器可以是多任务电路,用以从一或二个输入中选择其中之一做为输出。而该裁决器具有判断指令类型的能力,以将对应的指令转送至对应的地方。另一方面,所述的选择器和裁决器也可以是由软件实作,对进出先进先出系统的数据流进行控管。

Claims (20)

1.一种先进先出系统,用以在一第一装置和一第二装置之间传送数据,包含:
一处理器,处理状态指令,以控制数据的传输;
一第一数据FIFO装置,用以缓冲输出入该第一装置的数据指令;
一第一状态FIFO装置,耦接该第一装置和该处理器,用以缓冲在该第一装置和该处理器之间传送的状态指令;
一第二数据FIFO装置,用以缓冲输出入该第二装置的数据指令;
一第二状态FIFO装置,耦接该第二装置和该处理器,用以缓冲在该第二装置和该处理器之间传送的状态指令;以及
一FIFO控制器,包含一存储器控制器以控制一存储器装置,以及一数据控制器连接该第一和第二数据FIFO装置,使该第一和第二数据FIFO装置之间的数据直接互相传送。
2.如权利要求1所述的先进先出系统,更进一步包含:
一第一裁决器,耦接该第一数据FIFO装置和该第一状态FIFO装置,将该第一装置发出的指令分类,使数据指令传送至该第一数据FIFO装置,状态指令传送至该第一状态FIFO装置,并相对的使从该第一数据FIFO装置和该第一状态FIFO装置传来的指令转送至该第一装置;以及
一第二裁决器,耦接该第二数据FIFO装置和该第二状态FIFO装置,将该第二装置发出的指令分类,使数据指令传送至该第二数据FIFO装置,状态指令传送至该第二状态FIFO装置,并相对的使从该第二数据FIFO装置和该第二状态FIFO装置传来的指令转送至该第二装置。
3.如权利要求2所述的先进先出系统,其中该数据控制器包含:
一第一选择器,耦接该第二数据FIFO装置和该存储器控制器的输出端,选择其中之一的输出数据转送至该第一数据FIFO装置;以及
一第二选择器,耦接该第一数据FIFO装置和该存储器控制器的输出端,选择其中之一的输出数据转送至该第二数据FIFO装置。
4.如权利要求3所述的先进先出系统,其中当该先进先出系统进行一复制程序将数据从该第一装置拷贝到该第二装置时:
该处理器通过该第一状态FIFO装置,该第一裁决器,该第二状态FIFO装置和该第二裁决器,传送对应的状态指令至该第一和第二装置,以初始化该复制程序;
该第一和第二装置个别通过该第一裁决器,该第一状态FIFO装置,该第二裁决器和该第二状态FIFO装置,回复对应的状态指令至该处理器以表示初始化已确认;
该第一装置通过该第一裁决器传送数据指令至该第一数据FIFO装置,而该数据控制器将该数据指令从该第一数据FIFO装置拷贝到该第二数据FIFO装置中;以及
该第二装置通过该第二裁决器读取该第二数据FIFO装置中的数据指令。
5.如权利要求1所述的先进先出系统,其中该第一装置和该第二装置为遵守IEEE 1394或USB标准的同型装置。
6.如权利要求1所述的先进先出系统,其中该第一装置和该第二装置为遵守IEEE 1394或USB标准的不同型装置。
7.一种先进先出系统,用以在一第一装置和一第二装置之间传送数据,包含:
一存储器控制器,用以做为存取一存储器装置的接口;
一处理器,处理状态指令,以控制数据的传输;
一第一状态FIFO装置,耦接该第一装置和该处理器,用以缓冲在该第一装置和该处理器之间传送的状态指令;
一第二状态FIFO装置,耦接该第二装置和该处理器,用以缓冲在该第二装置和该处理器之间传送的状态指令;
一数据FIFO装置,用以缓冲输出入该第一装置和该第二装置的数据指令;以及
一FIFO控制器,耦接该第一状态FIFO装置,该第二状态FIFO装置和该数据FIFO装置,控制该第一装置和该第二装置之间的状态指令和数据指令的传输。
8.如权利要求7所述的先进先出系统,其中该FIFO控制器包含:
一第一选择器,耦接该第一状态FIFO装置和该数据FIFO装置,将该第一状态FIFO装置和该数据FIFO装置输出的指令转送至该第一装置;
一第二选择器,耦接该第二状态FIFO装置和该数据FIFO装置,将该第二状态FIFO装置和该数据FIFO装置输出的指令转送至该第二装置;以及
一第三选择器,耦接该数据FIFO装置,将该第一装置和该第二装置输出的数据指令转送至该数据FIFO装置。
9.如权利要求8所述的先进先出系统,其中该FIFO控制器更进一步包含:
一第一裁决器,耦接该第三选择器和该第一状态FIFO装置,将从该第一装置输出的状态指令转送至该第一状态FIFO装置,并将该第一装置输出的数据指令转送至该第三选择器;以及
一第二裁决器,耦接该第三选择器和该第二状态FIFO装置,将从该第二装置输出的状态指令转送至该第二状态FIFO装置,并将该第二装置输出的数据指令转送至该第三选择器。
10.如权利要求9所述的先进先出系统,其中当该先进先出系统进行一复制程序将数据从该第一装置拷贝到该第二装置时:
该处理器通过该第一状态FIFO装置和该第二状态FIFO装置,传送对应的状态指令至该第一和第二装置,以初始化该复制程序;
该第一和第二装置个别通过该第一裁决器,该第二裁决器,该第一状态FIFO装置和该第二状态FIFO装置,回复对应的状态指令至该处理器以表示初始化已确认;
该第一装置通过该第一裁决器和该第三选择器,传送数据指令至该数据FIFO装置;以及
该第二装置通过该第二选择器读取该数据FIFO装置中的数据指令。
11.如权利要求7所述的先进先出系统,其中该第一装置和该第二装置为遵守IEEE 1394或USB标准的同型装置。
12.如权利要求7所述的先进先出系统,其中该第一装置和该第二装置为遵守IEEE 1394或USB标准的不同型装置。
13.一种先进先出系统,用以在一第一装置和一第二装置之间传送数据,包含:
一存储器控制器,用以做为存取一存储器装置的接口;
一处理器,处理状态指令,以控制数据的传输;
一数据FIFO装置,耦接该存储器控制器,用以缓冲输出入该存储器控制器,该第一装置和该第二装置的数据指令;以及
一状态FIFO装置,耦接该处理器,用以缓冲在该第一装置,该第二装置和该处理器之间传送的状态指令;
一FIFO控制器,耦接该数据FIFO装置和该状态FIFO装置,控制该第一装置和该第二装置之间的状态指令和数据指令的传输。
14.如权利要求13所述的先进先出系统,其中该FIFO控制器包含:
一第一裁决器,耦接该数据FIFO装置,将从该第一装置和该第二装置输出的数据指令转送至该数据FIFO装置;
一第一选择器,耦接该数据FIFO装置和该状态FIFO装置,将其中输出的指令转送至该第一装置;
一第二裁决器,耦接该状态FIFO装置,将该第一装置和该第二装置输出的状态指令转送至该状态FIFO装置;
一第二选择器,耦接该数据FIFO装置和该状态FIFO装置,将其中输出的指令转送至该第二装置。
15.如权利要求14所述的先进先出系统,其中当该先进先出系统进行一复制程序将数据从该第一装置拷贝到该第二装置时:
该处理器通过该第状态FIFO装置,该第一选择器和该第二选择器,传送对应的状态指令至该第一和第二装置,以初始化该复制程序;
该第一和第二装置个别通过该第二裁决器和该第二状态FIFO装置,回复对应的状态指令至该处理器以表示初始化已确认;
该第一装置通过该第一裁决器,传送数据指令至该数据FIFO装置;以及
该第二装置通过该第二选择器读取该数据FIFO装置中的数据指令。
16.如权利要求13所述的先进先出系统,其中该第一装置和该第二装置为遵守IEEE 1394或USB标准的同型装置。
17.如权利要求13所述的先进先出系统,其中该第一装置和该第二装置为遵守IEEE 1394或USB标准的不同型装置。
18.一种先进先出系统运作方法,用以通过如权利要求1所述的先进先出系统,在一第一装置和一第二装置之间传送数据,包含下列步骤:
该处理器个别通过该第一状态FIFO装置和该第二状态FIFO装置传送状态指令至该第一装置和该第二装置,以初始化一复制程序;
该第一和第二装置个别通过该第一状态FIFO装置和该第二状态FIFO装置,回复对应的状态指令至该处理器以表示初始化已确认;
该第一装置传送数据指令至该第一数据FIFO装置,
将该数据指令从该第一数据FIFO装置拷贝到该第二数据FIFO装置中;以及
该第二装置读取该第二数据FIFO装置中的数据指令。
19.一种先进先出系统运作方法,用以通过如权利要求7所述的先进先出系统,在一第一装置和一第二装置之间传送数据,包含下列步骤:
该处理器个别通过该第一状态FIFO装置和该第一选择器传送状态指令至该第一装置和该第二装置,以初始化一复制程序;
该第一和第二装置个别通过该第一状态FIFO装置和该第二状态FIFO装置,回复对应的状态指令至该处理器以表示初始化已确认;
该第一装置传送数据指令至该数据FIFO装置;以及
该第二装置读取该数据FIFO装置中的数据指令。
20.一种先进先出系统运作方法,用以通过如权利要求13所述的先进先出系统,在一第一装置和一第二装置之间传送数据,包含下列步骤:
该处理器个别通过该状态FIFO装置传送状态指令至该第一装置和该第二装置,以初始化一复制程序;
该第一和第二装置个别通过该状态FIFO装置,回复对应的状态指令至该处理器以表示初始化已确认;
该第一装置传送数据指令至该数据FIFO装置;以及
该第二装置读取该数据FIFO装置中的数据指令。
CNB2006101431946A 2006-03-21 2006-11-02 先进先出系统和先进先出系统运作方法 Expired - Fee Related CN100543665C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/385,545 US8046506B2 (en) 2006-03-21 2006-03-21 FIFO system and operating method thereof
US11/385,545 2006-03-21

Publications (2)

Publication Number Publication Date
CN101042636A true CN101042636A (zh) 2007-09-26
CN100543665C CN100543665C (zh) 2009-09-23

Family

ID=38522012

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006101431946A Expired - Fee Related CN100543665C (zh) 2006-03-21 2006-11-02 先进先出系统和先进先出系统运作方法

Country Status (4)

Country Link
US (2) US8046506B2 (zh)
CN (1) CN100543665C (zh)
TW (1) TWI320543B (zh)
WO (1) WO2007107061A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102033829B (zh) * 2009-09-30 2012-07-18 慧荣科技股份有限公司 数据接收方法、具有数据接收机制的电子装置以及储存系统
CN103119548A (zh) * 2010-09-23 2013-05-22 马维尔以色列(M.I.S.L.)有限公司 低等待时间先进先出(fifo)缓存

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7984212B2 (en) * 2009-04-17 2011-07-19 Lsi Corporation System and method for utilizing first-in-first-out (FIFO) resources for handling differences in data rates between peripherals via a merge module that merges FIFO channels
US9280498B2 (en) 2011-03-02 2016-03-08 Nec Corporation Data control system, data control method, and data control program
KR20160088081A (ko) * 2015-01-15 2016-07-25 삼성전자주식회사 영상 촬영 기기의 햅틱 인터페이스 및 이의 제어 방법
US9844175B2 (en) * 2016-01-19 2017-12-19 Sears Brands, L.L.C. Lawn mowing apparatus with mower deck alignment sensors
CN110765044B (zh) * 2018-07-26 2021-02-23 展讯通信(上海)有限公司 数据包传输装置及系统
US11656909B2 (en) * 2021-04-15 2023-05-23 National Taiwan University Tensor accelerator capable of increasing efficiency of data sharing

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5625842A (en) * 1988-05-18 1997-04-29 Zilog, Inc. System for the automatic transfer of message status in digital data communication
JP3390053B2 (ja) 1992-08-12 2003-03-24 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 無電解法でブラックマトリックスを製造する方法
US5974486A (en) * 1997-08-12 1999-10-26 Atmel Corporation Universal serial bus device controller comprising a FIFO associated with a plurality of endpoints and a memory for storing an identifier of a current endpoint
US6356968B1 (en) * 1997-09-03 2002-03-12 Cirrus Logic, Inc Apparatus and method for transparent USB-to-1394 bridging and video delivery between a host computer system and a remote peripheral device
US6131135A (en) * 1998-06-30 2000-10-10 Intel Corporation Arbitration method for a system with two USB host controllers
US6484218B1 (en) * 1998-10-08 2002-11-19 Texas Instruments Incorporated Method for improving direct memory access performance
TW502172B (en) * 1998-10-26 2002-09-11 Winbond Electronics Corp Digital camera to printer conversion device with USB structure
KR100279929B1 (ko) * 1998-12-24 2001-02-01 서평원 교환기에서의 이중화 프로세서_
US6405270B1 (en) * 1999-09-08 2002-06-11 Lsi Logic Corporation Method and apparatus for increasing data rates between nodes of a serial bus
US6779061B1 (en) * 2000-05-09 2004-08-17 Cypress Semiconductor Corp. Method and apparatus implementing a FIFO with discrete blocks
CN1153217C (zh) 2001-06-07 2004-06-09 扬智科技股份有限公司 非同步fifo控制器
US6792501B2 (en) * 2002-01-31 2004-09-14 Phision Electronic Corp Universal serial bus flash memory integrated circuit device
US6913196B2 (en) * 2002-02-20 2005-07-05 O2Micro International Limited Dual mode controller for ISO7816 and USB enabled smart cards
CN100430886C (zh) * 2003-04-16 2008-11-05 Nxp股份有限公司 同时执行进程经由fifo缓冲器通信的数据处理装置和方法
TWI238360B (en) 2004-06-01 2005-08-21 C Media Electronics Inc Apparatus for reading/writing storage device

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102033829B (zh) * 2009-09-30 2012-07-18 慧荣科技股份有限公司 数据接收方法、具有数据接收机制的电子装置以及储存系统
CN103119548A (zh) * 2010-09-23 2013-05-22 马维尔以色列(M.I.S.L.)有限公司 低等待时间先进先出(fifo)缓存

Also Published As

Publication number Publication date
US20120011289A1 (en) 2012-01-12
US20070245043A1 (en) 2007-10-18
US8046506B2 (en) 2011-10-25
US8429314B2 (en) 2013-04-23
TWI320543B (en) 2010-02-11
TW200736987A (en) 2007-10-01
WO2007107061A1 (fr) 2007-09-27
CN100543665C (zh) 2009-09-23

Similar Documents

Publication Publication Date Title
CN101042636A (zh) 先进先出系统和先进先出系统运作方法
US10152441B2 (en) Host bus access by add-on devices via a network interface controller
CN100440184C (zh) 一种能同时进行读写操作的dma控制器及传输方法
CN1510589A (zh) 共享存储器数据传送设备
US9015380B2 (en) Exchanging message data in a distributed computer system
CN1573723A (zh) 通过多端口串行的通信方法和装置
EP0577361A1 (en) Fiber optic distribution of image data
CN1969270A (zh) 用于处理拆分事务的总线控制器
CN115086104B (zh) 一种支持数据断线重传的方法及串口服务器
CN100341012C (zh) 总线系统及其存取命令的执行调度方法
CN112445735A (zh) 一种联邦学习数据传输方法、计算机设备、系统及存储介质
CN1821986A (zh) 控制装置、信息处理装置以及数据传输方法
CN116719755B (zh) 一种多应用内存访问的方法、装置、设备
US8341360B2 (en) Method and apparatus for memory write performance optimization in architectures with out-of-order read/request-for-ownership response
CN107193766B (zh) 一种PCIe设备与主机之间的多路有序数据传输方法
CN100343840C (zh) 总线系统、在总线系统中使用的站和总线接口
CN1788261A (zh) 具有用于传送描述符的存储器的usb主机控制器
KR102645983B1 (ko) 오픈 채널 벡터 커맨드 실행
WO2023202288A1 (zh) 一种固态硬盘读方法、系统、装置及存储介质
EP1759297B1 (en) Interrupt scheme for bus controller
CN104636280B (zh) 用于管道仲裁的电路和方法
CN103678244A (zh) 一种不使用应用处理器的智能设备
US20220092017A1 (en) Techniques for deconflicting usb traffic in an extension environment
CN115203102A (zh) 预测usb扩展环境中的空闲缓冲区空间
CN101867510A (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
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20090923

Termination date: 20161102