verilog HDL

verilog~if文の使い方とif文優先度

初めに こんにちは、Keymaleです。今回はif文の使い方を説明します。基本的にはc言語とかpythonとかと同じです。構造的な書き方からまず見てみましょう if文の書き方 基本的な書き方 if文の書き方は以下のようになっています。 [crayon-5e59d12923708162434908/] ”条件文”の実行結果がtrueの場合に”実行文”が処理されます。条件文には以下のようなものがありま […]

verilog~UART通信受信機(RX)編~

初めに お久しぶりです、Keymaleです。先週はUARTの送信機について紹介しました。結構検索して見ていただいたみたいなので、今回は受信機のほうを紹介していきます。受信機のコード内に分周器が出てきますが、詳細は過去記事を見てください。 UART規格 規格についても詳細はこちらを見てください。 通信レート(ボーレート)は9600, 19200, 38400, 76800, 115200 bpsなど […]

verilog~論理演算~

初めに 皆さん、こんにちは。Keymaleです。育児に奮闘しつつ、verilogの記載方法について皆さんにわかりやすく説明していけばと思っております。 今回は論理演算について説明します。そもそものverilogの始め方等についてはこちらをご参考ください。いろいろな回路moduleについての記事を書いてきましたが、そもそもの基本的なところを記載したほうがいいのではないかと思いまして、今回の記事を書こ […]

Quartus verilog使い方まとめ

はじめに こんにちは、Keymaleです。ブログを開始して初めて2日連続で書きます。急にやる気に目覚めました。令和で頑張るぞい! ということで今回は、今まで書いてきたQuartus関係とverilog関係の記事をまとめてみようかと思います。 Quartus verilogの使い方まとめ 以下に箇条書きでまとめます。 Quartus Primeを用いたverilogの使い方 Verilog カウンタ […]

verilog PWM moduleの作成、IP化 Quartus

初めに みなさんこんにちは、Keymaleです。なかなか書く気が起きず、放置していたのですが、AWSのサーバー代がもったいないので書こうと思います。 VerilogでPWMを生成 今回はverilogでPWMのコードを書きたいと思います。早速ですが以下にソースコードを載せます。 [crayon-5e59d12923d74751129480/] こんな感じですね。入力のclkをカウントして、PWMの […]

verilog~divider(分周器)~奇数分周もできるよ

こんにちは、Keymaleです。今回は以前の記事でも紹介しましたDivider(分周器)です。以前の記事では偶数分周しかできない不完全なものでした。奇数分周もできるものは検索してもあまり出てこなかったので、紹介させていただきます。ちなみに他の記事として if文の使い方 generate文の使い方 等もありますので、参考にしてください。 Divider 早速ですが、以下にDividerのコードを紹介 […]

modelSimの使い方とmodule化

こんにちはKeymaleです。今回はmodelSimの使い方とverilogにおけるモデュール構造の使い方について説明します。 Module化 サブモジュールには前回記事で作ったカウンタ回路を使います。counter.vという名前でファイルを保存しておいてください。トップモジュールには下記の内容を記載してください。 トップモジュール名はkeymaleです。入力としてclkを用意してます。先ほど作成 […]