JPH02149156A - 通信プロセッサ装置 - Google Patents
通信プロセッサ装置Info
- Publication number
- JPH02149156A JPH02149156A JP1260393A JP26039389A JPH02149156A JP H02149156 A JPH02149156 A JP H02149156A JP 1260393 A JP1260393 A JP 1260393A JP 26039389 A JP26039389 A JP 26039389A JP H02149156 A JPH02149156 A JP H02149156A
- Authority
- JP
- Japan
- Prior art keywords
- register
- instruction
- address
- bit
- bits
- 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.)
- Granted
Links
- 238000004891 communication Methods 0.000 title claims abstract description 28
- 238000012545 processing Methods 0.000 claims abstract description 57
- 230000006870 function Effects 0.000 claims abstract description 39
- 230000004044 response Effects 0.000 abstract description 18
- 230000007246 mechanism Effects 0.000 abstract description 15
- 238000012546 transfer Methods 0.000 description 60
- 238000010586 diagram Methods 0.000 description 29
- 238000012217 deletion Methods 0.000 description 9
- 230000037430 deletion Effects 0.000 description 9
- 238000003780 insertion Methods 0.000 description 9
- 230000037431 insertion Effects 0.000 description 9
- 238000006243 chemical reaction Methods 0.000 description 8
- 238000000034 method Methods 0.000 description 8
- 238000001514 detection method Methods 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 101150073762 arl2bp gene Proteins 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 235000015115 caffè latte Nutrition 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 229930186657 Lat Natural products 0.000 description 1
- 101100258328 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) crc-2 gene Proteins 0.000 description 1
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- KTUFKADDDORSSI-UHFFFAOYSA-N acebutolol hydrochloride Chemical compound Cl.CCCC(=O)NC1=CC=C(OCC(O)CNC(C)C)C(C(C)=O)=C1 KTUFKADDDORSSI-UHFFFAOYSA-N 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000012913 prioritisation Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
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/10—Program control for peripheral devices
- G06F13/12—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
- G06F13/124—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
- G06F13/128—Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine for dedicated transfers to a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/12—Protocol engines
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A、産業上の利用分野
本発明は特に通信コントローラに適用できるコンピュー
タアーキテクチャに関する。O8Iの標準によってサポ
ートされるCCITTプロトコルは、SNAのような他
のプロトコルも同様にサポートされるが、本発明のアー
キテクチャについて基礎となるものと考えられる。本発
明を有益に適用しうる特定の装置は、ネットワークイン
ターフェース、大規模システムのフロントエンド通信コ
ントローラ及び遠隔通信スイッチングノードを含む。本
アーキテクチャはネットワークゲートウェイやプロトコ
ル変換にも適用できる。
タアーキテクチャに関する。O8Iの標準によってサポ
ートされるCCITTプロトコルは、SNAのような他
のプロトコルも同様にサポートされるが、本発明のアー
キテクチャについて基礎となるものと考えられる。本発
明を有益に適用しうる特定の装置は、ネットワークイン
ターフェース、大規模システムのフロントエンド通信コ
ントローラ及び遠隔通信スイッチングノードを含む。本
アーキテクチャはネットワークゲートウェイやプロトコ
ル変換にも適用できる。
B、従来技術及びその課題
複数の通信ラインとデータ処理装置との間の信号トラフ
ィックを集信するためプログラム可能な通信コントロー
ラを使用することはそれ自体新しいことではない。たと
えば、米国特許第3863226号、4156796号
、4156932号、4188665号、432854
3号及び4484263号は市販の汎用マイクロプロセ
ッサ及び非同期レシーバ/トランシーバ(USART)
を用いてそのようなコントローラを実現する方法を開示
している。
ィックを集信するためプログラム可能な通信コントロー
ラを使用することはそれ自体新しいことではない。たと
えば、米国特許第3863226号、4156796号
、4156932号、4188665号、432854
3号及び4484263号は市販の汎用マイクロプロセ
ッサ及び非同期レシーバ/トランシーバ(USART)
を用いてそのようなコントローラを実現する方法を開示
している。
関連出願である1988年8月2日付けの米国特許出願
第227832号はプロトコルの融通性の目的で媒体ア
クセス(MAC)層を取扱うハードウェア援助機構を開
示している。
第227832号はプロトコルの融通性の目的で媒体ア
クセス(MAC)層を取扱うハードウェア援助機構を開
示している。
ところで、層構造の通信プロトコルで繰返し出てくるヘ
ッダ及びフレームの処理機能を、高スループツトのリア
ルタイム通信において現在及び将来の要求に適切な速度
及びプロトコルのレベルで処理する必要がある。この問
題は本発明によって今日の層構造プロトコル(たとえば
O8I標準)の全てのレベルで繰返し出てくるヘッダ及
びフレームの処理機能の処理を高速化するための専用の
回路及び関連する命令を設けることで解決されている。
ッダ及びフレームの処理機能を、高スループツトのリア
ルタイム通信において現在及び将来の要求に適切な速度
及びプロトコルのレベルで処理する必要がある。この問
題は本発明によって今日の層構造プロトコル(たとえば
O8I標準)の全てのレベルで繰返し出てくるヘッダ及
びフレームの処理機能の処理を高速化するための専用の
回路及び関連する命令を設けることで解決されている。
こうした回路及び命令は関連するヘッダ及びフレームの
処理オペレーションヲ単一のマシンサイクルで実行でき
るという特徴を含み、またこの特徴はO8Iの物理層、
データリンク層、ネットワーク層、トランスポート層、
セツション層、プレゼンテーション層及びアプリケーシ
ョン層ならびにその他の層構造通信プロトコルでの同様
なオペレーションに対応するのに適した融通性を有する
。従来技術ではリンクアクセス機能の処理のための通信
制御プロセッサが使用され、リンクアクセスレベルより
上の通信プロトコル層を処理するため中間又はホストの
システムでよシ強力なプロセッサが一般には使用されて
いる。
処理オペレーションヲ単一のマシンサイクルで実行でき
るという特徴を含み、またこの特徴はO8Iの物理層、
データリンク層、ネットワーク層、トランスポート層、
セツション層、プレゼンテーション層及びアプリケーシ
ョン層ならびにその他の層構造通信プロトコルでの同様
なオペレーションに対応するのに適した融通性を有する
。従来技術ではリンクアクセス機能の処理のための通信
制御プロセッサが使用され、リンクアクセスレベルより
上の通信プロトコル層を処理するため中間又はホストの
システムでよシ強力なプロセッサが一般には使用されて
いる。
従来の通信コントローラにおいてCPU部を実現するの
に用いられるような現行の汎用マイクロプロセッサ及び
デジタル信号プロセッサはリンク制御又は媒体アクセス
層よシ上の通信プロトコルの層におけるヘッダ及びフレ
ーム情報の処理に関連するサポート機能を取扱うのには
適していないと考えられ、また従来技術ではリンクアク
セスレベルでそのようなサポートの必要性があるという
ことの認識もされていない。本発明ではそのようなサポ
ートが高速の媒体(T−1,T−2及び光ファイバなど
)を効率的に利用することの必要性を認識している。換
言すれば、現在及び将来の高速リンクに課せられる処理
負荷は、リンク制御層よシ上でヘッダ及びフレームの処
理機能の負荷を外さなければ、有効な媒体の使用を制限
するスループットの減少を伴ってIlo及び処理の障害
が必然的に生ずるものであることを本発明では認識して
いるのである。
に用いられるような現行の汎用マイクロプロセッサ及び
デジタル信号プロセッサはリンク制御又は媒体アクセス
層よシ上の通信プロトコルの層におけるヘッダ及びフレ
ーム情報の処理に関連するサポート機能を取扱うのには
適していないと考えられ、また従来技術ではリンクアク
セスレベルでそのようなサポートの必要性があるという
ことの認識もされていない。本発明ではそのようなサポ
ートが高速の媒体(T−1,T−2及び光ファイバなど
)を効率的に利用することの必要性を認識している。換
言すれば、現在及び将来の高速リンクに課せられる処理
負荷は、リンク制御層よシ上でヘッダ及びフレームの処
理機能の負荷を外さなければ、有効な媒体の使用を制限
するスループットの減少を伴ってIlo及び処理の障害
が必然的に生ずるものであることを本発明では認識して
いるのである。
もちろん、この分野で主要な進歩はいくつかある。たと
えば、通信の制御に適用しうるマイクロプロセッサやV
LSIの技術における改善、プロトコル自体の進歩及び
並行処理における改善などである。これらの進歩は本発
明で認識した問題を軽減するかもしれないが、本発明の
如きよシ効率的かつ完全な解決法を提供するものではな
い。
えば、通信の制御に適用しうるマイクロプロセッサやV
LSIの技術における改善、プロトコル自体の進歩及び
並行処理における改善などである。これらの進歩は本発
明で認識した問題を軽減するかもしれないが、本発明の
如きよシ効率的かつ完全な解決法を提供するものではな
い。
本発明は上述の如き技術的課題を解決することを目的と
している。
している。
C8課題を解決するための手段
上記目的を達成するため、層構造の通信プロトコル全実
行するための本発明の通信プロセッサは、第1及び第2
のタイプの命令を記憶する手段を有し、上記第1のタイ
プの命令は層構造の通信プロトコルの各層において処理
ヘッダ及びフレーム情報で頻出する機能に関連する所定
のオペレーションを指定するものでアシ、上記第2のタ
イプの命令は上記所定のオペレーション以外の機能を遂
行するためのオペレーションを指定するものであり、上
記所定の機能はそれぞれ複数マシンサイクルを要するた
めにシステムの処理のスループットを制限するものであ
り、上記第1のタイプの命令に応答して各命令によ′つ
て指定されたオペレーションを単一のマシンサイクルで
遂行する特別の目的の回路手段と、上記第2のタイプの
命令に応答して各命令によって指定された機能を遂行す
る汎用演算論理機構と、を具備することを特徴としてい
る。
行するための本発明の通信プロセッサは、第1及び第2
のタイプの命令を記憶する手段を有し、上記第1のタイ
プの命令は層構造の通信プロトコルの各層において処理
ヘッダ及びフレーム情報で頻出する機能に関連する所定
のオペレーションを指定するものでアシ、上記第2のタ
イプの命令は上記所定のオペレーション以外の機能を遂
行するためのオペレーションを指定するものであり、上
記所定の機能はそれぞれ複数マシンサイクルを要するた
めにシステムの処理のスループットを制限するものであ
り、上記第1のタイプの命令に応答して各命令によ′つ
て指定されたオペレーションを単一のマシンサイクルで
遂行する特別の目的の回路手段と、上記第2のタイプの
命令に応答して各命令によって指定された機能を遂行す
る汎用演算論理機構と、を具備することを特徴としてい
る。
以下、本発明の作用を実施例と共に説明する。
D、実施例
はじめに本発明の実施例を概説する。本発明は特別目的
の通信プロトコルプロセッサ(cpp)に関し、今日の
層構造の通信プロトコルの全ての層で頻出するヘッダ及
びフレームの処理機能を実現する専用のユニットを有す
る新しく定義された命令アーキテクチャに関する。その
ような専用ユニットは各オペレーションを高速に遂行す
るものである。これらの専用ユニットに加えて、cpp
は汎用演算論理機構(ALU)を有する。専用ユニット
及び関連するレジスタはヘッダ及びフレーム情報の処理
オペレーションを単一のマシンサイクルで実行する。こ
れらのオペレーションは、専用ユニットがない場合には
通常はALUでその実行に複数のマシンサイクルを有す
るもので、特別の処理を必要とする主要な処理負荷とし
て認識されたものである。
の通信プロトコルプロセッサ(cpp)に関し、今日の
層構造の通信プロトコルの全ての層で頻出するヘッダ及
びフレームの処理機能を実現する専用のユニットを有す
る新しく定義された命令アーキテクチャに関する。その
ような専用ユニットは各オペレーションを高速に遂行す
るものである。これらの専用ユニットに加えて、cpp
は汎用演算論理機構(ALU)を有する。専用ユニット
及び関連するレジスタはヘッダ及びフレーム情報の処理
オペレーションを単一のマシンサイクルで実行する。こ
れらのオペレーションは、専用ユニットがない場合には
通常はALUでその実行に複数のマシンサイクルを有す
るもので、特別の処理を必要とする主要な処理負荷とし
て認識されたものである。
このようなヘッダ機能には以下のものが含まれる。
プログラム可能々ビットオペレーションによるブランチ
: 即値データのビットによるブランチは既知であるが、ブ
ランチ条件を示すビットに与えられた優先順位の選択又
はビットの並行評価を提供するものではない。米国特許
第4573118号は条件ビットの優先順位の並行評価
を伴うビットオペレーションによるブランチを開示して
いるが、本発明の如き、ユーザプログラム制御の下で優
先順位を変える機能を有するものではない。
: 即値データのビットによるブランチは既知であるが、ブ
ランチ条件を示すビットに与えられた優先順位の選択又
はビットの並行評価を提供するものではない。米国特許
第4573118号は条件ビットの優先順位の並行評価
を伴うビットオペレーションによるブランチを開示して
いるが、本発明の如き、ユーザプログラム制御の下で優
先順位を変える機能を有するものではない。
レジスタ再形成−(シフト、マスク及びスワップ)オペ
レーション: シフト、マスク及びスワップはそれ自体既知であるが、
本発明はこれら6つの全ての機能を単一の命令でしかも
単一のマシンサイクルで遂行することによってこれらの
オペレーションを改善している。
レーション: シフト、マスク及びスワップはそれ自体既知であるが、
本発明はこれら6つの全ての機能を単一の命令でしかも
単一のマシンサイクルで遂行することによってこれらの
オペレーションを改善している。
アドレス処理オペレーション:
本発明の回路ではヘッダ中の経路指定情報を変換するた
めの連関一致アドレス指定による命令を用いることによ
シ、変換オペレーションを高速化し、ターゲットアドレ
ス情報のために必要な記憶容量を減じている。
めの連関一致アドレス指定による命令を用いることによ
シ、変換オペレーションを高速化し、ターゲットアドレ
ス情報のために必要な記憶容量を減じている。
同様な取扱いとしてフレーム機能には以下のものが含ま
れている。
れている。
CRC(巡回冗長検査)計算:
特別のCRC回路が種々のプロトコルのためのエラーチ
エツクの迅速な実行をサポートする。これは標準的な1
6ビツト又は62ビツトのCRC多項式のサポートを可
能とする。HDLC%DDCMP及びB I 5YNC
を含む標準的なプロトコルのほとんどはCRCチエツク
を使用する。これらの回路は任意の多項式を高速化する
ようプログラムすることができる。
エツクの迅速な実行をサポートする。これは標準的な1
6ビツト又は62ビツトのCRC多項式のサポートを可
能とする。HDLC%DDCMP及びB I 5YNC
を含む標準的なプロトコルのほとんどはCRCチエツク
を使用する。これらの回路は任意の多項式を高速化する
ようプログラムすることができる。
ビット’11 人/ All除オペレーション:特別の
ビット挿入/削除回路は各プロトコル層における特別の
制御キャラクタに関するデータについてのトランスベア
レンジ−を提供する。そのようなトランスペアレンジ−
はフレームの始点及び終点を示す特別の制御キャラクタ
と実際のデータとを分離するためにHDLCのようなプ
ロトコルにおいて必要とされる。
ビット挿入/削除回路は各プロトコル層における特別の
制御キャラクタに関するデータについてのトランスベア
レンジ−を提供する。そのようなトランスペアレンジ−
はフレームの始点及び終点を示す特別の制御キャラクタ
と実際のデータとを分離するためにHDLCのようなプ
ロトコルにおいて必要とされる。
特別キャラクタ検出オペレーション:
特別の命令で用いられる専用の回路がBISYNC及び
DDCMP’Th含むキャラクタ指向プロトコルのほと
んどの場合に必要とされるようなキャラクタプロトコル
機能を提供する。
DDCMP’Th含むキャラクタ指向プロトコルのほと
んどの場合に必要とされるようなキャラクタプロトコル
機能を提供する。
上述の機能の実行を専用ユニットを介して働く新しいア
ーキテクチャの命令のプログラム可能なセットに移行さ
せることによって、各ユニットを用いて異なる通信ライ
ン及びプロトコルを取扱うための融通性を保持しながら
、多くのUACC(Universal async
hronous communicationsco
ntroller )の機能を提供することができる。
ーキテクチャの命令のプログラム可能なセットに移行さ
せることによって、各ユニットを用いて異なる通信ライ
ン及びプロトコルを取扱うための融通性を保持しながら
、多くのUACC(Universal async
hronous communicationsco
ntroller )の機能を提供することができる。
CPPはデータリンク制御オペレーションのための専用
のレジスタの特別のセットを含む。サポートされた機能
はHDLC%X、25、SNA%TCP等の標準的なリ
ンクプロトコルにおけるデータの処理を強化する。従来
技術としてのパイプライン方式、並行処理、ブロック転
送、サイクルスチールメモリアクセス手法はさらに性能
を高めるために採用されている。
のレジスタの特別のセットを含む。サポートされた機能
はHDLC%X、25、SNA%TCP等の標準的なリ
ンクプロトコルにおけるデータの処理を強化する。従来
技術としてのパイプライン方式、並行処理、ブロック転
送、サイクルスチールメモリアクセス手法はさらに性能
を高めるために採用されている。
上述のブロック転送の手法はブロック情報の転送及び同
じ情報部分の処理を同時に行い、さらにCRCのような
他のオペレーションの実行及びピット挿入/削除を同時
に行うことを考慮したものである。
じ情報部分の処理を同時に行い、さらにCRCのような
他のオペレーションの実行及びピット挿入/削除を同時
に行うことを考慮したものである。
プロセッサの特徴
CPPは3段式のパイプラインで最高6つまでのオペレ
ーションを並行して実行する能力を有している。分離し
た命令及びデータバスによシ、命令の取出しとデータの
参照をパイプライン化することができる。これらのオペ
レーションは以下のカテゴリの中のいずれでもよい。
ーションを並行して実行する能力を有している。分離し
た命令及びデータバスによシ、命令の取出しとデータの
参照をパイプライン化することができる。これらのオペ
レーションは以下のカテゴリの中のいずれでもよい。
1、算術演算及びレジスタ転送オペレーション2、乗算
オペレーション 3、メモリアクセスオペレーション 4、 データプロトコルのためのヘッダ処理5、 デー
タプロトコルのためのフレーム処理CPPは4つのアド
レスインデックスレジスタ、12個の汎用データレジス
タ及びその他の特別目的のプロトコルサポートレジスタ
を含む。全てのレジスタは62ビツトである。プロセッ
サは64キロワードの命令メモリ及び16メガバイトの
データメモリをサポートできる。第3図はCPPが用い
られる典型的な環境を示している。本アーキテクチャの
特徴及び機能を要約すれば以下の如くとなる。
オペレーション 3、メモリアクセスオペレーション 4、 データプロトコルのためのヘッダ処理5、 デー
タプロトコルのためのフレーム処理CPPは4つのアド
レスインデックスレジスタ、12個の汎用データレジス
タ及びその他の特別目的のプロトコルサポートレジスタ
を含む。全てのレジスタは62ビツトである。プロセッ
サは64キロワードの命令メモリ及び16メガバイトの
データメモリをサポートできる。第3図はCPPが用い
られる典型的な環境を示している。本アーキテクチャの
特徴及び機能を要約すれば以下の如くとなる。
命令検索の高速化のための並行処理及びパイプライン化
の他に、新しく定義された命令を単一のマシンサイクル
で実行することによシスループツトがさらに向上される
。パイプライン化及び並行処理は第2図に示唆される。
の他に、新しく定義された命令を単一のマシンサイクル
で実行することによシスループツトがさらに向上される
。パイプライン化及び並行処理は第2図に示唆される。
特別目的のユニットを設計するにあたっては、データ及
びブランチの依存性を考慮しまた性能を高めるためのプ
ログラミング機能を提供できるような配慮がなされてい
る。
びブランチの依存性を考慮しまた性能を高めるためのプ
ログラミング機能を提供できるような配慮がなされてい
る。
メモリロード/ストア、データシフティング、乗算及び
その他のALUオペレーションは並行してかつ単一のマ
シンサイクルで行われる。
その他のALUオペレーションは並行してかつ単一のマ
シンサイクルで行われる。
参考文献
(1) Hill、 F、、 Peterson、
”Digital SystemsHardvrare
Organiza口on and Design 。
”Digital SystemsHardvrare
Organiza口on and Design 。
Prentice Hall、 1987年(2)
Beaven、 P、A、、 ”Parallel P
rogrammableArray 5tructur
ed CRCgenerator 。
Beaven、 P、A、、 ”Parallel P
rogrammableArray 5tructur
ed CRCgenerator 。
IBM Technical Disclosure
Bulletin。
Bulletin。
1978年10月、第2058頁ないし第2062頁(
3) Hwang、 Kai及びBr1gg5. F
、 A、Computerarchitecture
and Parallel ProcessingMc
Graw Hill、 1984年(4) Tane
nbaum、 A、”5tructured Comp
uterOrganization 、 Prent
ice Hall、 1984年以下、図面を参照しな
がら、実施例を詳述する。
3) Hwang、 Kai及びBr1gg5. F
、 A、Computerarchitecture
and Parallel ProcessingMc
Graw Hill、 1984年(4) Tane
nbaum、 A、”5tructured Comp
uterOrganization 、 Prent
ice Hall、 1984年以下、図面を参照しな
がら、実施例を詳述する。
CPPのアーキテクチャ
第1図は通信プロトコルプロセッサ(cpp)の全体の
アーキテクチャを示す図である。演算論理機構ALU1
は加算(ADD)、減算(SUBTRACT )及び比
較(COMPARE)という基本的な算術演算、OR,
AND及びXORという論理演算ならびに種々のレジス
タ転送演算を提供する。乗算ユニツ)MUL2はスケー
リング及び丸めの機能を有する乗算をサポートする。メ
モリアクセスユニット3、ヘッダ処理ユニット4及びフ
レーム処理ユニット5(これらは本発明に従って主要な
機能を遂行するためのCPPの特別の構成要素を成すも
のである)については後で詳細に説明する。汎用レジス
タスタック6及びアドレスインデックスレジスタスタッ
ク7は制御バス12及びデータバス13を介する処理ユ
ニット1ないし5のための入力及び出力として用いるこ
とのできる内部で可変的に割振ることのできる記憶部分
を含む。
アーキテクチャを示す図である。演算論理機構ALU1
は加算(ADD)、減算(SUBTRACT )及び比
較(COMPARE)という基本的な算術演算、OR,
AND及びXORという論理演算ならびに種々のレジス
タ転送演算を提供する。乗算ユニツ)MUL2はスケー
リング及び丸めの機能を有する乗算をサポートする。メ
モリアクセスユニット3、ヘッダ処理ユニット4及びフ
レーム処理ユニット5(これらは本発明に従って主要な
機能を遂行するためのCPPの特別の構成要素を成すも
のである)については後で詳細に説明する。汎用レジス
タスタック6及びアドレスインデックスレジスタスタッ
ク7は制御バス12及びデータバス13を介する処理ユ
ニット1ないし5のための入力及び出力として用いるこ
とのできる内部で可変的に割振ることのできる記憶部分
を含む。
第1図の下部に示す構成要素8.1ないし8.7を含む
制御ユニット8は演算の実行を制御し及び監視する。命
令レジスタ8.1は命令メモリlRAMから命令を受は
取る。このレジスタ中の命令オペレーションコード(オ
ペコード)ハブコータ8.2でテコードされて、デコー
ダ8.2は制御バス12を介して処理ユニット1ないし
5に制御信号を供給し、データバス13を介して既値デ
ータ又はアドレス情報が転送される。システムクロック
8.6は他の構成要素へタイミング制御信号を供給する
。
制御ユニット8は演算の実行を制御し及び監視する。命
令レジスタ8.1は命令メモリlRAMから命令を受は
取る。このレジスタ中の命令オペレーションコード(オ
ペコード)ハブコータ8.2でテコードされて、デコー
ダ8.2は制御バス12を介して処理ユニット1ないし
5に制御信号を供給し、データバス13を介して既値デ
ータ又はアドレス情報が転送される。システムクロック
8.6は他の構成要素へタイミング制御信号を供給する
。
クロックされた間隔で取出し制御部8.4がlRAMに
対して取出しを行う命令を出す。
対して取出しを行う命令を出す。
データバス13はレジスタスタック6.7と処理ユニッ
ト1ないし5との間で並行データ転送ができるよう複数
の双方向経路を有する。プログラムカウンタ8.5及び
次ブランチ(又は割込み)制御論理8.6は次アドレス
を生成し、そのうちの1つがI RAMアドレスバス1
6を介してlRAMに供給されるためマルチプレクサ8
.7によって選択される。データアドレスDA15はデ
ータバスGD 13’を介するデータ転送を行わせるた
めメモリアクセスユニット3とデータRAMとを接続す
るのに用いられる。
ト1ないし5との間で並行データ転送ができるよう複数
の双方向経路を有する。プログラムカウンタ8.5及び
次ブランチ(又は割込み)制御論理8.6は次アドレス
を生成し、そのうちの1つがI RAMアドレスバス1
6を介してlRAMに供給されるためマルチプレクサ8
.7によって選択される。データアドレスDA15はデ
ータバスGD 13’を介するデータ転送を行わせるた
めメモリアクセスユニット3とデータRAMとを接続す
るのに用いられる。
オペレーションの並行実行は第2図の参照番号20及び
21に示唆されるようなパイプラインの手法を用いて可
能となる。命令nが実行されている間に次の命令n +
1がデコードされその命令に続く命令n+2が取出さ
れる。さらに、3つのオペレーションが1つの命令で要
求されるときは、それらのデコード及び実行は並行して
遂行することができる。そのようなオペレーションにつ
いてのバス転送機構及びパイプラインの手法はよく知ら
れている。
21に示唆されるようなパイプラインの手法を用いて可
能となる。命令nが実行されている間に次の命令n +
1がデコードされその命令に続く命令n+2が取出さ
れる。さらに、3つのオペレーションが1つの命令で要
求されるときは、それらのデコード及び実行は並行して
遂行することができる。そのようなオペレーションにつ
いてのバス転送機構及びパイプラインの手法はよく知ら
れている。
第6図は本CPP31が有効に機能しうる典型的な環境
を示す図である。DRAM32は物理的通信インターフ
ェース34との間でデータを交換するためマルチプレク
サ及び入出力インターフェース3,3とインターフェー
スする。Z RAM35は、インターフェース34で動
的に要求された機能を遂行するようCPPに指令するた
めのアプリケーションプログラムの命令を記憶する。ホ
ストインターフェース66はCPPとホスト処理システ
ムとの間のデータ及びコマンドの双方向転送を維持する
のに必要な体系的初期接続手順信号の交換を行う。ブロ
ック37はこの環境に全体として適合できる層構造のプ
ロトコルアプリケーション及び信号処理機能をあられす
。
を示す図である。DRAM32は物理的通信インターフ
ェース34との間でデータを交換するためマルチプレク
サ及び入出力インターフェース3,3とインターフェー
スする。Z RAM35は、インターフェース34で動
的に要求された機能を遂行するようCPPに指令するた
めのアプリケーションプログラムの命令を記憶する。ホ
ストインターフェース66はCPPとホスト処理システ
ムとの間のデータ及びコマンドの双方向転送を維持する
のに必要な体系的初期接続手順信号の交換を行う。ブロ
ック37はこの環境に全体として適合できる層構造のプ
ロトコルアプリケーション及び信号処理機能をあられす
。
命令フォーマットの定義
命令セットは固定されたフォーマット及び52ビツトの
命令長で設計された。第4図は命令ワードにおけるビッ
ト割当ての詳細な定義を示す図である。典型的な32ビ
ツトの命令はフォーマット定義フィールド及び3つのオ
ペコードフィールドを有する。これらのオペコードフィ
ールドで最高3つまでの個別的なオペレーションを要求
する。
命令長で設計された。第4図は命令ワードにおけるビッ
ト割当ての詳細な定義を示す図である。典型的な32ビ
ツトの命令はフォーマット定義フィールド及び3つのオ
ペコードフィールドを有する。これらのオペコードフィ
ールドで最高3つまでの個別的なオペレーションを要求
する。
フォーマット定義フィールド41は4つの部分(−rな
りちサブフィールド)を有する。2ピツトノサブフイー
ルド42は以下のような3つのタイプの命令フォーマッ
トのうちの1つを指定する。
りちサブフィールド)を有する。2ピツトノサブフイー
ルド42は以下のような3つのタイプの命令フォーマッ
トのうちの1つを指定する。
00−6つの並行オペレーション
01− 任意選択的なレジスタ及びアドレスオペランド
を伴う2つの並行オペレーシ ョン ・ 10−拡張アドレス指定を伴う1つのブラ、ンチオ
ベレーション 各々2ビツトであるサブフィールド43ないし45は対
応するオペコードフィールド1ないし3についての関連
するカテゴリにおけるオペレーションを指定する。各フ
ィールド内のカテゴリは、算術計算、メモリアクセス、
フレーム処理及びヘッダ処理である。
を伴う2つの並行オペレーシ ョン ・ 10−拡張アドレス指定を伴う1つのブラ、ンチオ
ベレーション 各々2ビツトであるサブフィールド43ないし45は対
応するオペコードフィールド1ないし3についての関連
するカテゴリにおけるオペレーションを指定する。各フ
ィールド内のカテゴリは、算術計算、メモリアクセス、
フレーム処理及びヘッダ処理である。
典型的なオペコードフィールド46は5ピツトノオペレ
ーシヨンサブフイールド47及び3ピントのレジスタフ
ィールド48を介して1つのオペレーションを指定する
。
ーシヨンサブフイールド47及び3ピントのレジスタフ
ィールド48を介して1つのオペレーションを指定する
。
これらの特別目的のcppの命令に加えて、この命令セ
ットは前掲の文献(4)に記載された手法を用いるAL
Uオペレーション、乗算オペレーション、メモリロード
オペレーション及ヒメモリストアオペレーションを指定
するための汎用命令を含む。
ットは前掲の文献(4)に記載された手法を用いるAL
Uオペレーション、乗算オペレーション、メモリロード
オペレーション及ヒメモリストアオペレーションを指定
するための汎用命令を含む。
後で説明する第6図ないし第14図は本cpp命令によ
って指定されるオペレーションを遂行するための特別の
目的のユニットを示す図である。
って指定されるオペレーションを遂行するための特別の
目的のユニットを示す図である。
仁の命令セットは以下のような関連オペレーションを有
する命令を含む。
する命令を含む。
命令セット
リ ALU及びメモリロード/ストアオペレーション
FMn RRインデックスAnを用いてメモリからレ
ジスタRRヘロートスル TMn RRインデックスAnを用いてレジスタタR
Rからメモリへストアする RTn RRレジスタnからRRへ転送するARn
RRレジスタRRにレジスタnを加える SRn RRレジスタRRからレジスタnを減する 2)フレーム処理オペレーション *CRCRRレジスタRRでCRCを計算する*BSW
RRRRを用いてビットの挿入又は削除を行う *BCD RRRRが特別のキャラクタを有するとき
にブランチする 3)ヘッダ処理オペレーション *BBD RR,、X RR中の優先ビット検出で
ブランチする(Xはスタック選 択パラメータ) *R8HRRレジスタRRを再形成 *AR8RRRRを用いて新しいアドレスを計算する 4)ブロック転送オペレーション IBMORRRR中の待ち行列コマンドでブロック転送
を遂行する 5)並行オペレーション **EP3 0P1(RR)、0P2(RR)、0P3
(RR) 3つの並行オペレーション **EP2 0PI(RR)1.0P2(RR)2つの
並行オペレーション **EP1 0P1(RR) 1つのオペレーション 注 木 上記命令及びその実行は本発明のノ・−ドウエア
及び手法の新しい特徴とみなされる。
ジスタRRヘロートスル TMn RRインデックスAnを用いてレジスタタR
Rからメモリへストアする RTn RRレジスタnからRRへ転送するARn
RRレジスタRRにレジスタnを加える SRn RRレジスタRRからレジスタnを減する 2)フレーム処理オペレーション *CRCRRレジスタRRでCRCを計算する*BSW
RRRRを用いてビットの挿入又は削除を行う *BCD RRRRが特別のキャラクタを有するとき
にブランチする 3)ヘッダ処理オペレーション *BBD RR,、X RR中の優先ビット検出で
ブランチする(Xはスタック選 択パラメータ) *R8HRRレジスタRRを再形成 *AR8RRRRを用いて新しいアドレスを計算する 4)ブロック転送オペレーション IBMORRRR中の待ち行列コマンドでブロック転送
を遂行する 5)並行オペレーション **EP3 0P1(RR)、0P2(RR)、0P3
(RR) 3つの並行オペレーション **EP2 0PI(RR)1.0P2(RR)2つの
並行オペレーション **EP1 0P1(RR) 1つのオペレーション 注 木 上記命令及びその実行は本発明のノ・−ドウエア
及び手法の新しい特徴とみなされる。
** 上記0P11、OF2及びOF2は個々のオペレ
ーションである。
ーションである。
レジスタ構造
下記の表はレジスタの割当て及び機能を示すものである
。
。
レジスタ
AQないしA3
ROないしR11
RCP
RCA
SHP
SH8
SHC
RC
ST
NT
メモリアクセス及びインデック
スレジスタ
汎用データレジスタ
CRC多項式レジスタ
CRC累算レジスタ
ビットトランスペアレンシーパ
ターンレジスタ
ビットトランスペアレンシー状
況レジスタ
再形成コードレジスタ
ブロック転送のためのソースア
ドレス
ブロック転送のための宛先アド
レス
ブロック転送のためのバッファ
LCIRアドレスについての論理チャネルID
次の節では上述の“*”でマークされた命令を実行する
ための回路について説明する。
ための回路について説明する。
ヘッダ処理ユニット
第5図はヘッダ処理ユニット4の構成を示す図である。
BBDユニット60は関連する上述のBBD命令に応答
する機構を提供し、ブランチ条件を指定する条件ビット
に基づいてプログラムの実行をブランチさせるためのオ
ペレーション、及びこのユニットのレジスタにプログラ
ム可能に事前ロードできる優先順位選択データに基づい
てアクティブな状態を示すビットの優先順位選択を行う
ためのオペレーションを実現する。
する機構を提供し、ブランチ条件を指定する条件ビット
に基づいてプログラムの実行をブランチさせるためのオ
ペレーション、及びこのユニットのレジスタにプログラ
ム可能に事前ロードできる優先順位選択データに基づい
てアクティブな状態を示すビットの優先順位選択を行う
ためのオペレーションを実現する。
レジスタ再形成ユニット61はレジスタされたデータを
再構成して評価に適したフォーマットで必要なパラメー
タを抽出する。アドレス経路指定ユニット62は種々の
プロトコル層を介するネットワーク経路及びコネクショ
ンの確立のため必要に応じてヘッダアドレス情報を変換
する。
再構成して評価に適したフォーマットで必要なパラメー
タを抽出する。アドレス経路指定ユニット62は種々の
プロトコル層を介するネットワーク経路及びコネクショ
ンの確立のため必要に応じてヘッダアドレス情報を変換
する。
BBDユニット
第6図に示すように、種々のシステム条件又は割込み要
求事象を表わす入力ラッチ80中の情報はラッチされた
個々のビットの所定の優先順位に従って処理され、その
選択された条件を取扱うためのプログラムルーチンの始
点を表わす次命令アドレスへシステムのプログラム実行
をブランチさせる。優先順位選択機構81はブランチ動
作を必要とするアクティブな状態を表わすラッチ80中
のどのビットが最高の優先順位を有するかを判断し、出
力レジスタ82への転送のため関連するアドレスレジス
タスタックからの命令アドレスを選択するよう機能する
。制御バス12を介するBBD命令のオペコードに応答
するデコーダ84及び85は優先順位アドレス機構への
入力ラッチ8゜をゲートするための制御信号及び優先順
位アドレス4Nlの出力をブランチアドレスレジスタ8
2ヘゲートするための制御信号を生成する。レジスタ転
送オペレーションを指定する命令に応答するデコーダ8
4はデータバス13を介してロードスタック初期設定レ
ジスタ83に制御信号を生成する。
求事象を表わす入力ラッチ80中の情報はラッチされた
個々のビットの所定の優先順位に従って処理され、その
選択された条件を取扱うためのプログラムルーチンの始
点を表わす次命令アドレスへシステムのプログラム実行
をブランチさせる。優先順位選択機構81はブランチ動
作を必要とするアクティブな状態を表わすラッチ80中
のどのビットが最高の優先順位を有するかを判断し、出
力レジスタ82への転送のため関連するアドレスレジス
タスタックからの命令アドレスを選択するよう機能する
。制御バス12を介するBBD命令のオペコードに応答
するデコーダ84及び85は優先順位アドレス機構への
入力ラッチ8゜をゲートするための制御信号及び優先順
位アドレス4Nlの出力をブランチアドレスレジスタ8
2ヘゲートするための制御信号を生成する。レジスタ転
送オペレーションを指定する命令に応答するデコーダ8
4はデータバス13を介してロードスタック初期設定レ
ジスタ83に制御信号を生成する。
第7図は第6図に示された優先順位アドレス機構81を
説明する図である。この機構81の特徴は優先順位選択
スタック102によって決定されるような優先順位付は
機能をプログラムできることである。スタック102ヘ
プログラム可能にロードされる値はランチ80中のアク
ティブなビットの相対的な優先順位を決定し、優先順位
エンコードユニット103を付勢し、上記BBD命令に
応答し・てアクセスデコード機構105のブランチアド
レススタック104からアドレスを選択させる。スタッ
ク102内の関連するレジスタにおいて最高の優先順位
の値をセットさせるランチ80中のアクティブビットに
関連するこの選択されたアドレスは実行すべき次命令の
アドレスとして出力レジスタ82へ転送される。これに
より、選択されたブランチ条件に適したブランチルーチ
ンが開始される。
説明する図である。この機構81の特徴は優先順位選択
スタック102によって決定されるような優先順位付は
機能をプログラムできることである。スタック102ヘ
プログラム可能にロードされる値はランチ80中のアク
ティブなビットの相対的な優先順位を決定し、優先順位
エンコードユニット103を付勢し、上記BBD命令に
応答し・てアクセスデコード機構105のブランチアド
レススタック104からアドレスを選択させる。スタッ
ク102内の関連するレジスタにおいて最高の優先順位
の値をセットさせるランチ80中のアクティブビットに
関連するこの選択されたアドレスは実行すべき次命令の
アドレスとして出力レジスタ82へ転送される。これに
より、選択されたブランチ条件に適したブランチルーチ
ンが開始される。
この優先順位アドレス機構は関連出願である1988年
10月7日付の米国特許出願第254985号に詳説さ
れている。この機構の他の特徴は上述のアドレス実行オ
ペレーションをcPPシステムの単一のマシンサイクル
で遂行するよう構成されていることである。スタック1
02及び104は標準のブロック転送命令に応答してデ
ータ経路107を介して初期設定することができる。他
の特徴として、これらのスタックはランチ80に対して
複数のセグメントで供給することができ、これにより、
ラッチ80中のビット位置に関して優先順位及びアドレ
ス連関の複数のセットを確立するためのロードオペレー
ションを合同することができる。そのような合同により
、BBD命令によるスタックセグメントの選択ができる
という付加的な利益が得られる。したがって優先順位付
は又はブランチアドレス連関はいずれのスタックもロー
ディングを繰返すことなしに動的に変化しうる(たとえ
ば、複数のプロトコルをサポートするため)。これによ
り、システムの適応性及びスループットはさらに改善さ
れる。
10月7日付の米国特許出願第254985号に詳説さ
れている。この機構の他の特徴は上述のアドレス実行オ
ペレーションをcPPシステムの単一のマシンサイクル
で遂行するよう構成されていることである。スタック1
02及び104は標準のブロック転送命令に応答してデ
ータ経路107を介して初期設定することができる。他
の特徴として、これらのスタックはランチ80に対して
複数のセグメントで供給することができ、これにより、
ラッチ80中のビット位置に関して優先順位及びアドレ
ス連関の複数のセットを確立するためのロードオペレー
ションを合同することができる。そのような合同により
、BBD命令によるスタックセグメントの選択ができる
という付加的な利益が得られる。したがって優先順位付
は又はブランチアドレス連関はいずれのスタックもロー
ディングを繰返すことなしに動的に変化しうる(たとえ
ば、複数のプロトコルをサポートするため)。これによ
り、システムの適応性及びスループットはさらに改善さ
れる。
第8図はブランチアドレススタック104をアクセスす
るための機構を示す図である。ブランチアドレススタッ
ク104はこの図では参照番号116で示され、またそ
の入力経路107はこの図では参照番号115で示され
ている。スタック116を初期設定するため、デコーダ
118(第6図のデコーダ84に対応するもの)はレジ
スタローディング命令からの情報を処理してバス115
からスタック中の選択されたレジスタヘデータをゲート
する。スタックからアドレスを読取るため、他のデコー
ダ(図示していないが、第6図のデコーダ85に対応す
るものである)が1つのBBD命令に応答してスタック
102中の最高の優先順位選択値に反応して出力データ
バス119を介する出力レジスタ82への転送のためス
タック116中の関連するレジスタから出力を選択する
。前述の如(、複数のプロトコルをサポートするため、
スタック116はブランチアドレスの異なるセットをそ
れぞれロードすることのできる複数のセグメントを有し
、ブランチ機能の異なるセットを入カラクチ80中の条
件のセットと関係付ける。これは、異なるセグメントの
選択を指定するためBBD命令に情報を与えることを要
求することとなる。
るための機構を示す図である。ブランチアドレススタッ
ク104はこの図では参照番号116で示され、またそ
の入力経路107はこの図では参照番号115で示され
ている。スタック116を初期設定するため、デコーダ
118(第6図のデコーダ84に対応するもの)はレジ
スタローディング命令からの情報を処理してバス115
からスタック中の選択されたレジスタヘデータをゲート
する。スタックからアドレスを読取るため、他のデコー
ダ(図示していないが、第6図のデコーダ85に対応す
るものである)が1つのBBD命令に応答してスタック
102中の最高の優先順位選択値に反応して出力データ
バス119を介する出力レジスタ82への転送のためス
タック116中の関連するレジスタから出力を選択する
。前述の如(、複数のプロトコルをサポートするため、
スタック116はブランチアドレスの異なるセットをそ
れぞれロードすることのできる複数のセグメントを有し
、ブランチ機能の異なるセットを入カラクチ80中の条
件のセットと関係付ける。これは、異なるセグメントの
選択を指定するためBBD命令に情報を与えることを要
求することとなる。
第9図にプログラム可能な優先順位エンコーダユニット
103の詳細が示されている。ビット1、ビット2、・
拳・、ビット16と記された入力ラッチ80(第7図)
からのビットは関連する優先順位選択レジスタ120a
ないし120dについての選択制御入力として機能する
。各々4ピツトであるレジスタ120aないし120d
中の優先順位選択コード値はデータ転送命令(レジスタ
間又はメモリからレジスタ)又はロード即値命令のよう
なプロセッサのレジスタロード命令に応答して初期設定
することができる。複数のレジスタ120Xは並行して
初期設定することができる。というのは、プロセッサデ
ータバスは、典型的には、単一の優先順位選択レジスタ
で使用できるよりも多くのビットを伝達するものだから
である。
103の詳細が示されている。ビット1、ビット2、・
拳・、ビット16と記された入力ラッチ80(第7図)
からのビットは関連する優先順位選択レジスタ120a
ないし120dについての選択制御入力として機能する
。各々4ピツトであるレジスタ120aないし120d
中の優先順位選択コード値はデータ転送命令(レジスタ
間又はメモリからレジスタ)又はロード即値命令のよう
なプロセッサのレジスタロード命令に応答して初期設定
することができる。複数のレジスタ120Xは並行して
初期設定することができる。というのは、プロセッサデ
ータバスは、典型的には、単一の優先順位選択レジスタ
で使用できるよりも多くのビットを伝達するものだから
である。
前述の如く、レジスタ120xを初期設定する目的は入
力ランチ80中の条件ビットに関連する優先順位をプロ
グラム可能に変化できるようにすることである。図示の
例では16個の条件ビットがあるので、一意的な優先順
位選択のランクを全ての条件ビットに割当てることがで
きるよう1つの優先順位選択レジスタにつき4ビツトが
必要である。一般には 2Nの長さを有する条件ビット
のセットに対してN個の優先順位ビットが必要となる。
力ランチ80中の条件ビットに関連する優先順位をプロ
グラム可能に変化できるようにすることである。図示の
例では16個の条件ビットがあるので、一意的な優先順
位選択のランクを全ての条件ビットに割当てることがで
きるよう1つの優先順位選択レジスタにつき4ビツトが
必要である。一般には 2Nの長さを有する条件ビット
のセットに対してN個の優先順位ビットが必要となる。
BBD命令に応答して、アクティブ状態の入力ビットに
関連するレジスタ120xにロードされた値は個々の論
理回路122xないし127xヘゲートされる。これら
の論理回路は受は取った大きさを比較して最大の大きさ
を最終出力としてゲートする(すなわち、最高優先順位
の値である)。
関連するレジスタ120xにロードされた値は個々の論
理回路122xないし127xヘゲートされる。これら
の論理回路は受は取った大きさを比較して最大の大きさ
を最終出力としてゲートする(すなわち、最高優先順位
の値である)。
したがって、たとえば最高優先順位選択値がレジスタ1
20bに保持されかつビット2がアクティブであるとき
は、レジスタ120b中のその値は、他のレジスタで保
持された値とは関係なく、論理回路122xないし12
7xを介してゲートされる。
20bに保持されかつビット2がアクティブであるとき
は、レジスタ120b中のその値は、他のレジスタで保
持された値とは関係なく、論理回路122xないし12
7xを介してゲートされる。
入力ラッテ80によりレジスタ120x及びアドレスス
タック116(第8図)に事前ロードがされると、この
回路はBBD命令の実行の準備が完了する。そのような
命令に応答して、第9図のアレイ122xないし127
xは最高優先順位のブランチ条件を衣わすアクティブ状
態にある入力ラッチのビットに関連してレジスタ120
x中の最高優先順位選択値を効率よ(選択する。選択さ
れた値のビットはデコーダ(図示していないが、第6図
のデコーダ85に対応するもの)を介して作動する出力
PO1P1、P2及びP3(P3が最上位ビット)にゲ
ートされ、スタック116(第8図)における関連する
レジスタの出力をアドレスする。これにより、各自のア
ドレスが出力レジスタ82へ転送される。
タック116(第8図)に事前ロードがされると、この
回路はBBD命令の実行の準備が完了する。そのような
命令に応答して、第9図のアレイ122xないし127
xは最高優先順位のブランチ条件を衣わすアクティブ状
態にある入力ラッチのビットに関連してレジスタ120
x中の最高優先順位選択値を効率よ(選択する。選択さ
れた値のビットはデコーダ(図示していないが、第6図
のデコーダ85に対応するもの)を介して作動する出力
PO1P1、P2及びP3(P3が最上位ビット)にゲ
ートされ、スタック116(第8図)における関連する
レジスタの出力をアドレスする。これにより、各自のア
ドレスが出力レジスタ82へ転送される。
これらのゲートアレイのオペレーションをさらに詳しく
説明する。入力ラッチ80からのアクティブなビットで
あるビット1、ビット2、・・瞭、ビット16は関連す
る優先順位選択レジスタ120xの出力をゲート122
xないし127xの関連する行へ転送する。アクティブ
でない入力ラッチビットは関連する優先順位レジスタの
出力をオフに強制する。優先順位レジスタ120Xから
の出力はその行のゲートによって最上位ビットから比較
される。ORゲー)129aはアクティブな優先順位レ
ジスタ120xの最上位ビットを調べて、少な(とも1
つの入力がアクティブなら出力P6をオンにする。出力
P3は比較ゲート122a1122b1122C1舎1
1+1にフィードバックされる。各比較ゲー)122x
の出力は対応する優先順位レジスタ120Xかもの最上
位ビットがエンコーダの出力P3と同じ論理レベル(オ
ン又はオフ)にあるときにのみ、オンにされる。対応す
る比較ゲートの出力がオフである全ての入力ビットは他
のエンコーダの出力P2、Pl及びPOの決定する際に
は考慮されない。とい5のは、比較ゲート122a、t
22b、 噛・・の出力におけるオフ状態によってA
NDゲート123a。
説明する。入力ラッチ80からのアクティブなビットで
あるビット1、ビット2、・・瞭、ビット16は関連す
る優先順位選択レジスタ120xの出力をゲート122
xないし127xの関連する行へ転送する。アクティブ
でない入力ラッチビットは関連する優先順位レジスタの
出力をオフに強制する。優先順位レジスタ120Xから
の出力はその行のゲートによって最上位ビットから比較
される。ORゲー)129aはアクティブな優先順位レ
ジスタ120xの最上位ビットを調べて、少な(とも1
つの入力がアクティブなら出力P6をオンにする。出力
P3は比較ゲート122a1122b1122C1舎1
1+1にフィードバックされる。各比較ゲー)122x
の出力は対応する優先順位レジスタ120Xかもの最上
位ビットがエンコーダの出力P3と同じ論理レベル(オ
ン又はオフ)にあるときにのみ、オンにされる。対応す
る比較ゲートの出力がオフである全ての入力ビットは他
のエンコーダの出力P2、Pl及びPOの決定する際に
は考慮されない。とい5のは、比較ゲート122a、t
22b、 噛・・の出力におけるオフ状態によってA
NDゲート123a。
125a、127a、123b、125b、127bS
−・会は優先順位レジスタ1208.120b1・・・
の出力のそれ以上の伝播が阻止される。同様にして、各
優先順位レジスタ120xからのより下位の各ビットが
処理されるが、これは以前の優先順位ビットの処理の際
に除去されたレジスタの出力のゲートを閉じた後だけで
ある。こうして、ANDゲート123a、123b、h
aの出力はアクティブであってかつ出力P5と同じ状態
にセットされる最上位ビットを有する優先順位を持った
ビット1、ビット2、・Φ・について第2のビットから
最上位ビットに対応するものである。ORゲート129
bはANDゲート123a、123bX φ・・から入
力に基づいてエンコーダの出力P2を生成する。比較グ
ー)124m。
−・会は優先順位レジスタ1208.120b1・・・
の出力のそれ以上の伝播が阻止される。同様にして、各
優先順位レジスタ120xからのより下位の各ビットが
処理されるが、これは以前の優先順位ビットの処理の際
に除去されたレジスタの出力のゲートを閉じた後だけで
ある。こうして、ANDゲート123a、123b、h
aの出力はアクティブであってかつ出力P5と同じ状態
にセットされる最上位ビットを有する優先順位を持った
ビット1、ビット2、・Φ・について第2のビットから
最上位ビットに対応するものである。ORゲート129
bはANDゲート123a、123bX φ・・から入
力に基づいてエンコーダの出力P2を生成する。比較グ
ー)124m。
124b、 −・−は第2のビットと一致しない付加
的な優先順位を除去し、残りの優先順位についてのAN
Dゲート125a、125b、 ・e、、 aはエン
コーダの出力P1を生成するためORゲート129cを
駆動する。同様にして、比較ゲート126m、126b
、 φ・・は第5のビットと一致しない付加的な優先
順位を除去し、残りの優先順位についてのANDゲート
127a、127b。
的な優先順位を除去し、残りの優先順位についてのAN
Dゲート125a、125b、 ・e、、 aはエン
コーダの出力P1を生成するためORゲート129cを
駆動する。同様にして、比較ゲート126m、126b
、 φ・・は第5のビットと一致しない付加的な優先
順位を除去し、残りの優先順位についてのANDゲート
127a、127b。
e−拳はエンコーダの出力POを生成するためORゲー
ト129dを駆動する。
ト129dを駆動する。
前述の如く、出力POないしP3は最高のアクティブな
ブランチ条件を表わすコード化された4ビツトの値でア
ドレスレジスタスタックをアドレスするのに用いられる
。あるいは、ANDゲート127a、127bの出力は
そのレジスタスタック中のレジスタに直接的にそれぞれ
関連付けて、アクティブにされたとき、対応するアドレ
スレジスタの出力をアドレスバスにゲートするようにし
てもよい。これが可能なのは、2つの優先順位レジスタ
に同じ番号がロードされない限り(そうなるべきではな
い)所与の時間にアクティブにできるのはANDゲート
の出力127xのうちの1つだけだからである。後者の
方法は入力ラッチビットについてプログラム可能に関連
付けられた番号ではなく、アクティブな入力ラッチビッ
ト自体の位置に従ってアドレス選択の優先順位付けを行
おうとするものである。後者の方法においては最低の優
先順位を有する入力ラッチビットは(たとえばラッチピ
ット位置1に存するもの)他にアクティブなビットがな
い場合にのみ、優先性を与えられるということに留意さ
れたい。16個のラッチビット位置では15個の非ゼロ
の選択機能しか得られないので、全てのラツ、チピット
がゼロであるという条件をチエツクするため単純な論理
を追加してこのような状況で一意的なブランチが必要な
ときはアクティブな状態が存在しないことに関連してブ
ランチターゲットアドレスを選択するための出力をゲー
トすることができる。
ブランチ条件を表わすコード化された4ビツトの値でア
ドレスレジスタスタックをアドレスするのに用いられる
。あるいは、ANDゲート127a、127bの出力は
そのレジスタスタック中のレジスタに直接的にそれぞれ
関連付けて、アクティブにされたとき、対応するアドレ
スレジスタの出力をアドレスバスにゲートするようにし
てもよい。これが可能なのは、2つの優先順位レジスタ
に同じ番号がロードされない限り(そうなるべきではな
い)所与の時間にアクティブにできるのはANDゲート
の出力127xのうちの1つだけだからである。後者の
方法は入力ラッチビットについてプログラム可能に関連
付けられた番号ではなく、アクティブな入力ラッチビッ
ト自体の位置に従ってアドレス選択の優先順位付けを行
おうとするものである。後者の方法においては最低の優
先順位を有する入力ラッチビットは(たとえばラッチピ
ット位置1に存するもの)他にアクティブなビットがな
い場合にのみ、優先性を与えられるということに留意さ
れたい。16個のラッチビット位置では15個の非ゼロ
の選択機能しか得られないので、全てのラツ、チピット
がゼロであるという条件をチエツクするため単純な論理
を追加してこのような状況で一意的なブランチが必要な
ときはアクティブな状態が存在しないことに関連してブ
ランチターゲットアドレスを選択するための出力をゲー
トすることができる。
レジスタ再形成命令の回路
レジスタ再形成(R8H)命令を実行するための回路は
第10図に示されている。入力ラッチ174中の情報は
レジスタ再形成ユニット176のオペレーションによっ
て再形成(R8)=r−)”L’レジスタ75中の各コ
ードとして再形成される。
第10図に示されている。入力ラッチ174中の情報は
レジスタ再形成ユニット176のオペレーションによっ
て再形成(R8)=r−)”L’レジスタ75中の各コ
ードとして再形成される。
出力は出力レジスタ177へ送られる。RSコードレジ
スタは関連するR8Hオペレーションの前にデータバス
13を介して適切なシフト、マスク及びスワップオペレ
ーションで初期設定される。
スタは関連するR8Hオペレーションの前にデータバス
13を介して適切なシフト、マスク及びスワップオペレ
ーションで初期設定される。
デコーダ178及び179は、制御バス12を介するR
8H命令のオペコードに応答して、レジスタ再形成ユニ
ット176への入力ラッチ174をゲートするための制
御信号及び再形成レジスタ177からの出力をゲートす
るための制御信号を生成する。デコーダ178はデータ
バス13を介するレジスタ転送オペレーションに応答し
て再形成のオプションを指定するデータをレジスタ17
5ヘロードするための制御信号を生成する。
8H命令のオペコードに応答して、レジスタ再形成ユニ
ット176への入力ラッチ174をゲートするための制
御信号及び再形成レジスタ177からの出力をゲートす
るための制御信号を生成する。デコーダ178はデータ
バス13を介するレジスタ転送オペレーションに応答し
て再形成のオプションを指定するデータをレジスタ17
5ヘロードするための制御信号を生成する。
レジスタ175(32ビツトの入力レジスタと仮定する
)にコード化できる再形成のオプションは下記のものを
含む。
)にコード化できる再形成のオプションは下記のものを
含む。
1)下位8ビツトのスワップ
2)下位16ビツトのスワップ
3)下位32ビツトのスワップ
4) Nビットのローテート
5) Mピットのマスク
Lビットのスワップとは、入力レジスタ中のビツ)D(
0)ないしD(L)が以下のように交換されることをい
う。
0)ないしD(L)が以下のように交換されることをい
う。
D(L) =D(0)
D(L−1)=D(1)
D(1) =D(L−1)
D(0) :D(L)
Nビットのローテートとは、入力レジスタ中のビットが
Nビットだけ右方又は左方にシフトされることをいう。
Nビットだけ右方又は左方にシフトされることをいう。
右方Nのシフトは、D(i )=D(i+N)を意味し
、左方Nのシフトは、D(+)==D(i−N)を意味
する。
、左方Nのシフトは、D(+)==D(i−N)を意味
する。
Mピットのマスクとは、指定された個数のビットを最上
位ビット又は最下位ビットから0又は1にセットするこ
とをいう。
位ビット又は最下位ビットから0又は1にセットするこ
とをいう。
上述のオプションを満たす再形成コードレジスタは以下
の如(となる。
の如(となる。
M N’
N1はシフトの方向を示す。
Mlはマスクのセット又はリセットを示す。
M2はマスクMが最上位又は最下位からのものであるこ
とを示し、Nはビット数を表わす(最大32)。
とを示し、Nはビット数を表わす(最大32)。
スワップコード
001 下位8ビツト
010 下位16ビツト
011 全62ビツト
100 上位8ビツト
101 中位16ビツト
110 全32ビツト
例:上述のレジスタでは、パケット番号を抽出すること
が必要であると仮定している。
が必要であると仮定している。
再形成コードは次のようになる。
N=4 4ビツトシフト
N1=1 シフト方向(右)
M=2828ビットマスク
M1=0 ゼロについてリセット
M2=0 最上位ビットからマスク
スワップコード=000 スワップなし以下余白
R8Hの計算論理は第11図に示すように2つのステー
ジを含む。第1のステージは32個のマルチプレクサ2
09から成る。各マルチプレクサは相対的に1ビツトだ
けシフトされたラッチ174からの入力を有する。スワ
ップユニット210は再形成コードレジスタ(第10図
中のブロック175)からのスワップコード及びシフト
コードを使用してマルチプレクサ209への異なるiU
R制御入力を供給する。第2のステージは再形成コード
レジスタ(第10図)からのマスクコードで制御され、
所望のビットシーケンス適切にセット又はリセットする
マスク論理212を含む。マスク論理212は以下の関
係でもって表わすことができる。
ジを含む。第1のステージは32個のマルチプレクサ2
09から成る。各マルチプレクサは相対的に1ビツトだ
けシフトされたラッチ174からの入力を有する。スワ
ップユニット210は再形成コードレジスタ(第10図
中のブロック175)からのスワップコード及びシフト
コードを使用してマルチプレクサ209への異なるiU
R制御入力を供給する。第2のステージは再形成コード
レジスタ(第10図)からのマスクコードで制御され、
所望のビットシーケンス適切にセット又はリセットする
マスク論理212を含む。マスク論理212は以下の関
係でもって表わすことができる。
ここで出力ワードベクトルD(L)の長さをLビットと
し、Mがマスクコード、Mlがセット又はす七ツ)、M
2が右方又は左方の方向性を指定するものと仮定する。
し、Mがマスクコード、Mlがセット又はす七ツ)、M
2が右方又は左方の方向性を指定するものと仮定する。
他の全てのD(i)については第11図のi番目のマル
チプレクサ209と同じである。
チプレクサ209と同じである。
第12図はスワップユニットの詳細を示す図である。デ
コーダ219は所望の範囲のビット(8,16又は62
ビツト)のスワップを行うためスワップコードを用いて
ANDゲート217のうちの1つを選択する。比較論理
216はデコーダ219の出力、レジスタ218及び関
連するマルチプレクサ番号214を用いてスワップユニ
ットがそのマルチプレクサに関係するスワップ機能を遂
行するかどうかを判断する。シフトコードはANDゲー
ト217の出力と排他的論理和され(参照番号215)
、出力となるべき32個のマルチプレクサ入力のうちの
1つを選択するマルチブレフサ出力アドレスを供給する
。XORゲート215は要求されたスワップコードに応
じてシフトコードの下位3ビツト、4ビツト又は5ピツ
トを補数化する。
コーダ219は所望の範囲のビット(8,16又は62
ビツト)のスワップを行うためスワップコードを用いて
ANDゲート217のうちの1つを選択する。比較論理
216はデコーダ219の出力、レジスタ218及び関
連するマルチプレクサ番号214を用いてスワップユニ
ットがそのマルチプレクサに関係するスワップ機能を遂
行するかどうかを判断する。シフトコードはANDゲー
ト217の出力と排他的論理和され(参照番号215)
、出力となるべき32個のマルチプレクサ入力のうちの
1つを選択するマルチブレフサ出力アドレスを供給する
。XORゲート215は要求されたスワップコードに応
じてシフトコードの下位3ビツト、4ビツト又は5ピツ
トを補数化する。
第13図は一時に複数のパラメータの抽出を可能とする
拡張された再形成機構を示す図である。
拡張された再形成機構を示す図である。
この拡張はよシ高速なオペレーションを行うため以下の
機能を有する再形成コードレジスタを使用する。入力レ
ジスタ201は全てKついて共通のものであるが、3つ
の再形成ユニット203で処理される3つの出力レジス
タ204が存在する。
機能を有する再形成コードレジスタを使用する。入力レ
ジスタ201は全てKついて共通のものであるが、3つ
の再形成ユニット203で処理される3つの出力レジス
タ204が存在する。
再形成コードレジスタ202は3つのパラメータ(各再
形成ユニットにつき1つ)を抽出するため3つの個別的
なコードを含む。
形成ユニットにつき1つ)を抽出するため3つの個別的
なコードを含む。
AR8命令の回路
この回路は第14図に示されている。入力ラッチ252
中の情報はアドレス変換のために処理される。論理チャ
ネルID253は実際の経路指定アドレス255を生成
するためのアドレス生成器254によって使用される。
中の情報はアドレス変換のために処理される。論理チャ
ネルID253は実際の経路指定アドレス255を生成
するためのアドレス生成器254によって使用される。
デコーダ256及び257は制御バス12を介するAR
8命令に応答して、入力ラッチ252をアドレス生成器
254にゲートするための制御信号及び経路指定アドレ
ス255への出力をラッチするための制御信号を生成す
る。デコーダ256はデータバス13を介するレジスタ
転送オペレーションに応答して論理データネルID25
3をロードするための制御信号を生成する。
8命令に応答して、入力ラッチ252をアドレス生成器
254にゲートするための制御信号及び経路指定アドレ
ス255への出力をラッチするための制御信号を生成す
る。デコーダ256はデータバス13を介するレジスタ
転送オペレーションに応答して論理データネルID25
3をロードするための制御信号を生成する。
アドレス経路指定オペレーションのために使用されるハ
ードウェアを第15図に示した。アドレススタック26
1及び経路スタック262は1対1の対応を有するアド
レス変換パラメータで初期設定される。これにより比較
回路265は優先順位エンコーダ回路264と共に入力
レジスタRn260の値を用いて、出力レジスタ(第1
4図のブロック255)へ送ることのできる経路スタッ
ク262中の対応する経路指定アドレスを選択すること
ができる。第8図のものと同様なスタックアクセスデコ
ード機構を用いてアドレススタック及び経路アドレスス
タックを初期設定する。
ードウェアを第15図に示した。アドレススタック26
1及び経路スタック262は1対1の対応を有するアド
レス変換パラメータで初期設定される。これにより比較
回路265は優先順位エンコーダ回路264と共に入力
レジスタRn260の値を用いて、出力レジスタ(第1
4図のブロック255)へ送ることのできる経路スタッ
ク262中の対応する経路指定アドレスを選択すること
ができる。第8図のものと同様なスタックアクセスデコ
ード機構を用いてアドレススタック及び経路アドレスス
タックを初期設定する。
メモリアクセスユニット
第16図はブロック転送ユニット295及びメモリロー
ド/ストアユニット292から成るメモリアクセスユニ
ットを示す図である。メモリロート/ストアユニット2
92は標準的なデータメモリアクセスを提供する。
ド/ストアユニット292から成るメモリアクセスユニ
ットを示す図である。メモリロート/ストアユニット2
92は標準的なデータメモリアクセスを提供する。
BMO(ブロック転送)命令回路
この回路は第17図に示されている。ソースアドレスレ
ジスタ346にはレジスタ転送命令によってデータブロ
ックの開始アドレスのロケーションをロードすることが
できる。ブロック転送状況レジスタ651は転送が進行
するにつれてモニタユニット650によって更新される
。ブロック転送回路はデータ変換でソースアドレスと宛
先アドレスとの間のデータ転送を行う機構を含む。ソー
スアドレス346はンースデータが存在する最初のメモ
リロケーションである。バッファの長さ(これはソース
アドレスのところから始まる転送すべきデータの数であ
る)はカウントレジスタ348に記憶することができる
。
ジスタ346にはレジスタ転送命令によってデータブロ
ックの開始アドレスのロケーションをロードすることが
できる。ブロック転送状況レジスタ651は転送が進行
するにつれてモニタユニット650によって更新される
。ブロック転送回路はデータ変換でソースアドレスと宛
先アドレスとの間のデータ転送を行う機構を含む。ソー
スアドレス346はンースデータが存在する最初のメモ
リロケーションである。バッファの長さ(これはソース
アドレスのところから始まる転送すべきデータの数であ
る)はカウントレジスタ348に記憶することができる
。
この回路によってブロック転送要求をスタックにキュー
することができる。待ち行列コマンドレジスタ349は
646.347及び348の内容を待ち行列に挿入する
。またこの回路によってユ−ザはブロック転送と同時に
データ変換が要求されるかどうか(たとえば、C,RC
又はビットの挿入もしくは削除のため)を指定すること
ができるので、フレーム処理ユニット(第1図のブロッ
ク5)への経路354が付勢される。レジスタ346.
347.648及び649にはデータバス16を介して
レジスタ転送オペレーションをロードすることができる
。デコーダ352及び353は制御パス12を介するブ
ロック転送命令に応答してレジスタ646.347及び
348をゲートするための制御信号及び待ち行列コマン
ドレジスタを用いてブロック転送回路へのローディング
を行うための制御信号を生成する。デコーダ352はデ
ータバス15を介するレジスタ転送オペレーションに応
答してブロック転送回路350からブロック転送状況レ
ジスタ351へのロードを行うだめの制御信号を生成す
る。ブロック転送状況レジスタ351はブロック転送機
能の状況を示すものである。データアドレス経路15は
外部DRAM(第3図のブロック32)及び内部スタッ
クをアドレス指定するために用いられる。
することができる。待ち行列コマンドレジスタ349は
646.347及び348の内容を待ち行列に挿入する
。またこの回路によってユ−ザはブロック転送と同時に
データ変換が要求されるかどうか(たとえば、C,RC
又はビットの挿入もしくは削除のため)を指定すること
ができるので、フレーム処理ユニット(第1図のブロッ
ク5)への経路354が付勢される。レジスタ346.
347.648及び649にはデータバス16を介して
レジスタ転送オペレーションをロードすることができる
。デコーダ352及び353は制御パス12を介するブ
ロック転送命令に応答してレジスタ646.347及び
348をゲートするための制御信号及び待ち行列コマン
ドレジスタを用いてブロック転送回路へのローディング
を行うための制御信号を生成する。デコーダ352はデ
ータバス15を介するレジスタ転送オペレーションに応
答してブロック転送回路350からブロック転送状況レ
ジスタ351へのロードを行うだめの制御信号を生成す
る。ブロック転送状況レジスタ351はブロック転送機
能の状況を示すものである。データアドレス経路15は
外部DRAM(第3図のブロック32)及び内部スタッ
クをアドレス指定するために用いられる。
第18図はブロック転送論理361の制御を構成するの
に使用される回路の詳細を示す図である。
に使用される回路の詳細を示す図である。
ブロック転送要求の異なるセットは待ち行列560を用
いて最初にきたものを最初に保管するという順序で記憶
する。待ち行列ポインタ363はブロック転送回路によ
って同時に処理される要求のロケーションを指し示す。
いて最初にきたものを最初に保管するという順序で記憶
する。待ち行列ポインタ363はブロック転送回路によ
って同時に処理される要求のロケーションを指し示す。
ソフトウェア待ち行列ポインタ367はブロック転送に
ついて待ち行列に提供された最後の要求を指し示す。ブ
ロック転送状況レジスタ351はハードウェア待ち行列
ポインタ366及びソフトウェア待ち行列ポインタ36
7の位置に応じて待ち行列360が空になったか又は−
杯になったかを示す仁とになる。ビット挿入/削除のた
めのデータ変換レジスタ369及びCRC36Bはフレ
ーム処理が経路354に対して付勢されたときに使用さ
れる。
ついて待ち行列に提供された最後の要求を指し示す。ブ
ロック転送状況レジスタ351はハードウェア待ち行列
ポインタ366及びソフトウェア待ち行列ポインタ36
7の位置に応じて待ち行列360が空になったか又は−
杯になったかを示す仁とになる。ビット挿入/削除のた
めのデータ変換レジスタ369及びCRC36Bはフレ
ーム処理が経路354に対して付勢されたときに使用さ
れる。
第20図のマルチプレクサ435及び第21図のマルチ
プレクサ459は処理ユニット430及び454を用い
るために経路354をそれぞれ付勢するデコーダ432
及び456によって選択される。各ユニットは新しいC
RC(36B)及びビット挿入/削除ワードBSW(3
69)を計算する。ブロック転送が生じるのは次の場合
だけであるととに留意されたい。すなわち、DRAMが
1サイクルスチールでアクセス可能なとき(他のユニッ
トはアクセスを要求しない)、及びフレーム処理が他の
命令によって使用されていない場合に1マシンサイクル
の間その転送が待機されるブロック転送でデータ変換が
要求されたときである。
プレクサ459は処理ユニット430及び454を用い
るために経路354をそれぞれ付勢するデコーダ432
及び456によって選択される。各ユニットは新しいC
RC(36B)及びビット挿入/削除ワードBSW(3
69)を計算する。ブロック転送が生じるのは次の場合
だけであるととに留意されたい。すなわち、DRAMが
1サイクルスチールでアクセス可能なとき(他のユニッ
トはアクセスを要求しない)、及びフレーム処理が他の
命令によって使用されていない場合に1マシンサイクル
の間その転送が待機されるブロック転送でデータ変換が
要求されたときである。
フレーム処理ユニット
第19図はエラーチエツク及びデータトランスペアレン
ジ−のためにフレーム情報及びパケットIc)イテオペ
レーションを遂行する専用の7V −入処理ユニットの
構成を示す図である。CRCユ計算することによってエ
ラーチエツクを遂行する。
ジ−のためにフレーム情報及びパケットIc)イテオペ
レーションを遂行する専用の7V −入処理ユニットの
構成を示す図である。CRCユ計算することによってエ
ラーチエツクを遂行する。
ビット挿入/削除ユニット390は実際のデータとフレ
ームデリミタ及び制御ワードとを分離するための所望の
データパターンの呼出しでビットの挿入及び削除を行う
。制御キャラクタ検出ユニット391は決定機能の高速
化を図るため特定の制御キャラクタで自動的にブランチ
を行わしめる機構を提供する。
ームデリミタ及び制御ワードとを分離するための所望の
データパターンの呼出しでビットの挿入及び削除を行う
。制御キャラクタ検出ユニット391は決定機能の高速
化を図るため特定の制御キャラクタで自動的にブランチ
を行わしめる機構を提供する。
CRCユニット
この回路は第20図に示した。レジスタ428中の情報
は多項式レジスタRR429を用いるCRC計算部43
0で処理される。レジスタ429は任意の標準CRC−
CCITT又はCRC−16についてプログラム可能な
32ビツトレジスタである。各々の新しい計算の前に多
項式レジスタ及びCRC累算器が初期設定されることが
重要である。制御パスにより適切なデータフローが提供
される。レジスタ429及び431はデータバス13を
用いるレジスタ転送オペレーションにヨッてロードする
ことができる。デコーダ452及び433は制御パス1
2を介するCRC命令オペコードに応答して、CRC計
算部430への入力ラッチ428をゲートするための制
御信号及びCRC累算器461へ新しい累算値をラッチ
するための制御信号を生成する。デコーダ432はデー
タバス13を介するレジスタ転送オペレーションに応答
シて、レジスタ429へのロードのための制御信号を生
成する。マルチプレクサ435及びデマルチプレクサ4
34.456は正規の命令又はブロック転送オペレーシ
ョンを伴うデータ変換の一部としてCRC計算部430
の使用する経路を選択するのに役立つ。CRC計算部4
50はクロックされない。CRC計算部はI B M
TechnicalDisclosure bulle
tin第21巻第5号、1978年10月、第2058
ないし2061頁に記載されている。
は多項式レジスタRR429を用いるCRC計算部43
0で処理される。レジスタ429は任意の標準CRC−
CCITT又はCRC−16についてプログラム可能な
32ビツトレジスタである。各々の新しい計算の前に多
項式レジスタ及びCRC累算器が初期設定されることが
重要である。制御パスにより適切なデータフローが提供
される。レジスタ429及び431はデータバス13を
用いるレジスタ転送オペレーションにヨッてロードする
ことができる。デコーダ452及び433は制御パス1
2を介するCRC命令オペコードに応答して、CRC計
算部430への入力ラッチ428をゲートするための制
御信号及びCRC累算器461へ新しい累算値をラッチ
するための制御信号を生成する。デコーダ432はデー
タバス13を介するレジスタ転送オペレーションに応答
シて、レジスタ429へのロードのための制御信号を生
成する。マルチプレクサ435及びデマルチプレクサ4
34.456は正規の命令又はブロック転送オペレーシ
ョンを伴うデータ変換の一部としてCRC計算部430
の使用する経路を選択するのに役立つ。CRC計算部4
50はクロックされない。CRC計算部はI B M
TechnicalDisclosure bulle
tin第21巻第5号、1978年10月、第2058
ないし2061頁に記載されている。
以下余白
ビット挿入/削除ユニット
この回路は第21図に示されている。レジスタ452中
の情報はパターンレジスタRR453を用いるビット処
理部454で処理される。その出力は状況出力バイト4
55において利用可能である。パターンレジスタはビッ
トの挿入又は削除をトランスペアレントに行うことがで
きるビットシーケンスを含む8ビツトのレジスタである
。パターンレジスタ及び状況出力バイトは各々の新しい
計算の前に初期設定することが重要である。制御バスに
よって適切なデータフローが提供される。
の情報はパターンレジスタRR453を用いるビット処
理部454で処理される。その出力は状況出力バイト4
55において利用可能である。パターンレジスタはビッ
トの挿入又は削除をトランスペアレントに行うことがで
きるビットシーケンスを含む8ビツトのレジスタである
。パターンレジスタ及び状況出力バイトは各々の新しい
計算の前に初期設定することが重要である。制御バスに
よって適切なデータフローが提供される。
レジスタ453及び455はデータバス13を介するレ
ジスタ転送オペレーションによってロードすることがで
きる。デコーダ456及び457は制御バス12を介す
るBSW命令のオペコードに応答して、ビット処理部4
54への入力ラッチのゲーティングのための制御信号及
び状況出力バイト455への新しいバイト及び状況をラ
ッチするための制御信号を生成する。デコーダ456は
データバス13を介するレジスタ転送オペレーションニ
応答して、パターンレジスタ453ヘロードするための
制御信号を生成する。マルチプレクサ459及びデマル
チプレクサ458.460は正規の命令又はブロック転
送オペレーションの71のデータ変換でビット処理部4
54が使用する経路を選択するのに役立つ。
ジスタ転送オペレーションによってロードすることがで
きる。デコーダ456及び457は制御バス12を介す
るBSW命令のオペコードに応答して、ビット処理部4
54への入力ラッチのゲーティングのための制御信号及
び状況出力バイト455への新しいバイト及び状況をラ
ッチするための制御信号を生成する。デコーダ456は
データバス13を介するレジスタ転送オペレーションニ
応答して、パターンレジスタ453ヘロードするための
制御信号を生成する。マルチプレクサ459及びデマル
チプレクサ458.460は正規の命令又はブロック転
送オペレーションの71のデータ変換でビット処理部4
54が使用する経路を選択するのに役立つ。
第22図はビット処理部454の詳細を示す図である。
入力ラッチ452及び状況出力ワード455からのデー
タは選択ユニツ)(S)480によって選択され、各ユ
ニットからのデータが全ての入力ラインにわたって相対
的に1ビツトだけシフトされた6ビツトから成るように
される。比較ユニット(C)481は選択ユニット48
0からの各6ビツトとパターンレジスタ453からの入
力とを比較する。その出力はビット挿入/削除論理48
2に供給される。下記の第1表はこの論理482の機能
を示すものである。この論理482はその出力にレジス
タ455の状況及びバイトOBを含む。この状況には、
以前のバイトPB、挿入又は削除の後の残余ビット、カ
ウントビット、及び残余値8の存在又は不存在を示すフ
ラグEが含まれる。
タは選択ユニツ)(S)480によって選択され、各ユ
ニットからのデータが全ての入力ラインにわたって相対
的に1ビツトだけシフトされた6ビツトから成るように
される。比較ユニット(C)481は選択ユニット48
0からの各6ビツトとパターンレジスタ453からの入
力とを比較する。その出力はビット挿入/削除論理48
2に供給される。下記の第1表はこの論理482の機能
を示すものである。この論理482はその出力にレジス
タ455の状況及びバイトOBを含む。この状況には、
以前のバイトPB、挿入又は削除の後の残余ビット、カ
ウントビット、及び残余値8の存在又は不存在を示すフ
ラグEが含まれる。
一1]−畠 O
リ E−4cJl:L+ −歌 雷
なお、第1衣では以下のことが仮定されている。
1)バート1はアクティブになる2つの比較器(C)の
出力値を含むことができる(この場合、そのカウント及
び残余は2ビツトだけ変化する)。
出力値を含むことができる(この場合、そのカウント及
び残余は2ビツトだけ変化する)。
2)ハート2は分割して示されている。というのは、そ
のカウントはアクティブな比較器(C)の番号とは無関
係だからであシ、バート2の残余ビットに対する対応は
バート1の出力ビットについてのみ有効である。
のカウントはアクティブな比較器(C)の番号とは無関
係だからであシ、バート2の残余ビットに対する対応は
バート1の出力ビットについてのみ有効である。
制御キャラクタ検出ユニット(BCD命令回路)この回
路は第26図に示す。レジスタRR556中の情報はキ
ャラクタ検出のために処理される。
路は第26図に示す。レジスタRR556中の情報はキ
ャラクタ検出のために処理される。
自動的ブランチは新ブランチアドレス出力559に取得
される。デコードロードレジスタ557は様々なブラン
チアドレスのためのキャラクタ処理部558を初期設定
するのに用いられる。デコーダの初期設定は使用されて
いるプロトコル及びブランチルーテンの判断のために必
要なブランチアドレスによって異なる。制御バスによっ
て適切なデータフローが提供される。デコーダ560及
び561は制御バス12を介するBCD命令のオペコー
ドに応答して、キャラクタ処理部558への入力ラッテ
556をゲートし、新ブランチアドレス559をラッチ
する。デコーダ560はデータバス1′5を介するレジ
スタ転送オペレーションニ応答して、キャラクタ処理部
558の構成要素を初期設定するための制御信号を生成
する。
される。デコードロードレジスタ557は様々なブラン
チアドレスのためのキャラクタ処理部558を初期設定
するのに用いられる。デコーダの初期設定は使用されて
いるプロトコル及びブランチルーテンの判断のために必
要なブランチアドレスによって異なる。制御バスによっ
て適切なデータフローが提供される。デコーダ560及
び561は制御バス12を介するBCD命令のオペコー
ドに応答して、キャラクタ処理部558への入力ラッテ
556をゲートし、新ブランチアドレス559をラッチ
する。デコーダ560はデータバス1′5を介するレジ
スタ転送オペレーションニ応答して、キャラクタ処理部
558の構成要素を初期設定するための制御信号を生成
する。
第24図は制御キャラクタ検出オペレーションのために
用いられるハードウェアを示す図である。
用いられるハードウェアを示す図である。
キャラクタ556及びブランチアドレススタック567
は1対1の変換のためのアドレスで初期設定される。こ
れにより、比較器568及び優先順位エンコーダは入力
レジスタR・n565中の値を用いてブランチアドレス
スタック262中の対応するブランチアドレスを選択す
ることができる。
は1対1の変換のためのアドレスで初期設定される。こ
れにより、比較器568及び優先順位エンコーダは入力
レジスタR・n565中の値を用いてブランチアドレス
スタック262中の対応するブランチアドレスを選択す
ることができる。
このアドレスは出力レジスタ(第23図のブロック55
9)へ送られる。
9)へ送られる。
上述のレジスタ再形成命令、アドレス経路指定命令、ブ
ロック転送命令、及びBCD命令を定義するのにここで
はAHPL (A HardwareProgramm
ing Language)を用いた。下記の第2衣
ないし第5表は上述の各命令に対応するそれぞれのAH
PLデー′夕である。なお、参考文献(1)の第5章は
この言語の詳細について述べている。
ロック転送命令、及びBCD命令を定義するのにここで
はAHPL (A HardwareProgramm
ing Language)を用いた。下記の第2衣
ないし第5表は上述の各命令に対応するそれぞれのAH
PLデー′夕である。なお、参考文献(1)の第5章は
この言語の詳細について述べている。
°へ
気
気
気
\ \ へN \ \ \ \ \ \ \ \ \
\ \414kII畳骨畳畳畳畳畳畳畳畳着 0 Σ ロ り Q cQ −ベ 逼 気 眞 \ \ CiJ@ 骨 F9発明の詳細 な説明したように本発明によれば、層構造の通信プロト
コルにおけるプロセッサについて新しいアーキテクチャ
を導入することによシ、その性能を従来に比べて高める
ことができる。
\ \414kII畳骨畳畳畳畳畳畳畳畳着 0 Σ ロ り Q cQ −ベ 逼 気 眞 \ \ CiJ@ 骨 F9発明の詳細 な説明したように本発明によれば、層構造の通信プロト
コルにおけるプロセッサについて新しいアーキテクチャ
を導入することによシ、その性能を従来に比べて高める
ことができる。
第1図は本発明に基づ<cppシステムの構成を示す図
、第2図は並行処理及びパイプラインを説明する図、第
6図はcppが用いられる典型的な環境を示す図、第4
図はcpp命令のフォーマットを示す図、第5図はヘッ
ダ処理ユニットの構成を示す図、第6図はBBD命令の
実行を説明する図、第7図は優先順位アドレス機構の構
成を示す図、第8図は優先順位エンコーダでアドレス指
定されるアドレススタックアレイを示す図、第9図は優
先順位エンコーダの構成を示す図、第10図はレジスタ
再形成ユニットの構成を示す図、第11図はレジスタ再
形成ユニットのスワップ及びローテートのマルチプレク
サを示す図、第12図はスワップユニットを示す図、第
13図はレジスタ再形成ユニットの他の実施例を示す図
、第14図はアドレス経路指定ユニットを示す図、第1
5図はアドレス生成器の構成を示す図、第16図はメモ
リアクセスユニットを示す図、第17図はブロック転送
ユニットを示す図、第18図はブロック転送オペレーシ
ョンの制御を示す図、第19図はフレーム処理ユニット
を示す図、第20図はCRCユニットの構成を示す図、
第21図はビット挿入/削除ユニットの構成を示す図、
第22図はビット処理部の構成を示す図、第23図は制
御キャラクタ検出ユニットの構成を示す図、第24図は
キャラクタ処理部の構成を示す図である。 (タト1身S) 第2図 第3図 第41!! 第5図 第6図 209の11尺入力へ 第16図 第17図 第20図 第21図
、第2図は並行処理及びパイプラインを説明する図、第
6図はcppが用いられる典型的な環境を示す図、第4
図はcpp命令のフォーマットを示す図、第5図はヘッ
ダ処理ユニットの構成を示す図、第6図はBBD命令の
実行を説明する図、第7図は優先順位アドレス機構の構
成を示す図、第8図は優先順位エンコーダでアドレス指
定されるアドレススタックアレイを示す図、第9図は優
先順位エンコーダの構成を示す図、第10図はレジスタ
再形成ユニットの構成を示す図、第11図はレジスタ再
形成ユニットのスワップ及びローテートのマルチプレク
サを示す図、第12図はスワップユニットを示す図、第
13図はレジスタ再形成ユニットの他の実施例を示す図
、第14図はアドレス経路指定ユニットを示す図、第1
5図はアドレス生成器の構成を示す図、第16図はメモ
リアクセスユニットを示す図、第17図はブロック転送
ユニットを示す図、第18図はブロック転送オペレーシ
ョンの制御を示す図、第19図はフレーム処理ユニット
を示す図、第20図はCRCユニットの構成を示す図、
第21図はビット挿入/削除ユニットの構成を示す図、
第22図はビット処理部の構成を示す図、第23図は制
御キャラクタ検出ユニットの構成を示す図、第24図は
キャラクタ処理部の構成を示す図である。 (タト1身S) 第2図 第3図 第41!! 第5図 第6図 209の11尺入力へ 第16図 第17図 第20図 第21図
Claims (1)
- 【特許請求の範囲】 層構造の通信プロトコルを実行するための通信プロセッ
サであつて、 第1及び第2のタイプの命令を記憶する手段を有し、上
記第1のタイプの命令は層構造の通信プロトコルの各層
において処理ヘッダ及びフレーム情報で頻出する機能に
関連する所定のオペレーションを指定するものであり、
上記第2のタイプの命令は上記所定のオペレーション以
外の機能を遂行するためのオペレーションを指定するも
のであり、上記所定の機能はそれぞれ複数マシンサイク
ルを要するためにシステムの処理のスループットを制限
するものであり、 上記第1のタイプの命令に応答して各命令によつて指定
されたオペレーションを単一のマシンサイクルで遂行す
る特別の目的の回路手段と、上記第2のタイプの命令に
応答して各命令によつて指定された機能を遂行する汎用
演算論理機構と、を具備する通信プロセッサ。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/254,986 US4991133A (en) | 1988-10-07 | 1988-10-07 | Specialized communications processor for layered protocols |
US254986 | 1988-10-07 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH02149156A true JPH02149156A (ja) | 1990-06-07 |
JPH0636515B2 JPH0636515B2 (ja) | 1994-05-11 |
Family
ID=22966354
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1260393A Expired - Fee Related JPH0636515B2 (ja) | 1988-10-07 | 1989-10-06 | 通信プロセッサ装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US4991133A (ja) |
EP (1) | EP0363173A3 (ja) |
JP (1) | JPH0636515B2 (ja) |
CA (1) | CA1319997C (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008547294A (ja) * | 2005-06-23 | 2008-12-25 | ヒルシャー ゲゼルシャフト フュア ジステームアウトマツィオーン ミット ベシュレンクテル ハフツング | オープンなオートメーションシステムのバス加入機器のデータ通信方法 |
Families Citing this family (102)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5485370A (en) * | 1988-05-05 | 1996-01-16 | Transaction Technology, Inc. | Home services delivery system with intelligent terminal emulator |
US5572572A (en) | 1988-05-05 | 1996-11-05 | Transaction Technology, Inc. | Computer and telephone apparatus with user friendly interface and enhanced integrity features |
US5249292A (en) * | 1989-03-31 | 1993-09-28 | Chiappa J Noel | Data packet switch using a primary processing unit to designate one of a plurality of data stream control circuits to selectively handle the header processing of incoming packets in one data packet stream |
US5613100A (en) * | 1989-09-12 | 1997-03-18 | Nec Corporation | Computer system having an open systems interconnection (OSI) management system for an information conversion for management of non-open systems |
US5062108A (en) * | 1989-09-29 | 1991-10-29 | At&T Bell Laboratories | ISDN codeset conversion |
JPH03123244A (ja) * | 1989-10-06 | 1991-05-27 | Matsushita Electric Ind Co Ltd | 通信装置 |
US5708810A (en) * | 1989-10-10 | 1998-01-13 | Unisys Corporation | Image-based document processing system having a platform architecture |
US5121390A (en) * | 1990-03-15 | 1992-06-09 | International Business Machines Corporation | Integrated data link controller with synchronous link interface and asynchronous host processor interface |
US5237693A (en) * | 1990-04-04 | 1993-08-17 | Sharp Kabushiki Kaisha | System for accessing peripheral devices connected in network |
US6105061A (en) * | 1990-07-26 | 2000-08-15 | Nec Corporation | Hierarchically distributed network management system using open system interconnection (OSI) protocols |
US5153884A (en) * | 1990-08-15 | 1992-10-06 | Allen-Bradley Company, Inc. | Intelligent network interface circuit |
US5245608A (en) * | 1990-09-26 | 1993-09-14 | International Business Machines Corporation | Logical grouping of layer entities in a layered communication architecture |
US5235597A (en) * | 1991-03-08 | 1993-08-10 | International Business Machines Corp. | Synchronizing asynchronous protocol interactions between peer layers in different nodes of a layered communication network |
US5168495A (en) * | 1991-05-10 | 1992-12-01 | Ibm Corporation | Nested frame communication protocol |
US5630157A (en) * | 1991-06-13 | 1997-05-13 | International Business Machines Corporation | Computer organization for multiple and out-of-order execution of condition code testing and setting instructions |
US5224098A (en) * | 1991-07-17 | 1993-06-29 | International Business Machines Corporation | Compensation for mismatched transport protocols in a data communications network |
JP2729420B2 (ja) * | 1991-10-02 | 1998-03-18 | 三菱電機株式会社 | 通信用プロセッサ |
EP0543512B1 (en) * | 1991-11-19 | 1999-10-06 | International Business Machines Corporation | Multiprocessor system |
US5805808A (en) * | 1991-12-27 | 1998-09-08 | Digital Equipment Corporation | Real time parser for data packets in a communications network |
US5351243A (en) * | 1991-12-27 | 1994-09-27 | Digital Equipment Corporation | Monitor for packets on a communications network |
US5278834A (en) * | 1992-05-26 | 1994-01-11 | Alcatel Network Systems, Inc. | Method for implementing a data communication protocol stack |
US5303237A (en) * | 1992-07-31 | 1994-04-12 | International Business Machines Corporation | Frame relay system capable of handling both voice and data frames |
EP0584027A2 (en) * | 1992-08-19 | 1994-02-23 | International Business Machines Corporation | Seamless peer-to-peer communications in a layered communications architecture |
GB2274230B (en) * | 1993-01-07 | 1996-05-15 | Digital Equipment Int | Communication systems |
US5396505A (en) * | 1993-07-06 | 1995-03-07 | Tandem Computers Incorporated | Programmable error-checking matrix for digital communication system |
DE4343588A1 (de) * | 1993-12-21 | 1995-06-22 | Sel Alcatel Ag | Verfahren und Einrichtung zur zufälligen Auswahl einer von N gleichen Einheiten, sowie Koppelelement, Koppelnetz und Vermittlungsstelle damit |
US5903754A (en) * | 1994-06-21 | 1999-05-11 | Microsoft Corporation | Dynamic layered protocol stack |
US5655140A (en) * | 1994-07-22 | 1997-08-05 | Network Peripherals | Apparatus for translating frames of data transferred between heterogeneous local area networks |
US6334219B1 (en) | 1994-09-26 | 2001-12-25 | Adc Telecommunications Inc. | Channel selection for a hybrid fiber coax network |
US7280564B1 (en) | 1995-02-06 | 2007-10-09 | Adc Telecommunications, Inc. | Synchronization techniques in multipoint-to-point communication using orthgonal frequency division multiplexing |
USRE42236E1 (en) | 1995-02-06 | 2011-03-22 | Adc Telecommunications, Inc. | Multiuse subcarriers in multipoint-to-point communication using orthogonal frequency division multiplexing |
US5796832A (en) | 1995-11-13 | 1998-08-18 | Transaction Technology, Inc. | Wireless transaction and information system |
US5754788A (en) * | 1995-12-28 | 1998-05-19 | Attachmate Corporation | Method and system for reconfiguring a communications stack |
US5870565A (en) * | 1996-05-06 | 1999-02-09 | Telefonaktiebolaget L M Ericsson (Publ) | Telecommunications management network connected to a common channel signaling network |
US6212601B1 (en) * | 1996-08-30 | 2001-04-03 | Texas Instruments Incorporated | Microprocessor system with block move circuit disposed between cache circuits |
US6185207B1 (en) | 1997-06-19 | 2001-02-06 | International Business Machines Corporation | Communication system having a local area network adapter for selectively deleting information and method therefor |
US6215776B1 (en) | 1997-10-08 | 2001-04-10 | Lockheed Martin Missiles & Space Company | Satellite communication system |
US7076568B2 (en) * | 1997-10-14 | 2006-07-11 | Alacritech, Inc. | Data communication apparatus for computer intelligent network interface card which transfers data between a network and a storage device according designated uniform datagram protocol socket |
US6226680B1 (en) | 1997-10-14 | 2001-05-01 | Alacritech, Inc. | Intelligent network interface system method for protocol processing |
US7133940B2 (en) * | 1997-10-14 | 2006-11-07 | Alacritech, Inc. | Network interface device employing a DMA command queue |
US6591302B2 (en) | 1997-10-14 | 2003-07-08 | Alacritech, Inc. | Fast-path apparatus for receiving data corresponding to a TCP connection |
US7167927B2 (en) * | 1997-10-14 | 2007-01-23 | Alacritech, Inc. | TCP/IP offload device with fast-path TCP ACK generating and transmitting mechanism |
US6427173B1 (en) | 1997-10-14 | 2002-07-30 | Alacritech, Inc. | Intelligent network interfaced device and system for accelerated communication |
US6658480B2 (en) | 1997-10-14 | 2003-12-02 | Alacritech, Inc. | Intelligent network interface system and method for accelerated protocol processing |
US7185266B2 (en) * | 2003-02-12 | 2007-02-27 | Alacritech, Inc. | Network interface device for error detection using partial CRCS of variable length message portions |
US8621101B1 (en) | 2000-09-29 | 2013-12-31 | Alacritech, Inc. | Intelligent network storage interface device |
US6427171B1 (en) | 1997-10-14 | 2002-07-30 | Alacritech, Inc. | Protocol processing stack for use with intelligent network interface device |
US6687758B2 (en) * | 2001-03-07 | 2004-02-03 | Alacritech, Inc. | Port aggregation for network connections that are offloaded to network interface devices |
US6757746B2 (en) * | 1997-10-14 | 2004-06-29 | Alacritech, Inc. | Obtaining a destination address so that a network interface device can write network data without headers directly into host memory |
US8539112B2 (en) | 1997-10-14 | 2013-09-17 | Alacritech, Inc. | TCP/IP offload device |
US7042898B2 (en) | 1997-10-14 | 2006-05-09 | Alacritech, Inc. | Reducing delays associated with inserting a checksum into a network message |
US7089326B2 (en) * | 1997-10-14 | 2006-08-08 | Alacritech, Inc. | Fast-path processing for receiving data on TCP connection offload devices |
US7284070B2 (en) * | 1997-10-14 | 2007-10-16 | Alacritech, Inc. | TCP offload network interface device |
US6807581B1 (en) | 2000-09-29 | 2004-10-19 | Alacritech, Inc. | Intelligent network storage interface system |
US7174393B2 (en) * | 2000-12-26 | 2007-02-06 | Alacritech, Inc. | TCP/IP offload network interface device |
US6697868B2 (en) * | 2000-02-28 | 2004-02-24 | Alacritech, Inc. | Protocol processing stack for use with intelligent network interface device |
US6389479B1 (en) | 1997-10-14 | 2002-05-14 | Alacritech, Inc. | Intelligent network interface device and system for accelerated communication |
US7237036B2 (en) * | 1997-10-14 | 2007-06-26 | Alacritech, Inc. | Fast-path apparatus for receiving data corresponding a TCP connection |
US6434620B1 (en) * | 1998-08-27 | 2002-08-13 | Alacritech, Inc. | TCP/IP offload network interface device |
US8782199B2 (en) | 1997-10-14 | 2014-07-15 | A-Tech Llc | Parsing a packet header |
US6470415B1 (en) | 1999-10-13 | 2002-10-22 | Alacritech, Inc. | Queue system involving SRAM head, SRAM tail and DRAM body |
US7100020B1 (en) * | 1998-05-08 | 2006-08-29 | Freescale Semiconductor, Inc. | Digital communications processor |
US6438678B1 (en) * | 1998-06-15 | 2002-08-20 | Cisco Technology, Inc. | Apparatus and method for operating on data in a data communications system |
US7664883B2 (en) * | 1998-08-28 | 2010-02-16 | Alacritech, Inc. | Network interface device that fast-path processes solicited session layer read commands |
US7328270B1 (en) * | 1999-02-25 | 2008-02-05 | Advanced Micro Devices, Inc. | Communication protocol processor having multiple microprocessor cores connected in series and dynamically reprogrammed during operation via instructions transmitted along the same data paths used to convey communication data |
US6128528A (en) * | 1999-03-18 | 2000-10-03 | Medtronics, Inc. | Error code calculations for data stored in an implantable medical device |
US7174452B2 (en) * | 2001-01-24 | 2007-02-06 | Broadcom Corporation | Method for processing multiple security policies applied to a data packet structure |
USD426071S (en) * | 1999-05-14 | 2000-06-06 | Tisha Lee Vandemore | Mat for the sequential display of a plurality of photographs |
JP5220974B2 (ja) * | 1999-10-14 | 2013-06-26 | ブルアーク ユーケー リミテッド | ハードウェア実行又はオペレーティングシステム機能の加速のための装置及び方法 |
US6629288B1 (en) * | 2000-03-01 | 2003-09-30 | Conexant Systems, Inc. | Single clock cycle CRC engine |
US6848072B1 (en) * | 2000-09-19 | 2005-01-25 | Bbn Solutions Llc | Network processor having cyclic redundancy check implemented in hardware |
US8019901B2 (en) * | 2000-09-29 | 2011-09-13 | Alacritech, Inc. | Intelligent network storage interface system |
US6720074B2 (en) * | 2000-10-26 | 2004-04-13 | Inframat Corporation | Insulator coated magnetic nanoparticulate composites with reduced core loss and method of manufacture thereof |
US7305092B2 (en) | 2000-12-19 | 2007-12-04 | Qualcomm Incorporated | Method and system to accelerate cryptographic functions for secure e-commerce applications |
US8218555B2 (en) * | 2001-04-24 | 2012-07-10 | Nvidia Corporation | Gigabit ethernet adapter |
US7274706B1 (en) | 2001-04-24 | 2007-09-25 | Syrus Ziai | Methods and systems for processing network data |
US7085850B2 (en) * | 2001-08-22 | 2006-08-01 | International Business Machines Corporation | Stateless message processing scheme for network processors interactions |
US6976205B1 (en) * | 2001-09-21 | 2005-12-13 | Syrus Ziai | Method and apparatus for calculating TCP and UDP checksums while preserving CPU resources |
US20030121835A1 (en) * | 2001-12-31 | 2003-07-03 | Peter Quartararo | Apparatus for and method of sieving biocompatible adsorbent beaded polymers |
US7496689B2 (en) * | 2002-04-22 | 2009-02-24 | Alacritech, Inc. | TCP/IP offload device |
US7543087B2 (en) * | 2002-04-22 | 2009-06-02 | Alacritech, Inc. | Freeing transmit memory on a network interface device prior to receiving an acknowledgement that transmit data has been received by a remote device |
US20070253430A1 (en) * | 2002-04-23 | 2007-11-01 | Minami John S | Gigabit Ethernet Adapter |
US7337241B2 (en) * | 2002-09-27 | 2008-02-26 | Alacritech, Inc. | Fast-path apparatus for receiving data corresponding to a TCP connection |
US7191241B2 (en) * | 2002-09-27 | 2007-03-13 | Alacritech, Inc. | Fast-path apparatus for receiving data corresponding to a TCP connection |
US7457822B1 (en) | 2002-11-01 | 2008-11-25 | Bluearc Uk Limited | Apparatus and method for hardware-based file system |
US8041735B1 (en) | 2002-11-01 | 2011-10-18 | Bluearc Uk Limited | Distributed file system and method |
US20040088262A1 (en) * | 2002-11-06 | 2004-05-06 | Alacritech, Inc. | Enabling an enhanced function of an electronic device |
US7093099B2 (en) * | 2002-12-12 | 2006-08-15 | Alacritech, Inc. | Native lookup instruction for file-access processor searching a three-level lookup cache for variable-length keys |
JP4136857B2 (ja) * | 2003-09-11 | 2008-08-20 | キヤノン株式会社 | 機器検索方法およびプログラム |
US6996070B2 (en) * | 2003-12-05 | 2006-02-07 | Alacritech, Inc. | TCP/IP offload device with reduced sequential processing |
US8176545B1 (en) | 2003-12-19 | 2012-05-08 | Nvidia Corporation | Integrated policy checking system and method |
US8248939B1 (en) | 2004-10-08 | 2012-08-21 | Alacritech, Inc. | Transferring control of TCP connections between hierarchy of processing mechanisms |
US7590930B2 (en) * | 2005-05-24 | 2009-09-15 | Intel Corporation | Instructions for performing modulo-2 multiplication and bit reflection |
US7738500B1 (en) | 2005-12-14 | 2010-06-15 | Alacritech, Inc. | TCP timestamp synchronization for network connections that are offloaded to network interface devices |
KR100728038B1 (ko) * | 2006-03-03 | 2007-06-14 | 삼성전자주식회사 | Plc 네트워크상에서 데이터를 묶어서 전송하는 방법 및장치 |
US20070257923A1 (en) * | 2006-03-15 | 2007-11-08 | Colin Whitby-Strevens | Methods and apparatus for harmonization of interface profiles |
TWI358735B (en) * | 2008-01-03 | 2012-02-21 | Nanya Technology Corp | Memory access control method |
US8539513B1 (en) | 2008-04-01 | 2013-09-17 | Alacritech, Inc. | Accelerating data transfer in a virtual computer system with tightly coupled TCP connections |
US8341286B1 (en) | 2008-07-31 | 2012-12-25 | Alacritech, Inc. | TCP offload send optimization |
US9306793B1 (en) | 2008-10-22 | 2016-04-05 | Alacritech, Inc. | TCP offload device that batches session layer headers to reduce interrupts as well as CPU copies |
US8417961B2 (en) * | 2010-03-16 | 2013-04-09 | Oracle International Corporation | Apparatus and method for implementing instruction support for performing a cyclic redundancy check (CRC) |
JP6428805B2 (ja) * | 2017-02-07 | 2018-11-28 | オムロン株式会社 | 演算装置、制御装置および制御方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62252242A (ja) * | 1986-04-25 | 1987-11-04 | Fujitsu Ltd | デ−タ送受信方式 |
JPS6331247A (ja) * | 1986-07-24 | 1988-02-09 | Matsushita Electric Ind Co Ltd | 通信制御装置 |
JPS63129443A (ja) * | 1986-11-19 | 1988-06-01 | Matsushita Graphic Commun Syst Inc | 通信制御装置 |
JPS63196964A (ja) * | 1987-02-10 | 1988-08-15 | Fujitsu Ltd | プロトコル・デ−タ・ユニツト処理計算機 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4811279A (en) * | 1981-10-05 | 1989-03-07 | Digital Equipment Corporation | Secondary storage facility employing serial communications between drive and controller |
SE448919B (sv) * | 1983-03-04 | 1987-03-23 | Ibm Svenska Ab | Metod for att overfora informationsenheter i ett datornetsystem, samt datornetsystem for genomforande av metoden |
DE3674200D1 (de) * | 1986-04-30 | 1990-10-18 | Ibm | Nichtkodierte information und begleitdaten-vermittlungsvorrichtung. |
US4736369A (en) * | 1986-06-13 | 1988-04-05 | International Business Machines Corp. | Adaptive session-level pacing |
US4855905A (en) * | 1987-04-29 | 1989-08-08 | International Business Machines Corporation | Multiprotocol I/O communications controller unit including emulated I/O controllers and tables translation of common commands and device addresses |
-
1988
- 1988-10-07 US US07/254,986 patent/US4991133A/en not_active Expired - Fee Related
-
1989
- 1989-08-30 CA CA000609856A patent/CA1319997C/en not_active Expired - Fee Related
- 1989-10-04 EP EP19890310147 patent/EP0363173A3/en not_active Withdrawn
- 1989-10-06 JP JP1260393A patent/JPH0636515B2/ja not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS62252242A (ja) * | 1986-04-25 | 1987-11-04 | Fujitsu Ltd | デ−タ送受信方式 |
JPS6331247A (ja) * | 1986-07-24 | 1988-02-09 | Matsushita Electric Ind Co Ltd | 通信制御装置 |
JPS63129443A (ja) * | 1986-11-19 | 1988-06-01 | Matsushita Graphic Commun Syst Inc | 通信制御装置 |
JPS63196964A (ja) * | 1987-02-10 | 1988-08-15 | Fujitsu Ltd | プロトコル・デ−タ・ユニツト処理計算機 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008547294A (ja) * | 2005-06-23 | 2008-12-25 | ヒルシャー ゲゼルシャフト フュア ジステームアウトマツィオーン ミット ベシュレンクテル ハフツング | オープンなオートメーションシステムのバス加入機器のデータ通信方法 |
Also Published As
Publication number | Publication date |
---|---|
EP0363173A2 (en) | 1990-04-11 |
JPH0636515B2 (ja) | 1994-05-11 |
US4991133A (en) | 1991-02-05 |
CA1319997C (en) | 1993-07-06 |
EP0363173A3 (en) | 1991-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH02149156A (ja) | 通信プロセッサ装置 | |
US4745547A (en) | Vector processing | |
KR960003046B1 (ko) | 비정렬 레퍼런스의 처리가 가능한 risc 컴퓨터 및 그 처리방법 | |
EP0054888B1 (en) | Data-processing system with main and buffer storage control | |
US4016545A (en) | Plural memory controller apparatus | |
US4648034A (en) | Busy signal interface between master and slave processors in a computer system | |
US4298927A (en) | Computer instruction prefetch circuit | |
KR100956970B1 (ko) | 프로세서에서의 마스킹된 저장 동작들을 위한 시스템 및방법 | |
JPH0370034A (ja) | 順次プログラムの並列実行のためのコンピュータ・システム及び方法並びにデータ値割当方法 | |
US8046568B2 (en) | Microprocessor with integrated high speed memory | |
JPH07152733A (ja) | ベクトル・データを処理するコンピュータ・システムおよび方法 | |
EP0248436A2 (en) | Method of and apparatus for processing data | |
JP2001216194A (ja) | 演算処理装置 | |
JPH0332818B2 (ja) | ||
JPH04260927A (ja) | データ処理装置 | |
US7051146B2 (en) | Data processing systems including high performance buses and interfaces, and associated communication methods | |
US4611278A (en) | Wraparound buffer for repetitive decimal numeric operations | |
US4608633A (en) | Method for decreasing execution time of numeric instructions | |
EP0385136B1 (en) | Microprocessor cooperating with a coprocessor | |
JPH02162422A (ja) | 優先ブランチ機構を備えたデータ処理システム | |
US6931473B2 (en) | Data transfer via Host/PCI-X bridges | |
JPS59114677A (ja) | ベクトル処理装置 | |
JPH04260926A (ja) | ビット検索回路及びそれを備えたデータ処理装置 | |
JPS6236575B2 (ja) | ||
JP2765882B2 (ja) | 並列計算機,ベクトルレジスタ間データフロー同期装置およびネットワークプリセット装置 |