【Verilog】記述言語で論理設計 Project2【VHDL】
レス数が1000を超えています。これ以上書き込みはできません。
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
【FPGA/CPLDスレ】 XILINX/ALTERA/Lattice
http://science3.2ch.net/test/read.cgi/denki/1081231226/l50
暇だからVHDLでも書こうかな
http://pc5.2ch.net/test/read.cgi/tech/1043858153/l50
【std_logic】Verilog VHDLスレ【16'hFFFF】
http://science3.2ch.net/test/read.cgi/kikai/1056186047/l50
フリーのツール(情報追加よろしく!)
ALTERA Quartus II Web Edition http://www.altera.co.jp/
XILINX ISE WebPack http://www.xilinx.co.jp/
評価基板とか(追加情報よろしく!)
Spartan-3 Starter Kit http://www.xilinx.co.jp/products/spartan3/s3boards.htm
CQ出版のシリーズ http://www.cqpub.co.jp/eda/
雑誌
Design Wave Magazine(DWM) http://www.cqpub.co.jp/dwm/
※基板が付録で付いている号はバックナンバー希少になりがち
Interface http://www.cqpub.co.jp/interface/
0003774ワット発電中さん
04/09/03 12:42ID:/IhaXLhF不調なのにご苦労様。体調気を付けてね。
0004& ◆t58k6Wvkqk
04/09/03 21:30ID:6pUqcToxまたVerilogのVCDフォーマットみたいなやつ、VHDLにはないの?
あまり、ソースがないので、困っています。
0005774ワット発電中さん
04/09/03 21:42ID:DudfWI6n乙
0006774ワット発電中さん
04/09/04 00:36ID:E9wuijWnhttp://www.actel.com/intl/japan/index.html
Actel社のフリーツールLibero 6.0は、評価版ながら、放射線対策3重冗長回路の
論理合成まで出来る優れもの。(約300MB)
http://interact.actel.com/gbnew/lr.cgi
日本語資料の豊富なこちらのサイトも参考になります
http://www.teksel.com/actel/
Libero 6.0の簡易日本語マニュアルはこちら
http://www.teksel.com/actel/libero60/index.htm
Libero 6.0のSynplifyによる宇宙環境向け、3重冗長回路の論理合成方法
http://www.teksel.com/actel/desktop/no28.htm
0007774ワット発電中さん
04/09/04 00:59ID:E9wuijWnhttp://www.fpga.co.jp/top.html
FPGA評価ボードを多く販売してる有限会社ヒューマンデータのHP
評価ボードの回路図も公表されているので、FPGAを使った試作ボード
の設計にとても参考になります。
http://www.hdl.co.jp/home.html
私はアマチュアなので知識が偏ってます。
あとは裏方に回らせてください( ´∀`)
0009774ワット発電中さん
04/09/04 01:34ID:oLE/jva2仕事で一度は使ってみたいと思いつつ、デリバリーや性能の点で
選外になるんだよね・・・。
書き込みや、ツール問題さえなければ趣味で使ってみたい石ではある。
001010
04/09/04 22:11ID:QbgqDZwn0011774ワット発電中さん
04/09/05 16:02ID:vdefAcEsALTERAが出しちゃった。新しいCPLDだって言い張ってるけど。
0012774ワット発電中さん
04/09/06 12:26ID:HY2eBUQJ俺も初めて聞いたときには笑った。思わず営業の人に「何これ?」って聞いちゃいました。
0013774ワット発電中さん
04/09/06 20:43ID:UUmwitZG0014774ワット発電中さん
04/09/06 21:24ID:I1N0glls只ツールと只ライターが無ければホビーユーザーとしては魅力無しだわ。
0015774ワット発電中さん
04/09/06 22:17ID:UUmwitZG一番下のヤツしかコンパイルできんかったような。
使えそうもないし、そもそもデバイスが入手できるかワカランし、
結局インストールもしなかった。
0016774ワット発電中さん
04/09/06 22:34ID:I1N0gllsコンパイル出来ても結果をDL出来なければアウト。
0017774ワット発電中さん
04/09/09 22:01ID:uzq2T1jiconfig中はI/Oピンはやっぱりハイインピーなのかな?
システムリセットは電源監視ICだけじゃダメってこと?
SRAMベースのFPGA初めてつかって回路組んだけど、苦労したところだったもんで。
リセット回路はなんとかなったけど、
config中はI/Oピンはハイインピーになること後で知ってプルアップ抵抗追加した。
MAX2だと、そんな苦労しなくても済んだのかも?と思ってたもので。
0018774ワット発電中さん
04/09/09 23:46ID:h30ugBA2微妙かも。
でも、リセット時Zになっていてくれた方が良い場合もあるから何とも言えないかなぁ。
0019774ワット発電中さん
04/09/10 00:18ID:naQwL9dP3k程度で手に入るけど、configROMやら、コア電源用レギュレータやらで
スペース取られて、しかも部品代が結局合計1万円コースになってしまう現状
からすれば、configROM内蔵のFPGAは、結構使いやすいし安上がりと思う。
0020774ワット発電中さん
04/09/10 00:26ID:7TpCfxag漏れはこれを機に全品種ROM内蔵に移行して欲しい。
0021初心者
04/09/10 22:00:43ID:QC4CB+yJ割った答えを16BITで出力する回路を
考えています。
答えに少数点以下の数値がある場合は、
整数に繰り上げます。
例えば、
(簡単のため10進数で考えると)
答えが1.1なら → 2とする
答えが1.000023なら → 2とする
といった具合です。
関係演算子「 >= 」と 加算演算子「 - 」を使って
解を求めようとしているのですが、
[ 000000111111 >= 5.5 ]
のような評価や
また、[ 000000111111 - 5.5 ]
のような計算が出来ません。
データタイプの異なるものに対して
どのようにしたら評価できるのでしょうか?
どうか教えて下さい。
0022774ワット発電中さん
04/09/10 23:50:59ID:mkow8z/rマルチポストする奴には知っていても教えない。
0023774ワット発電中さん
04/09/11 00:29:43ID:lj2zL9W3割った答えを16BITで出力する回路を
考えています。
答えに少数点以下の数値がある場合は、
整数に繰り上げます。
例えば、
(簡単のため10進数で考えると)
答えが1.1なら → 2とする
答えが1.000023なら → 2とする
といった具合です。
関係演算子「 >= 」と 加算演算子「 - 」を使って
解を求めようとしているのですが、
[ 000000111111 >= 5.5 ]
のような評価や
また、[ 000000111111 - 5.5 ]
のような計算が出来ません。
データタイプの異なるものに対して
どのようにしたら評価できるのでしょうか?
どうか教えて下さい。
0024774ワット発電中さん
04/09/11 02:10:12ID:tLWtgUc30025774ワット発電中さん
04/09/11 16:28:35ID:SPowAtKy教えて差し上げますので
どうかsageを覚えてくださいませ
mail欄に半角英で「sage」
そんだけです
貴方の挙げた数を例に取ると、
下位に一桁追加して
[0000001111110(63.0) >= 0000000001011(5.5)]
[0000001111110(63.0) - 0000000001011(5.5)]
でよろしいのではないでしょうか
ていうかお前
ageマルチポスト荒らしはヤメロ
あと12BITを5.5で割って整数に切り上げで出力なら
答は10BITで十分だろがこの水羊羹
0026774ワット発電中さん
04/09/11 22:15:56ID:m952+8TF割った答えを16BITで出力する回路を
考えています。
答えに少数点以下の数値がある場合は、
整数に繰り上げます。
例えば、
(簡単のため10進数で考えると)
答えが1.1なら → 2とする
答えが1.000023なら → 2とする
といった具合です。
関係演算子「 >= 」と 加算演算子「 - 」を使って
解を求めようとしているのですが、
[ 000000111111 >= 5.5 ]
のような評価や
また、[ 000000111111 - 5.5 ]
のような計算が出来ません。
データタイプの異なるものに対して
どのようにしたら評価できるのでしょうか?
どうか教えて下さい。
0027774ワット発電中さん
04/09/11 22:19:48ID:fqPQb5210028774ワット発電中さん
04/09/11 22:21:10ID:N8gd9KNcまぁここでは関係無いだろう…。
12bitだと4096-1までだから、4095/5.5=682.5。
だから10bitで十分。
002925
04/09/12 01:16:07ID:qaDfhCoh0030774ワット発電中さん
04/09/12 02:59:05ID:xtfXZxqW0031774ワット発電中さん
04/09/12 09:11:45ID:+Tdr4uZyWeb上で手に入る入門書というより例文集といった感じであるが、
HDLコーディングスタイルガイド
http://www.teksel.com/actel/data/hdl.zip
Actel社提供だが、第二章はテクノロジに特化しないコーディングスタイル
で、基本ロジックがVHDL,Verilogの両方で書かれているのでとても参考に
なると思う。
003230
04/09/12 23:34:57ID:xtfXZxqWじっくりみてみます。
0033774ワット発電中さん
04/09/14 01:13:52ID:/oyP7a6Jものの本にはVHDLはAdaが基になってると書いてあったけど。
http://www.w-frontier.com/delphi/2_koubun.html
http://www.w-frontier.com/delphi/tips.html
PIOボードやGPIBボードも多少機能制限あるがドライバ対応してるみたいだし
Delphiでもよさげな気がしてきた。
0034774ワット発電中さん
04/09/14 01:28:17ID:mHhWMXlG趣味だとそれで良いのだが、仕事で使うと開発ツールを新規に購入
とか色々と問題があってなかなか導入に踏み切れない。
Delphiの良さは十分に理解してるが、MSの囲い込みにはやはり弱い。
0035774ワット発電中さん
04/09/14 22:55:45ID:LkeO8kTSここにADAのプログラムがちょこっと載ってた。
http://iip-lab.ics.es.osaka-u.ac.jp/people/inoue/program-sekkei-00.html
ほとんどVHDLそのままだな。
0036774ワット発電中さん
04/09/14 23:00:06ID:sVV72nl7そりゃADAベースだから。
0037774ワット発電中さん
04/09/16 00:32:10ID:WJmyeviz0038774ワット発電中さん
04/10/04 22:57:35ID:C093HSbrサイのアーモンド型のつぶらな目が大好きでした。
ありがとう。つぼはち
0039774ワット発電中さん
04/10/09 09:27:36ID:4n1MEssY実際に動く評価基板があればそこから始められるんだけど、
シミュレータからだと、初心者には分かりづらいよね?
シムとかテストベンチから入った香具師の体験談きぼん
004139
04/10/09 17:29:05ID:4n1MEssY0042体験談1
04/10/09 19:08:35ID:2q5Gawao(ただしC言語は習得済みでした)
始めに、本を買いました。
CQ出版 改定入門Verilog HDL記述
CQ出版 HDLによる高性能ディジタル回路設計
ソフトは以下を揃えました。基本は無料ですよね。ホビーですし。
GPL cver (UNIX用フリーVerilogシミュレータ)
cygwinが入っていたので。根っこを学ぶ分にはGUIよりCUIのほうがいいこともあります。
ALTERA Quartus II Web Edition
XILINX ISE WebPack
無料でつかえるソフトでは高性能、現実的だと思ったので。
テストベンチかかなくてもいいですし。
まずは、googleさまのご神託と共に入力信号を反転させる回路を記述しました。
テストベンチを書き、cverで動作を確認。
導入からここまでで1週間といったところでした。つづく。
0043体験談1
04/10/09 19:15:29ID:2q5Gawaoシム→シミュレータ
テストベンチ→自分が設計した回路をテストするための条件
42の例でいくと、
0秒目は入力Aに0を入力する
1秒目に入力Aへの入力を0から1に変える
2秒目でシミュレーション終了
・・・というのをVerilogとかで書いたものをテストベンチというですよ。
0秒目は出力Bに1が出ている
1秒目は出力Bが1から0に変化する
2秒まで出力Bは0のまま
という結果がでてくれば、期待通り(入力信号が反転している!)
というわけです。
というわけで、期待通りの動きをするかどうかを、シミュレータに(自分で書いた)
テストベンチと設計した回路(モジュールと呼びますね)を入力し、
出てきた結果を見て判断する、と。
これならお金はかかりません、ハラショー!というわけだ。
004439
04/10/09 19:23:35ID:4n1MEssYご丁寧にどうもありがとうございます。
PCの環境はどのくらい必要ですか?
0045体験談1
04/10/09 19:31:44ID:2q5Gawaoまあ、あればあるほど・・・というのが正直なとこですが、
ホビーなら自分が我慢できりゃなんでもいいかと思います。
ちなみに自分は
Win2000でモバイルセル論800MHz
WinXPでぺん3−833MHz(たしか
です。
0046体験談1
04/10/09 21:19:30ID:2q5Gawaoで、cverからQuotasやISEに移行するのが結構大変でした。
というのも、PLD開発のフローや全体が見えていないとなにをやればいいのかサパーリ
だからです。
自分はそういう業界にはいって有識者に教えてもらうという手段をとれたので
なんとかクリアしましたが、孤高のホビーストだとなかなかそうもいかないかもしれません。
で、次に買った&お勧めなのは
CQ出版 FPGAボードで学ぶ論理回路設計
約1万円で本とFPGAボードが付いてくる、比較的お得なブツだと思います。
意外にパラレルケーブル入手で苦しみました。最近ってD-SUB同士のプリンタケーブルって売ってないのね・・・_| ̄|○
安価なボードがついてくるっていうのもありますが、具体的にファイルを作成して動作させるまで
細かく書いてあるので、初心者にはかなりオススメだと思っています。(個人的に)
そんなこんなで2ヶ月が過ぎ、いまは↑でMMCカードIFを作ろうとしてるとこです。
やっぱ外にマイコンがいるなぁ・・・ってとこでAVRやらH8やらの方面を勉強中。 いじょ。
0047774ワット発電中さん
04/10/09 23:11:36ID:aATjcLd4>「以外に」パラレルケーブル入手で苦しみました。最近って
>D-SUB同士のプリンタケーブルって売ってないのね・・・_| ̄|○
そういうときは,RS-232CのDSUB延長ケーブルを買うんですよ.
もしくは全ピンストレートが必須だから,RS-1284対応LPTケーブルね.
0048体験談1
04/10/10 00:37:21ID:Ys2LJlJpあ。そうですねー、232C延長でよかったんですねぇ。
自分は案フェノール・DSUB変換買ってシマタ^^;
余談
予想外だったので「意外」だったのですよー
0049774ワット発電中さん
04/10/10 01:37:29ID:8dTR/5bBQuartus2のWEBエディションって、ライセンスの関係でネットの最適化が出来ない(英語)
っていう警告が出ると思うんですが、正式版だと更に最適化されるんでしょうか?
MAX3000みたいなCPLDレベルでも恩恵ありますか?
0050774ワット発電中さん
04/10/10 12:18:54ID:8PLbdUW5usbポートしかありません。USB-パラレル変換ケーブルは使えないと聞きました。
なんかいい方法ありますか?
0051774ワット発電中さん
04/10/10 12:50:39ID:MoJAHlCHhttp://www.isn.ne.jp/~ueno/altera/pldx.txt
0052774ワット発電中さん
04/10/10 13:42:33ID:T9DWFpcaありが�d!
0053774ワット発電中さん
04/10/11 03:44:15ID:xeLq7Qd+昔大学で使ったのが
・MAX-II plus
・verilog-XL / signalscan
この前、自宅ノートに入れたのが
・イカロス
です。
0054774ワット発電中さん
04/10/11 10:01:31ID:M7q7INtShttp://ppg.teldevice.co.jp/home/main/top/jtag-blazer.html \37,800-
PL-USB-BLASTER $300.00
又は10000円くらいで中古パソコンを買って、LANで繋ぐほうが安いかもしれん(w
0055774ワット発電中さん
04/10/11 12:14:33ID:CqJcDmy4発売予定はまだ決まっていないが、もしかしたら年内には出るかも?
http://www.nahitech.com/ujstamp.html
0056774ワット発電中さん
04/10/11 20:08:42ID:tDHA8p0fhttp://members.at.infoseek.co.jp/x1resource/xilinx/sp2isp/usbisp.htm#top
0057774ワット発電中さん
04/10/12 12:58:15ID:WjPYcMhUVerilog-XLとSignalScanを使っていたのなら、それ級のシミュレータを探すとなると
ModelSIM-SEかAldecぐらいしか無いと思うよ。
とりあえず、Quartus2のシミュレータ使ってガッカリしなければそれで良いとは思うが
PLI-$dumpvars()でチェックをするようなことはできないから、物足りないと思う。
しかし、学生時代からその環境とはオッチャン、たまげた。
0058774ワット発電中さん
04/10/16 01:22:28ID:CT337dQ+0059774ワット発電中さん
04/10/16 15:51:05ID:S2CLhXAT4.1+SP1
0060774ワット発電中さん
04/10/16 15:59:29ID:l+2u/uqg0061774ワット発電中さん
04/10/18 12:25:21ID:wHQ4Zfl64.1+SP2
0062774ワット発電中さん
04/10/26 10:31:10ID:BMKhVnfc4.1+SP2
0063774ワット発電中さん
04/10/27 08:35:25ID:Usb3PlRI合成をしたところ トップモジュールにhigh-fanout-netが出てくるという
警告が出てしまいました(TIM-134)
しかしreport_netで各netのファンアウト数を見たところ
MaxFanoutでもせいぜい30程度でしかありませんでした。
これって合成用のライブラリがおかしいってことなんでしょうか?
それともreport_netでも出てこないようなnetが存在するということなんでしょうか?
どなたかご教授ください。よろしくお願いします。
0064774ワット発電中さん
04/10/27 09:04:51ID:B72sRQjQプロジェクト一式あぷすれ
0065774ワット発電中さん
04/10/27 15:03:40ID:2guEpE14ピン名がだぶっていねぇか?
0066774ワット発電中さん
04/10/28 07:22:55ID:vVDjRy08前スレや機械板で同じような質問があったが同一人物?
2ヶ月経ってまだ解決してないの?
http://science3.2ch.net/test/read.cgi/kikai/1056186047/452
0067774ワット発電中さん
04/10/28 08:49:46ID:rgTGjD4Kワラタw
内容とageて質問しているとこから見て同一人物だろう。
仕事なのか学校の課題なのか知らんが、そろそろ対応しないとやばいんじゃねーか?w
0068774ワット発電中さん
04/10/29 12:15:26ID:nVG1/EOp0069774ワット発電中さん
04/10/29 18:20:53ID:ZncUbX7pやばいだろーな
てことで
set_max_fanout 4
とでもして合成してみれ.
それでWarning出なくなればfanout 30がtoo highってことだし
それでもWarning出れば何か他の原因.
原因の特定にはつながるだろ.
まずはそこから.
合成時のログとか状況とかもうちょっと詳しく.
論理合成は成功するのか,失敗するとすればどこでとまるのか,
合成前のfanout数とか,どこでWarning出るのかとか.今の情報量じゃぜんぜんワカンネ.
あと,質問する時はメール欄に半角英でsageと入れておくれ.
0070774ワット発電中さん
04/10/29 22:36:09ID:bkjzYNtj下記の条件A='1'に加えA and B='1'の条件となるBを追加しようと考えています。
どこにどのような回路を組み込めば良いでしょうか?
entity test is
port(a, b : in std_logic;
A : in std_logic;
clk : in std_logic;
n_rst : in std_logic;
a1,b1 : out std_logic);
end testr;
architecture RTL of encoder is
begin
process (a, b, clk, n_rst, A) begin
if(n_rst = '0') then
a1 <= '0';
b1 <= '0';
elsif(clk'event and clk='1') then
if(A = '1') then
a1 <= a1;
b1 <= b1;
else
a1 <= a;
b1 <= b;
end if;
end if ;
end process;
end RTL;
0071774ワット発電中さん
04/10/29 23:47:02ID:JlMFQhLp0072774ワット発電中さん
04/10/30 02:30:38ID:cBpw+6f8'1'では?
本でも買って、最低限の記述スタイルを覚えたほうがいいね。
0073774ワット発電中さん
04/10/30 06:23:32ID:D/FXDpkG0074774ワット発電中さん
04/10/30 12:04:29ID:aoR2DEqSVerilog HDLと違ってVHDLは大文字・小文字の区別はありませんので
信号Aと信号aは別の名前にする必要があります。
process文の中身は非同期リセットとクロック同期のようなので
センシティビティリストの中はclk, n_rstだけで十分です。
で、質問の「A and B='1'」の条件とは「A='1' and B='1'」という意味でしょうか。
だとしたら「A='1' and B='1'」の条件と「A='1でBはdon't care」という条件に
なりますから、簡単に書けばif文を入れ子にして、
if(A='1') then
if(B='1') then
…
else
…
endif;
endif;
と書けばよろしいかと。
でも、しつこいようですけどVHDLは大文字・小文字の区別はありませんので
信号Bと信号bは別の名前にする必要があります。
007570
04/10/30 12:56:22ID:yHiIm30zありがとうございます。
入門書買って一から勉強してみます。
0076774ワット発電中さん
04/11/05 01:01:44ID:WexKwaKdCQ出版のFPGAボードで勉強してるんですが拡張コネクタの一つのピンから
16 bitデータを受け取るにはどうPinとノードを配置したら良いんでしょうか?
へたれなので出来のいい後輩が書いたソースを情けないやら悔しいやらで
話すすりながら打ち込んでます。
誰か教えてください。。。
0077774ワット発電中さん
04/11/11 14:49:51ID:dbWisPGLおかげさまでなんとか解決しました。
余計な信号を削ってデザインを作り直して
バッファーツリーを多段に入れまくって
helpコマンドで何かのコマンドの説明見て
最後のほうにでてくるコマンドも片っ端から説明見て
set_fix_multiple_port_netsをcompile前に入れて
set_max_fanout の変数を変えまくって実行したら
なぜかうまくいきました。なぜうまくいったかはわかりません。
けどちょっと合成スクリプトを変えたりすると
Design "hogehoge" contains unmapped components.
とかいうメッセージが出てきたりしてこれは結局解決できませんでした。
ほんとやばかったです。
ご迷惑をおかけしました。
なにぶんひどい開発環境(むしろ私の頭脳?)なもんでして、
どんなコマンドがあるとかそういうのが全くわかりませんでした。
あと質問あるときはsageるのが常識みたいですね、知りませんでした。
すいません
0078774ワット発電中さん
04/11/12 05:49:24ID:wUOQPMwrTutorial見てても多層化されたVerilogのモジュールを一切使っては
いませんでしたが。やっぱ平坦なファイルしか使用できないのでしょうか?
それともプロジェクトに追加しさえすればBlock Diagram上に表現されて
ないVerilogファイルでも他のモジュール内のサブモジュールとして
利用できるのでしょうか?誰か教えて下さい。
0079774ワット発電中さん
04/11/12 21:51:45ID:bejicOFZVerilog歴3ヶ月の俺が言うのもなんだけど、Quartusは関係無い。
Verilogの入門書でも読んでみて下さい。
「下位モジュールの呼び出し」とかっていうようなタイトルでも付いてると思います。
構文は、 「 下位モジュール名 インスタンス名 (ポートリスト) 」 って感じです。
0080774ワット発電中さん
04/11/13 00:46:01ID:nTHXHrfX> バッファーツリーを多段に入れまくって
手で入れたの?
ご苦労さん。
0081774ワット発電中さん
04/11/13 09:04:57ID:nKM6sARJQuartusでもできます。普通です。
2ファイルくらいのコードで試してみたら?
同じディレクトリに入れて、トップをコンパイルすれば、分かるよ。
0082774ワット発電中さん
04/11/13 23:27:14ID:UmZlR5Kg状況にもよるのかもしれんが、普通は手で多段ツリーなんて入れんと思うがなぁ
クロックツリーバッファを手で一段入れたり、必要なドライブ能力を考えてI/Oセルを
自分で置いてset_dont_touchとかはやるけど
というか、変な小細工する前に文法チェッカーかけるか、詳しい人に
ソースと .synopsys_dc.setup を見てもらうべきかと
0083774ワット発電中さん
04/11/14 20:36:00ID:mI/nMcZv0084774ワット発電中さん
04/11/14 23:03:04ID:EfVrCvdCとりあえずVerilogを覗くだけなら
ALTERA Quartus II Web Edition http://www.altera.co.jp/
XILINX ISE WebPack http://www.xilinx.co.jp/
(>2 より抜粋)
書いたVerilogのコンパイルとシミュレーションまで無料できるから、
とりあえずこれためすべし。
評価ボードに手を出すのはそのあとでいいかもよ?
評価ボードもピンキリだし、人によって欲しいボードも違ってくるだろうから・・・
とりあえず買ってみて考えるってのも俺は好きだ! ホビーユースだしね
仕事だったらとりあえず買うなんてやったら殺されるなきっとw
0085774ワット発電中さん
04/11/15 00:09:12ID:58mcQWc1ありがとうございます。
言葉が足りなかったみたいですみません。
とりあえず、Verilogは昔大学でやってて、
1〜5万ゲートぐらいの設計をヘタレなりにやってたんですが、
久々にやってみたくなってw
当時、ソフトとボード与えられて、適当にやってたんで、
自分でやるとなると何を買えばいいか分からないんでお聞きしたいんですが、
Xilinxのスターターキットは論理合成から実体配線まで制限なしにできるんでしょうか?
調べたんですが、いまいち分かりません。
別に効率の良い合成は必要ありません。
Xilinxのスターターキット程度のものを買っておけばしばらくは遊べますでしょうか?
0086VHDL入門者
04/11/15 12:34:03ID:Ro2/ofkiCASE文で条件式中のビットの一部に不定のXを入れた場合は
どうなるのですか?
例えばwhen"011X"=>PORT1<="0010"
とした場合、0111及び0110両方で条件が成り立つのか、それとも
Xは0か1どちらも問わないものだとソフトが判断して0111か0110の
どちらかに固定されてしまったりするのですか?
教えてください…
0087774ワット発電中さん
04/11/15 14:21:07ID:HGhJspiKCQ出版のFPGA評価キットやxilinxの評価キットのISE(webpack)で実配線(フロアプラン作成のこと?)まで可能です。jtagで実機に書くことも可能です。
来月のデザインウェーブマガヅンにspartan-3が付いて2000円だそうです。
周辺をちょっと自力で作らなくちゃいけませんが、1万円程度のスターターキットを
買ってHDLだけの開発にがんがるか、DWMを買って半田付けからがんがるか迷ってください。
仕事で800万ゲート×4って言う開発してましたけど、この規模になったらfoundationかなと思いますが、それ以外ならフリーツールで十分かと
思います。
個人的にはステートマシンの記述が楽チンなvisualeliteとかsimplifyproとかがフリー版(機能限定でもいいから)で出てくれれば裾野が広がると思うんですけどねえ・・・
0088VHDL入門者
04/11/15 16:53:36ID:Ro2/ofki0089774ワット発電中さん
04/11/15 17:38:20ID:o3waSicM0090774ワット発電中さん
04/11/15 21:43:08ID:X2lqkume素直に考えれば、固定しない方が何かと都合がいいから、そうなると思うけど・・・・
実際エラー出ない? とある本では「書けないからifでやる」とある。
0091774ワット発電中さん
04/11/15 22:11:30ID:j8LiZ9Yiう〜ん・・・、そう書きたいの分かるけど、コンパイラとかによっては変な事起きるかも
しんないから俺はやらない。
経験少ないからあんまり自信無いけど、Q2 はダメだった気がする。
009283
04/11/15 22:21:40ID:58mcQWc1どうも、親切にありがとうございました。
私程度の人間だとフリーソフトで十分みたいですね。
半田ごてでがんがるか、どうするかもうちょっと悩んでみますw
009391
04/11/15 22:23:49ID:j8LiZ9Yiif の方がマシかもしれんが・・・。
case inp_d(3 downto 1) is
when "011" => port1 <= "0010";
009493
04/11/15 22:38:26ID:j8LiZ9Yi0095774ワット発電中さん
04/11/15 23:05:02ID:8s3R1jw3011Xの時は最下位ビットは見ないけど、
他の条件では4ビット全部指定有なんて
場合は記述がごちゃごちゃしそうかも。
0096774ワット発電中さん
04/11/15 23:24:30ID:Frcp5IfWVHDLの仕様とか書いてある
0097774ワット発電中さん
04/11/15 23:28:14ID:piNJXvJA只のシミュレータもネットで拾えるんだから幾らでも現実に試す手段もあるのに
なんでやれば出来ることを質問するのか?
頭悪すぎる。
0098774ワット発電中さん
04/11/16 17:52:38ID:mHpeKD1Y答えるのが嫌なら無視しろよ。誰もお前に教えてやれとは言ってない。
0099774ワット発電中さん
04/11/16 19:15:45ID:KYTfYzfBコンパイルが通るならシミュレーションで走らせれば
すぐわかりそうなものだけどね。
0100774ワット発電中さん
04/11/16 20:42:14ID:33hBiAMN0101774ワット発電中さん
04/11/17 21:18:46ID:yyLVKGbC0102774ワット発電中さん
04/11/18 00:09:15ID:HJWhAI8f0103774ワット発電中さん
04/11/18 01:48:04ID:vvRIFluecaseでは比較できない点に、子一時間ペリー著など調べたことがあった。
今となってはトラブルの無い冗長な記述命。。
逆に文法やパーサの推定なんぞで悩む時間が欲しい。。
0104774ワット発電中さん
04/11/18 14:18:23ID:AWHw443v0105774ワット発電中さん
04/11/19 22:51:30ID:lVfxyT21generic文でフレキシブルなモジュールを作ったんです。
で、
generic ( WIDTH : integer );
port ( DATA : in std_logic_vector ( WIDTH-1 downto 0);
:
:
とかやりまして。
で、WIDTH=1にして、std_logicを繋いだら"型ちがーう"といわれまして。
std_logic_vectorにstd_logic繋ぐなよといわれました。ごもっともです。
じゃあってことで
signal A : std_logic_vector(0 downto 0);
はやっぱりはじかれたわけで。
泣く泣くWIDTH=1バージョンを個別モジュールで作ったんですが、なんだか
スマートじゃないなぁと。みなさんはこういう状況でどうします?
0106VHDL入門者
04/11/20 16:03:33ID:9bzit/Ah性能はどうなんでしょうか?
case文で記述すると、本来なら数個のロジックで出来た筈の回路が巨大に
なってしまいます。これは論理圧縮の性能が悪いで結論付けられるので
しょうか?
0107774ワット発電中さん
04/11/20 16:06:17ID:3+/xvP4kまずそのVHDLの記述をうpしてはどうでしょうか?
0108774ワット発電中さん
04/11/21 01:11:56ID:CvmGB45Xなんのツールではじかれたのでしょうか?
メッセージはなんてでたのでしょう?
0109105
04/11/22 20:41:41ID:yuDkLbxkツールはModelSimPE 5.5fです。
メッセージは以下のようなものでした。
# ERROR: C:/.../xxx.vhd(yyy): Type error resolving index expression.
いろいろと読んだりぐぐったりしてはいるんですが、
C++みたいにモジュールの多重定義ができたりはしなさそうですね>VHDL,Verilog
なんか悔しい。
0110774ワット発電中さん
04/11/22 23:29:01ID:3fUDtwhF仕事でも出張先とかでWEB版使ったりするが、圧縮率が悪いって気になった事無いけどなー。
case文の記述が悪くて変な回路合成してたりしない?
0111774ワット発電中さん
04/11/23 00:30:48ID:Uu37W0gn合成結果は同じだと思うのだが。
実際に、200kくらいの設計を
WEBPACKとFOUNDATIONの両方で合成させてみて、
出来上がったbitファイルを比べてみると、全く同じになった。
0112774ワット発電中さん
04/11/23 01:58:01ID:jDHJzlXQホビースト的には嬉しいけどw
なんかつくりてー でも時間が無い・・・くそぉ
0113774ワット発電中さん
04/11/23 02:41:25ID:+8rPSg/0ISE もQuartusも ReedSolomonも Turbo符号もエンコーダ、デコーダともワンタッチで出来上がる。
これさえあればほとんどの人はちょこちょこしたグルーロジックさえ組めば何もしなくていいんじゃないの?
0114774ワット発電中さん
04/11/23 11:24:47ID:Uu37W0gnFPGAエディタは、WebPACKだとCLBの配置配線が見えるが、有料版だとCLBの中身まで見える。
エディタとはいっても、配置配線を眺める以外には使わない。
それ以外のアクセサリは使ったことがない。
0115774ワット発電中さん
04/12/05 23:27:03ID:D48nht+aifじゃねえ
0116おっくん
04/12/08 01:32:41ID:o90pAHBO0117774ワット発電中さん
04/12/08 02:30:45ID:3/jHyzfDそこは非同期にすること。
0118おっくん
04/12/08 17:32:54ID:o90pAHBO0119774ワット発電中さん
04/12/08 23:38:18ID:h3Q60i2Falways @(posedge clk ) begin
sftreg[3:0] <= {sftreg[2:0], fb};
end
0120774ワット発電中さん
04/12/09 13:12:05ID:PKxLhrMJ0121774ワット発電中さん
04/12/09 17:20:02ID:Kr5JHULqsftreg[3:0] <= {sftreg[2:0], fb};
fb <= sftreg[2] ^ sftreg[1] ^ sftreg[0];
end
と書くな!ということでは?
0122774ワット発電中さん
04/12/09 17:30:11ID:XFlGTW3n0123774ワット発電中さん
04/12/10 02:50:22ID:ZeW55erk禿げしく勉強不足
0124いつでもどこでも名無しさん
04/12/10 10:49:52ID:L1pP5+7Wでいいじゃん。
0125774ワット発電中さん
04/12/10 11:04:56ID:9pKzODtz???
0126774ワット発電中さん
04/12/10 14:26:49ID:FTUB//os計算するときはどうすればいいのでしょうか?
テーラー展開くらいしか思いつかなかったのですが、別の方法があるのでしょうか?
よろしくお願いします。
0127774ワット発電中さん
04/12/10 14:32:19ID:ggxWYBJE0128774ワット発電中さん
04/12/10 15:00:30ID:OiC2Pd3iあとは超簡単なDSPを手組みして教科書に載ってるのアルゴリズムを
色々と試してみる。
0129774ワット発電中さん
04/12/10 15:47:23ID:h8OSbmQL0130774ワット発電中さん
04/12/10 16:54:16ID:hHajYQvZFPGAで三角関数計算するのはCORDICが良かった。テーラー展開なんか目じゃない
CORDICでぐぐると結構サイトがある
大昔68kに実装したときにバレルシフタがうらやましかった、マジ。
でも、用途に依るがテーブル引いて線形補間で問題なかったりしない?
0132774ワット発電中さん
04/12/10 17:56:05ID:hHajYQvZ今でも一度身に付けると一生もんだよ。といっても、便利がいい方法だけど、あまり知られていないんだよね
日本語の本が一松信先生のしかないし、この本がまたわかりにくいってことはあるけどね
0133774ワット発電中さん
04/12/10 19:26:56ID:VJM7nC7A0134774ワット発電中さん
04/12/10 20:07:34ID:dDoj+5Na場合が多い。 FPGAのアプリだと尚更その傾向が強いような気がするんだけど・・・
FPGA使った計算で、そこまで精度が必要な用途って何か聞いてみたい。
0135774ワット発電中さん
04/12/10 20:20:22ID:znfqrlxaで、ATANとSQRTが必要で、平方計算はどうしてもどこかでやらなきゃいけないので、えいやっとまとめてCORDICした
0137774ワット発電中さん
04/12/10 21:00:49ID:tGVCILbQ入門用のおすすめの本かwebページありませんか?
0138774ワット発電中さん
04/12/10 21:28:52ID:sFg4l3eghttp://www.andraka.com/files/crdcsrvy.pdf
これでいいの?
あとIEEE 1364 Verilog2001 spec 転がってるとこない?
手に入れた奴はフォントがないのかFigのタイトルとかがちゃんと表示されない。
2001になってめちゃくちゃ便利になってるジャン。見落としてた・・・
0139774ワット発電中さん
04/12/10 21:48:31ID:znfqrlxa日本語でcordicの原理を解説したのもあった。(今年の7月ごろ)
さっきぐぐったときは、読めば実装できるCORDICの文献が、
日本語のモノで多数転がってった。
当時、私も一松先生の教科書を見て実装しますた。
0141774ワット発電中さん
04/12/10 22:27:59ID:znfqrlxa実は、いまだに良くわかってないのだが。汗
0142超初心者
04/12/10 22:41:14ID:mA4gxR8R書かなきゃいけないんでしょうか?ええとつまりc言語の配列見たいに
array[N] = {....}みたいな風にすっきり書けないんでしょうか?教えて下さい。。。
0143774ワット発電中さん
04/12/11 00:45:23ID:PWbGlx7Xttp://www.picfun.com/vhdl36.html
0144126
04/12/11 02:04:34ID:eGzACmSMぐぐったらたくさん出てきました。
1周期を1024分割したのでROMでもいいのですが、計算法があるというのがわかっただけでも勉強になりました。
ありがとうございました。
0145774ワット発電中さん
04/12/11 09:51:24ID:HoQLAUdKそれがFPGAになってまた活躍しているのは喜ばしい限りです
ぜひ、活用してください
0146774ワット発電中さん
04/12/11 13:34:40ID:grQkrB75昔、寺のEABにテーブル突っ込むのに、C言語(MS-C かなり古い!)でテーブル記述した事あるぞ。
Cで書いてコンパイルして、HEXファイルをEABに喰わせれば良い。
LEへテーブル実装するなら、この方法は無理かもしれないが・・・
0148774ワット発電中さん
04/12/11 15:17:41ID:BFzv6oph> http://ppg.teldevice.co.jp/home/main/top/jtag-blazer.html \37,800-
> PL-USB-BLASTER $300.00
USB Blasterヤフオクでてるね。
http://page12.auctions.yahoo.co.jp/jp/auction/p9425997
うーん、個人で持っとくのも悪くないか?
0149774ワット発電中さん
04/12/11 15:43:05ID:M4GLMEfxバンダリスキャンていう書きこみ以上のことができるみたいだし
http://www.nahitech.com/smartjtag.html
0150774ワット発電中さん
04/12/11 20:18:23ID:XBQ7u2k8使うものであって・・・ゴニョゴニョ・・・
0151774ワット発電中さん
04/12/11 23:02:20ID:M3VuMh3AHoQLAUdKは有効数字と有効桁が同じものだと知らなかった哀れな高卒。
0152超初心者
04/12/12 14:56:31ID:h09vxZHxレス遅くなって申し訳ありません。ありがとうございます!
0153超初心者
04/12/12 14:56:52ID:h09vxZHxレス遅くなって申し訳ありません。ありがとうございます!
0154774ワット発電中さん
04/12/12 14:59:07ID:FL5vsRtnレス遅くなって申し訳ありません。ありがとうございます!
0155774ワット発電中さん
04/12/15 22:21:22ID:wlA48S0O0156774ワット発電中さん
04/12/16 07:09:35ID:Zu0mp3yoCQ出版のやつとXHDLを試したけど、どちらも完全対応じゃないみたいで。。
0157774ワット発電中さん
04/12/16 12:22:59ID:sQv+TCi0>おすすめのVHDL←→Verilog変換ツールってありますか?
ロハのやつなら漏れも欲しいぞ
0158774ワット発電中さん
04/12/17 04:41:20ID:S1Sx6LQuをしないといけないのですが問題があって困ってます。
2で割ったりするだけならビットシフトで十分ですけど、
除数(分母)が被除数(分子)よりも大きい場合は実数で
考えれば1より小さい値ですが固定小数点なので0になって
しまいます。なので、浮動小数点演算でやろう考えてますが、
回路が大きくなってしまうことが目に見えてます。
何かよい考えがあれば教えて下さい。
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にしたって(プロセスにもよるが)非同期よりも同期式のほうが面積が小さい場合が多い。
「普通は非同期」の一点で設計するやつはなにも理解していない、コンサル屋の思うつぼ。
0259774ワット発電中さん
05/01/17 02:51:57ID:9QQ3QVB80260774ワット発電中さん
05/01/17 03:22:11ID:XRmAdDE8うーん、クロックからアナログにまで発展したので期待したのだが枝葉を省くと、
”学生にもわかるように 端的に言うと
ディジタル回路なんだから、クロックはあって 「普通」だろ?
他にもたくさんあるぜ。 同期 これ 必需。 これないと なにも使えない 。”
ってことよね。これで学生納得するのか?こんなのはどうだ?
"順序回路だからこそリセット要るのよ。順序回路なんだからとうぜんクロックあるでしょ。
だからいろんな問題ある非同期じゃなくて同期リセット使う。"
0261774ワット発電中さん
05/01/17 09:52:44ID:gKLRqskA同期リセットより面積が大きくなったとしてもそれは必要なコストってだけの話。
0262いつでもどこでも名無しさん
05/01/17 10:57:35ID:GFuo8TXkクロック停止状態でも初期化できるように
初期化必要なFFには非同期リセット使うのが普通。
同期リセットだけで非同期リセットできない回路なんて
スキャンテストの時にいい迷惑。
スタセルには非同期セット/リセット付きセルが用意されてるし、
同期リセットを使う方が余計なロジック増えますよ。
ここにはFPGA屋と学生しかいないの?ASIC屋はいないのか?
0263774ワット発電中さん
05/01/17 11:23:19ID:2OI18uw30264774ワット発電中さん
05/01/17 12:28:07ID:agQ5CCCeASIC設計だと同期リセットはリスクをちゃんと理解していないうちは使わないほうがいいよ。
エッチ・ディー・ラボからSTARCに移管されたマニュアルも
変わらず非同期推奨です。別に「コンサル屋の思うつぼ」と言われてもねぇ。
0265774ワット発電中さん
05/01/17 13:35:48ID:HrfGrsKt>エッチ・ディー・ラボからSTARCに移管されたマニュアルも
>変わらず非同期推奨です
おまえはアホか?
そんなもん何の基準にもなるかよ。いったいどういうオツムの構造してんの?
0266774ワット発電中さん
05/01/17 13:46:13ID:TdGG//AH設計しねぇで
スキャンばっかしてろ
他人の造ったもん 波形だけで 何がわかんだよ!ベン図からやり直せ
オモシロスコープ!
0267774ワット発電中さん
05/01/17 13:57:24ID:nbreKvnf逆だろ。
電源投入時の過渡状態を考えれば、同期リセットにしておくのが無難。
だよ・
0268774ワット発電中さん
05/01/17 14:11:25ID:8iwaSufXなぜそうなる?
ほんとに製品作ったこと無いな。
0269774ワット発電中さん
05/01/17 16:08:44ID:iXKmfkSo>電源投入時の過渡状態を考えれば、同期リセットにしておくのが無難。
外バスのインターフェースなんかの出力が不定でもいいんですか、へ〜。
お前のチップは、気が付いたら勝手に外メモリの中身を壊してたり
バスがぶつかってデバイス壊したり、しかもそれは個体差があって
原因解析が困難だったりしそうで、到底商品として成り立たない罠w
0270774ワット発電中さん
05/01/17 17:28:15ID:/PYWwVzP俺はASICで既存のシステムへの組み込みを想定した回路設計
やってるから非同期リセットが基本,て考えてるけど.
ASIC想定してる奴も他の何か想定してる奴もこのスレッド見てるんだからさ,
それぞれの"普通"で話してたらかみ合わなくて当然じゃね?
ASICならこの記述,他の何かならその記述,それでいいだろ.
前提条件がはっきりしないままでの不毛な喧嘩はやめて
みんなで一緒にrtlでオモシロスコープ記述しようぜ.
0271774ワット発電中さん
05/01/17 20:20:35ID:o490Ue7Q確かに、別に感情的になる必要ないよな。
----------------------------------------------------------------------------------------
ある国内半導体メーカーのデザインマニュアルのリセットの項目を要約すると。
同期リセットを推奨するが、初期化リセットについては非同期リセットになるようにしてください。
理由は、、初期リセットは、通常のバスとは異なり、タイミングの問題がなく タイミングを合わせる
為のゲートが削除できます
また、同期リセットにした場合、ゲートレベルのシミュレーションにおいて、値が確定しなくなる
(Unknown状態) になることがあります。
------------------------------------------------------------------------------------------
LSIのデザインをしている人は、多分同じような記述を見たことがあるんではないかな。
結局のところ、大抵の人が最初にデザインガイドとかで読んだことがベースになっているのでは、
同期リセットを主張する人の、情報ソースや同期リセットを選んだ理由は何なんでしょうか?
もしも、同期リセットが望ましいChipがあるのなら知っておいたほうが良いですからね。
0272774ワット発電中さん
05/01/17 22:15:35ID:/XQigBzIここみると逆のように見えるな。
http://www.starc.jp/bookstore/semiguide.html
同期ロジックモジュールのテストの自動化を考えると同期がいいんだと思うけど、
チップ上のリセットどっちかに統一せいとなると非同期になるってことだろ。
0273774ワット発電中さん
05/01/17 22:22:48ID:9QQ3QVB8で、疑問ですが、
>タイミングの問題がなく タイミングを合わせる為のゲートが削除できます
非同期リセットで、タイミングの問題が楽になるのは分かる。
「タイミングを合わせる為のゲート」は減るのかも知れないが、 トータルでは
やっぱ増えるのかな? 規模によるのかも知れないけど。
>ゲートレベルのシミュレーションにおいて、値が確定しなくなる
これは某合成ツールを使用する前提でのRTL記述のミスでは?
某合成ツールを使ってるなら、sync関係の属性を正しく指定すればシミュレーションでも
問題は起きないと認識していますが。
0274774ワット発電中さん
05/01/17 22:30:30ID:CjrT1Uq5規模の小さなコントローラーチップなら同期リセットでもいいんでない?
漏れの設計分野はミリオンゲート越えるマイコンで、リセットラインに
STAなんてやってられないし、複数のクロックドメインがあるし、
省電力対策でアクセスしないFFのクロックは止めるし、
DC動作は要求されるし、非同期リセットが常識の世界だけどね。
0275774ワット発電中さん
05/01/17 23:12:10ID:o490Ue7Q270 で記述しましたがメーカーのデザインガイドの記述内容なので、自分が回答するわけにも
いかないので、逆に疑問点を質問
>トータルでやっぱ増えるのかな?
これはどういうことなんでしょうか? 初期化リセットを非同期にしたときに、
追加される回路とは何なのでしょうか?
>某合成ツール...RTL記述のミスでは、
そうなのかもしれませんが、人間はミスをする動物ですし、同期リセットにしたら
問題が起きるから某ツールは使うなとメーカーは言えないのでは?
>某合成ツールを使っているのなら...問題はおきない
同様にLSIメーカーがツールを指定するわけにはいかないのでは?もちろん推奨は可能で
しょうが。
非同期リセットでは問題とならないという前提ですが、
特定の条件でしか起きないとか、特定のツールを使えば避けられるというよりは、
メーカーのデザインマニュアルでは、必ず問題にならない方法を推奨するほうが、
良いと私には思えますが。
0276774ワット発電中さん
05/01/18 00:44:22ID:L95IXUvY>これはどういうことなんでしょうか? 初期化リセットを非同期にしたときに、
>追加される回路とは何なのでしょうか?
クロック・ツリー・シンセシスならぬリセット・ツリー・シンセシス
トランジション・エラーにならない程度にバッファを追加する。
0277774ワット発電中さん
05/01/18 01:01:24ID:z1NjAUwj>>トータルでやっぱ増えるのかな?
>これはどういうことなんでしょうか? 初期化リセットを非同期にしたときに、
>追加される回路とは何なのでしょうか?
(FF+AND)と(非同期リセット付きFF)とを比べると割のオーダで違うはずですよ。
トータルでという意味はセル単位で見れば同期リセットのほうが安いですが、
タイミングの合わせこみに要する諸々の面積をトータルで考えると非同期のほうが
安かったりするのかなと。もちろん、非同期でもタイミング調整に必要な面積は、276
さんの言うとおりただではないのですが、それでも非同期のほうが安いのかなと。
>非同期リセットでは問題とならないという前提
昔は非同期リセットこそ属性指定しないと大変な目にあったのですが、いまは
事情が異なるようです。
0278774ワット発電中さん
05/01/18 01:11:27ID:LMCYgrEj0279774ワット発電中さん
05/01/18 01:24:34ID:z1NjAUwj期にしてるというのが正しいです。
・属性に関しては過去の経験からどの道つけなければ落ち着かない。
(今は事情が異なるとしても)
・リセット時の状態に関しては、外部リセットを直接全FFの非同期リセットにはとても使
いたくない(いったんフィルタを通したい)。これも古い考えかもしれませんが静電気で
苦労したくないので。リセット時の対策は別の手法で行っています。
そうした状況で、どちらかというと同期を選択していたというわけです。
ところが、近年はリセットのファンアウトに伴うバッファ段数増加によるタイミング調整に非常
に苦労しています。面積さえ許せば同期に変更する口実が得られるので喜んで変更します。
ていうかそろそろ限界なんで同期にさせてくれと上司にお願いしてるけど、「安いの?」と聞か
れて「すいませんでした」と答えている。
0280774ワット発電中さん
05/01/18 06:50:01ID:hQ/RPEWp>リセット時の状態に関しては、外部リセットを直接全FFの非同期リセットには
>とても使いたくない(いったんフィルタを通したい)。
ピンから直接FFの非同期リセットにつなぐことはまずやらないのでは?
何かしらの対策回路を施すのが普通だと思っていましたが。
>面積さえ許せば同期に変更する口実が得られるので喜んで変更します。
非同期に変更する、ですよね。
使用しているセルライブラリに非同期リセットつきFFがあれば
どれほど面積が増大するか比較検討しても良いかもです。
直感ですが、非同期化に伴う面積増加を許さないほどマージンの無いマスタを
使っているならレイアウトの収束がかなり厳しそうに思えるのですけどいかがでしょう。
0281774ワット発電中さん
05/01/18 07:24:57ID:ET+W0Gqh>静電気で苦労したくないので...同期を選択して
初期リセット時の静電気による誤動作に、同期リセットが効果があるってのはどうやって検証したんでしょう?
また、効果ありと考える技術的根拠はなんなんでしょうか?
そもそも、初期リセット時の誤動作を静電気によるものと、どうやって分かったんでしょうか?
自分ははじめて、そういう問題を聞きましたが、これって常識? 最近のメーカーのデザインマニュアルでは
リセット時の静電気による誤動作について警告してあるんでしょうか?
静電気対策ってのは、入力段にアナログ的な回路で対応するものとばかり思っていました。
>>近年はリセットのファンアウトに伴うバッファ段数増加によるタイミング調整
ゲート数が大きくなると、リセットのスキューも問題になるということでしょうか?回路設計だけでなく、
レイアウトもされているということなんでしょうか。大規模な回路を設計からレイアウトまでされているのですか?
かなりの大企業にお勤めなんでしょうか?小さいところじゃ、静電気による誤動作の検証も難しい気がしますね。
0282774ワット発電中さん
05/01/18 09:40:53ID:OFHhRCen静電気による 誤作動って 静電気が通電したの?
それとも 静電気による 誘導電流かなんか?
聞いた事 ないっちゅ
オモシロスコープびーむ
0283774ワット発電中さん
05/01/18 10:05:25ID:M2kbOGS/同期にするか非同期リセットにするかはいつも迷うところで、
いつも適当に決めてきたけど、
どちらが正しいかは実際現場でも確定してないんですねぇ。
0284774ワット発電中さん
05/01/18 10:26:18ID:LxZgqJ7yリセットは初期化(電源投入時)でしか使わないって設計もあるだろうし、
動作中にちょくちょくリセットかける & 1クロックでリセットされないと困る
& リセット信号は当然クロックに同期してる なんて設計もあるだろう。
前者と後者のリセット信号を同じ用語でひとくくりにするのが無茶なのかもな
0285774ワット発電中さん
05/01/18 10:34:07ID:OFHhRCenただ 俺らは人間だから あの黒い石に負けちゃあいかん!
俺はフリップ フロップを ファイナル ファンタジーにする!
0286774ワット発電中さん
05/01/18 19:24:15ID:5kOLHXfl0287774ワット発電中さん
05/01/18 19:45:50ID:LxZgqJ7yhttp://www.amazon.co.jp/exec/obidos/ASIN/4150109699/
0288279
05/01/18 20:06:38ID:z1NjAUwj>>282
> ・リセット時の状態に関しては、外部リセットを直接全FFの非同期リセットにはとても使
> いたくない(いったんフィルタを通したい)。これも古い考えかもしれませんが静電気で
> 苦労したくないので。リセット時の対策は別の手法で行っています。
に対してコメントが付いているようですが。
私の記事の前に非同期リセットのメリットとして >>269 のことが話題になっていました。
この話題に関してはこう解釈しました。
まず「電源投入時の過渡状態」に関しては 石に電源が供給されてから、発振が始まるまで
の区間と解釈しました。
次に「電源投入時の過渡状態のことを考慮すると非同期リセットが無難」というところから、269
さんはフィルタを通さない外部リセットを直接FFの非同期リセットに接続しているのかなと解釈
しました。フィルタが入っていれば発振始まるまでリセットの状態は決まらないからです。
そこで、私は静電気防止のために外部リセットにフィルタを使用するたちなので、非同期リセ
ットだろうが同期リセットだろうが発振が始まるまではFFの出力は決まらない。よって私にとっ
ては「電源投入時の過渡状態対策のために非同期リセットを使用する」という項目は当てはま
らない。リセット時の対策は別の手法で行っている。
と、そういうことが言いたかった訳です。
0290774ワット発電中さん
05/01/18 21:17:21ID:LxZgqJ7y静電気防止のためのフィルタっていったいなんだ?
> フィルタが入っていれば発振始まるまでリセットの状態は決まらないからです。
ってことからむりやり推測すると、もしかしてそれは
メタステーブル防止のために挿入する2段FFのことなのか?
意味不明な謎用語使わないでくれよ
静電気防止のためのフィルタって聞いたら↓みたいなのしか思い浮かばんよ
http://www.t-tic.co.jp/company/jigyou/cs/28.html
0291774ワット発電中さん
05/01/18 22:11:33ID:z1NjAUwj電波関係の仕事を行っているので、特に気にせず一般的な言葉かと思っ
て使用しておりました。
申し訳ありません。
0292774ワット発電中さん
05/01/18 22:13:13ID:NAcvKMtO何の為にこういうICが有るのかと小一時間..............
http://www.jpo.go.jp/shiryou/s_sonota/hyoujun_gijutsu/syasai/b038.htm
0293290
05/01/18 22:21:58ID:LxZgqJ7yまったくもって正しい。
でも、それと静電気防止がまったくつながらないので???????なのですよ。
>>291さんが言っているフィルタとは具体的にどういうものなのですか?
チップ外部I/Opin直近に配置したEMIFIL(LとRでつくったフィルタ素子)?
それともチップ内部に作ったCRフィルタ回路のことですか?
どちらにしても
「フィルタが入っていれば発振始まるまでリセットの状態は決まらない」
って現象が発生するとは思えないのです。???????
少なくとも「メタステーブル防止のために挿入されるFF」のことでは
ないのですよね?
0294774ワット発電中さん
05/01/18 22:52:59ID:OFHhRCen0295俺様 ◆f0ugTrYQRI
05/01/18 22:54:06ID:rG/9MYbY0296774ワット発電中さん
05/01/19 07:18:07ID:YHePCqqV0297774ワット発電中さん
05/01/19 19:42:51ID:pDc79rMV浮かばない電気設計者は貴重ですよ。
0298774ワット発電中さん
05/01/19 20:25:19ID:UoIngTepなるほど。
これで手打ちってことでいい?
静電気の人の扱い。
0299774ワット発電中さん
05/01/19 20:25:29ID:YHePCqqVそもそも「静電気防止でリセットにフィルタを通す」が意味不明だしなぁ…
むしろ、静電気防止でフィルタを通すってたわごとをいう自称プロの方が貴重。
静電気によるラッチアップ防止は保護ダイオードでやるものだろ?
ロジック設計者がケアすることではない。
>>279はどこでどう間違って思い込んだかわからないが、
おそらくは、メタステーブル対策のために挿入するFFのことを
「静電気防止のフィルタ」と、てんで見当違いな呼び方をしてるんだろ?
そのため、まともな技術者とは話が噛みあわないってだけの話だ。
>>279は本質的なメカニズムが理解できていないから
わざわざ非同期リセット信号にまで「静電気で苦労したくないために」
「フィルタ」と呼ぶフリップフロップをかましたりするんだろう。
0300774ワット発電中さん
05/01/19 20:27:44ID:pDc79rMVだめだこれは・・・
君には負けた。
0301774ワット発電中さん
05/01/19 20:36:55ID:pDc79rMV>>298
>>299
この辺りの人はASICを組み込んだ製品を売る方とは考えにくい。
メタステーブルやラッチアップといった単語をしているところや、静電気と聞いて
ラッチアップしか浮かばないところからICがらみの仕事の方、ASICを作るまでが
仕事の人と想像します。
発振が始まるまで動作しないフィルタと聞いてLCRフィルタしか思い浮かばない
論理回路設計者もかなり貴重ですよ。
デジタルフィルタの最も基本的な回路と、その用法を説明する気力のある人に後
を託します。
0302774ワット発電中さん
05/01/19 20:43:59ID:ni5UVOleそもそも"デジタル"なんて書いてること自体、随分イー加減な仕事をしていることの証明なんだが。
0303299
05/01/19 20:57:32ID:YHePCqqVアートワークは外注だけどね。
LCRフィルタはシステムクロックとは関係なく動作するよね。だから
「フィルタが入っていれば発振始まるまでリセットの状態は決まらない」
とは矛盾するねって流れだと思ってたんだけど、読み間違えたかな?
というか、リセット信号にデジタルフィルタをかますんですか? 初耳だ!
何のために?
と、ここまで書いて気づいた。
フリップフロップ1個=デジタルフィルタ と強弁したいだけ?
そりゃ無理!
0304774ワット発電中さん
05/01/19 21:11:32ID:caoITF4VメタステーブルとるFFはシンクロナイザ(同期化回路)と呼んでいる。
デジタルフィルタと言うとFIR/IIRしか思い浮かばないんですが・・・ヘタレですか?そうですか。
どんな回路がデジフィルなんだろう?
0305774ワット発電中さん
05/01/19 21:13:18ID:7gwwJK0q>特定の周波数成分を除去したり抽出する回路の意味で使っております。
これを書いたのはあなたではないの。これだと、ローパスフィルタでも入れている
んじゃないかと思うのが普通じゃない。
>>発振が始まるまで動作しないフィルタと聞いてLCRフィルタしか思い浮かばない...
もしかしてこれは、発振が安定するのを待ってからクロックを供給するってこと?
そうだとしたら、フィルタって言葉じゃ意図は伝わらないでしょう。
0306774ワット発電中さん
05/01/19 21:30:09ID:7gwwJK0q失礼、リセット信号に対するフィルタってありましたね。だったら違うのかな。
しかしなー。いくらデジタルフィルタかましたって、リセットの場合、幅くらいしか
変わんないと思うんだけどなー。そもそもデジタルフィルタが静電気に対して
効果があるのか?情報ソースは何なんだ。何かの本に、そうしろって書いてあるのかなー?
新理論のてんこ盛りでさっぱり分からん。
0307774ワット発電中さん
05/01/20 02:29:47ID:Pi4Q19ja非同期リセット使って回路の初期状態与えてるんですけど、
問題あるんですかね?
0308774ワット発電中さん
05/01/20 05:38:49ID:MBBKmyimいいんでないの。初期化リセットを非同期リセットで行うのは、 半導体メーカーの
デザインマニュアルでも推奨されてたし、STARCのデザインガイドでも推奨されている。
今までの発言でも、同期リセットを主張している人は持論を展開するだけで根拠を
示していない。STARCはコンサルタントで信じるのはアホという発言もあったが、
いち開発デザイナーに検証できるとは考えられないし、裏づけデータなど持っているはずもない。
絶対に開発メーカーが正しいとは言わないが、その推奨に従うのはエンジニアの基本でしょう。
コンサル会社と半導体メーカーが、そのマニュアルに記述していることと、匿名の
掲示板の書き込みと、どちらを信じるのがアホだとあなたが考えるかでしょう。
ちなみにSTARCのデザインマニュアルは通販で入手できるみたい。値段は5000円くらいだったかな。
このとおりにデザインしているエンジニアは、あまりいないとは思うが、まじめに
勉強する気なら入手する価値はあると思う。アホというレスがあるかもしれんがね。
0309774ワット発電中さん
05/01/20 07:29:37ID:3jBnxwqh同期、非同期は特に問題にならないだろうね、リセットに限っては。
当然タイミングを100%管理出来るならリセットに限定する必要もないのだが普通は
面倒だから全部同期設計にしてるわけだが。
0310774ワット発電中さん
05/01/20 13:36:27ID:6Z9fWGdp開始するし、ロード終了して所定の機能動作を開始する頃には、クロック信号も
安定しているだろう。
つまり、電源投入時の過渡状態を考える必要がないので、リセットを
非同期にする必要はない。同期でも非同期でもどっちでもいいと思う。
0311774ワット発電中さん
05/01/20 13:48:42ID:R4YWoSUp> 所定の機能動作を開始する頃には、クロック信号も安定しているだろう。
だろう。
だろう。
だろう。
0312774ワット発電中さん
05/01/20 14:05:46ID:wluTU7nm0313774ワット発電中さん
05/01/20 14:40:26ID:6Z9fWGdphttp://www.semicon.toshiba.co.jp/prd/diode/doc/pdf/bej0036a.pdf
だろう
だろう
だろう
0314774ワット発電中さん
05/01/20 23:27:50ID:IWq3Sij1>掲示板の書き込みと、どちらを信じるのがアホだとあなたが考えるかでしょう
ディジタル回路設計は信じる、信じないの宗教じゃねーんだよ。アフォ。
0315774ワット発電中さん
05/01/20 23:45:00ID:IdSlLT1Y0316774ワット発電中さん
05/01/20 23:47:34ID:MBBKmyimだったら証拠を見せて欲しいもんだね。アフォって言うだけなら誰でもできる。
コンサル会社が信用できないのなら証拠は何? LSIの中で起こっていることのすべてが
デザイナーに分かるとでも言うのか?宗教じゃないよ根拠、証拠を見せなさい。
はっきりしたことは分からないから、推奨にしたがうのは賢い選択であって宗教ではない。
あんたは、いちいち設計のたびに全てのことを検証しているのか、それともLSIの中の
信号の動きが見えるのか?
匿名の書き込に従わない、あるいは信じないのは、宗教ではなくて常識って言うんですよ。
0317774ワット発電中さん
05/01/20 23:54:08ID:AlPFR7Naあのデザインガイドのどの辺がダメなのか興味があります。教えてください。
0318774ワット発電中さん
05/01/20 23:59:11ID:jz84A307取れるだろう?
>LSIの中で起こっていることのすべてが デザイナーに分かるとでも言うのか?
俺の場合がシリコンが囁くね。ここは同期にしてくれって。
石の心がわかる。石伝心ってね。
0319774ワット発電中さん
05/01/21 00:06:47ID:VsFeq5OK0320774ワット発電中さん
05/01/21 00:12:47ID:r4fk+WsI0321774ワット発電中さん
05/01/21 00:13:09ID:j/PPnuhm長いものに巻かれようとしているだけに見えるんだが。
何か違うか?
0322774ワット発電中さん
05/01/21 00:20:46ID:DAGl0QQi0323774ワット発電中さん
05/01/21 00:25:30ID:j/PPnuhm0324774ワット発電中さん
05/01/21 02:20:40ID:R+fn+0iKくなってるみたいだね。
0325774ワット発電中さん
05/01/21 07:46:18ID:r4fk+WsIロジック設計は電気工学と関係ないもん
意図通り動かないときは、静電気が原因ってことにすればいいし
0326774ワット発電中さん
05/01/21 11:33:24ID:H2APxnAC静電気厨しか具体的なレスないけどw
同期設計だからリセットも同期リセットを使う、って程度の理由?
0327774ワット発電中さん
05/01/21 12:39:51ID:r4fk+WsI直接メカニカルスイッチにつながってたりして、リセット信号が
システムクロックとまったく同期していないという環境では、
非同期リセット使った回路だと、うまくリセット処理できないことがあるよ。
キモはリセット信号がデアサートするタイミング。
システムクロックを基準に見て、リセット信号がデアサートするタイミングが
セットタイム/ホールドタイム違反すると誤動作する場合がある。
あるいは、同じIC内のFFにおいて、リセット状態から通常動作状態に復帰する
タイミングが各FFによって1クロックずれたりする。
(完全同期回路ならすべてのFFが同じクロックで復帰しないとまずいよね)
つまり、リセット信号のデアサートするタイミングは
システムクロックと同期してないと非同期リセットを使えないんだよね。
このような場合なら、リセット信号をメタステーブル対策して
各FFの同期リセットにつっこむのもアリかもなと思うよ。
まぁ、いまどきのリセット信号は専用ICが生成していて、デアサートタイミングが
ちゃんとシステムクロックと同期しているから、安心して非同期リセットが
使えるんだけどね。
0328774ワット発電中さん
05/01/21 21:36:05ID:m216fNPLじゃ、あんたの賢い頭でどうやって同期が問題ないとどう考えたの?考えれば分かることか?
初期リセットのような、不確定状態を経たときの挙動なんて、考えた通りになると断言できるかい?
あんたは、今まで自分の考えてきたことが、全て正しかったっていうのかい?
少なくとも自分は実際の挙動を観測しないと断言できないと思っているだけ。だけど、LSI内部の信号なんて
みれないし、そんなこと確かめているより、すなおに推奨に従うほうが賢いっていうのが自分の考え方。
考えないといけない事は、他にたくさんあるからね。
0329774ワット発電中さん
05/01/21 21:52:32ID:ucA4PzwA嘘コケ!
何も考えてないくせに。
0330774ワット発電中さん
05/01/21 22:30:39ID:m216fNPLつまんないレスだな。 少しは 賢さの片鱗とやらを見せてもらえないですかね?
なんだが、語彙も貧弱のようで、あなたの頭のよさが伝わってこないんですけど。
0331774ワット発電中さん
05/01/21 22:45:23ID:xw1OU9SD寛容になってあげたら?
0332774ワット発電中さん
05/01/21 23:02:47ID:j/PPnuhm>みれないし、そんなこと確かめているより、すなおに推奨に従うほうが賢いっていうのが
その理屈だと、人間の目で見れないものはなにひとつ確証無く作ることになるのか。
おまえ、技術者?
0333774ワット発電中さん
05/01/21 23:04:41ID:Yjt01ejr0334774ワット発電中さん
05/01/21 23:10:11ID:m216fNPL人のことを技術者かどうか言う前に。自分の書き込みを少しは読み返してみたら。
技術的なことなんて、ほとんど書いてないんじゃないの。
賢い技術者って言うんだったら、少しは有益な情報を出してくださいよ。
だから、>>331 みたいなことを言われるんですよ。
0335774ワット発電中さん
05/01/21 23:49:56ID:P1cDeE6/0336774ワット発電中さん
05/01/21 23:58:46ID:Yjt01ejr君らに知恵は無いのか?
0337774ワット発電中さん
05/01/22 00:01:51ID:H8NhHaLM0338774ワット発電中さん
05/01/22 00:30:26ID:MTkAFe+l0339774ワット発電中さん
05/01/22 07:33:43ID:73iPkCQm外部入力のリセットラインを内部で同期化・分配させるリセットモジュール作るのは半ば常識だと思っていましたが
そうでない人もいるのでしょうか?
専用IC使わなくても、内部の数百ゲートレベルで対応しちゃえばいいのにと思いますが
0340774ワット発電中さん
05/01/22 08:12:49ID:bG2MdMTX>外部入力のリセットラインを内部で同期化・分配させるリセットモジュール作るのは半ば常識だと思っていましたが
常識と思う根拠は何? 何の情報もなく、そういう回路をつける人は、いないのではないかな?
そういう記述を書籍やマニュアル、アプリケーションノート等で見たことがないんで、
常識というほどありふれた情報なら、情報源を教えてください。
根拠があるわけじゃないけど、
初期リセット時が問題なのは、動作の不確実さと思っているんですが。 リセット時でも、その内部回路だけは
確実な動作をするんでしょうか? 単純に矛盾を感じるんですが。
正直なところ、内部ゲートで対応して確実な初期リセット動作を期待できる回路があるのなら知りたいですね。
0341774ワット発電中さん
05/01/22 08:32:27ID:BYP7TqJW0342774ワット発電中さん
05/01/22 09:02:29ID:bG2MdMTX>309 ですか、2チャンネル風に言えば"逝ってよし"っていうレベルじゃないですか。
あまりに馬鹿馬鹿しくって、自分はレスする価値もないと、スルーしましたが。
面倒を厭わなければ、リセット以外の信号でも非同期で設計できるという主張をしているようですが、
初心者コースから受けなおしなさいって感じですね。
非同期の場合、Setup/Holdタイムや、動作パターンが増えて確実な動作を期待できないなど、
解決不能な問題があるのをご存じないのかな?
単純に考えても、たった6本の信号が非同期で、タイミングが決められない場合でも
2の6乗 = 64通りもある。この程度でもシミュレーションの検証なんかできたもんじゃない。
0343774ワット発電中さん
05/01/22 09:09:16ID:xGihAO900344774ワット発電中さん
05/01/22 09:09:39ID:TPBAZYig単純に同期式のFFを非同期に駆動するとかいう方式は、
タイミングを完璧に管理しないといけなくて、アホらしいわな。
C素子みたいな非同期ラッチを導入して、
タイミングは考えなくてよくするという設計方法もあるぞ。
0345774ワット発電中さん
05/01/22 09:11:54ID:xGihAO90奴は居ないだろうしそんな風に捉えてまで揚げ足を取ろうとする奴が居ること
自体驚きだ。
0346774ワット発電中さん
05/01/22 09:16:54ID:VeKFfALgそうまでして何を主張したいかは解らないがウザイ事だけは確かだ罠。
マジでこのスレはもう駄目だ。
0347774ワット発電中さん
05/01/22 11:18:04ID:EQ9/Cy5f>>外部入力のリセットラインを内部で同期化・分配させるリセットモジュール作るのは半ば常識だと思っていましたが
> 常識と思う根拠は何? 何の情報もなく、そういう回路をつける人は、いないのではないかな?
339じゃないんですけど、外部入力をそのまま非同期のリセットラインにしてしまうと、
ノイズ関係が原因で誤ってリセット有効になっちゃいませんかね。
入力バッファをシュミットトリガタイプにすればである程度回避できるかもしれませんが。
なので外部入力のリセット信号は内部でいったんFFで受けて同期化するのが普通と思っていました。
間違ったところがあれば参考にしたいので御指摘願います。
0348774ワット発電中さん
05/01/22 11:38:07ID:7uFfw8mx>なので外部入力のリセット信号は内部でいったんFFで受けて同期化するのが普通と思っていました。
>間違ったところがあれば参考にしたいので御指摘願います。
間違ってないと思います。
ノイズによる誤動作の防止策として、リセットのアサートが規定クロック以上続いた時だけ
内部でリセットを発生させるようなリセット回路を組むこともあります。当然、
リセット端子にはシュミット付きの入力パッドを使います。
ただ、これをリセット信号を同期化するというのとは意味合いが異なる場合もあります。
リセットのノイズ除去のためのFFは、入力クロックで叩くのでしょうが、
システム全体はPLL出力駆動だったりして、入力クロックとシステムクロックの
位相や周波数が一致しない場合は、相変わらずシステムにとっては非同期リセットに
なります。
0349774ワット発電中さん
05/01/22 11:45:04ID:UEfC1epQFFで受けて同期化したからってノイズの悪影響を逃れらなれないでしょ
またクロック動いてないとリセットできないって困る場面は多いと思う
0350774ワット発電中さん
05/01/22 11:51:22ID:VeKFfALg0351774ワット発電中さん
05/01/22 12:21:48ID:xn4xVkpd0352774ワット発電中さん
05/01/22 12:30:51ID:v5DYiq9Dシフトレジスタはもったいないので、カウンタ使ってる俺。
FF1個ごとにフィルタリング能力が、倍々になっていくのが貧乏根性を
刺激する。
0353774ワット発電中さん
05/01/22 12:35:18ID:7uFfw8mx>外部バスにノイズが乗らないようにするのが普通ですよ
>またクロック動いてないとリセットできないって困る場面は多いと思う
そんな分かりきったことを言われても。。。
ボード上でノイズ対策は当然するとしても、
世の中にはノイズがのるのを避けられない、
ノイズがのることを想定して設計しなきゃいけない
システムがあるってことを知ってくださいね。
0354774ワット発電中さん
05/01/22 12:50:46ID:v5DYiq9D基本的に外部リセットって、複数のデバイスからリセットが出力されることを
想定して、オープンドレイン(コレクタ)にしてプルアップでハイレベルを保って
ることが多いから、ノイズが乗りやすいんだよね。
だからASICの入り口で何らかフィルタ回路を挿入するのは、ごくごく一般的な
話かと思っておりました。
でも、このスレ見る限りそうでもないみたいですね。
0355774ワット発電中さん
05/01/22 12:52:46ID:VeKFfALgパターンに乗るなんてシチュエーションを体験したことがない。
0356774ワット発電中さん
05/01/22 12:55:21ID:v5DYiq9Dそれはすばらしいですね。
0357774ワット発電中さん
05/01/22 13:11:26ID:UEfC1epQそうそうノイズ乗らないよ。
それでもノイズが載る環境ならボード間配線に光ファイバ使いなされ。
デジタル回路なのにロジック設計でノイズ対策するって
SECDEDとかの符号処理訂正で対策するってならわかるけど
ここのスレの話はレベル低すぎるよ。
0358774ワット発電中さん
05/01/22 13:20:33ID:VeKFfALg0359774ワット発電中さん
05/01/22 13:29:56ID:7uFfw8mxいつも理想の対策打てるわけじゃないでしょう。
ノイズ対策は、その石のアプリケーションが人命に関わるものなのか
玩具なのかで対策の程度も違うし、費用対効果も考慮して決めなきゃいけない。
脳内理論振り回されても実設計には全く無意味。
0360774ワット発電中さん
05/01/22 13:44:13ID:zy6A4Uah0361774ワット発電中さん
05/01/22 13:47:23ID:uGJnbN1Uロジック回路の入力に商用100Vをつないだ
おたんこなすは!!!
0362774ワット発電中さん
05/01/22 14:00:38ID:v5DYiq9D住んでる世界が違いすぎて。
共通の認識としては、
>レベル低すぎるよ
という一点だと思います。
スレの流れを少しでも正常化(HDLのスレだよね)するために、お互いこの件に
関しては以後スルーしてはどうでしょう。
0363774ワット発電中さん
05/01/22 14:31:24ID:73iPkCQmパチンコ・パチスロは対策しても出来ない部分もあるので、ノイズがパターンに載ります。
ケースが透明プラでシールド機能は一切使えない。基板の直近に金属レールに乗っかったパチンコ玉やメダルが
静電気を巻き散らかしながら何千個・何万個と流れる。
基板のグランドとつながるべき大地アースはまったく期待できない。
フィルターで予測できる周波数を超えている場合が多い。(電波暗室で実験しているのは50,144,430,1200の4バンドで
しかもFMのみ。800,900,1500もないです。KWクラスを照射しますが、実際の現場でエラーが発生することもままありました。)
ボード間通信は光にできません。(規則による)
リセットは非同期で受付ますが内部のシーケンサ通して同期化します。P業界ではこれが標準のようです。
0364774ワット発電中さん
05/01/22 14:33:41ID:73iPkCQmあ、IDがCQだw
えーと、ついでにいうと、金がかかっているので、ノイズが載って不具合になると別の意味で「人命にかかわる」
事態になってしまいます。(以前、動作がおかしくなって入賞がちゃらにされたといって刃傷沙汰になったことがある)
0365774ワット発電中さん
05/01/22 16:14:04ID:mLe10f7S状況によって最適解は異なるわな。
今までの所ソフトが対策すると言うのはないようだな(w
0366パチンカー
05/01/22 19:24:54ID:BskEHsd7お願いだ。
0367774ワット発電中さん
05/01/22 19:39:07ID:VeKFfALg通信に双方向が許されてないとかってのもあった気がするな。
バッファは244かその相当品に限るとか。
画像ボードの方を担当したことあるがI/F関係は如何にも数時代前
って感じで驚いた事がある。
0368774ワット発電中さん
05/01/22 21:41:23ID:73iPkCQmそういえば、昔チャタリング除去で暴れていたやつがいた気がするな。ソフトがどうとかって。
>>366
メインのコントロールはZ80相当品なので、管轄外w
ハード屋はリール制御とか画面表示しかやれない。
回路図とかアップしたら首がとぶので勘弁してよ。
>>367
通信は、主基板(メイン抽選基板)に入っていいのはパチンコなら入賞口のセンサー情報だけ。スロットはスタート・ストップのスイッチと
コイン数くらい。あとはすべて出力のみ(リールとか表示基板とか)
世間で言う遠隔操作なんて、ハードを改造しなければ出来ませんが。とパチ板で書いても信じてもらえません。
あそこの人は出力ポートに信号を入れると中のプログラム(パラメータ)が書き換わったりすると信じているみたいです。
おそらく、静電気に一番気を使うアプリケーションの一つでしょうね。(これ以上は静電気スレ行きかも)
0369774ワット発電中さん
05/01/23 19:00:48ID:eec5mSOk賞金懸けたテレビゲームに熱中する方々ですから
0370774ワット発電中さん
05/01/24 13:00:56ID:lYByVxPIその上がりをブタ正日に貢いでいることを認識しろ。
そして恥じろ。そして、少なくともお前の給料の何%かは俺の金であることを自覚しろ!
少しでも罪の意識があるならパチンコの攻略法をここに開示しろ!
0371774ワット発電中さん
05/01/24 20:30:36ID:GsJPExOs0372774ワット発電中さん
05/01/24 20:49:52ID:QbYUXNYOあほー
0373774ワット発電中さん
05/01/24 22:26:02ID:dtXO/bZAうちの会社は純国産メンバーだけなのと、朝鮮系のメーカーとはご縁がありませんので
直接の売り上げが総連経由で北の偉大なる首領様にみつがれることはありません。
んで、悪いんですが、ハードがメインなので攻略法は知りません。エロ本出版社の白夜かコアマガの出してる
攻略本を買ってください。まあ、あれも噴飯物らしいですが
というか、あんなもんに金つぎ込むなんてあなた、頭悪すぎw。そんなもんに金出すならコンフィグROMの
一つでも買って(ry
0374774ワット発電中さん
05/01/25 19:46:53ID:PkIZd8MC「お客様」になんて言い草。
0375774ワット発電中さん
05/01/25 20:13:48ID:j1WqNj4xカモが「お客」なのは「パチンコ屋・スロ屋」だけで、メーカーにとって「客」はパチ屋だけだろ?
パチンコ自身を買うなら客なんだろうけど
0376774ワット発電中さん
05/01/25 20:24:38ID:URDp6dVB0377774ワット発電中さん
05/01/25 21:12:16ID:ROIA7RQjお客の評価はカモ次第だから無縁じゃないわな、やっぱw
0378774ワット発電中さん
05/01/25 21:42:00ID:72noctOx家電だって何だって直接の客は量販店だよ。
0379774ワット発電中さん
05/01/26 12:26:57ID:QNWyuygwしかもそれをメーカーが管理して本物の裏ROMがほぼ存在しない現実。
ま、あんな所に行って金を捨てる奴は馬鹿だって事だ。
0380パチンカ
05/01/26 15:04:58ID:HzstuGehヲイヲイ
そんな仕事したことおまへんがな。
0381774ワット発電中さん
05/01/27 09:37:01ID:vItWf6JGパチ業界でFPGAもCPLDも使えなくなったんで(某寺代理店曰く)、ここのスレは無関係になってるんと違う?
0382774ワット発電中さん
05/01/27 09:59:08ID:wpQLk6RZ0383774ワット発電中さん
05/01/27 11:28:11ID:vItWf6JG去年の7月の法律改正でサイクロン2 200万個の商談がダメになったと漏らしていた。
新規格のモノは一律禁止なんだってさ。画像基板用のやつだったらしい。
0384774ワット発電中さん
05/01/27 19:02:53ID:EnoVMFaC0385俺様 ◆f0ugTrYQRI
05/01/27 19:31:41ID:WFt/vJAs0386774ワット発電中さん
05/01/27 22:45:10ID:Z2P7b3ph昔のPC板から出てくるな!
0387774ワット発電中さん
05/01/27 23:36:46ID:RX+iPf8tttp://www.opencores.org
あたり漁ればいけばあるんじゃない。
0388774ワット発電中さん
05/01/28 19:36:36ID:V4darPSJ> 誰か100円電卓と同機能のVHDL書いてくらはい!
で、書いたら実物を作ってもらえるとか?
だったら考える。MAX IIの一番でかい奴で頼むわ。
0389774ワット発電中さん
05/01/29 02:40:13ID:0eU2ngC3のISAインターフェースのところでIOWのエッジを検出するのに
IOW_F = (IOW2==1'b1 & IOW1==1'b0 & IOW_N==1'b1)? 1'b1 : 1'b0;
ってなってるけど、これだとIOWにグリッジがクロックエッジの前後に載ったら、
誤動作しません? IOW1==1'b1のほうがいいんじゃ? 駄目?
0390774ワット発電中さん
05/01/29 16:38:39ID:ah1DNg1F駄目。
0391774ワット発電中さん
05/01/30 17:11:03ID:tcfQm3YRIOWRにグリッジが乗った時点で、ISAの仕様(最小パルス幅等)を満たしていない
と思うが?
ISAバスの場合、SYSCLK周波数は、M/Bによってまちまちだし、IOWR等の制御信号
とクロックとの位相関係は規定されていないので、クロックでサンプリングする
というのは、ISAバスの設計としてダメダメだと思う。
どうしても、クロックが必要なら、14.31818MHzの方を使うのが定石。但し、信号
との位相差は規定できないのはSYSCLKと同様。
0392774ワット発電中さん
05/01/30 23:15:47ID:2VCaMn240393774ワット発電中さん
05/01/31 02:53:16ID:3EuqTI+7STARCのガイドにはそんなこと書いてあったなあ。あの本はHD○ボの○谷川氏の思い込み
だからうのみにしちゃだめ。
0394774ワット発電中さん
05/01/31 07:37:53ID:IqnYELC6どう合成するんだろうな?
0395774ワット発電中さん
05/01/31 11:07:32ID:VuTdOulL0396774ワット発電中さん
05/01/31 19:06:37ID:No/30jG6don't careをちゃんと理解してれば無問題
0397774ワット発電中さん
05/01/31 21:31:21ID:MnhTrFk+記述していて使う必要がなければ使わなければいいだけだろ
論理圧縮という言葉を知っているのか?理解しているのか?
0398774ワット発電中さん
05/01/31 22:58:21ID:UJAMHcO2僕の意見を書くと、個人的には、casexは全体を把握しやすいと
思うので、いろんな条件をassignで書くより
記述ミスを見つけやすいと思っているんですけどね。
最近は回路規模より可読性重視記述になっています。<自分
そうするとどうしてもcasexを使いたくなるんですが、可読性って
観点で見た時、casexとcase、assignやifでどれがいいと思います?
一行レベルならassign xx = dfdsaf ? fasdf : fdasf ;
2、3の条件ならif
それ以上はcasexって感じかなぁと思っています。
0399774ワット発電中さん
05/01/31 23:30:28ID:v+oceb8s単に合成がタコなだけでしょ?
ま、現実にタコが多いかどうかは別として。
0400774ワット発電中さん
05/02/01 15:29:41ID:t1gfk7GFcasex で複雑な条件文を書くというのがピンと来んです
こんな感じ?
casex(1)
(a & b & (c==123) & d) : 処理A;
(e | f) : 処理B;
:
:
これじゃ case 文でいいよなぁ
じゃあこうかな?
casex( {a,b,(c==123),d,e,f} )
6'b1111xx : 処理A;
6'bxxxxx1 ,
6'bxxxx1x : 処理B;
:
:
もし上記のいずれかなら自分は if else だな
if (a && b && (c==123) && d)
処理A ;
else if (e || f)
処理B ;
else if (...
:
:
以上俺トンチンカンな事言ってたらスマンです
0401774ワット発電中さん
05/02/01 16:44:22ID:bFxl4Nj+マジであの記述をまともに合成出来ると思っているならお前は相当の馬鹿だよ。
0402774ワット発電中さん
05/02/01 18:17:33ID:t1gfk7GFcasex がまともに合成できないツールなんて
バージョンアップ直後でバグが枯れてないリビジョンのDesignCompilerくらいしか
経験がありませんが
399のどこが相当な馬鹿なのか説明して頂けますかね
0403774ワット発電中さん
05/02/01 18:43:10ID:dVmq6MN4「あの記述」ってどの記述だ?
0404402
05/02/01 19:32:37ID:t1gfk7GFttp://support.xilinx.co.jp/xlnx/xil_ans_display.jsp?BV_UseBVCookie=yes&getPagePath=16808&iLanguageID=2
合成ツールがこれ一択という様な環境で作業してたら
「casex はRTLで記述しちゃダメ」ってのがまるで常識の様に思えて来るのかもな
そういう事ですか? >>401
0405774ワット発電中さん
05/02/02 00:07:13ID:W96QUaCu人間が一寸考えて回路にするのは面倒そうだなと思う記述ってなるべくしない方が
合成も軽くなる気がするんだが。
0406774ワット発電中さん
05/02/02 01:18:18ID:2Ut00k8hプライオリティつきエンコーダとか
0407774ワット発電中さん
05/02/02 01:24:05ID:W96QUaCu0408774ワット発電中さん
05/02/02 01:47:39ID:gGDFq+tj単に入力側のdon't caseを書けるようにしただけじゃないの?
caseだと全部書くところを圧縮したものだと思ったんだけど。
入力が本当にzかどうか判断しろといわれたら、
マッピングするテクノロジによっては困るわな。
0409774ワット発電中さん
05/02/02 01:50:38ID:2Ut00k8hいや、不定やzのビットは比較をしないdon't care扱いになる。
casex文なら
3'b1xx: 処理;
と書くと、合成ツールはMSBが1だったら他のビットは
どの値になっても構わないと解釈するので、
MSBにプライオリティのついたエンコーダが生成される。
少なくともDesignCompilerはそうだった(はず)。
casex文を使うと真理値表っぽく見えるので
使い方によっては可読性が良くなる場合もある。
0410774ワット発電中さん
05/02/02 01:53:22ID:W96QUaCuでは具体的な回路を教えて下さい。
0411774ワット発電中さん
05/02/02 01:58:42ID:2Ut00k8hぐぐったらこんなところを見つけてみました。
http://www.kt.rim.or.jp/~nagai/opendoc/first_verilog_8-10.html
ここの「□casez文、casex文」に出てくる例文は合成可能ですよ。
リンク先は「ビヘイビアでしか書けない。」と書いてありますが…
0412774ワット発電中さん
05/02/02 02:15:06ID:W96QUaCu設計図を使った設計でもでは割とあるし。(例えばさっき出たプライオリティーエンコーダとか)
しかしだ、zを条件に含むとどうしようもないよ。信号がzかどうかは例えばトランスミッションゲート、バッファの
コントロール端子の論理を見ることになるわけでそうまでしてcasexを使う意味を考えてしまう。
0413774ワット発電中さん
05/02/02 02:19:16ID:W96QUaCuお手上げじゃないかと。
トランスミッションゲートやバッファのコントロール端子の論理をもって信号をzと判断するのは
ありと言えばありだがそこまでやる意味があるんだろうか?
0414774ワット発電中さん
05/02/02 05:24:02ID:DN2yAtnL0415774ワット発電中さん
05/02/02 07:09:37ID:2Ut00k8h> てか、不定(zを含まない)はあり得る条件だからどうなるかは予想出来るし回路もだいたい解るよ。
> 設計図を使った設計でもでは割とあるし。(例えばさっき出たプライオリティーエンコーダとか)
あう、矛盾してないですか? >>405-407のときはcasex文を使って合成された回路が想像できない
とおっしゃってたのでプライオリティエンコーダと答えたつもりなのですが、
予想できると言われると立場がないです…
で、繰り返しますけどcasex文ではxもzも同じdon't care扱いになるんです。
0416774ワット発電中さん
05/02/02 15:12:31ID:GiwAyeAi0417774ワット発電中さん
05/02/02 15:38:05ID:W96QUaCudcを残したままだと合成が重くなるのは割と最近まで常識だったし
今でも合成回路の規模、速度に影響するから使わない方が良い。
0418774ワット発電中さん
05/02/02 15:53:45ID:AhxK4eGBチューニングとは無縁の合成しっぱなしがokな設計で済んでる環境ならそれでも
良いのかも知れないが。
なんかもの凄いギャップに驚いた。
0419774ワット発電中さん
05/02/02 17:03:40ID:xIPziGYgうーん、そんな事は無いと思うなぁ
俺は Don't care を条件式に書くのは
casex でのエンコーダ系やアドレスデコーダ限定だけど
その場合にはコードの可読性および保守の容易性も上がるし
合成結果の回路が悪くなったという経験も今まで無いよ
念のため手元の合成ツールのマニュアル見直したけど
「casex をこのように使用すると他で記述するより簡潔なRTLになる」
というような事しか書いてなかったよ
0420419
05/02/02 17:08:42ID:xIPziGYg0421774ワット発電中さん
05/02/02 18:17:46ID:AhxK4eGBの合成に及ぼす影響がつい最近記事なっていたのをみて、未だ状況は
変わってないんだなと思ったのだが。
0422774ワット発電中さん
05/02/02 19:55:36ID:xIPziGYg0423774ワット発電中さん
05/02/02 20:52:51ID:AhxK4eGB確か一二月号だったと思うが。
色々と興味深いことが載っていたと記憶してる。
0424774ワット発電中さん
05/02/02 23:26:37ID:xC6GoMdGそれはdon't careの使い方がタコだったからでしょ。
常識的な使い方をしてれば無問題。
可読性の良いRTLになるし、
期待どおりに論理圧縮される。
0425774ワット発電中さん
05/02/03 00:02:01ID:AhxK4eGB本当に設計したことあるのか?
0426774ワット発電中さん
05/02/03 01:26:29ID:3rLmDFC6納期優先 FPGA なら、さくっと使ってさっさと終わらせるだけの話。
状況に併せて使い分けるのがVerilog使いのプロでしょ。
制約条件厳しい設計できても、そういう手の抜き処が分からないってのは、
その環境では設計のプロかもしれんが、Verilog使いとしては半人前。
0427774ワット発電中さん
05/02/03 01:28:00ID:Nn7FeDzh『1000エレメント程度であれば小規模な回路の部類に入ります。
すぐにできますよ。』
と言われた。
いかに自分がちっぽけで未熟者であるかということがわかりました。
やはり大手のメーカーさんは住んでいる次元が違うんですね(´・ω・`)
0428774ワット発電中さん
05/02/03 04:48:19ID:gPaOO2fp1エレメントってどういう単位?
0429774ワット発電中さん
05/02/03 07:58:08ID:DD9ZkZHa0430774ワット発電中さん
05/02/03 12:24:32ID:ooaphGaY1000LEだと内容によるけど1週間くらいでシミュレーション検証までかなぁ〜
遅い?
0431774ワット発電中さん
05/02/03 12:55:34ID:JnlefYw4うーん、失礼ながら don't care の性質を判ってないと思うよ
don't care は曖昧に回路を表現するための手段ではないし
同じ論理に対して don't care を用いた記述か そうでない記述かによって
合成結果に無視できない差が出るような合成ツールは不出来だと思う
0432774ワット発電中さん
05/02/03 12:59:14ID:vqHnOfTX確かに小規模の部類かなと思いつつHDLを使うと記述によってどうとでもなる事でもある。
演算回路を書いたりするとあっという間だし。(w
0433774ワット発電中さん
05/02/03 13:01:29ID:vqHnOfTXだったら寺の論理合成ツールはタコなんだね。
貧乏な会社にはそれしか選択肢がないから困ったもんだ。
0434774ワット発電中さん
05/02/03 13:20:52ID:A5WyMfvF禿同。
それから、往々にしてツールが悪いのではなく、記述がタコな場合の方が多い。
don't careの使い方が悪くて、合成ツールが迷うような曖昧な表現になっているのだろう。
0435774ワット発電中さん
05/02/03 13:39:57ID:vqHnOfTXcaseを使ったdon't careを含む(所謂ファンクションテーブルが穴だらけ)記述と
同じcaseを使った記述でも配列を使ったROM的決め撃ち記述では今でも確かに
回路規模と速度は変わる。
ゲート遅延が2nSとか、回路の段数が一段とかその程度の変化だが。
現実世界でこれを気にしないと行けないような局面は少ないが知ってると偶に
助かることがある。
だからと言っていつもいつもフルデコードで書く必要もないわけで臨機応変と
言ったところか。
漏れ個人はフルデコードで書くことが多いからdon't careを残す記述は何となく
気持ち悪いなと思いつつ面倒だから気にしないようにしてる感じか。
0436774ワット発電中さん
05/02/03 14:15:40ID:UbofXE+e動作クロックによっては2nsの遅延は無視できないレベルですね。
参考にしたいので、できればそのcase文の記述をさらせませんか?
せめてcase文のビット幅だけでも・・・
遅延は使用したセルライブラリのスペックに依存するかもしれませんが。
0437774ワット発電中さん
05/02/03 14:27:54ID:vqHnOfTX仕事の案件だから晒せないが同じ例が、DWMの2004/12のP58に載ってるよ。
この記事を見て似たようなことをしてる人が世には居るんだなと驚いた。
尤も例はVHDLだし漏れもVHDL使いだからVerilogメインの話の流れだと
完全に当てはまる例では無いかもしれないが。
0438774ワット発電中さん
05/02/03 16:16:02ID:JnlefYw4こういう事象の把握は大切だよね
比較実験を行ってベストな選択をしながら作っていくという場面は
自分の場合も実務上少なくないです
注意しなければいけないのは、
この記事だけで「これが最近の一般的な傾向」と判断するのは危険だという事
これはある一種類の合成ツール&ターゲットにおいての結果だから
他の場合の結果も併せてみないと一般的な傾向は判断できないものね
というより「一般的な傾向」というものが仮にあってもそれだけに頼っては危険で
結局はその都度自身で試行しベストな方法を選択する事が必要だね
(もちろん制約条件が楽な場合などは一般傾向を頼りにサクっと書きゃいい)
あれ長文になった、ごめん
0439774ワット発電中さん
05/02/03 17:14:13ID:gPaOO2fp0440774ワット発電中さん
05/02/03 21:40:40ID:N8lsZmuBverilogでFPGAやってます。
-( R . I ) * ( R . I ) ←R.Iはひとつの変数です
Rは整数部4bitでMSBは符号
I は小数部4bit
こういう計算のとき、
-1 * ( R . I ) * ( R . I )
になりますよね。このときの-1は、単純に8'hffでよいのでしょうか。。
0441774ワット発電中さん
05/02/03 22:08:18ID:rzTMU+Imそれなら、2の補数なのか、符号付き絶対値なのかで違う。
前者なら、1111.1111 は -0.0001 の意味、後者は -111.1111 の意味で、
どちらも-1ではないな。
-1.000 は、前者なら 1111.0000、後者なら 1001.000
0442774ワット発電中さん
05/02/03 22:33:52ID:N8lsZmuBありがとうございます。
レスいただいて20分ぐらい考え込んでたんですけど、
仕様書の周囲の数字の扱い方から符号付絶対値っぽいです。
(今回は何にも考えないでコーディングしちゃってるんで…)
確認取って修正します。ありがとうございました。
今日の帰り際
Q = (-1) * ( hoge1) * ( hoge2 )
って書いてコミットしてきちゃったんですけど、
もしそのままコンパイルしたらどういう扱いになるんですかね。
コンパイラによるのかな
0443774ワット発電中さん
05/02/03 22:52:20ID:rzTMU+Imそれって、整数扱いになって、aaaa.bbbb * cccc.dddd
Q は eeeeeeee.ffffffff みたいになるけど、
ほっといて下位8ビットとってきたりしないようにね。
しかも、ほんとうに符号付き絶対値なら、
場合分けしないで、そのまま掛けたりしたら、わけわからなくなるぞ。
ちゃんとテストも作れるような仕様書なんだろうな。
0444774ワット発電中さん
05/02/03 22:54:15ID:RhcRdIxOこれって記述読みこむ時にワイルドカードは使えない?
aaa_v01.vhd を読むときに aaa_v*.vhdな指定をしたいんですが・・・
後、RTL記述読むときのcompilerって内部ゲートの入力openって
チェックしてくれないのかな?
勝手に'0'固定されてるみたいなんですが・・・
0445774ワット発電中さん
05/02/03 23:18:50ID:N8lsZmuBありがとうございます。
はい。乗算後のクリップと捨ては小数点位置気をつけてます。
>ほんとうに符号付き絶対値なら、
仕様書いたヒトを問いつめてきます。。
すみません、
>文字どおり hoge1 * hoge2 って書いてるの?
書いちゃってます。
皆さんどう書かれてるんですか、、、、
−1は置いておくとして、今回は小数点位置が同じなので
Q <= hoge1 * hoge2;
(8.8) (4.4) (4.4) ←これは小数点位置
で、
P = {Q[15] , Q[10:4]};
↑符号桁
と、書いてます。(14-11bitの判定もしてますが)
あぁぁああ、この質問ってverilog云々じゃないんですよね、ディジタル回路の基本編なんだろな
探す本を間違え…orz
0446774ワット発電中さん
05/02/03 23:44:40ID:rzTMU+Imともかく、表現方法の仕様を完璧に洗い直さないとな。
符号付き絶対値だと、正+負とか正-正のときは、
絶対値部分の大小比較をしないといけないとか、心配のタネがつきんぞ。
0447774ワット発電中さん
05/02/03 23:50:54ID:N8lsZmuBガクブルなので洗い直してきます。
(ていうかマジで((((;゚Д゚)))ガクガクブルブル)
ありがと。
0448774ワット発電中さん
05/02/04 10:13:47ID:3Zzi++Txdcモードは忘れたけどtclモードなら
set hoge [ls *.v]
read_verilog $hoge
入力openって、そのゲートに入れる信号をどこにもつないでいないということかな。
それならdon't careになるので処理はDC任せになってしまう。
0449774ワット発電中さん
05/02/04 12:13:41ID:nbBC7cDYちゃんと記述しないと。
出力openならともかく。
0450774ワット発電中さん
05/02/04 12:45:18ID:YFwEnrk0論理合成に何か関係あるのか?
0451774ワット発電中さん
05/02/04 14:05:59ID:auxvR0GW内部バスがHi-Zになるくらいしか思い付かんな。
シミュレーション時にでも問題になるんじゃね?
合成時にひっかかるようなとこにOpenがあるのは論外だろうと。
0452774ワット発電中さん
05/02/04 23:06:53ID:PcPFHaSldc_shell-tなら448の通りだな。lsよりglobの方がTclっぽいけど。read_file -format vhd [glob *.vhd]
というか、こんなディレクトリ内容に依存したものではなくて、
普通は読み込みファイルリストなるものを作るのが常套だろう。
あと、勝手にゼロ固定したというメッセージがでてるじゃないか。
というかファイルを読み込んだ後check_design コマンド叩いていないのか。
0453774ワット発電中さん
05/02/04 23:24:49ID:EzkZATa/デザインの質も知れてるな。
0454774ワット発電中さん
05/02/04 23:47:23ID:Qv08nITwActive-HDL3.1を使ってますが、シミュレーションをしていると、いきなり
”Unknown automation functiion called"と出てきて、シミュレーションできなくなりました。
シミュレーション出来るようにしたいのですが、どうすればいいのでしょうか。
おねがいします。
0455入門者
05/02/05 13:45:04ID:ESrO+/1+思うんだけど、みんなは使ってないの?
0456774ワット発電中さん
05/02/05 15:35:41ID:CssLIlquq2になってからはmodelsim-ae(だっけ?)がほとんどです。
0457774ワット発電中さん
05/02/05 16:39:07ID:K0pZVCU40458774ワット発電中さん
05/02/06 13:01:25ID:b8jbvJhK0459774ワット発電中さん
05/02/06 15:22:14ID:dOqzDSZP0460774ワット発電中さん
05/02/07 07:39:55ID:+t9CCEYD代理店聞け
0461774ワット発電中さん
05/02/09 22:03:56ID:Yx6deWLEすまんが、それをDCでやる方法知ってたら教えてくれ。
できれば、
verilog -f temp.vc
ってやるときの、temp.vcをdcで読みこませれたら
一番いいんだが、いい方法ある?
0462774ワット発電中さん
05/02/10 23:29:11ID:CqylcKJ5これなぁ、、。
dc_shell(NOT dc_shell-t)で簡単にできないところが弱いところなんだよなぁ。
ファイル(ファイルリスト=temp.vc)をオープンする手段がない。
Tclモードなら、set f [open temp.vc]; foreach v [split [read $f] \n] {read_verilog $v};close $f
と強引に一行だが。。
昨今のEDAツールはファイルリストくらい簡単に読めるようにはなってるんだけどね。
シノプシスは、「できるだけTclモードへ移行してくれ」というだけだし。
0463SDRAMコントローラ作成中
05/02/11 15:24:08ID:GLrczidgXilinx のSDRAMコントローラIPの改造記事があったんですが、、、、
オートリフレッシュがコマンドとバッティングしたときにFIFOで解決するとなってました。
8段のFIFOにコマンドとデータを格納しておき、バッティングした時の待ちクロックによってセレクタ動作させると・・・
でも、こんなんでいーんでしょうか?
例えば、ホスト側がずーっとメモリにしっぱなしだとFIFOが溢れるように思うんですけど?
ホスト側をバスWAIT端子でバスアクセスを中断させない限り解決できないような気がするんです。
プロフェショナルな皆様何卒教えてください。
因み、コントローラ自身は外部ホストからのリクエストでメモリにアクセスして、
そのリクエストがいつあるかわからない場合を想定してます。
0464774ワット発電中さん
05/02/11 15:30:22ID:GLrczidg訂正1:例えば、ホスト側がずーっとメモリにアクセスしっぱなしだとFIFOが溢れるように思うんですけど?
訂正2: 因みに、コントローラ自身は外部ホストからのリクエストでメモリにアクセスして
0465774ワット発電中さん
05/02/11 23:52:11ID:VxQeqSfB0466774ワット発電中さん
05/02/12 00:09:11ID:LI1JaXD0わからんもんなぁ。おまえのおつむじゃ
0467774ワット発電中さん
05/02/12 13:15:51ID:5Wdh3uMTこのオツムにこの発言かよ。イタイ、痛すぎるよおまえ。
0468774ワット発電中さん
05/02/12 13:47:03ID:HeLBZWq7プッ゚ アフォ晒して嬉しいか?高卒
0469俺様 ◆f0ugTrYQRI
05/02/12 15:19:54ID:Kzl/Mfv80470774ワット発電中さん
05/02/12 23:23:23ID:yQha/6jBのFFT回路って作れるんでしょうか?悩んでも一万ゲートで合成できそう
な回路がうかばんです。。。ちなみに回路設計経験2回目くらいです。
教授は”できないわけないじゃないウフフン”とうれしそうに笑ってました。
でも教授の言うことは5割くらいの確率で間違ってるのであんまり
信用できません。本当にできるのかどうか、できるのであればどんな風な
回路にしたら実現できるのか、ご教授いただけませんでしょうか。お願いします。。。
0471774ワット発電中さん
05/02/12 23:59:12ID:3iXD/aHF最初に考えなければいけないことは、三角関数の値の作り方と演算方法ですね
32ポイントだと三角関数は内部で計算せずに定数として使えばよいでしょう
バタフライ演算の入れ替えはソフトでごちゃごちゃ入れ替えるより回路で一発で入れ替えるほうが簡単です
最後に実効値演算で実数部と虚数部の自乗和の平方根が必要になるから、平方根を作る回路を考える
簡単な回路ということであれば、平方根は奇数を順に引き算すれば求められるからできない事も無いかな
回路構成を考える前に演算手順を明確にして相談したほうが良いと思いますよ
0472774ワット発電中さん
05/02/13 00:18:58ID:Ft+9vbSB風にしてバタフライ演算を順々にsubtypeを使ってcのプログラムの様にやっていく
風に考えてみたんですが、どうも一万ゲートに収まりそうにないです。。。
行にして1000行くらいになるし。16個の三角関数を掛けるところを一つの
モジュールにして掛け算回路を共有しても3百行くらいになります。
そもそも根本的に間違ってるのでしょうか?長い回路くむのは
初めてで参考にした設計例もFIRの極単純な物しか見たことないです。
FFTをした後には係数を少し触ってIFFTするだけです。
0473774ワット発電中さん
05/02/13 00:23:21ID:7zrLLhEp0474774ワット発電中さん
05/02/13 00:28:44ID:c/iJ8Qzs処理時間の制約はないようだから、せっせとループを廻して同じ回路を何回も使うように考えよう
16個くらいだとDFTを16階やっても同程度の処理になりそうな気もする
0475774ワット発電中さん
05/02/13 00:43:31ID:Ft+9vbSB複雑になると意味わかんないです。初心者はもっと簡単な回路から
はじめるべきでしょうか。でも教授にまた馬鹿にされそうだ。。
0476774ワット発電中さん
05/02/13 00:50:13ID:c/iJ8Qzs0477774ワット発電中さん
05/02/13 05:18:20ID:sfTzSvkGgalaxy使ってるんですが、プロジェクト立ててコンパイルしたらエラーで
PTMがどうのこうと言ってるんですけどPTMって何ですか?
0478774ワット発電中さん
05/02/13 08:03:30ID:/b0uKPsSアル中・低脳・学歴コンプレックスはさっさと死ね。ぼけ。
0479774ワット発電中さん
05/02/13 21:32:07ID:zaq02Jpuバス出力(例:out[3..0])の1bit毎に
別々にoutputピンを割り当てる方法が分かりません。
(上記例だとoutputピン4本)
0480774ワット発電中さん
05/02/14 00:38:50ID:QJ7Ezpy7高卒暴露されてよっぽど悔しいんだね。ヨチヨチ
0481774ワット発電中さん
05/02/14 00:45:19ID:5dysH6OA中卒は生きてる意味ねぇんだよ。かぁちゃんのおっぱいでもしゃぶってろ。この童貞坊やが。
0482774ワット発電中さん
05/02/14 00:55:24ID:rYHyqA8oよう!
久しぶりだな。
下げ方覚えたのかい?
0483774ワット発電中さん
05/02/14 01:19:10ID:6BHivdq7これはMax+PlusII?QuartusIIどっちの話?
エディタでファイル直編集は感心しないなぁ。
0484774ワット発電中さん
05/02/14 18:51:28ID:jGjeVPSPその前に演算にかける時間条件を示せ。
高速でリアルタイム演算が必要か1秒かかってもいいのかによって回答は大きく変わる。
時間制限が無いのなら、CPUをFPGAにぶち込んで、ソフト演算って手もあるわけだ。
0485484
05/02/14 19:00:21ID:jGjeVPSP0486774ワット発電中さん
05/02/14 20:13:35ID:ie7JUwAI0487484
05/02/14 21:38:32ID:/KsS2x+xまぁ〜そうなんだけど、俺の頭でCPU自作する自信無かったもんで・・・
LEと勘違いしたんだよー。 NIOS余裕で突っ込めるなと。
0488774ワット発電中さん
05/02/14 23:09:50ID:nIZIhiXPQuartus2です。すみません。
入社して早々、仕事の引継ぎでQuartus2使うことになりまして。
体得すると同時に、履歴を残して後々の教育に生かしたいです。
0489774ワット発電中さん
05/02/19 12:47:53ID:Xbzgsqkzprocedureの呼び出し時に、引数に"00" & hoge( 5 downto 0 )と指定したらエラーではじかれました。
ためしにhoge( 7 downto 0 )としてみると問題ないようです。
エラーメッセージはなにやら型が一致しないと言っているようですが、どちらもstd_logic_vector型で、
procedure宣言でもstd_logic_vectorとしているので不一致となるとは思えないのですが。
ちなみにこのprocedureはレジスタの読み書きをマクロ風にしてみようとして、ビットが歯抜けになって
いるレジスタを表現してみようとしたら上記のエラーになった次第です。
とりあえず全レジスタを歯抜けなしにして解決はしたのですが、どうも釈然としないので・・・
0490774ワット発電中さん
05/02/19 12:55:12ID:PajfRhvw0491774ワット発電中さん
05/02/19 13:11:56ID:w9pazgcNsageるのが正しいと思ってる勘違い馬鹿が増殖してるな。
スレタイに即した内容なら、ageで書いて問題なしだから気にするな489
俺はVHDL知らないから質問には答えられないがなー。
0492774ワット発電中さん
05/02/19 13:56:13ID:OnsHRRLa0493774ワット発電中さん
05/02/19 14:42:58ID:X3nOqKqJ俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
0494774ワット発電中さん
05/02/19 15:07:35ID:HTkMVX2l俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
0495774ワット発電中さん
05/02/19 16:02:42ID:S7iIOrd20496774ワット発電中さん
05/02/19 19:47:07ID:YQci5Uhz0497774ワット発電中さん
05/02/19 20:37:28ID:m6nitJOh多くなったよな。
0498774ワット発電中さん
05/02/19 20:45:59ID:PajfRhvw0499774ワット発電中さん
05/02/19 20:51:29ID:X3nOqKqJ「=」が2個なのにワラタ。さすがVerilogスレ。
0500774ワット発電中さん
05/02/20 00:03:37ID:0Ds5C6THその返り値は真か偽か。
0501774ワット発電中さん
05/02/20 00:50:39ID:bNKh22n9ついでに、(491 == 495) && (491 == 497) も真。
0502774ワット発電中さん
05/02/20 01:55:28ID:hZNQrB+R「=」が2個というのはVerilogに限ったこっちゃ無いだろ。
もっといろんな言語を勉強すべし。
0503774ワット発電中さん
05/02/20 03:57:44ID:SlW2KIp5単に2ちゃんで”=”と書くのが一般的だからだろ。
「こいつはVerilog以外の言語でも”==”が使われてるのを知らないんだ!そうに違いない!!」
って浅はかで偏った奴だ。(w
0504774ワット発電中さん
05/02/20 04:46:25ID:Hrq/jZPm0505774ワット発電中さん
05/02/20 06:50:30ID:62Jkgl2lんなのあったっけ? VerilogもVHDLもまともにわからんのですが
解説お願いします。(C++、Java、BASICなどはわかります)
0506774ワット発電中さん
05/02/20 12:59:18ID:ISRILzfO>>10'd497の俺が言うんだから間違いない。
0507774ワット発電中さん
05/02/20 15:25:43ID:CYeF6uYfすいません。あまり問題ないかなーと思って勝手に思って書き込まなかったんですが
リアルタイムです。。。音声からADCした44.1kHz,16bitPCM信号(モノラル)
を33Mhzのクロックがある1万ゲートの回路でFFTしようと考えてました。
それで32POINTだとhttp://momonga.t.u-tokyo.ac.jp/~ooura/fftman/ftmn2_1.html#sec2_1
ここにのってるある長さのFFTを半分の長さにしてやる(データの半分を
虚数部に入れてFFTする)って方法を考えてたんですが16POINTだと
波形になるんだろうか?とか悩んでます。33MHz一万ゲートだと
やはり無理でしょうか。。。FFT回路で最終的にはバンドパスフィルター
みたいな事をしたいなぁと考えてます。。。
0508774ワット発電中さん
05/02/20 15:51:46ID:LwrlHcWlstd_logic_vector'("00" & hoge( 5 downto 0 ))
でもエラーになるのかな?
stringかbit_vector辺りでオーバーロードしてない?
0509774ワット発電中さん
05/02/20 16:14:51ID:LYDFFhPfバンドパスフィルターなら
FFTではなくてFIR フィルターでは問題あるのですか?
乗算器のあるFPGAなら簡単に組めると思います。
0510774ワット発電中さん
05/02/20 16:22:29ID:CYeF6uYfああ、すいません。大学でより複雑な回路を組まされるんですがその前の
演習問題ってことでやってます。Firは別の人が先に作ってしまったので
同じものをやるのもなぁってことでFFTをやろうと思いました。
0511774ワット発電中さん
05/02/20 16:23:01ID:CYeF6uYf>>484 -> >>509
0512774ワット発電中さん
05/02/20 17:39:01ID:6YJdgH7hへえ、別人にしては書き出しの文体がまるで同じ。
奇遇なことがあるもんだねぇ。へえ。( ´,_ゝ`)
> 491 :774ワット発電中さん :05/02/19 13:11:56 ID:w9pazgcN
> 最近490みたいなsage原理主義者つうか、
> 497 :774ワット発電中さん :05/02/19 20:37:28 ID:m6nitJOh
> >>490みたいにちょっと注意されるとキレるニワトリみたいな奴
0513489
05/02/20 21:05:10ID:YwwvT9HMレスありがとうございます。
明日会社いって試してみます。
オーバーロードは使っていないので(プロジェクト全体でprocedureはこれ1つだけ)
たぶん影響はしていないと思います。
0514774ワット発電中さん
05/02/20 22:10:44ID:LwrlHcWl本来 "00" & hoge( 5 downto 0 ) でもOKであるべきだと思うけど、
エラーの内容からして、"00"がstd_logic_vectorと認識できないような気がする。
0515774ワット発電中さん
05/02/21 23:39:15ID:XRKE4dzJ>>489 のような状況になるかも。ただエラーメッセージが489とは異なると思うけど。
その場合には procedure (a : in std_logic_vector) に変えてみるとか。
0516774ワット発電中さん
05/02/22 20:06:42ID:GHiFVA4H0517774ワット発電中さん
05/02/23 03:43:07ID:eRK4+v3c>>1に何か作って遊んでみませんか、とありますが
例えばどんな面白いものが作れるんですか?
0518774ワット発電中さん
05/02/23 16:19:06ID:UZuM1Tn4死のう
||
∧||∧
( / ⌒ヽ
| | |
∪ / ノ
| ||
∪∪
0519774ワット発電中さん
05/02/23 17:23:45ID:UZuM1Tn40520774ワット発電中さん
05/02/24 23:44:35ID:WTK8MSBOそりゃPONGだろう。
0521774ワット発電中さん
05/02/25 09:43:45ID:qRViqlEUあれ?死ぬんぢゃなかったっけ?
0522774ワット発電中さん
05/02/27 00:55:52ID:5QzVmkDwしのう、こうしよう。
0523774ワット発電中さん
05/02/28 19:50:21ID:JQ/IxlAG亀レスですまん。俺はトリップ検索基板に仕立てて遊んでる。
0525774ワット発電中さん
05/03/05 23:55:33ID:+r6YvIeG符号付の乗算なんですが、
例えば、12bit同士の乗算で、(積は24bitで宣言)
積 <= 805 * 002(MSBは符号桁)
としたときに、modelsimで「00100a」が返りました。
んでも、805のほうはMSBに立ってるので、期待値は「fff00a」です。
気が向いてMSBを32bitまで拡張したら期待値が出ました。本来はどう記述すべきでしょうか。
宜しくお願いします。
0526774ワット発電中さん
05/03/06 01:49:09ID:xbwFXUtr0527774ワット発電中さん
05/03/06 11:47:46ID:Gqq2Ffpe> 符号付の乗算なんですが、
Verilog-95だと、regとかビット数指定の定数は全部unsigned扱いなので、
記述側で符号拡張してやるとかしないといけないんじゃないかな。
Verilog-2001だと、reg signed と宣言するか、
定数なら 12'sd805 とかみたいに s をつければいけるはず。
規格見ただけで、試してないからわからん。
0528774ワット発電中さん
05/03/06 13:17:49ID:bCe6kmA8thx!!!
>Verilog-95だと、regとかビット数指定の定数は全部unsigned扱い
うわぉ、そうだったんですか!
では、32bit拡張は対応手段としては間違ってはいなかったのか…
>Verilog-2001だと、reg signed と宣言するか、
定数ではないので↑これを試してみます。
ありがとうございました!(感涙
0529525=528
05/03/06 13:19:25ID:bCe6kmA8明日試したら報告します。
0530774ワット発電中さん
05/03/06 16:09:22ID:engYMn/nシフトと加算でやる乗算の場合、乗数(805*002の002の方)が負の時は、
それでは合わないと思っていたが…
0531774ワット発電中さん
05/03/06 20:24:31ID:cfGiKREI符号拡張の記述は 具体的に どうやってますか?
Verilog1995でも $signed(12'h805) * $signed(12'h002)で可みたいですが、
他の方法でしょうか。
そういえば、$signed( )の値って 32bitになるのかな?
いかん、仕様を知らないまま使っている… (爆)
>>530
符号拡張するビット数が足りないと、合わない罠。
たとえば (- 0x7FB) * (- 0x7FB) = 0x3FB019 の場合、
32bitまで拡張してから unsigned の乗算なら、
FFFFF805 * FFFFF805 = FFFFF00A 003FB019 で、下位32(24)ビットを取れば正解。
16bitまでしか拡張しないと、
F805 * F805 = F049 B019 なので下位16bitは合ってるけど[31:16]はNG。
Win付属の電卓でも叩いて 試してみなはれ。
(表示/関数電卓、16進、QWORDの指定をお忘れなく)
((2^16) - A) * ((2^16) - B) を展開して、
= (2^32) - (2^16)*(A+B) + (A*B) と考えると、わかりやすいかな?
0532774ワット発電中さん
05/03/06 22:14:37ID:bCe6kmA8被乗数(805*002の805の方)にだけマイナスが来るのですが、
とりあえず符号拡張で期待値は出てました。。
マイナス乗数ではNGになる? 後の遺恨とならぬよう確認しとくとします。
>>531
>符号拡張の記述は 具体的に どうやってますか?
思いついたまま適当に書いてたので、A*Bの直前で
= (被乗数[12])? {20'hfffff,被乗数} : {20'h00000,被乗数};
などと書いておりました。
>Verilog1995でも $signed(12'h805) * $signed(12'h002)
この書き方、知りませんでした。。(verilogはもう○年やってるのに…)
テストベンチでしか$使ったこと無い…
そうそう、他に25bit*26bitの計算があって、こちらは64bitまで拡張しないとNGでした。
今、win電卓のQWORDで確認しました!(手元の関数電卓は…8桁までしかないorz)
>((2^16) - A) * ((2^16) - B) を展開して、
> = (2^32) - (2^16)*(A+B) + (A*B) と考えると、わかりやすいかな?
わかりました!(10分間考え込んだけど)
ありがとうございました。
0533531
05/03/06 22:27:35ID:cfGiKREIごめんなさい、ミスってました。$signed( )は、Verilog2001から みたいでした。
1995時代の教科書には載っていなくてあたりまえです。 出直してきます…
0534774ワット発電中さん
05/03/06 22:38:46ID:bCe6kmA8いえいえ、丁寧にthxです。
俺の本、$signedについて書かれてませんでした…orz
みんなどんな本使ってんですか…(この議論は何回も出てますが)
0535525
05/03/07 11:00:34ID:Znwft+K8a = 12'h805
b = 12'h002
�@ベタ書きa*b=00100a ng
�AMSBを32bitまで拡張して a'*b'=fff00a ok
�B$signed()で a*b=fff00a ok
�CMSBを32bitまで拡張して(12'h805)*(12'h802)=3fc80a ok
�DMSBを32bitまで拡張して(12'h005)*(12'h802)=ffd80a ok
�E入力a,bをreg(wire)signed宣言しておくと、�@でもok
signed宣言で逝きたいと思います。
ありがとうございました。
0536774ワット発電中さん
05/03/07 11:00:51ID:YUoHpx7p>思いついたまま適当に書いてたので、A*Bの直前で
> = (被乗数[12])? {20'hfffff,被乗数} : {20'h00000,被乗数};
>などと書いておりました。
符号「拡張」の記述なので、
意味的にも、出来上がりの回路イメージ的にも
{20{A[11]}, A} って書くのをおすすめ。
Verilog2001で書くようになってからは
この辺のとこは気にしなくなってきたけどね。
0537525とか
05/03/07 15:50:28ID:Znwft+K8>{20{A[11]}, A}
こんな書き方があることすら知らなかったです…orz
欲しかった書き方です!thxです
0538774ワット発電中さん
05/03/07 23:51:34ID:LNoYKNzM0539774ワット発電中さん
05/03/18 01:30:46ID:2eZlcuhs2001の規格をネットで探すとヨロ氏
キャプションのフォントがエラーで読めない・・・鬱
0540774ワット発電中さん
05/03/20 00:11:07ID:tOeRyS3Athx!!
2001について書いてある本…ってどんなんあります?
探してくる〜
0541774ワット発電中さん
05/03/20 02:21:39ID:tOeRyS3A0542774ワット発電中さん
05/03/20 11:05:41ID:OX3JXprh先日、CQ出版の「FPGAで学ぶ・・・」という
ボード付きのテキストを買ったのですが
ひとつ分からない事があるのでおしえてください
ボードには電源スイッチ、リセットスイッチがなく
コンパイル後DLして動作を確認したあと
自前で用意したACアダプタのジャックを
ひっこ抜いて終了、という手順で使っているのですが
こういうボードの扱いとしては正しいのでしょうか?
(いきなり昇天しそう・・・)
0543774ワット発電中さん
05/03/20 12:25:41ID:ariYRaYE2001について触れてる日本語本で俺が知ってるのは小林の改訂版の付録部分
あと英語なら、
IEEE1364 Verilog-2001.pdf
0544sage
05/03/20 20:13:32ID:XoBTZJwB俺も買っているけれど、FPGAに対するパワーオンリセットなNPROGRAMピンの
プルアップ抵抗でリセットからCR時定数でリセット解除されているからOK.
ユーザのリセットに関しては外部スイッチでリセットできるからそれでヨシ。
電源スイッチが無いのは痛いけれど、まー基板はオマケだからね。
>>536
部外者だけれど、俺も勉強になった。
ぜひ「FPGAで学ぶVerilog-HDL/2001」を書いてケロ。
0545774ワット発電中さん
05/03/21 00:08:29ID:l1B5NFcCありがと!
0546774ワット発電中さん
2005/03/26(土) 16:29:47ID:mxqPkEM6ありがと!
0547774ワット発電中さん
2005/04/07(木) 00:39:34ID:9xCEI+UyICの入手性、コスト、容量の面からザイリンクスを使おうか
考え中。でもザイのフリーツールでの波形エディタがQ2や
MAX+2に比べて使いづらくてしょうがない。
でもある奴から、言語で入れればかなり楽と聞いた。
そこでこれを勉強したいのだが、いい本やツールがあれば
教えてほしい。
0548774ワット発電中さん
2005/04/07(木) 03:40:12ID:uZ8+KOh70549774ワット発電中さん
2005/04/07(木) 13:28:08ID:WPGzVTccISEに乗せかえ
VHDLならできるっしょ。
coregen使うと、Aに戻れない・・・
0550774ワット発電中さん
2005/04/08(金) 14:46:02ID:Y8DuNm2U初めて書き込むとき、もしくは、未使用だった領域に書き込むとき
ってものすごく時間かからない?
iMPACTがハングしたと思って、強制終了させて、再書き込みしたら
その時点までのプログレスメーター位置までは高速で書き込めるようになったけど
それ以降がやはり遅いです。
0551俺様 ◆f0ugTrYQRI
2005/04/08(金) 19:23:45ID:j3EckZzXボクチンのは15秒以内で書き込み終了するでちゅよ!
0552774ワット発電中さん
2005/04/09(土) 21:56:50ID:4kmfxmZ9ショボいノートPCだったけど。
0553774ワット発電中さん
2005/04/09(土) 23:00:12ID:xyXhrluBキミの言うとおりだったよ。
配線が間違ってた。
逝ってきます。
0554774ワット発電中さん
2005/04/10(日) 00:39:47ID:tgcv7tX5波形エディタつかってテストベンチつくるんじゃなくてHDLで直接テストベンチ作って、modelsimでシミュレーション
するのがよっぽど効率的だよ。波形エディタ使ったことあったけどこりゃあかんとすぐオモタよ。
これはQ2でも同じだけど。
>>549
ほぼ等価なのがMegaWizardにない?スンナリとは戻れないけど。
0555774ワット発電中さん
2005/04/10(日) 01:00:34ID:6N8QjS9mFIRとかCORRとかあたりは無料(ISE製品版に付属)なんだけど、
Aではフィルタとか有料じゃなかった?
まあ、仕事で使うなら買うけどさ。
0556774ワット発電中さん
2005/04/11(月) 12:13:19ID:KxEx39FOttp://www.altera.co.jp/products/ip/design/basesuite/ip-basesuite.html
0557774ワット発電中さん
2005/04/11(月) 17:06:02ID:12+TlMsi0558774ワット発電中さん
2005/04/12(火) 12:20:44ID:tLxUp4KR資格手当て申請できるんだけどなぁ〜
0559774ワット発電中さん
2005/04/13(水) 00:35:32ID:l0pQ9CHPttp://www.hdlab.co.jp/service/esa/esa.html
公的資格じゃないけど・・・
0560774ワット発電中さん
2005/04/14(木) 13:10:15ID:FMaL+f9Eへぇ〜
受けた香具師様いらっしゃいますか?
0561774ワット発電中さん
2005/04/14(木) 20:14:19ID:uRHFwjmN誰かご教授をお願いしますだ
0562774ワット発電中さん
2005/04/14(木) 20:20:28ID:G8P9tpwX0563774ワット発電中さん
2005/04/14(木) 21:08:28ID:X10C6rc+RTL Viewer の事を言ってるのかな? あんなもの糞だぞ。
回路図から何の回路ブロックか読取るだけで一苦労。 自力で回路図書いた方がマシ。
ついでに言っとくが、web edition じゃ使え無いからねー。
0565774ワット発電中さん
2005/04/15(金) 04:18:46ID:G3eRFWCGSynplifyの表記ってそんなに糞か?
RTL viewさせては、、、
ホホーこんな風に合成すんのか・・・と感心する俺って・・・レベル低すぎんのか?
0566563
2005/04/15(金) 19:53:03ID:+xIYTXZP�@VHDLから回路図を排出する方法
�AVHDLから回路を作る(論理合成)方法
�BVHDLから現実に動作するALTERAをプログラムする方法
俺は�@だと思って回答したんだが・・・ RTL_Viewer なんか解説するまでも無いだろうし、あるとも思えない。
0567774ワット発電中さん
2005/04/15(金) 22:12:19ID:0FnoZLHX決して初心者だましのツールではないと思う。
RTL書いてるときにスケマティックのイメージが頭の中で湧き、
スケマティックをみるとRTLが浮かんでくる位にRTLを習熟すると、
よさが解るし、DCなんかのマニュアルに書いてあることの意味が本当にわかってくる。
>>563みたいなこと言う奴がよくいるが、単純に解ってないだけだと思う。
0568774ワット発電中さん
2005/04/15(金) 23:05:13ID:q2aABNl8あると、違う場所によってはちょっとむかつく…
まぁ合成エンジンの癖をつかみ切れてない自分に対しての怒りというか…
0569774ワット発電中さん
2005/04/17(日) 11:53:22ID:DyEB70tc> RTL書いてるときにスケマティックのイメージが頭の中で湧き、
> スケマティックをみるとRTLが浮かんでくる位にRTLを習熟
ここで習熟と思ってる人多いおおいよなぁ・・・
スケマなど思い浮かばない新人の方が、余程いい記述をするのはこのあたりに
原因があると思う。
0570774ワット発電中さん
2005/04/17(日) 15:38:38ID:VfjBGcTo動かしたい場合はどうこねくり回そうがRTLに帰着するわけでプリミティブ
レベルではないにしろスケマが思い浮かばないようでは良い合成は
不可能で内科医?
現状では。
0571774ワット発電中さん
2005/04/17(日) 20:17:19ID:EWscBuSq20msecパルス幅のパルスを入力、その15msecの状態をサンプリングし、入力
パルスが入力されたことを示すステータス信号を生成する。ステータス信号
がクリア信号により初期化される回路を作りたいんですが、検討がつきません。
0572571
2005/04/17(日) 20:18:47ID:EWscBuSq0573774ワット発電中さん
2005/04/17(日) 20:55:35ID:/2YYovtH0574774ワット発電中さん
2005/04/18(月) 00:20:41ID:Cp0PhkM+んなもんSystemCで書いとけ!!
0575774ワット発電中さん
2005/04/18(月) 18:48:22ID:azmNEgTc真面目なFPGAサイトを荒らさないで。
0576774ワット発電中さん
2005/04/18(月) 22:25:44ID:Mq041glN0577774ワット発電中さん
2005/04/19(火) 19:44:16ID:f1U1B1YP宿題なら自分でやれ、と言われたようです(w
0578774ワット発電中さん
2005/04/19(火) 22:13:53ID:Rj/jXeTv0579774ワット発電中さん
2005/04/21(木) 21:16:38ID:wy5ueKDP0580774ワット発電中さん
2005/04/21(木) 22:02:46ID:ySzRt6Hy0581774ワット発電中さん
2005/04/21(木) 23:33:13ID:M/IlrLxbかけなくて本当に困ってます。
よろしくお願いします
0582774ワット発電中さん
2005/04/21(木) 23:36:16ID:G6VzUtl+EDA関係では多いからね。
実は大規模な開発ではVHDL使った方が楽というのは
確かだが、これは大きな声では言ってはいけない。
0583774ワット発電中さん
2005/04/22(金) 00:29:10ID:pUETsLb+0584774ワット発電中さん
2005/04/22(金) 01:22:12ID:eijszqMMまあ一昔前だとVerilogの利点はあったよ。主にEDAツールの
関係からだけど。今はVHDLでもなんとかなる。
Verilogの大人数設計の場合は某ガイドラインに添って記述
しろってことだけど、あんなの読む時間もったいないよ。
0585774ワット発電中さん
2005/04/22(金) 01:39:07ID:lhYRbtd10586774ワット発電中さん
2005/04/22(金) 08:37:39ID:17Zv8za+言語だけでは効果が薄い。今のEDAベンダにそんな環境は作れない。つまりしがらみの無い新しい開発はVHDLを使った方がいいよってこと。でもそんな開発ほとんどないんだけど。
0587HDL初心者試行錯誤中
2005/04/22(金) 22:04:42ID:ikgWlxt5ALTERAで設計してみたところです。
Verilog の方が記述量が少なくて若干楽かな と思ったんですけど、将来的な事も見越して
考えると VHDL をマスターした方がいいんですか? 次からどの言語使うべきか迷ってます。
SystemC とか言わないでね。 弱小企業ゆえ VHDL,Verilog くらいしか選択肢はありません orz
0588774ワット発電中さん
2005/04/22(金) 22:28:20ID:HXAAPBVPVHDLが良い
弱小企業ってどれぐらいだよ?
資本金と売り上げを教えて
0589774ワット発電中さん
2005/04/22(金) 23:03:07ID:ZpJ/XlHHというジンクスが・・・
0590774ワット発電中さん
2005/04/22(金) 23:08:58ID:lhYRbtd10591774ワット発電中さん
2005/04/22(金) 23:23:28ID:YLTQ6HcRウチもそうだし。
所が趣味の方は、例の低価格Verilogを使ってるので今は両刀に
なった。(ウヘ
0592774ワット発電中さん
2005/04/22(金) 23:37:43ID:kDP1PSXNVerilogだよ。
VHDLみたいく記述量多くて、きちっとしてたら、
そこでバグとれちゃうじゃん。
そうなったら、コードチェッカも売れないし、
アサーションとかプロパティチェッカとかの
ありがたみも少なくなるし、なによりシミュレータが数
売れなくなるじゃん。
次はSystemVerilogがあるんだからおとなしくVerilog
使っとけってこった。
とEDAベンダーの人間は心の中で思っている。
0593587
2005/04/23(土) 00:23:21ID:JFVybF3M>>588
3000万以下 というか、かなり下の方・・・ あまり突っ込まんでくらはい。
Q2だけは何とか買って貰った。
0594774ワット発電中さん
2005/04/23(土) 00:41:47ID:mpw5sUre仕事してるとverilogになると思う。
VHDLは本とかで「これからは言語で設計」と騒ぎ出して
から始めたところが多い気がする。
0595774ワット発電中さん
2005/04/23(土) 02:01:13ID:cALcLF6fCレベルからFPGAに落とせるやつらしいけど。
これが出回ったら、HW言語書きは失業してしまうのでしょうか。。
0596774ワット発電中さん
2005/04/23(土) 03:37:52ID:vRR/Pj17論理合成が期待できるだろうし。
記述のしやすいVerilogがぜったいお勧め。
VHDLは、登場したときから、そして、今も、下請けやってるとか米国防総省に納入品あるならともかく、
VHDLをつかわにゃならん理由がまったくない。
記述量多いわ、プリプロセッサはほとんど皆無。
わざわざCのプリプロセッサ通してたりする。
作業効率悪すぎ。しかもRTL書いてる限りはほとんどVerilogとやれることに差がない。今更存在意義がない。
あと
VHDLでVerilogのfunctionような明示的な組み合わせ回路の合成法ってあるんか?
0597774ワット発電中さん
2005/04/23(土) 06:50:56ID:iadIVeDdLSIメーカーのCAD部門もそのおこぼれに与っている。
設計の人間もいつそっち側の人間になるかもしれない。
ってことでVerilogだよ。
0598774ワット発電中さん
2005/04/24(日) 09:17:10ID:O0zfwGMJverilogを試しに使ってみたらこっちの方が書きやすくて
いまはverilogだよ。
組み込みやっててCを使ってるとverilogがなじみやすいし。
ただHDLで大規模な高度なアプリをまだやったことがないので
そういうときにどっちの言語が有利なのかが分からないけどね。
0599774ワット発電中さん
2005/04/24(日) 15:20:14ID:bkz91xeL曖昧な記述が出来てしまうVerilogはどうにも気持ちが悪くて
VerilogでもVHDL風の書き方をしてしまう。
0600774ワット発電中さん
2005/04/24(日) 16:06:56ID:y3J6Uhd6俺も同じ。
VHDLでやってたけど、作業が遅々としてすすまなかった。試しにVerilogにしてスイスイって感じだった。
予約語にしても長ったらしすぎるんだよね。
一般にVerilogから入った人はVHDLが嫌いになるっていうけど、VHDLから入って(、Verilogの便利さ知って
VHDLが大嫌いになった。VHDLは読むけど二度と書かない。
0601774ワット発電中さん
2005/04/24(日) 16:19:09ID:bkz91xeL0602774ワット発電中さん
2005/04/24(日) 17:27:13ID:pDbQ6OJu0603774ワット発電中さん
2005/04/24(日) 20:15:36ID:NIxmJdRUベリは文法的には楽だけど、ミスでも通ってしまうことがある。
VHは変数宣言などが厳しい分、ケアレスミスが事前に防止できて、
チョンボで日程つぶす可能性が減った。
0604774ワット発電中さん
2005/04/24(日) 20:22:57ID:gNxwQBuhそれで食えるならそれが正解。
0605774ワット発電中さん
2005/04/25(月) 12:09:19ID:4+9AkTV9米系メーカーでCPU作ってたころはVerilogばかりだった。
独立起業して国内メーカーを相手にするようになったらほとんどVHDL。
社内IPの開発はいまもVerilogでやってる。これは好みの問題かな。
PascalよりCが好きなのと同じようなもん?
0606774ワット発電中さん
2005/04/25(月) 12:35:52ID:y04O3WE2それでもVHDLよりはVerilogの方が気に入って使っている。
どうしてもVHDL要る時はVerilogで作ってから自動変換汁!
0607774ワット発電中さん
2005/04/25(月) 15:21:32ID:2bJ/vJmf0608774ワット発電中さん
2005/04/25(月) 15:32:57ID:dBcwvxVd>国内はVHDLって感じ。
それはおまいが相手してる会社の話だ。
俺の知ってるとこ(大手)はVerilogが多い。
あとHDLがらみの求人見てみろ。圧倒的にVerilogが多い。
もっとも俺の知ってるとこはFPGAまでは試作でそのあとASICまでを考えてるとこ。
FPGAで作業完了してるとこは未だにVHDLにしがみついてるのかもしれん。
0609774ワット発電中さん
2005/04/25(月) 16:22:52ID:PKp6kwUm0610774ワット発電中さん
2005/04/25(月) 20:16:04ID:ifLXH1aI0611774ワット発電中さん
2005/04/26(火) 01:41:28ID:X3wbXkem0612774ワット発電中さん
2005/04/26(火) 09:04:27ID:OPSWUhYA0613774ワット発電中さん
2005/04/26(火) 09:25:00ID:wzAJpFPsになりやすいというジンクスはある罠
68000 vs 8086にしても、Pascal と CにしてもMinix vs Linuxにしても・・
0614774ワット発電中さん
2005/04/26(火) 14:11:06ID:UsH6WjqRわかってんのか?
0615774ワット発電中さん
2005/04/26(火) 14:39:17ID:VCowlzD5相当ひねくれてるな。俺はVerilog派だが、VHDLも使えるツールしか使ってない。
Modelsim/HDL Designer/Precision/SynplifyフィッタはISE/Quartus
Verilog専用のツールって一体何?そんな便利なツール使ったことないね。
大体、VHDLで満足する奴はプログラム言語の開発環境を満足に知らん奴だな。
少しでも知ってりゃ。VHDLなんてゲゲボ。絶えられないはずだ。
0616774ワット発電中さん
2005/04/26(火) 17:12:25ID:wzAJpFPs最初のLinuxなんて酷いものだったじゃん
0617774ワット発電中さん
2005/04/26(火) 20:28:45ID:4w0b6lkR0618774ワット発電中さん
2005/04/26(火) 22:35:44ID:a1s69AXgforever @(A or B) OUT = A || B;
って記述は可能でしょうか?
明日試せばいいのですが、気になるので。。。
0619774ワット発電中さん
2005/04/26(火) 22:43:46ID:vYe2i6ZTなぁ、ゲゲボってどういう意味なん?
0620774ワット発電中さん
2005/04/27(水) 00:12:52ID:1QCKtkNc書き込み内容から推測するとそうなる。
0621774ワット発電中さん
2005/04/27(水) 01:19:05ID:NW0QCMMQ元ネタ、確かファンロードっていう雑誌
30後半から40にかけてのヲタだと思われる
死語とかそういうレベルの代物ではありません
20年ぶりに聞いたよ。未だ使うやつがいるとは…
0622774ワット発電中さん
2005/04/27(水) 01:42:50ID:aagbsv72アホやなぁお前。
単に今更方向性を変更できない悲惨なVHDL屋だろうがかわいそうにな!
Verilogが金になるというのはそっちの方が生産効率が高いことを認識したユーザが多いからだ。
ユーザが多いから言語仕様の穴を埋めるようなツールが出てくる。
0623俺様 ◆f0ugTrYQRI
2005/04/27(水) 05:47:59ID:dIocz0CA香港で飲茶を食べるでちゅ〜
0624774ワット発電中さん
2005/04/27(水) 22:44:22ID:eYk1gBjJLSIメーカを通して、日本の技術、ノウハウ、富がどれだけ海外に流出したか考えたことがないの?
いい加減、Synopsys、Cadense、Mentorをありがたがって、
毎年毎年お布施を払うのはやめて、GNUのようなプロジェクト立ち上げろってことだよ。
0625774ワット発電中さん
2005/04/27(水) 22:53:26ID:6pQ5Oz5i賛同します
賛同します
では>>624タン、頑張ってくらはい。
0626774ワット発電中さん
2005/04/27(水) 23:06:31ID:1QCKtkNc先ずはお前から何かどうぞ。
0627774ワット発電中さん
2005/04/28(木) 00:41:01ID:rZNilWpl0628socket774@rc
2005/04/28(木) 00:54:41ID:alTjvFo/ずっと昔AHDLでゴリゴリ書いてますた。
AHDLで評価変数使うと色々裏技つかえますよ。
回路階層の帰納定義が出来たり、
パラメータの内容から数式を通して条件判断して
回路の生成方法を変えたり、
レジスタ入れる個所を自動決定させたり・・・etc
LPMの中身を解析していろいろ知りますた。
いまはVHDLしか使ってませんけど(w
0629774ワット発電中さん
2005/04/28(木) 01:30:25ID:XHA9VSQp>>624を破産者にするつもりか!(w
0630774ワット発電中さん
2005/04/28(木) 23:44:56ID:EXLbwENb使えないんだな。
0631774ワット発電中さん
2005/04/28(木) 23:55:26ID:NaTZHK5+馬鹿か?
0632sage
2005/04/29(金) 08:40:35ID:hKs8yizzどこが情けないの?役に立ってるけどなー。
0633774ワット発電中さん
2005/04/29(金) 13:06:22ID:lhVrpHWo人の勝手なのにね。
ま、好き勝手に書いてろくなドキュメントもないなんて仕事をしてる
んじゃないのかな?
0634774ワット発電中さん
2005/04/29(金) 18:06:50ID:BuLkX+R8レベルが低いのはお前だボケ。死ねや。
仕事で両方使う必要があるならともかく、
これから新規に使おうという人で、
どっちを使ったほうがより効率的で、将来有望なのか比較したくなるのは当然だ、
0635774ワット発電中さん
2005/04/29(金) 18:11:19ID:hL83OBc+食っちまう人間なんだぜ
0636774ワット発電中さん
2005/04/29(金) 18:13:28ID:hL83OBc+0637774ワット発電中さん
2005/04/29(金) 18:27:24ID:lhVrpHWoウゼー
0638774ワット発電中さん
2005/04/29(金) 22:55:10ID:R/B0eCmE0639774ワット発電中さん
2005/04/30(土) 13:04:02ID:RwqtPFMQどっかで読んだのは、VHDLやってた人がVerilog使うのは簡単だが、
逆は大変と聞いたからだ。
最初はガチガチのほうでやっとけばラクなほうに転ぶのは簡単ってことだな。
0640774ワット発電中さん
2005/04/30(土) 18:18:38ID:eOoS6LdPどっかで読んだのは、高周波やってた人がディジタル回路は簡単だが、
逆は大変と聞いたからだ。
最初はガチガチのほうでやっとけばラクなほうに転ぶのは簡単ってことだな。
0641774ワット発電中さん
2005/04/30(土) 21:36:52ID:/ny9r/xPなぜそのまま高周波職人にならなかったのかと小一時間…
0642774ワット発電中さん
2005/04/30(土) 23:01:27ID:ZoLLL5Gaどっかで読んだのは、小学生やってた人が高校生は簡単だが、
逆は大変と聞いたからだ。
最初はガチガチのほうでやっとけばラクなほうに転ぶのは簡単ってことだな。
0643774ワット発電中さん
2005/04/30(土) 23:02:39ID:lEXHuyX3どっかで読んだのは、アナルやってた人がマンコは簡単だが、
逆は大変と聞いたからだ。
最初はガチガチのほうでやっとけばラクなほうに転ぶのは簡単ってことだな。
0644774ワット発電中さん
2005/04/30(土) 23:04:15ID:355ObSRcってことだな
0645socket774@rc
2005/04/30(土) 23:20:21ID:ACNDAkK8画期的だと思った(15年位前)。
MAX+PLUSでMAX5128使ってAHDL&回路図入力して
設計やってた頃がなつかすぃ。
実は最初に講習会(小林優氏のCadenceでやってたやつ)
いって覚えた言語はVerilogだったりして(w
0646774ワット発電中さん
2005/04/30(土) 23:25:02ID:J+G+FTqBアホの書き込みは見るに耐えない。
0647774ワット発電中さん
2005/05/01(日) 00:12:18ID:i0O4bH2m>アホの書き込みは見るに耐えない。
と、もっともアホがほざいております
0648774ワット発電中さん
2005/05/01(日) 15:08:48ID:0+I6OP6t0649774ワット発電中さん
2005/05/04(水) 10:53:51ID:qCUWf+Bc”書き換えできるんでしょ?”ってことでガラガラ仕様やらスケジュールに翻弄されるストレスはわかるけど...。
ここの基地外もage専だなぁ。
0650俺様 ◆f0ugTrYQRI
2005/05/04(水) 11:15:01ID:l7iYV4Kx0651774ワット発電中さん
2005/05/13(金) 01:19:50ID:9Kh+JZzbデータバスに書き込む際に、書き込む時以外はトライステートになるように書いたのですが
'0'を出力するようにするとその箇所だけトライステートではなくオープンドレインになってしまいます。
(Quartus�Uのフロアプランでオープンドレインになっていると分かりました)
LIBRARY ieee;
USE ieee.std_logic_1164.all;
ENTITY test IS
PORT
(
RESET : IN STD_LOGIC;
IN_A : IN STD_LOGIC_VECTOR(2 downto 0);
IN_B : IN STD_LOGIC_VECTOR(2 downto 0);
IN_C : IN STD_LOGIC_VECTOR(2 downto 0);
ADRES : IN STD_LOGIC_VECTOR(2 downto 0);
DATA : INOUT STD_LOGIC_VECTOR(7 downto 0)
);
END test;
ARCHITECTURE test_architecture OF test IS
BEGIN
process(RESET, ADRES)
begin
if RESET = '1' then
DATA <= "ZZZZZZZZ";
else
case ADRES is
when "001" => DATA(2 downto 0) <= IN_A(2 downto 0);
DATA(5 downto 3) <= IN_B(2 downto 0);
DATA(7 downto 6) <= "00";
when "010" => DATA(2 downto 0) <= IN_C(2 downto 0);
DATA(7 downto 3) <= "00000";
when others => DATA <= "ZZZZZZZZ";
end case;
end if;
end process;
END test_architecture;
0652774ワット発電中さん
2005/05/13(金) 02:40:56ID:WjfEC93p0653651
2005/05/13(金) 21:44:32ID:9Kh+JZzbでも0を1に変えてやるとトライステートとして出力されます。
0654774ワット発電中さん
2005/05/13(金) 21:48:09ID:Ws8mEBWnhttp://tubox.skr.jp/ch/big/src/1113556286690.jpg
0655774ワット発電中さん
2005/05/13(金) 22:54:58ID:B60nfGhN君馬鹿か?
0656774ワット発電中さん
2005/05/13(金) 23:01:10ID:Aq3jXKgHAuto Open-Drain Pins
Allows the Compiler to automatically convert a tri-state buffer
with a strong low data input into the equivalent open-drain buffer.
どこにあるかは自力で探せ。
0657774ワット発電中さん
2005/05/14(土) 00:52:35ID:JX62oeiU設定してみましたが相変わらずオープンドレインのままでした・・・。
もうちょっと考えてみます。
0658774ワット発電中さん
2005/05/14(土) 07:49:58ID:D0huQ3zWそれが有効なら「出力信号(0または入力A_B_C)」、
無効なら「ZZZZ」
ってふうに書き直したら?
0659774ワット発電中さん
2005/05/14(土) 14:41:33ID:E+zMVA/lなんで困るの?
pチャンがあってもドライブされることはないし。
0660774ワット発電中さん
2005/05/14(土) 15:10:17ID:JX62oeiU3本の「ADRES」を出力イネーブル信号として使っているつもりなんですが、新たに出力イネーブルを
ついかしたほうがいいってことですか?
>>659
オープンドレインの切れている状態とトライステートの切れている状態違うから困ってます。
0661774ワット発電中さん
2005/05/14(土) 15:13:56ID:dCSocp3E0662774ワット発電中さん
2005/05/14(土) 19:59:56ID:JRbNa2fL0663774ワット発電中さん
2005/05/14(土) 21:33:59ID:+LCXtOir>オープンドレインの切れている状態とトライステートの切れている状態が違う
どのように違うの?
0664658
2005/05/14(土) 22:29:41ID:N84/Gu1XHC541などのG端子相当に入力する一本の信号を一旦アドレスデコードからつくって、
G端子が有効の時(ry
これでも変わりませんか?自動で圧縮されるのかな?
0665:774ワット発電中さん
2005/05/15(日) 10:34:59ID:7NgLYrfNセンシティビティリスト間違うと、想定外のバグ仕込むことあるよ。
0666774ワット発電中さん
2005/05/15(日) 14:28:07ID:gFzd/QJyまだ釣られますか。そうですか。
ダボハゼ並みですね。
0667774ワット発電中さん
2005/05/15(日) 23:17:12ID:I27Cgrk7たぶん>>661はセンシティビティリストのどこに間違いがあるかも判ってないよ。
もしくは完璧な釣りだな。
> when others => DATA <= "ZZZZZZZZ";
なんて書きながら
> if RESET = '1' then
>DATA <= "ZZZZZZZZ";
>else
などと...けっこううまい釣りだよ
0669774ワット発電中さん
2005/05/16(月) 00:36:05ID:wNMEogmYんでADRESが「001」、[010]の時意外はトライステート。
何か問題ありますか?
センシティビティリストは「RESET」と「ADRES」だけ見張っていればいいからこの2つだけ入れました。
0670667
2005/05/16(月) 00:52:18ID:8DUMjoS4> センシティビティリストは「RESET」と「ADRES」だけ見張っていればいいから
ごめん、釣りじゃなかったのね。
本当に聞いているんだね。
オマエさんのセンシティビティリストの考え方、間違ってるよ。
答えは自分で見つけな。
0671774ワット発電中さん
2005/05/16(月) 00:55:27ID:wNMEogmY0672774ワット発電中さん
2005/05/16(月) 01:09:47ID:Gj2xIsPhようワカラン。合ってそうに見える。
> RESET信号が入ったら無条件でDATAはトライステート
ハイ・インピーダンスとか言わないの? もしかして、
「Z=トライステートと呼ぶ=オープンドレイン!?なんだそれ」という図式???
0673774ワット発電中さん
2005/05/16(月) 10:26:51ID:xk1r6bSl3ステート(3-state, three-state)って
標記するよう指導されるわけだが。。。
0674774ワット発電中さん
2005/05/16(月) 12:10:41ID:dAv8fSHD0675774ワット発電中さん
2005/05/16(月) 12:55:06ID:1vkX0Rjaそんなことで変更が必要なら、
ペンタ、ヘキサも変更せにゃならん。
0676651
2005/05/16(月) 21:03:21ID:wNMEogmY初心者マークとれてから来ます。
でも、センシティビティリストの件は分かんね〜わ。
0677774ワット発電中さん
2005/05/16(月) 21:11:42ID:ShTS7dqEdi tri tetra penta hexaでググると、そっち系の呼び方のページが出てくるけど、
ICなんかによくあるdual、triple、quadなんかの一覧って、どこかにありますか?
あと、2はダイだったりバイだったりしますよね。ダイポールアンテナとか
バイポーラトランジスタとか。このへんはどういう話なんでしょうか。
0678774ワット発電中さん
2005/05/16(月) 21:31:36ID:9soW1er8商標の話かと思ってたが、マジボケだったのか>>673
0679673
2005/05/16(月) 22:22:18ID:rLBvdL3M>商標の話かと思ってたが、マジボケだったのか
いや、商標の話をしてたんだけどw
>>674-675 には笑わせてもらったよ。
0680774ワット発電中さん
2005/05/16(月) 22:59:15ID:McxtgdLlなんだか苦しいね。
日本語不自由か?
0681774ワット発電中さん
2005/05/16(月) 23:09:55ID:P6RYwksH用語検索. トライ・ステート (tri state). [同]→3ステート. ナショナル・セミ
コンダクター社の商標. 用語検索インデックスへ戻 る 用語検索のトップに戻る Copyright
1997-2000 トランジスタ技術編集部.
www.cqpub.co.jp/term/tristate.htm - 2k - キャッシュ - 関連ページ
0682774ワット発電中さん
2005/05/16(月) 23:30:36ID:/8fSzhyCトライステートと言う用語を使って解説してる書籍なんていくらでもあるわけだが。
ここでいうような仕様書とか解説中に記載することは特に問題にならんのじゃないか?
よくあるだろ。欄外にXXはYY社の登録商標ですってやつ。
0683774ワット発電中さん
2005/05/17(火) 00:06:03ID:ERz/+5Lc0685667
2005/05/17(火) 01:22:37ID:bkxM2nFxおまえ、アホか。しらべてないやろ。
なんでIN_A/IN_B/IN_Cをセンシティビティリストにいれんのや。
これ以上聞くな。アホらしいから。だからだれも相手にせんの。
0686774ワット発電中さん
2005/05/17(火) 01:24:47ID:yLX1AV2lこの板に君のような奴は不要。
目障りだから消えてくれ。
0687774ワット発電中さん
2005/05/17(火) 01:35:14ID:SnMYMpm9667の記述こそ釣り。
0688774ワット発電中さん
2005/05/17(火) 01:41:32ID:tqcqalrI0689774ワット発電中さん
2005/05/17(火) 02:30:07ID:eNK5curG0690774ワット発電中さん
2005/05/17(火) 08:09:24ID:p3uLDjHpdiは普通の2 biは双数
0691774ワット発電中さん
2005/05/17(火) 21:54:47ID:GYtGT1z5dualとかの方は何?
0692774ワット発電中さん
2005/05/17(火) 23:21:23ID:p3uLDjHp0693774ワット発電中さん
2005/05/18(水) 21:29:12ID:09Do903X0694774ワット発電中さん
2005/05/24(火) 22:36:48ID:XhnVf7D0VHDLでC言語の「#ifdef 〜 #endif」と同等の処理を
行いたいのですが、どなたか教えて頂けませんか?
0695774ワット発電中さん
2005/05/24(火) 23:36:49ID:iFgyQacm0696774ワット発電中さん
2005/05/25(水) 00:49:35ID:k9OAL1QlゆえにVerilog-HDL使いが居る。
0697774ワット発電中さん
2005/05/25(水) 09:57:19ID:cBYTkSkz0698694
2005/05/25(水) 12:46:53ID:bnwleK92うーん、解決方法を探さねば・・・
0699:774ワット発電中さん
2005/05/25(水) 23:35:29ID:9Qwiuam+0701694
2005/05/26(木) 16:59:56ID:IuiE0bP4できれば解決したいので、もう少し具体的に質問させて下さい。
現在、下記の様な記述をパッケージにまとめてあります。
constant TABLE_A : std_logic_vector(3 downto 0) := "1111";--System A
constant TABLE_B : std_logic_vector(3 downto 0) := "0001";--System A
-- constant TABLE_A : std_logic_vector(3 downto 0) := "1000";--System B
-- constant TABLE_B : std_logic_vector(3 downto 0) := "0010";--System B
System AとSystem Bを使い分けるのに、コメント行を入れ替えています。
この作業をスマートにしたいと考えているのですが、皆さんお知恵を!m(__)m
0702774ワット発電中さん
2005/05/26(木) 19:17:12ID:LemZlmN/signalで宣言してifで切り替えれば?
constantにしてるのは面積もったいないから?
0703694
2005/05/27(金) 11:31:07ID:QHEYeCXAconstantにしているのは、複数ソース内で利用するために
「パッケージでconstant宣言!」しか方法が分からなかった為です。
どんな方法でも、複数ソース内で利用できれば何でも良いのですが・・・
0704774ワット発電中さん
2005/05/27(金) 19:23:34ID:1eReoTOhlibrary ieee;
use ieee.std_logic_1164.all;
package SystemLib is
constant SystemNumber : integer := 0 ;
function TABLE_A return std_logic_vector;
end SystemLib;
package body SystemLib is
function TABLE_A return std_logic_vector is
variable var: std_logic_vector(3 downto 0);
begin
case (SystemNumber) is
when 0 => var := "0011" ;
when others => var := "1010" ;
end case;
return var;
end;
end SystemLib;
0705774ワット発電中さん
2005/05/27(金) 22:37:59ID:kod8k8poconfiguration
0706タスク
2005/05/30(月) 20:51:28ID:ZVhUdiy8もちろん、お金あげるから
0707774ワット発電中さん
2005/05/30(月) 20:54:16ID:LiJvs7xQ0708俺様 ◆f0ugTrYQRI
2005/05/30(月) 21:19:08ID:9Ye+LOJI0709774ワット発電中さん
2005/05/31(火) 00:20:20ID:0StKJsP0そんな日本語で論文を書くのか
0710774ワット発電中さん
2005/05/31(火) 09:49:01ID:VlzJgi5eそして2chは日本語で書くもんだ
0711694
2005/05/31(火) 19:14:43ID:t3NT+PFo704さんの方法で実現できそうです。
>>705さんもコメントありがとうございました。
ググッてみたのですが、答えらしき所まで辿り着きませんでした。
情報を生かす事ができずにすいません。
皆さんのおかげでスッキリできそうです。では。
0712774ワット発電中さん
2005/06/03(金) 05:29:36ID:dLroBs/ghttp://find.2ch.net/?STR=%A3%B1%A5%C1%A5%C3%A5%D7&COUNT=10&TYPE=TITLE&BBS=ALL
0713774ワット発電中さん
2005/06/13(月) 17:39:58ID:G4/tYFUUヲーニング出まくりなのだが、きれいに書き直して消せるものなのか
0714774ワット発電中さん
2005/06/13(月) 21:28:35ID:AYy9lSvK0715774ワット発電中さん
2005/06/13(月) 22:39:33ID:BQt4dmam仕事なら知ってたほうが良いとオモフ。
0716774ワット発電中さん
2005/06/14(火) 08:58:50ID:cLnSsTT4でも、単なるパラメータという扱いもできなくなってしまっているように思える。
なんか、もう電気屋の仕事じゃないような気がしてきてちと悲しい。
0717716
2005/06/14(火) 09:01:53ID:cLnSsTT4× でも、単なるパラメータという扱いもできなくなってしまっているように思える。
○ でも、単なるパラメータという扱い方になってきてしまってるようにも思える。
訂正です。
皆さんはどう思いますか。私が単なるオサンだからでしょうか。
これで、Cベース設計がデフォの時代がきたら…
0718774ワット発電中さん
2005/06/14(火) 12:44:13ID:cIkGHkKcアナログから入ったオヤジだが、俺もFPGAは電気と違う気がしてる。
でも理論はFPGAに持って来れるので、昔やった事がまるっきり無駄とは思っていない。
昔苦労して調整して作ったフィルターとかが、信号処理回路作ってFPGAに入れられた時は
マジ感動した。 調整いらねーじゃん! って。
>>714
それでも仕事はできるが、今の状況では選択肢がかなり狭められるような気がする。
将来的には、ハードを理解していないFPGA屋が普通になっていくと思うが・・・
0719774ワット発電中さん
2005/06/14(火) 17:12:47ID:CJ2IsWTN100MHzくらいまでが安心して使える周波数で、1GHzは多分無理。
この周波数になるとメニーコアとかDSPアレイの方が適してるような気がしてる。
自由度は高いが、配線遅延がホントうざすぎる。
一人の信号処理屋が、FPGAもDSPも使いこなすのは負担が大きいよな。
0720774ワット発電中さん
2005/06/14(火) 20:19:54ID:uqWNI1k4言語書ければそれでできるんじゃないかって 以前 文系のやつがバリバリやってるってのみたことあるし
0721774ワット発電中さん
2005/06/14(火) 20:29:00ID:oPw+GkzOディジタル回路が理解できればHDLを習得して回路を書くことはできるだろうが、
例えばFFTを回路に起こしてくれと言われたら文系君にはできない。
タイムチャートまでしっかり仕様書に書いてもらって下位設計としてHDL専念するのであればできると思うけど、
公的スペックをポンと渡されて上位設計->下位設計に及ぶような仕事は多分無理
0722774ワット発電中さん
2005/06/14(火) 22:53:55ID:+fL0y+eeARMもド素人が設計したって話しだし。
0723774ワット発電中さん
2005/06/14(火) 23:07:39ID:uqWNI1k4ソフトもハードも使いこなせる人材は少ない
0724774ワット発電中さん
2005/06/14(火) 23:11:50ID:NwrQL4xfARMは電気分野のド素人かもしれないが、アーキテクチャや情報理論、
論理設計に関してはそれなりのプロだろ。完全ステートマシンを目指してたとか言ってたし。
で、ASICでもライブラリ弄って特殊なインターフェイスを実現するつもりなら
それなりに電気の知識はいるだろうと思われ。
0725774ワット発電中さん
2005/06/14(火) 23:47:37ID:+fL0y+ee半導体設計のド素人だったみたい。
ttp://www.cqpub.co.jp/hanbai/pdf/MIFZ200310/MIFZ200310_TECHI18.pdf
0726774ワット発電中さん
2005/06/15(水) 02:06:35ID:5d5Jo6UEそういうとこを出た奴がみんな使えるかどうかはまた別問題だが、探せば中には優秀な奴もいるんじゃない?
0727774ワット発電中さん
2005/06/15(水) 12:16:44ID:x9MMD2hmと思ったけど、設計担当範囲の話になるのか。
0728774ワット発電中さん
2005/06/15(水) 12:47:22ID:iN37Q4cD熱とかジッタとかスキューとかファンイン・アウトとか終端とかを気にせず設計した
オープンハードウエア界の巨匠は存在したけどねw
0729774ワット発電中さん
2005/06/15(水) 23:37:00ID:s1SJavJl情報科学とか 要は社会学みたいなことやるんじゃないの?
二年ぐらい前に 一からFPGA教えますみたいな派遣あったような記憶あるけど
採用試験にIQテストってのがあったW まあ確かにこういうのはIQの高さに比例するかもしれない
0730774ワット発電中さん
2005/06/15(水) 23:51:40ID:Z2649FH3でもそれが使い物になる代物に合成される様になるにはまだまだ時間がかかるだろうね。
根底はいつも泥臭い物、これは多分これから先も変わらないよ。
0731774ワット発電中さん
2005/06/15(水) 23:55:18ID:i1/JnM/N0732774ワット発電中さん
2005/06/16(木) 00:04:16ID:7g3ZrvNOハードにより近いって意味だ>うちのソフト屋
0733774ワット発電中さん
2005/06/16(木) 01:47:52ID:zNol4mg5それはトヨ(以下自粛
0734774ワット発電中さん
2005/06/16(木) 20:11:37ID:QCmadF770735774ワット発電中さん
2005/06/17(金) 12:10:37ID:4Ezuob99とてもじゃないがデバイス選べない。
FPGAの発熱がすごくて基板が変色したこともあった…
小規模ならなんも気にせんけど
0736774ワット発電中さん
2005/06/19(日) 01:16:51ID:tqujOr4u0737774ワット発電中さん
2005/06/19(日) 02:58:43ID:J5C8xv0N0738774ワット発電中さん
2005/06/20(月) 17:10:54ID:4/+H9ZYi0739774ワット発電中さん
2005/06/21(火) 20:29:05ID:O3UjfOs8・暗黙の了解で、チーム内では全角コメント禁止なんだけど、これはやはり常識なんでしょうか。
・全角コメントで不具合出た合成ツールってあるんですか?
この間、ソフト屋さんのソースを眺める機会があったのですが、
全角コメントばっかりで羨ましかったです。
ソフト屋「だって、デバイスもツールも国産(Renesas)だから」
0740774ワット発電中さん
2005/06/21(火) 20:39:29ID:aEPqYliu0741774ワット発電中さん
2005/06/21(火) 21:23:10ID:O3UjfOs80742774ワット発電中さん
2005/06/22(水) 07:48:28ID:JWaSnhuAつーか、全角コメントが羨ましいって心理 本気で理解できないのだが なぜ?
0743774ワット発電中さん
2005/06/22(水) 12:15:43ID:VcF7mubI今はどうか知らんが、ソースコードに日本語を含めないのはソフトでも常識だ。
0744774ワット発電中さん
2005/06/22(水) 12:18:22ID:BQwKJBc60745774ワット発電中さん
2005/06/22(水) 12:42:23ID:YtB4QzpGへっそうなの? HDL記述に 2ByteCode 入れた事は無いが、Cには良く入れてる。
上司の意向で、関数の頭に日本語コメントするテンプレが付いてるのがデフォなもので・・・
もしかして、こんなソースを外に出すと恥ずかしい?
0746774ワット発電中さん
2005/06/22(水) 15:40:27ID:VcF7mubIソフトでも日本語対応になってないツールも山ほどあるってこった。
わかってから対応するんじゃなくてコメントに日本語使わないとか、
ディレクトリ関係に日本語やSpaceを使わないのは当然の防御策
0747774ワット発電中さん
2005/06/22(水) 15:43:12ID:bq3eWW0g0748745
2005/06/22(水) 19:38:02ID:YtB4QzpGレスサンクス。 他ツール使った時の防衛策ですね。
>>747
すんません。誤解与えちゃったみたいですね。 私は >>739 さんとは別人です。
>>743 さんのカキコに、つい横から反応しちゃったもので・・・ HDL記述の2byteCodeの件は知ってます。
0749774ワット発電中さん
2005/06/22(水) 23:04:22ID:Hha79Rv9それでカッコイイ!!っていうのも理解できん
0750774ワット発電中さん
2005/06/22(水) 23:24:50ID:66LG1gHp0751774ワット発電中さん
2005/06/22(水) 23:29:06ID:wqXcHBAC正確性を期すなら仕様書にきっちり書け
0752774ワット発電中さん
2005/06/22(水) 23:38:21ID:3JyUAAcLclk _| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|
reset ____________| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
q _____________| ̄|_______________
上のようなクロック入力に対してリセット後1クロックのみ検出する信号qの作り方教えていただけませんか?
宿題ができずに困っています。
お願いします。
0753752
2005/06/22(水) 23:41:34ID:3JyUAAcLリセット後最初のclkを1パルス分のみ検出したいのですが。
お願いします
_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄| clk
____________| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ reset
_____________| ̄|_______________ q
0754774ワット発電中さん
2005/06/23(木) 00:06:54ID:kGTJLsAvうーん、これは難しい問題だな。
そもそも こんな難しいのをVerilogで書けるのかぁ?
0755774ワット発電中さん
2005/06/23(木) 00:30:37ID:uHTIDPbdどこまで調べてどこまで考えたのか晒せや
0756774ワット発電中さん
2005/06/23(木) 01:37:16ID:ssvNblqJ転がってませんか?
フリーだと嬉しいんだけど…
0757774ワット発電中さん
2005/06/23(木) 03:34:52ID:ChU/fL9Oalways@(posedge clk, negedge res ) begin
if( !res ) begin
counter <= 0;
gate <= 0;
end else begin
if( !counter ) begin
counter <= counter + 1;
gate <= 1;
end else begin
gate <= 0;
end
end
end
リセット後2クロック目でひげが出るかな?
0758774ワット発電中さん
2005/06/23(木) 05:14:35ID:BHwfbCsYそれだけでは仕様が不十分
resetは非同期リセットと同期リセットのどっち ?
非同期の場合、clkの立ち上がりと resetの立ち上がりが
同時に起きた場合 qをどう出力すればよいか ?
またresetの立ち上がりから qの highパルスを出力する
まで何クロックのディレイが許容されるのか ?
qはそれ以降の回路でクロック信号として使用されるのか ?
qは clkの highと同じ幅でなくてはならなのか ? 1 clk周期
ではいけないのか ?
さあ、答えれ
0759774ワット発電中さん
2005/06/23(木) 06:50:18ID:qlXt37Qj0760774ワット発電中さん
2005/06/23(木) 11:19:49ID:2f3SJtDp0761774ワット発電中さん
2005/06/23(木) 12:14:47ID:TmPaPWlD0762757
2005/06/23(木) 15:50:51ID:5qFT/Ks/module OneShot( clk, res, gate, gate2, oneshot);
input clk, res;
output oneshot;
output gate, gate2;
reg gate, gate2;
reg [3:0] counter;
assign oneshot = clk & gate & gate2;
always@(posedge clk, negedge res ) begin
if( !res ) begin
counter <= 0;
gate <= 0;
end else begin
if( !counter ) begin
counter <= counter + 1;
gate <= 1;
end else begin
gate <= 0;
end
end
end
always@(negedge clk, negedge res ) begin
if(!res ) begin
gate2 <= 0;
end else begin
if( counter ) begin
gate2 <= 0;
end else begin
gate2 <= 1;
end
end
end
endmodule
立下りでgate2をOffにした。
論理合成はXST、スパ3で273MHzで動くそうな。タイミングシミュレーションもOK
0763757
2005/06/23(木) 16:01:23ID:5qFT/Ks/oneshotが出力
0764774ワット発電中さん
2005/06/23(木) 16:35:32ID:fpaEQY/+条件はとりあえずパルスは1クロックだろうという事で設計してみました。
entity plus is
Port (clk : in std_logic;
rst : in std_logic;
one_plus: out std_logic
);
end plus;
architecture Behavioral of plus is
signal mode : std_logic;
begin
process(clk)
begin
if(clk = '1' and clk'event) then
if(rst = '0') then
mode <= '0';
one_plus <= '0';
else
if(mode = '0')then
one_plus <= '1';
mode <= '1';
else
one_plus <= '0';
mode <= '1';
end if;
end if;
end if;
end process;
end Behavioral;
0765774ワット発電中さん
2005/06/23(木) 16:48:58ID:pAFX2Btt0766774ワット発電中さん
2005/06/23(木) 16:57:16ID:fpaEQY/+男は黙って答えを書く。
0767774ワット発電中さん
2005/06/23(木) 18:45:47ID:TmPaPWlDPort (clk : in std_logic;
rst : in std_logic;
one_plus: out std_logic
);
end plus;
architecture Behavioral of plus is
signal mode : std_logic_vector(1 downto 0);
begin
process(clk)
begin
if(clk = '1' and clk'event) then
if(rst = '0') then
mode <= "00";
else
mode <= mode(0) & rst;
end if;
end if;
end process;
one_plus <= mode(0) and not mode(1);
end Behavioral;
0768752
2005/06/24(金) 03:32:55ID:9W82ArECVerilogできねえ奴はスッコンデロ。
アフォか?ホンマに
0769774ワット発電中さん
2005/06/24(金) 05:26:55ID:SF7gkNx80770774ワット発電中さん
2005/06/24(金) 07:23:03ID:LMTTDyXo色んな機能が動かなくないですか?チュートリアルを見てやりだしたんだけど
snapshotとか全然効かないし、timing reportが出てこない。
0771774ワット発電中さん
2005/06/24(金) 09:02:56ID:WGCpiX+W0772774ワット発電中さん
2005/06/24(金) 09:50:15ID:TWmzq/xc大事なのはやり方を覚えることなんだし。
簡単な例だし、ちょうどイイ機会じゃないか?
0773752
2005/06/24(金) 11:50:15ID:4zIlwy/D嫌だね。
お前らみたいに下請けの零細企業になんか就職する気はさらさらないから、両方こなす必要なんてまったくない。
もう大手に就職が決まってるんだよ。まぁ、お前らに仕事振ってやるからありがたく思えよ。
0774774ワット発電中さん
2005/06/24(金) 12:15:19ID:SF7gkNx8おまえは研修期間に逃げ出すだろ、どうせ。
っていうか、おまえの上司になる人間がこのスレにいるかもよw
0775774ワット発電中さん
2005/06/24(金) 12:18:12ID:xbY7Umqv0776774ワット発電中さん
2005/06/24(金) 12:21:15ID:7PgQ3B9c偽者な悪寒
最近質問者に成りすますアホをよくみかけるキガス
0777774ワット発電中さん
2005/06/24(金) 12:40:44ID:HdLZliaP0778752
2005/06/24(金) 12:46:54ID:4zIlwy/Dクソ宿題だと?
じゃ、コード晒せ。それも出来ずにお笑いなんだよアホが!
0779774ワット発電中さん
2005/06/24(金) 14:37:05ID:SF7gkNx8いいたい意味がわからん。
774(俺)は773に向けて書いたんで、752になりきろうとか思ってないんだが。
0780774ワット発電中さん
2005/06/24(金) 14:54:35ID:nloQe5rE0781774ワット発電中さん
2005/06/24(金) 15:36:58ID:vu0ro+8Yあの超絶ワケワカランAAではサッパリ?だ
0782774ワット発電中さん
2005/06/24(金) 16:22:12ID:1SWoqVpN0783774ワット発電中さん
2005/06/24(金) 18:12:16ID:TWmzq/xc方法がわかってるなら何でも書ける。わかんなきゃ何やってもダメ。
宿題は考えてやるんだよ。考えるのは頭。頭は生きてるうちに使う物だ。がんばれ。
0784774ワット発電中さん
2005/06/24(金) 18:18:35ID:1SWoqVpN何をわけわからんこと書いてるんだ?
お前こそがんばれや。
0785774ワット発電中さん
2005/06/24(金) 19:50:19ID:SF7gkNx80786774ワット発電中さん
2005/06/24(金) 20:56:08ID:pOB0xwE8そんなもん無くても構わないだろ、本人が宿題っていっているんだし。
0787774ワット発電中さん
2005/06/24(金) 21:45:43ID:4PHoRlc30788sage
2005/06/24(金) 23:43:12ID:N9s+7dXzreg ff1, ff2;
always@(posedge clk or negedge xrst)
if(!xrst)begin
ff1<=1'b0;
ff2<=1'b0;
end
else begin
ff1<=datain;
ff2<=ff1;
end
assign q=~ff2 & ff1;
endmodule
ここまで書いてて気づいた。
入力はresetかー。こりゃ、俺にははかけないや。
だれか答えを俺にも教えて。
0789774ワット発電中さん
2005/06/25(土) 00:28:47ID:Il+q3Oehinputclk, xrst;
outputq;
regq;
regq_mask;
always @(posedge clk or negedge xrst) begin
if (!xrst)
q <= 1'b0;
else if (xrst == 1'b1 && q == 1'b0 && q_mask == 1'b0)
q <= 1'b1;
else
q <= 1'b0;
end
always @(posedge clk or negedge xrst) begin
if (!xrst)
q_mask <= 1'b0;
else if (q == 1'b1)
q_mask <= 1'b1;
else
q_mask <= q_mask;
end
endmodule
0790758
2005/06/25(土) 01:50:29ID:RRAZhokE実装することはできないんだが、本物の >>752 は
どこ行った ?
しょうがないからとりあえず、以下の仮定をする。
(1) resetは clkに非同期。
(2) clkの立ち上がりとresetの立ち上がりが同時に
起きた場合 (正確には、使用するフリップフロ
ップの setup timeと hold timeの間に resetの
立ち上がりがあった場合)は出力 qはそれ以外の
場合より遅れてもよい。
(3) resetの立ち上がりから qの highパルスまでは
できる限り短い時間で出力すること。
(4) qはそれ以降の回路でクロック信号として使用さ
れない。
(5) q の high幅は 1clk周期とする。
以下次号
0791758
2005/06/25(土) 01:51:25ID:RRAZhokE(6) resetにグリッチはないものとする。
(7) モジュール名は mkpulseとする。
(8) Verilog-HDL (RTL)で記述すること。
(9) 負論理なのに resetという名前はいやらしいが、
そういう仕様なので従う。
以下次号
0792774ワット発電中さん
2005/06/25(土) 01:53:01ID:TsEjQbYg0793758
2005/06/25(土) 01:55:27ID:RRAZhokEreset,
clk,
q
);
input reset; // Active-low asynchronouse reset
input clk; // Using positive edge
output q; // Pulse width is one clock cycle
reg delay1reset;
reg delay2reset;
reg delay3reset;
// Synchronize asynchronous reset signal
always @(negedge reset or posedge clk) begin
if (~reset)
delay1reset <= 1'b0;
else
delay1reset <= 1'b1;
end
always @(posedge clk) begin
delay3reset <= delay2reset;
delay2reset <= delay1reset;
end
// Make one clock cycle width pulse for rising edge of delay2reset
assign q = ~delay3reset & delay2reset;
endmodule
以下次号
0794758
2005/06/25(土) 01:56:06ID:RRAZhokE仮定をしたが、今のところそのような指定はない。
よって resetは clkに同期していると仮定することも
できる。
すると、以下次号
0795758
2005/06/25(土) 01:58:27ID:RRAZhokEreset,
clk,
q
);
input reset; // Active-low synchronouse reset
input clk; // Using positive edge
output q; // Pulse width is one clock cycle
reg delay1reset;
always @(posedge clk)
delay1reset <= reset;
// Make one clock cycle width pulse for rising edge of reset
assign q = ~delay1reset & reset;
endmodule
以上
0796774ワット発電中さん
2005/06/25(土) 02:17:58ID:qLwyTd700797火魔人
2005/06/25(土) 04:37:57ID:4D+YN02Ainitial begin
q = 1'b0;
end
always @(posedge reset) begin
@(posedge clk) q = 1'b1 ;
@(posedge clk) q = 1'b0 ;
end
合成できる物って言ってなかったから・・・
0798774ワット発電中さん
2005/06/30(木) 20:38:43ID:cTpDojFz`define STATE1 3'b000
と
parameter STATE1 3'b000
はどう使い分ければいいのでしょうか?
parameterだとモジュールごとに同じのを書かないとだめみたいだし、
`defineだとレオナルドでは警告がでたし、
同じ定義を複数のモジュールやファイルで共用はできないのでしょうか?
0799774ワット発電中さん
2005/07/01(金) 11:46:24ID:Gq1lU/Xfparameterを別のファイルに書いて、`includeで読み込むようにしてたよ。
今はVHDLなんで使ってないが。
0800774ワット発電中さん
2005/07/01(金) 18:00:38ID:4oZSX0ys0801774ワット発電中さん
2005/07/01(金) 19:29:01ID:UB9KQarK0802774ワット発電中さん
2005/07/01(金) 21:09:25ID:4oZSX0ys0803774ワット発電中さん
2005/07/01(金) 21:49:57ID:UB9KQarKNatural, Positiveなどあるがいずれも31bitまで。
0804774ワット発電中さん
2005/07/01(金) 22:39:15ID:4oZSX0ysしょうがないから単純なカウンタなんで
std_logic_vectorにします
0805774ワット発電中さん
2005/07/01(金) 23:05:14ID:6YAH5rTH試せると思うが。
やらないと言う事じゃ所詮その程度の知力と能力しかない証拠だわな。
0806774ワット発電中さん
2005/07/02(土) 00:27:55ID:naY8xhRTそこまでは試して31ビットまでは動くことがわかったけど
論理合成で蹴られる理由がわからなくて
もしかして言語仕様かと思ったらあらやっぱりみたいな・・・
0807774ワット発電中さん
2005/07/02(土) 00:36:30ID:GL5nQR4k0808774ワット発電中さん
2005/07/02(土) 00:43:23ID:naY8xhRTそんなところで引っ掛かると思ってないから
スマソ
0809774ワット発電中さん
2005/07/02(土) 08:39:25ID:Zjc91X2Tしかし、これで学習しただろう。
このスレに圧倒的に多いパターンなので萎えまくりだが。
0810774ワット発電中さん
2005/07/02(土) 18:59:32ID:aRXfQTr10811774ワット発電中さん
2005/07/03(日) 20:48:47ID:BJiFlm7C読んでないけど、Integerは32bitとして扱うツールが一般的、って話じゃなかったっけ?
VHDLとしては。
0812774ワット発電中さん
2005/07/04(月) 00:40:48ID:29+tKHsl一般的じゃなくてVHDLの仕様ですね。
0813774ワット発電中さん
2005/07/04(月) 01:27:25ID:3sPfcV160814774ワット発電中さん
2005/07/04(月) 01:45:54ID:/UNyKoG70815774ワット発電中さん
2005/07/04(月) 10:01:40ID:YFhH4slBそれは合成ツールの仕様なんじゃないの?
0816774ワット発電中さん
2005/07/04(月) 10:55:30ID:xEY162hW1のLibero 6.0って所に登録してCDが来るまで待たなきゃいけないんですかね…
できてばDL版が欲しいのですが
0817774ワット発電中さん
2005/07/04(月) 11:53:18ID:QhGD2vPGVerilogのfunctionに相当する書式がVHDLにあるか?
0818774ワット発電中さん
2005/07/04(月) 12:11:26ID:Ij/MgU4Mサブプログラムじゃだめ?
0819774ワット発電中さん
2005/07/04(月) 17:28:51ID:FQoAvdtf0820774ワット発電中さん
2005/07/04(月) 21:08:40ID:K2+JnxjRVHDLだとそれが出来ないってことやね。
0821774ワット発電中さん
2005/07/04(月) 21:35:22ID:mFXlXXTDiverilog いいお。
つ ttp://www.ice.gunma-ct.ac.jp/~kimsyn/verilog/FreeSim/iverilog/iverilog.html
0822774ワット発電中さん
2005/07/05(火) 01:05:45ID:iMF+7k6+おれも普段つかってるよぉ。
あとは文法チェッカがあればのぉ、できればPC-UNIXとWinで使える奴…
0823774ワット発電中さん
2005/07/05(火) 07:45:17ID:EV2MvFVzハァ?まったく違う
0824774ワット発電中さん
2005/07/05(火) 10:07:24ID:VfZmOgLGなんだ、戻り値が一個欲しいんじゃないのか(w
0825774ワット発電中さん
2005/07/05(火) 11:24:35ID:C/UCYGWV0827774ワット発電中さん
2005/07/05(火) 23:49:48ID:4WUJ+4FQ非同期のFFを記述すればVerilogの不完全さがよく解る。
>>820には理解不能だろうけどね。
でも、現実社会では好みと仕事に応じて好きな方を選べばいい。
0828774ワット発電中さん
2005/07/05(火) 23:58:05ID:hhh9apiQ別に言語の優劣の話ではなくて、>>813の話を受けてVHDLのはまりやす
い点を挙げただけだと思うけど。
出来る出来ないの話ならどちらかというと分が悪いのは・・・
0829774ワット発電中さん
2005/07/05(火) 23:58:47ID:bVnJSGyJ0830774ワット発電中さん
2005/07/06(水) 00:10:09ID:JKUczYPV0831774ワット発電中さん
2005/07/06(水) 00:30:40ID:PBXbLLS3なにかな。
0832821
2005/07/07(木) 20:33:45ID:2EifYSI9学生さん?かな。 今後のことを考えるのであればメジャーなシミュレータにも慣れておいたほうがいいかも。
Model-Simとか。
0833774ワット発電中さん
2005/07/07(木) 23:21:28ID:IJfAtQBC素質無し。
既にエンジニアと言い張るなら辞めた方が良い低レベル。
0834774ワット発電中さん
2005/07/08(金) 13:55:10ID:/Zw+xZjk0835774ワット発電中さん
2005/07/08(金) 13:56:30ID:/Zw+xZjk0836774ワット発電中さん
2005/07/08(金) 20:39:21ID:J+I8gBZp0837774ワット発電中さん
2005/07/08(金) 20:42:58ID:O7AOTj/2罵倒するやつにはさせとけばいい。
>>833
わざわざ糞忠告するぐらいならその間に答え書いてやれ。
それが嫌なら、何も書き込む必要は全くない。別にお前に聞いてるわけじゃねえ。黙ってな。
0838774ワット発電中さん
2005/07/08(金) 22:48:43ID:ofL5amLB自分で自分の道を拓けぬ者は、人の親切を簡単に無駄に出来る奴だ。
何を言われるか解らないからそんな的外れなレスを返すのだろうね。
そろそろ気付いたらどうだ自分の無能に。
0839774ワット発電中さん
2005/07/08(金) 22:55:08ID:O7AOTj/2そろそろ気付いたらどうだ自分の糞ぶりに
0840774ワット発電中さん
2005/07/08(金) 23:45:53ID:ofL5amLB真摯な意見を聞く勇気がない者は改善も無理だろうね。
0841774ワット発電中さん
2005/07/09(土) 00:36:36ID:EdHgZlXPそろそろゴミは死ねや!
0842774ワット発電中さん
2005/07/09(土) 10:31:30ID:75PwG5FO0843774ワット発電中さん
2005/07/09(土) 12:18:21ID:7VfOAgWB漏れの知人はいまだに頭の病気で入院中なのだが
0844774ワット発電中さん
2005/07/09(土) 21:26:32ID:xG9jSyxv大丈夫。
ナガシマさんだって復活したんだ!
0845774ワット発電中さん
2005/07/10(日) 11:00:57ID:C0xlfYHCFPGAの評価基板でやってるんだけど、トップモジュールで
module test(CLK,SIGOUT)
input CLK;
reg count = 0;
output SIGOUT;
always @ (posedge CLK or negedge CLK)
count <= 〜count;
・・・後略
とやると count <= 〜count;のラインで
The logic for <count> does not match a known FF or Latch template.
というエラーが出るんだけど何故でしょう。
always @ (posedge CLK)にすると大丈夫なんですが。
お願いします。
0846774ワット発電中さん
2005/07/10(日) 11:23:58ID:66iy9pzT0847論理合成版「孫子」
2005/07/10(日) 13:55:03ID:p8SrZu5+0848774ワット発電中さん
2005/07/10(日) 14:07:40ID:2MKTggdHXilinxには、両エッジFFがあったと思うぞ。
全てのデバイスにはないと思うけど
0849774ワット発電中さん
2005/07/10(日) 15:45:50ID:8oXrPuTZ0850774ワット発電中さん
2005/07/10(日) 20:29:47ID:Q0c6Q6wf0851845
2005/07/11(月) 05:15:38ID:ZDld/4j6でも、他の場所では、使えるたりするんですが、何しろまだ始めたばかり
なんで、いろいろ模索中。
>>848
Spartan-3なんですが、データシートとか読んでいたら、IOブロックは、
二つのFFを組み合わせてDDR用に両エッジ使えるようにしてあると書いてありました。
>>849
あ、本当はcount <= count + 1;とかやって、いたんですが、いろいろ実験
中で。
0852774ワット発電中さん
2005/07/11(月) 13:01:01ID:C0RpkdSn寺で普通のLEで両エッジなんて無かったような。財はあるの?
846の通り、教えてやるしかないんじゃない?
0853774ワット発電中さん
2005/07/11(月) 13:34:37ID:VcyrKdD9>でも、他の場所では、使えるたりするんですが、
他の場所って何なんだよ。
立ち上がりと立下りをひとつのalwaysに書いて一体どこの会社の製品がが論理合成できるのか言ってみろや。
0854774ワット発電中さん
2005/07/11(月) 14:27:20ID:biAEerWT0855774ワット発電中さん
2005/07/11(月) 22:51:04ID:ek6Ebflc0856774ワット発電中さん
2005/07/12(火) 00:00:37ID:+fG7zAXH>立ち上がりと立下りをひとつのalwaysに書いて一体どこの会社の製品がが論理合成できるのか言ってみろや。
845じゃないが、普通にできると思うが。XSTやSymplifyでもできる。
できないのは845にあるように両エッジをクロックエッジとして使う場合。
これはいままで合成するツールは見たことが無い。
845さん、Spartan−IIIのDDRレジスタをつかうなら、残念だけれどプリミティブライブラリ
(FDDRSE)とかを使いな。残念ながら合成はできないんだよ。
0857774ワット発電中さん
2005/07/12(火) 01:46:29ID:1cgUSnqllatchとかって使えるの?
チップの入出力がF/Fじゃなくて
Latch構成のものって言われたんですが、、作れるのか不安
0858774ワット発電中さん
2005/07/12(火) 09:04:31ID:BGTRq6vo>845じゃないが、普通にできると思うが。XSTやSymplifyでもできる。
あのなぁ
always@(posedge A, negedge B)
はできて当たり前だろうが。そんなことをわざわざ書き込むな。
俺は >>845の
always@(posedge A, negedge A)
を言ってるんだ。
>できないのは845にあるように両エッジをクロックエッジとして使う場合。
クロックかどうかは関係ないね。一般に信号線に対して合成できないんだ。
0859774ワット発電中さん
2005/07/12(火) 09:10:18ID:BGTRq6vonegedge A と posegde Aで処理が独立してる(それぞれ別のレジスタに出力する)場合。
always@(negedge A)
alwasy@(posedge A)
と独立させれば、合成可能だ。
0860774ワット発電中さん
2005/07/12(火) 09:34:28ID:bnsCC1Rn全てのFPGAで可能かどうかは知らんがXILINXは可能。
別の答えとしてDFF+ゲート回路でgated D latchを作れるよな。
0861774ワット発電中さん
2005/07/12(火) 10:33:36ID:AGOdb+2hD-latchのマクロがあるならそれを構造記述で
インスタンスする方法もあるだろうし、
D-FFとMUXの組み合わせでD-latctと同様の動作をする
合成可能な回路を記述することもできるし、
いろいろやり方はあるけど。
0862774ワット発電中さん
2005/07/12(火) 11:34:38ID:gzKS2aJ/大昔の知識で喋るな。たとえば剤でFDDを推論させるために
always @ (posedge C or negedge C) begin
Q <= D;
end
という実例がライブラリガイドに載っている。
Dual edge FF を推論させるにはこう書くしかないから、
今は書けるようになっているのが普通だ。
0863774ワット発電中さん
2005/07/12(火) 12:01:55ID:BGTRq6vo実際7.1のXSTとSynplify 8.1でやってやるからデバイスとオプションを書けや。
それと合成できるというならそのソース示せや。ライブラリじゃなくな。
0865774ワット発電中さん
2005/07/12(火) 12:14:01ID:BGTRq6voalways@( posedge A, negedge A ) begin
C <= ~B;
end
その場合のXSTは
The logic for <C> does not match a known FF or Latch template.
でエラーだ。
0866774ワット発電中さん
2005/07/12(火) 12:18:53ID:uwnjmqUs0867774ワット発電中さん
2005/07/12(火) 12:24:06ID:OUt/xt3H素直に2倍クロックでやればいいじゃん
0868774ワット発電中さん
2005/07/12(火) 12:28:23ID:BGTRq6voC <= ~B;
end
はクールランナーではそのまま合成できるようだな。オプションもデフォでOKだった。
http://edaboard.com/ftopic105815.html
0869774ワット発電中さん
2005/07/12(火) 12:38:04ID:BGTRq6vo>>862
逃亡か?さっさとソース示せや。
0870774ワット発電中さん
2005/07/12(火) 12:56:32ID:gzKS2aJ/おまえさんの主張が >858 から >869 まで矮小化してくれれば
俺としては必要十分なんでこれ以上何か書くことはない。すまんね。
0871774ワット発電中さん
2005/07/12(火) 13:02:14ID:BGTRq6voFPGAではライブラリを使わず合成するHDL記述法は全く一般的ではないのに、
何を戯言ほざいてるんだ?CPLDの世界でチマチマ生きとれ。
>今は書けるようになっているのが普通だ。
普通ねー。FPGAではすべてエラーになるのに普通か?
これは、現時点でクールランナーだけはそういう書き方が許されていると表現するんだ。
一部で局所的に成立することを全体がそうであるように言うなアホが。
0872774ワット発電中さん
2005/07/12(火) 17:34:06ID:ZlBvECkI0873774ワット発電中さん
2005/07/12(火) 18:51:18ID:uRSf/uPG0874774ワット発電中さん
2005/07/12(火) 18:53:28ID:OUt/xt3H0875774ワット発電中さん
2005/07/12(火) 21:12:40ID:bnjcyq7P私のために喧嘩はやめて
0876774ワット発電中さん
2005/07/12(火) 23:36:10ID:CbBtYPpt0877774ワット発電中さん
2005/07/13(水) 00:24:48ID:0RHL68ir0878774ワット発電中さん
2005/07/13(水) 01:15:44ID:TgJ2B+vs0879774ワット発電中さん
2005/07/13(水) 16:19:17ID:d/JO85hT0880774ワット発電中さん
2005/07/13(水) 16:46:34ID:cHpl5gAj0881774ワット発電中さん
2005/07/13(水) 17:27:54ID:JIV4AdAm2値でレベルが変化するってことは信号のエッジが必ずできるってことだよな?
俺としてはalways(A)と書くんじゃなくて
function foo;
assign binbin = foo(A);
とかして組み合わせ回路にしちゃう。
0882774ワット発電中さん
2005/07/13(水) 17:38:07ID:d/JO85hT0883774ワット発電中さん
2005/07/13(水) 19:35:17ID:Nlbzabenalways@(edge A) と記述したいのでは?
0884774ワット発電中さん
2005/07/13(水) 22:16:52ID:JIV4AdAmLo->Hiで1回
Hi->Loで1回
それぞれ回るだけだが何か?
always@(A) begin
counter <= counter + 1;
end
だろ?
0885774ワット発電中さん
2005/07/13(水) 23:08:35ID:c0mOAYNS0886774ワット発電中さん
2005/07/14(木) 00:27:04ID:wW0Ea4ib0887774ワット発電中さん
2005/07/14(木) 02:12:18ID:rPDoDQn0ゆとり教育の弊害なのかな・・・
学生だったら別にいいんだが、社会人だったら君ヤバイ、やばすぎるよ。
あと1年ぐらいはちゃんと設計してからココに書きなよ。
0888774ワット発電中さん
2005/07/14(木) 03:15:26ID:d5PMNJZ30889774ワット発電中さん
2005/07/14(木) 06:55:45ID:Gb0w2QKU釣りなのか? だったらここの住人を見くびりすぎ
マジなのか? だったらスゲェ珍獣を発見した気分 ププ
0890774ワット発電中さん
2005/07/14(木) 08:34:45ID:7IXFkLf+VHDLで同じことを考えれば、すぐに分かるのに
0891774ワット発電中さん
2005/07/14(木) 10:08:53ID:ZN8fEffoA' event and (ここをどう記述する?)
0892774ワット発電中さん
2005/07/14(木) 10:52:46ID:ypsQmtw+ただそんな石がないっちゅうだけやねん
0893774ワット発電中さん
2005/07/14(木) 14:10:00ID:Gb0w2QKUシミュレーションする行為って意味ないよな
0894774ワット発電中さん
2005/07/14(木) 14:40:24ID:ypsQmtw+熱意が世界を切りひらくんやで
…って宇宙人がゆうとった
0895774ワット発電中さん
2005/07/14(木) 22:57:49ID:7IXFkLf+event を使わない記述をすればOK
0896774ワット発電中さん
2005/07/15(金) 21:04:26ID:0UzEDW/c>物理的に理不尽な状況をシミュレーションする
とは具体的にどういう状況?
0897774ワット発電中さん
2005/07/15(金) 21:28:58ID:Gd7IDYGM詭弁の特徴だな。
0898774ワット発電中さん
2005/07/15(金) 21:30:31ID:grUx+8Ou工エエ(´Д`)エエ工
0899774ワット発電中さん
2005/07/15(金) 21:33:36ID:0UzEDW/c具体的にというのは、実際のデバイスでいうとどのようなケースなのかという意味です。
今の流れから考えると「両エッジで動作するシミュレーションには意味がない」と言いた
いのかな?
まさかね・・・
0900774ワット発電中さん
2005/07/15(金) 23:04:29ID:Kv4+qPAjレベルと両エッジを同じものと考えるのは理不尽だよなって流れだろ
ププッ
0901774ワット発電中さん
2005/07/15(金) 23:35:40ID:0UzEDW/c0902882
2005/07/16(土) 00:31:26ID:8vEt7zJD大漁
0903774ワット発電中さん
2005/07/16(土) 01:59:39ID:T5Rg3XaQ>両エッジってつまりレベルやん
ギャッハハハ
間違いにようやく気づいてやんの。大笑
そして見苦しい
0904774ワット発電中さん
2005/07/16(土) 11:50:16ID:SFjO8flDalways @(posedge a or negedge a)
と
always @(a)
はどちらが良いですか?
0905904
2005/07/16(土) 11:55:11ID:SFjO8flD思ったので。的外れだったらすんまそん
0906774ワット発電中さん
2005/07/16(土) 21:47:24ID:NAMFUaRB0907774ワット発電中さん
2005/07/17(日) 16:07:57ID:64bfE5tuだから、VHDL使えと何度言わせれb
0908774ワット発電中さん
2005/07/17(日) 23:49:34ID:9FYnYPei0909774ワット発電中さん
2005/07/18(月) 04:53:15ID:cA2cTElP0910774ワット発電中さん
2005/07/18(月) 14:48:12ID:W8ro3qzU0911学生
2005/07/18(月) 16:54:47ID:vh1ICOVpWarning: Design contains 14 input pin(s) that do not drive logic
となるのですがどうすれば動くのでしょうか?
出力波形も出ないのですが、、、
0912学生
2005/07/19(火) 00:47:48ID:/HmVcs/q0913774ワット発電中さん
2005/07/19(火) 00:49:45ID:ZVv5JVsO0914774ワット発電中さん
2005/07/19(火) 01:23:00ID:S3EZyh6uソースさらせや。
0915911
2005/07/19(火) 01:34:29ID:6rAB43cm0916774ワット発電中さん
2005/07/19(火) 01:46:07ID:EYS770us信号の状態流れを直接記述出来る言語は今のところVHDLだけです。
どっちが良いとか言わないがそれを解ってないお前はかなりの馬鹿だね。
0917774ワット発電中さん
2005/07/19(火) 07:37:11ID:GnIAr5ZR>信号の状態流れを直接記述出来る言語は今のところVHDLだけです。
お前がVHDLしか理解できてないことがよくわかった。
くだらんこと取り上げてVHDLがあたかも優位であるような主張するとはマヌケの極みか?
死んだらどうよ?
0918774ワット発電中さん
2005/07/19(火) 09:18:17ID:rLNouXCV死ぬまで悩んでいなさい。
たぶんコードが正しく書かれていないので入力ピンが無効化されている。
シミュレーションの入力データはどうやって作ったかわからんが信号名が間違えている事も考えられる。
14本だと両手じゃ足りないんだろうな。
まず最初はアンドゲート1つだけで確認してみると井伊かも。
片手で間に合う本数だとできるかもよ。
0919774ワット発電中さん
2005/07/21(木) 00:02:42ID:KemUW8Cg理解してないのはお前ではないか?
間抜けだなぁ。
0920774ワット発電中さん
2005/07/21(木) 00:26:06ID:duQ1SQQ1煽りを入れるには未熟すぎて自滅と。(w
夏にはありがちな光景ですが。
0921654
2005/07/21(木) 00:32:41ID:CFOsondZ0922774ワット発電中さん
2005/07/21(木) 01:10:34ID:KemUW8Cg0923774ワット発電中さん
2005/07/21(木) 13:12:48ID:JUESr40s>間抜けだなぁ。
>馬鹿が居なければそうなるのにね。
すなわちお前がいなければこのスレが建設的になるってことだな。
夏厨がこのスレに書き込むな。早く宿題仕上げて。ママのおっぱいのんでねんねしな。
0924774ワット発電中さん
2005/07/21(木) 20:17:33ID:MTviURZX罵倒語レスを無視しつつ、建設的なレスを書ける人がいれば
建設的なスレになるんだがな。結局、無理なんだわ(w
0925774ワット発電中さん
2005/07/21(木) 22:58:01ID:KemUW8Cgご自分のレスをよく見ましょうね。
頭の宜しそうな紳士様。(ゲラ
0926774ワット発電中さん
2005/07/21(木) 23:02:35ID:IgH9tXshVerilogも勉強しといた方が良いですか?
0927774ワット発電中さん
2005/07/21(木) 23:25:53ID:IjhOegXT0928774ワット発電中さん
2005/07/21(木) 23:42:28ID:IgH9tXshがんがります
0929774ワット発電中さん
2005/07/22(金) 00:13:50ID:cgWqWP/a>間抜けだなぁ。
>馬鹿が居なければそうなるのにね。
>頭の宜しそうな紳士様
じゃまだよお前。
0930774ワット発電中さん
2005/07/22(金) 00:20:53ID:Tuh8Jsq8多くのネラーはそう思ってる。
つまらない話題を引っ張るなら何か有意義なネタでも投入すればヒーローなのに
何やってるの?
0931774ワット発電中さん
2005/07/22(金) 00:24:36ID:5ZUy12FIお前も邪魔。
>>930
お前も引っぱりすぎ。
両方氏ね。一緒に逝ってやるから。
0932774ワット発電中さん
2005/07/22(金) 00:48:20ID:Tuh8Jsq8良いから何かネタをくれよ。
0933774ワット発電中さん
2005/07/22(金) 00:55:58ID:IT8SpgdD夏になったら湧くのはいつものことだから。
放置が特効薬だと思うわ。
0934774ワット発電中さん
2005/07/22(金) 01:06:56ID:Tuh8Jsq8他の板と同じになったら嫌だよね。
0935774ワット発電中さん
2005/07/22(金) 03:08:04ID:xF7oJS150936774ワット発電中さん
2005/07/23(土) 01:03:30ID:uzsEbpJM0937774ワット発電中さん
2005/07/23(土) 05:24:25ID:ogtiTd3mCLAを実装するのは面積的にも速度的にも無駄」
という記述を見たのですが、具体的によく分かりません。
とりあえず切っ掛けだけでも構いませんので
御指導頂けると有り難いのですが。
0938774ワット発電中さん
2005/07/23(土) 09:33:30ID:OAhy7nRgCLA = carry look ahead ってのは理解してる?
最近のCPLD/FPGAは、ロジックセルに加算器のためのキャリー専用パスを
持ってたりするから、HDLで A <= B + C みたいな書き方した方が
一般に良い結果が得られるぞ
0939774ワット発電中さん
2005/07/23(土) 13:49:25ID:SOVJbdin次のように、CHRCDEに入力した8bitのデータを前後にstart bit (1bit)と
stop bit (2bit)をつけて11bitにしてシリアルに連続して出したい
のですが次のモジュールを合成すると、入力がアースに落とされた形に
されてしまうのですが、どうしてでしょうか?ちなみに、XilinxのWebPACK7.1i
を使ってます。
module chargen(CLKIN, READY, CHRCODE, SEND, SIGOUT);
input CLKIN;
input READY;
input [7:0] CHRCODE;
input SEND;
output SIGOUT;
reg [10:0] charout ;
reg bitout = 1;
always @ (posedge CLKIN) begin
if(READY) begin
if (SEND) begin
charout = {2'b11,CHRCODE,1'b0};
bitout = charout[0];
charout = charout >> 1;
charout = {bitout,10'b0} | charout;
end
end else
bitout = 1;
end
assign SIGOUT = bitout;
endmodule
0941774ワット発電中さん
2005/07/23(土) 17:49:26ID:yhOh4SI3このスレとっとと埋めきっちまおうぜ。
>>939
alwaysのなかでブロッキング代入をわざわざ使う意味は?
0942774ワット発電中さん
2005/07/23(土) 18:40:42ID:uzsEbpJMつまらん提案は無用。
0943774ワット発電中さん
2005/07/23(土) 22:29:26ID:ogtiTd3mありがとうございます
0944774ワット発電中さん
2005/07/24(日) 01:08:58ID:OMFCtNMb最近はそういう書き方が流行ってるんでしょうよ。
0945774ワット発電中さん
2005/07/24(日) 01:23:33ID:LCgX1MLG0946774ワット発電中さん
2005/07/24(日) 02:20:20ID:P1GRkTNYif(いべんと)then
if(hen1=1)then hoge<=1;
end if;
if(hen2=1)then hoge<=0;
end if;
end if;
こんな記述に遭遇して、ただでさえ不慣れなVHDLに混乱しました。
この場合、hen2=1は、hen1=1に対してelsifで書けばいいと思うのだけど、
こういう書き方はふつうにあるんですか?
0947774ワット発電中さん
2005/07/24(日) 03:57:53ID:kh98zOhF趣味の問題とみるが。
0948774ワット発電中さん
2005/07/24(日) 07:21:10ID:LCgX1MLGelsifで書くと全くロジックが変わってくる。
つまり、
hwn1==1 かつ hen2 ==1 が成立する場合でもhoge <= 0にしたいんじゃないのか?
0949946
2005/07/24(日) 11:01:34ID:P1GRkTNYそれぞれがend if;で閉じてあることに違和感あったので…
一回のいべんとで、hen1=1とhen2=1が両方成り立つ場合、
hogeは式の優先順位から1になるのか、
それともふたつとも実行されて0になるのかで悩んでました。
>948
>hwn1==1 かつ hen2 ==1 が成立する場合でもhoge <= 0にしたいんじゃないのか?
え?? こうなるとは思ってもみませんでした。
ということは、
hen<= hen2 & hen1;
if(いべんと)then
if(hen="01")then hoge<=1;
elsif(hen="10")then hoge<=0;
elsif(hen="11")then hoge<=1;
end if;
end if;
と同じ回路だということでしょうか?
0950946
2005/07/24(日) 11:09:07ID:P1GRkTNY(明日やってみます)
>>944
まじですか?
それとも、嘘を嘘と(ry ですか??
もひとつ重ねて質問なのですが、
このスレでageられるソースにおいて、変数に「hoge」が多用されるのは何故でしょうか。
メソ?
0951774ワット発電中さん
2005/07/24(日) 13:58:43ID:odUXUlSqHDL以前に通常のプログラム言語で
if(A) {
}
if(B){
}
と
if(A){
}else if(B){
}
の違いがわかってないよ。シミュレーションして試行錯誤的に進めるんじゃなくて
もいちど教科書読め
0952774ワット発電中さん
2005/07/24(日) 14:34:49ID:P1GRkTNYありがとうございます ノシ
C言語で
if(A) {
}
if(B){
}
こう書かれたらどう動くはわかるのですが、
HWの記述ではひとつのいべんとがどこで終わるのか迷っておりました。
私が持ってる本ではこういう書き方がなかった……
ちょっと本屋で立ち読みしてきます
0953774ワット発電中さん
2005/07/24(日) 21:37:16ID:XsYkfhxJ0954774ワット発電中さん
2005/07/24(日) 22:24:13ID:P1GRkTNYありがとうございます ノシ
コンカレント文で、該当の例文も発見しました…が、やっぱよくわからん。
また後で来ます。ありがとうでした。ノシ
0955774ワット発電中さん
2005/07/28(木) 12:52:37ID:CQeF8FfS0956774ワット発電中さん
2005/07/29(金) 00:09:12ID:aL3NfPg30957774ワット発電中さん
2005/07/29(金) 21:39:19ID:U6VPTzd00958774ワット発電中さん
2005/07/29(金) 23:12:47ID:b8w75VJ60959774ワット発電中さん
2005/07/30(土) 02:40:21ID:Un4xNoi90960774ワット発電中さん
2005/07/30(土) 16:01:39ID:+uPhI5Uziverilogは内部コマンド外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。
とのエラーメッセージが出ます。
どうしたら改善されるでしょうか?
0961774ワット発電中さん
2005/07/30(土) 22:00:28ID:wK9JL26l0963774ワット発電中さん
2005/07/31(日) 23:00:49ID:HJEqkn1U0964774ワット発電中さん
2005/07/31(日) 23:56:16ID:jlkS/dls0966774ワット発電中さん
2005/08/02(火) 23:14:14ID:gVAOvRTc【PALASM】記述言語で論理設計 Project3【ABEL】
0967774ワット発電中さん
2005/08/02(火) 23:49:35ID:S+jApFx50968774ワット発電中さん
2005/08/03(水) 00:31:20ID:ItlmCma/記号が意味を表すなら、MIL も言語か?
0969774ワット発電中さん
2005/08/03(水) 01:00:18ID:hrwqnBBhを書き込む為の記号列全般を指すと思われまつ。
0970774ワット発電中さん
2005/08/03(水) 02:34:34ID:Lw9Hhzg50971774ワット発電中さん
2005/08/03(水) 05:58:17ID:AmPhC6LI0972774ワット発電中さん
2005/08/03(水) 16:01:39ID:+j9VL7VVFPGA
QuickLogic http://www.quicklogic.co.jp/
30日間無料だと思った。ワンタイムだけどね・・・
ASICベンダ推奨ツール類(高価)
Synopsys http://www.synopsys.co.jp/
Cadence http://www.cadence.co.jp/
Mentor http://www.mentorg.co.jp/
Synplicity http://www.synplicity.jp/
Verilogシミュレーター(無料)
Icarus http://icarus.com/
説明 http://ryusai.hp.infoseek.co.jp/icarus.htm
http://www.ice.gunma-ct.ac.jp/~kimsyn/verilog/FreeSim/iverilog/iverilog.html
IVI http://ivi.sourceforge.net/
説明 http://www.kumikomi.net/article/explanation/2005/10icarus/01.html
VCDフォーマットの波形表示(無料)
GTKWave http://www.cs.manchester.ac.uk/apt/projects/tools/gtkwave/
説明 http://ryusai.hp.infoseek.co.jp/gtkwave.htm
http://www.is.kyusan-u.ac.jp/cgi-bin/is-admin/wiki.cgi/CAD?page=GTKWave
まとまってないな・・・スマソ
0973774ワット発電中さん
2005/08/03(水) 16:42:25ID:9DDqUxcA手続き面倒そうだけど・・・
0974774ワット発電中さん
2005/08/03(水) 19:53:55ID:ItlmCma/時系列が1つであるという制約を含めるか、それとも含めないか?
0975774ワット発電中さん
2005/08/04(木) 00:01:24ID:dlVi4p0Jそういう期限付きの場合は,
PCのカレンダを逆戻しすれば永久に使えるんですか?
0976774ワット発電中さん
2005/08/04(木) 12:18:16ID:xehSMnll0977774ワット発電中さん
2005/08/04(木) 12:20:44ID:om0dcdEJ0978774ワット発電中さん
2005/08/04(木) 12:33:30ID:s631+9r4ワロタw
0979774ワット発電中さん
2005/08/04(木) 19:31:13ID:3oQBzdw6128とかじゃないところがプロだと思う。
> PCのカレンダを逆戻しすれば
戻し忘れていったん過ぎるとどっかにフラグが立つから、
インストール時に10年ぐらい進めておけ、とか聞いたことがある。
0980774ワット発電中さん
2005/08/04(木) 21:27:04ID:6UXr7D/U0981774ワット発電中さん
2005/08/04(木) 21:28:07ID:6UXr7D/Uちなみに980超えると、24H保守しなかったときに落ちるよ。
0983774ワット発電中さん
2005/08/05(金) 01:30:08ID:6g3dJonXじゃ、いまから挑戦してみます@スレたて。
0984983
2005/08/05(金) 01:37:30ID:6g3dJonXhttp://science3.2ch.net/test/read.cgi/denki/1123173110/l50
にて立てました。
埋まり次第 or 消滅したら移動ということで…
テンプレもろもろは変更なしです。
修正などは追加お願いします。
0985774ワット発電中さん
2005/08/05(金) 02:39:57ID:S/8CQFE30986774ワット発電中さん
2005/08/05(金) 11:58:38ID:s5EzACSV0987774ワット発電中さん
2005/08/05(金) 11:59:24ID:s5EzACSV0988774ワット発電中さん
2005/08/05(金) 12:00:15ID:s5EzACSV0989774ワット発電中さん
2005/08/05(金) 12:01:14ID:s5EzACSV0990774ワット発電中さん
2005/08/05(金) 12:02:29ID:s5EzACSV0991774ワット発電中さん
2005/08/05(金) 12:03:29ID:s5EzACSV0992774ワット発電中さん
2005/08/05(金) 12:04:17ID:s5EzACSV0993774ワット発電中さん
2005/08/05(金) 12:05:07ID:s5EzACSV0994774ワット発電中さん
2005/08/05(金) 12:05:38ID:s5EzACSV0995774ワット発電中さん
2005/08/05(金) 12:06:10ID:s5EzACSV0996774ワット発電中さん
2005/08/05(金) 12:12:11ID:hUxbyFKX0997774ワット発電中さん
2005/08/05(金) 12:13:52ID:hUxbyFKX0998774ワット発電中さん
2005/08/05(金) 12:14:43ID:hUxbyFKX0999774ワット発電中さん
2005/08/05(金) 12:15:39ID:hUxbyFKX1000774ワット発電中さん
2005/08/05(金) 12:16:12ID:hUxbyFKX10011001
Over 1000Threadもう書けないので、新しいスレッドを立ててくださいです。。。
レス数が1000を超えています。これ以上書き込みはできません。