CN1584862A - 数据传输电路及相关方法 - Google Patents
数据传输电路及相关方法 Download PDFInfo
- Publication number
- CN1584862A CN1584862A CN 200410049231 CN200410049231A CN1584862A CN 1584862 A CN1584862 A CN 1584862A CN 200410049231 CN200410049231 CN 200410049231 CN 200410049231 A CN200410049231 A CN 200410049231A CN 1584862 A CN1584862 A CN 1584862A
- Authority
- CN
- China
- Prior art keywords
- data
- circuit
- signal
- input
- buffer
- 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
- 238000000034 method Methods 0.000 title claims description 17
- 230000005540 biological transmission Effects 0.000 claims abstract description 87
- 239000000872 buffer Substances 0.000 claims abstract description 28
- 241001269238 Data Species 0.000 claims description 4
- 238000010586 diagram Methods 0.000 description 7
- 230000000630 rising effect Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
Images
Landscapes
- Information Transfer Systems (AREA)
Abstract
本发明提供一种数据传输电路及相关方法,用来传输数据,其包含有一输入电路用来输入数据,一缓存器电连接于输入电路,用来暂存输入电路传来的数据,以及一控制电路,用来控制数据传输电路的操作。若输入输入电路的数据为一特定数据,输入电路会重复输出该特定数据至缓存器以延长该特定数据的传输时间。
Description
技术领域:
本发明涉及一种用来传输数据的数据传输电路及相关方法,特别涉及一种可降低总线上噪声干扰的数据传输电路及相关方法。
背景技术:
在信息产业发达的今日社会,高速处理大量数据的微处理机系统早已深入一般人的日常生活。最为人熟悉的微处理机系统就是一般的计算机系统了。利用计算机系统,人们可以快速地交换、处理丰富多样的图文数据,提升工作与生活的效率与乐趣。
一般而言,以高速处理大量数据的微处理机系统,都包含一个以上的数据处理单元。这些数据处理单元各司其职,有的用来储存数据(譬如一般计算机系统都有的内存),有的则是用来运算处理数据(如计算机系统中的中央处理器)。另外有一些数据处理单元是用来协调其它数据处理单元间的数据交换,像是计算机系统中主机板的北桥(north bridge)芯片,就是用来协调中央处理器、内存、绘图加速卡(graphic accelerator)与南桥(south bridge)芯片间数据的交换。为了与其它数据处理单元交换数据以完成微处理机系统的整体功能,每个数据处理单元间都以总线(data bus)相互连接,各数据处理单元中另以数据传输电路电连接于该总线,负责在总线上发送或接收数据。
请参考图1,图1为一典型微处理机系统10中两数据处理单元以各自的数据传输电路通过一总线12交换数据的示意图。微处理机系统10中包含有两个数据处理单元14与16,这两个数据处理单元14、16中则分别设有数据传输电路18与20,电连接在总线12的两端,负责处理数据处理单元14与16间的数据交换。
请参考图2,图2为一已知数据传输电路22的功能方块图。数据传输电路22中包括有一输入电路24、一缓存器28、一输出电路32以及一控制电路34。输入电路24电连接于缓存器28,缓存器28则电连接于输出电路32,最后输出电路32电连接于总线12。控制电路34控制整个数据传输电路22的运作,并电连接于缓存器28与输出电路32;其中输入电路24中设有一数据输入级26,缓存器28中则设有一D型触发器(D flip-flop)30。控制D型触发器30的时钟信号则由控制电路34通过缓存器28与控制电路34间的电连接通路提供。若有数据要由数据传输电路22藉由总线12传送出去,则数据先由输入电路24的数据输入级26传送至缓存器28。经由控制电路34提供给缓存器28的时钟信号触发,缓存器28中的D型触发器30依次将输入电路24传来的数据传送至输出电路32,并经由输出电路32将数据传送至总线12,完成整个数据传输电路22将数据传送至总线12的工作。
一旦数据已传输至总线12后,控制电路34会通过与输出电路32间的电连接通路以一关闭信号控制输出电路32关闭总线12,使总线12处于浮动(float)的状态。在总线12处于浮动的状态下,数据传输电路22可等待连接在总线12另一端的另一个数据传输电路传送数据过来,或是准备好再经由总线12传出数据。对与总线12电连接的所有数据传输电路来说,总线12处于浮动的这段期间也可提供一段回转(turn-around)周期,防止在总线上传输的数据互相干扰而产生的信号争扰(contention)现象。通常数据传输电路在传输完所需的数据后,就会由输出电路32关闭总线12一段时间。
如前段所述,关闭总线12有助于在各数据传输电路间协调相互传输数据的工作。但在控制电路34对输出电路32发出关闭信号,到输出电路32真正关闭总线l2间,仍有一段延迟的时间。在这段延迟的时间中,数据传输电路22仍会经由输出电路32将数据传输到总线12上。若在这一段延迟的时间中,在总线12上的数据内容正好改变(如由高电平转变为低电平,或相反的由低电平转变为高电平),接下来总线随即关闭而处于浮动状态,则数据内容转变之处会形成一个相当于脉冲(impulse)的信号,在处于浮动状态下的总线12上传递。为详细说明此点,请参考图3,图3为图2数据传输电路22中节点A、B、D、T、E上各信号的时序图。图3的横轴即为时间。信号40为节点T上的时钟信号的波形,是控制电路34用来控制D型触发器30的时钟信号;信号42则是节点A上由数据输入级26传送给D型触发器30的数据,数据50、52、54、56即四笔预定由数据传输电路22传送至总线12上的数据。随着信号40中时钟信号上升缘(rising edge)的触发,D型触发器30将数据50、52、54、56依次传送至输出电路32,也就是在节点B的信号44中的数据50a、52a、54a、56a。请注意在此同时,控制电路34也以信号46(在节点E上)控制输出电路32。在数据50a、52a、54a、56a传送至输出电路32的同时,信号46也维持高电平,使这四笔数据可顺利地传送至总线12上,如总线12上节点D的信号48所示。信号48中的数据50b、52b、54b、56b即分别对应信号44中的数据50a、52a、54a、56a。传送完这四笔预定传输的数据后,控制电路34随即将信号46由高电平调整为低电平,形成一关闭信号60,以控制输出电路32关闭总线12。请注意信号42在数据56之后仍有后续的数据58,数据58是数据输入级26持续运作传来的数据,但数据58并不是预定与数据50、52、54、56一起传输的数据。数据58会随信号40中时钟信号的触发而由D型触发器30传送至输出电路32,如信号44中的数据58a。若关闭信号60能马上发挥作用,信号44中的数据58a就不会错误地传送到总线12上。但是,正如前面提到过的,从关闭信号60开始发出,到总线12真正关闭,尚有一段延迟时间。在这段延迟时间中,总线12仍会由输出电路32接收到一小段的数据58b,如信号48中标示的区域62。在这一段的延迟时间中,若数据56b与数据58b的内容不同,总线12上的信号电平势必要改变,但信号电平尚未完全改变至稳定的状态,总线12就完全关闭,使信号48在区域62中的信号相当于一个脉冲信号。因为此时总线12已被关闭而处于浮动状态,总线12两端形同开路,这个脉冲信号会被开路的两端反射而在总线12上来回传递而不消散,一旦总线12为传输数据的需要而再度开启,这个脉冲信号就会干扰总线12上正常的数据传输,进而影响整个微处理机系统10的运作。
为解决上述脉冲信号的问题,已知的方法之一就是提早将总线12关闭。为说明此种已知的方法,请参考图4,图4为已知数据传输电路防止脉冲信号发生的方法中,各节点信号的时序图。图4的图例与图3相同,信号64、66、68、70、72分别是图2数据传输电路中节点T、A、B、E、D的信号。信号66中的数据74、76、78、80即预定传输至总线12上的四笔数据。为防止脉冲信号的发生,控制电路34在信号68(在节点B上)中的数据80a尚未完全持续至整个时钟周期前,就先以关闭信号82控制输出电路32关闭总线12。如此的作法虽能保证预定传输的最后一笔数据80a之后的数据84a完全不会传送至总线12上,但数据80a可资利用的时间也随之缩短。
另一种防止脉冲信号发生的已知方法则可用图5来说明。请参考图5。图5为已知数据传输电路防止脉冲信号发生的另一种方法中,各节点信号的时序图。图5的图例与图3、图4相同,横轴为时间,信号85、86、88、90、92则分别是图2中节点T、A、B、E、D上的信号。信号86中的四笔数据94、96、98、100是预定要传输的数据。在此已知方法中,控制电路34会延后信号90中发出关闭信号102的时间,等到信号88(在节点B上)预定传输的最后一笔数据100a结束后,再等半个信号85的时钟周期才以关闭信号102控制输出电路32关闭总线12。这种做法系期待非预定传输的数据104a可于半个信号85的时钟周期内达到稳定状态,并藉由其达到稳定状态后关闭总线12来避免脉冲信号的产生,既然信号92中的数据104b并非预定要传输的数据,此种已知方法并不会影响预定要传送的四笔数据(即信号92中数据94b、96b、98b、100b)可资利用的时间,也可避免脉冲信号的产生。此种已知方法的关键在于数据104a必须在半个信号85的时钟周期内便达到稳定状态,若数据104a无法在半个信号85的时钟周期内达到稳定状态,则脉冲信号也就无法避免。随着技术的演进,微处理机系统10中各数据处理单元运作的频率日渐增高,信号85的时钟周期变得非常的短,因此在高速的微处理机系统,数据104a便无法在半个信号85的时钟周期内达到稳定状态,因此脉冲信号仍会产生。另外,如美国专利第6133757号所揭示的技术,则是以一驱动速度较快的数据传输电路减少总线上数据达到稳定状态所需的时间,并减少数据传输期间总线上信号电平改变(因各笔数据内容不同)时造成的突波;但在总线关闭的瞬间,仍要以其它方法防止总线上的噪声。
发明内容:
因此,本发明的主要目的在于提供一种即使在高时钟总线上仍可防止脉冲信号发生的数据传输电路。
附图说明
图1为一微处理机系统中两数据处理单元以一总线交换数据的示意图。
图2为已知数据传输电路的功能方块图。
图3为图2中已知数据传输电路运作时各节点信号的时序图。
图4为图2中已知数据传输电路以第二种方式运作时各节点信号的时序图。
图5为图2中已知数据传输电路以第三种方式运作时各节点信号的时序图。
图6为本发明数据传输电路的功能方块图。
图7为图6数据传输电路运作时各节点信号的时序图。
附图符号说明:
108 总线110 数据传输电路
120 输入电路 122数据输入级
124 多任务器 126第一输入端
128 第二输入端 129控制端
130 缓存器 132D型触发器
140 输出电路 150控制电路
160、162、164、166、168、170、172 信号
180、182、184、186 数据
190 延迟信号 192关闭信号
具体实施方式
请参考图6,图6为本发明数据传输电路110的功能方块图。数据传输电路110包含有一输入电路120、一缓存器130、一输出电路140与一控制电路150。输入电路120中有数据输入级122与多任务器124;其中多任务器124有一第一输入端126、一第二输入端128与一控制端129,而第二输入端128与数据输入级122电连接,控制端129则与控制电路150电连接。缓存器130中设有一D型触发器132,其输入端电连接于多任务器124输出端,D型触发器132的输出端则电连接于输出电路140。另外,D型触发器132输出端尚有一回馈电连接通路,与多任务器124第一输入端126电连接。输出电路140则电连接于总线108,以便将数据传输至总线108上。控制电路150则分别与多任务器124的控制端129、D型触发器132、输出电路140电连接,以控制这些功能方块的运作;其中控制电路150可用控制端129的信号控制多任务器124,使其输出由第一输入端126或由第二输入端128输入的信号。
至于本发明数据传输电路110工作的情形与防止脉冲信号的原理,可由图7的信号时序图来说明。请参考图7,图7为数据传输电路110在图6中各节点信号的时序图。图7的横轴即为时间轴;信号160、162、164、166、168、170、172则分别是节点T1、第二输入端128、第一输入端126、控制端129、节点A1、节点E1、节点D1上的信号。在数据传输电路110工作时,控制电路150会以信号160中的时钟信号控制D型触发器的运作。预定要传输的数据,首先由数据输入级122输入至多任务器124的第二输入端128,第二输入端128上的信号162其中的数据180、182、184与186,即为本实施例中预定要传输至总线108的四笔数据;其中数据186为这四笔预定传输数据中的最后一笔,故特别将其称为特定数据。
在数据180开始由数据输入级122传送至第二输入端128时,控制电路150也以信号166的高电平信号输入多任务器124的控制端129,而高电平的信号会使多任务器124输出由第二输入端128输入的信号。于是由数据输入级122经第二输入端128输入多任务器124的信号,就会由多任务器124输出至D型触发器132,如同节点A1上信号168所示。在信号166维持高电平的期间,多任务器124输出至D型触发器132的信号168是由第二输入端128输入的信号162,而信号162中的数据180、182、184也就分别成为信号168中的数据180b、182b、184b。数据传至D型触发器132之后,D型触发器132会根据控制电路150发出的信号160中的时钟信号,在时钟信号上升缘时将数据传送至输出电路140。请注意在本发明数据传输电路110中,D型触发器132的输出端不仅电连接至输出电路140,也电连接至多任务器124的第一输入端126,所以第一输入端126上的信号164,也是由D型触发器132传送至输出电路140的信号;而信号164中的数据180a、182a、184a,就分别是信号168(节点A1)中的数据180b、182b、184b随信号160中的时钟信号触发而由D型触发器132输出的数据。不过此时控制电路150用来控制多任务器124的信号166仍维持高电平,所以在这段期间多任务器124输出的信号168与输入第一输入端126的信号164无关。在信号164中的数据180a开始传送到输出电路140的同时,控制电路150也以节点E1上的信号170中的高电平控制输出电路140开放总线108,使信号164可由输出电路140传输至总线108上,也就是总线108上的节点D1的信号172;而信号172中的数据180c、182c、184c分别就是信号164中的数据180a、182a、184a。
随着时序推移,数据输入级122开始将预定传输的四笔数据中的最后一笔数据,也就是特定数据,传输至多任务器124。如同第二输入端128上的信号162所示,数据186就是该笔特定数据。在特定数据186刚开始传输到多任务器124时,控制电路150仍以信号166中的高电平控制多任务器124选择由第二输入端128输入的信号为其输出,故信号162中的特定数据186经过多任务器124的输出,成为信号168中的数据186b。信号160中的时钟信号会在时间t1(请参考图7中横轴标示)将信号168中的数据186b传输至输出电路140,同时也回馈至多任务器124的第一输入端126,也就是信号164中的数据186a。信号164中的数据186a,经由输出电路140,就变成了总线108上信号172中的数据186c。
等到了时间t2,控制电路150会改以一低电平的延迟信号190,由控制端129控制多任务器124,使多任务器124改为以第一输入端126的信号164作为其输出。而在时间t2时,信号164的内容正好是数据186a的内容;而此段186a数据的内容,就会经由多任务器124输出(有一小段时间的延迟),变成节点A1信号168中的数据194。请注意数据194的内容和特定数据186的内容完全相同。经过信号160中时钟信号在时间t3的上升缘触发,D型触发器132会将信号168中的数据194,传送至输出电路140,也就是信号164中的数据196。而信号164中的数据196,经过输出电路140,也就变成了总线上节点D1信号172中的数据198。在时间t3之后,所有要预定传输的四笔数据,都已传输至总线108;而且,最后一笔数据,也就是特定数据的内容,会在信号172上的数据198中重复,等效上也就是延长了特定数据在总线108上的传输时间(原本各笔数据的传输时间为信号160中时钟信号的一个时钟周期,对特定数据而言,原本的传输时间为时间t1至时间t3)。经过时间t3之后,控制电路150就可以用信号170中的低电平的关闭信号192控制输出电路140关闭总线108,而不必担心总线上发生脉冲信号。
借着延长特定数据的传输时间,本发明的数据传输电路110就可避免总线上发生脉冲信号。如前面讨论过的,脉冲信号是在总线开始关闭至完全关闭的期间,总线上数据的内容改变所导致的。本发明的数据传输电路,可延长特定数据(也就是预定传输的最后一笔数据)的传输时间,在延长的传输时间中才将总线关闭;如此一来既不会减少特定数据可资利用的时间,即使总线完全关闭所需要的时间较长,数据的内容也绝对不会在总线关闭的期间改变。是故本发明的数据传输电路110可避免总线上脉冲信号的发生,更可进一步确保整个微处理机系统各数据处理单元间可正确地交换数据。
总而言之,本发明数据传输电路的基本精神即在于延长预定传输的最后一笔数据的传输时间,使总线上的数据内容从总线开始关闭到完全关闭的期间内可维持一致,从而避免总线上发生脉冲信号。而在实际的电路实施上,本发明数据传输电路是以一多任务器控制一回馈电连接通路,即可达到延长特定数据传输时间、降低总线上噪声干扰的目的。本发明的优点使其适用于高时钟的数据传输,譬如说是一般计算机上装在主机板中、用来控制中央处理器(CPU,Central Processing Unit)与存储模块(memory,如随机存取内存)间数据传输的北桥(north bridge)芯片。
以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明专利的涵盖范围。
Claims (10)
1.一种数据传输电路,用来传输数据,其包含有:
一输入电路,用来输入数据;
一缓存器,电连接于该输入电路,用来暂存该输入电路传来的数据;以及
一控制电路,用来控制该数据传输电路的操作;
其中,若输入该输入电路的数据是一特定数据,该输入电路会重复输出该特定数据至该缓存器以延长该特定数据的传输时间。
2.如权利要求1所述的数据传输电路,其另包含一输出电路,电连接于该缓存器,用来输出该缓存器传来的数据。
3.如权利要求2所述的数据传输电路,其中,该缓存器包含有一D型触发器,用来依据一时钟信号将该输入电路传来的数据输出至该输出电路并回授至该输入电路。
4.如权利要求2所述的数据传输电路,其中,当该输入电路重复输出该特定数据至该缓存器时,该缓存器会延长输出该特定数据至该输出电路的时间,而当该缓存器延长输出该特定数据至该输出电路的时间后,该控制电路会输出一关闭信号来停止该输出电路输出由该缓存器所传来的该特定数据。
5.如权利要求1所述的数据传输电路,其中,该输入电路包含有一多任务器,该多任务器包含有:
一第一输入端,电连接于该缓存器的输出端,用来输入该缓存器所输出的数据;
一第二输入端,用来输入该数据传输电路所欲传输的数据;以及
一控制端,电连接于该控制电路,用来接收该控制电路所传来的控制信号。
6.如权利要求5所述的数据传输电路,其中,当该第二输入端接收到该特定数据且该多任务器已将该特定数据输出至该缓存器后,该控制电路会产生一延迟信号至该控制端以使该多任务器输出该第一输入端所接收的该特定数据。
7.如权利要求5所述的数据传输电路,其中,该特定数据是连续输入该第二输入端的多个笔数据中的最后一笔数据。
8.一种经由一数据传输电路传输一数据的方法,该数据传输电路包含有:
一输入电路,用来输入数据;以及
一缓存器,电连接于该输入电路,用来暂存该输入电路传来的数据;
而该方法包含有:
若输入该输入电路的数据是一特定数据,则重复将该特定数据输出至该缓存器以延长该特定数据的传输时间。
9.如权利要求8所述的方法,其另包含有:
当延长该特定数据的传输时间后,输出一关闭信号来停止该特定数据的传输。
10.如权利要求8所述的方法,其中,该特定数据是连续输入该输入电路的多个笔数据中的最后一笔数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100492318A CN1304975C (zh) | 2004-06-08 | 2004-06-08 | 数据传输电路及相关方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2004100492318A CN1304975C (zh) | 2004-06-08 | 2004-06-08 | 数据传输电路及相关方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1584862A true CN1584862A (zh) | 2005-02-23 |
CN1304975C CN1304975C (zh) | 2007-03-14 |
Family
ID=34602132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2004100492318A Expired - Lifetime CN1304975C (zh) | 2004-06-08 | 2004-06-08 | 数据传输电路及相关方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1304975C (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6236237B1 (en) * | 1998-02-27 | 2001-05-22 | Altera Corporation | Output buffer predriver with edge compensation |
US6133757A (en) * | 1998-07-16 | 2000-10-17 | Via Technologies, Inc. | High-speed and low-noise output buffer |
US6628139B2 (en) * | 2001-08-03 | 2003-09-30 | Micron Technology, Inc. | Digital logic devices with extremely skewed trip points and reset circuitry for rapidly propagating signal edges |
-
2004
- 2004-06-08 CN CNB2004100492318A patent/CN1304975C/zh not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
CN1304975C (zh) | 2007-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5600824A (en) | Clock generating means for generating bus clock and chip clock synchronously having frequency ratio of N-1/N responsive to synchronization signal for inhibiting data transfer | |
US5566325A (en) | Method and apparatus for adaptive memory access | |
KR100941024B1 (ko) | 메모리 동작 장치, 시스템 및 방법 | |
US5179705A (en) | Asynchronous arbiter state machine for arbitrating between operating devices requesting access to a shared resource | |
US7159135B2 (en) | Method and apparatus for controlling a multi-mode I/O interface to enable an I/O buffer to transmit and receive data according to an I/O protocol | |
CN1345070A (zh) | 具有数据掩蔽引脚的半导体存储装置及包括该装置的存储系统 | |
CN114138703B (zh) | 基于串行外设接口进行通信的方法、装置及芯片 | |
US6909643B2 (en) | Semiconductor memory device having advanced data strobe circuit | |
CN1860460A (zh) | 在具有等待信息的存储系统上的回声时钟 | |
CN1776597A (zh) | 用于校准随机存取存储器的方法和装置 | |
KR20080056671A (ko) | 데이터 스트로브 타이밍 보상 | |
US5592685A (en) | Synchronous/asynchronous partitioning of an asynchronous bus interface | |
CN112004291A (zh) | 串行码流控制电路、方法及电子设备 | |
JP2005353168A (ja) | メモリインターフェース回路及びメモリインターフェース方法 | |
JPH0550775B2 (zh) | ||
US6058439A (en) | Asynchronous first-in-first-out buffer circuit burst mode control | |
CN1304975C (zh) | 数据传输电路及相关方法 | |
Saito et al. | What is the cost of delay insensitivity? | |
JP2007518178A (ja) | Fifoパイプライン付きの電子回路 | |
US6640277B1 (en) | Input staging logic for latching source synchronous data | |
KR100332188B1 (ko) | 커맨드 적재 고대역폭 메모리와 그 메모리 내에서 커맨드를 적재하고 보류중인 동작을 자체 실행하는 방법 | |
US5056110A (en) | Differential bus with specified default value | |
CN101160566B (zh) | Ram控制设备和使用该设备的存储设备 | |
US20030167386A1 (en) | Control chip and method for accelerating memory access | |
US6762973B2 (en) | Data coherent logic for an SRAM device |
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 | ||
CX01 | Expiry of patent term | ||
CX01 | Expiry of patent term |
Granted publication date: 20070314 |