集成电路系统、数据写入方法以及数据读出方法

文档序号:6605138阅读:409来源:国知局
专利名称:集成电路系统、数据写入方法以及数据读出方法
技术领域
本发明涉及具备分别以不同的总线宽度接接收发送送数据的多个集成电路和对 不同的总线宽度进行中继的总线变换电路的集成电路系统、数据写入方法以及数据读出方法。
背景技术
在通过总线对集成电路之间进行连接时,根据需要在总线上设置总线变换电路或 控制装置等。例如,提出了能够将诺伊曼处理器和哈佛处理器连接到同一总线上访问公共 存储器的存储器控制装置(参照专利文献1)。作为集成电路的一种,有综合了运算电路、DRAM(DynamicRandom Access Memory) 控制器、描绘电路和周边接口控制电路等的系统综合型处理器(SOC :System-On-a-Chip)。 随着半导体制造工艺微细化而将SOC通过在一个IC (Integrated Circuit)封装中综合多 个功能而构成。另一方面,由于IC的端子数量受到大小、成本、端子配置等各种量产性的 限制,难以灵活地增加。因此,SOC主要着眼于将系统必需的多个功能综合到IC中,由于用 于与外部集成电路接收发送数据的总线需要端子数量,因此处于采用最小限度的结构的趋 势。基于上述理由,作为通用产品出售的SOC大多采用16位数据总线,在SOC的外部 连接控制器时,使用16位数据总线的控制器。在这种情况下,即使实际上总线宽度更大的 控制器(例如32位数据总线的控制器)作为通用产品出售,如上所述也难以灵活地增加 SOC的端子数量。因此,无法通过连接总线宽度大的控制器来实现数据传输能力的提高。因 此,以往通过缩短数据总线的一次访问所需的时间来提高数据传输能力。专利文献1 日本特开平10-254767号公报但是,读取处理(从控制器向SOC读出任意数据的处理)或写入处理(S0C向控制 器写入任意数据的处理)中,在控制器中需要一定的时间。因此,为了确保控制器中的处理 时间,存在无法缩短总线的访问所需时间的情况。

发明内容
鉴于上述情况,本发明的目的在于提供一种能够在集成电路中确保处理所需的时 间的同时提高集成电路彼此之间的总线中的数据传输能力的集成电路系统、数据写入方法 以及数据读出方法。本发明的一个方案中的集成电路系统具备第一集成电路,其与具有第一总线宽 度的第一数据总线连接,每次数据接收发送需要第一时间;第二集成电路,其与位宽比上述 第一总线宽度大的第二总线宽度的第二数据总线连接,每次数据接收发送需要比第一时间 长的第二时间;和中继电路,其与第一数据总线及第二数据总线连接,经由各总线与第一集 成电路及第二集成电路接收发送数据,上述集成电路系统的特征在于,上述第一集成电路 输出写入数据、第一写入信号和写入目的地地址,上述中继电路从上述第一集成电路接收并保持与n-1次的输出相当的上述写入数据,并且切断上述n-1次的上述第一写入信号,根 据第η次从上述第一集成电路输出的上述第一写入信号来生成针对上述第二集成电路的 第二写入信号,并且将所保持的上述n-1次的上述写入数据和第η次从上述第一集成电路 输出的上述写入数据输出到上述第二集成电路,其中,η是2以上的整数,上述第二集成电 路根据由上述中继电路生成的上述第二写入信号,将从上述中继电路输出的上述写入数据 写入到由上述第一集成电路最初输出的写入目的地地址中。本发明的一个方案中的集成电路系统,其特征在于,具备第一集成电路,其与具 有第一总线宽度的第一数据总线连接,每次数据接收发送需要第一时间;第二集成电路,其 与位宽比上述第一总线宽度大的第二总线宽度的第二数据总线连接,每次数据接收发送需 要比第一时间长的第二时间;和中继电路,其与第一数据总线及第二数据总线连接,经由各 总线与第一集成电路及第二集成电路接收发送数据,上述第一集成电路输出第一读出信号 和用于读出下述数据的读出源地址,上述数据是在应该连续接收的读出数据上加上与第二 数据总线的一次访问相当且与上述第一数据总线的m次访问相当的数据而得到的数据,上 述第一集成电路从上述中继电路接收在应该接收的读出数据上加上与上述第二数据总线 的一次访问相当的多余数据而得到的全部数据时,取得除上述多余数据之外的上述应该接 收的读出数据,其中,m是1以上的整数,上述中继电路每当从上述第一集成电路接收规定 的m次的上述第一读出信号时,仅在接收到最初的上述第一读出信号时向上述第二集成电 路输出第二读出信号,从上述第二集成电路接收并保持与上述第二数据总线的一次访问相 当且与上述第一数据总线的m次访问相当的数据,然后向上述第一集成电路输出数据,上 述第二集成电路根据从上述中继电路输出的上述第二读出信号,将数据从由上述第一集成 电路最初指定的读出源地址向上述中继电路输出。本发明的一个方案中的集成电路系统,其特征在于,具备第一集成电路,其与具 有第一总线宽度的第一数据总线连接,每次数据接收发送需要第一时间;第二集成电路,其 与位宽比上述第一总线宽度大的第二总线宽度的第二数据总线连接,每次数据接收发送需 要比第一时间长的第二时间;和中继电路,其与第一数据总线及第二数据总线连接,经由各 总线与第一集成电路及第二集成电路接收发送数据,上述第一集成电路输出第一读出信号 和应该接收的读出数据的读出源地址,并从上述中继电路取得应该接收的数据,上述中继 电路在从上述第一集成电路接收上述第一读出信号时,仅在接收到最初的上述第一读出信 号时向上述第二集成电路输出第二读出信号,从上述第二集成电路取得与上述第二数据总 线的一次访问相当且与上述第一数据总线的η次访问相当的数据后,将与上述第一数据总 线的位宽相当的数据即时输出到上述第一数据总线,并保持剩余的数据,之后针对η次的 来自上述第一数据总线的上述第一读出信号,取代对上述第二数据总线的访问,而将上述 保持的数据按上述第一数据总线的位宽输出到上述第一集成电路,其中,η是2以上的整 数,上述第二集成电路根据从上述中继电路输出的上述第二读出信号,将数据从由上述第 一集成电路最初指定的读出源地址向上述中继电路输出。本发明的一个方案中的集成电路系统,其特征在于,具备第一集成电路,其与具 有第一总线宽度的第一数据总线连接,每次数据接收发送需要第一时间;第二集成电路,其 与位宽比上述第一总线宽度大的第二总线宽度的第二数据总线连接,每次数据接收发送需 要比第一时间长的第二时间;和中继电路,其与第一数据总线及第二数据总线连接,经由各总线与第一集成电路及第二集成电路接收发送数据,该集成电路系统在第一读出模式或第 二读出模式下动作,在上述第一读出模式下动作时,上述第一集成电路输出第一读出信号、 第一器件控制信号和用于读出下述数据的读出源地址,上述数据是在应该连续接收的读出 数据上加上与第二数据总线的一次访问相当且与上述第一数据总线的m次访问相当的数 据而得到的数据,上述第一集成电路从上述中继电路接收在应该接收的读出数据上加上与 上述第二数据总线的一次访问相当的多余数据而得到的全部数据时,取得除上述多余数据 之外的上述应该接收的读出数据,其中,m是1以上的整数,上述中继电路若从上述第一集 成电路接收到上述第一器件控制信号,则每当从上述第一集成电路接收规定的m次的上述 第一读出信号时,仅在接收到最初的上述第一读出信号时向上述第二集成电路输出第二读 出信号,从上述第二集成电路接收并保持与上述第二数据总线的一次访问相当且与上述第 一数据总线的m次访问相当的数据,然后向上述第一集成电路输出数据,上述第二集成电 路根据从上述中继电路输出的上述第二读出信号,将数据从由上述第一集成电路最初指定 的读出源地址向上述中继电路输出,在上述第二读出模式下动作时,上述第一集成电路输 出第一读出信号、第二器件控制信号和应该接收的读出数据的读出源地址,并从上述中继 电路取得应该接收的数据,上述中继电路若从上述第一集成电路接收到上述第二器件控制 信号,则仅在接收到最初的上述第一读出信号时向上述第二集成电路输出第二读出信号, 从上述第二集成电路取得与上述第二数据总线的一次访问相当且与上述第一数据总线的m 次访问相当的数据后,将与上述第一数据总线的位宽相当的数据即时输出到上述第一数据 总线,并保持剩余的数据,之后针对m次的来自上述第一数据总线的上述第一读出信号,取 代对上述第二数据总线的访问,而将上述保持的数据按上述第一数据总线的位宽输出到上 述第一集成电路,上述第二集成电路根据从上述中继电路输出的上述第二读出信号,将数 据从由上述第一集成电路最初指定的读出源地址向上述中继电路输出。本发明的一个方案中的集成电路系统,其特征在于,在上述集成电路系统中,上述 中继电路具备周期计数器,该周期计数器反复进行与上述第二数据总线的一次访问相当的 m次的计数,在不能连续进行m次访问的情况下,将上述周期计数器初始化。本发明的一个方案中的集成电路系统,其特征在于,在上述集成电路系统中,在由 上述第一集成电路使上述第二器件控制信号有效并发出了写入信号时,上述中继电路将上 述周期计数器初始化。本发明的一个方案中的集成电路系统,其特征在于,在上述集成电路系统中,还具 备对上述第一集成电路进行控制的运算电路,在上述运算电路上动作的软件被分级化为应 用程序执行部、操作系统执行部和驱动器执行部,针对上述应用程序执行部的数据读出请 求而经由上述操作系统执行部执行请求的驱动器控制部,选择利用上述第一读出模式和上 述第二读出模式之中的任一种模式。在本发明的一个方案的集成电路系统中的数据写入方法中,上述集成电路系统具 备第一集成电路,其与具有第一总线宽度的第一数据总线连接,每次数据接收发送需要第 一时间;第二集成电路,其与位宽比上述第一总线宽度大的第二总线宽度的第二数据总线 连接,每次数据接收发送需要比第一时间长的第二时间;和中继电路,其与第一数据总线及 第二数据总线连接,经由各总线与第一集成电路及第二集成电路接收发送数据,上述数据 写入方法具备上述第一集成电路输出写入数据、第一写入信号和写入目的地地址的步骤;
8上述中继电路从上述第一集成电路接收并保持与n-1次的输出相当的上述写入数据,并且 切断上述n-1次的上述第一写入信号,根据第η次从上述第一集成电路输出的上述第一写 入信号来生成针对上述第二集成电路的第二写入信号,并且将所保持的上述n-1次的上述 写入数据和第η次从上述第一集成电路输出的上述写入数据输出到上述第二集成电路的 步骤,其中,η是2以上的整数;和上述第二集成电路根据由上述中继电路生成的上述第二 写入信号,将从上述中继电路输出的上述写入数据写入到由上述第一集成电路最初输出的 写入目的地地址中的步骤。在本发明的一个方案的集成电路系统中的数据读出方法中,上述集成电路系统具 备第一集成电路,其与具有第一总线宽度的第一数据总线连接,每次数据接收发送需要第 一时间;第二集成电路,其与位宽比上述第一总线宽度大的第二总线宽度的第二数据总线 连接,每次数据接收发送需要比第一时间长的第二时间;和中继电路,其与第一数据总线及 第二数据总线连接,经由各总线与第一集成电路及第二集成电路接收发送数据,上述数据 读出方法具备上述第一集成电路输出第一读出信号和用于读出下述数据的读出源地址, 上述数据是在应该连续接收的读出数据上加上与第二数据总线的一次访问相当且与上述 第一数据总线的m次访问相当的数据而得到的数据,上述第一集成电路从上述中继电路接 收在应该接收的读出数据上加上与上述第二数据总线的一次访问相当的多余数据而得到 的全部数据时,取得除上述多余数据之外的上述应该接收的读出数据的步骤,其中,m是1 以上的整数;上述中继电路每当从上述第一集成电路接收规定的m次的上述第一读出信号 时,仅在接收到最初的上述第一读出信号时向上述第二集成电路输出第二读出信号,从上 述第二集成电路接收并保持与上述第二数据总线的一次访问相当且与上述第一数据总线 的m次访问相当的数据,然后向上述第一集成电路输出数据的步骤;和上述第二集成电路 根据从上述中继电路输出的上述第二读出信号,将数据从由上述第一集成电路最初指定的 读出源地址向上述中继电路输出的步骤。在本发明的一个方案的集成电路系统中的数据读出方法中,上述集成电路系统具 备第一集成电路,其与具有第一总线宽度的第一数据总线连接,每次数据接收发送需要第 一时间;第二集成电路,其与位宽比上述第一总线宽度大的第二总线宽度的第二数据总线 连接,每次数据接收发送需要比第一时间长的第二时间;和中继电路,其与第一数据总线及 第二数据总线连接,经由各总线与第一集成电路及第二集成电路接收发送数据,上述数据 读出方法具备上述第一集成电路输出第一读出信号和应该接收的读出数据的读出源地 址,并从上述中继电路取得应该接收的数据的步骤;上述中继电路在从上述第一集成电路 接收上述第一读出信号时,仅在接收到最初的上述第一读出信号时向上述第二集成电路输 出第二读出信号,从上述第二集成电路取得与上述第二数据总线的一次访问相当且与上述 第一数据总线的η次访问相当的数据后,将与上述第一数据总线的位宽相当的数据即时输 出到上述第一数据总线,并保持剩余的数据,之后针对η次的来自上述第一数据总线的上 述第一读出信号,取代对上述第二数据总线的访问,而将上述保持的数据按上述第一数据 总线的位宽输出到上述第一集成电路的步骤,其中,η是2以上的整数;和上述第二集成电 路根据从上述中继电路输出的上述第二读出信号,将数据从由上述第一集成电路最初指定 的读出源地址向上述中继电路输出的步骤。根据本发明,第一集成电路具有比第二集成电路位宽小的总线,但能够进行相当于第二集成电路的位宽的数据传输。因此,能够在集成电路中确保处理所需的时间的同时 提高集成电路彼此之间的总线中的数据传输能力。


图1是表示集成电路系统的系统构成的概略框图。图2是表示运算电路的功能构成的概略框图。图3是表示总线变换电路的功能构成的概略框图。图4是表示SOC向控制器写入数据时各信号的变化的时序图。图5是表示SOC向控制器写入数据时各装置的动作的流程图。图6是表示SOC通过高速读取处理从控制器读出数据时各信号变化的时序图。图7是表示SOC通过高速读取处理从控制器读出数据时各装置的动作的流程图。图8是表示SOC通过即时读取处理从控制器读出数据时各信号的变化的时序图。图9是表示SOC通过即时读取处理从控制器读出数据时各装置的动作的流程图。符号说明1...集成电路系统;10... DRAM ;20... SOC (第一集成电路);201···运算电路; 202...描绘电路;203. . . DRAM控制电路;204...存储器总线控制电路;30...总线变换电 路(中继电路);301...动作判别部;302...周期计数器;303...第一数据总线控制部; 304. · ·第一周期控制部;305. · ·第二周期控制部;306. · ·写入用暂存部;307. · ·即时读取 用暂存部;308...第一高速读取用暂存部;309...第二高速读取用暂存部;310...第二数 据总线控制部;40...控制器(第二集成电路)。
具体实施例方式图1是表示集成电路系统100的系统构成的概略框图。集成电路系统100具 备DRAM10、SOC(系统综合型处理器System-0n-a-Chip)20、总线变换电路(以下也记为 “CV”)30、控制器(以下也记为“CON”)40。DRAMlO是由集成电路构成的存储装置,由S0C20 读写数据。控制器40由集成电路构成,经由总线变换电路30由S0C20读写数据。S0C20和总线变换电路30通过第一数据总线连接,总线变换电路30和控制器40 通过第二数据总线连接。第二数据总线比第一数据总线位宽大。在以下的说明中,对第一 数据总线的总线宽度为16位(bit)、第二数据总线的总线宽度为32位的情况进行说明。另外,总线变换电路30在变换处理中使用S0C20所输出的地址信号中从值发生 变化的最低位开始与第二数据总线和第一数据总线的总线宽度之比相应的位数的信号。这 里,地址信号是指,用于识别存储有S0C20从控制器40读出的数据的存储区域或S0C20向 控制器40中写入数据时的写入目的地的存储区域的信号。具体而言,总线变换电路30使 用以“2”为底的比的对数的位数的信号。例如,在第二数据总线的总线宽度为32位、第一 数据总线的总线宽度为16位的情况下,总线宽度的比值为“2”,因此以“2”为底的比值“2” 的对数为“1”。因此,在这种情况下,总线变换电路30使用值发生变化的最低一位的信号。 若令地址信号的单位为1字节(8位),令从S0C20向外部输出的地址信号之中控制器40的 控制所需的N+1位地址信号由Α[Ν:0]表示,则由于第一数据总线的位宽为16位,因此A
的值始终为“0”并不变化,因此总线变换电路30使用A[l]的信号。另外,与上述第二数据
10总线的一次访问相当的第一数据总线的访问次数n(n为2以上的整数)等于所述总线宽度 之比。另外,控制器40在以32位宽的数据总线被访问时,用于表示比32位更小的单位 的A[l]和A
必须始终为“0”,因此并不作为S0C20的输出,而是与电路基板的基准电位 (GROUND)连接。此时,以A[l]和A
的值始终被输入“0”的状态进行动作。S0C20具备通过内部总线相互连接的运算电路201、描绘电路202、DRAM控制电路 203和存储器总线控制电路204。运算电路201由CPU (Central Processing Unit)和数据 暂存用高速缓冲存储器构成,通过执行程序来进行数据的移动和加工。图2是在运算电路201上进行动作的软件的分级图。如图所示,在运算电路201 上进行动作的软件被分级化成下述三个部分,即将硬件抽象化并使功能具体化的应用程 序执行部2011 ;用于调节系统上的多个硬件和多个应用程序的动作的OS执行部2012 ;对 硬件进行直接控制,控制数据的读写和动作的驱动器执行部2013。各分级作为软件的模块 在运算电路201上分时地分配运算器来并行动作,分级间通过运算电路201内部的寄存器 或DRAMlO上配置的变量和数据来传递控制。应用程序执行部2011是使系统的功能具体化的层。并非直接对硬件进行访问,而 是打开文件来进行读写,在发生了输出影像或声音等关于硬件的请求的情况下,通过对OS 执行部2012发出输入输出数据的请求来进行操作,与硬件的构造无关。OS执行部2012进行系统上的硬件和软件的管理。对硬件的动作状况或DRAMlO 的存储容量、分配给应用程序的运算时间进行调节。OS执行部2012若从应用程序执行部 2011接受了输入输出数据的请求,则在该任务是伴随硬件的控制的动作的情况下,将处理 交付给对相应的硬件进行控制的驱动器执行部2013。驱动器执行部2013负责对控制器40的控制。若从OS执行部2012接受了数据的输 入输出的请求,则算出实体的数据所在的地址,通过对存储器总线控制电路204进行操作 来向控制器40的控制电路指示为了输入输出数据而需要的控制。在数据写入时,将DRAMlO 上的数据写入到控制器40中,在数据读出时,从控制器40读出数据后写入到DRAMlO中。返回图1继续对S0C20进行说明。描绘电路202基于图像数据生成影像信号,输 出到具备S0C20的图像显示装置的显示设备中。例如,在S0C20设置于投影仪中的情况下, 描绘电路202对具备液晶显示部或发光部的图像投影部输出影像信号。DRAM控制电路203在S0C20对DRAMlO读写数据时生成各种信号来控制DRAMlO的 动作。存储器总线控制电路204在S0C20对控制器40读写数据时,根据驱动器执行部2013 的要求来生成地址信号、写入信号、读取信号、第一器件选择信号和第二器件选择信号,并 从各信号线输出。另外,存储器总线控制电路204经由第一数据总线与总线变换电路30进 行数据的接收发送。图3是表示总线变换电路30的功能构成的概略框图。总线变换电路30包括动 作判别部301、周期计数器302、第一数据总线控制部303、写入用暂存部306、即时读取用暂 存部307、第一高速读取用暂存部308、第二高速读取用暂存部309和第二数据总线控制部 310。第一数据总线控制部303包括第一周期控制部304和第二周期控制部305。图4是表示S0C20向控制器40写入数据时各信号的变化的时序图。在图4中,时 序图中记载的文字(例如“0x0000”)表示地址信号的内容。第一段所记载的信号表示从S0C20向总线变换电路(CV) 30输出的写入信号。第二段所记载的信号表示从S0C20向总线 变换电路30输出的写入数据。写入数据是指S0C20向控制器40写入的数据。第三段所记 载的信号表示写入用暂存部306中存储的写入数据。第四段所记载的信号表示从总线变换 电路30向控制器40输出的写入信号。第五段所记载的信号表示从总线变换电路30向控 制器40输出的写入数据。图5是表示S0C20向控制器40写入数据时各装置的动作的流程图。以下,利用 图4、5,对S0C20向控制器40写入数据时各装置的动作进行说明。首先,S0C20的存储器 总线控制电路204向总线变换电路30和控制器40输出表示数据的写入目的地的地址信 号Α[Ν:0]、器件选择信号、写入信号,并将写入数据按每16位输出到第一数据总线(步骤 S101)。总线变换电路30不具有动作时钟,根据经由第一数据总线接收写入信号的情况 非同步地进行以下处理。第一数据总线控制部303接收写入信号,并且,在由动作判别部 301接收的地址信号A[l]为“0”时(步骤S201-是例如图4的“0x0000”的情况),写入 用暂存部306对经由第一数据总线接收的写入数据进行缓冲(步骤S202)。此时,总线变换 电路30内部的第二数据总线控制部310不对第二数据总线发出写入信号(步骤S203)。另一方面,第一数据总线控制部303接收写入信号,并且,在由动作判别部301接 收的地址信号A[l]为“1”时(步骤S201-否例如图4的“0x0010”的情况),第二数据总 线控制部310将写入用暂存部306中缓冲的写入数据作为低16位输出(步骤S204),将经 由第一数据总线新接收的写入数据作为高16位直接输出到第二数据总线(步骤S205)。在 这种情况下,第二数据总线控制部310对第二数据总线发出器件选择信号和写入信号(步 骤 S206)。在是否对上述第二数据总线发出写入信号的判别中,不仅可采用判别上述地址信 号A[l]的方法,也可以在第一数据总线控制部303内部判别第一数据总线的写入周期是第 一次还是第二次,是第一周期时不发出写入信号,若为第二周期则发出写入信号。控制器40若接收到步骤S205中输出的写入信号,则将步骤S204中输出的32位 的写入数据,写入到在步骤SlOl中从S0C20输出的地址信号A[N:2]的低2位上添加“00” 而得到的地址中(步骤S301)。通过这样进行动作,规定的总线宽度为16位的S0C20能够对总线宽度为2倍的32 位的控制器40写入32位数据。S0C20送出两次16位数据所需的时间内,控制器40进行一 次32位数据的接收,因此在控制器40中能够确保写入处理所需的时间,能够使S0C20对控 制器40写入写入数据的处理的数据传输高速化。换言之,应该需要两次的控制器40的数 据写入处理所需的时间通过总线变换电路30而变为只要一次,因此能够将S0C20写入32 位数据所需的时间缩短至大约一半。图6是表示S0C20通过高速读取处理从控制器40读出数据时各信号的变化的时 序图。S0C20在通过高速读取处理读出数据时,使第二器件选择信号有效,输出读取信号。第一段的读取信号表示从S0C20向总线变换电路(CV) 30输出的读取信号,时序图 中记载的文字(例如“0x0000”)表示地址信号的内容。第二段的读取信号表示从总线变换 电路30向控制器40输出的读取信号。第三段的数据信号表示从控制器40向总线变换电 路30输出的32位的读取数据。读取数据是指S0C20从控制器40读出的数据。
第九段的第一高速读取用暂存2-1表示第一高速读取用暂存部308中存储(缓 冲)的32位的读取数据。此外,图6中为了便于表示,根据情况有时用符号“2-1”表示该 读取数据。第十段的第二高速读取用暂存2-2表示第二高速读取用暂存部309中存储的32 位的读取数据。此外,图6中为了便于表示,根据情况有时用符号“2-2”表示该读取数据。 第十一段的第一、第二高速读取用暂存2-1、2-2的合成信号,表示从总线变换电路30输出 到第一数据总线并由S0C20写入到DRAMlO中的16位的读取数据。图7是表示S0C20通过高速读取处理从控制器40读出数据时各装置的动作的流 程图。以下,利用图3、6、7,对S0C20通过高速读取处理从控制器40读出数据时各装置的动 作进行说明。所述驱动器执行部2013将从控制器40的发送源地址SRC开始的传输数据尺寸 SIZE的连续数据,读出到从DRAMlO的发送目的地地址DST开始的传输数据尺寸SIZE的连 续区域。传输数据尺寸SIZE的单位是上述字节,因此若为32位传输则进行L = SIZE/4 (次) 的传输。此时,在有余数的情况下,进行L = SIZE/4+l(次)的传输。在此,将步骤Slll执 行L次。上述驱动器执行部2013首先通过即时读取读出地址SRC处的数据,并退避到运算 电路201的一次存储寄存器。由于是32位因此接下来的地址为SRC+4,接下来上述驱动器 执行部2013从SRC+4地址进行高速读取,将读出的值写入到发送目的地地址DST中。在高 速读取中,读出的值会延迟一次32位访问的时间,因此此时读出的值不是SRC+4地址中存 储的值,成为不确定的数据。接着,上述驱动器执行部2013从SRC+8地址进行高速读取,将读出的值写入到 DST+4地址中。这样,在高速读取中,读出的值会延迟一次32位访问的时间,所以此时读出 的值不是SRC+8地址中存储的值,而是SRC+4地址中存储的值。因此,进行将本来期待的 SRC+4地址中存储的值传输到DST+4地址中的处理。若反复进行L次该处理,则从DRAMlO 的发送目的地地址DST开始的传输数据尺寸SIZE的连续区域中,除起始的DST地址外被写 入正确的数据。最后,将退避到运算电路201的一次存储寄存器中的SRC地址处的数据写入到DST 地址中,由此,从发送源地址SRC开始的传输数据尺寸SIZE的连续数据被传输到从DRAMlO 的发送目的地地址DST开始的传输数据尺寸SIZE的连续区域中。S0C20的存储器总线控制电路204根据上述驱动器执行部2013发起的读出处理, 向总线变换电路30和控制器40输出表示数据的读出源的地址信号Α[Ν:0]、读取信号和第 二器件选择信号。总线变换电路30不具有动作时钟,根据经由第一数据总线接收读取信号的情况 非同步地进行以下处理。第一数据总线控制部303接收读取信号及第二器件选择信号,在 周期计数器302的值为“01”的情况下(步骤S211-是),第二数据总线控制部310向控制器 40输出器件选择信号和读取信号(步骤S213和S219)。控制器40若在步骤S213和S219 中接收到从总线变换电路30输出的读取信号,则在步骤Slll中在从S0C20输出的地址信 号A[2:N]的低2位上添加“00”而得到的地址读出32位的读取数据,输出到第二数据总线 (步骤 S311 和 S312)。周期计数器302由图6的13和14这两个数据输出顺序控制计数信号构成,是在
13读取信号的上升沿(从“0”变化为“1”的时刻),根据图6的5、7、8各信号的状态的组合而 反复按“00”、“01”、“10”、“11”的顺序变化的信号(图7的S222)。只有在进行了读取初始 化时强制变为“00”。第一数据总线控制部303在高速读取的读出中,若周期计数器为“01”则输出第一 高速读取用暂存部308(图6的2-1)的低16位(图7的S211、S212的条件成立),若周期 计数器为“10”则输出第一高速读取用暂存部308(图6的2-1)的高16位(图7的S215、 S216的条件成立),若周期计数器为“11”则输出第二高速读取用暂存部309(图6的2_2) 的低16位(图7的S217、S218的条件成立),若周期计数器为“00”则输出第二高速读取 用暂存部309 (图6的2-2)的高16位(图7的S221的条件成立)。第二数据总线控制部310在读取信号的下降沿(从“1”变化为“0”的时刻),在图 6的6.中上升沿触发信号为“1”的情况下取得第二数据总线的状态,并且在图6的8.中上 升沿周期判别信号为“1”的情况下向第一高速读取用暂存部308(图6的2-1)中存储32 位数据(图7的S214),在上升沿周期判别信号为“0”的情况下向第二高速读取用暂存部 309 (图6的2-2)中存储32位数据(图7的S220)。从上述第一数据总线控制部303的一次存储部输出数据的动作,与向上述第二数 据总线控制部310的一次存储部存储数据的动作独立进行。但是,由于以读取信号的上 升·下降沿为触发进行动作,因此两者交替动作,向第一高速读取用暂存部308(图6的 2-1)中存储数据的期间从第二高速读取用暂存部309(图6的2-2)输出数据,向第二高速 读取用暂存部309 (图6的2-2)存储数据的期间从第一高速读取用暂存部308 (图6的2_1) 输出数据。结果,存储的数据始终在延迟第二数据总线的一次访问后输出到第一数据总线。如从图6可知,在高速读取处理中,从输出某一读取信号开始到输出下一个读取 信号为止期间的时间,比控制器40与读取信号对应地输出读取数据所需的时间短,因此, S0C20在输出最初的读取信号的时刻无法从控制器40接收正确的读取数据。因此,在该时 刻S0C20从总线变换电路30接收的数据并不是应该接收的读取数据,而是该时刻总线变换 电路30的第一高速读取用暂存部308或第二高速读取用暂存部309所存储的数据。因此, 驱动器执行部2013将最初读出的32位数据作为不确定值替换为上述退避的值,由此形成 本来的读取数据。通过这样进行动作,规定的总线宽度为16位的S0C20能够从总线宽度为2倍的 32位的控制器40读出读取数据。在S0C20接收两次16位数据所需的时间内,能够对控制 器40读入一次32位数据即可,因此在控制器40中能够确保读出处理所需的时间,能够使 S0C20从控制器40读出读取数据的处理的数据传输高速化。换言之,应该需要两次的控制 器40的数据读出处理所需的时间通过总线变换电路30而变为只要一次,因此能够将S0C20 写入32位数据所需的时间缩短至大约一半。总线变换电路30可包括下述机构,该机构在S0C20陷入无法连续进行与第二数 据总线的一次访问相当的η次访问的情形时,能够避免由于持续等待接下来的访问而无法 正确送出数据的状态持续的情况。例如,在读出时为了区分即时读取和高速读取而使用了 第一器件选择信号、第二器件选择信号,但由于写入时最好为单一的器件选择信号,因此在 S0C20使第二器件控制信号有效来进行写入的情况下,可以如图6的12.中数据输出顺序控 制计数器的清零信号那样,生成总线变换电路30强制将周期计数器初始化为“00”的信号。
14
图8是表示S0C20通过即时读取处理从控制器40读出数据时各信号的变化的时 序图。图8中,时序图中记载的文字(例如“0x0000”)表示地址信号的内容。第一段所记 载的信号表示从S0C20向总线变换电路(CV) 30输出的读取信号。第二段所记载的信号表 示从总线变换电路30向控制器40输出的读取信号。第三段所记载的信号表示从控制器40 向总线变换电路30输出的读取数据。第四段所记载的信号表示即时读取用暂存部307中 存储的16位的读取数据。第五段所记载的信号表示从总线变换电路30向S0C20输出的读 取数据。图9是表示S0C20通过即时读取处理从控制器40读出数据时各装置的动作的流 程图。以下,利用图8、9,对S0C20通过即时读取处理从控制器40读出数据时各装置的动作 进行说明。首先,S0C20的存储器总线控制电路204向总线变换电路30及控制器40输出表 示数据的读出源的地址信号Α[Ν:0]、读取信号和器件选择信号(步骤S131)。总线变换电路30不具有动作时钟,根据经由第一数据总线接收读取信号的情况 非同步地进行以下处理。第一数据总线控制部303接收读取信号和器件选择信号“0”,在地 址信号A[l]的值为“0”的情况下(步骤S231-是),第二数据总线控制部310生成读取信 号并输出到控制器40(步骤S232)。控制器40在步骤S232中若接收到通过了总线变换电 路30的读取信号,则在步骤S131中从在自S0C20输出的地址信号A[2:N]的低2位上添加 “00”而得到的地址读出32位的读取数据,并输出到第二数据总线(步骤S331)。第二数据总线控制部310和第一数据总线控制部303若从第二数据总线接收了 32 位的读取数据,则使读取数据的低16位通过第一数据总线(步骤S233)。此时,第二数据总 线控制部310将32位的读取数据的高16位存储到即时读取用暂存部307中(步骤S234)。第一数据总线控制部303接收读取信号和器件选择信号“0”,在地址信号A[l] 的值为“1”的情况下(步骤S231-否),第二数据总线控制部310不生成读取信号(步骤 S235)。另外,第一数据总线控制部303向第一数据总线输出即时读取用暂存部307中存储 的16位的读取数据(步骤S236)。在对上述第一数据总线的输出数据的切换的判别中,不仅可采用判别上述地址信 号A[l]的方法,也可以在第一数据总线控制部303内部判别第一数据总线的写入周期是第 一次还是第二次,是第一周期的情况下使第二数据总线的低16位通过,若为第二周期则输 出即时读取用暂存部307中存储的数据。通过这样进行动作,规定的总线宽度为16位的S0C20能够从总线宽度为2倍的 32位的控制器40读出读取数据。在即时读取处理中,S0C20必须等待从输出读取信号之后 到控制器40输出读取数据为止的时间,因此不具有如高速读取处理那样高速化的效果。取 而代之,S0C20能够在第二数据总线的一次32位的访问时间内取得正确的数据。因此,在 S0C20应该接收的数据是比例如32位程度短的读取数据的情况下,即时读取处理比高速读 取处理更为有效。因此,驱动器执行部2013根据从OS执行部2012请求的数据大小,来判 断应该执行高速读取处理还是应该执行即时读取处理,并根据判断结果确定器件选择信号 的值。S0C20在进行与第二数据总线的一次32位读出相当的η次读出时,在与最初的读 出时间相比能够将之后的读出时间控制为短的情况下,控制器40无需等待至输出读取数
15据为止的时间,因此能够缩短读出所需的总时间。
权利要求
一种集成电路系统,其特征在于,具备第一集成电路,其与具有第一总线宽度的第一数据总线连接,每次数据接收发送需要第一时间;第二集成电路,其与位宽比所述第一总线宽度大的第二总线宽度的第二数据总线连接,每次数据接收发送需要比第一时间长的第二时间;和中继电路,其与第一数据总线及第二数据总线连接,经由各总线与第一集成电路及第二集成电路接收发送数据,所述第一集成电路输出写入数据、第一写入信号和写入目的地地址,所述中继电路从所述第一集成电路接收并保持与n 1次的输出相当的所述写入数据,并且切断所述n 1次的所述第一写入信号,根据第n次从所述第一集成电路输出的所述第一写入信号来生成针对所述第二集成电路的第二写入信号,并且将所保持的所述n 1次的所述写入数据和第n次从所述第一集成电路输出的所述写入数据输出到所述第二集成电路,其中,n是2以上的整数,所述第二集成电路根据由所述中继电路生成的所述第二写入信号,将从所述中继电路输出的所述写入数据写入到由所述第一集成电路最初输出的写入目的地地址中。
2.一种集成电路系统,其特征在于,具备第一集成电路,其与具有第一总线宽度的第一数据总线连接,每次数据接收发送需要 第一时间;第二集成电路,其与位宽比所述第一总线宽度大的第二总线宽度的第二数据总 线连接,每次数据接收发送需要比第一时间长的第二时间;和中继电路,其与第一数据总线 及第二数据总线连接,经由各总线与第一集成电路及第二集成电路接收发送数据,所述第一集成电路输出第一读出信号和用于读出下述数据的读出源地址,所述数据是 在应该连续接收的读出数据上加上与第二数据总线的一次访问相当且与所述第一数据总 线的m次访问相当的数据而得到的数据,所述第一集成电路从所述中继电路接收在应该接 收的读出数据上加上与所述第二数据总线的一次访问相当的多余数据而得到的全部数据 时,取得除所述多余数据之外的所述应该接收的读出数据,其中,m是1以上的整数,所述中继电路每当从所述第一集成电路接收规定的m次的所述第一读出信号时,仅在 接收到最初的所述第一读出信号时向所述第二集成电路输出第二读出信号,从所述第二集 成电路接收并保持与所述第二数据总线的一次访问相当且与所述第一数据总线的m次访 问相当的数据,然后向所述第一集成电路输出数据,所述第二集成电路根据从所述中继电路输出的所述第二读出信号,将数据从由所述第 一集成电路最初指定的读出源地址向所述中继电路输出。
3.一种集成电路系统,其特征在于,具备第一集成电路,其与具有第一总线宽度的第一数据总线连接,每次数据接收发送需要 第一时间;第二集成电路,其与位宽比所述第一总线宽度大的第二总线宽度的第二数据总 线连接,每次数据接收发送需要比第一时间长的第二时间;和中继电路,其与第一数据总线 及第二数据总线连接,经由各总线与第一集成电路及第二集成电路接收发送数据,所述第一集成电路输出第一读出信号和应该接收的读出数据的读出源地址,并从所述 中继电路取得应该接收的数据,所述中继电路在从所述第一集成电路接收所述第一读出信号时,仅在接收到最初的所 述第一读出信号时向所述第二集成电路输出第二读出信号,从所述第二集成电路取得与所 述第二数据总线的一次访问相当且与所述第一数据总线的η次访问相当的数据后,将与所述第一数据总线的位宽相当的数据即时输出到所述第一数据总线,并保持剩余的数据,之 后针对η次的来自所述第一数据总线的所述第一读出信号,取代对所述第二数据总线的访 问,而将所述保持的数据按所述第一数据总线的位宽输出到所述第一集成电路,其中,η是 2以上的整数,所述第二集成电路根据从所述中继电路输出的所述第二读出信号,将数据从由所述第 一集成电路最初指定的读出源地址向所述中继电路输出。
4.一种集成电路系统,其特征在于,具备第一集成电路,其与具有第一总线宽度的第一数据总线连接,每次数据接收发送需要 第一时间;第二集成电路,其与位宽比所述第一总线宽度大的第二总线宽度的第二数据总 线连接,每次数据接收发送需要比第一时间长的第二时间;和中继电路,其与第一数据总线 及第二数据总线连接,经由各总线与第一集成电路及第二集成电路接收发送数据,该集成电路系统在第一读出模式或第二读出模式下动作,在所述第一读出模式下动作时,所述第一集成电路输出第一读出信号、第一器件控制信号和用于读出下述数据的读出 源地址,所述数据是在应该连续接收的读出数据上加上与第二数据总线的一次访问相当且 与所述第一数据总线的m次访问相当的数据而得到的数据,所述第一集成电路从所述中继 电路接收在应该接收的读出数据上加上与所述第二数据总线的一次访问相当的多余数据 而得到的全部数据时,取得除所述多余数据之外的所述应该接收的读出数据,其中,m是1 以上的整数,所述中继电路若从所述第一集成电路接收到所述第一器件控制信号,则每当从所述第 一集成电路接收规定的m次的所述第一读出信号时,仅在接收到最初的所述第一读出信号 时向所述第二集成电路输出第二读出信号,从所述第二集成电路接收并保持与所述第二数 据总线的一次访问相当且与所述第一数据总线的m次访问相当的数据,然后向所述第一集 成电路输出数据,所述第二集成电路根据从所述中继电路输出的所述第二读出信号,将数据从由所述第 一集成电路最初指定的读出源地址向所述中继电路输出,在所述第二读出模式下动作时,所述第一集成电路输出第一读出信号、第二器件控制信号和应该接收的读出数据的读 出源地址,并从所述中继电路取得应该接收的数据,所述中继电路若从所述第一集成电路接收到所述第二器件控制信号,则仅在接收到最 初的所述第一读出信号时向所述第二集成电路输出第二读出信号,从所述第二集成电路取 得与所述第二数据总线的一次访问相当且与所述第一数据总线的m次访问相当的数据后, 将与所述第一数据总线的位宽相当的数据即时输出到所述第一数据总线,并保持剩余的数 据,之后针对m次的来自所述第一数据总线的所述第一读出信号,取代对所述第二数据总 线的访问,而将所述保持的数据按所述第一数据总线的位宽输出到所述第一集成电路,所述第二集成电路根据从所述中继电路输出的所述第二读出信号,将数据从由所述第 一集成电路最初指定的读出源地址向所述中继电路输出。
5.根据权利要求2或4所述的集成电路系统,其特征在于所述中继电路具备周期计数器,该周期计数器反复进行与所述第二数据总线的一次访问相当的m次的计数,在不能连续进行m次访问的情况下,将所述周期计数器初始化。
6.根据权利要求5所述的集成电路系统,其特征在于在由所述第一集成电路使所述第二器件控制信号有效并发出了写入信号时,所述中继 电路将所述周期计数器初始化。
7.根据权利要求4所述的集成电路系统,其特征在于还具备对所述第一集成电路进行控制的运算电路,在所述运算电路上动作的软件被分级化为应用程序执行部、操作系统执行部和驱动器 执行部,针对所述应用程序执行部的数据读出请求而经由所述操作系统执行部执行请求的 驱动器控制部,选择利用所述第一读出模式和所述第二读出模式之中的任一种模式。
8.一种集成电路系统中的数据写入方法,其特征在于所述集成电路系统具备第一集成电路,其与具有第一总线宽度的第一数据总线连接, 每次数据接收发送需要第一时间;第二集成电路,其与位宽比所述第一总线宽度大的第二 总线宽度的第二数据总线连接,每次数据接收发送需要比第一时间长的第二时间;和中继 电路,其与第一数据总线及第二数据总线连接,经由各总线与第一集成电路及第二集成电 路接收发送数据,所述数据写入方法具备所述第一集成电路输出写入数据、第一写入信号和写入目的地地址的步骤;所述中继电路从所述第一集成电路接收并保持与n-1次的输出相当的所述写入数据, 并且切断所述n-1次的所述第一写入信号,根据第η次从所述第一集成电路输出的所述第 一写入信号来生成针对所述第二集成电路的第二写入信号,并且将所保持的所述n-1次的 所述写入数据和第η次从所述第一集成电路输出的所述写入数据输出到所述第二集成电 路的步骤,其中,η是2以上的整数;和所述第二集成电路根据由所述中继电路生成的所述第二写入信号,将从所述中继电路 输出的所述写入数据写入到由所述第一集成电路最初输出的写入目的地地址中的步骤。
9.一种集成电路系统中的数据读出方法,其特征在于所述集成电路系统具备第一集成电路,其与具有第一总线宽度的第一数据总线连接, 每次数据接收发送需要第一时间;第二集成电路,其与位宽比所述第一总线宽度大的第二 总线宽度的第二数据总线连接,每次数据接收发送需要比第一时间长的第二时间;和中继 电路,其与第一数据总线及第二数据总线连接,经由各总线与第一集成电路及第二集成电 路接收发送数据,所述数据读出方法具备所述第一集成电路输出第一读出信号和用于读出下述数据的读出源地址,所述数据是 在应该连续接收的读出数据上加上与第二数据总线的一次访问相当且与所述第一数据总 线的m次访问相当的数据而得到的数据,所述第一集成电路从所述中继电路接收在应该接 收的读出数据上加上与所述第二数据总线的一次访问相当的多余数据而得到的全部数据 时,取得除所述多余数据之外的所述应该接收的读出数据的步骤,其中,m是1以上的整数;所述中继电路每当从所述第一集成电路接收规定的m次的所述第一读出信号时,仅在 接收到最初的所述第一读出信号时向所述第二集成电路输出第二读出信号,从所述第二集 成电路接收并保持与所述第二数据总线的一次访问相当且与所述第一数据总线的m次访问相当的数据,然后向所述第一集成电路输出数据的步骤;和所述第二集成电路根据从所述中继电路输出的所述第二读出信号,将数据从由所述第 一集成电路最初指定的读出源地址向所述中继电路输出的步骤。
10. 一种集成电路系统中的数据读出方法,其特征在于所述集成电路系统具备第一集成电路,其与具有第一总线宽度的第一数据总线连接, 每次数据接收发送需要第一时间;第二集成电路,其与位宽比所述第一总线宽度大的第二 总线宽度的第二数据总线连接,每次数据接收发送需要比第一时间长的第二时间;和中继 电路,其与第一数据总线及第二数据总线连接,经由各总线与第一集成电路及第二集成电 路接收发送数据,该数据读出方法具备所述第一集成电路输出第一读出信号和应该接收的读出数据的读出源地址,并从所述 中继电路取得应该接收的数据的步骤;所述中继电路在从所述第一集成电路接收所述第一读出信号时,仅在接收到最初的所 述第一读出信号时向所述第二集成电路输出第二读出信号,从所述第二集成电路取得与所 述第二数据总线的一次访问相当且与所述第一数据总线的η次访问相当的数据后,将与所 述第一数据总线的位宽相当的数据即时输出到所述第一数据总线,并保持剩余的数据,之 后针对η次的来自所述第一数据总线的所述第一读出信号,取代对所述第二数据总线的访 问,而将所述保持的数据按所述第一数据总线的位宽输出到所述第一集成电路的步骤,其 中,η是2以上的整数;和所述第二集成电路根据从所述中继电路输出的所述第二读出信号,将数据从由所述第 一集成电路最初指定的读出源地址向所述中继电路输出的步骤。
全文摘要
本发明提供一种集成电路系统、数据写入方法以及数据读出方法。集成电路系统(1)具备第一集成电路(20),其与具有第一总线宽度的第一数据总线连接,数据接收发送需要第一时间;第二集成电路(40),其与位宽比第一总线宽度大的第二总线宽度的第二数据总线连接,数据接收发送需要比第一时间长的第二时间;和中继电路(30),其与第一数据总线及第二数据总线连接,经由各总线与第一集成电路及第二集成电路接收发送数据。由此,能够在集成电路中确保处理所需的时间,同时能够提高集成电路彼此之间的总线中的数据传输能力。
文档编号G06F13/14GK101937408SQ20101021571
公开日2011年1月5日 申请日期2010年6月24日 优先权日2009年6月25日
发明者富田宪一郎, 篠宫彻 申请人:精工爱普生株式会社
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1