[PR]
2025年04月26日
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
ダウンロード
2009年02月13日
私が使っていた汎用ヘッダーをダウンロードできるようにしました。
ちょくちょく更新するかもです。
zip内のファイルにはパスワードがかけられています。
zipを開くとheaderフォルダがあるので、そこで「ファイル」→「暗号化解除」を選択して、あのボードを入力してください。そうすればパスワード解除できます。
ダウンロード
追記:
09.02.26 ver1.01に更新
ちょくちょく更新するかもです。
zip内のファイルにはパスワードがかけられています。
zipを開くとheaderフォルダがあるので、そこで「ファイル」→「暗号化解除」を選択して、あのボードを入力してください。そうすればパスワード解除できます。
ダウンロード
追記:
09.02.26 ver1.01に更新
PR
C言語におけるビットシフト
2009年02月02日
久しぶりにC言語触ってます。
Cで作った擬似回路でシフト演算子使って、int型をビットシフトしてます。
C言語は低レベルの記述が出来ることで有名ですね。
他の言語はVHDLくらいしか触ったことがないですが。。
ちょっとライブラリを追加すれば、C言語でも論理回路作れるんじゃないか??
SystemC++とかどうなんでしょうね~?
テキストより要点を抜粋しました。
a<<b aをbだけ左シフト
a>>b aをbだけ右シフト
論理シフトか算術シフトかは処理系に依存(さりげなく怖いこと書いてます)
これだけです。
実は、*int(pow(2.0,3.0))とかでもビットシフトの代用は出来るのですが
せっかくなんでシフト演算子、使っていきます。こっちのほうが自然ですし。
Cで作った擬似回路でシフト演算子使って、int型をビットシフトしてます。
C言語は低レベルの記述が出来ることで有名ですね。
他の言語はVHDLくらいしか触ったことがないですが。。
ちょっとライブラリを追加すれば、C言語でも論理回路作れるんじゃないか??
SystemC++とかどうなんでしょうね~?
テキストより要点を抜粋しました。
a<<b aをbだけ左シフト
a>>b aをbだけ右シフト
論理シフトか算術シフトかは処理系に依存(さりげなく怖いこと書いてます)
これだけです。
実は、*int(pow(2.0,3.0))とかでもビットシフトの代用は出来るのですが
せっかくなんでシフト演算子、使っていきます。こっちのほうが自然ですし。
バグのデパート新商品追加
2009年01月19日
修論の為にマイクロソフト製品総動員してますが、
IEは止まるわ、パワポはビープ音を立てるわで参っております。
何気に追記してます。
改行と段落
改行はShift+Enter 段落(パラグラフ)はEnter
これで文章がもう少しすっきりするかと
改行記号のオンパレードは嫌ですたい
アウトラインの設定
「ツール」→「箇条書きと段落番号」→「アウトライン」で
好きなようにアウトラインの設定をする。
「変更」→「オプション」で
レベルと対応付ける見出しスタイルを「見出し1」などに設定
図表番号の設定
番号を入れる図を選択、右クリック、章番号を含めるにチェック、見出し1に選択
役に立つかもしれないサイト
http://www.geocities.co.jp/Technopolis/2890/tool/MSword.html
IEは止まるわ、パワポはビープ音を立てるわで参っております。
何気に追記してます。
改行と段落
改行はShift+Enter 段落(パラグラフ)はEnter
これで文章がもう少しすっきりするかと
改行記号のオンパレードは嫌ですたい
アウトラインの設定
「ツール」→「箇条書きと段落番号」→「アウトライン」で
好きなようにアウトラインの設定をする。
「変更」→「オプション」で
レベルと対応付ける見出しスタイルを「見出し1」などに設定
図表番号の設定
番号を入れる図を選択、右クリック、章番号を含めるにチェック、見出し1に選択
役に立つかもしれないサイト
http://www.geocities.co.jp/Technopolis/2890/tool/MSword.html
IPは邪道
2008年12月22日
そういう結論に達しつつあります。何故かと言うと
・パラメタライズができない
・作るのに時間がかかる
・変更にも時間がかかる
・細かい点で融通が利かない(これはIPによりけり)
IPは楽なので最初におおざっばに作るうえではいいですが、
きっちり作りたいならコードで書いて論理合成時に推定させるのが良さそうです。
ここに色んなコードの推定例が載っているので参考までに。
http://www.xilinx.com/itp/xilinx92j/books/docs/xst/xst.pdf
・パラメタライズができない
・作るのに時間がかかる
・変更にも時間がかかる
・細かい点で融通が利かない(これはIPによりけり)
IPは楽なので最初におおざっばに作るうえではいいですが、
きっちり作りたいならコードで書いて論理合成時に推定させるのが良さそうです。
ここに色んなコードの推定例が載っているので参考までに。
http://www.xilinx.com/itp/xilinx92j/books/docs/xst/xst.pdf
genatate文
2008年12月19日
genericではありません。generate(生成)です。
if-genarate文で条件に合ったときのみインスタンスを生成したり、for-generate文で量産したいときに使います。IPとかパラメータの融通が利かないモジュールに対して、
if-generaateの条件が合ったらこっちのIPを、違う条件だったらそっちのIPを生成するみたいに使ってます。これ使わないと融通の利かないIPのせいで、上位モジュールもパラメータを廃して別モジュールとして作らなきゃならないんで非常にめんどくさい!
<ラベル>:<モジュール名><(パラメータ)>とすると
IPにはパラメータを渡せないので、これは無理です
別々にIPを作ると
上位モジュールも変えねばならんというわけです 。
一からモジュールを作るのは手間だし、パラメータ部分以外は全部同じなので非常に歯がゆい!
そこでgenerate文を使えば、パラメータに応じて
どっちかのIPを生成してくれます。
if-genarate文で条件に合ったときのみインスタンスを生成したり、for-generate文で量産したいときに使います。IPとかパラメータの融通が利かないモジュールに対して、
if-generaateの条件が合ったらこっちのIPを、違う条件だったらそっちのIPを生成するみたいに使ってます。これ使わないと融通の利かないIPのせいで、上位モジュールもパラメータを廃して別モジュールとして作らなきゃならないんで非常にめんどくさい!
<ラベル>:<モジュール名><(パラメータ)>とすると
IPにはパラメータを渡せないので、これは無理です
A0:module(10) ↓ B0:ip(10) |
A1:module(12) ↓ B1:ip(12) |
A0:module(10) ↓ B0:ip_0 |
A1:module(12) ↓ B1:ip_1 |
一からモジュールを作るのは手間だし、パラメータ部分以外は全部同じなので非常に歯がゆい!
A0:module_0 ↓ B0:ip_0 |
A1:module_1 ↓ B1:ip_1 |
そこでgenerate文を使えば、パラメータに応じて
どっちかのIPを生成してくれます。
A0:module(10) ↓ if(10)generate B0:ip_0 end generate if(12)generate B1:ip_1 end generate |
A1:module(12) ↓ if(10)generate B0:ip_0 end generate if(12)generate B1:ip_1 end generate |