JP7376459B2 - 伝送回路 - Google Patents

伝送回路 Download PDF

Info

Publication number
JP7376459B2
JP7376459B2 JP2020198222A JP2020198222A JP7376459B2 JP 7376459 B2 JP7376459 B2 JP 7376459B2 JP 2020198222 A JP2020198222 A JP 2020198222A JP 2020198222 A JP2020198222 A JP 2020198222A JP 7376459 B2 JP7376459 B2 JP 7376459B2
Authority
JP
Japan
Prior art keywords
data
port ram
dual port
bit width
bridge
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
JP2020198222A
Other languages
English (en)
Other versions
JP2022086294A (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.)
Nihon Dempa Kogyo Co Ltd
Original Assignee
Nihon Dempa Kogyo 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 Nihon Dempa Kogyo Co Ltd filed Critical Nihon Dempa Kogyo Co Ltd
Priority to JP2020198222A priority Critical patent/JP7376459B2/ja
Publication of JP2022086294A publication Critical patent/JP2022086294A/ja
Application granted granted Critical
Publication of JP7376459B2 publication Critical patent/JP7376459B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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

  • Communication Control (AREA)

Description

本発明は、伝送回路に関する。
HPS(Hard Processor System)とFPGA(Field Programmable Gate Array)とを接続して使用する方法が知られている(例えば、非特許文献1を参照)。
日本アルテラ株式会社,「AXIバスとFPGAインターコネクト」,[online],[令和2年10月7日検索],インターネット<URL:https://www.aps-web.jp/wp-data/wp-content/uploads/2019/12/mag-altera-v11-technote.pdf>
HPSとFPGAを用いてシリアルデータをパラレルデータに変換する回路を構成する場合、HPSとFPGAとは、ブリッジ回路を用いてデータを送受信する。HPSが有する送信側ブリッジからFPGAが有する受信側ブリッジに複数のバイトデータから構成されるデータを送信した場合、受信側ブリッジからバイトデータを出力する順序が一定でないという場合がある。このような場合、受信側ブリッジの後段の回路において、正しい順序で複数のバイトデータを取得できないという問題があった。
そこで、本発明はこれらの点に鑑みてなされたものであり、正しい順序でデータを出力できる伝送回路を提供することを目的とする。
本発明の態様に係る伝送回路は、HPS(Hard Processor System)部とFPGA(Field Programmable Gate Array)部とを備える伝送回路であって、前記HPS部は、CPUと送信側ブリッジとを有しており、前記FPGA部は、受信側ブリッジとデュアルポートRAMとカウンタとを有しており、前記CPUは、受信したシリアルデータをパラレルデータに変換した第1ビット幅のデータを、前記第1ビット幅のデータに関連付けられたライトアドレスとともに出力し、前記送信側ブリッジは、前記CPUから受けた前記第1ビット幅のデータを、前記第1ビット幅よりも長い第2ビット幅のデータに変換して、前記第2ビット幅のデータと前記ライトアドレスとを前記受信側ブリッジに送信し、前記受信側ブリッジは、前記送信側ブリッジから受信した前記第2ビット幅のデータを前記第1ビット幅の単位で前記ライトアドレスが示す前記デュアルポートRAMのアドレスに書き込み、前記カウンタは、リードアドレスを生成して前記デュアルポートRAMに入力するとともに、前記デュアルポートRAMが出力するデータを外部回路が受け取るために使用するクロックを前記外部回路に出力し、前記デュアルポートRAMは、前記リードアドレスが示す前記デュアルポートRAMのアドレスに記憶したデータを、前記第1ビット幅の単位で外部回路に出力する。
前記カウンタは、前記デュアルポートRAMの記憶領域の全てに前記データが記憶されていることを条件として、前記リードアドレスを前記デュアルポートRAMに入力するとともに、前記クロックを前記外部回路に出力してもよい。
前記カウンタは、前記クロックとともに、前記デュアルポートRAMが前記データを出力する期間を示すチップセレクト信号と、前記デュアルポートRAMが出力する前記データの終端を示すエンド信号とを出力してもよい。
本発明によれば、正しい順序でデータを出力できるという効果を奏する。
本実施形態に係る伝送回路10の構成を示す図である。 送信側ブリッジ133がパラレルデータのデータ幅を変換する動作を説明するための図である。 伝送回路10の外部出力信号の一例を説明するための図である。 変形例に係る伝送回路10の構成を示す図である。
[伝送回路10の構成]
図1は、本実施形態に係る伝送回路10の構成を示す図である。伝送回路10は、出力回路1が出力したシリアルデータをパラレルデータに変換し、変換したパラレルデータを入力回路2に出力する回路である。
図1に示すように、伝送回路10は、HPS部11とFPGA部12とを備える。HPS部11は、入力部131とCPU(Central Processing Unit)132と送信側ブリッジ133とを有する。FPGA部12は、受信側ブリッジ134とデュアルポートRAM(Random Access Memory)135とカウンタ136と出力部137とを有する。
入力部131は、例えばLAN(Local Area Network)コントローラである。入力部131は、出力回路1が出力したシリアルデータを受信する。入力部131は、受信したシリアルデータをCPU132に出力する。
CPU132は、プログラムを実行することにより伝送回路10を制御するプロセッサである。CPU132は、入力部131が受信したシリアルデータをパラレルデータに変換し、変換したパラレルデータに関連付けられたライトアドレスを生成する。ライトアドレスは、例えばパラレルデータに変換したデータの順序に合わせて昇順になるように生成されるアドレスである。
CPU132は、受信したシリアルデータをパラレルデータに変換した第1ビット幅のデータを、第1ビット幅に関連付けられたライトアドレスとともに出力する。第1ビット幅は、送信側ブリッジ133が受けることが可能なビット幅であり、例えば8ビットである。
送信側ブリッジ133は、HPS部11がFPGA部12にデータを送信するためのバスブリッジである。送信側ブリッジ133は、CPU132が出力したパラレルデータのビット幅を変換する。送信側ブリッジ133は、CPU132から受けた第1ビット幅のデータを、第1ビット幅よりも長い第2ビット幅のデータに変換して、第2ビット幅のデータとライトアドレスとを受信側ブリッジ134に送信する。第2ビット幅は、送信側ブリッジ133と受信側ブリッジ134との間のバスのデータ幅であり、例えば32ビットである。
図2は、送信側ブリッジ133がパラレルデータのデータ幅を変換する動作を説明するための図である。図2(a)は、送信側ブリッジ133がCPU132から受けた第1ビット幅のデータを示している。図2(b)は、送信側ブリッジ133が受けた第1ビット幅のデータを第2ビット幅に変換したデータを示している。
CPU132は、受信した32ビットのシリアルデータを、図2(a)に示す第1ビット幅(8ビットの幅)のパラレルデータであるデータD(D1~D4)に変換する。送信側ブリッジ133は、図2(b)に示す、第1ビット幅である8ビットと第2ビット幅である32ビットとの差である24ビットの拡張データを生成する。拡張データの値は任意であり、例えば値が0のデータである。送信側ブリッジ133は、生成した拡張データを用いることにより、複数のデータDそれぞれを第2ビット幅のパラレルデータであるデータE(E1~E4)に変換する。
送信側ブリッジ133は、データEそれぞれとCPU132が出力したライトアドレスとを関連付けて受信側ブリッジ134に送信する。送信側ブリッジ133は、例えば、データE1と、データE1に含まれるデータD1に関連付けられたライトアドレスと、を関連付けて受信側ブリッジ134に送信する。
受信側ブリッジ134は、HPS部11が送信したデータを受信するためのバスブリッジである。受信側ブリッジ134は、送信側ブリッジ133が出力したパラレルデータをデュアルポートRAM135に書き込む。受信側ブリッジ134は、送信側ブリッジ133から受信した第2ビット幅のデータを第1ビット幅の単位でライトアドレスが示すデュアルポートRAM135のアドレスに書き込む。
受信側ブリッジ134は、例えば図2(b)に示すデータE1を、データE1に含まれるデータD1に関連付けられたライトアドレスが示すデュアルポートRAM135のアドレスに書き込む。このように、デュアルポートRAM135にライトアドレスを用いて書き込むことで、送信側ブリッジ133がデータを送信した順序とデュアルポートRAM135のアドレスの順序とは一致する。
その結果、送信側ブリッジ133がデータを送信した順序と受信側ブリッジ134がデュアルポートRAM135にデータを書き込む順序とが異なる場合であっても、受信側ブリッジ134は、デュアルポートRAM135に正しい順序でデータを書き込むことができる。
デュアルポートRAM135は、受信側ブリッジ134がデータを書き込むポートと出力部137にデータを出力するポートとを有するRAMである。デュアルポートRAM135は、カウンタ136が生成したリードアドレスが示すデュアルポートRAM135のアドレスに記憶したデータを、第1ビット幅の単位で外部回路に出力する。リードアドレスは、例えばデュアルポートRAMの最初のアドレスから昇順になるように生成されるアドレスである。外部回路は、例えば入力回路2である。デュアルポートRAM135は、出力部137を介してデータを出力する。
このように、デュアルポートRAM135に記憶されたデータを、リードアドレスを用いて出力することで、デュアルポートRAM135は、送信側ブリッジ133がデータを送信した順序と同じ順序で外部回路にデータを出力することができる。その結果、伝送回路10は、出力回路1が出力したデータの順序と同じ順序で入力回路2にデータを送信することができる。
カウンタ136は、リードアドレスを生成するためのカウンタ回路を備える。カウンタ136は、リードアドレスを生成してデュアルポートRAM135に入力するとともに、デュアルポートRAM135が出力するデータを外部回路が受け取るために使用するクロックを外部回路に出力する。カウンタ136は、出力部137を介してクロックを出力する。このように、カウンタ136がクロックを出力することで、外部回路は、クロックを生成しなくてもデータを取得できる。
カウンタ136は、クロックとともに、デュアルポートRAM135がデータを出力する期間を示すチップセレクト信号と、デュアルポートRAM135が出力するデータの終端を示すエンド信号とを出力してもよい。カウンタ136は、出力部137を介してチップセレクト信号とエンド信号とを出力する。
図3は、伝送回路10の外部出力信号の一例を説明するための図である。伝送回路10は、出力データ、チップセレクト信号、エンド信号及びクロックを出力する。出力データは、デュアルポートRAM135が出力した複数の第1ビット幅のデータである。図3においては、デュアルポートRAM135に記憶されたN個の第1ビット幅のデータを出力する。カウンタ136が出力するクロックは、例えば伝送回路10が動作している時刻において連続して出力されている。
時刻T1において、デュアルポートRAM135は、出力データの最初のデータであるデータ0の出力を開始する。カウンタ136は、データ0の出力の開始とともに、チップセレクト信号のレベルをロウレベルからハイレベルに変化させる。時刻T2において、デュアルポートRAM135は、出力データの終端のデータであるデータN-1の出力を開始する。カウンタ136は、データN-1の出力の開始とともに、エンド信号のレベルをロウレベルからハイレベルに変化させる。
時刻T3において、デュアルポートRAM135は、データの出力を終了する。カウンタ136は、データの出力の終了とともに、チップセレクト信号及びエンド信号をハイレベルからロウレベルに変化させる。このように動作することで、伝送回路10の後段の外部回路は、伝送回路10がデータの出力を開始する時刻及び終了する時刻を検出することができる。
図1に戻って、カウンタ136は、デュアルポートRAM135の記憶領域の全てにデータが記憶されていることを条件として、リードアドレスをデュアルポートRAMに入力するとともに、クロックを外部回路に出力してもよい。例えば、デュアルポートRAM135の記憶容量がNバイトであり、Nバイトのうち1バイト毎にアドレスが関連付けられている場合、カウンタ136は、カウンタ回路を0からN-1まで動作させる。
このように動作することで、カウンタ136は、リードアドレスを容易に生成することができる。さらに、データを出力する時刻にのみクロックを出力することで、後段の外部回路は、チップセレクト信号及びエンド信号を取得せずにデータが出力されている時刻を検出することができる。
出力部137は、例えばLVDS(Low Voltage Differential Signaling)トランスミッタである。出力部137は、例えばデュアルポートRAM135が出力した第1ビット幅のデータとカウンタ136が出力したクロック、チップセレクト信号及びエンド信号とを外部回路である入力回路2に出力する。
[変形例]
以上の説明においては、CPU132が生成したライトアドレスが示すデュアルポートRAM135のアドレスにデータを書き込み、カウンタ136が生成したリードアドレスが示すデュアルポートRAM135のアドレスに記憶されたデータを出力した。これに対して、伝送回路10は、デュアルポートRAM135に置き換えてFIFO(First In, First Out)バッファを用いてもよい。
図4は、変形例に係る伝送回路10の構成を示す図である。図4に示す伝送回路10は、FIFO138を有する点で図1に示す伝送回路10と異なり、他の点において同じである。FIFO138は、例えばFIFOバッファである。FIFO138は、受信側ブリッジ134が出力したデータを記憶する。FIFO138は、データを記憶した順序と同じ順序で出力部137にデータを出力する。
FIFO138を用いる場合、送信側ブリッジ133は、例えば複数のデータDそれぞれにおいてトランザクションを発生させることにより、複数のデータDを受信側ブリッジ134に送信する。このように複数のデータDを一度に送信せずに、データDを1つ送信する度にトランザクションを終了させることで、受信側ブリッジ134は、正しい順序でデータをFIFO138に書き込むことができる。その結果、伝送回路10は、データとアドレスとを関連付けて伝送しない場合であっても、正しい順序でデータを出力できる。
[伝送回路10による効果]
以上説明したように、伝送回路10は、シリアルデータをパラレルデータに変換した第1ビット幅のデータと第1ビット幅のデータに関連付けられたライトアドレスを出力するCPU132と、第1ビット幅のパラレルデータを第2ビット幅のパラレルデータに変換する送信側ブリッジ133と、ライトアドレスが示すデュアルポートRAM135のアドレスに第2ビット幅のデータを第1ビット幅の単位で書き込む受信側ブリッジ134と、リードアドレスを生成してデュアルポートRAM135に入力するカウンタ136と、を有する。
そして、デュアルポートRAM135が、リードアドレスが示すデュアルポートRAMのアドレスに記憶したデータを、第1ビット幅の単位で外部回路に出力することで、伝送回路10は、送信側ブリッジ133が送信したデータの順序と受信側ブリッジ134がデュアルポートRAM135に書き込む順序とが異なる場合であっても、正しい順序のデータを後段の外部回路に出力できる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の全部又は一部は、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果を併せ持つ。
1 出力回路
2 入力回路
10 伝送回路
11 HPS部
12 FPGA部
131 入力部
132 CPU
133 送信側ブリッジ
134 受信側ブリッジ
135 デュアルポートRAM
136 カウンタ
137 出力部
138 FIFO

Claims (3)

  1. HPS(Hard Processor System)部とFPGA(Field Programmable Gate Array)部とを備える伝送回路であって、
    前記HPS部は、CPUと送信側ブリッジとを有しており、
    前記FPGA部は、受信側ブリッジとデュアルポートRAMとカウンタとを有しており、
    前記CPUは、受信したシリアルデータをパラレルデータに変換した第1ビット幅のデータを、前記第1ビット幅のデータに関連付けられたライトアドレスとともに出力し、
    前記送信側ブリッジは、前記CPUから受けた前記第1ビット幅のデータを、前記第1ビット幅よりも長い第2ビット幅のデータに変換して、前記第2ビット幅のデータと前記ライトアドレスとを前記受信側ブリッジに送信し、
    前記受信側ブリッジは、前記送信側ブリッジから受信した前記第2ビット幅のデータを前記第1ビット幅の単位で前記ライトアドレスが示す前記デュアルポートRAMのアドレスに書き込み、
    前記カウンタは、リードアドレスを生成して前記デュアルポートRAMに入力するとともに、前記デュアルポートRAMが出力するデータを外部回路が受け取るために使用するクロックを前記外部回路に出力し、
    前記デュアルポートRAMは、前記リードアドレスが示す前記デュアルポートRAMのアドレスに記憶したデータを、前記第1ビット幅の単位で外部回路に出力する、
    伝送回路。
  2. 前記カウンタは、前記デュアルポートRAMの記憶領域の全てに前記データが記憶されていることを条件として、前記リードアドレスを前記デュアルポートRAMに入力するとともに、前記クロックを前記外部回路に出力する、
    請求項1に記載の伝送回路。
  3. 前記カウンタは、前記クロックとともに、前記デュアルポートRAMが前記データを出力する期間を示すチップセレクト信号と、前記デュアルポートRAMが出力する前記データの終端を示すエンド信号とを出力する、
    請求項1又は2に記載の伝送回路。
JP2020198222A 2020-11-30 2020-11-30 伝送回路 Active JP7376459B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020198222A JP7376459B2 (ja) 2020-11-30 2020-11-30 伝送回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020198222A JP7376459B2 (ja) 2020-11-30 2020-11-30 伝送回路

Publications (2)

Publication Number Publication Date
JP2022086294A JP2022086294A (ja) 2022-06-09
JP7376459B2 true JP7376459B2 (ja) 2023-11-08

Family

ID=81894344

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020198222A Active JP7376459B2 (ja) 2020-11-30 2020-11-30 伝送回路

Country Status (1)

Country Link
JP (1) JP7376459B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115221082B (zh) * 2022-07-18 2023-04-18 中国兵器装备集团自动化研究所有限公司 一种数据缓存方法、装置及存储介质
CN117640783B (zh) * 2024-01-25 2024-04-09 富瀚微电子(成都)有限公司 一种数据传输方法、系统、电子设备以及可读介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003298601A (ja) 2002-04-02 2003-10-17 Canon Inc パケット並替装置、オーバーフロー処理方法、プログラム、及び記憶媒体
JP2013132006A (ja) 2011-12-22 2013-07-04 Renesas Electronics Corp 整列回路及び受信装置
JP2014194619A (ja) 2013-03-28 2014-10-09 Fujitsu Semiconductor Ltd バッファ回路及び半導体集積回路

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003298601A (ja) 2002-04-02 2003-10-17 Canon Inc パケット並替装置、オーバーフロー処理方法、プログラム、及び記憶媒体
JP2013132006A (ja) 2011-12-22 2013-07-04 Renesas Electronics Corp 整列回路及び受信装置
JP2014194619A (ja) 2013-03-28 2014-10-09 Fujitsu Semiconductor Ltd バッファ回路及び半導体集積回路

Also Published As

Publication number Publication date
JP2022086294A (ja) 2022-06-09

Similar Documents

Publication Publication Date Title
JP7376459B2 (ja) 伝送回路
JP5086709B2 (ja) データ入出力エラー検出機能を有する半導体メモリ装置
JP2009021981A (ja) エラー検出コード生成装置および方法
US8270229B2 (en) Semiconductor memory apparatus
KR20170083366A (ko) 데이터의 루프백을 수행하는 시스템 온 칩과 집적 회로, 및 이들을 포함하는 모바일 장치
TWI604303B (zh) 輸入輸出擴展晶片以及其驗證方法
KR101311963B1 (ko) 파워 어택으로부터 안전하게 데이터를 쓰고 읽을 수 있는반도체 메모리 장치 및 그 방법
JP5241475B2 (ja) ハッシュ値演算装置及びハッシュ値演算方法及びハッシュ値演算プログラム
KR102570454B1 (ko) 반도체 메모리 장치 및 그의 동작 방법
TWI397855B (zh) 減少接腳數之方法以及使用其之微處理器
US11100267B1 (en) Multi dimensional memory compression using bytewide write enable
US10452579B2 (en) Managing input/output core processing via two different bus protocols using remote direct memory access (RDMA) off-loading processing system
JP2007293845A (ja) 直列データ源からのデータを並列フォーマットで読取る方法および装置
JP4212508B2 (ja) パケット生成装置
US20170013159A1 (en) Serial data transfer apparatus, serial data transfer method, image formation apparatus, and recording medium
US7263571B2 (en) Bus segment decoder
JP2017215732A (ja) メモリおよび情報処理装置
US7024618B2 (en) Transmission error checking in result forwarding
US20160371414A1 (en) Circuit design support method, circuit design support apparatus, and recording medium
Specification Virtex-5 Family Overview
JP4324968B2 (ja) フレーム生成装置
US20160350316A1 (en) Data processing circuit, data storage device including the same, and operating method thereof
KR20180068346A (ko) 반도체 장치 및 그의 동작 방법
JPH02212952A (ja) メモリアクセス制御方式
JP2007219874A (ja) データ転送制御装置及びデータ転送制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20221209

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231006

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20231012

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: 20231024

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231026

R150 Certificate of patent or registration of utility model

Ref document number: 7376459

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150