無線電子工学および電気工学の百科事典 ROMエミュレータ。 無線エレクトロニクスと電気工学の百科事典 無線電子工学と電気工学の百科事典 / マイクロコントローラー この記事で説明されているエミュレータは、コンピュータと連携して、マイクロプロセッサ デバイスのソフトウェアのデバッグ中に ROM を置き換えることができます。 これにより、プログラムを迅速に修正できるため、EEPROM の再プログラミングにかかる時間を節約できます。 エミュレータは独自の RAM を持たないため、比較的低速です。 しかし同じ理由で、シンプルで安価です。 マイクロプロセッサ機器の開発において生じる問題の一つに、ROMに書き込まれたプログラムのデバッグがあります。 この目的には、通常、紫外線照射により情報を消去する、いわゆるリプログラマブルROM(RPZU)が使用されます。 プログラムを変更するとEEPROMを消去し、再度情報を書き込む必要があるため、デバッグに時間がかかります。 さらに、10 ~ 25 サイクル後にデータ記憶の信頼性が低下し、マイクロ回路を交換する必要があります。 したがって、創造的な作業は、問題の経済的側面は言うまでもなく、上書きという退屈な機械的プロセスによって影が薄くなります。UV 消去機能を備えた EEPROM は安価ではありません。 エミュレータは問題の解決に役立ちます。その概略図を図に示します。 1. 最大 64 K バイトの容量を持つ ROM チップの代わりに、XP1 プラグがデバッグ対象のデバイスのパネルに挿入されます。 ROM の種類に応じて、エミュレータのワイヤをプラグ接点に接続する順序のみが変更されます (図に示されているものは、27512 KB の容量を持つ 64 チップに対応します)。 XP2 プラグは、IBM 互換パーソナル コンピュータ (PC) の LPT1 パラレル ポート ソケットに接続されます。 このポートは主に外部機器(プリンタ)へのデータ転送を目的としているため、出力12系統、入力合計16系統を備えています。 これにより、コンピュータが受信する XNUMX ビット ROM アドレスが強制的に多重化され、当然エミュレーション速度に影響します。 エミュレータは次の機能ブロックで構成されます: クロックジェネレータ (DD1.1 ~ DD1.2)、クロックシンクロナイザ (DD2.2、DD3.1)、トリガデバイス (DD2.1)、パルスカウンタ (DD4)、ブロックライトパルスシェーパ アドレス (DD1.5、DD3.3)、データ レジスタ (DD5)、およびアドレス マルチプレクサ (DD6、DD7)。 作業は、マイクロプロセッサデバイスからトリガDD4の入力S(ピン2.1)に低レベル信号CSが到着することで始まります(信号のタイミング図は図2に示されています)。 後者は、入力 D (ピン 1) トリガー DD5 に接続された直接出力 (ピン 12) での論理 2.2 に対応する状態になります。 クロック パルス (これは DD1.4 インバータによって提供されます) の立ち下がり時に、DD1 の出力 (ピン 9) にも論理 2.2 が現れ、DD3.1 の出力へのクロック パルスの通過が可能になります。エレメント。 これらはカウンタ DD4 によってカウントされ、その下位 6 桁の出力信号がアドレス マルチプレクサ DD7 および DD0 を制御します。 ROM アドレスは、A3 ~ A4、A7 ~ A8、A11 ~ A12、A15 ~ AXNUMX の XNUMX つの XNUMX ビット グループで PC に送信されます。 それを受信するには、ERROR 入力が使用されます。 SLCT、ACK、PEパラレルポート。 カウンタ DD4 は、その変換係数が 5 になるようにフィードバックによってカバーされます。これは、エミュレーション サイクルにかかるクロック パルスの周期数です。 DD3.4 エレメントの出力からの最初の 1 つのパルスは、マルチプレクサの切り替えと同時に LPT ポートの BUSY 入力に到着します。 コンピュータによるアドレスの読み取り手順を同期させます。 8 番目の期間では、コンピューターは DATA5 ~ DATA2.1 出力にデータ バイトを発行します。このデータ バイトは、エミュレートされた ROM 内の指定されたアドレスに配置されている必要があります。 このバイトはレジスタ DDXNUMX に格納されます。 期間の終了時に、トリガー DDXNUMX は元の状態に戻ります。 確かに、後者は CS 信号がこの瞬間までに終了した場合にのみ発生します。 そうしないと、前述のサイクルが繰り返されます。 エミュレータは両面プリント基板上に組み立てられます。その図を図に示します。 3. ボードには接触パッド X1 ~ X4 のグループがあり、ワイヤが XP1 および XP2 プラグにはんだ付けされます。 回路図に示されている超小型回路の代わりに、TTL または TTLSH シリーズ (K155、K555、KR1533、KR531) の機能的類似物を使用することができます。 DD1 チップを交換する場合、クロック ジェネレータ エレメント (R1、R3、C2) の選択が必要になる場合があります。エミュレーション速度はパルス繰り返しレートによって異なります。 100kHzを超える周波数に設定すると故障の原因となる場合がありますので推奨しません。 XP1 プラグは、UV 消去された欠陥のある EEPROM から作られている可能性があります。 透明な窓を割ったら、クリスタルをケースの接触パッドに接続している薄い導体を取り除く必要があります。 ケーブルワイヤは、前者の超小型回路をパネルに挿入するのを妨げないように、端子の外側部分にはんだ付けされています。 上で説明したエミュレータ動作のアルゴリズムでは、マイクロプロセッサ デバイスをステップバイステップ モードに移行する必要があります。 これは、プログラムの最初の「実行」やデバッグの初期段階に便利です。 連続モードで動作するには、エミュレータに同期デバイスを追加し、図に示すスキームに従って組み立てる必要があります。 4. KR580GF80 クロック ジェネレーターを備えた KR580VM24A マイクロプロセッサー用に設計されており、Radio-86RK コンピューターでテストされました。 他のタイプのマイクロプロセッサの場合は、シンクロナイザの変更が必要になる場合があります。 この表は、コンピュータによる最大速度での ROM エミュレーションの手順を示しています。 これは、Borland Pascal プログラミング システムに組み込まれている ASSEMBLY 言語で書かれており、このシステムを使用して開発されたプログラムで使用することを目的としています。 メイン プログラム内のポインタ型のグローバル変数 pDATA は、エミュレートされた ROM イメージを含むバイト配列の最初の要素のアドレスに設定する必要があります。 PC メモリへのアクセス数を最小限に抑え、一時的なデータ保存にプロセッサ レジスタを使用することにより、データ交換は最大速度で進行します (メモリ アクセスにはレジスタ間の操作よりも数倍の時間がかかります)。 ここで説明する手順の特徴は、無限ループであり、作業を高速化するために、キーボードからの割り込みを含むすべての割り込みを無効にすることです。 そのため、PCの「RESET」ボタンを押すか、PCの電源を切るだけでエミュレーションを停止することができます。 デバッグ中のデバイスの動作に関する情報の PC モニター画面への表示も除外されます。 これらの欠点を解消することは、平均的なスキルのプログラマの力の範囲内ですが、手順を遅くするという代償を払うだけです。 コマンドラインまたは設定ファイルで指定されたキーはエミュレーション モードを設定し、エミュレートされた ROM のイメージが含まれるファイルを選択します。 コマンドラインは設定ファイルよりも優先されます。 次のキーが提供されています。 -sf - 最速のエミュレーション (上記の手順を使用)。 -sns - モード。キーボードをポーリングし、[Esc] キーを押して終了するため、前のモードより若干遅くなります。 -sp は最も遅いモードです。 モニター画面には、デバッグ対象のデバイスがアクセスする各 ROM セルのアドレスとそこからのデータが表示されます。 住所の XNUMX 分の XNUMX を読み取るプロセスも表示されます。 これは、プログラムの実行の進行状況を監視できるため、マイクロプロセッサ デバイスのデバッグの初期段階で便利です。 -f filename - ROM イメージを含むファイルの名前を指定します。 /y - ROM イメージ ファイルの長さの情報容量の均等化の制御を無効にします。 /? - エミュレータの動作モードに関するヘルプを表示します。 [F2]キーを押すと、現在のアドレスの読み取りプロセスが停止され、プログラムは新しいアドレスの読み取り待ちモードになります。 ROM イメージは、エミュレートされた ROM に格納されているすべてのバイトが、アドレスの昇順で XNUMX から順番に書き込まれるバイナリ ファイルです。 - デバッグされたマイクロプロセッサデバイスのコマンドとデータのコード。 アドレス シーケンス内のギャップは許可されないことに注意してください。 未使用のセルの値もファイルに書き込む必要があります。 このようなファイルは、コマンドラインから呼び出された場合、TASM クロスアセンブラを使用して作成できます。 TASM.EXE -85 -g3 PROG.ASM ここで、-85 スイッチは、変換されたプログラム PROG.ASM が対象とするプロセッサのタイプ (8085) を設定し、-g3 はバイナリ形式での結果の出力を指定します。 作成された PROG.OBJ ファイルは、エミュレータの ROM イメージとして機能します。 著者: S. Belyaev、D. Chernykh、Tambov 他の記事も見る セクション マイクロコントローラー. 読み書き 有用な この記事へのコメント. 科学技術の最新ニュース、新しい電子機器: 庭の花の間引き機
02.05.2024 最先端の赤外線顕微鏡
02.05.2024 昆虫用エアトラップ
01.05.2024
その他の興味深いニュース:
無料の技術ライブラリの興味深い資料: ▪ サイトセクション トーンとボリュームのコントロール。 記事の選択 ▪ 記事のスケール - 印刷どおり。 ホームマスターへのヒント ▪ 記事 デジタルマルチメータは温度を測定します。 無線エレクトロニクスと電気工学の百科事典 ▪ 記事 スパイラルUHFアンテナ。 無線エレクトロニクスと電気工学の百科事典 このページのすべての言語 ホームページ | 図書館 | 物品 | サイトマップ | サイトレビュー www.diagram.com.ua |