【Verilog】記述言語で論理設計 Project2【VHDL】
■ このスレッドは過去ログ倉庫に格納されています
0001792= ◆YMO/ALTERA
04/09/03 12:21ID:p+kby74r安価で入手できるようになってきました。
このスレが目に入ったおまえ! HDLで何か作って遊んでみませんか。
日曜工作のHDL書き、学生さん、プロの方、カキコお待ちしております。
関連情報は >>2-10 あたり。
前スレ
【Verilog】プログラムで作る回路 Project1【VHDL】
http://science3.2ch.net/test/read.cgi/denki/1072330555/l50
0159774ワット発電中さん
04/12/17 07:35:34ID:enKCZRg3それはHDLで書く前の仕様設計の話だろ かなりスレ違い
乗除算以外に加減算も必要なのか?
乗除算だけなら対数に変換して計算するって手があるぞ
ま、演算する目的がわからなきゃどうにもならん
0160774ワット発電中さん
04/12/17 08:23:04ID:2rdgsE8dそりわ、固定小数点ではなく「整数」でわ・・・
0161774ワット発電中さん
04/12/17 09:04:41ID:BF/KcTFd見なせば固定小数点演算と見なせる。
たとえば、
0001+0011 = 0100
を整数と見なせば1+3=4
下から二桁目と三桁目の間に小数点があると見なせば
0.25+0.75=1.00
0162774ワット発電中さん
04/12/17 19:40:57ID:8q/QfZYtとりあえずこの辺を試してみるべし。
ttp://www02.so-net.ne.jp/~morioka/v2v.htm
0163超初心者
04/12/24 08:28:05ID:5Um8eo73subtype wave is std_logic_vector(31 downto 0);
type ROM is array (0 to 64) of wave;
signal data: int_array;
constant cos : ROM := (省略);
これでcosはテーブルとして使って
a <= ar(1) * conv_integer(cos(1));
というような使い方は出来ないんでしょうか。これをすると
object cannot be indexed
because it has small_int type rather than array type
と出てきてしまいます。というかそもそも conv_integer(A)に対して
乗算をすること自体文法エラーみたいですが。。。
0164超初心者
04/12/24 08:53:19ID:5Um8eo730165774ワット発電中さん
04/12/24 14:16:12ID:QntLHWVCa の型は何?
aもinteger型なら問題はなさそうだが… (論理合成は出来ないと思うけど)
0166774ワット発電中さん
04/12/24 15:52:25ID:baucrM1p精度はどれくらい欲しいのかな?
0.1まで保証したかったら単純に10倍してから割ればいいだろう。
回路を簡単にしたいのであれば16倍して割る値をちょっと弄ればOKだね。
結果をどういった形で使いたいのかわからんがもう少し頭をやわらかくしたほうがいいぞ。
0167774ワット発電中さん
04/12/26 21:23:30ID:MS8bbIn5どれくらいいますか?
私は適当+自己流なんで何か流儀があるのなら勉強したいのですけど。
0168774ワット発電中さん
04/12/26 23:03:39ID:NkZGbqRr浮動小数点演算用にPICつけてシリアル通信したことあったなぁ。。
ダサいけど工数は0同然だった。
もちろん最終の基板では仕様見直したけどね。
0169774ワット発電中さん
04/12/27 04:55:47ID:IiOwaSMjこの人Verilog書きなれてないと思ったのは俺だけ?
0170774ワット発電中さん
04/12/31 00:08:41ID:tKLJqHbHインストール後、某ファイルを消すとずっと使えるぞなもし。
0171774ワット発電中さん
05/01/05 01:13:05ID:K1krFDC0こーゆー情報が今やご法度だものな。糞法律ばっかし作りやがってさ糞官僚が。
0172774ワット発電中さん
05/01/05 01:50:54ID:A7lNAgRoDVD−ROM
0173774ワット発電中さん
05/01/05 03:58:23ID:NGDPEDukハァ?
「今や」?
遙か昔から、少なくともてめーが生まれる前から
偽計業務妨害罪だよ。
高卒は法律も知らんのか。
野蛮だねプククククククク
0174774ワット発電中さん
05/01/05 04:15:32ID:/YFrRIWvhttp://tmp4.2ch.net/test/read.cgi/tubo/1102178196/760
0175774ワット発電中さん
05/01/05 04:16:24ID:NGDPEDuk隔離スレに何を書こうが誰も見ない訳だが、
そんなにこちらで論破されてずたぼろにされるのが怖いのかね?
チキンofチキンの高卒哀れだよ高卒。
0176超初心者
05/01/05 10:41:32ID:ko/FuqQFすいません。大学がしまっててレス遅れました。。。
ええとaの型はintegerです。それでも前に書いたエラーがでます。
0177774ワット発電中さん
05/01/05 10:47:31ID:lWvCpkO/0178超初心者
05/01/05 10:55:11ID:ko/FuqQFでも直しても同じエラーがでるのでそこが問題ではないみたいです。
0179774ワット発電中さん
05/01/05 11:36:16ID:DdB5Az5O173は単なるバカだな。
法律を自分の都合の良いように解釈しているうちはガキ
大人は自分の都合の悪い方へ解釈してリスク管理する。
0180774ワット発電中さん
05/01/05 13:06:20ID:NGDPEDukハァ?
てめぇは自分が偽計業務妨害で逮捕される事が
都合の良い事なのか?
日本語すらまともに書けない高卒哀れすぎ。
0181774ワット発電中さん
05/01/05 18:58:40ID:aebuCLrhレスが付かないようなので勘で。
引っかかるのは
・乗算そのもの。この場合integer同士の掛け算であってもエラーになる(conv_integer関係なし)。
・conv_integerは32bit引数だととりうる範囲が-0x8000000~0x7fffffffだけどそれは大丈夫?
乗算に関しては普通にRTLレベルのシミュレーション等に利用するだけなら問題ないが、
論理合成できない可能性がある気がする。正確には、俺の使っている論理合成ツールでは
合成できなかった記憶がある(少し記憶が曖昧)。俺自身が現在確認できる環境にない。
テーブル引き等そのものは合成でもまず問題ないと思う(複数の合成ツールで合成できてる)。
後、エラーの出るツールの名前は?
解決に至らないようならソースをずっと単純化してそのまま貼り付けたら?
0182エンジニア処遇向上委員会
05/01/07 15:47:08ID:VrueFCxZ日本国民はエンジニアを尊敬しる!
http://science3.2ch.net/test/read.cgi/kikai/1104172261/20-36
このスレでは、結構な方が首相官邸や政党、各省庁へエンジニア優遇政策
の提言を行っております。皆様も是非ご協力下さい。
0183181
05/01/07 19:04:00ID:NWvYtN5gintegerの取り得る範囲は-0x7fffffff~0x7fffffffみたいだね(少し違和感あるけど)。
もうひとつ乗算の合成についてある程度はっきり思い出した。
乗算自体は合成できていた。ただ32bit×32bitだと合成できなかったと記憶している。
31×31なら問題なかったのか、16×16なら大丈夫なのかはいまだ思い出せない。
0184774ワット発電中さん
05/01/09 23:26:00ID:neQ/1vL3変換式に小数点の係数があり、処理方法がわかりません。
R[7:0],G[7:0],B[7:0]の場合
Y = 0.299R + 0.587G + 0.114Bの処理を行う場合は、
= 256 * (0.299R + 0.587G + 0.114B) / 256
= (77R + 150G + 29B) / 256
のようにして整数の乗加算したのちに8bit左シフトすればよいのでしょうか?
少数点の係数の演算を調べたのですが、うまく見つかりませんでした。
ポインタでもありましたら教えてください。。
よろしくお願いします!
0185774ワット発電中さん
05/01/10 00:05:38ID:mT4qiGvFつーか、10進数も2進数も小数の扱いは同じだよ。
固定精度で10進数の計算をどうやるか考えれば、2進数も分かるだろ。
0186184
05/01/10 00:19:48ID:Ow5wipAk精度というか、出力は上記の式で8bitにしたいです。
Y[7:0] = 0.299*R[7:0] + 0.587*G[7:0] + 0.114*B[7:0]
のようにしたいです。
256倍したY[7:0]はY[15:0]になるので
これをY[15:8]をとることで256でわるという上記の方法で
よいのでしょうか?
>10進数も2進数も小数の扱いは同じだよ。
本来なら1000倍して係数を整数にした後、1000で割れば
よいのでしょうが、HDLでは除算器が大きくなってしまうので、
2のべき乗で乗除すればシフト演算ですむと考えたのですが、
根本的にまちがっていますでしょうか?
0187774ワット発電中さん
05/01/10 00:49:21ID:g+gcidb9>>184に自分で書いた式で大丈夫。
0188774ワット発電中さん
05/01/10 00:53:06ID:7pV3WoMX精度がいらないって、どこまでいらないのかの問題も絡んでくるが。
ちなみに、所要のビット数の精度を出そうと思うと、機能的には最低
でも(出力ビット数は関係無しに)その倍の精度は必要。
2のべき乗の乗除算は、ビットシフトが使える。
とりあえずハードウェアによってしまうが、乗算は乗算器に任せるの
が無難じゃないかな?
0189184
05/01/10 01:18:06ID:Ow5wipAkありがとうございました。精度について気をつける必要があるのですね。
このあたりの考え方が書いてあるWEB/本を探しているのですが、
なかなか見つかりませんでした。
ありがとうございました。
0190184
05/01/10 10:20:50ID:Ow5wipAk>ちなみに、所要のビット数の精度を出そうと思うと、機能的には最低
>でも(出力ビット数は関係無しに)その倍の精度は必要。
184です。考えてみたのですが、出力8bitの場合のサンプリング数
は倍の精度が必要なので、2の9乗あればよいとのことで、
184の式で256ではなく、512をかけるということでよいでしょうか?
(Y[7:0] = 512 * (0.299*R[7:0] + 0.587*G[7:0] + 0.114*B[7:0]) / 512)
188さんは出力ビット関係なしとかかれていますが、
最低、出力ビット数の倍の乗除を行う必要があるという考え方は
まちがっていますか?
たびたびですいませんがおしえてください。
0191774ワット発電中さん
05/01/10 14:09:44ID:mT4qiGvFR + R<<2 + R<<3 + R<<6 + G<<7 + G<<4 + G<<2 + G<<1 + B<<4 + B<<3 + B<<2 + B = A[?:0]
答え = A[?:8] + A[7] (小数点下第1位で四捨五入)
係数も8Bit精度にした。結果の精度がそれほど要らないのなら、もっと削る。
0192774ワット発電中さん
05/01/10 14:17:46ID:mT4qiGvF加算しておいた方が良いなあ。
0193774ワット発電中さん
05/01/11 01:20:33ID:2duFVuB7何かいい手はないでしょうか。
0194774ワット発電中さん
05/01/11 10:58:33ID:2rDcX6JLファイルに書き出すのは$fdisplayで楽そうだけど、入力するのは
難しいのかなぁ。
たとえばCPUのエミュレータ作って「load 0xff00 0xaa」とかいうのを
ファイルから読み込ませるなんてのはVHDLではreadlineしてから文字列
判別するようにしてvariableに放り込めば、そんなに難しくなかった
んだけどVerilogではファイルからアスキー文字読むときゃどうするの?
2進数と16進数しか読み込めんのか?
0195774ワット発電中さん
05/01/11 11:37:58ID:o3rZZd1Mしないといけなかったけど、2001だとある。
http://www.chris.spear.net/pli/fileio.htm
0197774ワット発電中さん
05/01/11 18:23:16ID:2rDcX6JLhttp://www.sugawara-systems.com/
Icarus Verilogもいいけど、VHDL-Verligコンバータも入って5000円台ならいいかも。
0198774ワット発電中さん
05/01/11 19:17:30ID:W+W2r/lo最近VHDLから、Verilogに乗り換える人が多いのは、どうして?
FjだとVHDLだと思っていたけど。
0199774ワット発電中さん
05/01/11 20:55:59ID:BVHdVSzv宣伝ごくろう
0200774ワット発電中さん
05/01/11 21:23:06ID:g0gC3QnV国産品だと作者を叩かないと気が済まないのかね。
何とも卑しいこって。
0201774ワット発電中さん
05/01/11 22:21:47ID:zENSPiYv部署によるだろ。
0202774ワット発電中さん
05/01/12 00:15:28ID:XKXgCzlfSystemVerilogとかもあるし、DCのparserが対応していけば
アサーションともあいまってVHDLよりか将来性があるかも。
Fjの代理店とつきあったことがあるけどVerilog HDLしか知らんかったよ(w
0203774ワット発電中さん
05/01/12 01:08:27ID:4/KDvaX8verilogのソース中でピンアサインを指定する方法ってありますか?
VHDLなら「attribute pin_numbers〜」でできるというのは分かったのですが
verilogでの方法が分かりません。
よろしくお願いします。
0204774ワット発電中さん
05/01/12 01:36:49ID:Mc6YdWxj漏れもおながいしまつ。
0205774ワット発電中さん
05/01/12 02:13:05ID:WDtPZODtしまいにゃタイミング制約もソースに入れたいとか言い出すんだろ。
0206774ワット発電中さん
05/01/12 02:30:25ID:xZPDBpkn0207203
05/01/12 02:33:49ID:4/KDvaX8cypressのwarp3という製品を使っているのですがフィッティングするたびに
ピンアサインが変わってしまい困っているのです。
マニュアルは、VHDLの方ではソース中で指定する方法しか書いておらず、
verilogの方に至ってはピンアサインについては全く触れられていません。
テストするたびに半田づけし直すわけにもいかないので途方に暮れています。
0208203
05/01/12 02:40:23ID:4/KDvaX8内部のポートをどのピンに割り当てるかです。
VHDLなら
attribute pin_numbers of refill:entity is
"aaa:1 bbb:2";
等とするとaaa->1ピン、bbb->2ピンと割り当てられるようです。
これと同様のことをverilogでやりたいです。
0209俺様 ◆f0ugTrYQRI
05/01/12 07:39:19ID:KhBLAptnお利口タンの皆タン! Verilogで体脂肪を計算したいでちゅ〜
身長189センチ 体重58Kgでちゅ〜
じゃあ待ってるでちゅよ!
ねむねむ〜〜
0210774ワット発電中さん
05/01/12 15:34:50ID:RhpX5tcx昔のPC板へカエレ!
0211206
05/01/13 03:46:26ID:kc3MqHG7その「ピン」とは一体どういうもの?Verilogには「ピン」という定義がない。
Synopsysでは
module z(a,b,c); input a, b, c; <= a,b,cをポートと呼び、
zzz i0 (.a(), .b(), .c()); <= a, b, cをピンと呼んでいるようだが。
0212いつでもどこでも名無しさん
05/01/13 10:39:30ID:V9EDyVg5>内部のポートをどのピンに割り当てるかです。
チップの端子の割り当てのことなら
RTLの中にそんなピンアサイン情報は記述しないのが普通では?
Verilogでそういう記述はできない。
VerilogにしてもVHDLにしてもピンアサインは
インプリツール固有の設定ファイルのようなもので指定するはず。
0213774ワット発電中さん
05/01/13 12:23:56ID:5cpom69q0214774ワット発電中さん
05/01/13 18:38:25ID:tUOPQG7Fイネーブル信号を外から与えて、与えるごとにその時の1クロックだけレジスタに書き込みを行いたい
で、単純に↓のように書いてしまうと非同期になってしまってよくないから他の方法を考えてるんだけど、
こういう場合、どう記述したらいいのでしょうか?
always @(posedge enable)
regster <= data;
与えられたイネーブルを自分でディスイネーブルするにはどう記述したらいいのでしょうか?
0215774ワット発電中さん
05/01/13 18:54:04ID:eTrlq5kXただし、disableするには別途信号線が必要になると思うよ。
0216774ワット発電中さん
05/01/13 18:55:22ID:Y3DSNb6tYahooBB218137134021.bbtec.net
http://dictionary.reference.com/search?q=electronics
The science and technology of electronic phenomena.
http://dictionary.reference.com/search?q=electronic.
Of or relating to electrons.
Of, based on, operated by, or otherwise involving the controlled conduction of electrons or other charge carriers, especially in a vacuum, gas, or semiconducting material.
eTrlq5kXはelectronicsの意味すら知らない高卒確定。
どんなローカル学会のどんなローカルルールやローカル用語を
書き散らしたところで、
高卒eTrlq5kXの妄言:「フーリエ変換もウィナーフィルタも世の中にあるものは全て偽物だ!疑似だ!そんなものは実現不可能だムキー!!!」
一流大学大学院生によるクリティカルヒット:
「離散化とは高卒以外にとっては帯域制限以外の何物でもない。
よって高卒以外で離散化を疑似フーリエ変換とか疑似ウィナーフィルタなんて言ってる奴は世界に一人もいない。
ググっても0件だ。」
高卒eTrlq5kXの妄言:「周波数領域ではデータが全部そろわないと計算できないんだ!実現不可能なんだムキーー!!」
一流大学大学院生によるクリティカルヒット:「有限長カーネルのコンボリューションは帯域制限付き窓つき短時間フーリエ変換と等価であり、有限長カーネル・窓のコンボリューションを使った実時間周波数領域フィルタは幾らでも実用化されている。
そもそも世の中のDSPのほとんどがこの目的で使われている事すら知らないとはあまりにも哀れ。」
高卒eTrlq5kXの妄言:「サンプリングでは帯域制限なんか絶対されないんだ!AAFが帯域制限の原因なんだムキー!!!」
一流大学大学院生によるチェックメイト:
「ほう、ならAAFを外せばCDは60KHzの音も記録・再生できるというわけか。乙。」
高卒eTrlq5kXの断末魔:「サンプリング定理に帯域制限されるなんて書いてない!ムキー!!」
一流大学大学院生によるとどめ:
「サンプリングで帯域制限されるとは何度も書いてるがサンプリング定理で帯域制限されるなどとは
一度も書いた事がない。日本語すら読めない高卒哀れ。マジ哀れ。
まさかサンプリングとサンプリング定理の区別すらついてないのか?」
これがおまえeTrlq5kXの現実。
しかし、自分が選んできたテーマでずたぼろにされる事ほど哀れなものはないよな。
死んだ方が良くない?
あの高卒ってば、まぁ俺の専門分野ならずたぼろに出来るのは当たり前だから面白くないから
「この板に来てる以上知らない事は許されない固体物理の常識」
を聞いてやった訳よ。
それでもずたぼろで哀れなので、
その高卒が出してきたその高卒の専門分野での質問を答えてやった上に、
如何に高卒がデタラメな事いってるかこてんぱんにして潰してやった訳よ。
まぁ、 狂 う わ なプククククククク
中卒の脳内学会では、反論できなくなると
「●●学会〜〜!!」とか学会名を叫ぶと許してもらえるんだろうか?
そ ん な 哀 れ な 学 会 に は
間 違 っ て も 近 寄 ら な い
まぁ脳内学会だろうけどな。
0217774ワット発電中さん
05/01/13 20:25:04ID:T7MAovKcイネーブル信号をクロック同期の回路でエッジ検出をし、
その信号をFFのイネーブルに使う。
>与えられたイネーブルを自分でディスイネーブルするにはどう記述したらいいのでしょうか?
言ってる意味がよく分からないけど何のために必要なの?
0218774ワット発電中さん
05/01/13 21:12:18ID:/0E9bOBGイネーブル信号がクロックより長いことは保証されてんの?
メタステーブルへの対処は?
0219774ワット発電中さん
05/01/13 21:32:54ID:tUOPQG7Fん?こういうこと?これだと、どんどんdataが書き込まれてしまいますよね。
1回だけ書き込みたいんですけど。
always @ (posedge clk)
if(enable)
FF_enable <= 1;
always @ (posedge clk)
if(FF_enable)
regster <= data;
>>218
保証されてます。
ソフトウェアでイネーブル信号を書き込むんで。
0220774ワット発電中さん
05/01/13 22:00:45ID:eTrlq5kXif( !reset ) begin
complete <= 0;
end
if(enable && !complete ) begin
register <= date;
complete <= 1;
end
end
じゃだめかい?
0221774ワット発電中さん
05/01/13 22:01:33ID:Y3DSNb6tYahooBB218137134021.bbtec.net
http://dictionary.reference.com/search?q=electronics
The science and technology of electronic phenomena.
http://dictionary.reference.com/search?q=electronic.
Of or relating to electrons.
Of, based on, operated by, or otherwise involving the controlled conduction of electrons or other charge carriers, especially in a vacuum, gas, or semiconducting material.
eTrlq5kXはelectronicsの意味すら知らない高卒確定。
どんなローカル学会のどんなローカルルールやローカル用語を
書き散らしたところで、
高卒eTrlq5kXの妄言:「フーリエ変換もウィナーフィルタも世の中にあるものは全て偽物だ!疑似だ!そんなものは実現不可能だムキー!!!」
一流大学大学院生によるクリティカルヒット:
「離散化とは高卒以外にとっては帯域制限以外の何物でもない。
よって高卒以外で離散化を疑似フーリエ変換とか疑似ウィナーフィルタなんて言ってる奴は世界に一人もいない。
ググっても0件だ。」
高卒eTrlq5kXの妄言:「周波数領域ではデータが全部そろわないと計算できないんだ!実現不可能なんだムキーー!!」
一流大学大学院生によるクリティカルヒット:「有限長カーネルのコンボリューションは帯域制限付き窓つき短時間フーリエ変換と等価であり、有限長カーネル・窓のコンボリューションを使った実時間周波数領域フィルタは幾らでも実用化されている。
そもそも世の中のDSPのほとんどがこの目的で使われている事すら知らないとはあまりにも哀れ。」
高卒eTrlq5kXの妄言:「サンプリングでは帯域制限なんか絶対されないんだ!AAFが帯域制限の原因なんだムキー!!!」
一流大学大学院生によるチェックメイト:
「ほう、ならAAFを外せばCDは60KHzの音も記録・再生できるというわけか。乙。」
高卒eTrlq5kXの断末魔:「サンプリング定理に帯域制限されるなんて書いてない!ムキー!!」
一流大学大学院生によるとどめ:
「サンプリングで帯域制限されるとは何度も書いてるがサンプリング定理で帯域制限されるなどとは
一度も書いた事がない。日本語すら読めない高卒哀れ。マジ哀れ。
まさかサンプリングとサンプリング定理の区別すらついてないのか?」
これがおまえeTrlq5kXの現実。
しかし、自分が選んできたテーマでずたぼろにされる事ほど哀れなものはないよな。
死んだ方が良くない?
あの高卒ってば、まぁ俺の専門分野ならずたぼろに出来るのは当たり前だから面白くないから
「この板に来てる以上知らない事は許されない固体物理の常識」
を聞いてやった訳よ。
それでもずたぼろで哀れなので、
その高卒が出してきたその高卒の専門分野での質問を答えてやった上に、
如何に高卒がデタラメな事いってるかこてんぱんにして潰してやった訳よ。
まぁ、 狂 う わ なプククククククク
中卒の脳内学会では、反論できなくなると
「●●学会〜〜!!」とか学会名を叫ぶと許してもらえるんだろうか?
そ ん な 哀 れ な 学 会 に は
間 違 っ て も 近 寄 ら な い
まぁ脳内学会だろうけどな。
0222774ワット発電中さん
05/01/13 22:21:42ID:BTjdO9b3おしい。こんな記述すればいいはず。
慣れると無意識に出てくるほどの常套するコードだと思う。
wire en_load = ~enable_last & enable ;
always @(posedge clk) begin
if(~reset)
enable_last <= 0;
else
enable_last <= enable;
end
always @(posedge clk) begin
if(~reset)
register <= 0;
else if ( en_load )
register <= data;
end
0223774ワット発電中さん
05/01/13 23:08:58ID:tUOPQG7Fありがとう!
>>222を見る前だったから、>>220を参考にして↓のように
したらうまくいったよ。
always@(posedge CLK) begin
if(!RST || !enable) begin
complete <= 0;
end
if(enable && !complete ) begin
regster <= data
complete <= 1;
end
end
>>222もありがとう。こっちは1クロック前のenableを記憶しておく
っていう感じかな?よりRTLを意識できてる記述だね。こっちも検討してみる。
CPUとかは作ったことはあるんだけど、
こんなコードは初めてで、相当悩んでました。
自分はまだまだだなって痛感しました。ほんとに助かった。
0224774ワット発電中さん
05/01/13 23:41:30ID:tUOPQG7F0225774ワット発電中さん
05/01/14 00:14:46ID:uyX49uIJシンプルだよ
if(!RST) begin
complete <= 0;
end else if if(enable && !complete ) begin
regster <= data
complete <= 1;
end else if( !enable ) begin
complete <= 0;
end
end
0227774ワット発電中さん
05/01/14 00:33:16ID:DSUj7hGOalways@(posedge CLK) begin
if(!RST) begin
complete <= 0;
end else begin
if if(enable && !complete ) begin
regster <= data
complete <= 1;
end else if( !enable ) begin
complete <= 0;
end
end
end
0228774ワット発電中さん
05/01/14 01:05:35ID:uyX49uIJそれに゙!゙は別にいらねーだろ
0229774ワット発電中さん
05/01/14 01:07:08ID:iTXXAj1hそれよりフリップフロップ使わない方法ってのを詳しく
0230774ワット発電中さん
05/01/14 01:11:15ID:DSUj7hGO○ if(enable && !complete ) begin
!は要るだろ。なんで要らないというのか理解できんな?
0231774ワット発電中さん
05/01/14 01:14:55ID:uyX49uIJ! いらね
0232774ワット発電中さん
05/01/14 01:17:15ID:DSUj7hGO!をはずしただけじゃロジックが代わるだろうが。
使わないなら等価なRTL書いてやれよ。
0233774ワット発電中さん
05/01/14 01:20:36ID:uyX49uIJZ とかでいいんじゃん 紛らわしいし
あんま怒んな
アウトロ行け
0234774ワット発電中さん
05/01/14 01:28:37ID:DSUj7hGOコンパイラオプションの`elsif
はあるがVerilogでelsifってあったか?
0235774ワット発電中さん
05/01/14 01:30:36ID:iTXXAj1hなぁんだ、信号名が気に入らねってだけか。わかった。
completeはセットリセットの値を逆にすれば!は無くせそうだが
!RSTは取っちゃだめだろ?
0236774ワット発電中さん
05/01/14 01:31:52ID:DSUj7hGOおまえVHDLと混同してないか?
今調べたけどVerilogでelsifは予約語じゃないぞ。
0237774ワット発電中さん
05/01/14 02:39:19ID:aX7Y8NgQwire E;
reg [2:0] sr;
always @(posedge CLK or negedge RST) begin
if(!RST) sr <= 3'b000;
else sr <= {sr[1:0], enable};
end
assign E = sr[2:1] == 2'b01;
always @(posedge CLK or negedge RST) begin
if(RST) register <= 1'b0;
else if(E) register <= data;
end
(1) FFのリセットは非同期が普通
(2) enableとCLKは非同期なのでCLK同期化する必要あり
0238774ワット発電中さん
05/01/14 02:41:39ID:aX7Y8NgQ0239774ワット発電中さん
05/01/14 20:28:19ID:81hH15z4HDLを勉強中でよく下のサイトを使っています。
ここの課題1と2には解答がないので、自分の解答があっているか自信が持てません。
どなたか解答をお願いします。
http://www-isys.eei.metro-u.ac.jp/~sho/pub/sw_vhdl/node60.html
0240774ワット発電中さん
05/01/14 20:41:13ID:aeks9V98スレ違い
こっくりさんにでもきいてくるんだなw
0241774ワット発電中さん
05/01/14 21:00:47ID:RNhgLUWf回答も何も、2のシミュレーションが通るまで記述を修正せよってのが課題だろ。
0242774ワット発電中さん
05/01/15 13:12:14ID:qiwIiiOdキミみたいなのが将来うちの会社に紛れ込むと迷惑だから
住所氏名を教えてくれる?
0243774ワット発電中さん
05/01/15 13:42:30ID:dXXfaYjc0244774ワット発電中さん
05/01/15 14:06:23ID:CCXrd3QH0245774ワット発電中さん
05/01/15 16:46:33ID:/u3r+DO2どなたか教えてください
0246774ワット発電中さん
05/01/15 17:02:09ID:3bwiy2VL例えばSDRAMコントローラぐらいになると漏れ的には機能を満足することで頭がいっぱいに・・・
回路を念頭に置いたHDL設計を上達するためのアドバイスをよろしくお願いします。
どうもプログラム気分になってしまう。
PS
それでも論理合成ツールが賢いのでそこそこ動いてくれるのが助かってますが。
0247774ワット発電中さん
05/01/15 17:14:13ID:EzexuhFm平成11年7月27日
11年から留年坊や?
0248774ワット発電中さん
05/01/15 17:18:16ID:SZzGD2Ar大学行ったことないのかい坊や?
0249774ワット発電中さん
05/01/15 18:42:52ID:OJjBnkU9ステートマシンなどのランダムロジックとデータパスを
分けて考えるといいんでない?
0250774ワット発電中さん
05/01/16 02:18:52ID:hxQgE3vToutは右辺値にできないがbufferなら右辺値にもできる。
ただbufferはあまり見かけない。
outと同じ信号をsignalで用意してそれを参照することが一般的だと思う。
0251774ワット発電中さん
05/01/16 23:52:33ID:5DrLSNTnどこの 世界の普通?
クロックない 石なんて今更 どこにあんの?
お前 不安定な初期状態の一般にいわれる Q、Q^
測定した事ある?
学生か
0252774ワット発電中さん
05/01/16 23:57:43ID:aO/zrW98SRDAMコントローラはインタリーブを効率よく行うためのバンクの割り当て方が難しかったり、
Act->Com->PreChgを効率よく行わないといけない。
ランダムロジックとデータパスを分けるなんていう難しさとは違うよ。
0253774ワット発電中さん
05/01/17 00:06:54ID:rzGLYOfQシステムリセットと勘違いしてるんじゃね?>>普通は非同期
0254774ワット発電中さん
05/01/17 00:08:29ID:EMb2YSmXディジタル回路設計は普通感覚や、常識や道徳で作るモノではない。
しかもenableはCLKと非同期と書いてあるのに一発しか叩いてないし、
メタ・ステーブルの発生するところにゲートでロジック組んでるし。むちゃくちゃ。
0255774ワット発電中さん
05/01/17 01:41:36ID:o490Ue7Q237じゃないけど
エッチ・ディー・ラボのデザインマニュアルも初期リセットは非同期リセットにしろって
書いてあったと記憶している。某社のLSI設計マニュアルもそうなっていたと思う。
エッチ・ディー・ラボのHPでデザインマニュアルの目次が見れるが、初期リセットは非同期
リセットという項目があるんで間違いないと思う。 ttp://www.hdlab.co.jp/
もうエッチ・ディー・ラボはマニュアルを扱っていないけど
"RTL設計スタイルガイド初版"が 半導体理工学研究センター(STARC)で入手できるもよう。
ttp://www.starc.or.jp/index-j.html
STARCのマニュアルは読んだことがないんで、同じ記述になっているかは不明。
0256774ワット発電中さん
05/01/17 01:47:07ID:TdGG//AH人間が最終的にコントロールするのは 結局アナログインタフェイスだよな
いくらディジタル もとい ディジタルが 発展すればするほど 最終的にアナログを操作しないと使えないんだよ
DA変換で一番必要なのは クロック これないと バッファ、サンプリング できないよ
だから クロックはあって 「普通」だろ?
他にもたくさんあるぜ。 同期 これ 必需。 これないと なにも使えない
0257774ワット発電中さん
05/01/17 01:49:41ID:TdGG//AH0258774ワット発電中さん
05/01/17 01:53:13ID:EMb2YSmX繰り返すがやつらはコンサル屋なのであり、設計屋ではない。
FFにしたって(プロセスにもよるが)非同期よりも同期式のほうが面積が小さい場合が多い。
「普通は非同期」の一点で設計するやつはなにも理解していない、コンサル屋の思うつぼ。
■ このスレッドは過去ログ倉庫に格納されています