CN1893361A - 数据传输控制装置及电子设备 - Google Patents

数据传输控制装置及电子设备 Download PDF

Info

Publication number
CN1893361A
CN1893361A CNA2006100866921A CN200610086692A CN1893361A CN 1893361 A CN1893361 A CN 1893361A CN A2006100866921 A CNA2006100866921 A CN A2006100866921A CN 200610086692 A CN200610086692 A CN 200610086692A CN 1893361 A CN1893361 A CN 1893361A
Authority
CN
China
Prior art keywords
host computer
ata
data
computer side
interface
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.)
Pending
Application number
CNA2006100866921A
Other languages
English (en)
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.)
Seiko Epson Corp
Original Assignee
Seiko Epson 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 Seiko Epson Corp filed Critical Seiko Epson Corp
Publication of CN1893361A publication Critical patent/CN1893361A/zh
Pending legal-status Critical Current

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/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)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)

Abstract

本发明公开了能够在将传输速率的降低抑制在最小限度或者维持传输速率不下降的状态下,向ATA主机提供各种各样接口的数据传输控制装置及包含该装置的电子设备。数据传输控制装置包括:ATA的设备侧I/F,通过ATABUS1在数据传输控制装置与ATA主机之间进行数据传输;ATA的主机侧I/F,通过ATABUS2在数据传输控制装置与ATA设备之间进行数据传输;设备侧焊盘(58-1)、(58-2)、(58-3)…,作为设备侧I/F用的焊盘;主机侧焊盘(68-1)、(68-2)、(68-3)…,作为主机侧I/F用的焊盘;开关电路,含有开关元件(112-1)、(112-2)、(112-3)…,进行来自设备侧焊盘(58-1)、(58-2)、(58-3)…的信号线和来自主机侧焊盘(68-1)、(68-2)、(68-3)…的信号线之间的连接、断开的控制。

Description

数据传输控制装置及电子设备
技术领域
本发明涉及一种数据传输控制装置及电子设备。
背景技术
近年来,USB(Universal serial Bus:通用串行总线)和IEEE1394等高速串行接口引起了人们的重视。而且,具有在USB等高速串行接口总线和连接有HDD(Hard Disk Drive:硬磁盘驱动器)等存储器的ATA(AT Attachment:AT附加装置)总线之间的桥接功能的数据传输控制装置也是众所周知的。根据这些现有技术的数据传输控制装置,可以通过USB高速向HDD写入数据,也可以高速从HDD读出数据。
可是,这些现有的数据传输控制装置需要在电子设备的主CPU上动作的固件中嵌入用于USB协议控制的程序。因此,需要电子设备的设计者对USB的协议控制有某种程度的了解,从而产生设计者的设计工作复杂化、或者数据传输控制装置厂商的支持业务变得复杂化等的问题。
此外,也有根据主CPU的种类,将USB等的高速串行接口电路作为IP(Intellectual Property:知识产权)核直接嵌入的方法。
可是,在高速串行接口电路中设置用于高速进行数据发送与接收的模拟电路(物理层电路),由于该模拟电路的原因,会产生CPU的效率降低等的问题。此外,因为高速模拟电路的设计困难,并且技术技巧也是必须的,所以,也会产生不能达到标准规定的传输速率、不能实现HDD的高速数据写入及读出等问题。
专利文献1:日本特开2002-344537号公报
发明内容
本发明克服了上述技术问题,其目的在于提供能够在将传输速率的降低抑制到最小限度或者维持传输速率不下降的状态下,向ATA主机提供各种各样接口的数据传输控制装置及包含该装置的电子设备。
本发明涉及数据传输控制装置,其包括:ATA的设备侧接口,通过第一ATA总线,在数据传输控制装置与ATA主机之间进行数据传输;ATA的主机侧接口,通过第二ATA总线,在数据传输控制装置与ATA设备之间进行数据传输;第1~第N设备侧焊盘,是连接所述第一ATA总线的第1~第N信号线的焊盘,也是所述设备侧接口用的焊盘;第1~第N主机侧焊盘,是连接所述第二ATA总线的第1~第N信号线的焊盘,也是所述主机侧接口用的焊盘;开关电路,具有第1~第N开关元件,进行来自所述第1~第N设备侧焊盘的信号线和来自所述第1~第N主机侧焊盘的信号线之间的连接、断开的控制。
根据本发明,因为可以通过第一ATA总线在数据传输控制装置与ATA主机之间进行数据传输,所以可以把第一ATA总线作为ATA主机和数据传输控制装置之间的接口总线来使用。此外,在本发明中,设置了开关电路,其具有与第一ATA总线的第1~第N信号线连接的第1~第N焊盘(电极),以及与第二ATA总线的第1~第N信号线连接的第1~第N焊盘(电极),和第1~第N开关元件(开关晶体管)。而且,通过第1~第N开关元件,可以进行来自第1~第N设备侧焊盘的信号线和第1~第N主机侧焊盘的信号线之间的连接、断开的处理。从而,ATA主机可以宛如ATA设备直接连接到第一ATA总线上似的,处理ATA设备,可以向ATA设备进行数据的读、写。此外,在第1~第N开关元件导通时,第1~第N设备侧焊盘和第1~第N主机侧焊盘是以最短距离连接的,因此可以减小信号延迟,从而可以以抑制传输速率的下降到最小限度或者不降低传输速率的方式,进行数据传输。
此外,在本发明中,优选还包括:第1~第N设备侧I/O单元,是连接来自所述第1~第N设备侧焊盘的信号线的I/O单元,也是所述设备侧接口用的I/O单元;第1~第N主机侧I/O单元,是与来自所述第1~第N主机侧焊盘的信号线连接的I/O单元,也是所述主机侧接口用的I/O单元。所述第1~第N开关元件中的第M(1≤M≤N)的开关元件,配置在所述第1~第N设备侧I/O单元中的第M设备侧I/O单元和所述第1~第N主机侧I/O单元中的第M主机侧I/O单元之间。
这样一来,可以缩短连接第M开关元件的一端与第M设备侧焊盘之间的信号线和/或连接第M开关元件的另一端与第M主机侧焊盘之间的信号线的长度。从而,可以通过第M开关元件以短距离连接第M设备侧焊盘和第M主机侧焊盘。其结果,能够缩短ATA总线信号的信号延迟,从而可以以将传输速率的下降抑制到最小限度或者不降低传输速率的方式,进行数据传输。
此外,在本发明中,优选所述第1~第N设备侧焊盘和所述第1~第N主机侧焊盘被配置成:第L(1≤L<N)主机侧焊盘位于第L设备侧焊盘的旁边,第L+1设备侧焊盘位于第L主机侧焊盘的旁边,第L+1主机侧焊盘位于第L+1的设备侧焊盘的旁边。
这样一来,可以用短距离将来自第M设备侧焊盘的信号线与第M设备侧I/O单元连接,同时,可以用短距离将来自第M主机侧焊盘的信号线与第M主机侧I/O单元连接。从而,可以更加缩短连接第M开关元件的一端与第M设备侧焊盘之间的信号线和/或连接第M开关元件的另一端与第M主机侧焊盘之间的信号线的长度。
此外,在本发明中,优选所述第1~第N设备侧焊盘和所述第1~第N主机侧焊盘被配置成:第L(1≤L<N=主机侧焊盘位于第L设备侧焊盘的旁边,第L+1主机侧焊盘位于所述第L设备侧焊盘的旁边,第L+1设备侧焊盘位于所述第L+1主机侧焊盘的旁边。
这样一来,也可以更加缩短连接第M开关元件的一端与第M设备侧焊盘之间的信号线和/或连接第M开关元件的另一端与第M主机侧焊盘之间的信号线的长度。
此外,在本发明中,优选还包括处理部,所述处理部用于控制所述开关电路。在判定为设定成硬接线模式时,所述处理部导通所述第1~第N开关元件,连接来自所述第1~第N设备侧焊盘的信号线和来自所述第1~第N主机侧焊盘的信号线。
这样一来,通过处理部,控制第1~第N开关元件的导通(ON)、截止(OFF),可以控制来自第1~第N设备侧焊盘的信号线和来自第1~第N主机侧焊盘的信号线的连接(导通)、断开(非导通)。
此外,在本发明中,优选还包括寄存器,通过所述第一ATA总线将所述ATA主机发出的指令写入所述寄存器。所述处理部基于写入到所述寄存器中的指令,判断是否设定成了所述硬接线模式。
这样一来,ATA主机只需通过第一ATA总线向寄存器写入指令,就可以控制硬接线模式的设定。从而,不碧增加那么多ATA主机的处理负荷,就可以向ATA主机提供各种各样的接口。
此外,在本发明中,优选所述寄存器是所述设备侧接口所包含的任务寄存器。
这样一来,ATA主机可以以满足ATA标准的方法,在作为ATA的任务寄存器的寄存器中设定指令,实现ATA主机处理的简单化和处理负荷的减轻化。
此外,在本发明中,优选在分配给作为厂商定义指令的模式设定指令被写入所述寄存器时,所述处理部基于写入的厂商定义的所述模式设定指令,判断是否设定成了所述硬接线模式。
这样一来,ATA主机可以利用ATA标准中分配给作为厂商定义指令的指令,来控制硬接线模式的设定。
此外,在本发明中,所述处理部行仿真处理,以便通过所述第一总线和所述第二总线在所述ATA主机、所述ATA设备之间进行数据传输。
这样一来,可以利用仿真处理,实现各种各样形态的数据传输。
此外,在本发明中,还可以包括:第一接口,通过第一总线进行数据传输;传输控制器,控制所述设备侧接口、所述主机侧接口、所述第一接口之间的数据传输。
这样一来,可以一边通过第一ATA总线在其与ATA主机之间进行通信,一边基于传输控制器的数据传输控制,例如,向ATA设备传输来自ATA主机的数据,或者,向连接在第一总线上的主机或设备传输来自ATA设备的数据。这样,在本发明中,通过有效利用第一ATA总线,可以向ATA主机提供各种各样的接口。
此外,在本发明中,还包括ATA的第二主机侧接口,通过第三ATA总线在数据传输控制装置与ATA设备之间进行数据传输。所述传输控制器用于控制所述设备侧接口、所述主机侧接口、所述第二主机侧接口、所述第一接口之间的数据传输。
这样一来,可以实现ATA主机和多个ATA设备之间的数据传输,以及多个ATA设备之间的数据传输。
此外,在本发明中,所述第一接口包括物理层电路,所述物理层电路通过串行总线进行数据的发送与接收中的至少一种。
此外,在本发明中,所述第一总线是USB总线,所述第一接口是USB接口。
此外,在本发明中,还包括第1~第K(K≥2)接口,通过第1~第K总线进行数据传输。所述传输控制器用于控制所述设备侧接口、所述主机侧接口、所述第1~第K接口之间的数据传输。
这样一来,可以提供容易嵌入各种各样接口的数据传输控制装置。
此外,本发明涉及电子设备,其包括上述任一个所描述的数据传输控制装置、通过所述第1ATA总线与所述数据传输控制装置连接的所述ATA主机、以及通过所述第二ATA总线与所述数据传输控制装置连接的所述ATA设备。
附图说明
图1(A)、(B)是第1、第2比较例的说明图。
图2是本实施例的数据传输控制装置、电子设备的构成例的示意图。
图3图(A)、(B)是本实施例的变形例的示意图。
图4(A)、(B)、(C)是本实施例的动作说明图。
图5是ATA的寄存器说明图。
图6(A)、(B)、C)是开关电路的构成例的示意图。
图7是比较例的开关电路的示意图。
图8是I/O单元、开关元件、焊盘的详细构成及配置例的示意图。
图9是I/O单元、开关元件、焊盘的详细构成及配置例的示意图。
图10(A)、(B)是ATA的设备侧接口、主机侧接口的构成例的示意图。
图11(A)、(B)是ATA的PIO传输的信号波形例。
图12(A)、(B)是ATA的DMA传输的信号波形例。
图13(A)~(D)是USB的数据传输的说明图。
图14(A)、(B)是只批量传输的说明图。
图15是USB I/F的构成例的示意图。
图16是说明本实施例的详细动作的流程图。
图17是说明本实施例的详细动作的流程图。
具体实施方式
下面,详细说明本发明的实施例。并且,下面描述的实施例并不是对权利要求所保护范围的不当限定,在本实施例中所描述的结构并不都是本发明解决技术问题所必须的。
1.比较例
图1(A)、(B)表示本实施例的比较例。在图1(A)的第一比较例中,数据传输控制装置550包括ATA(AT Attachment)的主机侧I/F(Interface:接口)570和USB I/F 580。根据该图1(A)的第一比较例,可以将通过USB(Universal serial Bus)传输的数据写入HDD 540中,也可以将写入在HDD 540中的数据通过USB传输给PC(Personal Computer:个人电脑)等,从而可以实现ATA总线和USB之间的桥接功能。
在该第一比较例中,数据传输控制装置550基于来自主CPU530的控制来动作,于是,对于在ROM 520(掩模ROM、EEPROM)上存储着的、由主CPU 530动作的固件(软件)来说,有必要在其中嵌入用于USB协议控制的程序。
可是,USB的协议控制是复杂的,一旦强制要求电子设备的设计者理解该协议控制,将导致设计工作复杂化。此外,也有必要向数据传输控制装置550的厂商进行协议控制的说明以及发生问题时的支持,因此导致支持业务复杂化。
此外,一旦打算开发嵌入了USB以外的接口(例如IEEE1394、串行ATA等)的数据传输控制装置550,因为会产生与上述相同的问题,所以会产生限制数据传输控制装置550的功能扩展和商品展开的问题。
另一方面,在图1(B)的第二比较例中,在主CPU 530中以IP核的方式嵌入了USBI/F 580。如果象这样将USBI/F 580嵌入主CPU 530的话,主CPU 530就可以在其与USB主机之间、直接通过USB进行数据传输。
可是,USBI/F 580是使用差分信号的高速串行接口电路,在USBI/F 580中设置负责数据收发的物理层的高速模拟电路,该高速模拟电路设计困难,并容易受到过程变动的影响。从而,虽然主CPU 530的核心电路没问题,但是由于高速模拟电路的原因,可能导致主CPU 530的设计开发失败,或者效率下降。此外,在USBI/F580的电路设计中设计技巧也是必须的,因此也可能会发生不能达到USB2.0标准规定的传输速率。而且,一旦发生这样的问题,将不能对HDD 540进行高速数据的写入与读出,从而影响用户利用的便利性。
2.构成
图2说明能够解决以上问题的本实施例的数据传输控制装置50及包含该装置的电子设备20的构成例。在本实施例中,着眼于主CPU 30(ATA主机)所具有的ATA的主机侧I/F 32,在数据传输控制装置50中也设置了该主机侧I/F 32所对应的ATA的设备侧I/F 60。即,设置了图1(A)的第一比较例中没有设置的设备侧I/F60。此外,在数据传输控制装置50中也设置了用于连接HDD 40的ATA的主机侧I/F 70。即虽然通常只是设置二者之一,但是在数据传输控制装置50中嵌入了设备侧I/F 60和主机侧I/F 70这二者。这样一来,来自主CPU 30的数据,可以通过设备侧I/F 60、主机侧I/F 70被写入HDD 40。此外,在本实施例中,也设置了用于向PC 10传输写入到HDD 40中的数据的USBI/F 80(第一接口)。这样一来,与图1(A)的第一比较例一样,可以实现ATA总线和USB之间的总线桥接功能。
此外,数据传输控制装置50、电子设备20不限于图2的构成,也可以是省略其构成要素一部分的、或变更构成要素间的连接形态的、或追加了与图2不同构成要素的变形。例如,在数据传输控制装置50中也可以是省略处理部120和USBI/F 80的变形实施例。此外,在电子设备20中也可以省略HDD(Hard Disk Drive)40,也可以追加图2所示以外的构成要素(例如,操作部、显示部、ROM、RAM、摄像部或电源等)。
此外,作为本实施例的电子设备20,可以考虑摄像机、数码相机、便携音乐播放器、便携视频播放器、光盘驱动装置、硬盘驱动装置、音频机器、便携电话、便携游戏机、电子记事本、电子词典或者便携信息终端等很多种。
电子设备20包括主CPU 30(广义为主处理器,更广义为ATA主机)、HDD 40(广义为存储器,更广义为ATA设备)、数据传输控制装置50(数据传输控制电路、数据传输控制芯片)。
主CPU 30负责电子设备20的整体的处理、控制。例如电子设备20是摄像机时,主CPU 30作为摄像机处理器起作用,进行摄像设备的控制、图像的效果处理和图像压缩处理等。该主CPU 30包括ATA的主机侧I/F(接口)32。此外,主机侧I/F 32也可以是一个CF+接口标准的接口,其可以通过模式设定切换到ATAI/F。
在HDD 40中写入了各种数据。例如,电子设备20是摄像机时,拍摄的视频(图像)数据,被从主CPU 30经由数据传输控制装置50写入HDD 40中。此外,写入在HDD 40中的视频数据也可以经由数据传输控制装置50、USB传输给PC(Personal Computer)10。这样一来,在HDD 40的使用存储容量变满时,用户将HDD 40的视频数据传输给PC 10,并保存到PC 10的内部HDD和光盘上成为可能,从而可以提高用户的便利性。
数据传输控制装置50包括ATA(IDE)的设备侧I/F 60和ATA的主机侧I/F 70。此外,也可以包括USB I/F 80、传输控制器100、开关电路110、处理部120、事件通知部130。
在此,设备侧I/F 60是通过ATABUS1(第一ATA总线)在其与主CPU 30(ATA主机)之间进行数据传输(通信)的接口。此外,主机侧I/F 70是通过ATABUS2(第二ATA总线)在其与HDD40(ATA设备)之间进行数据传输的接口。而且,在本实施例中的ATA可以包括ATAPI(AT Attachment with Packet Interface)。此外,也可以包括发展了串行ATA、CE-ATA等的现有ATA标准而成的标准。此外,在数据传输控制装置50中也可以设置多个ATA主机侧I/F。
设备侧I/F 60包括寄存器62。在该寄存器62中,被写入了主CPU 30经由ATABUS1所发布的指令。具体来说,作为该寄存器62可以使用ATA的设备I/F侧所包含的任务寄存器。此外,在该实施例中,在ATA的指令中作为厂商定义指令(Vender specificcommand)分配的这部分指令可以写入寄存器62(任务寄存器)中。传输控制器100、处理部120可以基于该厂商定义指令来动作。例如,传输控制器100基于寄存器62中设定的厂商定义的指令(指定传输方向和传输数据量的指令),决定在设备侧I/F 60、主机侧I/F70、USBI/F 80中的哪些之间进行数据传输。此外,决定在接口之间的传输数据的量。而且,处理部120基于设定在寄存器62中的厂商定义的模式设定指令,判断数据传输控制装置50的动作模式。具体来说,判断动作模式是否被设定成了硬接线模式(Hard wiredmode)。
USBI/F 80(广义为第一接口)是经由USB(广义为第一总线)进行数据传输(高速串行传输)的接口。具体来说,USBI/F 80包括经由USB(串行总线)进行数据收发的物理层电路,进行与PC 10(广义为USB主机,更广义为主机)之间的数据传输。
此外,在USB I/F 80具有主机功能时,也可以在USB上连接USB设备(广义为设备),并在其与那个USB设备之间进行数据传输。此外,第一接口不限于USB接口,也可以是IEEE1394、SD等其他标准的接口。此外,第一接口也可以是串行ATA或CE-ATA。此外,也可以在数据传输控制装置50中设置经由第1~第K(K≥2)的总线进行数据传输的第1~第K接口。此外,本实施例中的总线可以是有线的,也可以是无线的。
传输控制器100控制在设备侧I/F 60、主机侧I/F 70、USBI/F 80(第一接口)之间的数据传输。
具体来说,传输控制器100控制设备侧I/F 60、主机侧I/F 70之间的数据传输。基于此,可以将从主CPU 30传输来的数据写入HDD 40,也可以将写入在HDD 40中的数据传输给主CPU 30。此外,传输控制器100控制主机侧I/F 70、USBI/F 80之间的数据传输。基于此,可以将写入在HDD 40中的数据通过USB传输给PC 10,也可以将从PC 10传输来的数据写入HDD。此外,传输控制器100也可以控制设备侧I/F 60、USBI/F 80之间的数据传输。基于此,可以将主CPU 30传输来的数据通过USB传输给PC 10,也可以将PC10传来的数据传输给主CPU 30。
此外,传输控制器100基于寄存器62中所写入的指令,控制(决定)在设备侧I/F 60、主机侧I/F 70、USBI/F 80中的哪些之间进行数据传输。
传输控制器100包括数据缓冲器102(例如FIFO)。数据缓冲器102是用于暂时存储由传输控制器100转发的数据的缓冲器。该数据缓冲器102可以用RAM等的存储器实现。
传输控制器100包括端口选择器104。该端口选择器104是在连接在传输控制器100的端口上的设备侧I/F 60、主机侧I/F 70、USBI/F 80(第1~第K接口)中,选择在哪些之间进行数据传输的电路。例如,在设备侧I/F 60、主机侧I/F 70之间进行数据传输时,选择设备侧I/F 60的端口和主机侧I/F 70的端口,并在这些端口之间进行数据传输。此外,在主机侧I/F 70、USBI/F 80之间进行数据传输时,选择主机侧I/F 70的端口和USBI/F 80的端口,并在这些端口之间进行数据传输。
开关电路110是进行ATABUS1和ATABUS2之间的连接、断开控制的电路。具体来说,具有在ATABUS1的第1~第N(N≥2)的信号线和ATABUS2的第1~第N(N≥2)的信号线之间进行连接或断开控制的第1~第N(N≥2)开关元件。在此,第1~第N信号线是例如CS[1:0]、DA[2:0]、DD[15:0]、DASP、DIOR、DIOW、DMACK、DMARQ、INTRQ、IORDY、PDIAG、RESET等的信号线。此外,第1~第N开关元件在硬接线模式下,连接ATABUS1的第1~第N信号线和ATABUS2的第1~第N信号线。因此,可以直接连接主CPU 30的主机侧I/F 32(ATABUS1)和HDD 40(ATABUS2),从而实现件硬接线模式。此外,开关电路110的第1~第N开关元件的导通、截至控制是基于来自例如处理部120(开关信号生成部)的开关信号进行的。
处理部120进行数据传输控制装置50的全体处理和控制,并控制数据传输控制装置50所包含的各电路模块。该控制部120的功能的一部分或全部可以通过例如CPU及在CPU上动作的固件来实现,也可以用专用硬件来实现。
具体来说,处理部120针对经由ATABUS1、ATABUS2在主机CPU 30(ATA主机)和HDD 40(ATA设备)之间进行的数据传输,进行仿真处理。此外,处理部120控制开关电路110。而且,在判定为设定成硬接线模式时,导通(使能)开关电路110的第1~第N开关元件,并连接ATABUS1的第1~第N信号线和ATABUS2的第1~第N信号线。此外,处理部120也进行USB的协议控制处理(广义为经由第一总线的数据传输的协议控制处理)。
此外,也可以不在传输控制装置50中内嵌处理部120,而是设置负责与主CPU 30之间的进行接口处理的CPUI/F。此时,数据传输控制装置50和数据传输控制装置50所包含的各电路模块的控制变成通过CPUI/F由CPU 30来进行。
此外,驱动处理部120的程序,也可以事先记录在主CPU 30侧的存储器(EEPROM等)中,接上电源后主CPU 30发布下载指令,并经由ATABUS1下载给数据传输控制装置50(数据传输控制装置所具有的存储器)。
事件通知部130(事件通知电路)负责向主CPU 30(ATA主机)通知事件的发生。具体来说,事件通知部130将USBI/F 80(第一接口)发生的事件通知给主CPU 30。例如,PC 10连接了USB时,将连接了PC 10这个消息通知给主CPU 30。或者,传输控制器100的数据传输发生错误时,将该错误的发生通知给主CPU 30。或者,连接在ATABUS2上的ATA(ATAPI)设备是光盘驱动器,并在该光盘驱动器中装入了光盘时,向主CPU 30通知光盘装入这件事。
即,在本实施例中,在主CPU 30和数据传输控制装置50之间的接口是ATABUS1。从而,针对ATA数据传输关联事件的发生,可以经过ATABUS1通知给主CPU 30,可是通知其他的事件发生却很困难。
在这点上,如果设置了图2的事件通知部130,即使是ATA数据传输以外的事件,也可以向主CPU 30通知该事件的发生。
此外,面向主CPU 30的事件发生的通知,可以使用与ATABUS1的信号线不同的、中断信号线来实现。或者,主CPU 30的主机侧I/F32是CF+标准I/F的情况时,也可以使用ATA模式时不使用的端子(例如卡检测端子CD)的信号线,向CPU 30通知事件发生。
3.变形例
图3(A)、(B)描述了本实施例的数据传输控制装置50的变形例。例如,在图3(A)中,数据传输控制装置50包括ATA的第二主机侧I/F 71,其通过ATABUS3(第三ATA总线)在与HDD 41(ATA设备)之间进行数据传输。此外,传输控制器100控制设备侧I/F 60、主机侧I/F 70、第二主机侧I/F 71、USBI/F 80之间的数据传输。
根据图3(A)的结构,可以在数据传输控制装置50上连接两台的HDD 40、HDD 41。此外,例如,将来自主CPU 30的数据写入HDD 40的过程中,将写入在HDD 41的数据通过USBI/F 80传输给PC 10。此外,也可以将写入在HDD 40中的数据传输给并写入HDD 41中,也可以将写入在HDD 41中的数据传输给并写入HDD 40中。此外,在图3(A)中,虽然设置了两个主机侧I/F 70、I/F 71,当然也可以设置大于等于3个的主机侧I/F。
此外,在图3(B)中,在USBI/F 80的基础上,增设了SD(SecureDigital:保护数字)内存卡用的SDI/F 90,从而可以实现具有版权保护功能(CPRM)的SD接口。即,图3(B)中,数据传输控制装置50包括经由BUS1、BUS2(广义为第1~第K总线)进行数据传输的USBI/F 80、SDI/F 90(广义为第1~第K接口)。此外,传输控制装置100控制设备侧I/F 60、主机侧I/F 70、USBI/F 80、SDI/F 90的数据传输。因此,可以例如将来自主CPU 30的数据写入SD内存卡42,将写入在SD卡42中的数据通过USBI/F 80传输给PC 10。或者,也可以将写入在HDD 40中的数据写入SD内存卡42中。
此外,在本实施例中,在数据传输控制装置50中设置的第1~第K接的口不限于USB或者SDI/F。例如,可以采用IEEE1394、串行ATA、CE-ATA等的各种接口。即,只要是包括用于经由串行总线等进行数据的收发的物理层电路的接口,就可以设置为第1~第K接口。
4.动作
接下来,针对本实施例的动作,使用图4(A)、(B)、(C)进行说明。通过在本实施例中设置开关电路110,实现了硬接线模式。在该硬接线模式中,如图4(A)所示,开关电路110所包含的开关元件导通、使ATABUS1的信号线(第1~第N信号线)和ATABUS2的信号线(第1~第N信号线)连接起来。其结果,主CPU 30的主机侧I/F 32和HDD 40(HDD 40所包含的设备侧I/F)直接连接起来。从而,主CPU 30可以直接向HDD 40写数据,也可以从HDD 40直接读出数据。此外,因为ATABUS1和ATABUS2直接连接,所以可以实现高速数据的写、读。
硬接线模式的设定可以基于例如主CPU 30发布的、经由ATABUS1写入寄存器62的模式设定指令来进行。具体来说,一旦将动作模式设定为硬接线模式的模式设定指令写入寄存器62,则处理部120基于该指令控制开关信号。而且,将开关电路110所包含的开关元件导通,并使ATABUS1的信号线和ATABUS2的信号线连接起来。
此时,作为寄存器62可以使用设备侧I/F 60所包含的ATA的任务寄存器。例如,图5示意性地示出了ATA的寄存器的构成。图5描述:片选信号CS1、CS0(#表示负逻辑)分别为H、L电平时,所选择的指令块寄存器。在图5中,片选信号CS1、CS0、地址信号DA2、DA1、DA0分别是H、L、H、H、H电平,并且由主机导致寄存器写的情况时,选择了如A1所示的Command寄存器。此外,在写入到Command寄存器的指令中,指令代码为80h~8Fh的,被规定作为厂商(制造者)可自由定义的厂商定义指令。在本实施例中的硬接线模式的设定可以由厂商定义的模式设定指令来进行。
此外,在本实施例中,从主CPU 30侧来看,寄存器62作为ATA的例如从盘来动作,HDD 40作为例如主盘来动作。此外,也可以将寄存器62作为主盘,将HDD 40作为从盘来动作。
具体来说,根据图5的A2所示的Device/Head寄存器的DEV位(设备选择位),判断来自主CPU 30的指令块是从盘用的还是主盘用的。并且,主CPU 30将DEV位设定成从盘侧,并发布厂商定义的模式设定指令,则处理部120检查DEV位,判定是自己地址的指令。然后,根据模式设定指令设定成硬接线模式使能,则导通开关电路110的开关元件,连接ATABUS1和ATABUS2的信号线,从而直接连接ATA主机侧I/F 32和HDD 40。
接下来,一旦主CPU 30将DEV位设定成主盘侧,并传输数据,则HDD 40检查DEV位,判定其数据是自己地址的数据,进而将数据写入内嵌的硬盘中。
此后,一旦主CPU 30将DEV位为设定为从盘侧,并发布硬接线模式禁止的指令。则处理部120断开(OFF)开关电路110的开关元件。并且,断开ATABUS1的信号线和ATABUS2的信号线,解除硬接线模式。
通过使用图4(A)所示的硬接线模式,主CPU 30可以像宛如直接连接在ATABUS1上一样、来处理HDD 40,并向HDD 40进行高速的数据写入、读出。
此外,本实施例中,如图4(B)所示,处理部120也进行仿真处理,其用于经由ATABUS1、ATABUS2,在CPU 30(ATA主机)、HDD 40(ATA设备)之间进行数据传输。
具体来说,当设备侧I/F 60通过ATABUS1从主CPU 30接收到指令时,将与该接收到的指令对应的指令(接收到的指令本身或者通过变换接收到的指令而得到的指令),通过主机侧I/F 70、ATABUS2发布给HDD 40。即使ATA的主机侧I/F 70发布指令。
然后,发布指令之后,开始经由ATABUS1、设备侧I/F 60、主机侧I/F 70、ATABUS2的数据传输。例如,在图4(B)中,通过ATABUS1和设备侧I/F 60,将来自主CPU 30的数据,传输并写入作为假想HDD起作用的数据缓冲器102中。然后,通过主机侧I/F70、ATABUS2,将写入在数据缓冲器102中的数据,传输并写入HDD 40中。
然后,数据传输完成之后,当主机侧I/F70通过ATABUS2从HDD 40读取了状态时,则将读取到的状态所对应的状态(读取的状态本身或者提供变换读取到的状态而得到的状态)通过设备侧I/F60、ATABUS1返回给主CPU 30。
根据图4(B)的仿真处理,与图4(A)的硬接线模式相比,传输速率虽然劣化,但是可以实现硬接线模式无法实现的各种各样类型的数据传输。
例如,在图4(A)的硬接线模式中,寄存器62变成从盘(或者主盘),所以有只能连接一台主盘(或者从盘)的HDD 40这样的限制。与此相对,在图4(B)的仿真处理中,没有这样的限制,可以连接两台的主盘、从盘的HDD 40、41。
即,在图4(B)中,主CPU 30发出厂商定义的写指令并写入寄存器62,进而在作为假想HDD起作用的数据缓冲器102中写入数据。然后,处理部120解析该厂商定义的写指令。
然后,当处理部120基于解析结果判定数据的目的地是主盘侧的HDD 40时,主机侧I/F 70发出DEV位被设定成主盘侧的ATA标准的写指令,并向ATABUS2输出数据缓冲器102中的数据。于是,主盘侧的HDD 40接收到该数据,并写入硬盘。
另一方面,当处理部120基于解析结果判定数据的目的地是从盘侧的HDD 41时,主机侧I/F 70发布DEV位被设定成从盘侧的ATA标准的写指令,并向ATABUS2输出数据缓冲器102中的数据。于是,从盘侧的HDD 41接到该数据,并写入硬盘。利用以上的仿真处理,可以向主机侧I/F 70连接连接台的HDD 40、41,从而可以提高方便性。
如图4(C)所示,通过硬接线模式和仿真处理,可以通过USB将写入在HDD 40中的数据传输给PC 10。即,传输控制器100将从HDD 40经由主机侧I/F 70读取到的数据,传输给USBI/F 80。然后,USBI/F 80将传输过来的数据经由USB(第一总线)发送给与USB连接的PC 10(主机、设备)。这样一来,就可以将写入HDD40中的数据传输给PC 10,并保存到PC 10附带的HDD或光盘中,从而可以提供方便性。
根据以上本实施例的数据传输控制装置50,与图1(A)、(B)的第1、第2比较例相比,具有以下优点。
在第一比较例中,有必要在主CPU 530上动作的固件中嵌入用于USB协议控制的程序等,并有电子设备的设计工作和支持业务复杂化等的问题。
与此相对,在图2所示的本实施例中,主CPU 30和数据传输控制装置50通过ATA接口通信,数据传输控制装置50的数据传输由经由ATABUS1写入寄存器62的厂商定义指令来控制。此外,USB的协议控制,由处理部120来执行。从而,在主CPU 30的固件中没有必要嵌入用于USB协议控制的程序,可以减轻电子设备20的设计工作和数据传输控制装置50的支持工作的负担。
即,因为ATA接口是历来就惯用的,并且是电子设备20的设计者所熟知的,所以主CPU 30和数据传输控制装置50之间的连接是可以可靠进行的。此外,例如在将HDD 40的数据通过USBI/F 80传输给PC 10时,主CPU 30发布指示这样传输方向的厂商定义指令,并且写入到寄存器62中就足够了,并不需要关心USBI/F 80的协议控制。即,只需要在主CPU 30的固件的标准(normal)ATA驱动中,增加用于厂商定义指令的控制驱动就可以了。从而,在减轻主CPU 30的处理负担的同时,能够减轻电子设备20的设计工作的负担。此外,数据传输控制装置50的厂商只要针对厂商定义指令和用于厂商定义指令的处理的控制驱动器进行支持就可以啦,所以也可以减轻支持工作的负担。
此外,根据本实施例,具有数据传输控制装置50的将来功能扩展和商品展开容易化的优点。例如,如图3(B)的变形例所示,作为第1~第K接口增加了SDI/F 90的情况时,也没有必要将SD的协议控制程序嵌入主CPU 30的固件中,SD的数据传输可以基于厂商定义指令和处理部120的处理来实现。从而,即使增加SDI/F90,电子设备20的设计工作和数据传输控制装置50的支持工作的负担并没有增加很多。从而,可以很容易地在数据传输控制装置50中嵌入SD、串行ATA、CE-ATA等的新标准的接口,可以实现数据传输控制装置50的多样的功能扩展和商品展开。此外,通过在数据传输控制装置50中嵌入这些各种各样的新标准接口,可以提高数据传输控制装置50的商品价值。
此外在图1(B)的第二比较例中,有必要在主CPU 530中嵌入作为物理层电路的高速模拟电路,导致主CPU 530的设计周期变长、效率降低的问题。
与此相对,在图2的本实施例中,只是在主CPU 30中设置历来惯用的ATA的主机侧I/F 32就可以了。此外,ATAI/F可以由CMOS(TTL)电压电平的逻辑电路来实现,因此可以防止主CPU 30的设计周期变长和效率降低等的问题。
此外,USBI/F根据电路技术的设计技巧的优劣,在实际的数据传输速率上会产生差异。与此相对,ATA接口根据电路技术的设计技巧的优劣并不会产生相应的差异,其传输速率作为在主CPU 30和数据传输控制装置50之间的接口是非常高速的。从而,可以实现主CPU 30、HDD 40、PC 10之间的高速的数据传输。
5.  开关电路
图6(A)描述本实施例的开关电路110的构成例。如图6(A)所示,开关电路110包括进行在ATABUS1的信号线和ATABUS2的信号线之间的连接、断开控制的开关元件112-1、112-2、112-3...(第1~第N开关元件)。此外,一旦寄存器62中写入硬接线模式的指令,并且激活来自处理部120(开关信号生成部)的开关信号,则开关元件112-1、112-2、112-3...导通。基于此,将ATABUS1的信号线和ATABUS2的信号线之间连接起来。于是,从主CPU 30来看,可以实现硬接线模式,它看起来确实是HDD 40直接连接着主机侧I/F 32。
而且,在本实施例中,作为开关电路110的构成采用图6(B)所示的构成。
在图6(B)中,设备侧焊盘(pad)58-1、58-2、58-3...(广义为第1~第N设备侧焊盘)是ATABUS1的信号线(广义为第1~第N信号线)所连接的焊盘(电极),是设备侧I/F 60使用的焊盘。即来自设备侧焊盘58-1、58-2、58-3...的信号线连接设备侧I/F 60用的I/O单元59-1、59-2、59-3...(广义为第1~第N设备侧I/O单元)。
此外,主机侧焊盘68-1、68-2、68-3...(广义为第1~第N主机侧焊盘)是ATABUS2的信号线(广义为第1~第N信号线)所连接的焊盘,是主机侧I/F 70使用的焊盘。即来自主机侧焊盘68-1、68-2、68-3...的信号线连接至主机侧I/F 70用的I/O单元69-1、69-2、69-3...(广义为第1~第N主机侧I/O单元)。此外,设备侧I/O单元59-1、59-2、59-3...和主机侧I/O单元69-1、69-2、69-3...是输入用I/O单元、输出用I/O单元、输入输出用I/O单元等。
本实施例的数据传输控制装置50包括图6(B)所示的设备侧焊盘58-1、58-2、58-3...和主机侧焊盘68-1、68-2、68-3...。此外,还包括设备侧I/O单元59-1、59-2、59-3...和主机侧I/O单元69-1、69-2、69-3...。
此外,在本实施例中,开关电路110所具有的开关元件112-1、112-2、112-3...进行设备侧焊盘58-1、58-2、58-3...的信号线和主机侧焊盘68-1、68-2、68-3...的信号线之间的连接、断开处理。即,对设备侧焊盘58-1、58-2、58-3...和设备侧I/O单元59-1、59-2、59-3...之间的的信号线,与主机侧焊盘68-1、68-2、68-3...和主机侧I/O单元69-1、69-2、69-3...之间的信号线进行连接、断开的处理。
根据图6(B)所示的本实施例的构成,可以通过短路径连接ATABUS1的信号线和ATABUS2的信号线。从而,ATA信号的信号延迟变小,可以将硬接线模式时的传输速率的降低抑制到最小限度内,或者维持传输速率不降低。特别是在ATA的数据的读动作的情况时,信号DIOR变成激活后,数据信号DD有效。从而,如图6(B)所示,通过直接连接设备侧焊盘58-1、58-2、58-3...和主机侧焊盘68-1、68-2、68-3...来抑制信号延迟的本实施例方法,对于防止传输速率的降低来说是有效的。
此外,图7描述了比较例的开关电路的构成。在图7的比较例中,开关元件112-1、112-2、112-3...进行设备侧I/O单元59-1、59-2、59-3...和设备侧I/F 60之间的信号线,与主机侧I/O单元69-1、69-2、69-3...和主机侧I/F 70之间的信号线之间的连接、断开处理。
在图7的比较例中,在ATABUS1的信号线和ATABUS2信号线之间的信号延迟的基础上,增加了I/O单元59-1、59-2、59-3...和I/O单元69-1、69-2、69-3...中的信号延迟。从而,信号延迟变大,降低了硬接线模式时的传输速率。
与此相对,根据图6(B)的本实施例,与图7的比较例相比,可以减小信号延迟,所以可以将硬接线模式时的传输速率的降低抑制到最小限度,或者维持传输速率不降低
此外,在图6(B)的构成时,连接在开关元件112-1、112-2、112-3...的一端及另一端的B1、B2所表示的信号线,直接连接有设备侧焊盘58-1、58-2、58-3...和主机侧焊盘68-1、68-2、68-3...。从而,这些B1、B2所表示的信号线也有可能由于电迁移导致断线。从而,为了防止这样的断线,希望B1、B2所表示的信号线的线径(线宽)加粗,例如为了达到即使流过6mA左右的电流也不断线,其线径以达到大于等于10μm为好,甚至更希望达到大于等于18μm。
此外,在图6(B)中,开关元件112-1、112-2、112-3...直接连接着设备侧焊盘58-1、58-2、58-3...和主机侧焊盘68-1、68-2、68-3...。从而,由于通过焊盘输入的静电的原因,也可能导致开关元件112-1、112-2、112-3...被破坏。从而,为了防止这样的静电破坏,希望相对图6(B)的B1、B2所示的信号线,设置可控硅整流器和二极管等的静电保护元件。然而,在寄生在开关元件112-1、112-2、112-3...的漏极/源极上的二极管可以完全防止静电破坏时,也可以不必增设这样的静电保护元件。
图8描述了I/O单元、开关元件、焊盘的详细构成及配置。在图8中,在数据传输控制装置50的I/O区域56配置有:作为设备侧I/F 60用的I/O单元的设备侧I/O单元59-1、59-2、59-3...,和作为主机侧I/F 70用的I/O单元的主机侧I/O单元69-1、69-2、69-3...。此外,在I/O区域56,还配置有开关元件112-1、112-2、112-3...。
此外,I/O区域56是数据传输控制装置50的芯片的外围区域。此外,I/O单元59-1、59-2、59-3...和、69-1、69-2、69-3...包含输入用的缓冲器和输出用的缓冲器。此外,开关元件112-1、112-2、112-3...是连接有N型晶体管的源极/漏极和P型晶体管的源极/漏极的传输门的开关元件。在构成这些传输门的N型、P型的晶体管的栅极上,连接着来自处理部120(开关信号生成部)的开关信号。此外,开关元件也可以例如只由N型晶体管构成。
在图8中,第1~第N开关元件中的第M(1≤M≤N)的开关元件配置在第1~第N设备侧I/O单元中的第M(1≤M≤N)的设备侧I/O单元和第1~第N主机侧I/O单元中的第M(1≤M≤N)的主机侧I/O单元之间。具体来说,开关元件112-1(第M开关元件)配置在设备侧I/O单元59-1(第M设备侧I/O单元)和主机侧I/O单元69-1(第M主机侧I/O单元)之间。而且,开关元件112-2配置在设备侧I/O单元59-2和主机侧I/O单元69-2之间,开关元件112-3配置在设备侧I/O单元59-3和主机侧I/O单元69-3之间。
如果将I/O单元和开关元件如图8所示配置在I/O区域56中,则在硬接线模式时,可以通过开关元件以短距离连接设备侧焊盘和主机侧焊盘。
例如在图8中,设备侧I/O单元59-1、开关元件112-1、主机侧I/O单元69-1邻接配置,所以可以缩短图8的C1、C2所示的信号线的长度。从而,在硬接线模式时,在开关元件112-1导通的情况下,设备侧焊盘58-1和主机侧焊盘68-1以短距离连接。从而,可以缩短ATA总线信号的信号延迟,可以以将硬接线模式时的传输速率的降低抑制到最小限度、或者维持传输速率不降低的方式,进行数据传输。
此外,根据图8的配置,能够有效利用I/O区域56的空区域,配置开关元件112-1、112-2、112-3...。从而,能够将由于设置开关元件112-1、112-2、112-3...而导致的数据传输控制装置50的芯片面积的增加抑制在最小限度,进而实现数据传输控制装置50的低成本化。
此外,在图8中,这样地配置设备侧焊盘和主机侧焊盘,第L(1≤L≤N)主机侧焊盘位于第L设备侧焊盘的旁边,第L+1设备侧焊盘位于第L主机侧焊盘的旁边,第L+1主机侧焊盘位于第L+1设备侧焊盘的旁边。具体来说,这样地配置着焊盘,主机侧焊盘68-1位于设备侧焊盘58-1的旁边,设备侧焊盘58-2位于主机侧焊盘68-1的旁边,主机侧焊盘68-2位于设备侧焊盘58-2的旁边。
通过这样配置焊盘,可以将来自设备侧焊盘的信号线用短距离与设备侧I/O单元连接,同时,可以将来自主机侧焊盘的信号线用短距离与主机侧I/O单元连接。从而,可以最优地缩短如图8的C1、C2所示的信号线的长度,进而可以以将硬接线模式时的传输速率的降低抑制在最小限度、或者维持传输速率不降低的方式,进行数据传输。
此外,焊盘、I/O单元、开关元件的配置不限于图8,也可以是图9所示的配置。
即,在图9中,这样地配置着设备侧焊盘和主机侧焊盘,第L(1≤L≤N)主机侧焊盘位于第L设备侧焊盘的旁边,第L+1主机侧焊盘位于第L主机侧焊盘的旁边,第L+1的设备侧焊盘位于第L+1的主机侧焊盘的旁边。具体来说,这样地配置着焊盘,主机侧焊盘68-1位于设备侧焊盘58-1的旁边,主机侧焊盘68-2位于主机侧焊盘68-1的旁边,设备侧焊盘58-2位于主机侧焊盘68-2的旁边。
即使是图9的配置,也可以将来自设备侧焊盘的信号线用短距离与设备侧I/O单元连接,同时,可以将来自主机侧焊盘的信号线用短距离与主机侧I/O单元连接。从而,可以缩短如图9的D1、D2所示的信号线的长度,进而可以以将硬接线模式时的传输速率的降低抑制在最小限度、或者维持传输速率不降低的方式,进行数据传输。
此外,设备侧I/O单元、主机侧I/O单元、开关元件、设备侧焊盘、主机侧焊盘的配置不限于图8、图9的配置。例如,也可以在设备侧I/O单元和主机侧I/O单元以外的地方配置开关元件。此外,也可以以与图8、图9不同的配置,配置设备侧焊盘和主机侧焊盘。
6.ATA的设备侧I/F、主机侧I/F
图10(A)描述ATA的设备侧I/F 60的构成例。如图10(A)所示设备侧I/F 60包括任务寄存器200、MDMA/PIO控制部202、UltraDMA控制部204、数据缓冲器206、传输控制部208。
任务寄存器200是由ATA(IDE)标准化的寄存器,包括如图5所示的指令块寄存器和控制块寄存器。在这里,指令块寄存器是在发布指令、或读取状态时使用的寄存器,此外,控制块寄存器是控制设备或读取替代状态时使用的寄存器。
MDMA/PIO控制器202针对ATA的多字DMA传输和PIO传输中的设备侧,进行控制处理。UltraDMA控制部204针对ATA的UltraDMA传输中的设备侧,进行控制处理。数据缓冲器206(FIFO)是用于调整(平衡)数据传输速率的差的缓冲器。传输控制部208控制与后级电路(传输控制器100、数据缓冲器102)之间的数据传输。
图10(B)描述ATA的主机侧I/F 70的构成例。如图10(B)所示,主机侧I/F 70包括任务寄存器/访问调停器210、MDMA/PIO控制部212、UltraDMA控制部214、数据缓冲器216、传输控制部218。
任务寄存器/访问调停器210针对向设备侧所设置的任务寄存器(图10(A)的200)的访问,进行调停处理。MDMA/PIO控制器212针对ATA的多字DMA传输和PIO传输中的设备侧,进行控制处理。UltraDMA控制部214针对ATA的UltraDMA传输中的设备侧,进行控制处理。数据缓冲器216(FIFO)是用于调整(平衡)数据传输速率的差的缓冲器。传输控制部218控制与后级电路(传输控制器100、数据缓冲器102)之间的数据传输。
接下来针对ATA的数据传输,使用图11(A)~图12(B)的信号波形进行说明。在图11(A)~图12(B)中,CS[1:0]是为了访问ATA的各寄存器而使用的片选信号。DA[2:0]是访问数据或数据端口的地址信号。DMARQ、DMACK是DMA传输时使用的信号。在数据传输的准备完成时,设备侧激活(assert:声明)DMARQ,作为对其的应答,主机侧激活DMACK。
DIOW(STOP)是寄存器或数据端口的写入时使用的写信号。此外,UrtraDMA传输中,作为STOP信号起作用。DIOR(HDMARDY、HSTROBE)是寄存器或数据端口的读出时使用的读信号。此外,在UrtraDMA传输中,作为HDMARDY、HSTROBE起作用。IORDY(DDMARDY、DSTROBE)用作设备侧的数据传输的准备未就绪时的等待信号等。此外,在UrtraDMA传输中,作为DDMARDY、DSTROBE起作用。
INTRQ是用于设备侧向主机侧请求中断时使用的信号。该INTRQ激活以后,主机侧读取设备侧的任务寄存器的状态寄存器的内容,然后,经过特定时间后设备侧解除(negate:否定)INTRQ。通过使用该INTRQ,设备侧可以向主机侧通知指令处理的完成。
图11(A)、(B)是PIO(Parallel I/O)读、PIO写时的信号波形图。ATA的状态寄存器的读通过图11(A)的PIO读来进行,ATA的状态寄存器的写通过图11(B)的PIO写来进行。例如,主CPU30的厂商定义的指令的发布可以通过PIO写来实现。
图12(A)、(B)是DMA读、DMA写时的信号波形图。一旦数据传输的准备就绪,设备侧激活DMARQ。于是,接收到该信号以后,主机侧激活DMACK,并开始DMA传输。之后,使用DIOR(读时)、或者DIOW(写时),进行数据DD[15:0]的DMA传输。
7.USBI/F
在USB中,如图13(A)所示的端点(EP0~15)由USB设备侧准备的。此外,在USB中,作为传输(transfer)的类型,定义了控制传输、同步传输、中断传输、批量传输等,各种传输由一连串的事务构成。此外,事务如图13(B)所示,由令牌包、可选数据包、可选握手包组成。
在OUT事务中,如图13(C)所示,首先USB主机向USB设备发布(issues)OUT令牌(令牌包)。接下来,USB主机向USB设备发送OUT数据(数据包)。然后,USB设备如果成功接收了OUT数据,则向USB主机发送ACK(握手包)。另一方面,在IN事务中,如图13(D)所示,首先USB主机向USB设备发布IN令牌。然后,接收到IN令牌的USB设备向USB主机发送IN数据。然后,USB主机一旦成功接收了IN数据,则向USB设备发送ACK(握手包)。
此外,“D←H”意味着从USB主机向USB设备传输信息。“D→H”意味着从USB设备向USB主机传输信息。
接下来,说明USB的只批量传输的协议。硬盘驱动器和光盘驱动器等的大容量记录装置属于大容量存储器这一类。在该大容量存储器类中,标准化了称为“只批量传输”的协议。
在只批量传输中,使用批量IN和批量OUT的两个端点来进行包传输。即,在指令中,使用称为CBW(Command Block Wrapper)的31位的数据,并使用批量OUT的端点。在数据传输中,按照传输方向,使用批量IN、批量OUT的端点。在对应于指令的状态中,使用称为CSW(Command Status Wrapper)的13位的数据,并使用批量IN的端点传输。
接下来,使用图14(A)、(B),说明只批量传输的收发处理(协议控制)。如图14(A)所示,USB主机向USB设备发送数据时,首先USB主机进行向USB设备发送CBW进行指令传输。具体来说,USB主机向USB设备发送指定了端点EP1的令牌包,接下来,向USB设备的端点EP1发送CBW。该CBW包括写指令。然后,一旦从USB设备向USB主机返回了ACK的握手包,则指令传输结束。
一旦指令传输结束,则转入数据传输。在该数据传输中,首先,USB主机向USB设备发送指定了端点EP1的令牌包,接下来向USB设备的端点EP1发送OUT数据。然后,一旦从USB设备向USB主机返回了ACK握手包,则一个事务处理结束。此外,这样的事务处理反复进行,当发送了由CBW指定的数据长度的数据,则数据传输结束。
一旦数据传输结束,则转入状态传输。在该状态传输中,首先USB主机向USB设备发送指定了端点EP2的令牌包。然后,USB设备向USB主机发送位于端点EP2的CSW。然后,当从USB主机向USB设备返回了ACK握手包时,则状态传输结束。
USB主机从USB设备接收数据时,进行如图14(B)所示的处理。图14(B)与图14(A)不同之处在于:指令传输的CBW中包括读指令,和数据传输中进行IN数据的传输。
图15描述USBI/F 80的构成例。USBI/F 80包括收发器220、传输控制器250、数据缓冲器290。
收发器220(双向收发器)是用于使用差分信号(DP、DM)收发USB(广义为总线或串行总线)数据的电路,包括主机收发器230、设备收发器240。
主机收发器230具有模拟前端电路(物理层电路)及高速逻辑电路,支持USB的HS模式(480Mbps)、FS模式(12Mbps)、LS模式(1.5Mbps)。设备收发器240具有模拟前端电路(物理层电路)及高速逻辑电路,支持USB的HS模式、FS模式。作为该设备收发器240来说,可以使用满足UTMI(USB2.0 Transceiver MacrocellInterface)标准的电路。
传输控制器250是用于控制通过USB的数据传输的控制器,负责事务层和链路层等的数据传输控制。该传输控制器250包括主机控制器260、设备控制器270、端口选择器280。此外,也可以省略这些构成中的一部分。
主机控制器260(主机串行接口引擎:Serial Interface Engine)控制主机模式时的数据传输。具体来说,主机控制器260进行事务处理的日程安排(发布)、事务处理的管理、包生成与解析等。此外,生成挂起、恢复、复位等的总线事件。进一步,也进行总线的连接、断开等的检测和VBUS的控制。
设备控制器270(设备串行接口引擎:Serial Interface Engine)控制设备模式时的数据传输。具体来说,设备控制器270进行事务处理的管理、包生成与解析等。此外,控制挂起、恢复、复位等的总线事件。
端口选择器280是用于选择主机模式和设备模式之一并使其有效的选择器。例如,当根据寄存器等的设定选择主机模式时,端口选择器280选择(使能)主机控制器260、主机收发器230。另一方面,当根据寄存器等的设定选择设备模式时,端口选择器280选择(使能)设备控制器270、设备收发器240。
数据缓冲器290(FIFO、包缓冲器)是用于暂时存储(缓存)通过USB(串行总线)传输的数据(发送数据、接收数据)的缓冲器。该数据缓冲器290可以用RAM等的存储器来实现。
此外,也可以用图2的传输控制器100和数据缓冲器102来实现传输控制器250和数据缓冲器290的一部分功能。此外,在图15中,描述了进行主机动作和设备动作的两方面动作的USBI/F 80的例子,也可以是只进行设备动作。
8.详细处理
接下来,针对本实施例的详细处理,使用图16、图17的流程图进行说明。图16是描述硬接线模式时的详细处理的流程图。
首先,ATA的设备侧I/F从主CPU接收到任务寄存器的硬接线模式的使能位使能(ON)了的指令(厂商定义指令)(步骤S1)。然后,处理部(开关信号生成部)导通连接设备侧焊盘和主机侧焊盘的开关元件(步骤S2)。然后,主CPU在硬接线模式下向HDD写入数据(步骤S3)。
接下来,ATA的设备侧I/F从主CPU接收到任务寄存器的硬接线模式的使能位关闭(OFF)了的指令(步骤S4)。于是处理部关闭连接设备侧焊盘和主机侧焊盘的开关元件(步骤S5)。
接下来,USBI/F从PC(USB主机)接收CBW(步骤S6)。即,当用户在PC的屏幕上进行向PC上移动或复制HDD的数据的操作时,PC向USBI/F发布包含读指令的CBW。然后,ATA的主机侧I/F向HDD发布数据读指令(步骤S7)。然后,开始从HDD向主机侧的数据传输(步骤S8)。然后,开始从USBI/F向PC的IN数据传输(步骤S9)。
然后,判断两方面的数据传输是否全部完成了(步骤S10),全部完成时,主机侧I/F向HDD发布状态的读指令,来读取状态(步骤S11)。然后,将读到的状态写入USBI/F的数据缓冲器的CSW区域中(步骤S12)。然后,PC从USBI/F接收CSW(步骤S13),并结束传输处理。
图17是描述基于仿真的数据传输的详细处理的流程图。首先,ATA的设备侧I/F从主CPU接收指令(步骤S21)。然后,处理部解析接收到的指令,主机侧I/F向HDD发布接收到的指令所对应的指令(步骤S22)。该指令的发布是通过ATA的PIO传输进行的。然后,开始从主CPU向设备侧I/F的数据传输(步骤S23)。然后,开始从主机侧I/F向HDD的数据传输(步骤S24)。
接下来,判断两方面的数据传输是否全部完成了(步骤S25),全部完成时,主机侧I/F向HDD发布状态读指令,读取状态(步骤S26)。然后,处理部解析读取到的状态,并将读取到的状态所对应的状态写入设备侧I/F的任务寄存器中(步骤S27)。然后,主CPU从任务寄存器读状态(步骤S28)。
接下来,进行与图16的步骤S6~S13同样的处理(步骤S29~S36),将写入在HDD中的数据传输给PC。
此外,如以上所述,对本实施例进行了详细说明,但是在不实质性地脱离本发明的创新内容及效果的前提下,可以有很多的变形,这对于本领域技术人员来说是容易理解的。因而,这些变形全部包含在本发明的范围内。例如,在详细说明或附图中,至少一次与更广义或同义的不同术语(ATA主机、ATA设备、第一I/F等)一同出现的用词(主CPU、HDD、USBI/F等),在详细说明书或者附图中,可以置换成那个不同术语。而且,数据传输控制装置和电子设备的构成和动作,也不限于本实施例所说明的构成和动作,可以有各种的变形。例如,第一ATA总线和第二ATA总线也可以是串行ATA和CE-ATA的总线。此外,第1~第K接口也可以是USB、IEEE1394、SD以外的接口,可以采用包括物理层电路的各种各样的I/F,该物理层进行例如数据接收及发送至少一个的处理。
附图标记说明
ATABUS1  第一ATA总线
ATABUS2  第二ATA总线
ATABUS3  第三ATA总线、
10   PC(USB主机)          20  电子设备
30  主CPU(ATA主机)        32  ATA主机侧I/F
40、41  HDD(ATA设备)      50  数据传输控制装置
58  设备侧焊盘            59  设备侧I/O单元
60  ATA的设备侧I/F        62  寄存器
68  主机侧焊盘            69  主机侧I/O单元、
70、71  ATA的主机侧I/F    80  USB I/F、
90  SD I/F                100  传输控制器
102  数据缓冲器           104  端口选择器
110  开关电路             112  开关元件、
120  处理部(CPU等)        130  事件通知部

Claims (15)

1.一种数据传输控制装置,其特征在于包括:
ATA的设备侧接口,通过第一ATA总线,在所述数据传输控制装置与ATA主机之间进行数据传输;
ATA的主机侧接口,通过第二ATA总线,在所述数据传输控制装置与ATA设备之间进行数据传输;
第1~第N设备侧焊盘,各个设备侧焊盘是与所述第一ATA总线的第1~第N信号线连接的焊盘,也是所述设备侧接口用的焊盘;
第1~第N主机侧焊盘,各个主机侧焊盘是与所述第二ATA总线的第1~第N信号线连接的焊盘,也是所述主机侧接口用的焊盘;以及
开关电路,包括第1~第N开关元件,各个开关元件用于进行来自所述第1~第N设备侧焊盘的信号线和来自所述第1~第N主机侧焊盘的信号线之间的连接、断开的控制。
2.根据权利要求1所述的数据传输控制装置,其特征在于还包括:
第1~第N设备侧I/O单元,各个设备侧I/O单元是与来自所述第1~第N设备侧焊盘的信号线连接的I/O单元,也是所述设备侧接口用的I/O单元;以及
第1~第N主机侧I/O单元,各个主机侧I/O单元是与来自所述第1~第N主机侧焊盘的信号线连接的I/O单元,也是所述主机侧接口用的I/O单元;
其中,所述第1~第N开关元件中的第M开关元件,配置在所述第1~第N设备侧I/O单元中的第M设备侧I/O单元和所述第1~第N主机侧I/O单元中的第M主机侧I/O单元之间,其中,1≤M≤N。
3.根据权利要求1或2所述的数据传输控制装置,其特征在于:
所述第1~第N设备侧焊盘和所述第1~第N主机侧焊盘被配置成:第L主机侧焊盘位于第L设备侧焊盘的旁边,第L+1设备侧焊盘位于所述第L主机侧焊盘的旁边,第L+1主机侧焊盘位于所述第L+1设备侧焊盘的旁边,其中,1≤L<N。
4.根据权利要求1或2所述的数据传输控制装置,其特征在于:
所述第1~第N设备侧焊盘和所述第1~第N主机侧焊盘被配置成:第L主机侧焊盘位于第L设备侧焊盘的旁边,第L+1主机侧焊盘位于所述第L设备侧焊盘的旁边,第L+1设备侧焊盘位于所述第L+1的主机侧焊盘的旁边,其中,1≤L<N。
5.根据权利要求1至4中任一项所述的数据传输控制装置,其特征在于还包括:
处理部,所述处理部用于控制所述开关电路;
其中,在判定为设定成硬接线模式时,所述处理部导通所述第1~第N开关元件,连接来自所述第1~第N设备侧焊盘的信号线和来自所述第1~第N主机侧焊盘的信号线。
6.根据权利要求5所述的数据传输控制设备,其特征在于还包括:
寄存器,通过所述第一ATA总线将所述ATA主机所发布的指令写入所述寄存器;
其中,所述处理部基于写入所述寄存器中的指令,判断是否设定成了所述硬接线模式。
7.根据权利要求6所述的数据传输控制装置,其特征在于:
所述寄存器是所述设备侧接口所包含的任务寄存器。
8.根据权利要求6或7所述的数据传输控制装置,其特征在于:
在分配给作为厂商定义指令的模式设定指令被写入所述寄存器时,所述处理部基于写入的厂商定义的所述模式设定指令,判断是否设定成了所述硬接线模式。
9.根据权利要求5至8中任一项所述的数据传输控制装置,其特征在于:
所述处理部进行仿真处理,以通过所述第一总线和所述第二总线在所述ATA主机和所述ATA设备之间进行数据传输。
10.根据权利要求1至9中任一项所述的数据传输控制装置,其特征在于还包括:
第一接口,通过第一总线进行数据传输;以及
其中,传输控制器用于控制所述设备侧接口、所述主机侧接口和所述第一接口之间的数据传输。
11.根据权利要求10所述的数据传输控制装置,其特征在于还包括:
ATA的第二主机侧接口,通过第三ATA总线在所述数据传输控制装置与ATA设备之间进行数据传输;
其中,所述传输控制器用于控制所述设备侧接口、所述主机侧接口、所述第二主机侧接口和所述第一接口之间的数据传输。
12.根据权利要求10或11所述的数据传输控制装置,其特征在于:
所述第一接口包括物理层电路,所述物理层电路通过串行总线进行数据的发送与接收中的至少一种。
13.根据权利要求10至12中任一项所述的数据传输控制装置,其特征在于:
所述第一总线是USB总线,所述第一接口是USB接口。
14.根据权利要求10至13中任一项所述的数据传输控制装置,其特征在于还包括:
第1~第K接口,通过第1~第K总线进行数据传输,其中,K≥2;
其中,所述传输控制器用于控制所述设备侧接口、所述主机侧接口、所述第1~第K接口之间的数据传输。
15.一种电子设备,其特征在于包括:
根据权利要求1~14中任一项所述的数据传输控制装置;
通过所述第一ATA总线与所述数据传输控制装置连接的所述ATA主机;以及
通过所述第二ATA总线与所述数据传输控制装置连接的所述ATA设备。
CNA2006100866921A 2005-06-30 2006-06-28 数据传输控制装置及电子设备 Pending CN1893361A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2005192938 2005-06-30
JP2005192938A JP4442523B2 (ja) 2005-06-30 2005-06-30 データ転送制御装置及び電子機器

Publications (1)

Publication Number Publication Date
CN1893361A true CN1893361A (zh) 2007-01-10

Family

ID=37591143

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2006100866921A Pending CN1893361A (zh) 2005-06-30 2006-06-28 数据传输控制装置及电子设备

Country Status (3)

Country Link
US (1) US20070005851A1 (zh)
JP (1) JP4442523B2 (zh)
CN (1) CN1893361A (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200813856A (en) * 2006-09-15 2008-03-16 Alcor Micro Corp USB peripheral device with dynamic change class and application thereof
US8499308B2 (en) * 2006-12-22 2013-07-30 Lsi Corporation Initiator notification method and apparatus
JP2013254479A (ja) * 2012-05-08 2013-12-19 Unitex:Kk インタフェース変換装置及びインタフェース変換方法
TWI784165B (zh) * 2019-05-06 2022-11-21 旺玖科技股份有限公司 Usb主機對主機晶片

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5317210A (en) * 1993-02-23 1994-05-31 Altera Corporation I/O cell for programmable logic device providing latched, unlatched, and fast inputs
US6038624A (en) * 1998-02-24 2000-03-14 Compaq Computer Corp Real-time hardware master/slave re-initialization
US6145019A (en) * 1998-03-02 2000-11-07 Hewlett-Packard Company Unconfigured device that automatically configures itself as the primary device if no other unconfigured device is present
US6772108B1 (en) * 1999-09-22 2004-08-03 Netcell Corp. Raid controller system and method with ATA emulation host interface
US6813688B2 (en) * 2000-12-04 2004-11-02 Sun Microsystems, Inc. System and method for efficient data mirroring in a pair of storage devices
JP3680762B2 (ja) * 2001-05-14 2005-08-10 セイコーエプソン株式会社 データ転送制御装置及び電子機器
EP1968193B1 (en) * 2002-01-17 2011-07-27 Sicronic Remote KG, LLC Utilization of unused IO block for core logic functions
DE10214701B4 (de) * 2002-04-03 2004-08-05 Advanced Micro Devices, Inc., Sunnyvale ATA- und SATA-Gemässes Controllerbauelement, Verfahren zum Betreiben und integrierter Schaltkreischip
TW589568B (en) * 2002-11-04 2004-06-01 Via Tech Inc Serial ATA control circuit capable of automatically switching the connection path
US7246192B1 (en) * 2003-01-10 2007-07-17 Marvell International Ltd. Serial/parallel ATA controller and converter
JP3886460B2 (ja) * 2003-01-31 2007-02-28 富士通株式会社 複合型記憶装置及びそのカード用基板
US6993639B2 (en) * 2003-04-01 2006-01-31 Hewlett-Packard Development Company, L.P. Processing instruction addressed by received remote instruction and generating remote instruction to respective output port for another cell
US7360010B2 (en) * 2003-04-14 2008-04-15 Copan Systems, Inc. Method and apparatus for storage command and data router
JP2005038382A (ja) * 2003-06-26 2005-02-10 Sanyo Electric Co Ltd 制御装置及びデータ書き込み方法
US7284082B2 (en) * 2004-08-19 2007-10-16 Lsi Corporation Controller apparatus and method for improved data transfer
US7179108B2 (en) * 2004-09-08 2007-02-20 Advanced Interconnections Corporation Hermaphroditic socket/adapter
US8949920B2 (en) * 2005-03-17 2015-02-03 Vixs Systems Inc. System and method for storage device emulation in a multimedia processing system

Also Published As

Publication number Publication date
JP2007011781A (ja) 2007-01-18
US20070005851A1 (en) 2007-01-04
JP4442523B2 (ja) 2010-03-31

Similar Documents

Publication Publication Date Title
CN1320437C (zh) 磁盘驱动器组子系统及用于其中的外部模拟控制器
CN1230724C (zh) 显示器的节电方法和装置
CN1053281C (zh) 系统总线外围总线间最佳数据传送用多总线系统总线桥
CN1811744A (zh) 通过串行总线互连多个处理节点的装置
CN1282094C (zh) 数据传送控制装置及数据传送控制方法
CN1975654A (zh) 数据存储系统和数据存储控制装置
CN100351816C (zh) 数据传送控制装置、电子装置和数据传送控制方法
CN1916963A (zh) 支持多个图型处理单元方法与系统
CN1838101A (zh) 数据传输控制装置及电子设备
CN1680930A (zh) 减少总线使用时间的系统和控制器
CN1551592A (zh) 数据传输控制装置、电子设备及数据传输控制方法
CN1955940A (zh) Raid系统、raid控制器及其重建/拷回处理方法
CN1617160A (zh) 用于识别标准卡以及非标准卡的卡识别系统
CN1292360C (zh) 一种实现自动读写内部集成电路设备的装置和方法
CN1213372C (zh) 数据传送控制装置、电子机器及数据传送控制方法
CN1667967A (zh) 数据传输控制装置及电子设备
CN1376980A (zh) 存储器
CN1475923A (zh) 数据传输控制系统、电子设备、程序及数据传输控制方法
CN101030186A (zh) 接口电路、使用该接口电路的系统装置、数据接口方法
CN1828510A (zh) 数据存储系统和数据存储控制装置
CN1893362A (zh) 数据传输控制装置及电子设备
CN1794162A (zh) 储存虚拟化控制器、子系统及系统与方法
CN1275164C (zh) 数据传输控制系统、电子设备、及数据传输控制方法
CN1893361A (zh) 数据传输控制装置及电子设备
CN1607513A (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
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Open date: 20070110