CN1320865A - 数据传送控制装置及电子设备 - Google Patents
数据传送控制装置及电子设备 Download PDFInfo
- Publication number
- CN1320865A CN1320865A CN01122059.7A CN01122059A CN1320865A CN 1320865 A CN1320865 A CN 1320865A CN 01122059 A CN01122059 A CN 01122059A CN 1320865 A CN1320865 A CN 1320865A
- Authority
- CN
- China
- Prior art keywords
- data
- loop
- aforementioned
- parallel
- control device
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 66
- 238000012217 deletion Methods 0.000 claims abstract description 55
- 230000037430 deletion Effects 0.000 claims abstract description 55
- 238000003780 insertion Methods 0.000 claims abstract description 28
- 230000037431 insertion Effects 0.000 claims abstract description 28
- 238000006243 chemical reaction Methods 0.000 claims abstract description 24
- 238000012545 processing Methods 0.000 claims description 56
- 238000007906 compression Methods 0.000 claims description 26
- 230000006835 compression Effects 0.000 claims description 26
- 230000009466 transformation Effects 0.000 claims description 14
- 230000015572 biosynthetic process Effects 0.000 claims description 13
- 238000003786 synthesis reaction Methods 0.000 claims description 13
- 238000013500 data storage Methods 0.000 claims description 12
- 239000000654 additive Substances 0.000 claims description 7
- 230000000996 additive effect Effects 0.000 claims description 7
- 230000000295 complement effect Effects 0.000 claims description 4
- 238000012546 transfer Methods 0.000 abstract description 12
- 230000007812 deficiency Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 21
- 230000009471 action Effects 0.000 description 20
- 239000004065 semiconductor Substances 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 11
- 238000000034 method Methods 0.000 description 11
- 230000008569 process Effects 0.000 description 8
- 238000005056 compaction Methods 0.000 description 6
- 239000000284 extract Substances 0.000 description 6
- 241001269238 Data Species 0.000 description 5
- 238000011161 development Methods 0.000 description 5
- 238000000605 extraction Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000002441 reversible effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 230000008676 import Effects 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 230000000052 comparative effect Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000007639 printing Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 230000009849 deactivation Effects 0.000 description 1
- 238000009472 formulation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000002459 sustained effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
- G06F13/4059—Coupling between buses using bus bridges where the bridge performs a synchronising function where the synchronisation uses buffers, e.g. for speed matching between buses
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Information Transfer Systems (AREA)
- Dc Digital Transmission (AREA)
Abstract
本发明的目的是提供一种数据传送控制装置及电子设备。在发送侧,将位填充回路10及NRZI编码器12设在并行-串行变换回路的前级,在接收侧,将NRZI解码器14及解除位填充回路16设在串行-并行变换回路的后级,不用串行处理而是用并行处理实现位填充,NRZI编码、NRZI解码,解除位填充。将因位插入溢出的位转入下一个时钟周期的数据,将因位删除不足的位从下一个时钟周期的数据进位。根据运算出来的位填充(解除位填充)的位置插入(删除)位,根据溢出(压缩)位数的累积值决定应该输出的并行数据的范围。
Description
本发明涉及数据传送控制装置及电子设备。
近年来,作为连接个人计算机及其外围设备(广义地说电子设备)用的接口规格,USB(Universal Serial Bus,通用串行总线)成为人们注意的焦点。
在这种USB上,可通串行总线将个人计算机及其外围设备最大能连接到127台的优点。同时,可将在现有技术中用各种规格的接插件连接的鼠标,键盘及打印机等外围设备,用相同规格的接插件连接的同时,还具有所谓即插即用和热插的优点。
其次,在USB中,传送数据以称之为NRZI(Non Retum to Zero Invert,反转不归零制)的方法进行编码传送。这种NRZI是一种着眼于一般地“0”位的发生比例比起“1”位的发生比例高得多,防止串行总线上的信号电平的变化频度的增加而失步的编码方式。因此,在原始数据的位为“1”的场合,维持前面的信号电平,在初始数据位为“0”时,使前面的信号电平翻转。
从而,当进行NRZI编码时,在原始数据中“0”位并列时,编码后的数据,每一比特中,信号电平变化。
但是,在原始数据中“1”位并列的场合,编码后的数据的信号电平长时间持续不变的状态,会产生失步的问题。
因此在USB中,对于原始数据进行称之为位填充(广义地说,位插入)的处理。即,当“1”位连续地持续六次时,在其后面必须插入“0”位。然后,将这种经过位填充的数据用上述的NRZI进行编码。这样,即使在原始数据中“1”位并列的场合,也不会长时间持续信号电平不变化的状态。
从而,USB具有前面所述的各种优点,但与同时作为串行总线接口规格的引人注目的IEEE1394相比,具有其传送速度慢的缺点。
因此,与USB1.1规格相比,可实现非常高速的480Mbps(高速模式)的数据传送速度的USB2.0规格的策划制定目前正在加紧进行。
但是,已经确定当这样使数据传送速度高速化时,存在着难以在一个时钟周期内将前述位填充和NRZI处理完毕的问题。
即,位填充和NRZI适合于串行数据处理(用串行数据进行处理)。从而,将并行数据利用并行-串行变换回路变换成串行数据,将变换后的串行数据进行位填充处理,然后进行NRZI编码。因此,当数据传送速度为前面所述的480Mbps的情况下,用于位填充和NRZI处理的时钟频率也必须是480MHz。从而,需要可进行微细加工的最新半导体工艺,在不能使用这种半导体工艺的场合,实现传送速度480MHz的高速模式的数据填充和NRZI非常困难。
同时,在配线延迟是支配信号定时的关键路径的主要因素的微细半导体工艺中,为构成以480MHz动作的理论回路,为了使时钟相位差最小化,确保同步动作,还存在着必须利用手工操作进行配置、配线的问题。
鉴于上述问题,本发明的目的是提供一种可实现用低频率进行位插入、编码、解码、位删除处理的数据传送控制装置及电子设备。
为解决上述问题,本发明的特征为在经由串行总线进行数据传送用的数据传送控制装置中,包含以第一个信号电平的位连续给定的个数为前提条件插入第二个信号电平的位的位插入回路,把并行数据变换成用前述串行总线传送的串行数据用的并行-串行变换回路,其特征为,前述位插入回路设置在前述并行-串行变换回路的前级,同时,前述位插入回路接受从前级回路中以给定的时钟周期输入的N比特的并行输入数据,输出位插入的N比特的并行输出数据。
根据本发明,位插入回路设置在并行-串行变换回路的前级。从而,在变换成串行数据之前的并行数据状态下,可进行位插入处理。从而,与保持串行数据状态原封不动的进行处理的情况相比,例如,位插入回路能够以1/N个时钟频率动作。从而,由于无须使用可进行微细加工的最新的半导体工艺,可降低数据传送控制装置的成本。同时,由于可减少有关信号定时的关键路径,可缩短数据传送控制装置开发时间,同时,可提高数据传送控制装置的动作可靠性。同时对于数据传送控制装置的回路图形的生成可使用现有的自动配置配线方法。进而,由于运算所需时间产生余量,所以可利用采用HDL(硬件描述语言)的回路合成生成理论回路的方法。
此外,本发明的特征为,前述位插入回路,将由于位插入而溢出的位转入下一个时钟周期的数据进行处理。
这样,在给定的时钟周期N比特的并行输入数据依次输入的情况下,可将位插入的N比特的并行输出数据例如,在同一个时钟周期适当地依次输出。
同时,本发明的特征为,前述位插入回路包含对前述第二信号电平的位的插入位置及由于位的插入而溢出的位数进行运算的运算回路,对运算出来的溢出比特数通过累积地加法运算或减法运算所得到的溢出累积值进行存储的溢出累积值存储回路,前述位插入回路根据前述位插入位置一面插入前述第二信号电平的位,一面根据前述溢出累积值决定应该输出的并行输出的数据。
这样,可通过简单的处理决定位插入位置及应该输出的并行输出数据。
此外,本发明的特征为,前述位插入回路包含对位于前述并行输出数据的末尾的第一信号电平的位的连续数进行存储的连续数存储回路,前述运算回路根据前次的时钟周期中所存储的前述连续数,对前述位插入位置进行运算。
这样,可在适当的位插入位置插入第二信号电平的位。
此外,本发明的特征为,前述位插入回路包括存储至少一个时钟周期前的并行输入数据的数据存储回路,将所存储的前述至少一个时钟周期前的并行输入数据与现在的时钟周期的并行输入数据合成的合成数据输出的数据合成回路,根据前述溢出累积值从前述合成数据中对位插入的并行输出数据进行选择的选择器。
从而,即使在从前级回路用给定的时钟周期依次输入并行输入数据的情况下,也可以一面将这些并行数据暂时的保持在数据存储回路中,一面进行位插入处理。
此外,本发明的特征为,前述位插入回路在前述溢出累积值为给定值的场合,可将使并行输入数据的输入仅在至少一个时钟周期停止的信号相对于前级回路输出。
从而,即使在从前级回路在给定的时钟周期接连不断地输入并行输入数据,处理来不及的话的情况下,也可以停止由前级回路的并行输入数据的输入。借此,可防止丢失由前级回路来的并行输入数据事故的发生。
此外,本发明的特征为,它包含设于前述位插入回路与前述并行-串行变换回路之间、将由前述位插入回路来的N比特并行输出数据变换成物理层用的N比特的并行编码数据的编码器。
借此,在变换成串行前的并行数据的状态下,可进行数据的编码处理。从而,与在串行数据状态处理的场合相比,例如,能够以1/N的时钟频率进行编码动作。从而,可降低数据传送控制装置的成本,缩短开发时间,提高可靠性。
此外,本发明的特征为,在用于通过串行总线的数据传送用的数据传送控制装置中,包含将用前述串行总线传送的串行数据变换成并行数据用的串行-并行变换回路,把在第一信号电平的位以给定的个数为前提条件插入的第二信号电平的位删除的位删除回路,前述位删除回路设置在前述串行-并行变换回路后级的同时,前述位删除回路接受经过前述串行-并行变换回路以给定的时钟周期输入的N比特的并行输入数据,将位删除的N比特的并行输出数据输出。
根据本发明,位删除回路设在串行-并行变换回路的后级。从而,在并行状态,可进行位删除处理。从而,与在保持串行数据原封不动的状态下进行处理的情况相比,例如,能够以1/N的时钟频率进行删除动作。从而,由于无须采用可进行微细加工的最新半导体工艺可降低数据传送控制装置的成本。同时,由于减少与信号定时相关的关键路径,所以,在缩短数据传送装置的开发时间,提高数据传送控制装置的动作的可靠性。
同时,本发明的特征为,前述删除回路对于通过位删除所进行的数据长度压缩不足的位进行从下一个时钟周期的数据进位的处理。
这样,在给定的时钟周期N比特的并行输入数据依次输入的场合,将位删除的N比特的并行输出数据例如在同一时钟周期内可适当地依次输出。
此外,本发明的特征在于,前述位删除回路包括对前述第二信号电平的位删除位置及由位删除造成的数据长度压缩的位数进行运算的运算回路,对运算出来的压缩位数进行累积地加法运算或减法运算所得到的压缩累积值进行存储的压缩累积数存储回路,前述位删除回路根据前述位删除位置一面删除前述第二信号电平的位进行删除,一面根据前述压缩累积值决定应当输出的并行输出数据。
这样可通过简单地处理,决定位删除位置及应该输出的并行输出数据的范围。
此外,本发明的特征为,前述删除回路包含对在位删除前的并行输出数据末尾的第一信号电平的位连续数进行存储的连续数存储回路,前述运算回路根据在前次的时钟周期存储的前述连续数,运算前述删除位置。
借此,可恰当地把删除在删除位置的第二信号电平的位。
同时,本发明的特征为,前述位删除回路包含对至少一个时钟周期前的并行输入数据进行存储的存储回路,对所存储的前述至少一个时钟周期前的并行输入数据和目前的时钟周期的并行输入数据进行合成的合成数据进行输出的数据合成回路,根据前述压缩累积值,从前述合成数据中选择位删除的并行输出数据的选择器。
这样一来,即使在通过串行-并行变换回路在给定的时钟周期依次输入并行输入数据的场合,数据存储回路可一面暂时保持这些并行输入数据,一面进行位删除处理。
同时,本发明的特征为,前述位删除回路在前述压缩累积值变为给定值的场合,对下一级回路输出使之至少在一个时钟周期的期间内停止并行输入数据的提取的信号。
从而,即使在由于位删除,没有应该向下一级回路输出的并行输出数据的场合,也可以停止由下一级回路所进行的并行输出数据的提取。借此,防止向下一级回路输出错误的并行输出数据事故的发生。
同时,本发明的特征为,它包含设于前述串行-并行变换回路与前述位删除回路之间、将变换成物理层用的N比特的并行编码数据进行解码、作为N比特的输入数据输出到前述位删除回路中的解码器。
这样,在并行数据状态,可进行编码数据的解码。借此,与在串行数据处理的状态相比,例如可用1/N的时钟频率进行解码动作。从而,可降低数据传送控制装置的成本、缩短开发时间,提高可靠性。
同时,在本发明中,以前述第一信号电平的位连续给定的个数为前提所进行的插入前述第二信号的电平的位的处理,优选地为在USB规格中的位填充处理。
此外,根据本发明的电子设备,其特征为,它包含上面所述的其中之一的数据传送控制装置,经由前述数据传送控制装置及前述串行总线对由与之相匹配的器件接受的数据进行给定处理的装置,以及将加以处理的数据输出或用于存储的装置。同时,根据本发明的电子设备,其特征为,它包含上面所述其中之一的数据传送装置,对经由前述数据传送控制装置及前述串行总线传送到与之相匹配的器件中的数据进行给定的处理,将加以处理的数据提取出来的装置。
根据本发明,由于可将用于电子设备的数据传送控制装置降低成本,提高可靠性,从而也可降低电子设备的成本,提高其可靠性。同时,根据本发明,由于可在高速传送模式进行数据传送,从而可使电子设备的处理高速化。
图1是表示本实施例的数据传送控制装置的总体结构例的图示。
图2是表示作为本实施例的主要部分的HS用编码-解码的结构例的图示。
图3A,图3A是用于说明NRZI及位填充用的图示。
图4是用于对比较例的说明图。
图5是表示在发送侧的位填充及NRZI编码形式的图示。
图6是表示在接受侧的位填充及NRZI解码形式的图示。
图7是表示填充回路(位插入回路)的结构例子的图示。
图8是用于说明位填充回路动作的图示。
图9是NRZI编码器的结构例的图示。
图10是用于说明NRZI编码器动作的流程图。
图11是用于说明NRZI编码器动作的图示。
图12是位填充回路、NRZI编码器中输入输出的各种信号的波形例。
图13是表示NRZI解码器的结构例的图示。
图14是用于说明NRZI解码器动作的流程图。
图15是用于说明NRZI解码器动作的图示。
图16是表示解除位填充回路(位删除回路)的结构例的图示。
图17是用于说明解除位填充回路的动作的图示。
图18是解除位填充回路、NRZI解码器中输入输出的各种信号的波形例。
图19A、图19B、图19C是各种电子设备的内部方块图的例子。
图20A、图20B、图20C为各种电子设备的外观图的例子。
下面参照附图详细说明本发明的实施例。
1、总体结构
图1是表示本实施例的数据传送控制装置的总体结构的例子。
本实施例的数据传送控制装置包括数据处理回路200,数据组处理回路202,HS(高速模式)用编码器及解码器204,FS(全速模式)用编码器和解码码器206,信号回路208。此外,处理回路200,数据包处理回路202,FS用编码器和解码器206是任意的结构部件,本实施例的数据传送控制装置不必包含全部这些部件。
数据处理回路200为进行用USB规格的事物处理层的处理及FIFO(发送接收缓冲器)的末端的管理处理的回路。同时,数据处理回路200还具有外部的CPU及DMA控制器及接口回路的功能。
数据包处理回路202为对由USB发送接受的数据组进行组合、分解处理的回路。更具体地说,在发送时,进行附加SOP(Start of Packet,数据组开始)及EOP(End of Packet数据组结束)的处理,接收时,进行SOP及EOP删除处理。同时,数据组处理回路202也进行生成控制数据发送接收用的各种定时信号的处理。
HS用编码器及解除器204、FS用编码器和解码器为进行由USB传送的数据进行编码(发送时)及解码(接收时)的回路。同时,HS用编码器和解码器204为数据传送速度为480Mbps时的高速模式用的编码器、解码器,FS用编码器及解码器206是数据传送速度为12Mbps时的全速模式时用的编码器、解码器。
这里,高速模式为由USB2.0规格化的预定的传送模式。另一方面,全速模式为现有的USB1.1中规格化的传送模式。
在USB2.0中,由于准备了这种高速模式,所以,不仅可进行打印机、音响、摄像机等中的数据传送,同时还可实现在硬盘驱动器及光盘驱动器(CDROM、DVD)等存储设备中的数据传送。
信号回路208调整经由SUB发送到其它设备中的信号的波形,并进行经由USB向其它装置接收的信号的同步化处理、及数据和时钟抽取处理。
同时,信号回路208包括将发送时从HS用编码器及解码器204或FS用编码器及解码器206输出的并行数据变换成串行数据的并行-串行变换回路210。此外,包括在接收时将经由USB传送的串行数据变换成并行数据、输送到HS用编码器及解码器204或FS用用编码器及解码器206的串行-并行变换回路212。
图2表示作为本实施例的主要部分的HS用编码器及解码器204的结构例。
HS用编码器及解码器204包括位填充回路10(广义地,位插入回路),NRZI编码器12(广义地,将并行数据变换成物理层用并行编码数据的编码器),NRZI解码器(广义地,把变换成物理层用的并行编码数据进行解码、输出并行数据的解码器),解除位填充的了16(广义地,位删除回路)。
这里,位填充回路10,NRZI编码器12是数据发送(TX)时的动作的回路,NRZI解码器14,解除位填充回路16是数据接收时(RX)动作的回路。
首先,利用图3A,图3B对NRZI(Non Retum To Zero Invert),位填充(BitStuffing)进行简单说明。
在NRZI中,如图3A的A1、A2所示,在原始数据的位为“0”的场合,将信号电平翻转,如图3所示,在原始数据为“1”时,维持信号的电平。通过采用这种编码方式,在原始数据持续为“0”时,即使在信号电平长时间不变化的情况下,在NRZI后的时间信号电平对于每个位,信号电平也不变化。从而,在原始时间为“0”位发生的比例与“1”位发生的比例到很多的场合,可编码成最适合于时钟抽取的数据。
然而,如从图3A的A3可以看出的,当原始数据中的“1”位连续并列时,NRZI后的数据信号电平不变化的状态长时间持续,会产生PLL(正逻辑电平)失步的问题。
因此,在USB中,采用称之为位填充(广义地,位插入)的处理。即,如图3B的A4所示,当“1”位连续六个时,在其后必须插入“0”位。然后如A5所示将位填充后的时间用NRZI进行编码。
这样一来,即使在原始数据中的“1”位并列的场合,如图3B的A6所示,NRZI编码数据的信号电平翻转。从而,可解决持续信号电平长时间不变化状态的问题,可获得最适合于时钟抽取的数据。
此外,在接收侧,进行对由发送侧的位填充插入的“0”位进行解除位插入的处理。即,在“1”位连续六个、于其后插入“0”的场合,将该“0”位删除。
进而,这种NRZI及位填充及解除位填充,由于根据前面的位的信号电平状态决定现在的位信号电平的状态,进而最适合于串行数据处理的处理。
因此,在发送侧,如图4的比较例所示,位填充回路302及NRZI编码器304,填充设在并行-串行变换回路300的后级。同时,对于由并行-串行变换回路300变换所得的串行数据,进行位填充将NRZI编码处理。
另一方面,在接收侧,NRZI解码器306及解除位填充回路308,填充设在串行-并行变换回路310的前级。同时,在串行数据状态进行解除位填充及NRZI解码处理,将处理后的串行数据输入串行-并行变换回路310获得并行数据。
但在USB2.0中采用预定的高速模式中,由于数据传送速度为480Mbps,用图4的结构,对如B1,B2所示的串行数据处理(NRZI,位填充,解除位填充)必须用480MHz的时钟频率实现。
在这种情况下,如果采用可微细加工的最新的半导体工艺,也可以用480MHz对B1,B2所示的串行数据进行处理。
但是,在ASIC(Application Specific Integrated Circuit应用型专用半导体集成电路)中,由于兼顾到成本,不采用最新的半导体工艺,而是优选地采用通常的半导体工艺。
同时,例如,如果对位填充回路302,NRZI编码器304,NRZI解码器306,解除位填充回路308的回路,用手工作业使配线容量最佳化的话,即使采用通常的半导体工艺,也具有使这些回路以480MHz动作的可能性。
但是,这种手工配置,会引起IC的开发期间加长的问题及IC的误动作问题。
因此,在本实施例中,如图2所示,在发送侧将位填充回路10(位插入回路)设置在并行-串行变换回路(图1的210)的前级。同时,该位填充回路10接受从前级的数据包处理回路(图1的202)在给定的时钟周期输入的8位(广义地N位)的tx_data(并行输入数据),将位填充(位插入)的8位的tx_bs_data(并行输出数据)例如在上述时钟周期内输出。
更且,将从位填充回路10来的8位tx_bs_data变换成8位的tx_en_data(物理层用并行编码数据)的NRZI编码器12设置在位填充回路10与并行-串行变换回路之间。
另一方面,在接受侧,将解除位填充回路16(位删除回路)设在串行-并行变换回路(图1的212)的后级。同时,该解除位填充回路16,经由串行-并行变换回路接受在给定的时钟周期内输入的8位(N位)的rx_bs_data(并行输入数据),将解除位填充(位删除)的8位的rx_data(并行输出数据),例如在上述时钟周期内输出。
进而,将对8位的rx_en_data(变换成物理层用的变换编码数据)进行解码、作为8位的rx_bs_data(变换输入数据)输入到位填充回路16中的NRZI解码器14,设置在串行-并行变换回路与解除位填充回路16之间。
利用如上所述的结构,可在保持并行数据的状态原封不动的状态下,实现NRZI、位填充、解除位填充的处理。从而,例如在N=8位的场合,可以在480MHz/8=60MHz这样低的时钟周期内使位填充回路10、NZRI编码器12、NZRI解码器14、解除位填充回路16动作。
从而,即使不用可微细加工的半导体工艺,也可实现NRZI、位填充、解除位填充处理。从而可降低数据传送控制装置的成本。
同时,对于这些回路10~16的图形不用手工作业进行配置也能够完成。从而可用门阵列等自动配置线制成回路10~16的图形,缩短开发周期,降低数据传送控制装置的成本。
此外,由于回路10~16能够以60MHz这种低速的时钟频率动作,从而可提高对数据变形和跳动的耐受能力,大幅度提高数据传送的可靠性。
图5中表示出在发送侧的位填充及NRZI编码的形式。
此外,在USB中,以LSB快速地输入输出数据。同时,在USB2.0中,对于EOP(FEh)不进行位填充。
同时为了简化说明,表示出了附加作为SOP的三字节(000000008h),附加作为EOP的一字节的(FEh)的情况。此外,还表示出了在USB的数据组格式中不会有的数据的、输入作为数据组主体的8字节的(FFFFFFFFFFFFFFFFFh)的数据的情况。
此外,在图5中,画点的部分表示不管该值。
例如考虑图5的C1所示的作为tx_data(FFh)输入到图2的位填充回路10的情况。在这种情况下,由于在前述时钟周期末尾(MSB侧的“1”位的连续数如图C2所示为1,在“1”位的连续数为5的位置处,如C3所示,通过位填充插入“0”位。
从而,由图2的位填充回路10输出的tx_bs_data,如C4所示,成为(DFh)。然后,该(DFh)在NRZI编码器12中被编码,作为tx_en_data如C5所示的那样输出(1Fh)。即,通过如C6所示的通过位填充插入“0”位,进行如C7所示的tx_en_datad的信号电平翻转。从而,即使在“1”位连续的场合,tx_en_data的信号电平翻转,在接收侧容易进行时钟提取。
此外,当如C3所示插入“0”位时,会出现C8所示的位溢出。因此在本实施例的状态下,如C9所示,将这种溢出的位转入到下一个时钟频率的数据。
同时,在图5的C10中,由于在前一时钟周期的末尾的“1”位的连续数为2(由于C8的位的转入),在“1”位的连续数为4的位置处,如C11所示,插入“0”位。
从而,由位填充回路10输出的tx_bs_data,变成C12中所示的(EFh)。同时,从NRZI编码器12输出的tx_en_data成为C13所示的(FOh)。即,通过C14所示的“0”位的插入,如C15所示,tx_en_data的信号电平翻转,容易进行在接收侧的时钟提取。
同时在图5的C16中,由于位插入的累积值(溢出位数目的累积值)成为8个以上,停止从前级数据组处理回路(图1的202)的tx_data的输入。这可通过将输出到前级数据组处理回路的图2的信号tx_ready处于非备用状态来实现。
在图6中表示出在接收侧NRZI解码器及解除位填充的形式。
在图6中,和图5一样,表示出了USB的数据组格式不会有的数据,但作为数据组主体的8字节的(FFFFFFFFFFFFFFFFh)的情况。
此外,在图6中画点的部分意味可以不理会该值,画斜线的部分表示利用位填充插入“0”的位。
例如,如图6的D1所示的作为rx_en_data(1Fh)被输入到图2的NRZI解码器14中的场合,变成从NRZI解码器14输出的rx_bs_data成为D2所示的(DFh)。该(DFh)为借助发送侧的位填充在D3所示的位置插入“0”的数据(参照图5的C6)。
然后,当该(DFh)输入到图2的解除位填充回路16中时,将D3所示的“0”位删除。即,在这种情况下,由于在前一时钟周期的末尾的“1”位的连续数如D4所示为1,在“1”位的连续数为5的位置处,通过解除位填充将下一个“0”位删除。从而由解除位填充回路16输出的rx_data变成D5所示的(FFh)。
此外,当如D3所示,删除“0”位时,数据长度被压缩,数据长度不足8位。因此,在本实施例中,从下一个时钟周期的数据进位到D6所示的位。
同时,如图6的D7所示,作为rx_en_data,(FOh)输入到NRZI解码器14中的场合,从NRZI解码器14输出的rx_bs_data变成D8所示的(EFh)。该(EFh)为通过在发送侧的位填充在D9所示的位置处插入“0”的数据(参照图5的C14)。
然后,当该(EFh)被输入到解除位填充回路16时,删除D9所示的“0”位。即,在这种场合,在前一时钟周期的末尾的“1”位连续数为三(因为D6所示的位的进位),因此在“1”的连续数为三的位置处删除其下面的“0”位。从而,从解除位填充回路16输出的rx_data如D10所示成为(FFh)。
同时,在图6的D11中,由于位的删除数的累积值(压缩位数的累积值)变成八,所以停止由下一级的数据组处理回路(图1的202)进行的rx_data的取入处理。这可通过使输出到下一级数据组处理回路的图2的信号rx_strb处于非就绪状态来实现。
2、详细的结构例
下面说明图2的各回路框图的详细结构。
2.1、位填充回路
图7表示图2的位填充回路10的结构侧。
位填充回路10包括位填充处理回路20,数据存储回路32,数据合成回路34以及具有预选器36(前置移位器)和后置选择器38(后置移位器)的选择器35。
这里位填充处理回路20对由于位插入造成的溢出位进行转入下一个时钟周期的数据的处理,包括发送序列发生器22,位填充位置及溢出运算回路24,溢出累积值存储回路26,连续数运算回路28,以及连续数存储回路30。
发送序列发生器22生成用于位填充处理及发送处理用的各种信号。具体地说,生成对位填充处理回路20内的各电路块的控制信号。同时,接收从前级数据组处理回路(图1的202)发出的要求发送信号tx_reg及位填充的禁止指示信号dis_bs,输出发送就绪信号tx_ready。同时,对后级的NRZI编码器(图2的12)输出表示tx_bx_data是否有效的信号tx_valid及清除信号clear。
位填充位置及溢出运算回路24进行位填充位置(第二信号电平的位的插入位置),以及由于位填充(位插入)溢出的位数的运算处理。
溢出累积值存储回路26,对于借助位填充位置及溢出运算回路24所运算出来的溢出位数进行累积的加法运算(减法运算也可以)所得到的溢出累积值进行存储。
在本实施例中,根据运算出来的位填充位置,插入位填充用的“0”位。同时,根据所存储的溢出累积值,决定应该输出的tx_bs_data的范围。
连续数运算回路28,运算在tx_bs_data末尾的“1”位的连续数,连续数存储回路30存储该连续数。
位填充位置及溢出运算回路24,根据在前次的时钟周期存储在连续数存储回路30的末尾的“1”的连续数,运算位填充的位置。
数据存储回路32,为存储一个时钟周期前的tx_data的全部位的回路。此外,如果必要,也可以存储二个时钟周期前的tx_data的一部分或全部的位,以及3-M(M>4)个时钟周期前的tx_data的一部分或全部的位。
数据合成回路34,将存储在数据存储回路32中的一个时钟周期前的tx_data的全部位和现在的时钟周期的tx_data的全部位进行合成,将16位的合成数据输出。
预选器36根据溢出累积值存储回路26的溢出累积值,从该16位的合成数据中选择出8位的数据,输出到后置选择器38。
后值选择器38接收从预选器36输出的8位的数据,在由位填充位置及溢出演算回路24运算出来的位填充位置上插入“0”,输出位插入后的8位的tx_bs_data。
下面参照图8,对图7所示的回路的动作进行详细说明。
例如,在图8的E1中,将作为目前时钟周期的tx_data的I2=(FFh),以及作为一个时钟周期的tx_data存储在数据存储回路32中的I1=(80h),输入到数据合成回路34中。数据合成回路34将由这些(FFh)和(80h)构成的合成数据输出到预选器36中。
这时,存储在溢出累积值存储回路26中的溢出累积值如图8的E2所示成为0。从而,从溢出累积值存储回路26接收该溢出累积值的预选器36,从合成数据中,选择把E3所示的位置为最前面的位的8位数据并将其输出。
同时,由于存储在连续数据存储回路30的末尾的“1”的连续数如图8的E4、E5所示为一,所以位填充位置及溢出运算回路24进行6-1=5的运算,将E6所示的位置作为位填充位置,通知后置选择器38。
这样,接收从预选器36输出的8位的数据及由位填充位置和溢出运算回路24通知的位填充位置的后置选择器38,在指定的位填充位置处插入“0”位。从而,E7所示的8位数据(DFh),作为E8所示的tx_bs_data被输出。
此外,在这种情况下,从预选器36输出的8位数据中,由于E9所示的位因位填充而成为溢出位所以如E10所示,转入下一个时钟周期的数据。
在图8的E11中,数据合成回路34将I3=(FFh)与I2=(FFh)合成,输出到预选器36。
这时,溢出累积值进行一次加法运算,成为图8的E12所示的1。从而,预选器36从合成数据中选择以E13所示的位置作为最前面的位的8位数据并将其输出。
同时,由于末尾的“1”的连续数如E14所示为2,所以E15所示的位置作为位插入位置并通知后置选择器38。
这时,后置选择器38在指定的位置插入“0”位。从而,E16所示的(EFh),作为E17所示的tx_bs_data加以输出。
如上所述,经过位插入的tx_bs_data在每一时钟周期依次输出。然后,通过位填充每插入一个“0”位,溢出累积值例如E18,E19,E20,E21,E22所示,不断增加。同时,伴随着这种增加,提取8位数据的位置也像E23,E24,E25,E26,E27所示的那样不断变化。
然后,当如E28所示,溢出累积值为8时,将溢出累积值初始化为零(在溢出累积值为9时,初始化为1)。这样,图7所示的发送序列发生器22将输出到前级数据组处理回路的发送就绪信号tx_ready,仅在图8的E29所示的一个时钟周期内非活性化。从而,如E30,E31所示,tx_data的输入仅在一个时钟周期间内停止。同时,也如E32,E33所示,停止向图7的数据存储回路32的数据装入。
然后,在下一个E34的时钟周期,由于溢出累积值被初始化为零,所以从E35所示的位置提取8位的数据。
通过上述方式,在本实施例中,即使在溢出累积值为8或9的场合,也可以成功地毫无矛盾地从合成数据中取出8位的数据。
2.2、NRZI编码器
图9表示图2所示的NRZI编码器12的结构例。
NRZI编码器12包括NRZI运算回路50与末尾位存储回路52。
这里,NRZI编码器运算回路50为接收从前级位填充回路来的tx_bs_data与末尾位存储回路52来的lastlbit(最后一位),输出编码后的tx_en_data的回路。
末尾位存储回路52为存储tx_en_data的末尾一位的信号电平,将其作为lastlbit(最后一位)输出到NRZI编码器运算回路50中的回路。
此外,末尾位存储回路52当从前级位填充回路10来的信号clear(消除信号)激活时复位。同时,以在信号tx_valid中置1为前提,存储tx_en_data末尾的1位。
图10表示NRZI编码器运算回路50的动作流程图。
首先,判断从前级位填充回路10来的tx_bs_data[0](tx_bs_data的位0)是否为1(步骤S1)。
然后,在tx_bs_data[0]=1的场合,将tx_en_data[0]的信号电平设定为与lastlbit相同的信号电平(步骤S2)。例如在图11的F1中,由于tx_bs_data[0]=1,lastlbit=1,所以,成为tx_en_data[0]=1(与lastlbit tx_bs data[0]=1为同一信号电平)。
另一方面,在tx_bs_data[0]=0的场合,将tx_en_data[0]的信号电平设定为lastlbit的反转信号的电平(步骤S3)。例如在图11的F2中,由于tx_bs_data[0]=0,lastlbit=0,成为tx_en_data[0]=1(lastlbit=0的反转信号电平)。
]其次,设定n=1,判断tx_bs_data[n]是否为1(步骤S4,S5)。
然后,在tx_bs_data[n]=1的场合,将tx_en_data[n]的信号电平设定为与tx_en_data[n-1]相同的信号电平(步骤S6)。例如,在图11的F3中,由于tx_bs_data[1]=1,tx_en_data[0]=1,所以成为tx_en_data[1]=1(与tx_en_data[0]=1为同一信号电平)。
另一方面,在tx_bs_data[n]=0的场合,将tx_en_data[n]的信号电平设定为tx_en_data[n-1]的反转信号的电平(步骤S7)。例如,在图11的F4中,由于tx_bs_data[1]=0 tx_en_data[0]=1,所以成为tx_en_data[1]=0(tx_en_data[0]=1的反转信号)。
其次,令n增加1(步骤S8)。同时,直到将步骤S5~S8的处理反复直到n>8(步骤9)。获得全部的tx_en_data[n]。
图12表示在位填充回路10、NRZI编码器14中输入输出的各种信号的波形例。此外,为调整波形以便用时钟进行取样,使图12的tx_bs_data成为比图8的tx_bs_data延迟一个时钟周期的信号。
如图12的G1,G2所示,当溢出累积值为8或9时,使发送信号的就绪信号tx_ready成为非现用的,tx_data的输入停止一个时钟周期(参照图8的E29,E30,E31)。
另外,如图12的G3所示,在EDP=(FEh)的输入时,dis_bs成为现用的,位填充被禁止。
同时,如G4、G3所示,在要求发送信号tx_reg成为现用的之后,例如,在两个时钟周期后,信号clear成为现用的,图9的末尾位存储回路52复位。
此外,G6所示的信号tx_valid,当tx_bs_data有效时为1。
2.3、NRZI解码器
图13表示图2的NRZI解码器14的结构例。
NRZI解码器14包含NRZI解码运算回路60和末尾位存储回路62。
这里,NRZI解码运算回路60,为接收从前级串行-并行变换回路(图1的212)来的rx_en_data与从末尾存储回路62来的lastlbit,输出解码后的rx_bs_data输出回路。
末尾位存储回路62为存储rx_en_data的末尾一位的信号电平,将其作为lastlbit输出到NRZI解码运算回路60中的回路。
此外,末尾位存储回路62,当激活信号clear时复位。同时,以信号rx_valid置1为条件,存储rx_en_data的末尾的一位。
图14为表示NRZI解码运算回路60的动作的流程图。
首先,判断从前级的串行一并行变换回路来的rx_en_data[0](rx_en_data的位0)的信号电平是否等于lastlbit信号电平(步骤S11)。
然后,在rx_en_data[0]的信号电平等于lastlbit的场合,令rx_bs_data[0]=1(步骤S12)。例如,在图15的G1,由于rx_en_data[0]=lastlbit,所以rx_bs_data[0]=1。
另一方面,在rx_en_data[0]的信号电平不等于lastlbit时,令rx_bs_data[0]=0(步骤S13)。例如在图15的G2中,由于rx_en_data[0]=1,lastlbit=0,所以rx_bs_data[0]=0。
其次,设定n=1,判断rx_en_data[n]的信号电平是否等于en_bs_data[n-1]的信号电平(步骤S14,15)。
然后,在rx_en_data[n]的信号电平等于rx_en_data[n-1]的场合,令rx_bs_data[n]=1(步骤S16)。例如在图15的G3中,由于rx_en_data[1]=rx_en_data[0]=1,所以rx_bs_data[1]=1。
另一方面,在rx_en_data[n]的信号电平不等于rx_en_data时,令rx_bs_data[n]=0(步骤S17)。例如,在图15的G4中,由于rx_en_data[1]=0,rx_en_data[0]=1,所以rx_bs_data[1]=0。
其次令n的增量为1(步骤S18)。然后,反复步骤S15~S18的处理直到n>8(步骤S19),得到全部的rx_bs_data[n]。
2.4、解除位填充回路
图16中表示图2的解除位填充回路16的结构例。
解除位填充回路16包括解除位填充处理回路70,数据存储回路82,数据合成回路84,具有预选器86(预移位器)以及后置选择器88(后置移位器)的选择器85。
这里,解除位填充处理回路70是用于从下一个时钟周期的数据进位到因位删除造成的数据长度压缩变成不足的位的处理的回路,包括接收序列发生器72,解除位填充位置和压缩运算回路74,压缩累积值存储回路76,连续数运算回路78,连续数存储回路80。
接收序列发生器72生成解除位填充处理及接收处理用的各种信号。具体地说,生成对解除位填充处理回路70内的各电路块的控制信号。同时,接收从前级串行-并行变换回路(图1的212)来的信号rx_valid,输出信号clead,rx_in,rx_strb。
解除位填充位置及运算回路74进行解除位填充位置(第二信号电平的位删除位置)、因解除位填充(位删除)造成的数据长度压缩数的运算处理。
压缩累积数存储回路76,对通过从初始值累积地减法运算(加法运算也可以)由解除位填充位置及压缩运算回路74运算出来的压缩位数所得到的压缩累积值进行存储。
在本实施例中,根据运算出来的解除位填充位置,删除由发送侧的位填充插入的“0”位。同时,根据所存储的压缩累积值决定应该输出的rx_data的范围。
连续数运算回路78运算在解除位填充前的rx_data的末尾的“1”位的连续数(由后置选择器88从预选器86的输出中选择出来的数据的末尾的“1”位的连续数),连续数存储回路80存储该连续数。
解除位填充位置及压缩运算回路74,根据在前一时钟周期存储在连续数存储回路80中的末尾的“1”的连续数,运算解除位填充的位置。
数据存储回路82是对两个时钟周期前的rx_bs_data的bit7(末尾位)与一个时钟周期前的rx_bs_data的全部位进行存储的存储回路。此外,如果必要的话,也可以存储两个时钟周期前的全部位,以及3~M(M>4)时钟周期前的rx_bs_data的一部分或全部位。
数据合成回路84,将存储在数据存储回路82内的两个时钟周期前的rx_bs_data的bit7和一个时钟周期前的rx_bs_data的全部位与现用时钟周期的rx_bs_data的全部位进行合成,输出17位的合成数据。
预选器86根据由压缩累积值存储回路76输出的压缩累积值,从这17位的合成数据中选择10位数据,输出到后置选择器88中。
后置选择器88接收由预选器86输出的10位数据,删除由解除位填充位置和压缩运算回路74运算出来的解除位填充位置处的“0”位,输出位删除之后的8位rx_data。
下面利用图17详细说明图16的回路的动作。
例如,在图17的H1,作为现用时钟周期的rx_bs_dataI3=(EFh),前一个时钟周期的I2=(DFh),两个时钟周期前的I1的末尾位为“1”,通过数据合成电路84将其合成,将该合成数据输出到预选器86。
这时,存储在压缩累积值存储回路76中的压缩累积值变成图17的H2所示的8(初始值)。从而,接收该压缩累积值的预选器86,从合成数据中选择出以H3所示的位置为最前面的位的10位数据并输出。
同时,由于存储在连续数存储回路80的末尾的“1”的连续数如图17的H4、H5所示的那样是1,解除位填充位置及压缩运算回路7进行6-1=5的计算,将H6所示的位置作为解除位填充的位置通知后置选择器88。
这样,接收由预选器86来的10位的数据以及从解除位填充位置和压缩运算回路74来的解除位填充的位置的后置选择器88,删除在指定的解除位填充位置的“0”位。这样,H7所示的8位的数据(FFh)作为以H8所示的rx_data输出。
此外,在这种情况下,由于位删除变成不足的如H9所示的位,从下一时钟周期的数据13进位到数据12中。
在图17的H10中,数据合成回路84,将I4=(F7h),I3=(EFh),作为12的末尾位“1”进行合成,输出到预选器86中。
这时,压缩累积值通过一个减法运算变成如H11所示的7。从而,预选器86从合成数据中选择以H12所示的位置为最前面的位的10位数据并输出。
同时,由于末尾“1”的连续数如H13所示为3,所以,以H14所示的位置作为解除位填充的位置通知后置选择器88。
这样一来,后置选择器88删除在指定的解除位填充位置处的“0”位。从而,H15所示的(FFh),作为rx_data被输出。
以上述方式,已被解除位填充的rx_data在每一时钟周期被依次输出。然后,对于每一个由解除位填充,被删除“0”位的累积值,例如像H17、H18、H19所示的那样进行减少。同时与此相伴,提取10位的数据的位置也像H20,H21,H22所示的那样进行变化。
然后,当如H23所示的那样压缩累积值变为0时,将压缩累积值初始化为8(在1的情况下初始化为9)。这样,图16的接收序列发生器72将输出到后级数据组处理回路的接收选通脉冲信号rx_strb在如图17的H24所示的那样进行一个时钟周期的非现用化。借此,如H25所示,rx_data的取入,停止一个时钟周期的时间。
然后,在下一个H26的时钟周期内,由于将压缩累积值初始化为8,所以,从H27所示的位置提取10位的数据。
按照上述方式,在本发明的实施例中,即使压缩累积值成为0或1(给定值),也可以成功地毫无矛盾地从合成数据中提取10位数据。
图18中表示出在NRZI解码器14,解除位填充回路16中的输入输出的各种信号的波形。此外,图18的rx_data、rx_strb由于为了调整波形用时钟进行取样,成为比图17的rx_data、rx_stab延迟一个时钟周期的信号。
如图18的J1,J2所示,当压缩累积值为8或9时,接收选通脉冲信号rx_strb成为非现用信号,rx_data的取入停止一个时钟周期的时间(参照图17的H24、H25)。
同时,如图12的G3所说明的那样,不进行对EOP的位填充处理。从而,在接收EOP时在接收侧产生位填充错误,如图18的J3所示,接收错误信号rx_err被激活。即,接收侧通过检测出位填充错误,检测出EOP。
3、电子设备
下面说明包含本实施例的数据传送装置的电子设备的例子。
例如,图19A表示作为电子设备之一的打印机内部的框图,图20A为其外观图。CPU(微型计算机)510进行对整个系统的控制。操作部511用于使用者对打印机的操作。在ROM561内存储控制程序、字形等,RAM517具有作为CPU510的工作区的功能。DMAC518为不经过CPU510的进行数据传送用的DMA控制器。显示板519通知使用者打印机的动作状态。
经由USB从个人计算机及其它装置传送的串行打印数据,用数据传送控制装置500变换成并行打印数据。然后,变换后的并行打印数据由CPU510或DMAC518送往打印处理部(打印机引擎)512。然后,在打印处理部512对并行打印数据进行给定的处理,由打印头等构成的打印部(用输出数据的装置)514向纸上打字。
图19B表示作为电子设备之一的扫描仪的内部框图,图20B表示其外观图。CPU520对整个系统进行控制。操作部521由使用者进行操作。在ROM526上,存储控制程序等,RAM527起着作为CPU520的工作区的作用。DMAC528为DMA控制器。
由光源、光电变换器等构成的图象读取部(数据提取用装置)522读取原稿的图象,由图象处理部(扫描仪引擎)524对读取的图象数据进行处理。然后由CPU520及DMAC528将处理后的图象数据送往数据传送控制装置500。数据传送控制装置500将该并行图象数据变换成串行数据,经由USB发送到个人计算机等其它装置。
图19C表示作为电子设备之一的CD-RW驱动内部的框图,图20C表示其外观图。CPU530对整个系统进行控制。操作部531用于操作者对CD-RW进行操作。在ROM536中存储控制程序等,RAM537起着作为CPU530的工作区的作用。DMAC538为DMA控制器。
借助由激光、电动机光学系统等构成的读出写入部(提取数据用的装置或存储数据用的装置)533从CD-RW532中读取的数据,被输入到信号处理部534中,进行纤错处理等的给定信号处理。然后,由CPU530或DMAC538将进行过信号处理的数据送往数据传送控制装置500。数据传送控制装置500将该并行的数据变换成串行数据,经由USB发送到个人计算机等其它装置。另一方面,经过USB送往其它装置的串行数据,由数据传送控制装置500变换成并行数据。然后该并行数据由CPU530或DMAC538送往信号处理部534。然后,在信号处理部534对该并行数据进行给定的信号处理,由读出写入部533存储在CD-RW532上。
此外,在图19A、图19B、图19C中,除CPU510,520,530之外,也可另外设置用于由数据传送控制装置500所进行数据传送控制的CDU。
如果把本实施例的数据传送控制装置用于电子设备,能够用USB2.0中的高速模式进行数据传送。从而,在使用者由个人计算机等进行印出指令时,能够很少的时间滞后结束打印任务。此外,在发出向扫描仪内提取图象的指令后,使用者可在很少的时间滞后的情况下看到所读取的图象。同时,可高速地进行从CD-RW中的数据读取以及向CD-RW中的数据写入。
同时,如果把本实施例的数据传送控制装置用于电子设备,可用廉价的通常的半导体工艺制造数据传送控制装置的IC。从而,通过降低数据传送控制装置的成本,也可降低电子设备的成本。另外,由于可减少在数据传送控制中以高速动作的部分,从而提高数据传送的可靠性,同时也提高电子设备的可靠性。
另外,作为可采用本实施例的数据传送控制装置的电子设备,除上面所述的之外,还可以有各种光盘驱动器(CD-ROM,DVS),光磁盘驱动器(MO),硬盘驱动器,TV,TVR,摄像机,音响设备,电话机,放映机,个人计算机,电子记事本,文字处理器等各种设备。
此外,本发明并不限于本实施例,在本发明的主旨范围内可进行各种变形。
例如,本发明的数据传送控制装置的结构,并不限于图1及图2所示的结构。
此外,位插入回路,编码器,解码器,位删除回路的结构,也可以采用除图7、图9、图13、图16所描述的结构之外的与它们等效的结构。
同时,本发明特别优选地适用于USB2.0的数据传送,但并不限于此。例如,本发明也适用于基于USB2.0同样的思想的规格以及使USB2.0升级的规格中的数据传送。
Claims (18)
1、一种通过串行总线传送数据的数据传送控制装置,其特征为,它包含:
以第一个信号电平的位连续给定的个数为前提条件、插入第二个信号电平的位的位插入回路,以及
将并行数据变换为用串行总线传送的串行数据用的并行-串行变换回路,前述位插入回路设置在前述并行-串行变换回路的前级,
前述位插入回路接收从前级回路以给定的时钟周期输入的N位的并行输入数据,并输出位插入后的N位的并行输出数据。
2、如权利要求1所述的数据传送控制装置,其特征为,前述位插入回路对由于位插入溢出的位进行转入下一个时钟周期的数据的处理。
3、如权利要求1所述的数据传送控制装置,其特征为,前述位插入回路包括:
对前述第二个信号电平的位的插入位置以及由于位插入而溢出的位的数目进行运算的运算回路,以及
对通过将所运算出来的溢出的位数累积地进行加法运算或减法运算所得到的溢出累积值进行存储的累积值存储回路,
前述位插入回路根据前述位插入位置,一面插入第二个信号电平的位,一面根据前述溢出累积值决定应该输出的并行数据。
4、在权利要求3所述的数据传送控制装置中,其特征为,前述位插入回路包括:
对在前述并行输出数据的末尾的第一信号电平的位的连续数进行存储的连续数存储回路,
前述运算回路根据前一时钟周期中所存储的前述连续数运算前述位插入位置。
5、如权利要求3所述的数据传送控制装置,其特征为,前述位插入回路包括:
对至少一个时钟周期前的并行输入数据进行存储的数据存储回路,将所存储的前述至少一个时钟周期前的并行输入数据与现在的时钟周期的并行输入数据合成的合成数据输出的数据合成回路,
根据前述溢出累积值从前述合成数据中选择位插入的并行输出数据的选择器。
6、如权利要求3所述的数据传送控制装置,其特征为,前述位插入回路在前述溢出累积值成为给定值的场合,对前级回路输出使并行数据的输入至少在一个时钟周期期间停止的信号。
7、如权利要求1所述的数据传送控制装置,其特征为,它包括设置在前述位插入回路与前述并行-串行变换回路之间、将从前述位插入回路来的N位并行输出数据变换成物理层用的N位变换编码数据的编码器。
8、一种通过串行总线进行数据传送的数据传送控制装置,其特征为,它包括:
将用前述串行总线数传送的串行据变换成变换数据用的串行-并行变换回路,
以第一信号电平的位连续给定的个数位前提条件将插入的第二信号电平的位删除的位删除回路,
前述位删除回路接收经由前述串行-并行变换回路在给定的时钟周期内输入的N位并行数据,并输出经过位删除的N位并行输出数据。
9、如权利要求8所述的数据传送控制装置,其特征为,前述位删除回路进行从下一个时钟周期的数据向由于位删除所造成的数据长度的压缩不足的位进位的处理。
10、如权利要求8所述的数据传送控制装置,其特征位,前述位删除回路包括:
对前述第二信号电平的位删除位置及由于位删除所造成的数据长度压缩的位数进行运算的回路,
对运算出来的压缩位数累积地加法运算或减法运算所得到的运算累积值进行存储的压缩累积值存储回路,前述位删除回路根据位删除位置一面删除前述第二信号电平的位进行删除,一面根据前述压缩累积值决定应该输出的并行输出数据。
11、如权利要求10所述的数据传送控制装置,其特征为,前述位删除回路包括
对位删除前的并行输出数据的末尾的第一信号电平的位连续数进行存储的连续数存储回路,
前述运算回路根据在前一时钟周期所存储的前述连续数,对前述位删除位置进行运算。
12、如权利要求10所述的数据传送控制装置,其特征为,前述位删除回路包括
对至少一个时钟周期前的并行输入数据进行存储的存储回路,
将所存储的前述至少一个时钟周期前的并行输入数据与现在的时钟周期的并行数据合成的合成数据输出的数据合成回路,
根据前述压缩累积值,从前述合成数据中选择已进行位删除的并行输出数据的选择器。
13、如权利要求10所述的数据传送控制装置,其特征为,前述位删除回路在前述压缩累积值成为给定值的场合,对后段的回路输出使并行输出数据取入至少在一个时钟周期期间停止的信号。
14、如权利要求8所述的数据传送控制装置,其特征为,它包括设于前述串行-并行变换回路与位删除回路之间、把变换成物理层用的N位的并行编码数据解码、作为N位的并行输入数据输出到前述位删除回路的解码器。
15、如权利要求1所述的数据传送控制装置,其特征为,以前述第一信号水平的位连续给定的个数为前提条件将前述第二信号电平的位插入的处理,是在USB(Universal Serial Bus通用总线)规格上的位填充处理。
16、如权利要求8所述的数据传送控制装置,其特征为,以前述第一信号水平的位连续给定的个数为前提条件将前述第二信号电平的位插入的处理,是在USB(Universal Serial Bus通用总线)规格上的位填充处理。
17、一种电子设备,其特征为,它包括:
如权利要求1至16中任何一个所述的数据传送控制装置,
对经由前述传送控制装置及前述串行总线从与之相匹配的装置接收的数据给予给定处理的装置,
将进行过处理的数据进行输出或存储用的装置。
18、电子设备,其特征为,它包括:
如权利要求1至16中任何一个所述的数据传送控制装置,
将经由前述数据传送控制装置及前述串行总线传送到与之相匹配的装置的数据进行给定处理的装置,
取入经过处理的数据用的装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP73622/2000 | 2000-03-16 | ||
JP2000073622A JP3603732B2 (ja) | 2000-03-16 | 2000-03-16 | データ転送制御装置及び電子機器 |
JP73622/00 | 2000-03-16 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1320865A true CN1320865A (zh) | 2001-11-07 |
CN1269049C CN1269049C (zh) | 2006-08-09 |
Family
ID=18591842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN01122059.7A Expired - Fee Related CN1269049C (zh) | 2000-03-16 | 2001-03-16 | 数据传送控制装置及电子设备 |
Country Status (4)
Country | Link |
---|---|
US (1) | US6732204B2 (zh) |
JP (1) | JP3603732B2 (zh) |
CN (1) | CN1269049C (zh) |
TW (1) | TW540208B (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102486760A (zh) * | 2010-12-03 | 2012-06-06 | 上海华虹集成电路有限责任公司 | 一种实现位抽取的并行设计电路 |
CN102541784A (zh) * | 2010-12-21 | 2012-07-04 | 上海华虹集成电路有限责任公司 | 一种实现位填充的并行设计电路 |
CN102684702A (zh) * | 2011-03-15 | 2012-09-19 | 上海华虹集成电路有限责任公司 | 一种nrzi编码的并行设计电路 |
CN102904577A (zh) * | 2011-07-26 | 2013-01-30 | 上海华虹集成电路有限责任公司 | 一种nrzi编解码并行电路 |
CN101595645B (zh) * | 2007-01-29 | 2013-06-12 | 三星电子株式会社 | 串行通信系统中发送/接收串行数据的方法和系统及其串行通信系统 |
CN104662856A (zh) * | 2012-08-01 | 2015-05-27 | 马维尔国际贸易有限公司 | 编码用于无线通信系统的参数 |
US9936053B2 (en) | 2010-10-07 | 2018-04-03 | Marvell World Trade Ltd. | Encoding parameters for a wireless communication system |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3646644B2 (ja) * | 2000-10-31 | 2005-05-11 | セイコーエプソン株式会社 | データ転送制御装置及び電子機器 |
US6901471B2 (en) * | 2001-03-01 | 2005-05-31 | Synopsys, Inc. | Transceiver macrocell architecture allowing upstream and downstream operation |
CN1156783C (zh) * | 2001-03-27 | 2004-07-07 | 国际商业机器公司 | 在网页上加载广告的服务器及方法和网页显示装置及方法 |
US6883047B2 (en) * | 2001-05-25 | 2005-04-19 | Intel Corporation | Concurrent asynchronous USB data stream destuffer with variable width bit-wise memory controller |
US7003599B2 (en) * | 2001-10-24 | 2006-02-21 | Intel Corporation | Pipelined, universal serial bus parallel frame delineator and NRZI decoder |
US7039106B2 (en) * | 2002-03-25 | 2006-05-02 | Intel Corporation | Processing digital data prior to compression |
JP3998532B2 (ja) | 2002-08-07 | 2007-10-31 | 株式会社ルネサステクノロジ | データ転送装置 |
KR100579838B1 (ko) * | 2003-07-14 | 2006-05-15 | 삼성전자주식회사 | 피코넷 간의 상호 간섭을 완화 시키는 초광대역 통신을위한 tfi-ofdm 전송/수신 시스템 및 그의전송/수신 방법 |
JP2005071273A (ja) * | 2003-08-27 | 2005-03-17 | Canon Inc | 電子機器及びそのインターフェース制御方法 |
US8667194B2 (en) * | 2003-12-15 | 2014-03-04 | Finisar Corporation | Two-wire interface in which a master component monitors the data line during the preamble generation phase for synchronization with one or more slave components |
US8225024B2 (en) * | 2004-03-05 | 2012-07-17 | Finisar Corporation | Use of a first two-wire interface communication to support the construction of a second two-wire interface communication |
TWI261174B (en) * | 2004-04-02 | 2006-09-01 | Jtek Technology Corp | Universal serial bus (USB) physical layer apparatus and its method |
JP4750379B2 (ja) * | 2004-05-31 | 2011-08-17 | キヤノン株式会社 | 電子機器 |
US7469312B2 (en) * | 2005-02-24 | 2008-12-23 | International Business Machines Corporation | Computer system bus bridge |
US20060190655A1 (en) * | 2005-02-24 | 2006-08-24 | International Business Machines Corporation | Apparatus and method for transaction tag mapping between bus domains |
US8514894B2 (en) | 2005-08-02 | 2013-08-20 | Elliptic Technologies Inc. | Method for inserting/removal padding from packets |
US8959182B1 (en) * | 2008-04-15 | 2015-02-17 | Crimson Corporation | Systems and methods for computer data recovery and destruction |
DE102009033085B4 (de) * | 2009-07-14 | 2012-04-19 | Infineon Technologies Ag | Schaltungsanordnung, Vorrichtung zum Übertragen eines seriellen Datenstroms und Pixel-Matrix-Anzeige |
JP5482306B2 (ja) * | 2010-03-05 | 2014-05-07 | セイコーエプソン株式会社 | データ転送制御装置及び電子機器 |
US9517737B2 (en) * | 2013-07-01 | 2016-12-13 | Continental Automotive Systems, Inc. | Relay control between power distribution center and body control module |
US9276731B2 (en) | 2013-08-08 | 2016-03-01 | Qualcomm Incorporated | N-phase signal transition alignment |
US10289600B2 (en) | 2013-08-08 | 2019-05-14 | Qualcomm Incorporated | Reducing transmitter encoding jitter in a C-PHY interface using multiple clock phases to launch symbols |
CA2920298C (en) | 2013-08-23 | 2020-08-04 | University Of South Australia | Enhanced automatic identification system |
GB2536152B (en) * | 2014-03-19 | 2017-04-12 | Dyson Technology Ltd | Cleaning appliance |
US10742390B2 (en) * | 2016-07-13 | 2020-08-11 | Novatek Microelectronics Corp. | Method of improving clock recovery and related device |
US11947480B2 (en) * | 2021-12-20 | 2024-04-02 | Synopsys, Inc. | Universal serial bus scheduling using real time data |
CN116781207A (zh) * | 2022-03-10 | 2023-09-19 | 恩智浦美国有限公司 | 一种通用串行总线标准下的数据通信解码设备 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3654392B2 (ja) * | 1996-09-02 | 2005-06-02 | ソニー株式会社 | データ受信装置および方法 |
DE19733748C2 (de) * | 1997-08-04 | 1999-07-15 | Bosch Gmbh Robert | Datenübertragungsvorrichtung |
US6567423B1 (en) * | 1999-11-10 | 2003-05-20 | Intel Corporation | Parallel bit stuffing for a serial data transfer protocol |
-
2000
- 2000-03-16 JP JP2000073622A patent/JP3603732B2/ja not_active Expired - Fee Related
-
2001
- 2001-03-14 US US09/805,029 patent/US6732204B2/en not_active Expired - Lifetime
- 2001-03-16 CN CN01122059.7A patent/CN1269049C/zh not_active Expired - Fee Related
- 2001-03-16 TW TW090106255A patent/TW540208B/zh not_active IP Right Cessation
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101595645B (zh) * | 2007-01-29 | 2013-06-12 | 三星电子株式会社 | 串行通信系统中发送/接收串行数据的方法和系统及其串行通信系统 |
US9936053B2 (en) | 2010-10-07 | 2018-04-03 | Marvell World Trade Ltd. | Encoding parameters for a wireless communication system |
US10742780B2 (en) | 2010-10-07 | 2020-08-11 | Nxp Usa, Inc. | Encoding parameters for a wireless communication system |
CN102486760A (zh) * | 2010-12-03 | 2012-06-06 | 上海华虹集成电路有限责任公司 | 一种实现位抽取的并行设计电路 |
CN102541784A (zh) * | 2010-12-21 | 2012-07-04 | 上海华虹集成电路有限责任公司 | 一种实现位填充的并行设计电路 |
CN102684702A (zh) * | 2011-03-15 | 2012-09-19 | 上海华虹集成电路有限责任公司 | 一种nrzi编码的并行设计电路 |
CN102904577A (zh) * | 2011-07-26 | 2013-01-30 | 上海华虹集成电路有限责任公司 | 一种nrzi编解码并行电路 |
CN104662856A (zh) * | 2012-08-01 | 2015-05-27 | 马维尔国际贸易有限公司 | 编码用于无线通信系统的参数 |
CN104662856B (zh) * | 2012-08-01 | 2019-01-18 | 马维尔国际贸易有限公司 | 编码用于无线通信系统的参数 |
Also Published As
Publication number | Publication date |
---|---|
CN1269049C (zh) | 2006-08-09 |
US20030018839A1 (en) | 2003-01-23 |
US6732204B2 (en) | 2004-05-04 |
JP3603732B2 (ja) | 2004-12-22 |
JP2001268142A (ja) | 2001-09-28 |
TW540208B (en) | 2003-07-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1269049C (zh) | 数据传送控制装置及电子设备 | |
CN1906909A (zh) | 数据接收装置 | |
CN1096752C (zh) | 自适应编码方法 | |
CN1266904C (zh) | 数据传送装置 | |
CN1677916A (zh) | 发送时钟信号相位与接收时钟信号相位锁相的系统及方法 | |
CN1354425A (zh) | 串行/并行转换电路、数据传送控制装置和电子设备 | |
CN101052127A (zh) | 信息处理装置、信息处理方法、记录介质和程序 | |
CN1269672A (zh) | 附加信息嵌入方法、检测方法、嵌入设备和检测设备 | |
CN1296813C (zh) | 浮点存储方法及浮点运算装置 | |
CN1402495A (zh) | 电源控制电路、电子仪器、及其充电方法 | |
CN1126397A (zh) | 纠错编码器、纠错解码器和具有纠错码的数据传输系统 | |
CN1359048A (zh) | 显示驱动器,备有这种显示驱动器的显示装置及电子设备 | |
CN1229223A (zh) | 图像处理装置、合成系统装置和方法、分离方法及客户机 | |
CN1551592A (zh) | 数据传输控制装置、电子设备及数据传输控制方法 | |
CN1190742C (zh) | 发送电路、数据传输控制装置及电子机器 | |
CN1309172C (zh) | 调制设备和方法以及dsv控制比特产生方法 | |
CN1381135A (zh) | 再生记录装置 | |
CN101065725A (zh) | 命令供给装置 | |
CN1119760C (zh) | 自然语言处理装置及方法 | |
CN1021004C (zh) | 在剩余数系统中用于编码和译码数据的方法和装置 | |
CN1385795A (zh) | 半导体集成装置及电子机器 | |
CN100351733C (zh) | 以低功率动作的时钟控制的时序电路及其电路变更方法 | |
CN1783286A (zh) | 图像处理装置及其传送和输出控制方法、程序及记录介质 | |
CN1215529A (zh) | 图像编码装置和图像编码方法及图像解码装置和图像解码方法以及记录媒体 | |
CN1702639A (zh) | 发送电路、数据传输控制装置及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20060809 Termination date: 20190316 |
|
CF01 | Termination of patent right due to non-payment of annual fee |