問題タブ [digital-logic]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
549 参照

boolean-logic - 論理ゲートのオンまたはオフの切り替え

3つの入力「A、B、および制御線C」を持つ「ANDゲート」がある場合

ANDゲートのオン/オフの切り替えを制御できますか..このように、C == 1の場合、ANDゲートは入力A、Bで動作しますC == 0の場合、何も起こりません

これは任意の方法で行うことができますか??

0 投票する
1 に答える
578 参照

scala - チゼル: エラーを回避する方法 ワイヤのデフォルトは指定されていません

Mem への構造化読み取りポートを実装しようとしています。

コンビネーションを使うとき

シーケンシャルの代わりに

エラーが発生する

このエラー メッセージの意味は何ですか?

2 番目の質問:

SystemVerilog の構造化された赤いポートを持つことは可能ですか。つまり、直接読み取ります。

それ以外の

ありがとう!

0 投票する
1 に答える
867 参照

scala - Vec[Mem] が Chisel にあるといいですね

セットアソシアティブ キャッシュの場合は、Vec[Mem] が便利です。

残念ながら、Chisel は Vec[Mem] コンストラクトをサポートしていません。

それはそう:

ただし、簡単な回避策は問題なく機能します。

そして、タグを書くため(いくつかの when(...) 句の下での原因の)

提案されたスキームを改善するためのコメント、提案はありますか? ありがとう!

0 投票する
2 に答える
3632 参照

assembly - MIPS 命令セットのバイト操作

MIPS 命令セットを使用してバイト操作を行いたいと考えています。

  • を持っているレジスタ$S0と を持っている0x8C2E5F1Eレジスタ$S1があります0x10AC32BB
  • $S0の 2 バイト目を5Fの 3 バイト目$S1に格納したいと思いACます。

私のロジックは、レジスタのバイトを別のレジスタに格納し、$S0それを目的のバイトにシフトすることです。次に、に登録$S10xFF00FFFFます。最後に、1 つまたは 2 つのレジスタを使用します。それはどのように聞こえますか?それが正しいか?もっと良い方法はありますか?

任意の提案や解決策をいただければ幸いです。

0 投票する
1 に答える
300 参照

scala - Verilog 用でも C++ 用でもありません。

次のフラグメントの場合、Chisel で合成されたものはありません:

(level <- 1 until num_levels) のループを手動でアンロールし、定数を折り畳んだ場合と同じ動作:

両方のスニペットに対して生成された Verilog (および同様の C++ コード) (元のスニペットと 16 通りのケースで展開/インスタンス化されたもの):

なぜダミー構造しかないのかわからない ロジックの合成を強制するにはどうすればよいですか? ありがとう!

0 投票する
1 に答える
2333 参照

boolean - 2 つの入力ゲート (AND、OR、NAND、NOR、および XOR) をテストするプログラム

これらのパラメータを満たすArduinoプログラムを設計しようとしています。最初はそんなに難しくないだろうと思っていたのですが、この問題にアプローチするためにどのようなロジックや考え方があるのか​​ わかりません。今、私は少し立ち往生しています。とにかく、これが私がこれまでに持っているものです。どんな助けと意見も大歓迎です。ありがとう。

0 投票する
3 に答える
321 参照

c - C でデジタル回路をモデル化することは、言語の標準操作を使用するのとは対照的に、実用的な利点がありますか?

だから私はデジタル回路設計を調べ始め、ほとんどすべての操作 (私が知っている) がすべて 3 つの論理操作から派生していることを発見しました: ANDOR、およびNOT。類推として、これらは、他のすべてを構成する原子に対する亜原子粒子のようなものです。アトムがプロセッサ命令にあるように、サブアトミック粒子は論理ゲートにある。Assembly でのプログラミングが原子を組み立てるようなものだとすれば、C でのプログラミングは分子 (および原子) を組み立てるようなものです。 私がここの基地から外れているかどうか誰か教えてください。

そうは言っても、GCC やその他のほとんどのコンパイラは、C から機械語コードへの最適化を非常にうまく行っていることは承知しています。x386 命令セットを見ているとしましょう。$$||、およびのみを使用して 32 ビットの全加算器を構築した場合~コンパイラはプロセッサによって提供される既存の命令を使用するのに十分スマートであるか、または私の全加算器は、既に存在するもののより肥大化した効率の悪いバージョンになってしまうでしょうか。プロセッサ。

免責事項: 私はアセンブリの学習を開始するためにデジタル回路を調べ始めました.Cで公正です.デジタル回路の理解を深めるために、これらの回路のいくつかをCでモデル化したい. +しかし、単純なwill doを使用すると、それが効率的なコード (または学習以外のその他の実用的な利点) にもなるという幻想に自分自身を誘惑したくありません。そして、はい、コードのひどい保守性が、このコーディング「スタイル」が提供する利点よりもはるかに重要であることを私は認識しています。

0 投票する
2 に答える
109 参照

algorithm - 数論: 解決策の必要性

a = a31 a30 . . . a1 a0が 32 ビットのバイナリ ワードであるとします。次のアルゴリズムで計算された
32 ビットのバイナリ ワードを考えてみましょう。b = b31 b30 . . . b1 b0

  1. a を右から左にスキャンしb、最初のビット1が見つかるまでそのビットを にコピーします (これも にコピーされbます) 。
  2. その後、 のビットのブール否定をコピーしますa

たとえば、a = 10100 . . . 00に変換されb = 01100 . . . 00ます。aおよびbが 2 進数として解釈される場合、このアルゴリズムが計算する内容を説明してください。

0 投票する
1 に答える
104 参照

digital - 非同期回路とは

組み合わせ回路と順序回路があります。順序回路には、使用されるメモリ要素があります。回路内の記憶素子のようなフリップフロップも使用される非同期回路です。また、それらがどのように不安定であり、回路の選択に適していません。非同期回路の不安定性はどのように説明できますか?