JP6176058B2 - ダイレクトメモリアクセス制御装置、その制御方法、及び情報処理システム - Google Patents
ダイレクトメモリアクセス制御装置、その制御方法、及び情報処理システム Download PDFInfo
- Publication number
- JP6176058B2 JP6176058B2 JP2013224637A JP2013224637A JP6176058B2 JP 6176058 B2 JP6176058 B2 JP 6176058B2 JP 2013224637 A JP2013224637 A JP 2013224637A JP 2013224637 A JP2013224637 A JP 2013224637A JP 6176058 B2 JP6176058 B2 JP 6176058B2
- Authority
- JP
- Japan
- Prior art keywords
- channel
- packet
- memory access
- switching
- direct memory
- 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
Links
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/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
- G06F13/30—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal with priority control
-
- 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/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/28—DMA
- G06F2213/2806—Space or buffer allocation for DMA transfers
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Bus Control (AREA)
- Communication Control (AREA)
- Power Sources (AREA)
Description
本発明の目的は、パケットロスによる通信品質の劣化が発生することなく、モードの切り替えを行うことができるDMA制御装置を提供することにある。
本発明の第1の実施形態について説明する。
図1は、第1の実施形態におけるダイレクトメモリアクセス(DMA:Direct Memory Access)制御装置を有する情報処理システムの構成例を示す図である。情報処理システムは、図1に示すように、DMA制御装置10、メインCPU(Central Processing Unit)20、メインCPU用のRAM(Random Access Memory)30、サブCPU40、サブCPU用のRAM50、及びメディアアクセス制御(MAC:Media Access Control)部60を有する。
次に、本発明の第2の実施形態について説明する。
前述した第1の実施形態において、通常モードから待機モードに遷移する場合、サブCPU40からパワーオフ許可の通知を受けて、メインCPU20及びメインCPU用のRAM30の通電がオフされる。このとき、DMA制御装置10におけるメインCPU用チャネル101Aの送信用チャネル121Aには、未送信のデータが残存してしまうことがある。ディスクリプタ形式のDMA制御装置は、ディスクリプタが空になるまで動作を続けるので、メインCPU20及びRAM30の通電がオフになった後に、メインCPU用チャネル101Aの送信用チャネル121Aに未送信のデータが残存していると、RAM30へのアクセスが行われ、バスアクセスエラーが発生する。
次に、本発明の第3の実施形態について説明する。
前述した実施形態において、待機モードから通常モードに遷移する場合、待機モードから通常モードへのモード切り替えが必要であるとの指示を受けてから、メインCPUの起動、DMA制御装置10でのメインDMAの起動、及びメインCPU用チャネル101Aへのチャネル切り替えが完了するまで、ネットワークからのパケットはサブCPU側で受信される。この受信したパケットは、メインCPU側に渡す必要があり、CPU間通信による転送が考えられるが、CPU間通信を行うと制御が複雑になってしまう。また、CPU間通信でサブCPU側からメインCPU側にパケットデータを転送していると時間を要するため、この間のパケット応答のレイテンシの悪化やパケットロスの発生を招き、通信品質が低下してしまうおそれがある。
次に、本発明の第4の実施形態について説明する。
DMA制御装置10において、使用するDMAチャネルをサブCPU用チャネル101BからメインCPU用チャネル101Aに切り替える際、ネットワークからパケットデータが転送されてくるタイミングがわからないため、DMAチャネルを切り替える直前にサブCPU側にパケットが入力されてしまう場合がある。この場合には、サブCPU側からメインCPU側にパケットデータを転送する必要があり、そのパケットが受信された後に受信したパケットが先にメインCPU側に入力されてしまうと、メインCPU側ではパケットの順序逆転が発生してしまい、通信品質の低下を招く原因となってしまう。
20 メインCPU
30 メインCPU用のRAM
40 サブCPU
50 サブCPU用のRAM
101A メインCPU用チャネル
101B サブCPU用チャネル
102 ディスクリプタRead/Write処理部
103 データRead/Write処理部
104 チャネル切り替え部
105 モード設定レジスタ
106 パケットデータ退避バッファ
107 リスタートタイミング調整部
108 バッファ制御部
111 受信用チャネル
121 送信用チャネル
141 受信処理部
142 送信処理部
143 ループバック処理部
144 指示処理部
Claims (8)
- 第1の受信用チャネル及び第1の送信用チャネルを有し、第1のメモリから取得したディスクリプタに従ってダイレクトメモリアクセスによるデータ転送を行う第1のチャネルと、
第2の受信用チャネル及び第2の送信用チャネルを有し、第2のメモリから取得したディスクリプタに従ってダイレクトメモリアクセスによるデータ転送を行う第2のチャネルと、
モード設定レジスタと、
前記モード設定レジスタに設定されている情報に応じて前記第1のチャネル及び前記第2のチャネルの内の1つのチャネルを選択するとともに、転送するパケットの境界を検出し、検出された前記パケットの境界で、選択したチャネルへの切り替えを行うチャネル切り替え部とを有し、
前記チャネル切り替え部は、前記第2のチャネルから前記第1のチャネルへの切り替えを行う場合に、前記第2のチャネルが有する前記第2の送信用チャネルから送信されたデータを前記第1のチャネルが有する前記第1の受信用チャネルに転送するループバック処理部を有することを特徴とするダイレクトメモリアクセス制御装置。 - 受信されたデータを格納するバッファを有し、
前記チャネル切り替え部は、前記ループバック処理部によるデータの転送の実行中は、前記バッファからのデータの読み出しを抑制し、前記ループバック処理部によるデータの転送後に、前記バッファからデータを読み出して前記第1のチャネルに転送することを特徴とする請求項1記載のダイレクトメモリアクセス制御装置。 - 前記第1のチャネルから前記第2のチャネルへの切り替えを行う場合に、前記チャネル切り替え部により検出されたパケットの境界で、前記第1のチャネルが有する前記第1の送信用チャネルのリセット処理を実行することを特徴とする請求項1又は2記載のダイレクトメモリアクセス制御装置。
- 前記モード設定レジスタには、第1のモードであるか、又は前記第1のモードよりも低消費電力の動作である第2のモードであるかを示す情報が設定され、
前記チャネル切り替え部は、前記モード設定レジスタに設定されている情報が前記第1のモードを示す場合、前記第1のチャネルを選択し、前記モード設定レジスタに設定されている情報が前記第2のモードを示す場合、前記第2のチャネルを選択することを特徴とする請求項1〜3の何れか1項に記載のダイレクトメモリアクセス制御装置。 - 前記チャネル切り替え部は、転送する前記パケットのヘッダ情報に基づいて前記パケットの境界を検出することを特徴とする請求項1〜4の何れか1項に記載のダイレクトメモリアクセス制御装置。
- 第1の受信用チャネル及び第1の送信用チャネルを有し、第1のメモリから取得したディスクリプタに従ってダイレクトメモリアクセスによるデータ転送を行う第1のチャネルと、第2の受信用チャネル及び第2の送信用チャネルを有し、第2のメモリから取得したディスクリプタに従ってダイレクトメモリアクセスによるデータ転送を行う第2のチャネルと、モード設定レジスタとを有するダイレクトメモリアクセス制御装置の制御方法であって、
前記ダイレクトメモリアクセス制御装置が有するチャネル切り替え部が、前記モード設定レジスタに設定されている情報に応じて前記第1のチャネル及び前記第2のチャネルの内の1つのチャネルを選択し、
前記チャネル切り替え部が、転送するパケットの境界の検出を行い、検出された前記パケットの境界で、選択したチャネルへの切り替えを行い、
前記チャネル切り替え部が、前記第2のチャネルから前記第1のチャネルへの切り替えを行う場合に、前記第2のチャネルが有する前記第2の送信用チャネルから送信されたデータを前記第1のチャネルが有する前記第1の受信用チャネルに転送することを特徴とするダイレクトメモリアクセス制御装置の制御方法。 - 第1のCPU及び第1のメモリと、
前記第1のCPU及び第1のメモリとはそれぞれ異なる第2のCPU及び第2のメモリと、
ダイレクトメモリアクセス制御装置とを有し、
前記ダイレクトメモリアクセス制御装置は、
第1の受信用チャネル及び第1の送信用チャネルを有し、前記第1のメモリから取得したディスクリプタに従ってダイレクトメモリアクセスによるデータ転送を行う第1のチャネルと、
第2の受信用チャネル及び第2の送信用チャネルを有し、前記第2のメモリから取得したディスクリプタに従ってダイレクトメモリアクセスによるデータ転送を行う第2のチャネルと、
前記第1のCPU及び前記第1のメモリを休止させるか否かを示す情報が設定されるモード設定レジスタと、
前記モード設定レジスタに設定されている情報に応じて前記第1のチャネル及び前記第2のチャネルの内の1つのチャネルを選択するとともに、転送するパケットの境界を検出し、検出された前記パケットの境界で、選択したチャネルへの切り替えを行うチャネル切り替え部とを有し、
前記チャネル切り替え部は、前記第2のチャネルから前記第1のチャネルへの切り替えを行う場合に、前記第2のチャネルが有する前記第2の送信用チャネルから送信されたデータを前記第1のチャネルが有する前記第1の受信用チャネルに転送するループバック処理部を有することを特徴とする情報処理システム。 - 前記モード設定レジスタに設定されている情報に応じて前記第1のチャネルから前記第2のチャネルへの切り替えを行う場合、前記第2のチャネルへの切り替え後に前記第1のCPU及び前記第1のメモリへの通電をオフすることを特徴とする請求項7記載の情報処理システム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013224637A JP6176058B2 (ja) | 2013-10-29 | 2013-10-29 | ダイレクトメモリアクセス制御装置、その制御方法、及び情報処理システム |
US14/469,981 US9921983B2 (en) | 2013-10-29 | 2014-08-27 | Direct memory access controller, control method thereof, and information processing system |
CN201410478629.7A CN104572526B (zh) | 2013-10-29 | 2014-09-18 | 直接存储器存取控制器、其控制方法以及信息处理系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013224637A JP6176058B2 (ja) | 2013-10-29 | 2013-10-29 | ダイレクトメモリアクセス制御装置、その制御方法、及び情報処理システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015087872A JP2015087872A (ja) | 2015-05-07 |
JP6176058B2 true JP6176058B2 (ja) | 2017-08-09 |
Family
ID=52996779
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013224637A Active JP6176058B2 (ja) | 2013-10-29 | 2013-10-29 | ダイレクトメモリアクセス制御装置、その制御方法、及び情報処理システム |
Country Status (3)
Country | Link |
---|---|
US (1) | US9921983B2 (ja) |
JP (1) | JP6176058B2 (ja) |
CN (1) | CN104572526B (ja) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110134621B (zh) * | 2018-02-09 | 2023-12-19 | 北京忆芯科技有限公司 | 通过环回数据通路提供cmb |
JP7326863B2 (ja) * | 2019-05-17 | 2023-08-16 | オムロン株式会社 | 転送装置、情報処理装置、および、データ転送方法 |
CN114385529A (zh) * | 2020-10-16 | 2022-04-22 | 瑞昱半导体股份有限公司 | 直接记忆体存取控制器、使用其之电子装置以及操作其的方法 |
CN112506828B (zh) * | 2020-12-18 | 2024-05-17 | 展讯半导体(成都)有限公司 | 直接内存访问的传输配置方法及装置 |
Family Cites Families (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4371932A (en) * | 1979-07-30 | 1983-02-01 | International Business Machines Corp. | I/O Controller for transferring data between a host processor and multiple I/O units |
JPS6250946A (ja) | 1985-08-30 | 1987-03-05 | Hitachi Ltd | Dma制御方式 |
JP2689523B2 (ja) | 1988-09-30 | 1997-12-10 | 日本電気株式会社 | Dma転送装置 |
CA2071347A1 (en) * | 1991-10-15 | 1993-04-16 | Nader Amini | Expandable high performance fifo design |
US5864712A (en) * | 1995-03-17 | 1999-01-26 | Lsi Logic Corporation | Method and apparatus for controlling (N+I) I/O channels with (N) data managers in a homogenous software programmable environment |
US6081852A (en) | 1996-04-26 | 2000-06-27 | Texas Instruments Incorporated | Packet data transferring system for autonomously operating a DMA by autonomous boot mode select signal wherein the DMA is enabled to at least one program control list |
SG77135A1 (en) | 1996-04-26 | 2000-12-19 | Texas Instruments Inc | Method and system for assigning a channel number to a received data packet |
US6006286A (en) | 1996-04-26 | 1999-12-21 | Texas Instruments Incorporated | System for controlling data packet transfers by associating plurality of data packet transfer control instructions in packet control list including plurality of related logical functions |
EP0804033A3 (en) | 1996-04-26 | 2003-12-10 | Texas Instruments Incorporated | Improvements in or relating to electronic devices |
JPH1040211A (ja) | 1996-04-30 | 1998-02-13 | Texas Instr Inc <Ti> | パケット化されたデータ通信インタフェース機器内での直接メモリアクセス優先順位を割り当てるための方法ならびにdmaチャンネル回路 |
JPH09305527A (ja) * | 1996-05-13 | 1997-11-28 | Brother Ind Ltd | Dmaコントローラ |
US6154793A (en) * | 1997-04-30 | 2000-11-28 | Zilog, Inc. | DMA with dynamically assigned channels, flexible block boundary notification and recording, type code checking and updating, commands, and status reporting |
JP2000181856A (ja) | 1998-12-16 | 2000-06-30 | Hitachi Ltd | 入出力制御装置 |
KR100403620B1 (ko) | 2001-02-28 | 2003-10-30 | 삼성전자주식회사 | 채널 활용율을 높이는 통신 시스템 및 그 방법 |
JP2003271542A (ja) * | 2002-03-18 | 2003-09-26 | Fujitsu Ltd | ダイレクトアクセスコントローラ |
US7007036B2 (en) * | 2002-03-28 | 2006-02-28 | Lsi Logic Corporation | Method and apparatus for embedding configuration data |
US7035289B2 (en) * | 2002-05-03 | 2006-04-25 | Cedar Point Communications | Communications switching architecture |
US6981074B2 (en) * | 2003-10-14 | 2005-12-27 | Broadcom Corporation | Descriptor-based load balancing |
JP2005153186A (ja) * | 2003-11-20 | 2005-06-16 | Casio Electronics Co Ltd | 印刷装置 |
JP2005258509A (ja) | 2004-03-09 | 2005-09-22 | Fujitsu Ltd | ストレージ装置 |
JP2005303978A (ja) * | 2004-03-17 | 2005-10-27 | Ricoh Co Ltd | ネットワーク制御装置、画像形成装置、画像形成システム、ネットワーク制御方法、コンピュータプログラム及び記録媒体 |
CN100432968C (zh) * | 2004-07-09 | 2008-11-12 | 上海奇码数字信息有限公司 | 存储器直接存取装置及其数据传输方法 |
JP2006195821A (ja) | 2005-01-14 | 2006-07-27 | Fujitsu Ltd | 情報処理システムの制御方法、情報処理システム、ダイレクトメモリアクセス制御装置、プログラム |
JP4524261B2 (ja) * | 2006-02-27 | 2010-08-11 | 京セラ株式会社 | 通信装置及び通信装置の制御方法 |
US8117475B2 (en) | 2006-12-15 | 2012-02-14 | Microchip Technology Incorporated | Direct memory access controller |
CN101558396B (zh) | 2006-12-15 | 2011-12-14 | 密克罗奇普技术公司 | 直接存储器存取控制器 |
US9141572B2 (en) | 2006-12-15 | 2015-09-22 | Microchip Technology Incorporated | Direct memory access controller |
US7743279B2 (en) * | 2007-04-06 | 2010-06-22 | Apple Inc. | Program counter (PC) trace |
JP2010074256A (ja) | 2008-09-16 | 2010-04-02 | Sharp Corp | 画像形成装置 |
JP5494228B2 (ja) | 2010-05-21 | 2014-05-14 | 株式会社リコー | 通信装置及びメモリデバイス並びに通信方法 |
JP5694100B2 (ja) | 2011-09-14 | 2015-04-01 | 株式会社東芝 | 情報処理装置、プログラムおよび情報処理方法 |
US8943238B2 (en) * | 2012-05-18 | 2015-01-27 | Atmel Corporation | Operations using direct memory access |
US9092647B2 (en) * | 2013-03-07 | 2015-07-28 | Freescale Semiconductor, Inc. | Programmable direct memory access channels |
US10248556B2 (en) * | 2013-10-16 | 2019-04-02 | Exablox Corporation | Forward-only paged data storage management where virtual cursor moves in only one direction from header of a session to data field of the session |
-
2013
- 2013-10-29 JP JP2013224637A patent/JP6176058B2/ja active Active
-
2014
- 2014-08-27 US US14/469,981 patent/US9921983B2/en active Active
- 2014-09-18 CN CN201410478629.7A patent/CN104572526B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
US9921983B2 (en) | 2018-03-20 |
US20150120983A1 (en) | 2015-04-30 |
JP2015087872A (ja) | 2015-05-07 |
CN104572526A (zh) | 2015-04-29 |
CN104572526B (zh) | 2018-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6176058B2 (ja) | ダイレクトメモリアクセス制御装置、その制御方法、及び情報処理システム | |
US11209885B2 (en) | Information processing apparatus, method for controlling the same, and non-transitory computer-readable storage medium | |
US8959373B2 (en) | Communication device for executing packet process in low consumption state | |
US8667181B2 (en) | Communication device | |
JP2016012339A (ja) | 情報処理装置、印刷装置、及び、制御方法 | |
JP2010130151A (ja) | 受信装置及び画像形成装置 | |
US20190306337A1 (en) | Communication apparatus, control method, and storage medium | |
JP5741245B2 (ja) | 画像処理装置、画像処理制御方法及び画像処理制御プログラム | |
JP5422687B2 (ja) | 通信処理装置および画像形成装置 | |
JP2005085079A (ja) | データ転送制御装置 | |
JP2011173378A (ja) | 印刷装置 | |
JP4862395B2 (ja) | 情報処理装置及び情報処理装置の制御方法 | |
US9565327B2 (en) | Information processing device that responds to packet received from network and method of responding to packet | |
WO2017119100A1 (ja) | プログラマブルコントローラ及び同期制御プログラム | |
JP6572602B2 (ja) | パケット受信処理装置及びパケット受信処理方法 | |
JP2014113731A (ja) | 画像形成装置、制御方法及びプログラム | |
JP2014168144A (ja) | 通信方法及びスイッチングハブ | |
US12026109B2 (en) | Operating method of transaction accelerator, operating method of computing device including transaction accelerator, and computing device including transaction accelerator | |
JP6402484B2 (ja) | 情報処理装置及び情報処理プログラム | |
JP5742245B2 (ja) | 画像形成装置 | |
JP2014071834A (ja) | 通信装置およびプログラム | |
JP2004151877A (ja) | ダイレクト・メモリ・アクセス・コントローラ、メモリアービタ及びこれらを設けたメモリ制御装置 | |
EP3327521B1 (en) | Duplexing process control device | |
JP2010026762A (ja) | データ転送装置及びデータ転送方法。 | |
JP4738756B2 (ja) | 情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20150612 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160427 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170330 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170411 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170526 |
|
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: 20170613 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20170626 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6176058 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |