🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Verilog

Verilogは、デジタル回路設計用の論理シミュレータ。また、ハードウェアの電子回路設計の際に用いるハードウェア記述言語を指すこともあります。両者を見分けるために、言語を「Verilog-HDL」と呼ぶ場合もあります。

Q&A

2回答

2140閲覧

Verilogのクロック操作について

sotugyou

総合スコア0

Verilog

Verilogは、デジタル回路設計用の論理シミュレータ。また、ハードウェアの電子回路設計の際に用いるハードウェア記述言語を指すこともあります。両者を見分けるために、言語を「Verilog-HDL」と呼ぶ場合もあります。

0グッド

1クリップ

投稿2021/01/30 18:41

Verilogで回路設計を行っています。

一通り回路を書くことは出来たのですが、計算のタイミングで意図していない数値同士で計算を行なってしまっています。

そこで、接続した回路同士の入出力タイミングを合わせれば問題なく計算できると思うのですがタイミングのずらし方がよくわかりません。

テストベンチなどではなく作成した回路の中でずらすことは出来ないでしょうか。

お願いします

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

y_waiwai

2021/01/30 22:56

その回路ってやつがわからないとどうしようもないですが
ozwk

2021/02/02 00:31

nクロック遅らせるとかそういう話でいいんですよね? 配線遅延を操作したいとかだと、おおよその場合そもそもがおかしいってなるんですが。
guest

回答2

0

計算のタイミングで意図していない数値同士で計算を行なってしまっています。

この言葉の意味が、意図していないクロックサイクルで演算が行われてしまっている、という意味でしたら、1つのFFを介するたびにデータの伝搬が1クロック遅れるという大原則を思い出しつつ、同期回路の設計に熟練していただく必要があります。

そうではなく、伝搬遅延のさじ加減で都合のよいタイミングで演算が行われるように調整したい、という意味でしたら、同期回路ではないものを目指しているということになってしまいます。研究レベルではそういう計算機もあるのかもしれませんが、確立された設計手法が存在しません。世間に出回っているverilogで設計された回路は全て同期回路で構成されていますので、そういった習慣や考え方に習っていただいたほうが良いと思います。

投稿2022/08/28 16:11

porkpie

総合スコア5

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

遅延の加減で誤動作するというのは、すでに設計として間違っています。たぶんタイミングを合わせても、安定した動作は望めません。タイミングチェックを行いましょう。

それはそれとして、

どれくらい時間をずらいのでしょうか?信号a,b があってa を遅らせたいのであれば、以下のようにtを挟みます。
クロックサイクルより少ない時間をずらすには、適当にゲートを入れたり、配置で調整します。

verilog

1wire x ; 2assign x = a + b ;

verilog

1wire x,t ; 2BUF1 u0(.I(a),.O(t)); 3assign x = t + b ;

みたいにします。記述がゲートだったり、RTLだったり混じっていますが、そういうものです。
サイクルを超えて調整したいのであれば、

verilog

1reg x ; 2always @(posedge clk) x <= a+b ;

verilog

1reg x,t ; 2always @(poseged clk) begin 3 t <= a ; 4 x <= t + b ; 5end

みたいにします。

投稿2021/04/27 01:51

gm300

総合スコア580

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問