JP5966265B2 - データ転送装置及び画像形成システム - Google Patents

データ転送装置及び画像形成システム Download PDF

Info

Publication number
JP5966265B2
JP5966265B2 JP2011157182A JP2011157182A JP5966265B2 JP 5966265 B2 JP5966265 B2 JP 5966265B2 JP 2011157182 A JP2011157182 A JP 2011157182A JP 2011157182 A JP2011157182 A JP 2011157182A JP 5966265 B2 JP5966265 B2 JP 5966265B2
Authority
JP
Japan
Prior art keywords
virtual channel
storage area
data
storage
data transfer
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.)
Active
Application number
JP2011157182A
Other languages
English (en)
Other versions
JP2013025416A (ja
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.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
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 Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2011157182A priority Critical patent/JP5966265B2/ja
Priority to US13/484,608 priority patent/US8745287B2/en
Priority to EP12173710.0A priority patent/EP2546758B1/en
Publication of JP2013025416A publication Critical patent/JP2013025416A/ja
Application granted granted Critical
Publication of JP5966265B2 publication Critical patent/JP5966265B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • G06F13/4059Coupling between buses using bus bridges where the bridge performs a synchronising function where the synchronisation uses buffers, e.g. for speed matching between buses
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32358Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N1/32363Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter at the transmitter or at the receiver
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32358Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N1/32443Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter with asynchronous operation of the image input and output devices connected to the memory
    • H04N1/32448Controlling data flow to or from the memory in relation to the available memory capacity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32358Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter
    • H04N1/32443Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using picture signal storage, e.g. at transmitter with asynchronous operation of the image input and output devices connected to the memory
    • H04N1/32454Controlling data flow to or from the memory in relation to the amount of data, e.g. file size
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32561Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
    • H04N1/32571Details of system components
    • H04N1/32587Controller
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32561Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
    • H04N1/32593Using a plurality of controllers, e.g. for controlling different interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N1/00Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
    • H04N1/32Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device
    • H04N1/32561Circuits or arrangements for control or supervision between transmitter and receiver or between image input and image output device, e.g. between a still-image camera and its memory or between a still-image camera and a printer device using a programmed control device, e.g. a microprocessor
    • H04N1/32598Bus based systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0058Bus-related hardware virtualisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N2201/00Indexing scheme relating to scanning, transmission or reproduction of documents or the like, and to details thereof
    • H04N2201/0077Types of the still picture apparatus
    • H04N2201/0094Multifunctional device, i.e. a device capable of all of reading, reproducing, copying, facsimile transception, file transception
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)

Description

本発明は、データ転送装置及び画像形成システムの分野に関する。
近年、伝送速度が数Gbpsを超え、Ethernet(登録商標)よりも格段に高速なデータ転送が可能な高速シリアル伝送路が実用化されてきており、従来のコンピュータネットワークに近い通信方式をとったローカルI/O(In/Out)の標準規格が普及しつつある。このため、コンピュータネットワークと同様の、シリアル伝送路とスイッチを用いたパケットデータ通信によって、LSI(Large Scale Integration)チップ内、チップ間、ボード間のデータ通信網が、組込み用途の電子機器にも利用されるようになった。
具体的に、PC(Personal Computer)システムをはじめとして画像形成装置(Multi Function Peripheral:以下MFPともいう)などの組込みシステムでも、機器内の大量データ転送のためにPCI Express(登録商標:以下PCIeともいう)が用いられるようになってきている。高速シリアル通信規格であるPCIeのメリットとしては、帯域を広げるためにはレーン数を増やすだけでよく、従来のパラレル通信規格によるPCIよりも帯域の増減が柔軟である。また、実装LSIの端子数を減らせる、実装ボード上の配線数を減らせるなどのメリットがある。PC向けに量産されているので、実装部品の価格が比較的安価であることもそのメリットの一つである。
(仮想チャネル)
ここで、複数のデバイス(データ転送装置)が共通の通信経路を経由して接続され互いにデータ転送を行うデータ転送システムにおいては、異なる種類のトラフィックが同一の通信経路を使用してデータ転送を行うと競合が発生し、トラフィックごとに要求される通信品質(データ転送レートや連続性)が得られなくなることがある。そのため、PCIeのシリアルインタフェースの仮想チャネル(Virtual Channel:以下VCともいう)のアービトレーションのアルゴリズムでは、QoS(Quality of Service)を実現するため、シリアルバスを仮想チャネル単位で時分割に使い分けることで複数トラフィックのパケットデータを伝送する仮想チャネル機能と、仮想チャネル毎にパケットデータを発行する優先度を調停するアービトレーション機能とを有する。このような仕組みを有するデータ転送装置では、データ転送の優先度が異なるVCの複数トラフィックのパケットデータをシリアルバスを用いて同時転送させたい場合、トランザクション単位で優先度の調整を行いながらのパケット転送が可能である(例えば特許文献1参照)。
(フローコントロール)
また一方、PCIeによるデータ転送方式では、フローコントロール(Flow Control)の概念があり、PCIeリンク間(自デバイスと直接ポイントツーポイントで接続されたデバイスとの間)では、クレジット(Credit)ベースのフロー制御が行われる。送信側はデータ転送を始める前に、受け取り側のバッファの空き状況を確認するようにして、オーバーフロー、アンダフローが発生しないメカニズムである。
具体的に、リンク初期化時においてリクエストを受信する受信側(ターゲットデバイス)は、Memory WriteやMemory Read等のリクエスト種類毎にリクエストを発行する送信側(マスターデバイス)に対し、どの程度の量のリクエストが受信可能かを示すクレジット情報(クレジット値含む)を通知する。通知は、データリンクレイヤパケット/DLLP(Init FC)と呼ばれる制御パケットにより通知される。PCIe規格に準拠したデバイスでは、トランザクション層にSRAM(Static Random Access Memory)等で構成される受信ポートに受信バッファ(PCIeのFlow Control Buffer)が実装されおり、前述のクレジット値は一般に受信側のその受信バッファの空き容量に相当する。
送信側は、通知されたクレジット情報に基づき受信側のバッファ容量に一定の残りがある場合のみパケットを送信する。そして送信側は、自身が送信したパケットのサイズを、通知されたクレジット値から減算する。送信側は受信側のクレジット値を使いきった場合、リクエストを一時停止させる動作を行う。一方、受信側は、受信したパケットの転送処理が完了する毎に送信側に対して、新たに受信可能となったリクエストの量(追加クレジット値)をDLLP(Update FC)により通知する。送信側は、再び受信側で受信可能になったクレジット値分だけ新しくリクエストを発行できるようになる。このようなクレジットベースのフロー制御により、送信側は受信側のバッファ容量を超えてデータ送信を行なうことはないのでパケット転送の再送動作は発生せず、通信路のデータ伝送効率が向上させることができるようになっている。
そしてまた、上述の仮想チャネルが割り当てられている場合には、フローコントロールはVC毎に行われるので、受信バッファもまたVC毎に実装される。また受信バッファは、VCを流れるトランザクションの種類毎に実装される。トランザクションの種類は、Posted Transaction、Non-Posted Transaction、Completions等があるが、このうち特に、Posted Transaction用の受信バッファは、主にメモリライトリクエストをバッファし、Non-Posted Transaction用の受信バッファは、主にメモリリードリクエストをバッファする。
(装置への実装)
さてここで、上述したようにMFPなどの組込みシステムでも機器内の大量データ転送のためにPCIeが用いられるが、MFPの実装においては、例えばPCIe I/F回路において仮想チャネルをVC0、VC1の2チャネル構成とし、VC0にはスキャナ入力に関するトランザクション、VC1にはプロッタ出力に関するトランザクションを割当てた上、VC1を優先して調停を行うようにしている。
理由としては、プロッタ出力に関するトランザクションはデータを持たないリードリクエストのパケットであり、優先的に発行しても、Tx側のスキャナ入力データの転送を殆ど邪魔することなく、Rx側の伝送路の利用効率を上げられるからである。一方スキャナ入力に関するトランザクションはデータを持っており、Tx側伝送路の利用時間が長い。その為、スキャナ入力に関するトランザクションの優先度を上げてしまうと、Txはスキャナ入力に占有され、プロッタ出力に関するトランザクションがなかなか発行できず、Rx側の伝送路の利用効率が低下してしまうからである。
また、MFPにおいてはVC毎に転送されるトランザクションの種類が明確に分かれているので、PCIe I/F回路において各々のVC毎に実装される受信バッファは、一律の容量ではなく、機器上想定されるデータ転送に特化して最適化された容量構成で実装される。半導体の集積回路のコストダウンや消費電力の削減等を行いながら、効率良くバッファ容量を利用するためである。
例えばMFPでは、上述の如くVC0にはスキャナ入力に関するトランザクションを想定するため、コントローラ側(受信側)のVC0の受信バッファは、スキャナ側から、メモリへスキャンデータを書き込むためのメモリライトリクエストを主に受信する。よってVC0では、Posted Transaction用の受信バッファの容量を大きく実装するようにする。VC0では、スキャナ側からメモリからデータを読み出すためのメモリリードリクエストは受信しないので、逆にNon-Posted Transaction用の受信バッファは極力小さく実装すればよい(又は殆ど実装しない)。
VC1にはプロッタ出力に関するトランザクションを想定するため、コントローラ側(受信側)のVC1の受信バッファは、プロッタ側から、メモリから印刷データを読み出すためのメモリリードリクエストを主に受信する。よってVC1では、Non-Posted Transaction用の受信バッファの容量を大きく実装するようにする。VC1では、プロッタ側からメモリへデータを書き込むためのメモリライトリクエストは受信しないので、逆にPosted Transaction用の受信バッファは極力小さく実装すればよい(又は殆ど実装しない)。
しかしながら、PCIe I/F回路において、VCの受信バッファが機器上想定されるデータ転送に特化して最適化された容量構成で実装されている場合、このPCIe I/F回路に対し、VC0のみしか有しないPCIe I/F回路が対向に接続されると問題が生じることがある。
具体的に、上述のMFPのコントローラ側のPCIe I/F回路のVCはVC0、VC1の2チャネル構成であるところ、VC0のみしか有しないPCIe I/F回路が対向に接続された場合には、VC0を介してデータ転送が行われる。しかし、コントローラ側のPCIe I/F回路の各VCの受信バッファは、機器上想定されるデータ転送に特化して最適化された容量構成で実装されており、具体的に受信側のVC0ではPosted Transaction用の受信バッファの容量を大きく実装し、Non-Posted Transaction用の受信バッファは極力小さく実装している。従ってVC0のみしか有しないPCIe I/F回路がVC0を介してデータ転送を行う場合、メモリライトリクエストについては、受信側のVC0のPosted Transaction用の受信バッファの容量は大きく実装されているので問題ないが、メモリリードリクエストについては、Non-Posted Transaction用の受信バッファの容量は小さいので、フローコントロールによりトランザクションの発行が滞り、PCIeの帯域が著しく低下してしまう。
また、対向のPCIe I/F回路がVC0のみしか有しない場合であっても帯域を低下させないよう、コントローラ側のVC0に大容量のSRAMを用いて十分な受信バッファを実装することも可能であるが、この場合、半導体集積回路のコストアップや消費電力増加を招くという問題がある。なおPCIe I/Fのスループットは、世代を重ねる毎に大きく向上しており、これに伴い、受信バッファの容量も大きくする必要があるためコストや消費電力増大の問題は更に顕在化してきている。
そこで本発明では上記のような問題に鑑み、データ転送を行う第1のI/F回路において、仮想チャネル毎に実装されるバッファ容量が、対向の第2のI/F回路の仮想チャネルに対し最適化されていた場合であっても、第1のI/F回路のコストアップ及び消費電力増大を招くことなく、第1のI/F回路と対向の第3のI/F回路との仮想チャネル間スループットを向上させるデータ転送装置及び画像形成システムを提供することを目的とする。
そこで上記課題を解決するため、本発明に係るデータ転送装置は、シリアルバスを少なくとも2以上の仮想チャネルに時分割し、仮想チャネル毎にデータを受信する仮想チャネル手段と、受信バッファであって、仮想チャネル毎に対応する格納領域を備えた格納手段と、受信データを該仮想チャネルに対応する格納領域へ格納する格納制御手段と、を有し、前記格納手段において、第1の仮想チャネルからの受信データを格納する格納領域容量が、第2の仮想チャネルからの受信データを格納する格納領域容量よりも小さく、対向データ転送装置から第1の仮想チャネルのみを介して受信データを受信するとき、前記格納制御手段は、第1の仮想チャネルを介して受信する受信データを第2の仮想チャネルに対応する格納領域へ格納することを特徴とする。
また上記課題を解決するため、本発明に係るデータ転送装置は、シリアルバスを少なくとも2以上の仮想チャネルに時分割し、仮想チャネル毎にデータを送信する仮想チャネル手段と、送信バッファであって、仮想チャネル毎に対応する格納領域を備えた格納手段と、送信データを該仮想チャネルに対応する格納領域へ格納する格納制御手段と、を有し、前記格納手段において、第1の仮想チャネルへの送信データを格納する格納領域容量が、第2の仮想チャネルへの送信データを格納する格納領域容量よりも小さく、対向データ転送装置に対し第1の仮想チャネルのみを介して送信データを送信するとき、前記格納制御手段は、第1の仮想チャネルを介して送信する送信データを第2の仮想チャネルに対応する格納領域へ格納することを特徴とする。
なお、本発明の構成要素、表現または構成要素の任意の組合せを、方法、装置、システム、コンピュータプログラム、記録媒体、などに適用したものも本発明の態様として有効である。
本発明によれば、データ転送を行う第1のI/F回路において、仮想チャネル毎に実装されるバッファ容量が、対向の第2のI/F回路の仮想チャネルに対し最適化されていた場合であっても、第1のI/F回路のコストアップ及び消費電力増大を招くことなく、第1のI/F回路と対向の第3のI/F回路との仮想チャネル間スループットを向上させるデータ転送装置及び画像形成システムを提供することができる。
本実施形態におけるPCI Expressシステムの構成を示す図の一例である。 本実施形態に係るPCI Express I/F107のアーキテクチャ概念図である。 本実施形態に係るASIC−A103及びASIC−B105のPCI Express I/F模式図である。 従来例に係るASIC−C115及びASIC−B105のPCI Express I/F模式図である。 本実施形態に係るPCI Express I/F107の回路図である。 本実施形態に係るCPU104のPCI Express I/Fに対する制御フローを示したフローチャートである。 本実施形態に係るASIC−C115及びASIC−B105のPCI Express I/F模式図である。 本実施形態2におけるPCI Expressシステムの構成を示す図の一例である。 本実施形態2に係るPCI Express I/F121のアーキテクチャ概念図である。 本実施形態2に係るASIC−B105及びMCH122のPCI Express I/F模式図である。
本発明を実施するための形態を各実施形態において図面を用いて説明する。以下、PCI Expressによるデータ転送装置を画像形成システムに適用した例を用いて説明を行う。
[実施形態1]
(システム構成)
図1は、本実施形態におけるPCI Expressシステムの構成を示す図の一例である。図示例は、組込みシステムへ適用する一例として、MFP(画像形成装置)1へのPCI Express適用例を示す。本実施形態に係るMFP1は、図中、スキャナ101、プロッタ102、ASIC−A103、CPU104、ASIC−B105、メモリ106を含み構成される。
スキャナ101は、画像読取部に相当し、MFP1の読み取り面に配置された原稿を光学的に読み取り画像データを生成する画像入力エンジンである。読み取り画像データは、スキャナ101からメモリ106へ入力され格納される(書き込まれる)。プロッタ102は、画像書込部に相当し、例えばメモリ106から出力される画像データを読み込んで、例えば電子写真プロセス方式によってそのビットマップイメージを紙媒体(印刷用紙)に印刷する画像出力エンジンである。
ASIC−A103及びASIC−B105は、PCI Express I/Fを備えたASIC(Application Specific Integrated Circuit)であり、ASIC−A103及びASIC−B105は互いのPCI Express I/Fを介しシリアルバスで接続される。よってデータ転送装置として機能する。ASIC−A103は、コントローラ(ASIC−B105、CPU104、メモリ106等)側とスキャナ101間、コントローラ側とプロッタ102間の接続に利用されるPCI Express Switch(スイッチ)として実装される。ASIC−B105はCPU104、メモリ106とともにMFP1のコントローラを形成する。つまりCPU104の制御の下、スキャナ101からの読み取り画像データは、コントローラ側のASIC−B105を介しメモリ106へ格納され、プロッタ102への画像データは、コントローラ側のASIC−B105を介しメモリ106から読み出される。
またASIC−B105は、PCI Express I/F(回路)107、メモリアービタ108、メモリI/F109、DMA110を含み構成される。そしてこのうちPCI Express I/F107は、PHY111、DataLink層112、Transaction層113、レジスタ114を含み構成される。また本実施形態に係るMFP1は、PCI Express I/F107において仮想チャネルを構成(仮想チャネル手段)し、その仮想チャネルはVC0、VC1の2チャネル構成としているので、受信バッファは、VC0用の受信バッファと、VC1用の受信バッファとを備える(この点詳細は図2で説明する)。また送信バッファもまたVC0用の送信バッファと、VC1用の送信バッファとを備える。
ASIC−A103もまた同様に、ASIC−B105のPCI Express I/F107と対向するPCI Express I/Fを有し、その仮想チャネルはVC0、VC1の2チャネル構成として実装される。
図2は、本実施形態に係るPCI Express I/F107のアーキテクチャ概念図である。PCI Express I/F107は、PCI Expressのアーキテクチャの中心となるTransaction Layer、Data link Layer、Physical Layerの構造を有し、PCI Expressによるデータ通信を担うPCIe通信部である。Transaction層113において、SRAM等で実現される受信バッファ(Flow Control buffers)及び送信バッファ(Transmit buffers)はVC毎に実装されるので、ここではVC0用の受信バッファ及び送信バッファと、VC1用の受信バッファ及び送信バッファとを備えている(格納手段)。
また上述したように、受信バッファ及び送信バッファは、VCを流れるトランザクションの種類毎に実装される。トランザクションの種類は、Posted Transaction、Non-Posted Transaction、Completions等があり、Posted Transaction用の受信バッファは、主にメモリライトリクエストをバッファし、Non-Posted Transaction用の受信バッファは、主にメモリリードリクエストをバッファする。またPCIeはパケットデータにてデータ転送されるので、バッファは更に、パケット情報等が格納されたヘッダをバッファするヘッダ(Header)部用、パケットのペイロードをバッファするデータ(Data)部用に分けられて用意される。以上纏めると、受信バッファ(及び送信バッファ)は1のVC毎に以下6つのバッファから成ることになる。
「PH」:Posted Header
「PD」:Posted Data
「NPH」: Non Posted Header
「NPD」: Non Posted Data
「CPL」: Completion Header
「CPD」: Completion Data
ここで、図中では受信バッファの詳細内訳が示されている(送信バッファは実施形態2で説明する)。VC0用の受信バッファの詳細内訳を参照すると、Posted Transaction用の受信バッファ(「PH」及び「PD」)は、Non-Posted Transaction用の受信バッファ(「NPH」及び「NPD」)と比べ、容量が大きくなっている。MFP1では、上述の如くVC0にはスキャナ入力に関するトランザクションを想定するため、コントローラ側(受信側)のVC0の受信バッファは、スキャナ側から、メモリへスキャンデータを書き込むためのメモリライトリクエストを主に受信する。よってVC0では、Posted Transaction用の受信バッファの容量を大きく実装するようにしたためである。VC0では、スキャナ側からメモリからデータを読み出すためのメモリリードリクエストは受信しないので、逆にNon-Posted Transaction用の受信バッファは極力小さく実装すればよい(又は殆ど実装しない)。より具体的に、SRAM全容量が例えば18コマブロックであるとすると、Posted Transaction用の受信バッファとして、「PH」、「PD」合わせて10コマブロック分確保している。
また、図中のVC1用の受信バッファの詳細内訳を参照すると、Non-Posted Transaction用の受信バッファ(「NPH」及び「NPD」)は、Posted Transaction用の受信バッファ(「PH」及び「PD」)と比べ、容量が大きくなっている。VC1にはプロッタ出力に関するトランザクションを想定するため、コントローラ側(受信側)のVC1の受信バッファは、プロッタ側から、メモリから印刷データを読み出すためのメモリリードリクエストを主に受信する。よってVC1では、Non-Posted Transaction用の受信バッファの容量を大きく実装するようにしたためである。VC1では、プロッタ側からメモリへデータを書き込むためのメモリライトリクエストは受信しないので、逆にPosted Transaction用の受信バッファは極力小さく実装すればよい(又は殆ど実装しない)。より具体的に、SRAM全容量が例えば18コマブロックであるとすると、Non-Posted Transaction用の受信バッファとして、10コマブロック分確保している。なおメモリリードリクエストの場合、そのパケットはデータ部分が殆ど必要ないので、ヘッダ用の「NPH」を特に大きく実装した。
再び図1を参照し、ASIC−A103が送信側、ASIC−B105が受信側となる場合、受信側のASIC−B105側から見ると、ASIC−A103及びASIC−B105間のPCIeフローコントロールとしては以下のようになる。
例えば、VC0のリンク初期化時においてリクエストを受信する受信側(ASIC−B105)は、スキャナ101からのメモリライトリクエスト(Memory Write Request)に対し、どの程度の量のリクエストが受信可能かを示すクレジット情報(クレジット値含む)をDLLP(Init FC)により通知する。ここで、送信側(ASIC−A103)へ通知されるクレジット値は、受信側(ASIC−B105)のPosted Transaction用の受信バッファ(「PH」及び「PD」)の空き容量に相当する。
そして本実施形態において、VC0の受信バッファ、つまりPosted Transaction用の受信バッファは、その容量が大きく実装されているので、スキャナ101側からのメモリライトリクエストに対し、十分な対応が可能である。
また例えば、VC1のリンク初期化時においてリクエストを受信する受信側(ASIC−B105)は、プロッタ102からのメモリリードリクエスト(Memory Read Request)に対し、どの程度の量のリクエストが受信可能かを示すクレジット情報をDLLP(Init FC)により通知する。ここで、送信側(ASIC−A103)へ通知されるクレジット値は、受信側(ASIC−B105)のNon-Posted Transaction用の受信バッファ(「PH」及び「PD」)の空き容量に相当する。
そして本実施形態において、VC1の受信バッファ、つまりNon-Posted Transaction用の受信バッファは、その容量が大きく実装されているので、プロッタ102側からのメモリリードリクエストに対し、十分な対応が可能である。
なお、逆にASIC−A103が受信側、ASIC−B105が送信側となる場合、送信側のASIC−B105側から見ると、ASIC−A103及びASIC−B105間のPCIeフローコントロールとしては以下のようになる。
例えば、VC0のリンク初期化時においてリクエストを送信する送信側(ASIC−B105)は、受信側(ASIC−A103)からトランザクションの種類に応じて通知されるクレジット情報を受信する。送信側(ASIC−B105)は、通知されたクレジット情報に基づき送信側(ASIC−B105)の受信バッファ容量に一定の残りがある場合のみ、送信バッファを経由してトランザクションの種類に応じたパケットを送信する。そして送信側(ASIC−B105)は、自身が送信したパケットのサイズを、通知されたクレジット値から減算する。送信側(ASIC−B105)は受信側(ASIC−A103)のクレジット値を使いきった場合、リクエストを一時停止させる動作を行う。一方、受信側(ASIC−A103)は、受信したパケットの転送処理が完了する毎に送信側(ASIC−B105)に対して、新たに受信可能となったリクエストの量(追加クレジット値)をDLLP(Update FC)により通知する。送信側(ASIC−B105)は、再び受信側(ASIC−A103)で受信可能になったクレジット値分だけ新しくリクエストを発行できるようになる。
図3は、本実施形態に係るASIC−A103及びASIC−B105のPCI Express I/F模式図である。図1と図2を組み合わせて描いた図であり、両ASIC内のPCI Express I/Fに着眼するとともに、特にASIC−B105のTransaction層におけるVC0用、VC1用の受信バッファ詳細をあらためて図示した(送信バッファは省略)。
即ちこれまで説明してきたように、コントローラ側のASIC−B105は、受信側としてVC0を介するスキャナ101からのメモリライトリクエストに十分対応するため、VC0用の受信バッファにおいて、メモリライトのトランザクションに対応するPosted Transaction用の受信バッファを十分な容量で備えている。またコントローラ側のASIC−B105は、受信側としてVC1を介するプロッタ102からのメモリリードリクエストに十分対応するため、VC1用の受信バッファにおいて、メモリリードのトランザクションに対応するNon-Posted Transaction用の受信バッファを十分な容量で備えている。
(VC0のみを有する対向のASIC−C115)
図4は、従来例に係るASIC−C115及びASIC−B105のPCI Express I/F模式図である。図3と比べると、ASIC−B105の対向がASIC−A103からASIC−C115へ変更されていることが分かる。ここでASIC−C115は、同様にPCI Express I/F自体は搭載するものの、仮想チャネルはVC0のみの1チャネル構成とするものである。
PCIeは双方のデバイスがサポートする最大のVCで接続されるため、この場合ではVC0のみで接続される(図中の斜線部分は未使用)。しかしながら受信側のASIC−B105のNon-Posted Transaction用の受信バッファ(「PH」及び「PD」)は、これまで説明してきたように極力小さく実装されている(又は実装されない)。このため、ASIC−B105のNon-Posted Transaction用の受信バッファはすぐに一杯になったり、この受信バッファが空くまでは送信側のASIC−C115は次のメモリリードリクエストを発行することができない。PCIeフローコントロールにより受信側(ASIC−B105)から送信側(ASIC−C115)に対して通知されるクレジット情報のクレジット値が小さく、クレジット値の枯渇が起こり易いからである。このときASIC−C115及びASIC−B105間のPCIeスループットは著しく低下し、MFP1においては例えば異常画像発生等の一因となりうる。
(ASIC−B105のPCI Express I/F107)
図5は、本実施形態に係るPCI Express I/F107の回路図である。本実施形態に係るASIC−B105は、VC0のみを有する対向のASIC−C115と接続されたとき、PCIeスループットの低下を回避するため、図に示すPCI Express I/F107を有する。
Transaction層113のVC0、VC1には、Non-Posted Transaction用の受信バッファである「NPH」(「NPH」のみ図示)が実装されている。またVC0及びVC1の受信バッファ「NPH」に対し書込みを行うVC0 SRAM制御回路116(格納制御手段)は、VC0及びVC1の受信バッファに対し、セレクタ118、セレクタ119を介し接続される。VC1の「NPH」に対し書込みを行うVC1 SRAM制御回路117(格納制御手段)は、VC1の受信バッファに対しセレクタ119を介し接続される。またVC0及びVC1の受信バッファ「NPH」は、DMA(VC0)110に対しセレクタ120を介し接続される。なおまたクロック生成回路118(クロック生成手段)は、CLKラインを介し各部へクロックを供給する。
図6は、本実施形態に係るCPU104のPCI Express I/Fに対する制御フローを示したフローチャートである。
まずASIC−B105は、ASIC−C115とのリセットが解除されると(S1)、PCI Expressの初期化手続きであるリンクトレーニングを開始する(S1)。
CPU104は、対向デバイスASIC−C115であるEndpointのコンフィグレジスタを読むことにより、ASIC−C115がサポートするVCのチャネル数を確認する(S3)。
そしてASIC−C115がサポートするVCのチャネル数の情報をもとに、レジスタ(PCI Expressの規格で定義されたVC Resource Controlレジスタ)114において、該当するVCのEnable設定を行うことで、双方が対応可能な最大のチャネル数でVCのデータパスを確立する(S4)。なおレジスタ116の設定をセレクタのセレクト信号として使用する。
ASIC−C115がサポートするVCのチャネル数が2(VC0,VC1)である場合には、レジスタ114において、VC0:Enable、VC1:Enableとの設定を行い、MFP1においてVC毎に最適化された受信バッファをそのまま利用する。しかしここでは、ASIC−C115がサポートするVCのチャネル数は1であるので、レジスタ114において、VC0:Enable、VC1:Disableとの設定を行う。
そしてレジスタ114の情報(VC0:Enable、VC1:Disable)に基づいて、セレクタ118をOFF、セレクタ119をONする。つまりVC0の受信バッファ「NPH」に対し書込みを行うVC0 SRAM制御回路116の接続をVC1の受信バッファ「NPH」に向けて接続を切り替える(S5)。またセレクタ120はVC0の受信バッファ「NPH」からに代え、VC1の受信バッファ「NPH」からDMA(VC0)110に対し接続を切り替える。これにより、VC0 SRAM制御回路116は、VC0の受信バッファ「NPH」に対し書き込みを行っているつもりであるが、実際には、容量は十分確保されたVC1の受信バッファ「NPH」に対し書き込みを行うことになる。また併せてセレクト信号により、使用しないVC0の受信バッファ「NPH」に対するクロックの供給を停止(マスク)することにより、消費電力の低減を図ることが可能である。
図7は、本実施形態に係るASIC−C115及びASIC−B105のPCI Express I/F模式図である。図4と比べると、上述の切り替えにより、VC0の受信バッファ「NPH」は無効(図中の斜線部分は未使用)になっており、代わりにVC1の受信バッファ「NPH」が有効になっていることが分かる。そして図に示されるようにVC0の受信バッファ「NPH」よりもVC1の受信バッファ「NPH」の方が容量は大きいので、その結果、VC0のみを有する対向のASIC−C115とのPCIeスループットを向上させることが可能である。
さらにより具体的には、PCI Express I/F107のVC0におけるデータ転送において、メモリライトリクエストについては十分な容量が確保されているVC0の受信バッファ「PH」及び「PD」において十分にバッファ可能であり、メモリリードリクエストについては十分な容量が確保されているVC1の受信バッファ「NPH」において十分にバッファ可能である。
以上本実施形態においては、リードアクセスを想定していないVC0の受信バッファ「NPH」の代え、リードアクセスでの性能が出るように最適化されたVC1の受信バッファ「NPH」を利用することで、PCIeスループットを向上させることができる(スループットの低下を回避できる)。またのとき、受信バッファを実現するためのSRAMを特段増加させる必要もないので、冗長・余分なSRAMを実装することに伴うコストアップを抑えるとともに、また上述の如く消費電力の削減を行うことも可能である。
なお本実施形態では、VCを2チャネル持つRoot Complex(ASIC−B105)に対し、対向Endpoint(ASIC−C115)がVCを1chしか持たない場合の構成を想定したものであるが、例えば、Root ComplexがVCを3チャネルで対向EndpointがVCを1ch、またもしくはRoot ComplexがVCを3チャネルで対向EndpointがVCを2chを持つ構成においても、上述と同様の考え方で転送効率向上に有利な受信バッファ(Flow Control Buffer)につなぐよう切り替えることも可能である。
また本実施形態では、受信バッファ「NPH」の例を挙げて説明しているが、同様の考え方でユースケースに合わせ「NPH」以外の受信バッファの接続を切り替えることも可能である。例えば、VCの受信バッファ「PD」や「PH」のバッファ容量が小さい場合、受信バッファ「PD」や「PH」のバッファ容量が大きい別のVC に接続を切り替えることができる。
[実施形態2]
上述の実施形態1では、ASIC−B105のPCI Express I/F107のTransaction層113の受信側(Rx側)にある受信バッファ(Flow Control Buffer)に着目し、VCの受信バッファへの接続を切り替える例を示した。具体的に、VC0の受信バッファ「NPH」はMFP1に特化される形で最適化されたことによりその容量は小さい。一方、VC1の受信バッファ「NPH」はMFP1に特化される形で最適化されたことによりその容量は大きいので、VC0によるデータ転送時、VC0の受信バッファ「NPH」はVC1の受信バッファ「NPH」へ切り替える、つまりVC0によるデータ転送時であっても、受信バッファ「NPH」はVC1に対し実装されているものを利用するようにした。
本実施形態2ではこれを送信バッファに適用する。つまりPCI Express I/FのTransaction層113の送信側(Tx側)にある送信バッファ(Transmit Buffer)に着目し、VCの送信バッファの接続を切り替えるようにする。
(システム構成)
図8は、本実施形態2におけるPCI Expressシステムの構成を示す図の一例である。図示例は、組込みシステムへ適用する一例として、MFP(画像形成装置)1へのPCI Express適用例を示す。図1と比べ、MCH(Memory Controller Hub)122が、ASIC−B105と、CPU104及びメモリ106の間に追加されている。従ってスキャナ101及びプロッタ102からのデータは、PCI Expressのシリアルバスで相互に接続されたASIC−A103、ASIC−B105、MCH122を経て、メモリ106へ到達する。
ASIC−B105は、MCH122が追加されたことによりMCH122とはPCI Expressのシリアルバスで相互に接続される。よって図1と比べ、PCI Express I/F(回路)121が追加されていることになる。
PCI Express I/F121においては仮想チャネルをVC0、VC1の2チャネル構成としているので、Transaction層126では、受信バッファのみならず、送信バッファもまたVC0用の送信バッファと、VC1用の送信バッファとを備える。この送信バッファは、送信側(ASIC−B105)が受信側(MCH122)に対しデータ転送を行う場合、例えばリクエストを発行するとき、これから送信しようとするデータをキューイングするためのバッファとして使用される。
MCH122は、PCI Express I/F(回路)123、メモリアービタ124、メモリI/F125を含み構成される。このうちPCI Express I/F123は、ASIC−B105とPCI Expressのシリアルバスで接続される。本実施形態においてMCH122は、PCI Express I/F自体は搭載するものの、仮想チャネルをVC0のみの1チャネル構成とする。PCIeは双方のデバイスがサポートする最大のVCで接続されるため、この場合、ASIC−B105のPCI Express I/F121とはVC0のみで接続される。
図9は、本実施形態2に係るPCI Express I/F121のアーキテクチャ概念図である。図2が受信バッファの内訳詳細を示したものであるのに対し、図9は送信バッファの内訳詳細を示してある。図に示されるように、送信バッファは、受信バッファと同様、VCを流れるトランザクションの種類毎に実装される。またPCIeはパケットデータにてデータ転送されるので、バッファは更に、パケット情報等が格納されたヘッダをバッファするヘッダ(Header)部用、パケットのペイロードをバッファするデータ(Data)部用に分けられて用意される。以上纏めると、図に示されるように、送信バッファは1のVC毎に6つのバッファ、つまり「PH」、「PD」、「NPH」、「NPD」、「CPL」、「CPD」から成ることになる。
またここで、図中ではトランザクションの種類毎の送信バッファ容量は一律ではなく、MFP1に特化される形で最適化されたことにより、VC毎でその容量は大きいもの、小さいものがある。
例えば、VC0用の送信バッファの詳細内訳を参照すると、Posted Transaction用の送信バッファ(「PH」及び「PD」)は、Non-Posted Transaction用の送信バッファ(「NPH」及び「NPD」)と比べ、容量が大きくなっている。MFP1では、上述の如くVC0にはスキャナ入力に関するトランザクションを想定する。ASIC−B105は、スキャナ側から、PCI Express I/F107にてメモリライトリクエストを主に受信し、追加されたPCI Express I/F121にてMCH122に対し、受信したメモリライトリクエストを送信する。よってPCI Express I/F121のVC0では、メモリライトリクエストを十分送信できるようにPosted Transaction用の送信バッファの容量を大きく実装するようにした。
また、図中のVC1用の受信バッファの詳細内訳を参照すると、Non-Posted Transaction用の受信バッファ(「NPH」及び「NPD」)は、Posted Transaction用の受信バッファ(「PH」及び「PD」)と比べ、容量が大きくなっている。VC1にはプロッタ出力に関するトランザクションを想定する。ASIC−B105は、プロッタ側から、PCI Express I/F107にてメモリリードリクエストを主に受信し、追加されたPCI Express I/F121にてMCH122に対し、受信したメモリリードリクエストを送信する。よってPCI Express I/F121のVC1では、メモリリードリクエストを十分送信できるようにNon-Posted Transaction用の送信バッファの容量を大きく実装するようにした。
図10は、本実施形態2に係るASIC−B105及びMCH122のPCI Express I/F模式図である。上述の如く本実施形態2においては、PCI Express I/F121のTransaction層126の送信側(Tx側)にある送信バッファ(Transmit Buffer)に着目し、VCの送信バッファの接続を切り替える。VC0の送信バッファ「NPH」はMFP1に特化される形で最適化されたことによりその容量は小さい。一方、VC1の送信バッファ「NPH」はMFP1に特化される形で最適化されたことによりその容量は大きいので、VC0によるデータ転送時、VC0の送信バッファ「NPH」はVC1の送信バッファ「NPH」へ切り替える、つまりVC0によるデータ転送時であっても、送信バッファ「NPH」はVC1に対し実装されているものを利用する。
従って図に示されるように、この切り替えにより、VC0の送信バッファ「NPH」は無効(図中の斜線部分は未使用)になっており、代わりにVC1の送信バッファ「NPH」が有効になっていることが分かる。そして図に示されるようにVC0の送信バッファ「NPH」よりもVC1の送信バッファ「NPH」の方が容量は大きいので、その結果、VC0のみを有する対向のMCH122とのPCIeスループットを向上させることが可能である。
さらにより具体的には、PCI Express I/F121のVC0におけるデータ転送において、メモリライトリクエストについては十分な容量が確保されているVC0の送信バッファ「PH」及び「PD」において十分にキューイング可能であり、メモリリードリクエストについては十分な容量が確保されているVC1の送信バッファ「NPH」において十分にキューイング可能である。
以上本実施形態においては、リードアクセスを想定していないVC0の送信バッファ「NPH」の代え、リードアクセスでの性能が出るように最適化されたVC1の送信バッファ「NPH」を利用することで、PCIeスループットを向上させることができる(スループットの低下を回避できる)。またのとき、送信バッファを実現するためのSRAMを特段増加させる必要もないので、冗長・余分なSRAMを実装することに伴うコストアップを抑えるとともに、使用しないVC0の送信バッファ「NPH」において消費電力の削減を行うことも可能である。
[総括]
以上本実施形態によれば、データ転送を行う第1のI/F回路において、仮想チャネル毎に実装されるバッファ容量が、対向の第2のI/F回路の仮想チャネルに対し最適化されていた場合であっても、第1のI/F回路のコストアップ及び消費電力増大を招くことなく、第1のI/F回路と対向の第3のI/F回路との仮想チャネル間スループットを向上させるデータ転送装置及び画像形成システムを提供することが可能となる。
なお、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
1 MFP
101 スキャナ
102 プロッタ
103 ASIC−A
104 CPU
105 ASIC−B
106 メモリ
107 PCI Express I/F
108 メモリアービタ
109 メモリI/F
110 DMA
111 PHY
112 DataLink層
113 Transaction層
114 レジスタ
115 ASIC−C
116 VC0 SRAM制御回路
117 VC1 SRAM制御回路
118−120 セレクタ
121 PCI Express I/F(回路)121が追加されていることになる。
122 MCH
123 PCI Express I/F
124 メモリアービタ
125 メモリI/F
126 Transaction層
特開2006−92286号公報

Claims (11)

  1. シリアルバスを少なくとも2以上の仮想チャネルに時分割し、仮想チャネル毎にデータを受信する仮想チャネル手段と、
    受信バッファであって、第1の仮想チャネルに対応する第1の格納領域と、第2の仮想チャネルに対応する第2の格納領域と、を備えた格納手段と、
    受信データを該仮想チャネルに対応する格納領域へ格納する格納制御手段と、
    を有し、
    前記格納手段において、第1の仮想チャネルからの受信データを格納する格納領域容量が、第2の仮想チャネルからの受信データを格納する格納領域容量よりも小さく、
    対向データ転送装置から第1の仮想チャネルのみを介して受信データを受信するとき、
    前記格納制御手段は、第1の仮想チャネルを介して受信する受信データの格納領域を、第1の格納領域から、第2の格納領域へ切り替えること、
    を特徴とするデータ転送装置。
  2. 前記格納手段は、仮想チャネル毎且つ受信データのトランザクションの種類毎に対応する格納領域を備え、
    前記格納制御手段は、受信データを該仮想チャネル及びに該トランザクションの種類に対応する格納領域へ格納すること、
    を特徴とする請求項1記載のデータ転送装置。
  3. 前記格納手段は、PCI Express規格で定義されるフローコントロールバッファであって、
    前記対向データ転送装置に対し、第2の仮想チャネルに対応する格納領域容量の情報を通知する通知手段と、
    を有することを特徴とする請求項1又は2記載のデータ転送装置。
  4. 前記格納手段に供給するクロックを生成するクロック生成手段と、
    を有し、
    前記クロック生成手段は、前記格納制御手段が、第1の仮想チャネルを介して受信した受信データを第2の仮想チャネルに対応する格納領域へ格納するとき、第1の仮想チャネルに対応する格納領域に対し、クロックの供給を停止すること、
    を特徴とする請求項1ないし3何れか一項記載のデータ転送装置。
  5. 画像入力エンジンと、
    画像出力エンジンと、
    前記画像入力エンジン及び前記画像出力エンジンを制御駆動するコントローラと、
    を有し、
    前記コントローラは、前記画像入力エンジン及び前記画像出力エンジンとの間を接続する請求項2項記載のデータ転送装置によるシリアルインタフェースと
    を有することを特徴とする画像形成システム。
  6. 前記格納手段において、前記画像入力エンジンと接続される第1の仮想チャネルからの画像入力に関するトランザクションデータを格納する格納領域容量は、第2の仮想チャネルからの画像入力に関するトランザクションデータを格納する格納領域容量よりも大きく構成され、
    前記格納手段において、前記画像出力エンジンと接続される第2の仮想チャネルからの画像出力に関するトランザクションデータを格納する格納領域容量は、第1の仮想チャネルからの画像出力に関するトランザクションデータを格納する格納領域容量よりも大きく構成され、
    対向データ転送装置から前記シリアルインタフェースの第1の仮想チャネルのみを介して画像出力に関するトランザクションデータを受信するとき、
    前記格納制御手段は、該第1の仮想チャネルを介して受信する画像出力に関するトランザクションデータを、第2の仮想チャネルからの画像出力に関するトランザクションデータを格納する格納領域へ格納すること、
    を特徴とする請求項5記載の画像形成システム。
  7. シリアルバスを少なくとも2以上の仮想チャネルに時分割し、仮想チャネル毎にデータを送信する仮想チャネル手段と、
    送信バッファであって、第1の仮想チャネルに対応する第1の格納領域と、第2の仮想チャネルに対応する第2の格納領域と、を備えた格納手段と、
    送信データを該仮想チャネルに対応する格納領域へ格納する格納制御手段と、
    を有し、
    前記格納手段において、第1の仮想チャネルへの送信データを格納する格納領域容量が、第2の仮想チャネルへの送信データを格納する格納領域容量よりも小さく、
    対向データ転送装置に対し第1の仮想チャネルのみを介して送信データを送信するとき、
    前記格納制御手段は、第1の仮想チャネルを介して送信する送信データの格納領域を、第1の格納領域から、第2の格納領域へ切り替えること、
    を特徴とするデータ転送装置。
  8. 前記格納手段は、仮想チャネル毎且つ送信データのトランザクションの種類毎に対応する格納領域を備え、
    前記格納制御手段は、送信データを該仮想チャネル及びに該トランザクションの種類に対応する格納領域へ格納すること、
    を特徴とする請求項7記載のデータ転送装置。
  9. 前記格納手段に供給するクロックを生成するクロック生成手段と、
    を有し、
    前記クロック生成手段は、前記格納制御手段が、第1の仮想チャネルを介して送信する送信データを第2の仮想チャネルに対応する格納領域へ格納するとき、第1の仮想チャネルに対応する格納領域に対し、クロックの供給を停止すること、
    を特徴とする請求項7又は8項記載のデータ転送装置。
  10. 画像入力エンジンと、
    画像出力エンジンと、
    前記画像入力エンジン及び前記画像出力エンジンを制御駆動するコントローラと、
    を有し、
    前記コントローラは、前記画像入力エンジン及び前記画像出力エンジンとの間を接続する第1のシリアルインタフェースと、
    前記コントローラは、請求項7項記載のデータ転送装置による第2のシリアルインタフェースと、
    を有することを特徴とする画像形成システム。
  11. 前記格納手段において、第1の仮想チャネルへの画像入力に関するトランザクションデータを格納する格納領域容量は、第2の仮想チャネルからの画像入力に関するトランザクションデータを格納する格納領域容量よりも大きく構成され、
    前記格納手段において、第2の仮想チャネルへの画像出力に関するトランザクションデータを格納する格納領域容量は、第1の仮想チャネルからの画像出力に関するトランザクションデータを格納する格納領域容量よりも大きく構成され、
    対向データ転送装置に対し前記第2のシリアルインタフェースの第1の仮想チャネルのみを介して画像出力に関するトランザクションデータを送信するとき、
    前記格納制御手段は、該第1の仮想チャネルを介して送信する画像出力に関するトランザクションデータを、第2の仮想チャネルへの画像出力に関するトランザクションデータを格納する格納領域へ格納すること、
    を特徴とする請求項10記載の画像形成システム。
JP2011157182A 2011-07-15 2011-07-15 データ転送装置及び画像形成システム Active JP5966265B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2011157182A JP5966265B2 (ja) 2011-07-15 2011-07-15 データ転送装置及び画像形成システム
US13/484,608 US8745287B2 (en) 2011-07-15 2012-05-31 Data transfer apparatus and image forming system
EP12173710.0A EP2546758B1 (en) 2011-07-15 2012-06-27 Data transfer apparatus and image forming system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011157182A JP5966265B2 (ja) 2011-07-15 2011-07-15 データ転送装置及び画像形成システム

Publications (2)

Publication Number Publication Date
JP2013025416A JP2013025416A (ja) 2013-02-04
JP5966265B2 true JP5966265B2 (ja) 2016-08-10

Family

ID=47002501

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011157182A Active JP5966265B2 (ja) 2011-07-15 2011-07-15 データ転送装置及び画像形成システム

Country Status (3)

Country Link
US (1) US8745287B2 (ja)
EP (1) EP2546758B1 (ja)
JP (1) JP5966265B2 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5337890B2 (ja) * 2012-02-29 2013-11-06 京セラドキュメントソリューションズ株式会社 画像形成装置
RU2653306C1 (ru) * 2014-03-20 2018-05-07 Интел Корпорейшн Способ, устройство и система для управления потреблением энергии неиспользуемым аппаратным средством канального интерфейса
WO2015186210A1 (ja) * 2014-06-04 2015-12-10 三菱電機株式会社 機能管理システム及び機能管理方法
US10229076B2 (en) 2015-09-09 2019-03-12 International Business Machines Corporation Peripheral component interconnect express (PCIE) pseudo-virtual channels using vendor defined messages
US9483424B1 (en) 2015-12-04 2016-11-01 International Business Machines Corporation Peripheral component interconnect express (PCIE) pseudo-virtual channels and non-blocking writes
US10585831B2 (en) * 2017-01-27 2020-03-10 Hewlett Packard Enterprise Development Lp PCIe connectors
US10621115B2 (en) * 2018-06-29 2020-04-14 Apple Inc System and method for communication link management in a credit-based system
US11178198B1 (en) 2020-11-04 2021-11-16 Disney Enterprises, Inc. Buffering data on high bandwidth networks
US11757798B2 (en) 2020-12-28 2023-09-12 Arteris, Inc. Management of a buffered switch having virtual channels for data transmission within a network
US11847489B2 (en) * 2021-01-26 2023-12-19 Apple Inc. United states graphics processor techniques with split between workload distribution control data on shared control bus and corresponding graphics data on memory interfaces

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3786152B2 (ja) * 1997-11-14 2006-06-14 セイコーエプソン株式会社 印刷システム、印刷方法及びプリンタ
JP2006092286A (ja) 2004-09-24 2006-04-06 Ricoh Co Ltd データ転送装置及び画像形成システム
JP2006189937A (ja) * 2004-12-28 2006-07-20 Toshiba Corp 受信装置、送受信装置、受信方法及び送受信方法
EP1722547A3 (en) 2005-04-11 2008-10-01 Ricoh Company, Ltd. Image processing apparatus and image forming apparatus
US20060239194A1 (en) * 2005-04-20 2006-10-26 Chapell Christopher L Monitoring a queue for a communication link
JP4878185B2 (ja) 2006-03-17 2012-02-15 株式会社リコー データ通信回路および調停方法
US7702841B2 (en) 2007-03-08 2010-04-20 Ricoh Company, Limited Semiconductor integrated circuit and image processing apparatus having the same
US8271715B2 (en) 2008-03-31 2012-09-18 Intel Corporation Modular scalable PCI-Express implementation
WO2009148432A1 (en) 2008-06-01 2009-12-10 Hewlett-Packard Development Company, L.P. Queue sharing and reconfiguration in pci express links
US7852757B1 (en) * 2009-03-10 2010-12-14 Xilinx, Inc. Status based data flow control for chip systems
JP5600951B2 (ja) 2010-02-01 2014-10-08 ダイキン工業株式会社 送り装置
JP2011186894A (ja) 2010-03-10 2011-09-22 Ricoh Co Ltd データ転送装置、画像処理装置、データ転送方法、データ転送プログラム及び記録媒体
JP2012029276A (ja) * 2010-06-21 2012-02-09 Ricoh Co Ltd 画像形成装置、色調整方法及び色調整プログラム

Also Published As

Publication number Publication date
US8745287B2 (en) 2014-06-03
EP2546758B1 (en) 2015-06-17
EP2546758A1 (en) 2013-01-16
JP2013025416A (ja) 2013-02-04
US20130019033A1 (en) 2013-01-17

Similar Documents

Publication Publication Date Title
JP5966265B2 (ja) データ転送装置及び画像形成システム
EP1018687B1 (en) A port manager controller for connecting various function modules
JP5108261B2 (ja) 情報処理装置およびデータ通信装置
US7694049B2 (en) Rate control of flow control updates
JP4878185B2 (ja) データ通信回路および調停方法
JP4928732B2 (ja) データ転送システム及び電子機器
JP4704050B2 (ja) データ転送システム及び電子機器
US8612713B2 (en) Memory switching control apparatus using open serial interface, operating method thereof, and data storage device therefor
US7702841B2 (en) Semiconductor integrated circuit and image processing apparatus having the same
US20050254085A1 (en) Image forming system
JP5145929B2 (ja) 半導体集積回路及び画像処理装置
JP5151176B2 (ja) データ通信装置、画像処理システムおよびデータ通信方法
JP2009151752A (ja) バススイッチ,電子機器及びデータ転送方法
JP4777723B2 (ja) 情報処理システム、プログラムおよびデータ転送方法
JP5531427B2 (ja) スイッチ、情報処理装置、アービトレーション方法及び画像形成システム
JP4425766B2 (ja) 画像形成システム
JP4828899B2 (ja) 情報処理装置および記憶デバイス共有方法
JP2005332316A (ja) データ分配装置、データ転送装置及び画像処理装置
JP2007282187A (ja) 情報処理装置、情報処理システムおよびデータ通信方法
JP2010033602A (ja) 画像形成システム
JP4607706B2 (ja) 画像処理システム、プログラムおよびジョブ実行方法
JP2007226494A (ja) データ転送システム
JP4690828B2 (ja) 情報処理システム、プログラムおよびパケット通信方法
JP4271558B2 (ja) データ転送システム、画像形成システム及びデータ転送用プログラム
JP2009163633A (ja) 情報処理装置およびデータ通信方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140610

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20151013

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151207

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160607

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160620

R151 Written notification of patent or utility model registration

Ref document number: 5966265

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151