【Verilog】記述言語で論理設計 Project2【VHDL】

このエントリーをはてなブックマークに追加
1792= ◆YMO/ALTERA
HDLの処理系も、それを実際に動かすシミュレータ・評価基板も
安価で入手できるようになってきました。

このスレが目に入ったおまえ! HDLで何か作って遊んでみませんか。

日曜工作のHDL書き、学生さん、プロの方、カキコお待ちしております。
関連情報は >>2-10 あたり。

前スレ
【Verilog】プログラムで作る回路 Project1【VHDL】
http://science3.2ch.net/test/read.cgi/denki/1072330555/l50
2 ◆YMO/ALTERA :04/09/03 12:21 ID:p+kby74r
関連スレ
【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/
3774ワット発電中さん:04/09/03 12:42 ID:/IhaXLhF
>>1 乙
不調なのにご苦労様。体調気を付けてね。
4& ◆t58k6Wvkqk :04/09/03 21:30 ID:6pUqcTox
VHDL-AMSのいい本ありますか?教えて
またVerilogのVCDフォーマットみたいなやつ、VHDLにはないの?

あまり、ソースがないので、困っています。
5774ワット発電中さん:04/09/03 21:42 ID:DudfWI6n
>>1

6774ワット発電中さん:04/09/04 00:36 ID:E9wuijWn
Actel社のホームページはこちら
http://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
7774ワット発電中さん:04/09/04 00:59 ID:E9wuijWn
FPGAインフォメーション
http://www.fpga.co.jp/top.html

FPGA評価ボードを多く販売してる有限会社ヒューマンデータのHP
評価ボードの回路図も公表されているので、FPGAを使った試作ボード
の設計にとても参考になります。
http://www.hdl.co.jp/home.html
8 ◆YMO/ALTERA :04/09/04 01:31 ID:QbgqDZwn
thx>>6-7

私はアマチュアなので知識が偏ってます。
あとは裏方に回らせてください( ´∀`)
9774ワット発電中さん:04/09/04 01:34 ID:oLE/jva2
>>6
仕事で一度は使ってみたいと思いつつ、デリバリーや性能の点で
選外になるんだよね・・・。

書き込みや、ツール問題さえなければ趣味で使ってみたい石ではある。
1010:04/09/04 22:11 ID:QbgqDZwn
10!!!!!
11774ワット発電中さん:04/09/05 16:02 ID:vdefAcEs
configROM内蔵のFPGAっていいなぁ・・・とか思っていたら、
ALTERAが出しちゃった。新しいCPLDだって言い張ってるけど。
12774ワット発電中さん:04/09/06 12:26 ID:HY2eBUQJ
>>11
俺も初めて聞いたときには笑った。思わず営業の人に「何これ?」って聞いちゃいました。
13774ワット発電中さん:04/09/06 20:43 ID:UUmwitZG
ちなみにActelは出してるんだよね。前から。
14774ワット発電中さん:04/09/06 21:24 ID:I1N0glls
>>13
只ツールと只ライターが無ければホビーユーザーとしては魅力無しだわ。
15774ワット発電中さん:04/09/06 22:17 ID:UUmwitZG
だいぶ前だけど、タダツールはもらったよ。郵送で。
一番下のヤツしかコンパイルできんかったような。
使えそうもないし、そもそもデバイスが入手できるかワカランし、
結局インストールもしなかった。
16774ワット発電中さん:04/09/06 22:34 ID:I1N0glls
問題はライターだよね。
コンパイル出来ても結果をDL出来なければアウト。
17774ワット発電中さん:04/09/09 22:01 ID:uzq2T1ji
configROM内蔵のFPGAて
config中はI/Oピンはやっぱりハイインピーなのかな?
システムリセットは電源監視ICだけじゃダメってこと?
SRAMベースのFPGA初めてつかって回路組んだけど、苦労したところだったもんで。
リセット回路はなんとかなったけど、
config中はI/Oピンはハイインピーになること後で知ってプルアップ抵抗追加した。
MAX2だと、そんな苦労しなくても済んだのかも?と思ってたもので。
18774ワット発電中さん:04/09/09 23:46 ID:h30ugBA2
>>17
微妙かも。
でも、リセット時Zになっていてくれた方が良い場合もあるから何とも言えないかなぁ。
19774ワット発電中さん:04/09/10 00:18 ID:naQwL9dP
LE2000程度の容量の最も低速なグレードのFPGAだったらデバイスそのものは
3k程度で手に入るけど、configROMやら、コア電源用レギュレータやらで
スペース取られて、しかも部品代が結局合計1万円コースになってしまう現状
からすれば、configROM内蔵のFPGAは、結構使いやすいし安上がりと思う。
20774ワット発電中さん:04/09/10 00:26 ID:7TpCfxag
>>19
漏れはこれを機に全品種ROM内蔵に移行して欲しい。
21初心者:04/09/10 22:00:43 ID:QC4CB+yJ
12BITのdataを5.5という数値で
割った答えを16BITで出力する回路を
考えています。

答えに少数点以下の数値がある場合は、
整数に繰り上げます。

例えば、
(簡単のため10進数で考えると)
答えが1.1なら   → 2とする
答えが1.000023なら → 2とする

といった具合です。


関係演算子「 >= 」と 加算演算子「 - 」を使って
解を求めようとしているのですが、

[ 000000111111 >= 5.5 ]
のような評価や
また、[ 000000111111 - 5.5 ]
のような計算が出来ません。


データタイプの異なるものに対して
どのようにしたら評価できるのでしょうか?

どうか教えて下さい。

22774ワット発電中さん:04/09/10 23:50:59 ID:mkow8z/r
>>21
マルチポストする奴には知っていても教えない。
23774ワット発電中さん:04/09/11 00:29:43 ID:lj2zL9W3
12BITのdataを5.5という数値で
割った答えを16BITで出力する回路を
考えています。

答えに少数点以下の数値がある場合は、
整数に繰り上げます。

例えば、
(簡単のため10進数で考えると)
答えが1.1なら   → 2とする
答えが1.000023なら → 2とする

といった具合です。


関係演算子「 >= 」と 加算演算子「 - 」を使って
解を求めようとしているのですが、

[ 000000111111 >= 5.5 ]
のような評価や
また、[ 000000111111 - 5.5 ]
のような計算が出来ません。


データタイプの異なるものに対して
どのようにしたら評価できるのでしょうか?

どうか教えて下さい。
24774ワット発電中さん:04/09/11 02:10:12 ID:tLWtgUc3
週末ですな。
25774ワット発電中さん:04/09/11 16:28:35 ID:SPowAtKy
>>21 >>23
教えて差し上げますので
どうかsageを覚えてくださいませ
mail欄に半角英で「sage」
そんだけです

貴方の挙げた数を例に取ると、
下位に一桁追加して
[0000001111110(63.0) >= 0000000001011(5.5)]
[0000001111110(63.0) - 0000000001011(5.5)]
でよろしいのではないでしょうか

ていうかお前
ageマルチポスト荒らしはヤメロ
あと12BITを5.5で割って整数に切り上げで出力なら
答は10BITで十分だろがこの水羊羹
26774ワット発電中さん:04/09/11 22:15:56 ID:m952+8TF
12BITのdataを5.5という数値で
割った答えを16BITで出力する回路を
考えています。

答えに少数点以下の数値がある場合は、
整数に繰り上げます。

例えば、
(簡単のため10進数で考えると)
答えが1.1なら   → 2とする
答えが1.000023なら → 2とする

といった具合です。

関係演算子「 >= 」と 加算演算子「 - 」を使って
解を求めようとしているのですが、

[ 000000111111 >= 5.5 ]
のような評価や
また、[ 000000111111 - 5.5 ]
のような計算が出来ません。


データタイプの異なるものに対して
どのようにしたら評価できるのでしょうか?

どうか教えて下さい。
27774ワット発電中さん:04/09/11 22:19:48 ID:fqPQb521
荒らすなボケ
28774ワット発電中さん:04/09/11 22:21:10 ID:N8gd9KNc
1/5 ≒ 1/8 + 1/16 + 1/128 ってのを思い出したが…
まぁここでは関係無いだろう…。

12bitだと4096-1までだから、4095/5.5=682.5。
だから10bitで十分。
2925:04/09/12 01:16:07 ID:qaDfhCoh
無視かよヽ(`Д´)ノ ウワァァァン!
30774ワット発電中さん:04/09/12 02:59:05 ID:xtfXZxqW
みなさんのお勧めの入門書をおしえてください。
31774ワット発電中さん:04/09/12 09:11:45 ID:+Tdr4uZy
>>30
Web上で手に入る入門書というより例文集といった感じであるが、
HDLコーディングスタイルガイド
http://www.teksel.com/actel/data/hdl.zip

Actel社提供だが、第二章はテクノロジに特化しないコーディングスタイル
で、基本ロジックがVHDL,Verilogの両方で書かれているのでとても参考に
なると思う。
3230:04/09/12 23:34:57 ID:xtfXZxqW
ありがとうございます。
じっくりみてみます。
33774ワット発電中さん:04/09/14 01:13:52 ID:/oyP7a6J
Pascal・Delphiて、HDL、特にVHDLにかなり似ているので驚いた。
ものの本にはVHDLはAdaが基になってると書いてあったけど。

http://www.w-frontier.com/delphi/2_koubun.html
http://www.w-frontier.com/delphi/tips.html

PIOボードやGPIBボードも多少機能制限あるがドライバ対応してるみたいだし
Delphiでもよさげな気がしてきた。
34774ワット発電中さん:04/09/14 01:28:17 ID:mHhWMXlG
>>33
趣味だとそれで良いのだが、仕事で使うと開発ツールを新規に購入
とか色々と問題があってなかなか導入に踏み切れない。

Delphiの良さは十分に理解してるが、MSの囲い込みにはやはり弱い。
35774ワット発電中さん:04/09/14 22:55:45 ID:LkeO8kTS
>>33
ここにADAのプログラムがちょこっと載ってた。
http://iip-lab.ics.es.osaka-u.ac.jp/people/inoue/program-sekkei-00.html
ほとんどVHDLそのままだな。
36774ワット発電中さん:04/09/14 23:00:06 ID:sVV72nl7
>>35
そりゃADAベースだから。
37774ワット発電中さん:04/09/16 00:32:10 ID:WJmyeviz
modelsim 6.0 からオープニングのサイが消えた
38774ワット発電中さん:04/10/04 22:57:35 ID:C093HSbr
>> 37
サイのアーモンド型のつぶらな目が大好きでした。
ありがとう。つぼはち
39774ワット発電中さん:04/10/09 09:27:36 ID:4n1MEssY
はじめての香具師はまず何をそろえるべきでしょうか?
40 ◆YMO/ALTERA :04/10/09 12:20:15 ID:jXoe4aZV
>>39
実際に動く評価基板があればそこから始められるんだけど、
シミュレータからだと、初心者には分かりづらいよね?

シムとかテストベンチから入った香具師の体験談きぼん
4139:04/10/09 17:29:05 ID:4n1MEssY
シム,テストペンチって何でしょうか?
42体験談1:04/10/09 19:08:35 ID:2q5Gawao
HDLはじめて2ヶ月です。
(ただしC言語は習得済みでした)

始めに、本を買いました。
CQ出版 改定入門Verilog HDL記述
CQ出版 HDLによる高性能ディジタル回路設計

ソフトは以下を揃えました。基本は無料ですよね。ホビーですし。
GPL cver (UNIX用フリーVerilogシミュレータ)
cygwinが入っていたので。根っこを学ぶ分にはGUIよりCUIのほうがいいこともあります。

ALTERA Quartus II Web Edition
XILINX ISE WebPack
 無料でつかえるソフトでは高性能、現実的だと思ったので。
 テストベンチかかなくてもいいですし。

まずは、googleさまのご神託と共に入力信号を反転させる回路を記述しました。
テストベンチを書き、cverで動作を確認。

導入からここまでで1週間といったところでした。つづく。
43体験談1:04/10/09 19:15:29 ID:2q5Gawao
>41
シム→シミュレータ
テストベンチ→自分が設計した回路をテストするための条件

42の例でいくと、

0秒目は入力Aに0を入力する
1秒目に入力Aへの入力を0から1に変える
2秒目でシミュレーション終了

・・・というのをVerilogとかで書いたものをテストベンチというですよ。

0秒目は出力Bに1が出ている
1秒目は出力Bが1から0に変化する
2秒まで出力Bは0のまま

という結果がでてくれば、期待通り(入力信号が反転している!)
というわけです。

というわけで、期待通りの動きをするかどうかを、シミュレータに(自分で書いた)
テストベンチと設計した回路(モジュールと呼びますね)を入力し、
出てきた結果を見て判断する、と。

これならお金はかかりません、ハラショー!というわけだ。
4439:04/10/09 19:23:35 ID:4n1MEssY
>>43
ご丁寧にどうもありがとうございます。
PCの環境はどのくらい必要ですか?
45体験談1:04/10/09 19:31:44 ID:2q5Gawao
>44
まあ、あればあるほど・・・というのが正直なとこですが、
ホビーなら自分が我慢できりゃなんでもいいかと思います。
ちなみに自分は

Win2000でモバイルセル論800MHz
WinXPでぺん3−833MHz(たしか

です。
46体験談1:04/10/09 21:19:30 ID:2q5Gawao
つづき。
で、cverからQuotasやISEに移行するのが結構大変でした。
というのも、PLD開発のフローや全体が見えていないとなにをやればいいのかサパーリ
だからです。

自分はそういう業界にはいって有識者に教えてもらうという手段をとれたので
なんとかクリアしましたが、孤高のホビーストだとなかなかそうもいかないかもしれません。

で、次に買った&お勧めなのは
CQ出版 FPGAボードで学ぶ論理回路設計

約1万円で本とFPGAボードが付いてくる、比較的お得なブツだと思います。

意外にパラレルケーブル入手で苦しみました。最近ってD-SUB同士のプリンタケーブルって売ってないのね・・・_| ̄|○

安価なボードがついてくるっていうのもありますが、具体的にファイルを作成して動作させるまで
細かく書いてあるので、初心者にはかなりオススメだと思っています。(個人的に)

そんなこんなで2ヶ月が過ぎ、いまは↑でMMCカードIFを作ろうとしてるとこです。
やっぱ外にマイコンがいるなぁ・・・ってとこでAVRやらH8やらの方面を勉強中。 いじょ。
47774ワット発電中さん:04/10/09 23:11:36 ID:aATjcLd4
>>46さん
>「以外に」パラレルケーブル入手で苦しみました。最近って
>D-SUB同士のプリンタケーブルって売ってないのね・・・_| ̄|○

そういうときは,RS-232CのDSUB延長ケーブルを買うんですよ.
もしくは全ピンストレートが必須だから,RS-1284対応LPTケーブルね.

48体験談1:04/10/10 00:37:21 ID:Ys2LJlJp
>47

あ。そうですねー、232C延長でよかったんですねぇ。
自分は案フェノール・DSUB変換買ってシマタ^^;

余談
予想外だったので「意外」だったのですよー

49774ワット発電中さん:04/10/10 01:37:29 ID:8dTR/5bB
どなたか教えてください。
Quartus2のWEBエディションって、ライセンスの関係でネットの最適化が出来ない(英語)
っていう警告が出ると思うんですが、正式版だと更に最適化されるんでしょうか?

MAX3000みたいなCPLDレベルでも恩恵ありますか?
50774ワット発電中さん:04/10/10 12:18:54 ID:8PLbdUW5
ノートパソコンでザイリンクスのダウンロードケーブルを繋ぎたいのですが
usbポートしかありません。USB-パラレル変換ケーブルは使えないと聞きました。
なんかいい方法ありますか?
51774ワット発電中さん:04/10/10 12:50:39 ID:MoJAHlCH
52774ワット発電中さん:04/10/10 13:42:33 ID:T9DWFpca
>51
ありがd!
53774ワット発電中さん:04/10/11 03:44:15 ID:xeLq7Qd+
とりあえずシミュレーションできればいいやって漏れにおすすめなの教えてください。
昔大学で使ったのが
・MAX-II plus
・verilog-XL / signalscan

この前、自宅ノートに入れたのが
・イカロス
です。
54774ワット発電中さん:04/10/11 10:01:31 ID:M7q7INtS
>>50
http://ppg.teldevice.co.jp/home/main/top/jtag-blazer.html \37,800-
PL-USB-BLASTER $300.00

又は10000円くらいで中古パソコンを買って、LANで繋ぐほうが安いかもしれん(w

55774ワット発電中さん:04/10/11 12:14:33 ID:CqJcDmy4
>>50

発売予定はまだ決まっていないが、もしかしたら年内には出るかも?

http://www.nahitech.com/ujstamp.html

56774ワット発電中さん:04/10/11 20:08:42 ID:tDHA8p0f
57774ワット発電中さん:04/10/12 12:58:15 ID:WjPYcMhU
>>53
Verilog-XLとSignalScanを使っていたのなら、それ級のシミュレータを探すとなると
ModelSIM-SEかAldecぐらいしか無いと思うよ。

とりあえず、Quartus2のシミュレータ使ってガッカリしなければそれで良いとは思うが
PLI-$dumpvars()でチェックをするようなことはできないから、物足りないと思う。

しかし、学生時代からその環境とはオッチャン、たまげた。
58774ワット発電中さん:04/10/16 01:22:28 ID:CT337dQ+
Quartus使いいますかー?
59774ワット発電中さん:04/10/16 15:51:05 ID:S2CLhXAT
ハーイ!
4.1+SP1
60774ワット発電中さん:04/10/16 15:59:29 ID:l+2u/uqg
ハーイ! 4.0 WE
61774ワット発電中さん:04/10/18 12:25:21 ID:wHQ4Zfl6
ハーイ!
4.1+SP2
62774ワット発電中さん:04/10/26 10:31:10 ID:BMKhVnfc
ハーイ!
4.1+SP2
63774ワット発電中さん:04/10/27 08:35:25 ID:Usb3PlRI
すいません。Design_Compilerについて質問させて下さい。

合成をしたところ トップモジュールにhigh-fanout-netが出てくるという
警告が出てしまいました(TIM-134)

しかしreport_netで各netのファンアウト数を見たところ
MaxFanoutでもせいぜい30程度でしかありませんでした。

これって合成用のライブラリがおかしいってことなんでしょうか?
それともreport_netでも出てこないようなnetが存在するということなんでしょうか?

どなたかご教授ください。よろしくお願いします。
64774ワット発電中さん:04/10/27 09:04:51 ID:B72sRQjQ
>>63

プロジェクト一式あぷすれ
65774ワット発電中さん:04/10/27 15:03:40 ID:2guEpE14
>>63
ピン名がだぶっていねぇか?
66774ワット発電中さん:04/10/28 07:22:55 ID:vVDjRy08
>>63
前スレや機械板で同じような質問があったが同一人物?
2ヶ月経ってまだ解決してないの?
http://science3.2ch.net/test/read.cgi/kikai/1056186047/452
67774ワット発電中さん:04/10/28 08:49:46 ID:rgTGjD4K
>>66
ワラタw
内容とageて質問しているとこから見て同一人物だろう。
仕事なのか学校の課題なのか知らんが、そろそろ対応しないとやばいんじゃねーか?w
68774ワット発電中さん:04/10/29 12:15:26 ID:nVG1/EOp
fanout 30もあったら十分 too high だと思ってしまう私は古い人間?
69774ワット発電中さん:04/10/29 18:20:53 ID:ZncUbX7p
>>67
やばいだろーな

てことで
set_max_fanout 4
とでもして合成してみれ.
それでWarning出なくなればfanout 30がtoo highってことだし
それでもWarning出れば何か他の原因.
原因の特定にはつながるだろ.
まずはそこから.

合成時のログとか状況とかもうちょっと詳しく.
論理合成は成功するのか,失敗するとすればどこでとまるのか,
合成前のfanout数とか,どこでWarning出るのかとか.今の情報量じゃぜんぜんワカンネ.
あと,質問する時はメール欄に半角英でsageと入れておくれ.
70774ワット発電中さん:04/10/29 22:36:09 ID: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;
71774ワット発電中さん:04/10/29 23:47:02 ID:JlMFQhLp
しくだい?
72774ワット発電中さん:04/10/30 02:30:38 ID:cBpw+6f8
>> A and B='1'の条件となるB

'1'では?


本でも買って、最低限の記述スタイルを覚えたほうがいいね。


73774ワット発電中さん:04/10/30 06:23:32 ID:D/FXDpkG
記述スタイルとして、インデントを使って見やすくしないと訳がわからなくなるよ。
74774ワット発電中さん:04/10/30 12:04:29 ID:aoR2DEqS
>>70
Verilog 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は別の名前にする必要があります。
7570:04/10/30 12:56:22 ID:yHiIm30z
>72-74
ありがとうございます。
入門書買って一から勉強してみます。
76774ワット発電中さん:04/11/05 01:01:44 ID:WexKwaKd
VHDLの質問にはならないのかもしれないですけど
CQ出版のFPGAボードで勉強してるんですが拡張コネクタの一つのピンから
16 bitデータを受け取るにはどうPinとノードを配置したら良いんでしょうか?
へたれなので出来のいい後輩が書いたソースを情けないやら悔しいやらで
話すすりながら打ち込んでます。
誰か教えてください。。。
77774ワット発電中さん:04/11/11 14:49:51 ID:dbWisPGL
>>64,65,66,67,68,69

おかげさまでなんとか解決しました。
余計な信号を削ってデザインを作り直して
バッファーツリーを多段に入れまくって
helpコマンドで何かのコマンドの説明見て
最後のほうにでてくるコマンドも片っ端から説明見て
set_fix_multiple_port_netsをcompile前に入れて
set_max_fanout の変数を変えまくって実行したら
なぜかうまくいきました。なぜうまくいったかはわかりません。
けどちょっと合成スクリプトを変えたりすると
Design "hogehoge" contains unmapped components.
とかいうメッセージが出てきたりしてこれは結局解決できませんでした。
ほんとやばかったです。
ご迷惑をおかけしました。
なにぶんひどい開発環境(むしろ私の頭脳?)なもんでして、
どんなコマンドがあるとかそういうのが全くわかりませんでした。

あと質問あるときはsageるのが常識みたいですね、知りませんでした。
すいません
78774ワット発電中さん:04/11/12 05:49:24 ID:wUOQPMwr
Quartus使いの方いらっしゃいましたら誰か教えて下さい。

Tutorial見てても多層化されたVerilogのモジュールを一切使っては
いませんでしたが。やっぱ平坦なファイルしか使用できないのでしょうか?
それともプロジェクトに追加しさえすればBlock Diagram上に表現されて
ないVerilogファイルでも他のモジュール内のサブモジュールとして
利用できるのでしょうか?誰か教えて下さい。
79774ワット発電中さん:04/11/12 21:51:45 ID:bejicOFZ
>>78
Verilog歴3ヶ月の俺が言うのもなんだけど、Quartusは関係無い。
Verilogの入門書でも読んでみて下さい。
「下位モジュールの呼び出し」とかっていうようなタイトルでも付いてると思います。
構文は、 「 下位モジュール名 インスタンス名 (ポートリスト) 」 って感じです。
80774ワット発電中さん:04/11/13 00:46:01 ID:nTHXHrfX
>>77
> バッファーツリーを多段に入れまくって

手で入れたの?
ご苦労さん。
81774ワット発電中さん:04/11/13 09:04:57 ID:nKM6sARJ
>>78

Quartusでもできます。普通です。

2ファイルくらいのコードで試してみたら?
同じディレクトリに入れて、トップをコンパイルすれば、分かるよ。
82774ワット発電中さん:04/11/13 23:27:14 ID:UmZlR5Kg
>>77 >>80
状況にもよるのかもしれんが、普通は手で多段ツリーなんて入れんと思うがなぁ
クロックツリーバッファを手で一段入れたり、必要なドライブ能力を考えてI/Oセルを
自分で置いてset_dont_touchとかはやるけど

というか、変な小細工する前に文法チェッカーかけるか、詳しい人に
ソースと .synopsys_dc.setup を見てもらうべきかと
83774ワット発電中さん:04/11/14 20:36:00 ID:mI/nMcZv
ホビーユースでVerilogをやりたいんですけど、Xilinxのスターターキットあたりを買えば大丈夫でしょうか?
84774ワット発電中さん:04/11/14 23:03:04 ID:EfVrCvdC
>83

とりあえずVerilogを覗くだけなら

ALTERA Quartus II Web Edition http://www.altera.co.jp/
XILINX ISE WebPack http://www.xilinx.co.jp/

(>2 より抜粋)
書いたVerilogのコンパイルとシミュレーションまで無料できるから、
とりあえずこれためすべし。

評価ボードに手を出すのはそのあとでいいかもよ?
評価ボードもピンキリだし、人によって欲しいボードも違ってくるだろうから・・・

とりあえず買ってみて考えるってのも俺は好きだ! ホビーユースだしね
仕事だったらとりあえず買うなんてやったら殺されるなきっとw
85774ワット発電中さん:04/11/15 00:09:12 ID:58mcQWc1
>> 84
ありがとうございます。
言葉が足りなかったみたいですみません。

とりあえず、Verilogは昔大学でやってて、
1〜5万ゲートぐらいの設計をヘタレなりにやってたんですが、
久々にやってみたくなってw
当時、ソフトとボード与えられて、適当にやってたんで、
自分でやるとなると何を買えばいいか分からないんでお聞きしたいんですが、
Xilinxのスターターキットは論理合成から実体配線まで制限なしにできるんでしょうか?
調べたんですが、いまいち分かりません。
別に効率の良い合成は必要ありません。
Xilinxのスターターキット程度のものを買っておけばしばらくは遊べますでしょうか?
86VHDL入門者:04/11/15 12:34:03 ID:Ro2/ofki
ちょとVHDLについて教えてもらいたいことがあるのですが…
CASE文で条件式中のビットの一部に不定のXを入れた場合は
どうなるのですか?
例えばwhen"011X"=>PORT1<="0010"
とした場合、0111及び0110両方で条件が成り立つのか、それとも
Xは0か1どちらも問わないものだとソフトが判断して0111か0110の
どちらかに固定されてしまったりするのですか?
教えてください…
87774ワット発電中さん:04/11/15 14:21:07 ID:HGhJspiK
>86
CQ出版のFPGA評価キットやxilinxの評価キットのISE(webpack)で実配線(フロアプラン作成のこと?)まで可能です。jtagで実機に書くことも可能です。

来月のデザインウェーブマガヅンにspartan-3が付いて2000円だそうです。
周辺をちょっと自力で作らなくちゃいけませんが、1万円程度のスターターキットを
買ってHDLだけの開発にがんがるか、DWMを買って半田付けからがんがるか迷ってください。

仕事で800万ゲート×4って言う開発してましたけど、この規模になったらfoundationかなと思いますが、それ以外ならフリーツールで十分かと
思います。

個人的にはステートマシンの記述が楽チンなvisualeliteとかsimplifyproとかがフリー版(機能限定でもいいから)で出てくれれば裾野が広がると思うんですけどねえ・・・

88VHDL入門者:04/11/15 16:53:36 ID:Ro2/ofki
答えになってませんYO!!
89774ワット発電中さん:04/11/15 17:38:20 ID:o3waSicM
90774ワット発電中さん:04/11/15 21:43:08 ID:X2lqkume
>>86
素直に考えれば、固定しない方が何かと都合がいいから、そうなると思うけど・・・・
実際エラー出ない? とある本では「書けないからifでやる」とある。

91774ワット発電中さん:04/11/15 22:11:30 ID:j8LiZ9Yi
>>86
う〜ん・・・、そう書きたいの分かるけど、コンパイラとかによっては変な事起きるかも
しんないから俺はやらない。
経験少ないからあんまり自信無いけど、Q2 はダメだった気がする。
9283:04/11/15 22:21:40 ID:58mcQWc1
>>87,89
どうも、親切にありがとうございました。

私程度の人間だとフリーソフトで十分みたいですね。
半田ごてでがんがるか、どうするかもうちょっと悩んでみますw
9391:04/11/15 22:23:49 ID:j8LiZ9Yi
補足、かえって見難くなるかもしれんが、俺の場合こんな記述したりしてる。
if の方がマシかもしれんが・・・。

case inp_d(3 downto 1) is
  when "011" => port1 <= "0010";
9493:04/11/15 22:38:26 ID:j8LiZ9Yi
し、しまった。下げ忘れた。 orz
95774ワット発電中さん:04/11/15 23:05:02 ID:8s3R1jw3
>>93
011Xの時は最下位ビットは見ないけど、
他の条件では4ビット全部指定有なんて
場合は記述がごちゃごちゃしそうかも。

96774ワット発電中さん:04/11/15 23:24:30 ID:Frcp5IfW
> とある本では「書けないからifでやる」とある。
VHDLの仕様とか書いてある
97774ワット発電中さん:04/11/15 23:28:14 ID:piNJXvJA
質問する前にVHDLの仕様書や参考書ぐらい調べるのが礼儀じゃないのか?
只のシミュレータもネットで拾えるんだから幾らでも現実に試す手段もあるのに
なんでやれば出来ることを質問するのか?
頭悪すぎる。
98774ワット発電中さん:04/11/16 17:52:38 ID:mHpeKD1Y
いいじゃねぇか、ネットで聞いて教えてくれる人が居るなら手間省けるし。
答えるのが嫌なら無視しろよ。誰もお前に教えてやれとは言ってない。
99774ワット発電中さん:04/11/16 19:15:45 ID:KYTfYzfB
しかしまあ、あの質問内容だったらコンパイルするなり
コンパイルが通るならシミュレーションで走らせれば
すぐわかりそうなものだけどね。
100774ワット発電中さん:04/11/16 20:42:14 ID:33hBiAMN
そんな香具師にFPGAは使いこなせねべ
101774ワット発電中さん:04/11/17 21:18:46 ID:yyLVKGbC
動いたら勝ち
102774ワット発電中さん:04/11/18 00:09:15 ID:HJWhAI8f
でもたいていは動かないしデバッグもできないので負け
103774ワット発電中さん:04/11/18 01:48:04 ID:vvRIFlue
俺も初めの頃、ライブラリ入れれば、ifでstd_logic_vectorを右辺整数で比較等できるのに
caseでは比較できない点に、子一時間ペリー著など調べたことがあった。

今となってはトラブルの無い冗長な記述命。。
逆に文法やパーサの推定なんぞで悩む時間が欲しい。。



104774ワット発電中さん:04/11/18 14:18:23 ID:AWHw443v
比較演算子は多重定義可能だが、予約命令は多重定義できないから?
105774ワット発電中さん:04/11/19 22:51:30 ID:lVfxyT21
VHDLで質問なのですが、
generic文でフレキシブルなモジュールを作ったんです。
で、
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バージョンを個別モジュールで作ったんですが、なんだか
スマートじゃないなぁと。みなさんはこういう状況でどうします?
106VHDL入門者:04/11/20 16:03:33 ID:9bzit/Ah
あの〜実際のところ、Web PackのVHDL記述した回路→実際の回路への変換
性能はどうなんでしょうか?
case文で記述すると、本来なら数個のロジックで出来た筈の回路が巨大に
なってしまいます。これは論理圧縮の性能が悪いで結論付けられるので
しょうか?
107774ワット発電中さん:04/11/20 16:06:17 ID:3+/xvP4k
>>106
まずそのVHDLの記述をうpしてはどうでしょうか?
108774ワット発電中さん:04/11/21 01:11:56 ID:CvmGB45X
>>105
なんのツールではじかれたのでしょうか?
メッセージはなんてでたのでしょう?
109105:04/11/22 20:41:41 ID:yuDkLbxk
>108さん
ツールはModelSimPE 5.5fです。
メッセージは以下のようなものでした。
# ERROR: C:/.../xxx.vhd(yyy): Type error resolving index expression.

いろいろと読んだりぐぐったりしてはいるんですが、
C++みたいにモジュールの多重定義ができたりはしなさそうですね>VHDL,Verilog
なんか悔しい。
110774ワット発電中さん:04/11/22 23:29:01 ID:3fUDtwhF
>>106
仕事でも出張先とかでWEB版使ったりするが、圧縮率が悪いって気になった事無いけどなー。
case文の記述が悪くて変な回路合成してたりしない?
111774ワット発電中さん:04/11/23 00:30:48 ID:Uu37W0gn
無料のWEBPACKも高いISE FOUNDATIONも、論理合成エンジンは同じXSTだから
合成結果は同じだと思うのだが。

実際に、200kくらいの設計を
WEBPACKとFOUNDATIONの両方で合成させてみて、
出来上がったbitファイルを比べてみると、全く同じになった。
112774ワット発電中さん:04/11/23 01:58:01 ID:jDHJzlXQ
てことは対応デバイスの違いぐらいなのかぁ・・・
ホビースト的には嬉しいけどw

なんかつくりてー でも時間が無い・・・くそぉ
113774ワット発電中さん:04/11/23 02:41:25 ID:+8rPSg/0
Coregenが違うんじゃないの?
ISE もQuartusも ReedSolomonも Turbo符号もエンコーダ、デコーダともワンタッチで出来上がる。
これさえあればほとんどの人はちょこちょこしたグルーロジックさえ組めば何もしなくていいんじゃないの?
114774ワット発電中さん:04/11/23 11:24:47 ID:Uu37W0gn
確かに。違うのはCoregenとFPGAエディタと使えるデバイスの種類だけだと思う。
FPGAエディタは、WebPACKだとCLBの配置配線が見えるが、有料版だとCLBの中身まで見える。
エディタとはいっても、配置配線を眺める以外には使わない。
それ以外のアクセサリは使ったことがない。
115774ワット発電中さん:04/12/05 23:27:03 ID:D48nht+a
else だ 馬鹿!
ifじゃねえ
116おっくん:04/12/08 01:32:41 ID:o90pAHBO
LFSR回路のモジュール教えてもらえませんか?4ビットのやつ記述したんですが、テストベンチの方のエラーが消えなくて…
117774ワット発電中さん:04/12/08 02:30:45 ID:3/jHyzfD
フィードバックのところだろ?
そこは非同期にすること。
118おっくん:04/12/08 17:32:54 ID:o90pAHBO
すいません自分バカなんで…もう少し詳しく教えてもらえますか??
119774ワット発電中さん:04/12/08 23:38:18 ID:h3Q60i2F
assign fb = sftreg[2] ^ sftreg[1] ^ sftreg[0];

always @(posedge clk ) begin
sftreg[3:0] <= {sftreg[2:0], fb};
end
120774ワット発電中さん:04/12/09 13:12:05 ID:PKxLhrMJ
すまんが、どこが非同期なのか詳しく
121774ワット発電中さん:04/12/09 17:20:02 ID:Kr5JHULq
always @(posedge clk ) begin
sftreg[3:0] <= {sftreg[2:0], fb};
fb <= sftreg[2] ^ sftreg[1] ^ sftreg[0];
end
と書くな!ということでは?
122774ワット発電中さん:04/12/09 17:30:11 ID:XFlGTW3n
fbの代入部分にラッチでも出来ちまうのかな?
123774ワット発電中さん:04/12/10 02:50:22 ID:ZeW55erk
>>122
禿げしく勉強不足
124いつでもどこでも名無しさん:04/12/10 10:49:52 ID:L1pP5+7W
always @(posedge clk ) sftreg[3:0] <= {sftreg[2:0], ^stfreg[2:0]};

でいいじゃん。

125774ワット発電中さん:04/12/10 11:04:56 ID:9pKzODtz
>>124
???
126774ワット発電中さん :04/12/10 14:26:49 ID:FTUB//os
ちょっと聞きたいのですが、VHDLで角度から三角関数値を
計算するときはどうすればいいのでしょうか?
テーラー展開くらいしか思いつかなかったのですが、別の方法があるのでしょうか?
よろしくお願いします。
127774ワット発電中さん:04/12/10 14:32:19 ID:ggxWYBJE
128774ワット発電中さん:04/12/10 15:00:30 ID:OiC2Pd3i
FPGAなら内部メモリをROMとしてテーブルを置くのが早い。
あとは超簡単なDSPを手組みして教科書に載ってるのアルゴリズムを
色々と試してみる。
129774ワット発電中さん:04/12/10 15:47:23 ID:h8OSbmQL
こーなったらわかる人はLFSR回路の全モジュールのっけて下さい!!テストベンチのモジュールも(>_<) よろしこ
130774ワット発電中さん:04/12/10 16:54:16 ID:hHajYQvZ
>>126
FPGAで三角関数計算するのはCORDICが良かった。テーラー展開なんか目じゃない
CORDICでぐぐると結構サイトがある
131 ◆YMO/ALTERA :04/12/10 17:42:32 ID:05T4jUYi
いま考えると、CORDICはFPGAに実装しやすいね。
大昔68kに実装したときにバレルシフタがうらやましかった、マジ。


でも、用途に依るがテーブル引いて線形補間で問題なかったりしない?
132774ワット発電中さん:04/12/10 17:56:05 ID:hHajYQvZ
テーブル+線形補間でほとんどの場合問題ないとは思うが、昔メモリが高かったころはcordicは重宝したと思う
今でも一度身に付けると一生もんだよ。といっても、便利がいい方法だけど、あまり知られていないんだよね
日本語の本が一松信先生のしかないし、この本がまたわかりにくいってことはあるけどね
133774ワット発電中さん:04/12/10 19:26:56 ID:VJM7nC7A
math_real
134774ワット発電中さん:04/12/10 20:07:34 ID:dDoj+5Na
組込み系ソフトウェアなんかでも、三角関数を テーブル参照+線形補間 で済ませてしまえる
場合が多い。 FPGAのアプリだと尚更その傾向が強いような気がするんだけど・・・
FPGA使った計算で、そこまで精度が必要な用途って何か聞いてみたい。
135774ワット発電中さん:04/12/10 20:20:22 ID:znfqrlxa
↑ふむ、電圧位相と電流位相差比べて、どっちにどれだけ電気が流れているか調べるためだとおもた
で、ATANとSQRTが必要で、平方計算はどうしてもどこかでやらなきゃいけないので、えいやっとまとめてCORDICした
136134:04/12/10 20:44:04 ID:dDoj+5Na
>>135
あ、なるほど、計測用途ね。 レスサンクス。
137774ワット発電中さん:04/12/10 21:00:49 ID:tGVCILbQ
verilogを使わないといけないことになったんですけど
入門用のおすすめの本かwebページありませんか?
138774ワット発電中さん:04/12/10 21:28:52 ID:sFg4l3eg
cordicか
http://www.andraka.com/files/crdcsrvy.pdf
これでいいの?
あとIEEE 1364 Verilog2001 spec 転がってるとこない?
手に入れた奴はフォントがないのかFigのタイトルとかがちゃんと表示されない。
2001になってめちゃくちゃ便利になってるジャン。見落としてた・・・
139774ワット発電中さん:04/12/10 21:48:31 ID:znfqrlxa
↑こんなのです。他にもいくつかあった
日本語でcordicの原理を解説したのもあった。(今年の7月ごろ)
140 ◆YMO/ALTERA :04/12/10 21:56:50 ID:05T4jUYi
>>132
さっきぐぐったときは、読めば実装できるCORDICの文献が、
日本語のモノで多数転がってった。

当時、私も一松先生の教科書を見て実装しますた。
141774ワット発電中さん:04/12/10 22:27:59 ID:znfqrlxa
漏れは当時8008に実装しようと頑張ったが、読解力が足らなくてできなかった
実は、いまだに良くわかってないのだが。汗

142超初心者:04/12/10 22:41:14 ID:mA4gxR8R
cosineのテーブルが欲しいんですけどVHDLってテーブルは(変な言い回しになりますが)1個ずつ
書かなきゃいけないんでしょうか?ええとつまりc言語の配列見たいに
array[N] = {....}みたいな風にすっきり書けないんでしょうか?教えて下さい。。。
143774ワット発電中さん:04/12/11 00:45:23 ID:PWbGlx7X
ここの配列タイプ
ttp://www.picfun.com/vhdl36.html
144126:04/12/11 02:04:34 ID:eGzACmSM
CORDICっていうのがあるんですね。
ぐぐったらたくさん出てきました。
1周期を1024分割したのでROMでもいいのですが、計算法があるというのがわかっただけでも勉強になりました。
ありがとうございました。
145774ワット発電中さん:04/12/11 09:51:24 ID:HoQLAUdK
↑CORDICは1970年代に当時の低速デバイスのころに開発された技術です
それがFPGAになってまた活躍しているのは喜ばしい限りです
ぜひ、活用してください
146774ワット発電中さん:04/12/11 13:34:40 ID:grQkrB75
>>142
昔、寺のEABにテーブル突っ込むのに、C言語(MS-C かなり古い!)でテーブル記述した事あるぞ。
Cで書いてコンパイルして、HEXファイルをEABに喰わせれば良い。
LEへテーブル実装するなら、この方法は無理かもしれないが・・・
147146:04/12/11 13:38:00 ID:grQkrB75
あれ、すいません。 話の内容完全に外してる。orz  >>146 のカキコは無視して下さい。
148774ワット発電中さん:04/12/11 15:17:41 ID:BFzv6oph
> >>50
> 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

うーん、個人で持っとくのも悪くないか?
149774ワット発電中さん:04/12/11 15:43:05 ID:M4GLMEfx
USBのJTAGだったらいいのがあるぞ
バンダリスキャンていう書きこみ以上のことができるみたいだし
http://www.nahitech.com/smartjtag.html
150774ワット発電中さん:04/12/11 20:18:23 ID:XBQ7u2k8
あの・・その・・JTAGはもともとバウンダリスキャンで
使うものであって・・・ゴニョゴニョ・・・
151774ワット発電中さん:04/12/11 23:02:20 ID:M3VuMh3A
http://science3.2ch.net/test/read.cgi/denki/1102747543/14
HoQLAUdKは有効数字と有効桁が同じものだと知らなかった哀れな高卒。
152超初心者:04/12/12 14:56:31 ID:h09vxZHx
>>PWbGlx7X
レス遅くなって申し訳ありません。ありがとうございます!
153超初心者:04/12/12 14:56:52 ID:h09vxZHx
>>143
レス遅くなって申し訳ありません。ありがとうございます!
154774ワット発電中さん:04/12/12 14:59:07 ID:FL5vsRtn
>>143
レス遅くなって申し訳ありません。ありがとうございます!
155774ワット発電中さん:04/12/15 22:21:22 ID:wlA48S0O
どういたしまして
156774ワット発電中さん:04/12/16 07:09:35 ID:Zu0mp3yo
おすすめのVHDL←→Verilog変換ツールってありますか?
CQ出版のやつとXHDLを試したけど、どちらも完全対応じゃないみたいで。。
157774ワット発電中さん:04/12/16 12:22:59 ID:sQv+TCi0

>おすすめのVHDL←→Verilog変換ツールってありますか?

ロハのやつなら漏れも欲しいぞ

158774ワット発電中さん:04/12/17 04:41:20 ID:S1Sx6LQu
VHDLで専用回路(固定小数点)を作っている者で、割り算
をしないといけないのですが問題があって困ってます。
2で割ったりするだけならビットシフトで十分ですけど、
除数(分母)が被除数(分子)よりも大きい場合は実数で
考えれば1より小さい値ですが固定小数点なので0になって
しまいます。なので、浮動小数点演算でやろう考えてますが、
回路が大きくなってしまうことが目に見えてます。
何かよい考えがあれば教えて下さい。
159774ワット発電中さん:04/12/17 07:35:34 ID:enKCZRg3
>>158
それはHDLで書く前の仕様設計の話だろ かなりスレ違い

乗除算以外に加減算も必要なのか?
乗除算だけなら対数に変換して計算するって手があるぞ

ま、演算する目的がわからなきゃどうにもならん
160774ワット発電中さん:04/12/17 08:23:04 ID:2rdgsE8d
>固定小数点なので0になって しまいます。

そりわ、固定小数点ではなく「整数」でわ・・・
161774ワット発電中さん:04/12/17 09:04:41 ID:BF/KcTFd
実体は整数演算だけども、ある場所に小数点があると
見なせば固定小数点演算と見なせる。

たとえば、
0001+0011 = 0100
を整数と見なせば1+3=4
下から二桁目と三桁目の間に小数点があると見なせば
0.25+0.75=1.00
162774ワット発電中さん:04/12/17 19:40:57 ID:8q/QfZYt
>>157
とりあえずこの辺を試してみるべし。
ttp://www02.so-net.ne.jp/~morioka/v2v.htm
163超初心者:04/12/24 08:28:05 ID:5Um8eo73
type int_array is array (0 to 64) of integer;
subtype 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)に対して
乗算をすること自体文法エラーみたいですが。。。
164超初心者:04/12/24 08:53:19 ID:5Um8eo73
あ間違えた。ar(1)じゃなくてdata(1)です
165774ワット発電中さん:04/12/24 14:16:12 ID:QntLHWVC
>>164
a の型は何?
aもinteger型なら問題はなさそうだが… (論理合成は出来ないと思うけど)
166774ワット発電中さん:04/12/24 15:52:25 ID:baucrM1p
>>158
精度はどれくらい欲しいのかな?
0.1まで保証したかったら単純に10倍してから割ればいいだろう。
回路を簡単にしたいのであれば16倍して割る値をちょっと弄ればOKだね。

結果をどういった形で使いたいのかわからんがもう少し頭をやわらかくしたほうがいいぞ。


167774ワット発電中さん:04/12/26 21:23:30 ID:MS8bbIn5
最近流行りらしい(?)PerlやCからHDLを吐き出すスクリプトを使っている(作っている)人って
どれくらいいますか?
私は適当+自己流なんで何か流儀があるのなら勉強したいのですけど。
168774ワット発電中さん:04/12/26 23:03:39 ID:NkZGbqRr
極小FPGAで後から割り算が必要になって(速度は超遅でよい)、外に
浮動小数点演算用にPICつけてシリアル通信したことあったなぁ。。
ダサいけど工数は0同然だった。
もちろん最終の基板では仕様見直したけどね。

169774ワット発電中さん:04/12/27 04:55:47 ID:IiOwaSMj
だれか太田博之のディジタル通信回路教科書読んだ人いますか?
この人Verilog書きなれてないと思ったのは俺だけ?
170774ワット発電中さん:04/12/31 00:08:41 ID:tKLJqHbH
来月のdesignwaveにはISEの評価版が付くそうな。
インストール後、某ファイルを消すとずっと使えるぞなもし。
171774ワット発電中さん:05/01/05 01:13:05 ID:K1krFDC0
>某ファイルを消すとずっと使えるぞなもし。

こーゆー情報が今やご法度だものな。糞法律ばっかし作りやがってさ糞官僚が。
172774ワット発電中さん:05/01/05 01:50:54 ID:A7lNAgRo
>>170
DVD−ROM
173774ワット発電中さん:05/01/05 03:58:23 ID:NGDPEDuk
>>171
ハァ?
「今や」?
遙か昔から、少なくともてめーが生まれる前から
偽計業務妨害罪だよ。

高卒は法律も知らんのか。
野蛮だねプククククククク
174774ワット発電中さん:05/01/05 04:15:32 ID:/YFrRIWv
【電卓関連スレ】宇宙電波観測所 10
http://tmp4.2ch.net/test/read.cgi/tubo/1102178196/760
175774ワット発電中さん:05/01/05 04:16:24 ID:NGDPEDuk
>>174 
隔離スレに何を書こうが誰も見ない訳だが、
そんなにこちらで論破されてずたぼろにされるのが怖いのかね?
チキンofチキンの高卒哀れだよ高卒。
176超初心者:05/01/05 10:41:32 ID:ko/FuqQF
>>165
すいません。大学がしまっててレス遅れました。。。
ええとaの型はintegerです。それでも前に書いたエラーがでます。
177774ワット発電中さん:05/01/05 10:47:31 ID:lWvCpkO/
0-64でテーブルが65個あるからか?
178超初心者:05/01/05 10:55:11 ID:ko/FuqQF
ぅわ。また間違ってますね>64
でも直しても同じエラーがでるのでそこが問題ではないみたいです。
179774ワット発電中さん:05/01/05 11:36:16 ID:DdB5Az5O
>偽計業務妨害罪だよ。

173は単なるバカだな。
法律を自分の都合の良いように解釈しているうちはガキ
大人は自分の都合の悪い方へ解釈してリスク管理する。
180774ワット発電中さん:05/01/05 13:06:20 ID:NGDPEDuk
>>179
ハァ?
てめぇは自分が偽計業務妨害で逮捕される事が
都合の良い事なのか?

日本語すらまともに書けない高卒哀れすぎ。
181774ワット発電中さん:05/01/05 18:58:40 ID:aebuCLrh
>>176
レスが付かないようなので勘で。
引っかかるのは
 ・乗算そのもの。この場合integer同士の掛け算であってもエラーになる(conv_integer関係なし)。
 ・conv_integerは32bit引数だととりうる範囲が-0x8000000~0x7fffffffだけどそれは大丈夫?
乗算に関しては普通にRTLレベルのシミュレーション等に利用するだけなら問題ないが、
論理合成できない可能性がある気がする。正確には、俺の使っている論理合成ツールでは
合成できなかった記憶がある(少し記憶が曖昧)。俺自身が現在確認できる環境にない。
テーブル引き等そのものは合成でもまず問題ないと思う(複数の合成ツールで合成できてる)。
後、エラーの出るツールの名前は?
解決に至らないようならソースをずっと単純化してそのまま貼り付けたら?
182エンジニア処遇向上委員会:05/01/07 15:47:08 ID:VrueFCxZ
エンジニアの処遇改善の為にも、↓ このムーブメントに乗って下さい!

 日本国民はエンジニアを尊敬しる!
 http://science3.2ch.net/test/read.cgi/kikai/1104172261/20-36

このスレでは、結構な方が首相官邸や政党、各省庁へエンジニア優遇政策
の提言を行っております。皆様も是非ご協力下さい。
183181:05/01/07 19:04:00 ID:NWvYtN5g
間違えたので訂正
integerの取り得る範囲は-0x7fffffff~0x7fffffffみたいだね(少し違和感あるけど)。
もうひとつ乗算の合成についてある程度はっきり思い出した。
乗算自体は合成できていた。ただ32bit×32bitだと合成できなかったと記憶している。
31×31なら問題なかったのか、16×16なら大丈夫なのかはいまだ思い出せない。
184774ワット発電中さん:05/01/09 23:26:00 ID: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左シフトすればよいのでしょうか?
少数点の係数の演算を調べたのですが、うまく見つかりませんでした。
ポインタでもありましたら教えてください。。
よろしくお願いします!
185774ワット発電中さん:05/01/10 00:05:38 ID:mT4qiGvF
精度はどれ位いるんだよ。それによって異なる。

つーか、10進数も2進数も小数の扱いは同じだよ。
固定精度で10進数の計算をどうやるか考えれば、2進数も分かるだろ。
186184:05/01/10 00:19:48 ID:Ow5wipAk
>>185
精度というか、出力は上記の式で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のべき乗で乗除すればシフト演算ですむと考えたのですが、
根本的にまちがっていますでしょうか?
187774ワット発電中さん:05/01/10 00:49:21 ID:g+gcidb9
別に間違ってない。
>>184に自分で書いた式で大丈夫。
188774ワット発電中さん:05/01/10 00:53:06 ID:7pV3WoMX
>>186
精度がいらないって、どこまでいらないのかの問題も絡んでくるが。
ちなみに、所要のビット数の精度を出そうと思うと、機能的には最低
でも(出力ビット数は関係無しに)その倍の精度は必要。

2のべき乗の乗除算は、ビットシフトが使える。

とりあえずハードウェアによってしまうが、乗算は乗算器に任せるの
が無難じゃないかな?
189184:05/01/10 01:18:06 ID:Ow5wipAk
>> 185/187/188
ありがとうございました。精度について気をつける必要があるのですね。
このあたりの考え方が書いてあるWEB/本を探しているのですが、
なかなか見つかりませんでした。
ありがとうございました。
190184:05/01/10 10:20:50 ID:Ow5wipAk
>>188
>ちなみに、所要のビット数の精度を出そうと思うと、機能的には最低
>でも(出力ビット数は関係無しに)その倍の精度は必要。

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さんは出力ビット関係なしとかかれていますが、
最低、出力ビット数の倍の乗除を行う必要があるという考え方は
まちがっていますか?
たびたびですいませんがおしえてください。
191774ワット発電中さん:05/01/10 14:09:44 ID:mT4qiGvF
R*0.01001101 + G*0.10010110 + B*0.00011101 =
R + 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精度にした。結果の精度がそれほど要らないのなら、もっと削る。
192774ワット発電中さん:05/01/10 14:17:46 ID:mT4qiGvF
結果が出てからBit#8にBit#7を加算するより、あらかじめBit#7に'1'を
加算しておいた方が良いなあ。
193774ワット発電中さん:05/01/11 01:20:33 ID:2duFVuB7
verilogで1bit左シフトするとやたらとlogic使うんですけど、
何かいい手はないでしょうか。
194774ワット発電中さん:05/01/11 10:58:33 ID:2rDcX6JL
最近VHDLからVerilog-HDLに乗り換えたんだけど、テキストIOって
ファイルに書き出すのは$fdisplayで楽そうだけど、入力するのは
難しいのかなぁ。
たとえばCPUのエミュレータ作って「load 0xff00 0xaa」とかいうのを
ファイルから読み込ませるなんてのはVHDLではreadlineしてから文字列
判別するようにしてvariableに放り込めば、そんなに難しくなかった
んだけどVerilogではファイルからアスキー文字読むときゃどうするの?
2進数と16進数しか読み込めんのか?
195774ワット発電中さん:05/01/11 11:37:58 ID:o3rZZd1M
95だと無理というか、Cライブラリの呼び出しみたいなことを
しないといけなかったけど、2001だとある。
http://www.chris.spear.net/pli/fileio.htm
196194:05/01/11 12:03:58 ID:2rDcX6JL
>>195さん
これこれ。これがやりたかったのよん。サンクス!
197774ワット発電中さん:05/01/11 18:23:16 ID:2rDcX6JL
シェアウェアで国産のVerilogシミュレータが出てますね。
http://www.sugawara-systems.com/
Icarus Verilogもいいけど、VHDL-Verligコンバータも入って5000円台ならいいかも。
198774ワット発電中さん:05/01/11 19:17:30 ID:W+W2r/lo
>>194さん、
最近VHDLから、Verilogに乗り換える人が多いのは、どうして?
FjだとVHDLだと思っていたけど。
199774ワット発電中さん:05/01/11 20:55:59 ID:BVHdVSzv
>197

宣伝ごくろう
200774ワット発電中さん:05/01/11 21:23:06 ID:g0gC3QnV
これを紹介すると必ず>>199みたいなのが出るのは何故?
国産品だと作者を叩かないと気が済まないのかね。
何とも卑しいこって。
201774ワット発電中さん:05/01/11 22:21:47 ID:zENSPiYv
>>198
部署によるだろ。
202774ワット発電中さん:05/01/12 00:15:28 ID:XKXgCzlf
>>198
SystemVerilogとかもあるし、DCのparserが対応していけば
アサーションともあいまってVHDLよりか将来性があるかも。
Fjの代理店とつきあったことがあるけどVerilog HDLしか知らんかったよ(w
203774ワット発電中さん:05/01/12 01:08:27 ID:4/KDvaX8
質問です。

verilogのソース中でピンアサインを指定する方法ってありますか?
VHDLなら「attribute pin_numbers〜」でできるというのは分かったのですが
verilogでの方法が分かりません。

よろしくお願いします。
204774ワット発電中さん:05/01/12 01:36:49 ID:Mc6YdWxj
>203

漏れもおながいしまつ。
205774ワット発電中さん:05/01/12 02:13:05 ID:WDtPZODt
そんな流用できないソース書いちゃだめよ〜 
しまいにゃタイミング制約もソースに入れたいとか言い出すんだろ。

206774ワット発電中さん:05/01/12 02:30:25 ID:xZPDBpkn
VHDLよくわからん。ピンアサインとは?
207203:05/01/12 02:33:49 ID:4/KDvaX8
>205
cypressのwarp3という製品を使っているのですがフィッティングするたびに
ピンアサインが変わってしまい困っているのです。

マニュアルは、VHDLの方ではソース中で指定する方法しか書いておらず、
verilogの方に至ってはピンアサインについては全く触れられていません。

テストするたびに半田づけし直すわけにもいかないので途方に暮れています。
208203:05/01/12 02:40:23 ID:4/KDvaX8
>206
内部のポートをどのピンに割り当てるかです。

VHDLなら
attribute pin_numbers of refill:entity is
"aaa:1 bbb:2";
等とするとaaa->1ピン、bbb->2ピンと割り当てられるようです。
これと同様のことをverilogでやりたいです。
209俺様 ◆f0ugTrYQRI :05/01/12 07:39:19 ID:KhBLAptn
(;´Д`)ハァハァ  最近太りすぎで困ってるでちゅよ!
お利口タンの皆タン! Verilogで体脂肪を計算したいでちゅ〜
身長189センチ 体重58Kgでちゅ〜
じゃあ待ってるでちゅよ!
ねむねむ〜〜
210774ワット発電中さん:05/01/12 15:34:50 ID:RhpX5tcx
>>209
昔のPC板へカエレ!
211206:05/01/13 03:46:26 ID:kc3MqHG7
>>208
その「ピン」とは一体どういうもの?Verilogには「ピン」という定義がない。
Synopsysでは
module z(a,b,c); input a, b, c; <= a,b,cをポートと呼び、
zzz i0 (.a(), .b(), .c()); <= a, b, cをピンと呼んでいるようだが。
212いつでもどこでも名無しさん:05/01/13 10:39:30 ID:V9EDyVg5
>>208
>内部のポートをどのピンに割り当てるかです。

チップの端子の割り当てのことなら
RTLの中にそんなピンアサイン情報は記述しないのが普通では?
Verilogでそういう記述はできない。
VerilogにしてもVHDLにしてもピンアサインは
インプリツール固有の設定ファイルのようなもので指定するはず。
213774ワット発電中さん:05/01/13 12:23:56 ID:5cpom69q
質問の意味が若欄
214774ワット発電中さん:05/01/13 18:38:25 ID:tUOPQG7F
FPGAへの実装を想定での質問。

イネーブル信号を外から与えて、与えるごとにその時の1クロックだけレジスタに書き込みを行いたい
で、単純に↓のように書いてしまうと非同期になってしまってよくないから他の方法を考えてるんだけど、
こういう場合、どう記述したらいいのでしょうか?
always @(posedge enable)
regster <= data;

与えられたイネーブルを自分でディスイネーブルするにはどう記述したらいいのでしょうか?
215774ワット発電中さん:05/01/13 18:54:04 ID:eTrlq5kX
クロックをセンシビティリストに書いて、always文の内部でenable をポーリングするっていうのじゃ駄目?
ただし、disableするには別途信号線が必要になると思うよ。
216774ワット発電中さん:05/01/13 18:55:22 ID:Y3DSNb6t
>>215  
YahooBB218137134021.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の現実。


しかし、自分が選んできたテーマでずたぼろにされる事ほど哀れなものはないよな。
死んだ方が良くない?

あの高卒ってば、まぁ俺の専門分野ならずたぼろに出来るのは当たり前だから面白くないから
「この板に来てる以上知らない事は許されない固体物理の常識」
を聞いてやった訳よ。
それでもずたぼろで哀れなので、
その高卒が出してきたその高卒の専門分野での質問を答えてやった上に、
如何に高卒がデタラメな事いってるかこてんぱんにして潰してやった訳よ。

まぁ、 狂 う わ なプククククククク

中卒の脳内学会では、反論できなくなると
「●●学会〜〜!!」とか学会名を叫ぶと許してもらえるんだろうか?

そ ん な 哀 れ な 学 会 に は 
間 違 っ て も 近 寄 ら な い

まぁ脳内学会だろうけどな。
217774ワット発電中さん:05/01/13 20:25:04 ID:T7MAovKc
>>214

イネーブル信号をクロック同期の回路でエッジ検出をし、
その信号をFFのイネーブルに使う。

>与えられたイネーブルを自分でディスイネーブルするにはどう記述したらいいのでしょうか?

言ってる意味がよく分からないけど何のために必要なの?
218774ワット発電中さん:05/01/13 21:12:18 ID:/0E9bOBG
ちょっと思ったんだが
イネーブル信号がクロックより長いことは保証されてんの?
メタステーブルへの対処は?
219774ワット発電中さん:05/01/13 21:32:54 ID:tUOPQG7F
>> 217
ん?こういうこと?これだと、どんどんdataが書き込まれてしまいますよね。
1回だけ書き込みたいんですけど。
always @ (posedge clk)
if(enable)
FF_enable <= 1;

always @ (posedge clk)
if(FF_enable)
regster <= data;

>>218
保証されてます。
ソフトウェアでイネーブル信号を書き込むんで。
220774ワット発電中さん:05/01/13 22:00:45 ID:eTrlq5kX
always@(posedge clk) begin
 if( !reset ) begin
  complete <= 0;
 end
 if(enable && !complete ) begin
  register <= date;
  complete <= 1;
 end
end

じゃだめかい?
221774ワット発電中さん:05/01/13 22:01:33 ID:Y3DSNb6t
>>220  
YahooBB218137134021.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の現実。


しかし、自分が選んできたテーマでずたぼろにされる事ほど哀れなものはないよな。
死んだ方が良くない?

あの高卒ってば、まぁ俺の専門分野ならずたぼろに出来るのは当たり前だから面白くないから
「この板に来てる以上知らない事は許されない固体物理の常識」
を聞いてやった訳よ。
それでもずたぼろで哀れなので、
その高卒が出してきたその高卒の専門分野での質問を答えてやった上に、
如何に高卒がデタラメな事いってるかこてんぱんにして潰してやった訳よ。

まぁ、 狂 う わ なプククククククク

中卒の脳内学会では、反論できなくなると
「●●学会〜〜!!」とか学会名を叫ぶと許してもらえるんだろうか?

そ ん な 哀 れ な 学 会 に は 
間 違 っ て も 近 寄 ら な い

まぁ脳内学会だろうけどな。
222774ワット発電中さん:05/01/13 22:21:42 ID:BTjdO9b3
>>219
おしい。こんな記述すればいいはず。
慣れると無意識に出てくるほどの常套するコードだと思う。
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
223774ワット発電中さん:05/01/13 23:08:58 ID:tUOPQG7F
>>220 >>222
ありがとう!
>>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とかは作ったことはあるんだけど、
こんなコードは初めてで、相当悩んでました。
自分はまだまだだなって痛感しました。ほんとに助かった。
224774ワット発電中さん:05/01/13 23:41:30 ID:tUOPQG7F
ちなみにXSTで論理合成したらどちらも同じものが生成されました。
225774ワット発電中さん:05/01/14 00:14:46 ID:uyX49uIJ
フリップフロップ使わない方法のが
シンプルだよ
226 :05/01/14 00:25:48 ID:DSUj7hGO
always@(posedge CLK) begin
 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
227774ワット発電中さん:05/01/14 00:33:16 ID:DSUj7hGO
訂正
always@(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
228774ワット発電中さん:05/01/14 01:05:35 ID:uyX49uIJ
elsif使えよ
それに゙!゙は別にいらねーだろ
229774ワット発電中さん:05/01/14 01:07:08 ID:iTXXAj1h
>>228
それよりフリップフロップ使わない方法ってのを詳しく
230774ワット発電中さん:05/01/14 01:11:15 ID:DSUj7hGO
×if if(enable && !complete ) begin
○ if(enable && !complete ) begin

!は要るだろ。なんで要らないというのか理解できんな?
231774ワット発電中さん:05/01/14 01:14:55 ID:uyX49uIJ
記述はシンプルいず ベターだ。
! いらね
232774ワット発電中さん:05/01/14 01:17:15 ID:DSUj7hGO
else if を使う部分をelsifつかうのはお前の勝手だが、
!をはずしただけじゃロジックが代わるだろうが。
使わないなら等価なRTL書いてやれよ。
233774ワット発電中さん:05/01/14 01:20:36 ID:uyX49uIJ
面倒くせ FF_なんたら とかいらね
Z とかでいいんじゃん 紛らわしいし
あんま怒んな
アウトロ行け
234774ワット発電中さん:05/01/14 01:28:37 ID:DSUj7hGO
あれれ?
コンパイラオプションの`elsif
はあるがVerilogでelsifってあったか?
235774ワット発電中さん:05/01/14 01:30:36 ID:iTXXAj1h
>>233
なぁんだ、信号名が気に入らねってだけか。わかった。
completeはセットリセットの値を逆にすれば!は無くせそうだが
!RSTは取っちゃだめだろ?
236774ワット発電中さん:05/01/14 01:31:52 ID:DSUj7hGO
>>233
おまえVHDLと混同してないか?
今調べたけどVerilogでelsifは予約語じゃないぞ。
237774ワット発電中さん:05/01/14 02:39:19 ID:aX7Y8NgQ
出来上がりのハードが想像つくように記述してよ。

wire 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同期化する必要あり
238774ワット発電中さん:05/01/14 02:41:39 ID:aX7Y8NgQ
2個目のif(RST)はif(!RST)のタイポ
239774ワット発電中さん:05/01/14 20:28:19 ID:81hH15z4
大学で回路設計を勉強しています。
HDLを勉強中でよく下のサイトを使っています。
ここの課題1と2には解答がないので、自分の解答があっているか自信が持てません。
どなたか解答をお願いします。
http://www-isys.eei.metro-u.ac.jp/~sho/pub/sw_vhdl/node60.html
240774ワット発電中さん:05/01/14 20:41:13 ID:aeks9V98
>>239
スレ違い
こっくりさんにでもきいてくるんだなw
241774ワット発電中さん:05/01/14 21:00:47 ID:RNhgLUWf
>>239
回答も何も、2のシミュレーションが通るまで記述を修正せよってのが課題だろ。
242774ワット発電中さん:05/01/15 13:12:14 ID:qiwIiiOd
>>239
キミみたいなのが将来うちの会社に紛れ込むと迷惑だから
住所氏名を教えてくれる?
243774ワット発電中さん:05/01/15 13:42:30 ID:dXXfaYjc
と、ひきこもりニート君脳内できる社員が申しております
244774ワット発電中さん:05/01/15 14:06:23 ID:CCXrd3QH
住所氏名はともかく都立大であることはわかるわけで
245774ワット発電中さん:05/01/15 16:46:33 ID:/u3r+DO2
VHDLのentityで定義するbufferの意味がわかりません・・・。
どなたか教えてください
246774ワット発電中さん:05/01/15 17:02:09 ID:3bwiy2VL
>>237程度の回路規模ならともかく、機能が込み入ってくるとハードウェアを念頭において考えられなくなってしまいます。
例えばSDRAMコントローラぐらいになると漏れ的には機能を満足することで頭がいっぱいに・・・
回路を念頭に置いたHDL設計を上達するためのアドバイスをよろしくお願いします。
どうもプログラム気分になってしまう。

PS
それでも論理合成ツールが賢いのでそこそこ動いてくれるのが助かってますが。
247774ワット発電中さん:05/01/15 17:14:13 ID:EzexuhFm
>>239

平成11年7月27日
11年から留年坊や?
248774ワット発電中さん:05/01/15 17:18:16 ID:SZzGD2Ar
毎年同じ問題出すのはよくあること。
大学行ったことないのかい坊や?
249774ワット発電中さん:05/01/15 18:42:52 ID:OJjBnkU9
>>246
ステートマシンなどのランダムロジックとデータパスを
分けて考えるといいんでない?
250774ワット発電中さん:05/01/16 02:18:52 ID:hxQgE3vT
>>245
outは右辺値にできないがbufferなら右辺値にもできる。
ただbufferはあまり見かけない。
outと同じ信号をsignalで用意してそれを参照することが一般的だと思う。
251774ワット発電中さん:05/01/16 23:52:33 ID:5DrLSNTn
FFのリセットは非同期が普通?
どこの 世界の普通?
クロックない 石なんて今更 どこにあんの?
お前 不安定な初期状態の一般にいわれる Q、Q^
測定した事ある?
学生か
252774ワット発電中さん:05/01/16 23:57:43 ID:aO/zrW98
>>249
SRDAMコントローラはインタリーブを効率よく行うためのバンクの割り当て方が難しかったり、
Act->Com->PreChgを効率よく行わないといけない。
ランダムロジックとデータパスを分けるなんていう難しさとは違うよ。
253774ワット発電中さん:05/01/17 00:06:54 ID:rzGLYOfQ
>>251
システムリセットと勘違いしてるんじゃね?>>普通は非同期
254774ワット発電中さん:05/01/17 00:08:29 ID:EMb2YSmX
>>237の云うようなFFのリセットは非同期が普通なんて聞いたことがない。
ディジタル回路設計は普通感覚や、常識や道徳で作るモノではない。
しかもenableはCLKと非同期と書いてあるのに一発しか叩いてないし、
メタ・ステーブルの発生するところにゲートでロジック組んでるし。むちゃくちゃ。
255774ワット発電中さん:05/01/17 01:41:36 ID:o490Ue7Q
>>254
237じゃないけど

エッチ・ディー・ラボのデザインマニュアルも初期リセットは非同期リセットにしろって
書いてあったと記憶している。某社のLSI設計マニュアルもそうなっていたと思う。

エッチ・ディー・ラボのHPでデザインマニュアルの目次が見れるが、初期リセットは非同期
リセットという項目があるんで間違いないと思う。 ttp://www.hdlab.co.jp/

もうエッチ・ディー・ラボはマニュアルを扱っていないけど
"RTL設計スタイルガイド初版"が 半導体理工学研究センター(STARC)で入手できるもよう。

ttp://www.starc.or.jp/index-j.html

STARCのマニュアルは読んだことがないんで、同じ記述になっているかは不明。
256774ワット発電中さん:05/01/17 01:47:07 ID:TdGG//AH
学生にもわかるように 端的に言うと
人間が最終的にコントロールするのは 結局アナログインタフェイスだよな

いくらディジタル もとい ディジタルが 発展すればするほど 最終的にアナログを操作しないと使えないんだよ
DA変換で一番必要なのは クロック これないと バッファ、サンプリング できないよ
だから クロックはあって 「普通」だろ?
他にもたくさんあるぜ。 同期 これ 必需。 これないと なにも使えない
257774ワット発電中さん:05/01/17 01:49:41 ID:TdGG//AH
おまい それ なんでリセットすっかわかってんの?
258774ワット発電中さん:05/01/17 01:53:13 ID:EMb2YSmX
hdlabはコンサルだからな。スタイルガイドはデザインルールではなく、デザインガイドラインだ。
繰り返すがやつらはコンサル屋なのであり、設計屋ではない。
FFにしたって(プロセスにもよるが)非同期よりも同期式のほうが面積が小さい場合が多い。
「普通は非同期」の一点で設計するやつはなにも理解していない、コンサル屋の思うつぼ。
259774ワット発電中さん:05/01/17 02:51:57 ID:9QQ3QVB8
面積は小さいが、非同期だとクロックツリー張れるからタイミング調整楽という説も。
260774ワット発電中さん:05/01/17 03:22:11 ID:XRmAdDE8
>>256
うーん、クロックからアナログにまで発展したので期待したのだが枝葉を省くと、

”学生にもわかるように 端的に言うと
ディジタル回路なんだから、クロックはあって 「普通」だろ?
他にもたくさんあるぜ。 同期 これ 必需。 これないと なにも使えない 。”

ってことよね。これで学生納得するのか?こんなのはどうだ?

"順序回路だからこそリセット要るのよ。順序回路なんだからとうぜんクロックあるでしょ。
だからいろんな問題ある非同期じゃなくて同期リセット使う。"
261774ワット発電中さん:05/01/17 09:52:44 ID:gKLRqskA
電源投入時の過渡状態を考えれば、非同期リセットにしておくのが無難。
同期リセットより面積が大きくなったとしてもそれは必要なコストってだけの話。
262いつでもどこでも名無しさん:05/01/17 10:57:35 ID:GFuo8TXk
同期リセットを追加するのは仕様によるだろうが、
クロック停止状態でも初期化できるように
初期化必要なFFには非同期リセット使うのが普通。
同期リセットだけで非同期リセットできない回路なんて
スキャンテストの時にいい迷惑。

スタセルには非同期セット/リセット付きセルが用意されてるし、
同期リセットを使う方が余計なロジック増えますよ。
ここにはFPGA屋と学生しかいないの?ASIC屋はいないのか?
263774ワット発電中さん:05/01/17 11:23:19 ID:2OI18uw3
クロックがいつも供給されてるって発想がアホ
264774ワット発電中さん:05/01/17 12:28:07 ID:agQ5CCCe
>>262に同意。
ASIC設計だと同期リセットはリスクをちゃんと理解していないうちは使わないほうがいいよ。

エッチ・ディー・ラボからSTARCに移管されたマニュアルも
変わらず非同期推奨です。別に「コンサル屋の思うつぼ」と言われてもねぇ。
265774ワット発電中さん:05/01/17 13:35:48 ID:HrfGrsKt
>>264

>エッチ・ディー・ラボからSTARCに移管されたマニュアルも
>変わらず非同期推奨です

おまえはアホか?
そんなもん何の基準にもなるかよ。いったいどういうオツムの構造してんの?
266774ワット発電中さん:05/01/17 13:46:13 ID:TdGG//AH
ASICは用途別に やたらあるから あれを普通?というのは 極端だろ?

設計しねぇで
スキャンばっかしてろ
他人の造ったもん 波形だけで 何がわかんだよ!ベン図からやり直せ
オモシロスコープ!
267774ワット発電中さん:05/01/17 13:57:24 ID:nbreKvnf
>電源投入時の過渡状態を考えれば、非同期リセットにしておくのが無難。

逆だろ。

電源投入時の過渡状態を考えれば、同期リセットにしておくのが無難。

だよ・
268774ワット発電中さん:05/01/17 14:11:25 ID:8iwaSufX
>>267
なぜそうなる?
ほんとに製品作ったこと無いな。
269774ワット発電中さん:05/01/17 16:08:44 ID:iXKmfkSo
>>267
>電源投入時の過渡状態を考えれば、同期リセットにしておくのが無難。

外バスのインターフェースなんかの出力が不定でもいいんですか、へ〜。
お前のチップは、気が付いたら勝手に外メモリの中身を壊してたり
バスがぶつかってデバイス壊したり、しかもそれは個体差があって
原因解析が困難だったりしそうで、到底商品として成り立たない罠w
270774ワット発電中さん:05/01/17 17:28:15 ID:/PYWwVzP
それぞれの専門分野でそれぞれの常識があるんじゃね.
俺はASICで既存のシステムへの組み込みを想定した回路設計
やってるから非同期リセットが基本,て考えてるけど.
ASIC想定してる奴も他の何か想定してる奴もこのスレッド見てるんだからさ,
それぞれの"普通"で話してたらかみ合わなくて当然じゃね?
ASICならこの記述,他の何かならその記述,それでいいだろ.

前提条件がはっきりしないままでの不毛な喧嘩はやめて
みんなで一緒にrtlでオモシロスコープ記述しようぜ.
271774ワット発電中さん:05/01/17 20:20:35 ID:o490Ue7Q
>>270
確かに、別に感情的になる必要ないよな。
----------------------------------------------------------------------------------------
ある国内半導体メーカーのデザインマニュアルのリセットの項目を要約すると。

同期リセットを推奨するが、初期化リセットについては非同期リセットになるようにしてください。

理由は、、初期リセットは、通常のバスとは異なり、タイミングの問題がなく タイミングを合わせる
為のゲートが削除できます

また、同期リセットにした場合、ゲートレベルのシミュレーションにおいて、値が確定しなくなる
(Unknown状態) になることがあります。
------------------------------------------------------------------------------------------
LSIのデザインをしている人は、多分同じような記述を見たことがあるんではないかな。
結局のところ、大抵の人が最初にデザインガイドとかで読んだことがベースになっているのでは、

同期リセットを主張する人の、情報ソースや同期リセットを選んだ理由は何なんでしょうか?
もしも、同期リセットが望ましいChipがあるのなら知っておいたほうが良いですからね。
272774ワット発電中さん:05/01/17 22:15:35 ID:/XQigBzI
>>264
ここみると逆のように見えるな。
http://www.starc.jp/bookstore/semiguide.html
同期ロジックモジュールのテストの自動化を考えると同期がいいんだと思うけど、
チップ上のリセットどっちかに統一せいとなると非同期になるってことだろ。
273774ワット発電中さん:05/01/17 22:22:48 ID:9QQ3QVB8
まず、ここまで読んだ感想として、専門家が素人に知識振り回してコケおろすもなんだかなぁ。
で、疑問ですが、

>タイミングの問題がなく タイミングを合わせる為のゲートが削除できます
非同期リセットで、タイミングの問題が楽になるのは分かる。
「タイミングを合わせる為のゲート」は減るのかも知れないが、 トータルでは
やっぱ増えるのかな? 規模によるのかも知れないけど。

>ゲートレベルのシミュレーションにおいて、値が確定しなくなる
これは某合成ツールを使用する前提でのRTL記述のミスでは?
某合成ツールを使ってるなら、sync関係の属性を正しく指定すればシミュレーションでも
問題は起きないと認識していますが。
274774ワット発電中さん:05/01/17 22:30:30 ID:CjrT1Uq5
クロックが常に供給されていてFFがステートマシンぐらいにしかない
規模の小さなコントローラーチップなら同期リセットでもいいんでない?

漏れの設計分野はミリオンゲート越えるマイコンで、リセットラインに
STAなんてやってられないし、複数のクロックドメインがあるし、
省電力対策でアクセスしないFFのクロックは止めるし、
DC動作は要求されるし、非同期リセットが常識の世界だけどね。
275774ワット発電中さん:05/01/17 23:12:10 ID:o490Ue7Q
>>273
270 で記述しましたがメーカーのデザインガイドの記述内容なので、自分が回答するわけにも
いかないので、逆に疑問点を質問

>トータルでやっぱ増えるのかな?
これはどういうことなんでしょうか? 初期化リセットを非同期にしたときに、
追加される回路とは何なのでしょうか?

>某合成ツール...RTL記述のミスでは、
そうなのかもしれませんが、人間はミスをする動物ですし、同期リセットにしたら
問題が起きるから某ツールは使うなとメーカーは言えないのでは?

>某合成ツールを使っているのなら...問題はおきない
同様にLSIメーカーがツールを指定するわけにはいかないのでは?もちろん推奨は可能で
しょうが。

非同期リセットでは問題とならないという前提ですが、

特定の条件でしか起きないとか、特定のツールを使えば避けられるというよりは、
メーカーのデザインマニュアルでは、必ず問題にならない方法を推奨するほうが、
良いと私には思えますが。
276774ワット発電中さん:05/01/18 00:44:22 ID:L95IXUvY
>トータルでやっぱ増えるのかな?
>これはどういうことなんでしょうか? 初期化リセットを非同期にしたときに、
>追加される回路とは何なのでしょうか?

クロック・ツリー・シンセシスならぬリセット・ツリー・シンセシス
トランジション・エラーにならない程度にバッファを追加する。
277774ワット発電中さん:05/01/18 01:01:24 ID:z1NjAUwj
>>275
>>トータルでやっぱ増えるのかな?
>これはどういうことなんでしょうか? 初期化リセットを非同期にしたときに、
>追加される回路とは何なのでしょうか?
(FF+AND)と(非同期リセット付きFF)とを比べると割のオーダで違うはずですよ。
トータルでという意味はセル単位で見れば同期リセットのほうが安いですが、
タイミングの合わせこみに要する諸々の面積をトータルで考えると非同期のほうが
安かったりするのかなと。もちろん、非同期でもタイミング調整に必要な面積は、276
さんの言うとおりただではないのですが、それでも非同期のほうが安いのかなと。

>非同期リセットでは問題とならないという前提
昔は非同期リセットこそ属性指定しないと大変な目にあったのですが、いまは
事情が異なるようです。
278774ワット発電中さん:05/01/18 01:11:27 ID:LMCYgrEj
で、同期リセットマンセーな人はどんな回路設計してんのか教えてよ。
279774ワット発電中さん:05/01/18 01:24:34 ID:z1NjAUwj
別にマンセー(意味が分からずかなり調べたよ)ではないけど、面積の関係で仕方なく同
期にしてるというのが正しいです。
 ・属性に関しては過去の経験からどの道つけなければ落ち着かない。
  (今は事情が異なるとしても)
 ・リセット時の状態に関しては、外部リセットを直接全FFの非同期リセットにはとても使
  いたくない(いったんフィルタを通したい)。これも古い考えかもしれませんが静電気で
  苦労したくないので。リセット時の対策は別の手法で行っています。
そうした状況で、どちらかというと同期を選択していたというわけです。

ところが、近年はリセットのファンアウトに伴うバッファ段数増加によるタイミング調整に非常
に苦労しています。面積さえ許せば同期に変更する口実が得られるので喜んで変更します。
ていうかそろそろ限界なんで同期にさせてくれと上司にお願いしてるけど、「安いの?」と聞か
れて「すいませんでした」と答えている。
280774ワット発電中さん:05/01/18 06:50:01 ID:hQ/RPEWp
ASICを設計していると前提で、

>リセット時の状態に関しては、外部リセットを直接全FFの非同期リセットには
>とても使いたくない(いったんフィルタを通したい)。

ピンから直接FFの非同期リセットにつなぐことはまずやらないのでは?
何かしらの対策回路を施すのが普通だと思っていましたが。

>面積さえ許せば同期に変更する口実が得られるので喜んで変更します。

非同期に変更する、ですよね。
使用しているセルライブラリに非同期リセットつきFFがあれば
どれほど面積が増大するか比較検討しても良いかもです。

直感ですが、非同期化に伴う面積増加を許さないほどマージンの無いマスタを
使っているならレイアウトの収束がかなり厳しそうに思えるのですけどいかがでしょう。
281774ワット発電中さん:05/01/18 07:24:57 ID:ET+W0Gqh
>>279
>静電気で苦労したくないので...同期を選択して
初期リセット時の静電気による誤動作に、同期リセットが効果があるってのはどうやって検証したんでしょう?
また、効果ありと考える技術的根拠はなんなんでしょうか?

そもそも、初期リセット時の誤動作を静電気によるものと、どうやって分かったんでしょうか?
自分ははじめて、そういう問題を聞きましたが、これって常識? 最近のメーカーのデザインマニュアルでは
リセット時の静電気による誤動作について警告してあるんでしょうか?

静電気対策ってのは、入力段にアナログ的な回路で対応するものとばかり思っていました。

>>近年はリセットのファンアウトに伴うバッファ段数増加によるタイミング調整
ゲート数が大きくなると、リセットのスキューも問題になるということでしょうか?回路設計だけでなく、
レイアウトもされているということなんでしょうか。大規模な回路を設計からレイアウトまでされているのですか?

かなりの大企業にお勤めなんでしょうか?小さいところじゃ、静電気による誤動作の検証も難しい気がしますね。
282774ワット発電中さん:05/01/18 09:40:53 ID:OFHhRCen
は?静電気って何v?
静電気による 誤作動って 静電気が通電したの?
それとも 静電気による 誘導電流かなんか?
聞いた事 ないっちゅ
オモシロスコープびーむ
283774ワット発電中さん:05/01/18 10:05:25 ID:M2kbOGS/
論理設計やってる学生なんだけど、
同期にするか非同期リセットにするかはいつも迷うところで、
いつも適当に決めてきたけど、
どちらが正しいかは実際現場でも確定してないんですねぇ。
284774ワット発電中さん:05/01/18 10:26:18 ID:LxZgqJ7y
リセットに対する考え方の違いか?

リセットは初期化(電源投入時)でしか使わないって設計もあるだろうし、
動作中にちょくちょくリセットかける & 1クロックでリセットされないと困る
& リセット信号は当然クロックに同期してる なんて設計もあるだろう。

前者と後者のリセット信号を同じ用語でひとくくりにするのが無茶なのかもな
285774ワット発電中さん:05/01/18 10:34:07 ID:OFHhRCen
どっちでも使うんだよ要するに、
ただ 俺らは人間だから あの黒い石に負けちゃあいかん!
俺はフリップ フロップを ファイナル ファンタジーにする!
286774ワット発電中さん:05/01/18 19:24:15 ID:5kOLHXfl
俺らは人間?
287774ワット発電中さん:05/01/18 19:45:50 ID:LxZgqJ7y
288279:05/01/18 20:06:38 ID:z1NjAUwj
>>281
>>282

> ・リセット時の状態に関しては、外部リセットを直接全FFの非同期リセットにはとても使
>  いたくない(いったんフィルタを通したい)。これも古い考えかもしれませんが静電気で
>  苦労したくないので。リセット時の対策は別の手法で行っています。

に対してコメントが付いているようですが。
私の記事の前に非同期リセットのメリットとして >>269 のことが話題になっていました。
この話題に関してはこう解釈しました。
 まず「電源投入時の過渡状態」に関しては 石に電源が供給されてから、発振が始まるまで
の区間と解釈しました。
次に「電源投入時の過渡状態のことを考慮すると非同期リセットが無難」というところから、269
さんはフィルタを通さない外部リセットを直接FFの非同期リセットに接続しているのかなと解釈
しました。フィルタが入っていれば発振始まるまでリセットの状態は決まらないからです。

そこで、私は静電気防止のために外部リセットにフィルタを使用するたちなので、非同期リセ
ットだろうが同期リセットだろうが発振が始まるまではFFの出力は決まらない。よって私にとっ
ては「電源投入時の過渡状態対策のために非同期リセットを使用する」という項目は当てはま
らない。リセット時の対策は別の手法で行っている。

と、そういうことが言いたかった訳です。
289279:05/01/18 20:08:54 ID:z1NjAUwj
訂正です
「電源投入時の過渡状態のことを考慮すると非同期リセットが無難」なのは
>>267 さんでした。 どうもすまんです。
290774ワット発電中さん:05/01/18 21:17:21 ID:LxZgqJ7y
>>279=>>288=>>289のいう事がよくわからない
静電気防止のためのフィルタっていったいなんだ?

> フィルタが入っていれば発振始まるまでリセットの状態は決まらないからです。

ってことからむりやり推測すると、もしかしてそれは
メタステーブル防止のために挿入する2段FFのことなのか?

意味不明な謎用語使わないでくれよ
静電気防止のためのフィルタって聞いたら↓みたいなのしか思い浮かばんよ
http://www.t-tic.co.jp/company/jigyou/cs/28.html
291774ワット発電中さん:05/01/18 22:11:33 ID:z1NjAUwj
特定の周波数成分を除去したり抽出する回路の意味で使っております。
電波関係の仕事を行っているので、特に気にせず一般的な言葉かと思っ
て使用しておりました。
申し訳ありません。
292774ワット発電中さん:05/01/18 22:13:13 ID:NAcvKMtO
>フィルタが入っていれば発振始まるまでリセットの状態は決まらないからです。

何の為にこういうICが有るのかと小一時間..............
http://www.jpo.go.jp/shiryou/s_sonota/hyoujun_gijutsu/syasai/b038.htm
293290:05/01/18 22:21:58 ID:LxZgqJ7y
フィルタは「特定の周波数成分を除去したり抽出する回路」のことですね。
まったくもって正しい。
でも、それと静電気防止がまったくつながらないので???????なのですよ。

>>291さんが言っているフィルタとは具体的にどういうものなのですか?

チップ外部I/Opin直近に配置したEMIFIL(LとRでつくったフィルタ素子)?
それともチップ内部に作ったCRフィルタ回路のことですか?
どちらにしても
「フィルタが入っていれば発振始まるまでリセットの状態は決まらない」
って現象が発生するとは思えないのです。???????

少なくとも「メタステーブル防止のために挿入されるFF」のことでは
ないのですよね?
294774ワット発電中さん:05/01/18 22:52:59 ID:OFHhRCen
ファイナルファンタジー がフィルタだよ…
295俺様 ◆f0ugTrYQRI :05/01/18 22:54:06 ID:rG/9MYbY
(;´Д`)ハァハァ  誰か呼んでくれたでちゅか?
296774ワット発電中さん:05/01/19 07:18:07 ID:YHePCqqV
静電気防止厨 逃げたか
297774ワット発電中さん:05/01/19 19:42:51 ID:pDc79rMV
正直、静電気防止でリセットにフィルタを通すといわれて、紫外線フィルタしか思い
浮かばない電気設計者は貴重ですよ。
298774ワット発電中さん:05/01/19 20:25:19 ID:UoIngTep
> 電波関係の仕事を行っているので
なるほど。

これで手打ちってことでいい?
静電気の人の扱い。
299774ワット発電中さん:05/01/19 20:25:29 ID:YHePCqqV
>>297
そもそも「静電気防止でリセットにフィルタを通す」が意味不明だしなぁ…

むしろ、静電気防止でフィルタを通すってたわごとをいう自称プロの方が貴重。
静電気によるラッチアップ防止は保護ダイオードでやるものだろ?
ロジック設計者がケアすることではない。

>>279はどこでどう間違って思い込んだかわからないが、
おそらくは、メタステーブル対策のために挿入するFFのことを
「静電気防止のフィルタ」と、てんで見当違いな呼び方をしてるんだろ?
そのため、まともな技術者とは話が噛みあわないってだけの話だ。

>>279は本質的なメカニズムが理解できていないから
わざわざ非同期リセット信号にまで「静電気で苦労したくないために」
「フィルタ」と呼ぶフリップフロップをかましたりするんだろう。
300774ワット発電中さん:05/01/19 20:27:44 ID:pDc79rMV
>>299
だめだこれは・・・
君には負けた。
301774ワット発電中さん:05/01/19 20:36:55 ID:pDc79rMV
想像を書いて消えますね。
>>298
>>299
この辺りの人はASICを組み込んだ製品を売る方とは考えにくい。
メタステーブルやラッチアップといった単語をしているところや、静電気と聞いて
ラッチアップしか浮かばないところからICがらみの仕事の方、ASICを作るまでが
仕事の人と想像します。

発振が始まるまで動作しないフィルタと聞いてLCRフィルタしか思い浮かばない
論理回路設計者もかなり貴重ですよ。
デジタルフィルタの最も基本的な回路と、その用法を説明する気力のある人に後
を託します。
302774ワット発電中さん:05/01/19 20:43:59 ID:ni5UVOle
批判だけして、根拠も示さず、ろくすっぽ説明しないで逃げるのか?
そもそも"デジタル"なんて書いてること自体、随分イー加減な仕事をしていることの証明なんだが。
303299:05/01/19 20:57:32 ID:YHePCqqV
私はASICの設計もするし、PWBAのネットリストも自分で書く。
アートワークは外注だけどね。

LCRフィルタはシステムクロックとは関係なく動作するよね。だから
「フィルタが入っていれば発振始まるまでリセットの状態は決まらない」
とは矛盾するねって流れだと思ってたんだけど、読み間違えたかな?

というか、リセット信号にデジタルフィルタをかますんですか? 初耳だ!
何のために?

と、ここまで書いて気づいた。
フリップフロップ1個=デジタルフィルタ と強弁したいだけ?
そりゃ無理!
304774ワット発電中さん:05/01/19 21:11:32 ID:caoITF4V
>>301
メタステーブルとるFFはシンクロナイザ(同期化回路)と呼んでいる。
デジタルフィルタと言うとFIR/IIRしか思い浮かばないんですが・・・ヘタレですか?そうですか。
どんな回路がデジフィルなんだろう?
305774ワット発電中さん:05/01/19 21:13:18 ID:7gwwJK0q
>>301
>特定の周波数成分を除去したり抽出する回路の意味で使っております。
これを書いたのはあなたではないの。これだと、ローパスフィルタでも入れている
んじゃないかと思うのが普通じゃない。

>>発振が始まるまで動作しないフィルタと聞いてLCRフィルタしか思い浮かばない...

もしかしてこれは、発振が安定するのを待ってからクロックを供給するってこと? 
そうだとしたら、フィルタって言葉じゃ意図は伝わらないでしょう。
306774ワット発電中さん:05/01/19 21:30:09 ID:7gwwJK0q
>>私は静電気防止のために外部リセットにフィルタを使用するたちなので

失礼、リセット信号に対するフィルタってありましたね。だったら違うのかな。

しかしなー。いくらデジタルフィルタかましたって、リセットの場合、幅くらいしか
変わんないと思うんだけどなー。そもそもデジタルフィルタが静電気に対して
効果があるのか?情報ソースは何なんだ。何かの本に、そうしろって書いてあるのかなー?

新理論のてんこ盛りでさっぱり分からん。
307774ワット発電中さん:05/01/20 02:29:47 ID:Pi4Q19ja
FPGAやってる学生です。
非同期リセット使って回路の初期状態与えてるんですけど、
問題あるんですかね?
308774ワット発電中さん:05/01/20 05:38:49 ID:MBBKmyim
>>307
いいんでないの。初期化リセットを非同期リセットで行うのは、 半導体メーカーの
デザインマニュアルでも推奨されてたし、STARCのデザインガイドでも推奨されている。

今までの発言でも、同期リセットを主張している人は持論を展開するだけで根拠を
示していない。STARCはコンサルタントで信じるのはアホという発言もあったが、

いち開発デザイナーに検証できるとは考えられないし、裏づけデータなど持っているはずもない。
絶対に開発メーカーが正しいとは言わないが、その推奨に従うのはエンジニアの基本でしょう。

コンサル会社と半導体メーカーが、そのマニュアルに記述していることと、匿名の
掲示板の書き込みと、どちらを信じるのがアホだとあなたが考えるかでしょう。

ちなみにSTARCのデザインマニュアルは通販で入手できるみたい。値段は5000円くらいだったかな。
このとおりにデザインしているエンジニアは、あまりいないとは思うが、まじめに
勉強する気なら入手する価値はあると思う。アホというレスがあるかもしれんがね。
309774ワット発電中さん:05/01/20 07:29:37 ID:3jBnxwqh
つーか、設計者が意図したタイミング、FFの状態を実現するのが目的であるなら
同期、非同期は特に問題にならないだろうね、リセットに限っては。
当然タイミングを100%管理出来るならリセットに限定する必要もないのだが普通は
面倒だから全部同期設計にしてるわけだが。
310774ワット発電中さん:05/01/20 13:36:27 ID:6Z9fWGdp
FPGAなら電源投入したあと電源電圧が確定してからconfigデータのロードを
開始するし、ロード終了して所定の機能動作を開始する頃には、クロック信号も
安定しているだろう。

つまり、電源投入時の過渡状態を考える必要がないので、リセットを
非同期にする必要はない。同期でも非同期でもどっちでもいいと思う。
311774ワット発電中さん:05/01/20 13:48:42 ID:R4YWoSUp
>>310
> 所定の機能動作を開始する頃には、クロック信号も安定しているだろう。

だろう。

だろう。
だろう。
312774ワット発電中さん:05/01/20 14:05:46 ID:wluTU7nm
なんか外付け抵抗1個で済みそうな話しがえんえんと..
313774ワット発電中さん:05/01/20 14:40:26 ID:6Z9fWGdp
静電気防止なら抵抗じゃなくてコレ↓だろう
http://www.semicon.toshiba.co.jp/prd/diode/doc/pdf/bej0036a.pdf

だろう

だろう
だろう
314774ワット発電中さん:05/01/20 23:27:50 ID:IWq3Sij1
>コンサル会社と半導体メーカーが、そのマニュアルに記述していることと、匿名の
>掲示板の書き込みと、どちらを信じるのがアホだとあなたが考えるかでしょう
ディジタル回路設計は信じる、信じないの宗教じゃねーんだよ。アフォ。
315774ワット発電中さん:05/01/20 23:45:00 ID:IdSlLT1Y
自分を信じる
316774ワット発電中さん:05/01/20 23:47:34 ID:MBBKmyim
>>314
だったら証拠を見せて欲しいもんだね。アフォって言うだけなら誰でもできる。

コンサル会社が信用できないのなら証拠は何? LSIの中で起こっていることのすべてが
デザイナーに分かるとでも言うのか?宗教じゃないよ根拠、証拠を見せなさい。

はっきりしたことは分からないから、推奨にしたがうのは賢い選択であって宗教ではない。
あんたは、いちいち設計のたびに全てのことを検証しているのか、それともLSIの中の
信号の動きが見えるのか?

匿名の書き込に従わない、あるいは信じないのは、宗教ではなくて常識って言うんですよ。
317774ワット発電中さん:05/01/20 23:54:08 ID:AlPFR7Na
>>314
あのデザインガイドのどの辺がダメなのか興味があります。教えてください。
318774ワット発電中さん:05/01/20 23:59:11 ID:jz84A307
エルピーダメモリの世界一奪取宣言はなにか裏付けがあるのだろうか?
取れるだろう?

>LSIの中で起こっていることのすべてが デザイナーに分かるとでも言うのか?
俺の場合がシリコンが囁くね。ここは同期にしてくれって。
石の心がわかる。石伝心ってね。
319774ワット発電中さん:05/01/21 00:06:47 ID:VsFeq5OK
いいや、ゴーストが囁くのさ。
320774ワット発電中さん:05/01/21 00:12:47 ID:r4fk+WsI
電波関係の静電気防止屋ってもう来ないの?
321774ワット発電中さん:05/01/21 00:13:09 ID:j/PPnuhm
おまえの発言だけを見ていると、頭が悪くて考えられないから、考えることを一切放棄して
長いものに巻かれようとしているだけに見えるんだが。
何か違うか?
322774ワット発電中さん:05/01/21 00:20:46 ID:DAGl0QQi
そのまえに、おまえがなぜ同期RSTをつかうのか教えてくれ。  
323774ワット発電中さん:05/01/21 00:25:30 ID:j/PPnuhm
それはおまえがなぜ非同期リセットを使うかを答えてからだろ。
324774ワット発電中さん:05/01/21 02:20:40 ID:R+fn+0iK
このスレ見てると、ASIC設計って世間ではすでに電気屋の仕事じゃな
くなってるみたいだね。
325774ワット発電中さん:05/01/21 07:46:18 ID:r4fk+WsI
>>324
ロジック設計は電気工学と関係ないもん
意図通り動かないときは、静電気が原因ってことにすればいいし
326774ワット発電中さん:05/01/21 11:33:24 ID:H2APxnAC
同期リセット屋はどんな理由でどういう回路に同期リセット使うのか、
静電気厨しか具体的なレスないけどw
同期設計だからリセットも同期リセットを使う、って程度の理由?
327774ワット発電中さん:05/01/21 12:39:51 ID:r4fk+WsI
>>326 私は非同期リセット派なのだが…

直接メカニカルスイッチにつながってたりして、リセット信号が
システムクロックとまったく同期していないという環境では、
非同期リセット使った回路だと、うまくリセット処理できないことがあるよ。

キモはリセット信号がデアサートするタイミング。

システムクロックを基準に見て、リセット信号がデアサートするタイミングが
セットタイム/ホールドタイム違反すると誤動作する場合がある。
あるいは、同じIC内のFFにおいて、リセット状態から通常動作状態に復帰する
タイミングが各FFによって1クロックずれたりする。
(完全同期回路ならすべてのFFが同じクロックで復帰しないとまずいよね)

つまり、リセット信号のデアサートするタイミングは
システムクロックと同期してないと非同期リセットを使えないんだよね。

このような場合なら、リセット信号をメタステーブル対策して
各FFの同期リセットにつっこむのもアリかもなと思うよ。


まぁ、いまどきのリセット信号は専用ICが生成していて、デアサートタイミングが
ちゃんとシステムクロックと同期しているから、安心して非同期リセットが
使えるんだけどね。
328774ワット発電中さん:05/01/21 21:36:05 ID:m216fNPL
>>321
じゃ、あんたの賢い頭でどうやって同期が問題ないとどう考えたの?考えれば分かることか?

初期リセットのような、不確定状態を経たときの挙動なんて、考えた通りになると断言できるかい?
あんたは、今まで自分の考えてきたことが、全て正しかったっていうのかい?

少なくとも自分は実際の挙動を観測しないと断言できないと思っているだけ。だけど、LSI内部の信号なんて
みれないし、そんなこと確かめているより、すなおに推奨に従うほうが賢いっていうのが自分の考え方。

考えないといけない事は、他にたくさんあるからね。
329774ワット発電中さん:05/01/21 21:52:32 ID:ucA4PzwA
>考えないといけない事は、他にたくさんあるからね。
嘘コケ!
何も考えてないくせに。
330774ワット発電中さん:05/01/21 22:30:39 ID:m216fNPL
>>329
つまんないレスだな。 少しは 賢さの片鱗とやらを見せてもらえないですかね?
なんだが、語彙も貧弱のようで、あなたの頭のよさが伝わってこないんですけど。
331774ワット発電中さん:05/01/21 22:45:23 ID:xw1OU9SD
ここは自分の能力のなさを忘れられる唯一の場所なんだから、もう少し
寛容になってあげたら?
332774ワット発電中さん:05/01/21 23:02:47 ID:j/PPnuhm
>LSI内部の信号なんて
>みれないし、そんなこと確かめているより、すなおに推奨に従うほうが賢いっていうのが

その理屈だと、人間の目で見れないものはなにひとつ確証無く作ることになるのか。
おまえ、技術者?
333774ワット発電中さん:05/01/21 23:04:41 ID:Yjt01ejr
観測者が居ない時宇宙は存在しない。(w
334774ワット発電中さん:05/01/21 23:10:11 ID:m216fNPL
>>332
人のことを技術者かどうか言う前に。自分の書き込みを少しは読み返してみたら。
技術的なことなんて、ほとんど書いてないんじゃないの。 

賢い技術者って言うんだったら、少しは有益な情報を出してくださいよ。
だから、>>331 みたいなことを言われるんですよ。
335774ワット発電中さん:05/01/21 23:49:56 ID:P1cDeE6/
j/PPnuhmみたいな香具師と一緒に設計している人には同情します。
336774ワット発電中さん:05/01/21 23:58:46 ID:Yjt01ejr
糞Qと同レベルの言い争いをいつまで続けるんだい?
君らに知恵は無いのか?
337774ワット発電中さん:05/01/22 00:01:51 ID:H8NhHaLM
で、結局は新手の自演荒らしだったと?
338774ワット発電中さん:05/01/22 00:30:26 ID:MTkAFe+l
つい先日まで誰かがやってたからなあ、一人で。
339774ワット発電中さん:05/01/22 07:33:43 ID:73iPkCQm
>>327
外部入力のリセットラインを内部で同期化・分配させるリセットモジュール作るのは半ば常識だと思っていましたが
そうでない人もいるのでしょうか?
専用IC使わなくても、内部の数百ゲートレベルで対応しちゃえばいいのにと思いますが
340774ワット発電中さん:05/01/22 08:12:49 ID:bG2MdMTX
>>339
>外部入力のリセットラインを内部で同期化・分配させるリセットモジュール作るのは半ば常識だと思っていましたが

常識と思う根拠は何? 何の情報もなく、そういう回路をつける人は、いないのではないかな?

そういう記述を書籍やマニュアル、アプリケーションノート等で見たことがないんで、
常識というほどありふれた情報なら、情報源を教えてください。

根拠があるわけじゃないけど、

初期リセット時が問題なのは、動作の不確実さと思っているんですが。 リセット時でも、その内部回路だけは
確実な動作をするんでしょうか? 単純に矛盾を感じるんですが。 

正直なところ、内部ゲートで対応して確実な初期リセット動作を期待できる回路があるのなら知りたいですね。
341774ワット発電中さん:05/01/22 08:32:27 ID:BYP7TqJW
>>309で答えが出てる気がする。
342774ワット発電中さん:05/01/22 09:02:29 ID:bG2MdMTX
>>341
 >309 ですか、2チャンネル風に言えば"逝ってよし"っていうレベルじゃないですか。

あまりに馬鹿馬鹿しくって、自分はレスする価値もないと、スルーしましたが。

面倒を厭わなければ、リセット以外の信号でも非同期で設計できるという主張をしているようですが、
初心者コースから受けなおしなさいって感じですね。

非同期の場合、Setup/Holdタイムや、動作パターンが増えて確実な動作を期待できないなど、
解決不能な問題があるのをご存じないのかな?

単純に考えても、たった6本の信号が非同期で、タイミングが決められない場合でも
2の6乗 = 64通りもある。この程度でもシミュレーションの検証なんかできたもんじゃない。
343774ワット発電中さん:05/01/22 09:09:16 ID:xGihAO90
もうこのスレは駄目だな。
344774ワット発電中さん:05/01/22 09:09:39 ID:TPBAZYig
非同期設計っといってもいくつもあって、
単純に同期式のFFを非同期に駆動するとかいう方式は、
タイミングを完璧に管理しないといけなくて、アホらしいわな。
C素子みたいな非同期ラッチを導入して、
タイミングは考えなくてよくするという設計方法もあるぞ。
345774ワット発電中さん:05/01/22 09:11:54 ID:xGihAO90
ていうか、今時FFのクロックをランダムロジックで作るような事を想定してる
奴は居ないだろうしそんな風に捉えてまで揚げ足を取ろうとする奴が居ること
自体驚きだ。
346774ワット発電中さん:05/01/22 09:16:54 ID:VeKFfALg
一部の例外としてあげてる部分だけをことさら強調して必死になって叩きまくるのは良くある話。
そうまでして何を主張したいかは解らないがウザイ事だけは確かだ罠。
マジでこのスレはもう駄目だ。
347774ワット発電中さん:05/01/22 11:18:04 ID:EQ9/Cy5f
>>340
>>外部入力のリセットラインを内部で同期化・分配させるリセットモジュール作るのは半ば常識だと思っていましたが
> 常識と思う根拠は何? 何の情報もなく、そういう回路をつける人は、いないのではないかな?

339じゃないんですけど、外部入力をそのまま非同期のリセットラインにしてしまうと、
ノイズ関係が原因で誤ってリセット有効になっちゃいませんかね。
入力バッファをシュミットトリガタイプにすればである程度回避できるかもしれませんが。

なので外部入力のリセット信号は内部でいったんFFで受けて同期化するのが普通と思っていました。
間違ったところがあれば参考にしたいので御指摘願います。
348774ワット発電中さん:05/01/22 11:38:07 ID:7uFfw8mx
>>347
>なので外部入力のリセット信号は内部でいったんFFで受けて同期化するのが普通と思っていました。
>間違ったところがあれば参考にしたいので御指摘願います。

間違ってないと思います。

ノイズによる誤動作の防止策として、リセットのアサートが規定クロック以上続いた時だけ
内部でリセットを発生させるようなリセット回路を組むこともあります。当然、
リセット端子にはシュミット付きの入力パッドを使います。

ただ、これをリセット信号を同期化するというのとは意味合いが異なる場合もあります。
リセットのノイズ除去のためのFFは、入力クロックで叩くのでしょうが、
システム全体はPLL出力駆動だったりして、入力クロックとシステムクロックの
位相や周波数が一致しない場合は、相変わらずシステムにとっては非同期リセットに
なります。
349774ワット発電中さん:05/01/22 11:45:04 ID:UEfC1epQ
外部バスにノイズが乗らないようにするのが普通ですよ
FFで受けて同期化したからってノイズの悪影響を逃れらなれないでしょ

またクロック動いてないとリセットできないって困る場面は多いと思う
350774ワット発電中さん:05/01/22 11:51:22 ID:VeKFfALg
んー本当に電子回路の設計したことあるの?と疑いたくなるレスがある訳でかなり萎えますなぁ。
351774ワット発電中さん:05/01/22 12:21:48 ID:xn4xVkpd
シフトレジスタ並べてリセットノイズ避けとか、もしかして俺だけ?
352774ワット発電中さん:05/01/22 12:30:51 ID:v5DYiq9D
>>351
シフトレジスタはもったいないので、カウンタ使ってる俺。
FF1個ごとにフィルタリング能力が、倍々になっていくのが貧乏根性を
刺激する。
353774ワット発電中さん:05/01/22 12:35:18 ID:7uFfw8mx
>>349
>外部バスにノイズが乗らないようにするのが普通ですよ
>またクロック動いてないとリセットできないって困る場面は多いと思う

そんな分かりきったことを言われても。。。

ボード上でノイズ対策は当然するとしても、
世の中にはノイズがのるのを避けられない、
ノイズがのることを想定して設計しなきゃいけない
システムがあるってことを知ってくださいね。
354774ワット発電中さん:05/01/22 12:50:46 ID:v5DYiq9D
誤動作するほどのノイズが乗っちゃえばどの信号でも同じだけど。
基本的に外部リセットって、複数のデバイスからリセットが出力されることを
想定して、オープンドレイン(コレクタ)にしてプルアップでハイレベルを保って
ることが多いから、ノイズが乗りやすいんだよね。
だからASICの入り口で何らかフィルタ回路を挿入するのは、ごくごく一般的な
話かと思っておりました。
でも、このスレ見る限りそうでもないみたいですね。
355774ワット発電中さん:05/01/22 12:52:46 ID:VeKFfALg
私も筐体とかその他シールド、アナログフィルタ等で対策して尚問題になるノイズが
パターンに乗るなんてシチュエーションを体験したことがない。
356774ワット発電中さん:05/01/22 12:55:21 ID:v5DYiq9D
>>355
それはすばらしいですね。
357774ワット発電中さん:05/01/22 13:11:26 ID:UEfC1epQ
オープンドレインで設計しても、ちゃんとインピーダンス設計すれば
そうそうノイズ乗らないよ。
それでもノイズが載る環境ならボード間配線に光ファイバ使いなされ。

デジタル回路なのにロジック設計でノイズ対策するって
SECDEDとかの符号処理訂正で対策するってならわかるけど
ここのスレの話はレベル低すぎるよ。
358774ワット発電中さん:05/01/22 13:20:33 ID:VeKFfALg
・・・マジで基板まで含めてデバッグをやってる人が書いてるとは思えないのだが・・・
359774ワット発電中さん:05/01/22 13:29:56 ID:7uFfw8mx
>>357
いつも理想の対策打てるわけじゃないでしょう。
ノイズ対策は、その石のアプリケーションが人命に関わるものなのか
玩具なのかで対策の程度も違うし、費用対効果も考慮して決めなきゃいけない。
脳内理論振り回されても実設計には全く無意味。
360774ワット発電中さん:05/01/22 13:44:13 ID:zy6A4Uah
お客様が繋ぐモノ、使う場所はいろいろだからなぁ
361774ワット発電中さん:05/01/22 13:47:23 ID:uGJnbN1U
誰だ!

ロジック回路の入力に商用100Vをつないだ
おたんこなすは!!!
362774ワット発電中さん:05/01/22 14:00:38 ID:v5DYiq9D
双方とも何を書いてものれんに腕押しだと思います。
住んでる世界が違いすぎて。
共通の認識としては、
>レベル低すぎるよ
という一点だと思います。
スレの流れを少しでも正常化(HDLのスレだよね)するために、お互いこの件に
関しては以後スルーしてはどうでしょう。
363774ワット発電中さん:05/01/22 14:31:24 ID:73iPkCQm
>>355
パチンコ・パチスロは対策しても出来ない部分もあるので、ノイズがパターンに載ります。
ケースが透明プラでシールド機能は一切使えない。基板の直近に金属レールに乗っかったパチンコ玉やメダルが
静電気を巻き散らかしながら何千個・何万個と流れる。
基板のグランドとつながるべき大地アースはまったく期待できない。
フィルターで予測できる周波数を超えている場合が多い。(電波暗室で実験しているのは50,144,430,1200の4バンドで
しかもFMのみ。800,900,1500もないです。KWクラスを照射しますが、実際の現場でエラーが発生することもままありました。)

ボード間通信は光にできません。(規則による)

リセットは非同期で受付ますが内部のシーケンサ通して同期化します。P業界ではこれが標準のようです。
364774ワット発電中さん:05/01/22 14:33:41 ID:73iPkCQm
>>363
あ、IDがCQだw

えーと、ついでにいうと、金がかかっているので、ノイズが載って不具合になると別の意味で「人命にかかわる」
事態になってしまいます。(以前、動作がおかしくなって入賞がちゃらにされたといって刃傷沙汰になったことがある)
365774ワット発電中さん:05/01/22 16:14:04 ID:mLe10f7S
対策は必要だという認識は一致していて、入れる場所が違うだけではないか。
状況によって最適解は異なるわな。

今までの所ソフトが対策すると言うのはないようだな(w
366パチンカー:05/01/22 19:24:54 ID:BskEHsd7
パチスロのIPアップしてくれ。
お願いだ。
367774ワット発電中さん:05/01/22 19:39:07 ID:VeKFfALg
>>363
通信に双方向が許されてないとかってのもあった気がするな。
バッファは244かその相当品に限るとか。

画像ボードの方を担当したことあるがI/F関係は如何にも数時代前
って感じで驚いた事がある。
368774ワット発電中さん:05/01/22 21:41:23 ID:73iPkCQm
>>365
そういえば、昔チャタリング除去で暴れていたやつがいた気がするな。ソフトがどうとかって。

>>366
メインのコントロールはZ80相当品なので、管轄外w
ハード屋はリール制御とか画面表示しかやれない。
回路図とかアップしたら首がとぶので勘弁してよ。

>>367
通信は、主基板(メイン抽選基板)に入っていいのはパチンコなら入賞口のセンサー情報だけ。スロットはスタート・ストップのスイッチと
コイン数くらい。あとはすべて出力のみ(リールとか表示基板とか)

世間で言う遠隔操作なんて、ハードを改造しなければ出来ませんが。とパチ板で書いても信じてもらえません。
あそこの人は出力ポートに信号を入れると中のプログラム(パラメータ)が書き換わったりすると信じているみたいです。

おそらく、静電気に一番気を使うアプリケーションの一つでしょうね。(これ以上は静電気スレ行きかも)
369774ワット発電中さん:05/01/23 19:00:48 ID:eec5mSOk
> あそこの人
賞金懸けたテレビゲームに熱中する方々ですから
370774ワット発電中さん:05/01/24 13:00:56 ID:lYByVxPI
日本国において最高レベルの教育を受けるも、
その上がりをブタ正日に貢いでいることを認識しろ。
そして恥じろ。そして、少なくともお前の給料の何%かは俺の金であることを自覚しろ!

少しでも罪の意識があるならパチンコの攻略法をここに開示しろ!
371774ワット発電中さん:05/01/24 20:30:36 ID:GsJPExOs
あそこの人、必死すぎ(w
372774ワット発電中さん:05/01/24 20:49:52 ID:QbYUXNYO
あほー
あほー
373774ワット発電中さん:05/01/24 22:26:02 ID:dtXO/bZA
>>370
うちの会社は純国産メンバーだけなのと、朝鮮系のメーカーとはご縁がありませんので
直接の売り上げが総連経由で北の偉大なる首領様にみつがれることはありません。

んで、悪いんですが、ハードがメインなので攻略法は知りません。エロ本出版社の白夜かコアマガの出してる
攻略本を買ってください。まあ、あれも噴飯物らしいですが

というか、あんなもんに金つぎ込むなんてあなた、頭悪すぎw。そんなもんに金出すならコンフィグROMの
一つでも買って(ry
374774ワット発電中さん:05/01/25 19:46:53 ID:PkIZd8MC
> というか、あんなもんに金つぎ込むなんてあなた、頭悪すぎw。
「お客様」になんて言い草。
375774ワット発電中さん:05/01/25 20:13:48 ID:j1WqNj4x
>>374
カモが「お客」なのは「パチンコ屋・スロ屋」だけで、メーカーにとって「客」はパチ屋だけだろ?

パチンコ自身を買うなら客なんだろうけど
376774ワット発電中さん:05/01/25 20:24:38 ID:URDp6dVB
そうか。でも、けっこう直結に近い関係じゃないかと思った。
377774ワット発電中さん:05/01/25 21:12:16 ID:ROIA7RQj
すべては顧客満足の為に。

お客の評価はカモ次第だから無縁じゃないわな、やっぱw
378774ワット発電中さん:05/01/25 21:42:00 ID:72noctOx
>>375
家電だって何だって直接の客は量販店だよ。
379774ワット発電中さん:05/01/26 12:26:57 ID:QNWyuygw
パチ関係の仕事をしたことがあれば裏ROMが無ければ何も出来ないことが解るはず。
しかもそれをメーカーが管理して本物の裏ROMがほぼ存在しない現実。
ま、あんな所に行って金を捨てる奴は馬鹿だって事だ。
380パチンカ:05/01/26 15:04:58 ID:HzstuGeh
>パチ関係の仕事をしたことがあれば
ヲイヲイ
そんな仕事したことおまへんがな。
381774ワット発電中さん:05/01/27 09:37:01 ID:vItWf6JG
ちんこの話はスレ違い。
パチ業界でFPGAもCPLDも使えなくなったんで(某寺代理店曰く)、ここのスレは無関係になってるんと違う?
382774ワット発電中さん:05/01/27 09:59:08 ID:wpQLk6RZ
罪のCPLDを使ったことがあるのだが、画像基板にはOKじゃね?
383774ワット発電中さん:05/01/27 11:28:11 ID:vItWf6JG
>>382
去年の7月の法律改正でサイクロン2 200万個の商談がダメになったと漏らしていた。
新規格のモノは一律禁止なんだってさ。画像基板用のやつだったらしい。
384774ワット発電中さん:05/01/27 19:02:53 ID:EnoVMFaC
誰か時計のプログラム書ける人作ってください;;
385俺様 ◆f0ugTrYQRI :05/01/27 19:31:41 ID:WFt/vJAs
(;´Д`)ハァハァ  誰か100円電卓と同機能のVHDL書いてくらはい!
386774ワット発電中さん:05/01/27 22:45:10 ID:Z2P7b3ph
>>385
昔のPC板から出てくるな!
387774ワット発電中さん:05/01/27 23:36:46 ID:RX+iPf8t
>>385
ttp://www.opencores.org
あたり漁ればいけばあるんじゃない。
388774ワット発電中さん:05/01/28 19:36:36 ID:V4darPSJ
> 誰か時計のプログラム書ける人作ってください;;
> 誰か100円電卓と同機能のVHDL書いてくらはい!
で、書いたら実物を作ってもらえるとか?
だったら考える。MAX IIの一番でかい奴で頼むわ。
389774ワット発電中さん:05/01/29 02:40:13 ID:0eU2ngC3
実用HDLサンプル記述集 ttp://www.cqpub.co.jp/hanbai/pdf/33581web061_071.pdf
のISAインターフェースのところでIOWのエッジを検出するのに

IOW_F = (IOW2==1'b1 & IOW1==1'b0 & IOW_N==1'b1)? 1'b1 : 1'b0;

ってなってるけど、これだとIOWにグリッジがクロックエッジの前後に載ったら、
誤動作しません? IOW1==1'b1のほうがいいんじゃ? 駄目?
390774ワット発電中さん:05/01/29 16:38:39 ID:ah1DNg1F
>>389
駄目。
391774ワット発電中さん:05/01/30 17:11:03 ID:tcfQm3YR
>>389
IOWRにグリッジが乗った時点で、ISAの仕様(最小パルス幅等)を満たしていない
と思うが?

ISAバスの場合、SYSCLK周波数は、M/Bによってまちまちだし、IOWR等の制御信号
とクロックとの位相関係は規定されていないので、クロックでサンプリングする
というのは、ISAバスの設計としてダメダメだと思う。

どうしても、クロックが必要なら、14.31818MHzの方を使うのが定石。但し、信号
との位相差は規定できないのはSYSCLKと同様。
392774ワット発電中さん:05/01/30 23:15:47 ID:2VCaMn24
verilogでの記述するときって、casexって使わない方がいいの?
393774ワット発電中さん:05/01/31 02:53:16 ID:3EuqTI+7
>>392
STARCのガイドにはそんなこと書いてあったなあ。あの本はHD○ボの○谷川氏の思い込み
だからうのみにしちゃだめ。
394774ワット発電中さん:05/01/31 07:37:53 ID:IqnYELC6
一寸考えたら解るんじゃないの?
どう合成するんだろうな?
395774ワット発電中さん:05/01/31 11:07:32 ID:VuTdOulL
ちょっと考えれば無問題ってわかるだろ?
396774ワット発電中さん:05/01/31 19:06:37 ID:No/30jG6
>>392
don't careをちゃんと理解してれば無問題
397774ワット発電中さん:05/01/31 21:31:21 ID:MnhTrFk+
>>392
記述していて使う必要がなければ使わなければいいだけだろ
論理圧縮という言葉を知っているのか?理解しているのか?
398774ワット発電中さん:05/01/31 22:58:21 ID:UJAMHcO2
いろいろ意見ありがとうございます。
僕の意見を書くと、個人的には、casexは全体を把握しやすいと
思うので、いろんな条件をassignで書くより
記述ミスを見つけやすいと思っているんですけどね。
最近は回路規模より可読性重視記述になっています。<自分
そうするとどうしてもcasexを使いたくなるんですが、可読性って
観点で見た時、casexとcase、assignやifでどれがいいと思います?
一行レベルならassign xx = dfdsaf ? fasdf : fdasf ;
2、3の条件ならif
それ以上はcasexって感じかなぁと思っています。
399774ワット発電中さん:05/01/31 23:30:28 ID:v+oceb8s
casexで書いたからって回路規模に影響するとしたら、
単に合成がタコなだけでしょ?
ま、現実にタコが多いかどうかは別として。
400774ワット発電中さん:05/02/01 15:29:41 ID:t1gfk7GF
>>398
casex で複雑な条件文を書くというのがピンと来んです
こんな感じ?

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 (...
:
:

以上俺トンチンカンな事言ってたらスマンです
401774ワット発電中さん:05/02/01 16:44:22 ID:bFxl4Nj+
>>399
マジであの記述をまともに合成出来ると思っているならお前は相当の馬鹿だよ。
402774ワット発電中さん:05/02/01 18:17:33 ID:t1gfk7GF
>>401
casex がまともに合成できないツールなんて
バージョンアップ直後でバグが枯れてないリビジョンのDesignCompilerくらいしか
経験がありませんが
399のどこが相当な馬鹿なのか説明して頂けますかね
403774ワット発電中さん:05/02/01 18:43:10 ID:dVmq6MN4
>>401
「あの記述」ってどの記述だ?
404402:05/02/01 19:32:37 ID:t1gfk7GF
こういうツールもあるのか
ttp://support.xilinx.co.jp/xlnx/xil_ans_display.jsp?BV_UseBVCookie=yes&getPagePath=16808&iLanguageID=2
合成ツールがこれ一択という様な環境で作業してたら
「casex はRTLで記述しちゃダメ」ってのがまるで常識の様に思えて来るのかもな
そういう事ですか? >>401
405774ワット発電中さん:05/02/02 00:07:13 ID:W96QUaCu
Casex文で合成される回路ってのが想像出来ないんだがどんな回路になるんだ?
人間が一寸考えて回路にするのは面倒そうだなと思う記述ってなるべくしない方が
合成も軽くなる気がするんだが。
406774ワット発電中さん:05/02/02 01:18:18 ID:2Ut00k8h
>>405
プライオリティつきエンコーダとか
407774ワット発電中さん:05/02/02 01:24:05 ID:W96QUaCu
いや、不定やzを含んだ記述ではどう考えても回路にならない物があるように思うが。
408774ワット発電中さん:05/02/02 01:47:39 ID:gGDFq+tj
よく知らないけど、casezとかcasexって、
単に入力側のdon't caseを書けるようにしただけじゃないの?
caseだと全部書くところを圧縮したものだと思ったんだけど。
入力が本当にzかどうか判断しろといわれたら、
マッピングするテクノロジによっては困るわな。
409774ワット発電中さん:05/02/02 01:50:38 ID:2Ut00k8h
>>407
いや、不定やzのビットは比較をしないdon't care扱いになる。
casex文なら

  3'b1xx: 処理;

と書くと、合成ツールはMSBが1だったら他のビットは
どの値になっても構わないと解釈するので、
MSBにプライオリティのついたエンコーダが生成される。
少なくともDesignCompilerはそうだった(はず)。

casex文を使うと真理値表っぽく見えるので
使い方によっては可読性が良くなる場合もある。
410774ワット発電中さん:05/02/02 01:53:22 ID:W96QUaCu
>>409
では具体的な回路を教えて下さい。
411774ワット発電中さん:05/02/02 01:58:42 ID:2Ut00k8h
>>410
ぐぐったらこんなところを見つけてみました。
http://www.kt.rim.or.jp/~nagai/opendoc/first_verilog_8-10.html

ここの「□casez文、casex文」に出てくる例文は合成可能ですよ。
リンク先は「ビヘイビアでしか書けない。」と書いてありますが…
412774ワット発電中さん:05/02/02 02:15:06 ID:W96QUaCu
てか、不定(zを含まない)はあり得る条件だからどうなるかは予想出来るし回路もだいたい解るよ。
設計図を使った設計でもでは割とあるし。(例えばさっき出たプライオリティーエンコーダとか)

しかしだ、zを条件に含むとどうしようもないよ。信号がzかどうかは例えばトランスミッションゲート、バッファの
コントロール端子の論理を見ることになるわけでそうまでしてcasexを使う意味を考えてしまう。
413774ワット発電中さん:05/02/02 02:19:16 ID:W96QUaCu
不定は、プライオリティーエンコーダの例もあって割と使う例なので良いとしてもzを含む場合は
お手上げじゃないかと。
トランスミッションゲートやバッファのコントロール端子の論理をもって信号をzと判断するのは
ありと言えばありだがそこまでやる意味があるんだろうか?
414774ワット発電中さん:05/02/02 05:24:02 ID:DN2yAtnL
ISEを複数起動するようにする技を教えてくれぇ。 昔はできてなかったっけ?
415774ワット発電中さん:05/02/02 07:09:37 ID:2Ut00k8h
>>412
> てか、不定(zを含まない)はあり得る条件だからどうなるかは予想出来るし回路もだいたい解るよ。
> 設計図を使った設計でもでは割とあるし。(例えばさっき出たプライオリティーエンコーダとか)

あう、矛盾してないですか? >>405-407のときはcasex文を使って合成された回路が想像できない
とおっしゃってたのでプライオリティエンコーダと答えたつもりなのですが、
予想できると言われると立場がないです…

で、繰り返しますけどcasex文ではxもzも同じdon't care扱いになるんです。
416774ワット発電中さん:05/02/02 15:12:31 ID:GiwAyeAi
W96QUaCuはdon't careの意味を理解していないと思われ
417774ワット発電中さん:05/02/02 15:38:05 ID:W96QUaCu
別にそう言うわけではない。
dcを残したままだと合成が重くなるのは割と最近まで常識だったし
今でも合成回路の規模、速度に影響するから使わない方が良い。
418774ワット発電中さん:05/02/02 15:53:45 ID:AhxK4eGB
don't careを残したままの設計でも合成出来るからokってのは一寸強引すぎないか?
チューニングとは無縁の合成しっぱなしがokな設計で済んでる環境ならそれでも
良いのかも知れないが。
なんかもの凄いギャップに驚いた。
419774ワット発電中さん:05/02/02 17:03:40 ID:xIPziGYg
>今でも合成回路の規模、速度に影響するから使わない方が良い。

うーん、そんな事は無いと思うなぁ
俺は Don't care を条件式に書くのは
casex でのエンコーダ系やアドレスデコーダ限定だけど
その場合にはコードの可読性および保守の容易性も上がるし
合成結果の回路が悪くなったという経験も今まで無いよ

念のため手元の合成ツールのマニュアル見直したけど
「casex をこのように使用すると他で記述するより簡潔なRTLになる」
というような事しか書いてなかったよ
420419:05/02/02 17:08:42 ID:xIPziGYg
ちなみにそのマニュアルは6年前のもの
421774ワット発電中さん:05/02/02 18:17:46 ID:AhxK4eGB
DWMになって恐縮だが、CPUの命令デコーダー合成の記事でdon't care
の合成に及ぼす影響がつい最近記事なっていたのをみて、未だ状況は
変わってないんだなと思ったのだが。
422774ワット発電中さん:05/02/02 19:55:36 ID:xIPziGYg
>>421 もし何月号だったかわかったら教えて
423774ワット発電中さん:05/02/02 20:52:51 ID:AhxK4eGB
>>422
確か一二月号だったと思うが。
色々と興味深いことが載っていたと記憶してる。
424774ワット発電中さん:05/02/02 23:26:37 ID:xC6GoMdG
don't careの使い方によって問題が生じたなら
それはdon't careの使い方がタコだったからでしょ。
常識的な使い方をしてれば無問題。
可読性の良いRTLになるし、
期待どおりに論理圧縮される。
425774ワット発電中さん:05/02/03 00:02:01 ID:AhxK4eGB
そう言った意見はあまりに素人臭すぎ。
本当に設計したことあるのか?
426774ワット発電中さん:05/02/03 01:26:29 ID:3rLmDFC6
制約条件ぎりぎりの大規模設計なら dont care なしでギチギチに最適化するだろうし、
納期優先 FPGA なら、さくっと使ってさっさと終わらせるだけの話。
状況に併せて使い分けるのがVerilog使いのプロでしょ。
制約条件厳しい設計できても、そういう手の抜き処が分からないってのは、
その環境では設計のプロかもしれんが、Verilog使いとしては半人前。
427774ワット発電中さん:05/02/03 01:28:00 ID:Nn7FeDzh
今日、某大手メーカーの設計部の主任さんに会って打ち合わせをした。
『1000エレメント程度であれば小規模な回路の部類に入ります。
すぐにできますよ。』
と言われた。
いかに自分がちっぽけで未熟者であるかということがわかりました。
やはり大手のメーカーさんは住んでいる次元が違うんですね(´・ω・`)
428774ワット発電中さん:05/02/03 04:48:19 ID:gPaOO2fp
>>427
1エレメントってどういう単位?
429774ワット発電中さん:05/02/03 07:58:08 ID:DD9ZkZHa
LEじゃねえか? 4入力1出力LUT+FFか?
430774ワット発電中さん:05/02/03 12:24:32 ID:ooaphGaY
>427
1000LEだと内容によるけど1週間くらいでシミュレーション検証までかなぁ〜
遅い?
431774ワット発電中さん:05/02/03 12:55:34 ID:JnlefYw4
> 制約条件ぎりぎりの大規模設計なら dont care なしでギチギチに最適化するだろうし、

うーん、失礼ながら don't care の性質を判ってないと思うよ
don't care は曖昧に回路を表現するための手段ではないし
同じ論理に対して don't care を用いた記述か そうでない記述かによって
合成結果に無視できない差が出るような合成ツールは不出来だと思う
432774ワット発電中さん:05/02/03 12:59:14 ID:vqHnOfTX
ゲート換算でおよそ一万数千て所か。
確かに小規模の部類かなと思いつつHDLを使うと記述によってどうとでもなる事でもある。
演算回路を書いたりするとあっという間だし。(w
433774ワット発電中さん:05/02/03 13:01:29 ID:vqHnOfTX
>>431
だったら寺の論理合成ツールはタコなんだね。
貧乏な会社にはそれしか選択肢がないから困ったもんだ。
434774ワット発電中さん:05/02/03 13:20:52 ID:A5WyMfvF
>>431

禿同。
それから、往々にしてツールが悪いのではなく、記述がタコな場合の方が多い。
don't careの使い方が悪くて、合成ツールが迷うような曖昧な表現になっているのだろう。
435774ワット発電中さん:05/02/03 13:39:57 ID:vqHnOfTX
参考までに。

caseを使ったdon't careを含む(所謂ファンクションテーブルが穴だらけ)記述と
同じcaseを使った記述でも配列を使ったROM的決め撃ち記述では今でも確かに
回路規模と速度は変わる。
ゲート遅延が2nSとか、回路の段数が一段とかその程度の変化だが。
現実世界でこれを気にしないと行けないような局面は少ないが知ってると偶に
助かることがある。
だからと言っていつもいつもフルデコードで書く必要もないわけで臨機応変と
言ったところか。
漏れ個人はフルデコードで書くことが多いからdon't careを残す記述は何となく
気持ち悪いなと思いつつ面倒だから気にしないようにしてる感じか。
436774ワット発電中さん:05/02/03 14:15:40 ID:UbofXE+e
>>435
動作クロックによっては2nsの遅延は無視できないレベルですね。
参考にしたいので、できればそのcase文の記述をさらせませんか?
せめてcase文のビット幅だけでも・・・

遅延は使用したセルライブラリのスペックに依存するかもしれませんが。
437774ワット発電中さん:05/02/03 14:27:54 ID:vqHnOfTX
>>436
仕事の案件だから晒せないが同じ例が、DWMの2004/12のP58に載ってるよ。
この記事を見て似たようなことをしてる人が世には居るんだなと驚いた。
尤も例はVHDLだし漏れもVHDL使いだからVerilogメインの話の流れだと
完全に当てはまる例では無いかもしれないが。
438774ワット発電中さん:05/02/03 16:16:02 ID:JnlefYw4
昨日「何月号か教えて」と言った者だけどさっきその記事読みました
こういう事象の把握は大切だよね
比較実験を行ってベストな選択をしながら作っていくという場面は
自分の場合も実務上少なくないです

注意しなければいけないのは、
この記事だけで「これが最近の一般的な傾向」と判断するのは危険だという事
これはある一種類の合成ツール&ターゲットにおいての結果だから
他の場合の結果も併せてみないと一般的な傾向は判断できないものね

というより「一般的な傾向」というものが仮にあってもそれだけに頼っては危険で
結局はその都度自身で試行しベストな方法を選択する事が必要だね
(もちろん制約条件が楽な場合などは一般傾向を頼りにサクっと書きゃいい)

あれ長文になった、ごめん
439774ワット発電中さん:05/02/03 17:14:13 ID:gPaOO2fp
>>414は無理な話なのくあぁぁ?
440774ワット発電中さん:05/02/03 21:40:40 ID:N8lsZmuB
質問させてください。。
verilogでFPGAやってます。

 -( R . I ) * ( R . I )   ←R.Iはひとつの変数です
   Rは整数部4bitでMSBは符号
   I は小数部4bit
こういう計算のとき、
 -1 * ( R . I ) * ( R . I )
になりますよね。このときの-1は、単純に8'hffでよいのでしょうか。。
441774ワット発電中さん:05/02/03 22:08:18 ID:rzTMU+Im
-1 も R.I (って、書き方変だが)で表現したいということ?
それなら、2の補数なのか、符号付き絶対値なのかで違う。
前者なら、1111.1111 は -0.0001 の意味、後者は -111.1111 の意味で、
どちらも-1ではないな。
-1.000 は、前者なら 1111.0000、後者なら 1001.000
442774ワット発電中さん:05/02/03 22:33:52 ID:N8lsZmuB
>>441
ありがとうございます。

レスいただいて20分ぐらい考え込んでたんですけど、
仕様書の周囲の数字の扱い方から符号付絶対値っぽいです。
(今回は何にも考えないでコーディングしちゃってるんで…)
確認取って修正します。ありがとうございました。

今日の帰り際
 Q = (-1) * ( hoge1) * ( hoge2 )
って書いてコミットしてきちゃったんですけど、
もしそのままコンパイルしたらどういう扱いになるんですかね。
コンパイラによるのかな
443774ワット発電中さん:05/02/03 22:52:20 ID:rzTMU+Im
もしかして、文字どおり hoge1 * hoge2 って書いてるの?
それって、整数扱いになって、aaaa.bbbb * cccc.dddd
Q は eeeeeeee.ffffffff みたいになるけど、
ほっといて下位8ビットとってきたりしないようにね。
しかも、ほんとうに符号付き絶対値なら、
場合分けしないで、そのまま掛けたりしたら、わけわからなくなるぞ。
ちゃんとテストも作れるような仕様書なんだろうな。
444774ワット発電中さん:05/02/03 22:54:15 ID:RhcRdIxO
DESIGN_COMPILERで質問させてくだされ

これって記述読みこむ時にワイルドカードは使えない?
aaa_v01.vhd を読むときに aaa_v*.vhdな指定をしたいんですが・・・

後、RTL記述読むときのcompilerって内部ゲートの入力openって
チェックしてくれないのかな?
勝手に'0'固定されてるみたいなんですが・・・
445774ワット発電中さん:05/02/03 23:18:50 ID:N8lsZmuB
>>443
ありがとうございます。
はい。乗算後のクリップと捨ては小数点位置気をつけてます。
>ほんとうに符号付き絶対値なら、
仕様書いたヒトを問いつめてきます。。

すみません、
>文字どおり hoge1 * hoge2 って書いてるの?
書いちゃってます。
皆さんどう書かれてるんですか、、、、
−1は置いておくとして、今回は小数点位置が同じなので
 Q <= hoge1 * hoge2;
(8.8)  (4.4)   (4.4)   ←これは小数点位置
で、
 P = {Q[15] , Q[10:4]};
      ↑符号桁
と、書いてます。(14-11bitの判定もしてますが)
あぁぁああ、この質問ってverilog云々じゃないんですよね、ディジタル回路の基本編なんだろな
探す本を間違え…orz
446774ワット発電中さん:05/02/03 23:44:40 ID:rzTMU+Im
デジタル回路というよりは、アーキテクチャの基本編かな。
ともかく、表現方法の仕様を完璧に洗い直さないとな。
符号付き絶対値だと、正+負とか正-正のときは、
絶対値部分の大小比較をしないといけないとか、心配のタネがつきんぞ。
447774ワット発電中さん:05/02/03 23:50:54 ID:N8lsZmuB
>>446
ガクブルなので洗い直してきます。
(ていうかマジで((((;゚Д゚)))ガクガクブルブル)
ありがと。
448774ワット発電中さん:05/02/04 10:13:47 ID:3Zzi++Tx
>>444
dcモードは忘れたけどtclモードなら
  set hoge [ls *.v]
  read_verilog $hoge

入力openって、そのゲートに入れる信号をどこにもつないでいないということかな。
それならdon't careになるので処理はDC任せになってしまう。
449774ワット発電中さん:05/02/04 12:13:41 ID:nbBC7cDY
入力openって基本的にハード設計ではやっちゃダメっしょ。
ちゃんと記述しないと。
出力openならともかく。
450774ワット発電中さん:05/02/04 12:45:18 ID:YFwEnrk0
入力open?
論理合成に何か関係あるのか?
451774ワット発電中さん:05/02/04 14:05:59 ID:auxvR0GW
>>450
内部バスがHi-Zになるくらいしか思い付かんな。
シミュレーション時にでも問題になるんじゃね?
合成時にひっかかるようなとこにOpenがあるのは論外だろうと。
452774ワット発電中さん:05/02/04 23:06:53 ID:PcPFHaSl
>>444
dc_shell-tなら448の通りだな。lsよりglobの方がTclっぽいけど。read_file -format vhd [glob *.vhd]
というか、こんなディレクトリ内容に依存したものではなくて、
普通は読み込みファイルリストなるものを作るのが常套だろう。
あと、勝手にゼロ固定したというメッセージがでてるじゃないか。
というかファイルを読み込んだ後check_design コマンド叩いていないのか。
453774ワット発電中さん:05/02/04 23:24:49 ID:EzkZATa/
ツールもまともに使いこなせないのかよ。。。
デザインの質も知れてるな。
454774ワット発電中さん:05/02/04 23:47:23 ID:Qv08nITw
すみません教えてください。
Active-HDL3.1を使ってますが、シミュレーションをしていると、いきなり
”Unknown automation functiion called"と出てきて、シミュレーションできなくなりました。
シミュレーション出来るようにしたいのですが、どうすればいいのでしょうか。
おねがいします。
455入門者:05/02/05 13:45:04 ID:ESrO+/1+
Quartus2 web editionにもシミュレーターはついてるとは
思うんだけど、みんなは使ってないの?
456774ワット発電中さん:05/02/05 15:35:41 ID:CssLIlqu
maxplus2の時は付属のシミュレータ使っていたけど、
q2になってからはmodelsim-ae(だっけ?)がほとんどです。
457774ワット発電中さん:05/02/05 16:39:07 ID:K0pZVCU4
漏れもmodelsim-ae
458774ワット発電中さん:05/02/06 13:01:25 ID:b8jbvJhK
P業界って、プリント基板業界のこと?
459774ワット発電中さん:05/02/06 15:22:14 ID:dOqzDSZP
パ○チソコ?
460774ワット発電中さん:05/02/07 07:39:55 ID:+t9CCEYD
>>454
代理店聞け
461774ワット発電中さん:05/02/09 22:03:56 ID:Yx6deWLE
>>448,452
すまんが、それをDCでやる方法知ってたら教えてくれ。
できれば、
verilog -f temp.vc
ってやるときの、temp.vcをdcで読みこませれたら
一番いいんだが、いい方法ある?
462774ワット発電中さん:05/02/10 23:29:11 ID:CqylcKJ5
>>461
これなぁ、、。
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モードへ移行してくれ」というだけだし。
463SDRAMコントローラ作成中:05/02/11 15:24:08 ID:GLrczidg
CQ出版のFPGA活用チュートリアルという本で
Xilinx のSDRAMコントローラIPの改造記事があったんですが、、、、
オートリフレッシュがコマンドとバッティングしたときにFIFOで解決するとなってました。
8段のFIFOにコマンドとデータを格納しておき、バッティングした時の待ちクロックによってセレクタ動作させると・・・
でも、こんなんでいーんでしょうか?
例えば、ホスト側がずーっとメモリにしっぱなしだとFIFOが溢れるように思うんですけど?
ホスト側をバスWAIT端子でバスアクセスを中断させない限り解決できないような気がするんです。
プロフェショナルな皆様何卒教えてください。

因み、コントローラ自身は外部ホストからのリクエストでメモリにアクセスして、
そのリクエストがいつあるかわからない場合を想定してます。
464774ワット発電中さん:05/02/11 15:30:22 ID:GLrczidg
酒飲みながら書いてるもんで脱文章だらけでした

訂正1:例えば、ホスト側がずーっとメモリにアクセスしっぱなしだとFIFOが溢れるように思うんですけど?
訂正2: 因みに、コントローラ自身は外部ホストからのリクエストでメモリにアクセスして
465774ワット発電中さん:05/02/11 23:52:11 ID:VxQeqSfB
しらふで出直してこい
466774ワット発電中さん:05/02/12 00:09:11 ID:LI1JaXD0
>>465
わからんもんなぁ。おまえのおつむじゃ
467774ワット発電中さん:05/02/12 13:15:51 ID:5Wdh3uMT
>>466
このオツムにこの発言かよ。イタイ、痛すぎるよおまえ。
468774ワット発電中さん:05/02/12 13:47:03 ID:HeLBZWq7
>>467
プッ゚ アフォ晒して嬉しいか?高卒
469俺様 ◆f0ugTrYQRI :05/02/12 15:19:54 ID:Kzl/Mfv8
(;´Д`)ハァハァ  中卒でちゅが… 誰か呼んでくれたでちゅか?
470774ワット発電中さん:05/02/12 23:23:23 ID:yQha/6jB
今すごいなやんでるんですけど一万ゲートのFPGAで16bit32ポイント
のFFT回路って作れるんでしょうか?悩んでも一万ゲートで合成できそう
な回路がうかばんです。。。ちなみに回路設計経験2回目くらいです。
教授は”できないわけないじゃないウフフン”とうれしそうに笑ってました。
でも教授の言うことは5割くらいの確率で間違ってるのであんまり
信用できません。本当にできるのかどうか、できるのであればどんな風な
回路にしたら実現できるのか、ご教授いただけませんでしょうか。お願いします。。。
471774ワット発電中さん:05/02/12 23:59:12 ID:3iXD/aHF
>>470
最初に考えなければいけないことは、三角関数の値の作り方と演算方法ですね
32ポイントだと三角関数は内部で計算せずに定数として使えばよいでしょう
バタフライ演算の入れ替えはソフトでごちゃごちゃ入れ替えるより回路で一発で入れ替えるほうが簡単です
最後に実効値演算で実数部と虚数部の自乗和の平方根が必要になるから、平方根を作る回路を考える
簡単な回路ということであれば、平方根は奇数を順に引き算すれば求められるからできない事も無いかな
回路構成を考える前に演算手順を明確にして相談したほうが良いと思いますよ


472774ワット発電中さん:05/02/13 00:18:58 ID:Ft+9vbSB
計算はたとえば二進数でy=0.1001 * x だったら y = x/2 + x/16みたいな
風にしてバタフライ演算を順々にsubtypeを使ってcのプログラムの様にやっていく
風に考えてみたんですが、どうも一万ゲートに収まりそうにないです。。。
行にして1000行くらいになるし。16個の三角関数を掛けるところを一つの
モジュールにして掛け算回路を共有しても3百行くらいになります。
そもそも根本的に間違ってるのでしょうか?長い回路くむのは
初めてで参考にした設計例もFIRの極単純な物しか見たことないです。
FFTをした後には係数を少し触ってIFFTするだけです。
473774ワット発電中さん:05/02/13 00:23:21 ID:7zrLLhEp
マルチプライヤー使った時点で、1万ゲートは無理だろ。
474774ワット発電中さん:05/02/13 00:28:44 ID:c/iJ8Qzs
やっぱ共通部分は何回も使いまわすように考えないとコンパクトには収まらない
処理時間の制約はないようだから、せっせとループを廻して同じ回路を何回も使うように考えよう
16個くらいだとDFTを16階やっても同程度の処理になりそうな気もする
475774ワット発電中さん:05/02/13 00:43:31 ID:Ft+9vbSB
そうですね。もうちょっと絞って小さくしてみます。あ〜あんまり
複雑になると意味わかんないです。初心者はもっと簡単な回路から
はじめるべきでしょうか。でも教授にまた馬鹿にされそうだ。。
476774ワット発電中さん:05/02/13 00:50:13 ID:c/iJ8Qzs
がんばって、少しまとまったらまた教えてください
477774ワット発電中さん:05/02/13 05:18:20 ID:sfTzSvkG
すみません教えてください。
galaxy使ってるんですが、プロジェクト立ててコンパイルしたらエラーで
PTMがどうのこうと言ってるんですけどPTMって何ですか?

478774ワット発電中さん:05/02/13 08:03:30 ID:/b0uKPsS
>>468
アル中・低脳・学歴コンプレックスはさっさと死ね。ぼけ。
479774ワット発電中さん:05/02/13 21:32:07 ID:zaq02Jpu
.bdfの編集に関して教えてください。
バス出力(例:out[3..0])の1bit毎に
別々にoutputピンを割り当てる方法が分かりません。
(上記例だとoutputピン4本)
480774ワット発電中さん:05/02/14 00:38:50 ID:QJ7Ezpy7
>>478
高卒暴露されてよっぽど悔しいんだね。ヨチヨチ
481774ワット発電中さん:05/02/14 00:45:19 ID:5dysH6OA
>>480
中卒は生きてる意味ねぇんだよ。かぁちゃんのおっぱいでもしゃぶってろ。この童貞坊やが。
482774ワット発電中さん:05/02/14 00:55:24 ID:rYHyqA8o
>>481
よう!
久しぶりだな。
下げ方覚えたのかい?
483774ワット発電中さん:05/02/14 01:19:10 ID:6BHivdq7
>>479
これはMax+PlusII?QuartusIIどっちの話?
エディタでファイル直編集は感心しないなぁ。
484774ワット発電中さん:05/02/14 18:51:28 ID:jGjeVPSP
>>470
その前に演算にかける時間条件を示せ。
高速でリアルタイム演算が必要か1秒かかってもいいのかによって回答は大きく変わる。
時間制限が無いのなら、CPUをFPGAにぶち込んで、ソフト演算って手もあるわけだ。
485484:05/02/14 19:00:21 ID:jGjeVPSP
悪い、勘違いだ。 単位がゲートだった orz
486774ワット発電中さん:05/02/14 20:13:35 ID:ie7JUwAI
別に単位がゲートだろうが、CPUが1万ゲートで作れればいいんだろ?
487484:05/02/14 21:38:32 ID:/KsS2x+x
>>486
まぁ〜そうなんだけど、俺の頭でCPU自作する自信無かったもんで・・・
LEと勘違いしたんだよー。 NIOS余裕で突っ込めるなと。
488774ワット発電中さん:05/02/14 23:09:50 ID:nIZIhiXP
>>483
Quartus2です。すみません。
入社して早々、仕事の引継ぎでQuartus2使うことになりまして。
体得すると同時に、履歴を残して後々の教育に生かしたいです。
489774ワット発電中さん:05/02/19 12:47:53 ID:Xbzgsqkz
QualtusII 4.2WebEditionでのVHDLですが、よくわからないことがあるので質問です。

procedureの呼び出し時に、引数に"00" & hoge( 5 downto 0 )と指定したらエラーではじかれました。
ためしにhoge( 7 downto 0 )としてみると問題ないようです。
エラーメッセージはなにやら型が一致しないと言っているようですが、どちらもstd_logic_vector型で、
procedure宣言でもstd_logic_vectorとしているので不一致となるとは思えないのですが。

ちなみにこのprocedureはレジスタの読み書きをマクロ風にしてみようとして、ビットが歯抜けになって
いるレジスタを表現してみようとしたら上記のエラーになった次第です。
とりあえず全レジスタを歯抜けなしにして解決はしたのですが、どうも釈然としないので・・・
490774ワット発電中さん:05/02/19 12:55:12 ID:PajfRhvw
ageる馬鹿には答えをやらない。
491774ワット発電中さん:05/02/19 13:11:56 ID:w9pazgcN
最近490みたいなsage原理主義者つうか、
sageるのが正しいと思ってる勘違い馬鹿が増殖してるな。
スレタイに即した内容なら、ageで書いて問題なしだから気にするな489
俺はVHDL知らないから質問には答えられないがなー。
492774ワット発電中さん:05/02/19 13:56:13 ID:OnsHRRLa
俺はVHDL知らないから質問には答えられないがなー。
493774ワット発電中さん:05/02/19 14:42:58 ID:X3nOqKqJ
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
494774ワット発電中さん:05/02/19 15:07:35 ID:HTkMVX2l
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
俺はVHDL知らないから質問には答えられないがなー。
495774ワット発電中さん:05/02/19 16:02:42 ID:S7iIOrd2
何やってんだ? アホ
496774ワット発電中さん:05/02/19 19:47:07 ID:YQci5Uhz
491==495
497774ワット発電中さん:05/02/19 20:37:28 ID:m6nitJOh
>>490みたいにちょっと注意されるとキレるニワトリみたいな奴
多くなったよな。
498774ワット発電中さん:05/02/19 20:45:59 ID:PajfRhvw
ageんなって言われただけでこれかい?
499774ワット発電中さん:05/02/19 20:51:29 ID:X3nOqKqJ
>>496
「=」が2個なのにワラタ。さすがVerilogスレ。
500774ワット発電中さん:05/02/20 00:03:37 ID:0Ds5C6TH
>>496
その返り値は真か偽か。
501774ワット発電中さん:05/02/20 00:50:39 ID:bNKh22n9
真だろ。
ついでに、(491 == 495) && (491 == 497) も真。
502774ワット発電中さん:05/02/20 01:55:28 ID:hZNQrB+R
>>499
「=」が2個というのはVerilogに限ったこっちゃ無いだろ。
もっといろんな言語を勉強すべし。
503774ワット発電中さん:05/02/20 03:57:44 ID:SlW2KIp5
>>502
単に2ちゃんで”=”と書くのが一般的だからだろ。
「こいつはVerilog以外の言語でも”==”が使われてるのを知らないんだ!そうに違いない!!」
って浅はかで偏った奴だ。(w
504774ワット発電中さん:05/02/20 04:46:25 ID:Hrq/jZPm
491は×なやつだから常に偽を返す。 ===で比較しよう
505774ワット発電中さん:05/02/20 06:50:30 ID:62Jkgl2l
>>504
んなのあったっけ? VerilogもVHDLもまともにわからんのですが
解説お願いします。(C++、Java、BASICなどはわかります)
506774ワット発電中さん:05/02/20 12:59:18 ID:ISRILzfO
10'd491===10'd497はfalse
>>10'd497の俺が言うんだから間違いない。
507774ワット発電中さん:05/02/20 15:25:43 ID:CYeF6uYf
>>484
すいません。あまり問題ないかなーと思って勝手に思って書き込まなかったんですが
リアルタイムです。。。音声から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回路で最終的にはバンドパスフィルター
みたいな事をしたいなぁと考えてます。。。
508774ワット発電中さん:05/02/20 15:51:46 ID:LwrlHcWl
>>489
std_logic_vector'("00" & hoge( 5 downto 0 ))
でもエラーになるのかな?
stringかbit_vector辺りでオーバーロードしてない?
509774ワット発電中さん:05/02/20 16:14:51 ID:LYDFFhPf
>507
バンドパスフィルターなら
FFTではなくてFIR フィルターでは問題あるのですか?
乗算器のあるFPGAなら簡単に組めると思います。
510774ワット発電中さん:05/02/20 16:22:29 ID:CYeF6uYf
>>484
ああ、すいません。大学でより複雑な回路を組まされるんですがその前の
演習問題ってことでやってます。Firは別の人が先に作ってしまったので
同じものをやるのもなぁってことでFFTをやろうと思いました。
511774ワット発電中さん:05/02/20 16:23:01 ID:CYeF6uYf
訂正
>>484 -> >>509
512774ワット発電中さん:05/02/20 17:39:01 ID:6YJdgH7h
>>506
へえ、別人にしては書き出しの文体がまるで同じ。
奇遇なことがあるもんだねぇ。へえ。( ´,_ゝ`)

> 491 :774ワット発電中さん :05/02/19 13:11:56 ID:w9pazgcN
> 最近490みたいなsage原理主義者つうか、

> 497 :774ワット発電中さん :05/02/19 20:37:28 ID:m6nitJOh
> >>490みたいにちょっと注意されるとキレるニワトリみたいな奴
513489:05/02/20 21:05:10 ID:YwwvT9HM
>>508
レスありがとうございます。
明日会社いって試してみます。
オーバーロードは使っていないので(プロジェクト全体でprocedureはこれ1つだけ)
たぶん影響はしていないと思います。
514774ワット発電中さん:05/02/20 22:10:44 ID:LwrlHcWl
>>513
本来 "00" & hoge( 5 downto 0 ) でもOKであるべきだと思うけど、
エラーの内容からして、"00"がstd_logic_vectorと認識できないような気がする。
515774ワット発電中さん:05/02/21 23:39:15 ID:XRKE4dzJ
もうひとつ可能性として、procedure (signal a : in std_logic_vector)とか宣言しているなら
>>489 のような状況になるかも。ただエラーメッセージが489とは異なると思うけど。
その場合には procedure (a : in std_logic_vector) に変えてみるとか。
516774ワット発電中さん:05/02/22 20:06:42 ID:GHiFVA4H
ちね
517774ワット発電中さん:05/02/23 03:43:07 ID:eRK4+v3c
初めてカキコします
>>1に何か作って遊んでみませんか、とありますが
例えばどんな面白いものが作れるんですか?
518774ワット発電中さん:05/02/23 16:19:06 ID:UZuM1Tn4
つーかcで描いたビヘイビアさえ動かない。。。
死のう
  ||
 ∧||∧
( / ⌒ヽ
 | |   |    
 ∪ / ノ
  | ||
  ∪∪
519774ワット発電中さん:05/02/23 17:23:45 ID:UZuM1Tn4
あ動いた。やった。つーか阿呆みたいな所間違ってた。。。
520774ワット発電中さん:05/02/24 23:44:35 ID:WTK8MSBO
>517
そりゃPONGだろう。
521774ワット発電中さん:05/02/25 09:43:45 ID:qRViqlEU
>519
あれ?死ぬんぢゃなかったっけ?
522774ワット発電中さん:05/02/27 00:55:52 ID:5QzVmkDw
>>521
しのう、こうしよう。
523774ワット発電中さん:05/02/28 19:50:21 ID:JQ/IxlAG
そんなことより、シミ 美容 どう?
524 ◆YMO/ALTERA :05/03/01 16:38:22 ID:3BXBbWb7
>>517
亀レスですまん。俺はトリップ検索基板に仕立てて遊んでる。
525774ワット発電中さん:05/03/05 23:55:33 ID:+r6YvIeG
初歩的なことで申し訳無いです。

符号付の乗算なんですが、
例えば、12bit同士の乗算で、(積は24bitで宣言)
 積 <= 805 * 002(MSBは符号桁)
としたときに、modelsimで「00100a」が返りました。
んでも、805のほうはMSBに立ってるので、期待値は「fff00a」です。
気が向いてMSBを32bitまで拡張したら期待値が出ました。本来はどう記述すべきでしょうか。
宜しくお願いします。
526774ワット発電中さん:05/03/06 01:49:09 ID:xbwFXUtr
どこかで乗算は−1〜1の範囲にして計算するとモテモテと書いてあった
527774ワット発電中さん:05/03/06 11:47:46 ID:Gqq2Ffpe
>>525
> 符号付の乗算なんですが、
Verilog-95だと、regとかビット数指定の定数は全部unsigned扱いなので、
記述側で符号拡張してやるとかしないといけないんじゃないかな。
Verilog-2001だと、reg signed と宣言するか、
定数なら 12'sd805 とかみたいに s をつければいけるはず。
規格見ただけで、試してないからわからん。
528774ワット発電中さん:05/03/06 13:17:49 ID:bCe6kmA8
>>526-527
thx!!!

>Verilog-95だと、regとかビット数指定の定数は全部unsigned扱い
うわぉ、そうだったんですか!
では、32bit拡張は対応手段としては間違ってはいなかったのか…

>Verilog-2001だと、reg signed と宣言するか、
定数ではないので↑これを試してみます。
ありがとうございました!(感涙
529525=528:05/03/06 13:19:25 ID:bCe6kmA8
すみません、勤め先行かないとツールが無いので、
明日試したら報告します。
530774ワット発電中さん:05/03/06 16:09:22 ID:engYMn/n
乗算って符号拡張するだけで合うんだっけ?
シフトと加算でやる乗算の場合、乗数(805*002の002の方)が負の時は、
それでは合わないと思っていたが…
531774ワット発電中さん:05/03/06 20:24:31 ID:cfGiKREI
>>527-528 ,525
符号拡張の記述は 具体的に どうやってますか?
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) と考えると、わかりやすいかな?
532774ワット発電中さん:05/03/06 22:14:37 ID:bCe6kmA8
>>530
被乗数(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分間考え込んだけど)

ありがとうございました。
533531:05/03/06 22:27:35 ID:cfGiKREI
>>532
ごめんなさい、ミスってました。$signed( )は、Verilog2001から みたいでした。
1995時代の教科書には載っていなくてあたりまえです。 出直してきます…
534774ワット発電中さん:05/03/06 22:38:46 ID:bCe6kmA8
>>533
いえいえ、丁寧にthxです。
俺の本、$signedについて書かれてませんでした…orz
みんなどんな本使ってんですか…(この議論は何回も出てますが)
535525:05/03/07 11:00:34 ID:Znwft+K8
確認sim
a = 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宣言で逝きたいと思います。
ありがとうございました。
536774ワット発電中さん:05/03/07 11:00:51 ID:YUoHpx7p
>>532
>思いついたまま適当に書いてたので、A*Bの直前で
> = (被乗数[12])? {20'hfffff,被乗数} : {20'h00000,被乗数};
>などと書いておりました。

符号「拡張」の記述なので、
意味的にも、出来上がりの回路イメージ的にも
{20{A[11]}, A} って書くのをおすすめ。
Verilog2001で書くようになってからは
この辺のとこは気にしなくなってきたけどね。
537525とか:05/03/07 15:50:28 ID:Znwft+K8
>>536
>{20{A[11]}, A}
こんな書き方があることすら知らなかったです…orz
欲しかった書き方です!thxです
538774ワット発電中さん:05/03/07 23:51:34 ID:LNoYKNzM
Verilatorを使っている人、いますか?
539774ワット発電中さん:05/03/18 01:30:46 ID:2eZlcuhs
$sined は 2001について書いてる本じゃないと載ってないはず。
2001の規格をネットで探すとヨロ氏
キャプションのフォントがエラーで読めない・・・鬱
540774ワット発電中さん:05/03/20 00:11:07 ID:tOeRyS3A
>>539
thx!!

2001について書いてある本…ってどんなんあります?
探してくる〜
541774ワット発電中さん:05/03/20 02:21:39 ID:tOeRyS3A
で、見つからんわけだが。orz
542774ワット発電中さん:05/03/20 11:05:41 ID:OX3JXprh
こんにちは
先日、CQ出版の「FPGAで学ぶ・・・」という
ボード付きのテキストを買ったのですが
ひとつ分からない事があるのでおしえてください

ボードには電源スイッチ、リセットスイッチがなく
コンパイル後DLして動作を確認したあと
自前で用意したACアダプタのジャックを
ひっこ抜いて終了、という手順で使っているのですが
こういうボードの扱いとしては正しいのでしょうか?
(いきなり昇天しそう・・・)
543774ワット発電中さん:05/03/20 12:25:41 ID:ariYRaYE
>>540
2001について触れてる日本語本で俺が知ってるのは小林の改訂版の付録部分
あと英語なら、

IEEE1364 Verilog-2001.pdf
544sage:05/03/20 20:13:32 ID:XoBTZJwB
>>542
俺も買っているけれど、FPGAに対するパワーオンリセットなNPROGRAMピンの
プルアップ抵抗でリセットからCR時定数でリセット解除されているからOK.
ユーザのリセットに関しては外部スイッチでリセットできるからそれでヨシ。

電源スイッチが無いのは痛いけれど、まー基板はオマケだからね。

>>536
部外者だけれど、俺も勉強になった。
ぜひ「FPGAで学ぶVerilog-HDL/2001」を書いてケロ。
545774ワット発電中さん:05/03/21 00:08:29 ID:l1B5NFcC
>>543
ありがと!
546774ワット発電中さん:2005/03/26(土) 16:29:47 ID:mxqPkEM6
>>543
ありがと!
547774ワット発電中さん:2005/04/07(木) 00:39:34 ID:9xCEI+Uy
アルテラ、Q2_WEB.Ed、VHDLで設計をしてきたのだが、
ICの入手性、コスト、容量の面からザイリンクスを使おうか
考え中。でもザイのフリーツールでの波形エディタがQ2や
MAX+2に比べて使いづらくてしょうがない。
でもある奴から、言語で入れればかなり楽と聞いた。
そこでこれを勉強したいのだが、いい本やツールがあれば
教えてほしい。
548774ワット発電中さん:2005/04/07(木) 03:40:12 ID:uZ8+KOh7
いい本は、自分で本屋にいってわかりやすいと思うものを購入が一番。
549774ワット発電中さん:2005/04/07(木) 13:28:08 ID:WPGzVTcc
Q2で設計/sim後、
ISEに乗せかえ
VHDLならできるっしょ。

coregen使うと、Aに戻れない・・・
550774ワット発電中さん:2005/04/08(金) 14:46:02 ID:Y8DuNm2U
XC9500 って1度も書き込んでない生のチップに
初めて書き込むとき、もしくは、未使用だった領域に書き込むとき
ってものすごく時間かからない?

iMPACTがハングしたと思って、強制終了させて、再書き込みしたら
その時点までのプログレスメーター位置までは高速で書き込めるようになったけど
それ以降がやはり遅いです。

551俺様 ◆f0ugTrYQRI :2005/04/08(金) 19:23:45 ID:j3EckZzX
(;´Д`)ハァハァ  そうでちゅか?
ボクチンのは15秒以内で書き込み終了するでちゅよ!
552774ワット発電中さん:2005/04/09(土) 21:56:50 ID:4kmfxmZ9
昔、20kの書き込みに15分かかったことがあった。


ショボいノートPCだったけど。
553774ワット発電中さん:2005/04/09(土) 23:00:12 ID:xyXhrluB
>>551
キミの言うとおりだったよ。
配線が間違ってた。
逝ってきます。
554774ワット発電中さん:2005/04/10(日) 00:39:47 ID:tgcv7tX5
>>547
波形エディタつかってテストベンチつくるんじゃなくてHDLで直接テストベンチ作って、modelsimでシミュレーション
するのがよっぽど効率的だよ。波形エディタ使ったことあったけどこりゃあかんとすぐオモタよ。
これはQ2でも同じだけど。

>>549
ほぼ等価なのがMegaWizardにない?スンナリとは戻れないけど。
555774ワット発電中さん:2005/04/10(日) 01:00:34 ID:6N8QjS9m
>554
FIRとかCORRとかあたりは無料(ISE製品版に付属)なんだけど、
Aではフィルタとか有料じゃなかった?
まあ、仕事で使うなら買うけどさ。
556774ワット発電中さん:2005/04/11(月) 12:13:19 ID:KxEx39FO
正規ライセンス版をお持ちの方は、無料もございますわよ。

ttp://www.altera.co.jp/products/ip/design/basesuite/ip-basesuite.html

557774ワット発電中さん:2005/04/11(月) 17:06:02 ID:12+TlMsi
coregenの方がいろいろ種類あるなぁ
558774ワット発電中さん:2005/04/12(火) 12:20:44 ID:tLxUp4KR
HDLの資格とかないんすかねぇ。
資格手当て申請できるんだけどなぁ〜
559774ワット発電中さん:2005/04/13(水) 00:35:32 ID:l0pQ9CHP
>>558
ttp://www.hdlab.co.jp/service/esa/esa.html
公的資格じゃないけど・・・
560774ワット発電中さん:2005/04/14(木) 13:10:15 ID:FMaL+f9E
>559
へぇ〜
受けた香具師様いらっしゃいますか?
561774ワット発電中さん:2005/04/14(木) 20:14:19 ID:uRHFwjmN
QuartusでVHDLから回路へするやり方がよく分かりません。
誰かご教授をお願いしますだ
562774ワット発電中さん:2005/04/14(木) 20:20:28 ID:G8P9tpwX
Help->Tutorialとか
563774ワット発電中さん:2005/04/14(木) 21:08:28 ID:X10C6rc+
>>561
RTL Viewer の事を言ってるのかな? あんなもの糞だぞ。
回路図から何の回路ブロックか読取るだけで一苦労。 自力で回路図書いた方がマシ。
ついでに言っとくが、web edition じゃ使え無いからねー。
564561 :2005/04/14(木) 21:56:07 ID:H3pVV/tz
>>563
そうなんですか・・まだ使い始めて2日目なんで・・
良い解説サイトとか無いですかね?
565774ワット発電中さん:2005/04/15(金) 04:18:46 ID:G3eRFWCG
Mentor系(leonardoとかPrecision)のブロック図表記はよくわからんが、
Synplifyの表記ってそんなに糞か?
RTL viewさせては、、、
ホホーこんな風に合成すんのか・・・と感心する俺って・・・レベル低すぎんのか?
566563:2005/04/15(金) 19:53:03 ID:+xIYTXZP
あれ? 回答勘違いしてるか? 質問の意図はどれだ?
 @VHDLから回路図を排出する方法
 AVHDLから回路を作る(論理合成)方法
 BVHDLから現実に動作するALTERAをプログラムする方法
俺は@だと思って回答したんだが・・・ RTL_Viewer なんか解説するまでも無いだろうし、あるとも思えない。
567774ワット発電中さん:2005/04/15(金) 22:12:19 ID:0FnoZLHX
RTL Viewerみたいなスケマティック表示は慣れないと有効性が分らないよ。
決して初心者だましのツールではないと思う。
RTL書いてるときにスケマティックのイメージが頭の中で湧き、
スケマティックをみるとRTLが浮かんでくる位にRTLを習熟すると、
よさが解るし、DCなんかのマニュアルに書いてあることの意味が本当にわかってくる。
>>563みたいなこと言う奴がよくいるが、単純に解ってないだけだと思う。
568774ワット発電中さん:2005/04/15(金) 23:05:13 ID:q2aABNl8
糞とまでは思わないけど、自分の合成後の回路イメージと違うところが
あると、違う場所によってはちょっとむかつく…
まぁ合成エンジンの癖をつかみ切れてない自分に対しての怒りというか…
569774ワット発電中さん:2005/04/17(日) 11:53:22 ID:DyEB70tc
>>567
> RTL書いてるときにスケマティックのイメージが頭の中で湧き、
> スケマティックをみるとRTLが浮かんでくる位にRTLを習熟
ここで習熟と思ってる人多いおおいよなぁ・・・
スケマなど思い浮かばない新人の方が、余程いい記述をするのはこのあたりに
原因があると思う。
570774ワット発電中さん:2005/04/17(日) 15:38:38 ID:VfjBGcTo
てか、回路の中のデータ、信号のフローを考えるとこちらの思い通りに
動かしたい場合はどうこねくり回そうがRTLに帰着するわけでプリミティブ
レベルではないにしろスケマが思い浮かばないようでは良い合成は
不可能で内科医?
現状では。
571774ワット発電中さん:2005/04/17(日) 20:17:19 ID:EWscBuSq
教えてください。
20msecパルス幅のパルスを入力、その15msecの状態をサンプリングし、入力
パルスが入力されたことを示すステータス信号を生成する。ステータス信号
がクリア信号により初期化される回路を作りたいんですが、検討がつきません。
572571:2005/04/17(日) 20:18:47 ID:EWscBuSq
VHDLで記述してます。基準周波数は1kHzです。
573774ワット発電中さん:2005/04/17(日) 20:55:35 ID:/2YYovtH
宿題は専用スレがあるよ
574774ワット発電中さん:2005/04/18(月) 00:20:41 ID:Cp0PhkM+
>>571
んなもんSystemCで書いとけ!!
575774ワット発電中さん:2005/04/18(月) 18:48:22 ID:azmNEgTc
>>571
真面目なFPGAサイトを荒らさないで。
576774ワット発電中さん:2005/04/18(月) 22:25:44 ID:Mq041glN
宿題スレは別にあるんだから無視するに限る。
577774ワット発電中さん:2005/04/19(火) 19:44:16 ID:f1U1B1YP
> 真面目なFPGAサイト
宿題なら自分でやれ、と言われたようです(w
578774ワット発電中さん:2005/04/19(火) 22:13:53 ID:Rj/jXeTv
俺も真面目なFPGAサイトでハケーン
579774ワット発電中さん:2005/04/21(木) 21:16:38 ID:wy5ueKDP
Verilog使い始めたんだけど、VHDLに比べ、エラーチェックゆるすぎ。朝から晩までシミュレーション。シミュレーションおたく用言語だね。
580774ワット発電中さん:2005/04/21(木) 22:02:46 ID:ySzRt6Hy
CとPascalみたいなもんですから・・・ってか?
581774ワット発電中さん:2005/04/21(木) 23:33:13 ID:M/IlrLxb
どなたかシリパラのmoduleの書き方教えていただけませんか??
かけなくて本当に困ってます。
よろしくお願いします
582774ワット発電中さん:2005/04/21(木) 23:36:16 ID:G6VzUtl+
Verilogのあいまいな言語仕様をメシの種にしてるところ
EDA関係では多いからね。
実は大規模な開発ではVHDL使った方が楽というのは
確かだが、これは大きな声では言ってはいけない。
583774ワット発電中さん:2005/04/22(金) 00:29:10 ID:pUETsLb+
大規模ってどのくらいから大規模なの?
584774ワット発電中さん:2005/04/22(金) 01:22:12 ID:eijszqMM
回路規模というよりは設計者の頭数かな。

まあ一昔前だとVerilogの利点はあったよ。主にEDAツールの
関係からだけど。今はVHDLでもなんとかなる。

Verilogの大人数設計の場合は某ガイドラインに添って記述
しろってことだけど、あんなの読む時間もったいないよ。
585774ワット発電中さん:2005/04/22(金) 01:39:07 ID:lhYRbtd1
某ガイドラインって一冊 5万くらいするやつかな?
586774ワット発電中さん:2005/04/22(金) 08:37:39 ID:17Zv8za+
大体SystemVerilogとか言ってるけど、CからC++への言語仕様の拡張の時だとコーディング環境そのものが変わった。
言語だけでは効果が薄い。今のEDAベンダにそんな環境は作れない。つまりしがらみの無い新しい開発はVHDLを使った方がいいよってこと。でもそんな開発ほとんどないんだけど。
587HDL初心者試行錯誤中:2005/04/22(金) 22:04:42 ID:ikgWlxt5
VHDL と Verilog とりあえず両方試してみようと思って、1回づつ仕事で 10000LE クラスの
ALTERAで設計してみたところです。
Verilog の方が記述量が少なくて若干楽かな と思ったんですけど、将来的な事も見越して
考えると VHDL をマスターした方がいいんですか? 次からどの言語使うべきか迷ってます。
SystemC とか言わないでね。 弱小企業ゆえ VHDL,Verilog くらいしか選択肢はありません orz
588774ワット発電中さん:2005/04/22(金) 22:28:20 ID:HXAAPBVP
>>587
VHDLが良い
弱小企業ってどれぐらいだよ?
資本金と売り上げを教えて
589774ワット発電中さん:2005/04/22(金) 23:03:07 ID:ZpJ/XlHH
でも、昔からそうだけど、言語の世界って何故か汚い方が勝つ
というジンクスが・・・
590774ワット発電中さん:2005/04/22(金) 23:08:58 ID:lhYRbtd1
おいらは、昔はVHDLだけだったが最近はVerilogだけになってるよ…
591774ワット発電中さん:2005/04/22(金) 23:23:28 ID:YLTQ6HcR
寺のFPGAを使っている時間が長い所はVHDLが基本だと思う。
ウチもそうだし。
所が趣味の方は、例の低価格Verilogを使ってるので今は両刀に
なった。(ウヘ
592774ワット発電中さん:2005/04/22(金) 23:37:43 ID:kDP1PSXN
>587
Verilogだよ。

VHDLみたいく記述量多くて、きちっとしてたら、
そこでバグとれちゃうじゃん。
そうなったら、コードチェッカも売れないし、
アサーションとかプロパティチェッカとかの
ありがたみも少なくなるし、なによりシミュレータが数
売れなくなるじゃん。
次はSystemVerilogがあるんだからおとなしくVerilog
使っとけってこった。

とEDAベンダーの人間は心の中で思っている。

593587:2005/04/23(土) 00:23:21 ID:JFVybF3M
みなさんレスありがとうございます。 貧乏人にはVHDLの方が良いってとこでしょうか。

>>588
3000万以下 というか、かなり下の方・・・ あまり突っ込まんでくらはい。
Q2だけは何とか買って貰った。
594774ワット発電中さん:2005/04/23(土) 00:41:47 ID:mpw5sUre
趣味以外にもメーカで昔から言語で設計している部署の
仕事してるとverilogになると思う。
VHDLは本とかで「これからは言語で設計」と騒ぎ出して
から始めたところが多い気がする。
595774ワット発電中さん:2005/04/23(土) 02:01:13 ID:cALcLF6f
altera(だったと思うけど)DSPビルダーってどうなの。
CレベルからFPGAに落とせるやつらしいけど。
これが出回ったら、HW言語書きは失業してしまうのでしょうか。。
596774ワット発電中さん:2005/04/23(土) 03:37:52 ID:vRR/Pj17
Verilog2001でそれまであったVerilogの不満もほぼ解消じゃないの?そのあとSystemVerilogもSystemCより確実な
論理合成が期待できるだろうし。
記述のしやすいVerilogがぜったいお勧め。
VHDLは、登場したときから、そして、今も、下請けやってるとか米国防総省に納入品あるならともかく、
VHDLをつかわにゃならん理由がまったくない。
記述量多いわ、プリプロセッサはほとんど皆無。
わざわざCのプリプロセッサ通してたりする。
作業効率悪すぎ。しかもRTL書いてる限りはほとんどVerilogとやれることに差がない。今更存在意義がない。
あと
VHDLでVerilogのfunctionような明示的な組み合わせ回路の合成法ってあるんか?
597774ワット発電中さん:2005/04/23(土) 06:50:56 ID:iadIVeDd
VerilogがEDA業界を支えているのは間違いない。
LSIメーカーのCAD部門もそのおこぼれに与っている。
設計の人間もいつそっち側の人間になるかもしれない。

ってことでVerilogだよ。
598774ワット発電中さん:2005/04/24(日) 09:17:10 ID:O0zfwGMJ
俺HDLはVHDLで入門したけど
verilogを試しに使ってみたらこっちの方が書きやすくて
いまはverilogだよ。
組み込みやっててCを使ってるとverilogがなじみやすいし。

ただHDLで大規模な高度なアプリをまだやったことがないので
そういうときにどっちの言語が有利なのかが分からないけどね。

599774ワット発電中さん:2005/04/24(日) 15:20:14 ID:bkz91xeL
俺は逆
曖昧な記述が出来てしまうVerilogはどうにも気持ちが悪くて
VerilogでもVHDL風の書き方をしてしまう。
600774ワット発電中さん:2005/04/24(日) 16:06:56 ID:y3J6Uhd6
>>598
俺も同じ。
VHDLでやってたけど、作業が遅々としてすすまなかった。試しにVerilogにしてスイスイって感じだった。
予約語にしても長ったらしすぎるんだよね。
一般にVerilogから入った人はVHDLが嫌いになるっていうけど、VHDLから入って(、Verilogの便利さ知って
VHDLが大嫌いになった。VHDLは読むけど二度と書かない。
601774ワット発電中さん:2005/04/24(日) 16:19:09 ID:bkz91xeL
随分了見が狭いな。
602774ワット発電中さん:2005/04/24(日) 17:27:13 ID:pDbQ6OJu
不真面目なFPGAサイトってどこ?
603774ワット発電中さん:2005/04/24(日) 20:15:36 ID:NIxmJdRU
俺はVHDL派かな。
ベリは文法的には楽だけど、ミスでも通ってしまうことがある。
VHは変数宣言などが厳しい分、ケアレスミスが事前に防止できて、
チョンボで日程つぶす可能性が減った。
604774ワット発電中さん:2005/04/24(日) 20:22:57 ID:gNxwQBuh
>>601
それで食えるならそれが正解。
605774ワット発電中さん:2005/04/25(月) 12:09:19 ID:4+9AkTV9
海外はVerilog、国内はVHDLって感じ。
米系メーカーでCPU作ってたころはVerilogばかりだった。
独立起業して国内メーカーを相手にするようになったらほとんどVHDL。
社内IPの開発はいまもVerilogでやってる。これは好みの問題かな。
PascalよりCが好きなのと同じようなもん?
606774ワット発電中さん:2005/04/25(月) 12:35:52 ID:y04O3WE2
C++よりDelphi(Object Pascal)が開発もデバッグも楽だけど
それでもVHDLよりはVerilogの方が気に入って使っている。
どうしてもVHDL要る時はVerilogで作ってから自動変換汁!
607774ワット発電中さん:2005/04/25(月) 15:21:32 ID:2bJ/vJmf
AHDL派とゆーツワモノはおらんか?

608774ワット発電中さん:2005/04/25(月) 15:32:57 ID:dBcwvxVd
>>605
>国内はVHDLって感じ。
それはおまいが相手してる会社の話だ。
俺の知ってるとこ(大手)はVerilogが多い。
あとHDLがらみの求人見てみろ。圧倒的にVerilogが多い。
もっとも俺の知ってるとこはFPGAまでは試作でそのあとASICまでを考えてるとこ。
FPGAで作業完了してるとこは未だにVHDLにしがみついてるのかもしれん。
609774ワット発電中さん:2005/04/25(月) 16:22:52 ID:PKp6kwUm
某社のMIPSプロセッサもVerilogで書いてるし
610774ワット発電中さん:2005/04/25(月) 20:16:04 ID:ifLXH1aI
SFLはおよびでない?
611774ワット発電中さん:2005/04/26(火) 01:41:28 ID:X3wbXkem
SFL・・・エルピーダも使ってる。
612774ワット発電中さん:2005/04/26(火) 09:04:27 ID:OPSWUhYA
EDAベンダの鴨が多いな。っていうかEDAベンダの中の人かな。Verilogの方が金になるからなー。まあLSIメーカが率先して鴨やってるんだからしょうがないんだけど。まさに売国産業。
613774ワット発電中さん:2005/04/26(火) 09:25:00 ID:wzAJpFPs
上にもあるけどこのギョーカイでは美的センスの無い方が主流
になりやすいというジンクスはある罠

68000 vs 8086にしても、Pascal と CにしてもMinix vs Linuxにしても・・
614774ワット発電中さん:2005/04/26(火) 14:11:06 ID:UsH6WjqR
お前、ままごとOSのMInixとLinuxをなんで比較してるんだ?
わかってんのか?
615774ワット発電中さん:2005/04/26(火) 14:39:17 ID:VCowlzD5
>>612
相当ひねくれてるな。俺はVerilog派だが、VHDLも使えるツールしか使ってない。
Modelsim/HDL Designer/Precision/SynplifyフィッタはISE/Quartus
Verilog専用のツールって一体何?そんな便利なツール使ったことないね。
大体、VHDLで満足する奴はプログラム言語の開発環境を満足に知らん奴だな。
少しでも知ってりゃ。VHDLなんてゲゲボ。絶えられないはずだ。

616774ワット発電中さん:2005/04/26(火) 17:12:25 ID:wzAJpFPs
>>614
最初のLinuxなんて酷いものだったじゃん
617774ワット発電中さん:2005/04/26(火) 20:28:45 ID:4w0b6lkR
Minixの方がLinuxより先進性あったんだよね〜
618774ワット発電中さん:2005/04/26(火) 22:35:44 ID:a1s69AXg
verilogのテストベンチでinitial文の中で継続代入ぽいことをしたいとき、
forever @(A or B) OUT = A || B;
って記述は可能でしょうか?
明日試せばいいのですが、気になるので。。。
619774ワット発電中さん:2005/04/26(火) 22:43:46 ID:vYe2i6ZT
>ゲゲボ
なぁ、ゲゲボってどういう意味なん?
620774ワット発電中さん:2005/04/27(水) 00:12:52 ID:1QCKtkNc
自分が頭悪い奴であることの宣言でしょう。

書き込み内容から推測するとそうなる。
621774ワット発電中さん:2005/04/27(水) 01:19:05 ID:NW0QCMMQ
ゲゲボ
元ネタ、確かファンロードっていう雑誌
30後半から40にかけてのヲタだと思われる
死語とかそういうレベルの代物ではありません
20年ぶりに聞いたよ。未だ使うやつがいるとは…
622774ワット発電中さん:2005/04/27(水) 01:42:50 ID:aagbsv72
>>612
アホやなぁお前。
単に今更方向性を変更できない悲惨なVHDL屋だろうがかわいそうにな!
Verilogが金になるというのはそっちの方が生産効率が高いことを認識したユーザが多いからだ。
ユーザが多いから言語仕様の穴を埋めるようなツールが出てくる。
623俺様 ◆f0ugTrYQRI :2005/04/27(水) 05:47:59 ID:dIocz0CA
(;´Д`)ハァハァ  ゲゲボ美食ツアーに逝くでちゅよ!
香港で飲茶を食べるでちゅ〜
624774ワット発電中さん:2005/04/27(水) 22:44:22 ID:eYk1gBjJ
VerilogだのVHDLだのそんな小さい話しじゃない。
LSIメーカを通して、日本の技術、ノウハウ、富がどれだけ海外に流出したか考えたことがないの?
いい加減、Synopsys、Cadense、Mentorをありがたがって、
毎年毎年お布施を払うのはやめて、GNUのようなプロジェクト立ち上げろってことだよ。
625774ワット発電中さん:2005/04/27(水) 22:53:26 ID:6pQ5Oz5i
賛同します
賛同します
賛同します

では>>624タン、頑張ってくらはい。
626774ワット発電中さん:2005/04/27(水) 23:06:31 ID:1QCKtkNc
>>624
先ずはお前から何かどうぞ。
627774ワット発電中さん:2005/04/28(木) 00:41:01 ID:rZNilWpl
まあSTARCのスタイルガイドは確かに情けないよね。
628socket774@rc:2005/04/28(木) 00:54:41 ID:alTjvFo/
>>607
ずっと昔AHDLでゴリゴリ書いてますた。
AHDLで評価変数使うと色々裏技つかえますよ。
回路階層の帰納定義が出来たり、
パラメータの内容から数式を通して条件判断して
回路の生成方法を変えたり、
レジスタ入れる個所を自動決定させたり・・・etc
LPMの中身を解析していろいろ知りますた。


いまはVHDLしか使ってませんけど(w
629774ワット発電中さん:2005/04/28(木) 01:30:25 ID:XHA9VSQp
>>625
>>624を破産者にするつもりか!(w
630774ワット発電中さん:2005/04/28(木) 23:44:56 ID:EXLbwENb
VHDLでブロックコメント・・・
使えないんだな。
631774ワット発電中さん:2005/04/28(木) 23:55:26 ID:NaTZHK5+
つーかレベルの低いどっちが良い論争などするなっての。
馬鹿か?
632sage:2005/04/29(金) 08:40:35 ID:hKs8yizz
>>627 スタイルガイド気に入って参考にしてるけど、
どこが情けないの?役に立ってるけどなー。
633774ワット発電中さん:2005/04/29(金) 13:06:22 ID:lhVrpHWo
デザインルール的指針はあって然るべきだしそれに何を使うかは
人の勝手なのにね。
ま、好き勝手に書いてろくなドキュメントもないなんて仕事をしてる
んじゃないのかな?
634774ワット発電中さん:2005/04/29(金) 18:06:50 ID:BuLkX+R8
>>631
レベルが低いのはお前だボケ。死ねや。

仕事で両方使う必要があるならともかく、
これから新規に使おうという人で、
どっちを使ったほうがより効率的で、将来有望なのか比較したくなるのは当然だ、
635774ワット発電中さん:2005/04/29(金) 18:11:19 ID:hL83OBc+
俺はノンケだってかまわないで
食っちまう人間なんだぜ
636774ワット発電中さん:2005/04/29(金) 18:13:28 ID:hL83OBc+
すみません間違えました誤爆です
637774ワット発電中さん:2005/04/29(金) 18:27:24 ID:lhVrpHWo
やだやだ、休みになると馬鹿が湧くんだよな。
ウゼー
638774ワット発電中さん:2005/04/29(金) 22:55:10 ID:R/B0eCmE
みんな休みなの?
639774ワット発電中さん:2005/04/30(土) 13:04:02 ID:RwqtPFMQ
漏れは最初にやったのはVHDL
どっかで読んだのは、VHDLやってた人がVerilog使うのは簡単だが、
逆は大変と聞いたからだ。
最初はガチガチのほうでやっとけばラクなほうに転ぶのは簡単ってことだな。
640774ワット発電中さん:2005/04/30(土) 18:18:38 ID:eOoS6LdP
漏れは最初にやったのは高周波
どっかで読んだのは、高周波やってた人がディジタル回路は簡単だが、
逆は大変と聞いたからだ。
最初はガチガチのほうでやっとけばラクなほうに転ぶのは簡単ってことだな。
641774ワット発電中さん:2005/04/30(土) 21:36:52 ID:/ny9r/xP
>>640
なぜそのまま高周波職人にならなかったのかと小一時間…
642774ワット発電中さん:2005/04/30(土) 23:01:27 ID:ZoLLL5Ga
漏れは最初にやったのは小学生
どっかで読んだのは、小学生やってた人が高校生は簡単だが、
逆は大変と聞いたからだ。
最初はガチガチのほうでやっとけばラクなほうに転ぶのは簡単ってことだな。
643774ワット発電中さん:2005/04/30(土) 23:02:39 ID:lEXHuyX3
漏れは最初にやったのはアナル
どっかで読んだのは、アナルやってた人がマンコは簡単だが、
逆は大変と聞いたからだ。
最初はガチガチのほうでやっとけばラクなほうに転ぶのは簡単ってことだな。
644774ワット発電中さん:2005/04/30(土) 23:04:15 ID:355ObSRc
VHDL == 小学生 == アナル
ってことだな
645socket774@rc:2005/04/30(土) 23:20:21 ID:ACNDAkK8
漏れは最初にやったのは回路図入力。
画期的だと思った(15年位前)。
MAX+PLUSでMAX5128使ってAHDL&回路図入力して
設計やってた頃がなつかすぃ。

実は最初に講習会(小林優氏のCadenceでやってたやつ)
いって覚えた言語はVerilogだったりして(w
646774ワット発電中さん:2005/04/30(土) 23:25:02 ID:J+G+FTqB
早く休みが終わらないかな。
アホの書き込みは見るに耐えない。
647774ワット発電中さん:2005/05/01(日) 00:12:18 ID:i0O4bH2m
>早く休みが終わらないかな。
>アホの書き込みは見るに耐えない。

と、もっともアホがほざいております
648774ワット発電中さん:2005/05/01(日) 15:08:48 ID:0+I6OP6t
function文を多用する俺にとってはVerilogでないと困るな。
649774ワット発電中さん:2005/05/04(水) 10:53:51 ID:qCUWf+Bc
しかし、FPGAの匂いのするスレは基地外ばかりだなぁ。

”書き換えできるんでしょ?”ってことでガラガラ仕様やらスケジュールに翻弄されるストレスはわかるけど...。
ここの基地外もage専だなぁ。
650俺様 ◆f0ugTrYQRI :2005/05/04(水) 11:15:01 ID:l7iYV4Kx
(;´Д`)ハァハァ  誰か呼んでくれたでちゅか?
651774ワット発電中さん:2005/05/13(金) 01:19:50 ID:9Kh+JZzb
質問させていただきます。
データバスに書き込む際に、書き込む時以外はトライステートになるように書いたのですが
'0'を出力するようにするとその箇所だけトライステートではなくオープンドレインになってしまいます。
(QuartusUのフロアプランでオープンドレインになっていると分かりました)

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;

652774ワット発電中さん:2005/05/13(金) 02:40:56 ID:WjfEC93p
0とZだけなら「トライ」ステートじゃないもんな。
653651:2005/05/13(金) 21:44:32 ID:9Kh+JZzb
>>652
でも0を1に変えてやるとトライステートとして出力されます。
654774ワット発電中さん:2005/05/13(金) 21:48:09 ID:Ws8mEBWn
655774ワット発電中さん:2005/05/13(金) 22:54:58 ID:B60nfGhN
>>653
君馬鹿か?
656774ワット発電中さん:2005/05/13(金) 23:01:10 ID:Aq3jXKgH
こゆ設定項目があるでしょ?

Auto 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.

どこにあるかは自力で探せ。
657774ワット発電中さん:2005/05/14(土) 00:52:35 ID:JX62oeiU
>>656
設定してみましたが相変わらずオープンドレインのままでした・・・。
もうちょっと考えてみます。
658774ワット発電中さん:2005/05/14(土) 07:49:58 ID:D0huQ3zW
出力イネーブル信号を作って
それが有効なら「出力信号(0または入力A_B_C)」、
無効なら「ZZZZ」
ってふうに書き直したら?
659774ワット発電中さん:2005/05/14(土) 14:41:33 ID:E+zMVA/l
1を出力することがないならオープンドレインでもいいじゃん。
なんで困るの?
pチャンがあってもドライブされることはないし。
660774ワット発電中さん:2005/05/14(土) 15:10:17 ID:JX62oeiU
>>658
3本の「ADRES」を出力イネーブル信号として使っているつもりなんですが、新たに出力イネーブルを
ついかしたほうがいいってことですか?

>>659
オープンドレインの切れている状態とトライステートの切れている状態違うから困ってます。
661774ワット発電中さん:2005/05/14(土) 15:13:56 ID:dCSocp3E
オープンドレインが嫌いなんじゃないの?
662774ワット発電中さん:2005/05/14(土) 19:59:56 ID:JRbNa2fL
ソ レ ダ !
663774ワット発電中さん:2005/05/14(土) 21:33:59 ID:+LCXtOir
>>660
>オープンドレインの切れている状態とトライステートの切れている状態が違う
どのように違うの?
664658:2005/05/14(土) 22:29:41 ID:N84/Gu1X
>>660
HC541などのG端子相当に入力する一本の信号を一旦アドレスデコードからつくって、
G端子が有効の時(ry

これでも変わりませんか?自動で圧縮されるのかな?
665:774ワット発電中さん :2005/05/15(日) 10:34:59 ID:7NgLYrfN
センシティビティリスト間違ってるから、それが原因なんでないの?
センシティビティリスト間違うと、想定外のバグ仕込むことあるよ。
666774ワット発電中さん:2005/05/15(日) 14:28:07 ID:gFzd/QJy
釣りに対して>>661がうまくエサ取りを演じたのに、
まだ釣られますか。そうですか。
ダボハゼ並みですね。
667774ワット発電中さん:2005/05/15(日) 23:17:12 ID:I27Cgrk7
>>665
たぶん>>661はセンシティビティリストのどこに間違いがあるかも判ってないよ。

もしくは完璧な釣りだな。

> when others => DATA <= "ZZZZZZZZ";
なんて書きながら

> if RESET = '1' then
>DATA <= "ZZZZZZZZ";
>else
などと...けっこううまい釣りだよ
668667:2005/05/15(日) 23:18:00 ID:I27Cgrk7
ごめん。
>>661ではなく、>>660でした
669774ワット発電中さん:2005/05/16(月) 00:36:05 ID:wNMEogmY
RESET信号が入ったら無条件でDATAはトライステート
んでADRESが「001」、[010]の時意外はトライステート。
何か問題ありますか?
センシティビティリストは「RESET」と「ADRES」だけ見張っていればいいからこの2つだけ入れました。
670667:2005/05/16(月) 00:52:18 ID:8DUMjoS4
>>669
> センシティビティリストは「RESET」と「ADRES」だけ見張っていればいいから
ごめん、釣りじゃなかったのね。
本当に聞いているんだね。

オマエさんのセンシティビティリストの考え方、間違ってるよ。
答えは自分で見つけな。


671774ワット発電中さん:2005/05/16(月) 00:55:27 ID:wNMEogmY
非同期回路なのに入力信号が全部センシティビティリストに入っていないってことを言ってるんですか?
672774ワット発電中さん:2005/05/16(月) 01:09:47 ID:Gj2xIsPh
素人の漏れには、センシビリティリストは、どこが間違ってるか
ようワカラン。合ってそうに見える。

> RESET信号が入ったら無条件でDATAはトライステート
ハイ・インピーダンスとか言わないの? もしかして、
「Z=トライステートと呼ぶ=オープンドレイン!?なんだそれ」という図式???
673774ワット発電中さん:2005/05/16(月) 10:26:51 ID:xk1r6bSl
ま、まともな会社ならトライステートを
3ステート(3-state, three-state)って
標記するよう指導されるわけだが。。。
674774ワット発電中さん:2005/05/16(月) 12:10:41 ID:dAv8fSHD
triが3を意味する事を知らんようだ
675774ワット発電中さん:2005/05/16(月) 12:55:06 ID:1vkX0Rja
いやトライステートっていうよ。これはまっとうな用語だよ。それでみーんな意味が通じる。
そんなことで変更が必要なら、
ペンタ、ヘキサも変更せにゃならん。
676651:2005/05/16(月) 21:03:21 ID:wNMEogmY
自己解決しました。「0」と「Z」の出力ならオープンドレインになるのは当たり前でした。
初心者マークとれてから来ます。
でも、センシティビティリストの件は分かんね〜わ。
677774ワット発電中さん:2005/05/16(月) 21:11:42 ID:ShTS7dqE
ちょうど出てきたので、ちょっとその辺のこと教えてくださいな。

di tri tetra penta hexaでググると、そっち系の呼び方のページが出てくるけど、
ICなんかによくあるdual、triple、quadなんかの一覧って、どこかにありますか?
あと、2はダイだったりバイだったりしますよね。ダイポールアンテナとか
バイポーラトランジスタとか。このへんはどういう話なんでしょうか。
678774ワット発電中さん:2005/05/16(月) 21:31:36 ID:9soW1er8
>>674
商標の話かと思ってたが、マジボケだったのか>>673
679673:2005/05/16(月) 22:22:18 ID:rLBvdL3M
>>678
>商標の話かと思ってたが、マジボケだったのか

いや、商標の話をしてたんだけどw
>>674-675 には笑わせてもらったよ。

680774ワット発電中さん:2005/05/16(月) 22:59:15 ID:McxtgdLl
>>679
なんだか苦しいね。
日本語不自由か?
681774ワット発電中さん:2005/05/16(月) 23:09:55 ID:P6RYwksH
用語検索 トライ・ステート (tri state)
用語検索. トライ・ステート (tri state). [同]→3ステート. ナショナル・セミ
コンダクター社の商標. 用語検索インデックスへ戻 る 用語検索のトップに戻る Copyright
1997-2000 トランジスタ技術編集部.
www.cqpub.co.jp/term/tristate.htm - 2k - キャッシュ - 関連ページ

682774ワット発電中さん:2005/05/16(月) 23:30:36 ID:/8fSzhyC
商標というのはその名称を使った商品を登録企業に無断で販売しちゃいかんと言う話だろ?
トライステートと言う用語を使って解説してる書籍なんていくらでもあるわけだが。
ここでいうような仕様書とか解説中に記載することは特に問題にならんのじゃないか?
よくあるだろ。欄外にXXはYY社の登録商標ですってやつ。
683774ワット発電中さん:2005/05/17(火) 00:06:03 ID:ERz/+5Lc
誰がハゲやねん!
684651:2005/05/17(火) 01:07:50 ID:tqcqalrI
>>670
このコードにセンシティビティリストがあること自体が間違ってるってことか。
685667:2005/05/17(火) 01:22:37 ID:bkxM2nFx
>>684
おまえ、アホか。しらべてないやろ。

なんでIN_A/IN_B/IN_Cをセンシティビティリストにいれんのや。

これ以上聞くな。アホらしいから。だからだれも相手にせんの。
686774ワット発電中さん:2005/05/17(火) 01:24:47 ID:yLX1AV2l
>>685
この板に君のような奴は不要。
目障りだから消えてくれ。
687774ワット発電中さん:2005/05/17(火) 01:35:14 ID:SnMYMpm9
だな。
667の記述こそ釣り。
688774ワット発電中さん:2005/05/17(火) 01:41:32 ID:tqcqalrI
全部組み合わせ回路で作ってるからセンシティビティリストはいらないでしょ?
689774ワット発電中さん:2005/05/17(火) 02:30:07 ID:eNK5curG
しかし、>>652が即答してるのによく伸びるなー
690774ワット発電中さん:2005/05/17(火) 08:09:24 ID:p3uLDjHp
>>677はギリシヤ語/ラテン語の基礎もしらんのか 無教養だな
diは普通の2 biは双数
691774ワット発電中さん:2005/05/17(火) 21:54:47 ID:GYtGT1z5
biの系統の3とか4とかはない・・・ということでいいのかな?
dualとかの方は何?
692774ワット発電中さん:2005/05/17(火) 23:21:23 ID:p3uLDjHp
dualはラテン語の「普通の2」の形容詞形
693774ワット発電中さん:2005/05/18(水) 21:29:12 ID:09Do903X
どう検索しても一覧は出てこない・・・・・もう風呂入って寝よう
694774ワット発電中さん:2005/05/24(火) 22:36:48 ID:XhnVf7D0
質問させて頂きます。

VHDLでC言語の「#ifdef 〜 #endif」と同等の処理を
行いたいのですが、どなたか教えて頂けませんか?
695774ワット発電中さん:2005/05/24(火) 23:36:49 ID:iFgyQacm
Cのプリプロセッサ使え
696774ワット発電中さん:2005/05/25(水) 00:49:35 ID:k9OAL1Ql
無い

ゆえにVerilog-HDL使いが居る。
697774ワット発電中さん:2005/05/25(水) 09:57:19 ID:cBYTkSkz
いまどき ccpとかgcc -Eじゃなくて m4使うだろ
698694:2005/05/25(水) 12:46:53 ID:bnwleK92
情報感謝です。
うーん、解決方法を探さねば・・・
699:774ワット発電中さん:2005/05/25(水) 23:35:29 ID:9Qwiuam+
if generateは?
700 ◆YMO/ALTERA :2005/05/26(木) 12:42:00 ID:ms4YOkYR
合成の結果定数項になってことごとく消えて失せるだろうと
シンセサイザの力を信じて記述してる(汗
701694:2005/05/26(木) 16:59:56 ID: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
702774ワット発電中さん:2005/05/26(木) 19:17:12 ID:LemZlmN/
>>701
signalで宣言してifで切り替えれば?
constantにしてるのは面積もったいないから?
703694:2005/05/27(金) 11:31:07 ID:QHEYeCXA
>>702さんコメントありがとう。

constantにしているのは、複数ソース内で利用するために
「パッケージでconstant宣言!」しか方法が分からなかった為です。

どんな方法でも、複数ソース内で利用できれば何でも良いのですが・・・
704774ワット発電中さん:2005/05/27(金) 19:23:34 ID:1eReoTOh
こんなんじゃだめかいのう。
library 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;
705774ワット発電中さん:2005/05/27(金) 22:37:59 ID:kod8k8po
>>694
configuration
706タスク:2005/05/30(月) 20:51:28 ID:ZVhUdiy8
俺は論文書いてたいけど、テーマは並列LSCの通信部の設計、製作に関すること。誰が俺に助けてくれませんか?できれば、俺と連絡して
もちろん、お金あげるから
707774ワット発電中さん:2005/05/30(月) 20:54:16 ID:LiJvs7xQ
やだ。
708俺様 ◆f0ugTrYQRI :2005/05/30(月) 21:19:08 ID:9Ye+LOJI
(;´Д`)ハァハァ  夏はやっぱりキンチョウ…
709774ワット発電中さん:2005/05/31(火) 00:20:20 ID:0StKJsP0
>>706
そんな日本語で論文を書くのか
710774ワット発電中さん:2005/05/31(火) 09:49:01 ID:VlzJgi5e
論文は英語で書くもんだ
そして2chは日本語で書くもんだ
711694:2005/05/31(火) 19:14:43 ID:t3NT+PFo
>>704さんコメントありがとうございます。
 704さんの方法で実現できそうです。

>>705さんもコメントありがとうございました。
ググッてみたのですが、答えらしき所まで辿り着きませんでした。
情報を生かす事ができずにすいません。

皆さんのおかげでスッキリできそうです。では。
712774ワット発電中さん:2005/06/03(金) 05:29:36 ID:dLroBs/g
713774ワット発電中さん:2005/06/13(月) 17:39:58 ID:G4/tYFUU
Verilog 2001 拡張された文法に関してうまく解説してある参考書教えろ
ヲーニング出まくりなのだが、きれいに書き直して消せるものなのか
714774ワット発電中さん:2005/06/13(月) 21:28:35 ID:AYy9lSvK
電気的にあまり詳しくなくても 論理と言語を知ってれば仕事はできますか?
715774ワット発電中さん:2005/06/13(月) 22:39:33 ID:BQt4dmam
電気を知ってるに越したことはない。
仕事なら知ってたほうが良いとオモフ。
716774ワット発電中さん:2005/06/14(火) 08:58:50 ID:cLnSsTT4
確かに知ってる方が良い。
でも、単なるパラメータという扱いもできなくなってしまっているように思える。
なんか、もう電気屋の仕事じゃないような気がしてきてちと悲しい。
717716:2005/06/14(火) 09:01:53 ID:cLnSsTT4
連投すみません

× でも、単なるパラメータという扱いもできなくなってしまっているように思える。
○ でも、単なるパラメータという扱い方になってきてしまってるようにも思える。
訂正です。
皆さんはどう思いますか。私が単なるオサンだからでしょうか。
これで、Cベース設計がデフォの時代がきたら…
718774ワット発電中さん:2005/06/14(火) 12:44:13 ID:cIkGHkKc
>>716
アナログから入ったオヤジだが、俺もFPGAは電気と違う気がしてる。
でも理論はFPGAに持って来れるので、昔やった事がまるっきり無駄とは思っていない。
昔苦労して調整して作ったフィルターとかが、信号処理回路作ってFPGAに入れられた時は
マジ感動した。 調整いらねーじゃん! って。

>>714
それでも仕事はできるが、今の状況では選択肢がかなり狭められるような気がする。
将来的には、ハードを理解していないFPGA屋が普通になっていくと思うが・・・
719774ワット発電中さん:2005/06/14(火) 17:12:47 ID:CJ2IsWTN
FPGAが今後も信号処理に使われつづけるかは?じゃないかな。
100MHzくらいまでが安心して使える周波数で、1GHzは多分無理。
この周波数になるとメニーコアとかDSPアレイの方が適してるような気がしてる。
自由度は高いが、配線遅延がホントうざすぎる。
一人の信号処理屋が、FPGAもDSPも使いこなすのは負担が大きいよな。
720774ワット発電中さん:2005/06/14(火) 20:19:54 ID:uqWNI1k4
FPGA設計ってCとか他の言語やってなくても デシタル回路の仕組みわかって
言語書ければそれでできるんじゃないかって 以前 文系のやつがバリバリやってるってのみたことあるし
721774ワット発電中さん:2005/06/14(火) 20:29:00 ID:oPw+GkzO
別にプログラム言語できる必要性はないし、
ディジタル回路が理解できればHDLを習得して回路を書くことはできるだろうが、
例えばFFTを回路に起こしてくれと言われたら文系君にはできない。
タイムチャートまでしっかり仕様書に書いてもらって下位設計としてHDL専念するのであればできると思うけど、
公的スペックをポンと渡されて上位設計->下位設計に及ぶような仕事は多分無理
722774ワット発電中さん:2005/06/14(火) 22:53:55 ID:+fL0y+ee
ASICに電気の知識は必ずしも必要ではないんでないかい。
ARMもド素人が設計したって話しだし。
723774ワット発電中さん:2005/06/14(火) 23:07:39 ID:uqWNI1k4
制御系のエンジニアに電気知識が必要かって話だねぇ
ソフトもハードも使いこなせる人材は少ない
724774ワット発電中さん:2005/06/14(火) 23:11:50 ID:NwrQL4xf
っていうか実現しようとする機能に関しての知識は必要。

ARMは電気分野のド素人かもしれないが、アーキテクチャや情報理論、
論理設計に関してはそれなりのプロだろ。完全ステートマシンを目指してたとか言ってたし。

で、ASICでもライブラリ弄って特殊なインターフェイスを実現するつもりなら
それなりに電気の知識はいるだろうと思われ。
725774ワット発電中さん:2005/06/14(火) 23:47:37 ID:+fL0y+ee
チト記憶違い。電気の知識はあったみたい。
半導体設計のド素人だったみたい。
ttp://www.cqpub.co.jp/hanbai/pdf/MIFZ200310/MIFZ200310_TECHI18.pdf
726774ワット発電中さん:2005/06/15(水) 02:06:35 ID:5d5Jo6UE
いまは文系に情報処理系の学科を置いてる大学が多いんじゃないの?
そういうとこを出た奴がみんな使えるかどうかはまた別問題だが、探せば中には優秀な奴もいるんじゃない?
727774ワット発電中さん:2005/06/15(水) 12:16:44 ID:x9MMD2hm
熱とかジッタとかスキューとか駆動電流とか終端とかを気にせずに済む時代が来ますか?

と思ったけど、設計担当範囲の話になるのか。
728774ワット発電中さん:2005/06/15(水) 12:47:22 ID:iN37Q4cD
>>727
熱とかジッタとかスキューとかファンイン・アウトとか終端とかを気にせず設計した
オープンハードウエア界の巨匠は存在したけどねw
729774ワット発電中さん:2005/06/15(水) 23:37:00 ID:s1SJavJl
文系の情報処理ってプログラミングもやるのか?
情報科学とか 要は社会学みたいなことやるんじゃないの?
二年ぐらい前に 一からFPGA教えますみたいな派遣あったような記憶あるけど
採用試験にIQテストってのがあったW まあ確かにこういうのはIQの高さに比例するかもしれない
730774ワット発電中さん:2005/06/15(水) 23:51:40 ID:Z2649FH3
ソフトを書ければ物が出来る時代はそこまで来てる。
でもそれが使い物になる代物に合成される様になるにはまだまだ時間がかかるだろうね。

根底はいつも泥臭い物、これは多分これから先も変わらないよ。
731774ワット発電中さん:2005/06/15(水) 23:55:18 ID:i1/JnM/N
そこんところ勘違いしてハードを馬鹿にするソフト屋志望の若者がおおいっす。
732774ワット発電中さん:2005/06/16(木) 00:04:16 ID:7g3ZrvNO
そうそう。「低級言語」はレベルひく〜(低い)って意味じゃないぞ。
ハードにより近いって意味だ>うちのソフト屋
733774ワット発電中さん:2005/06/16(木) 01:47:52 ID:zNol4mg5
>>728
それはトヨ(以下自粛
734774ワット発電中さん:2005/06/16(木) 20:11:37 ID:QCmadF77
今だってFPGAにぶち込むだけなら、熱もskewも気にしなくて平気じゃん。
735774ワット発電中さん:2005/06/17(金) 12:10:37 ID:4Ezuob99
回路規模から熱計算してからでなきゃ
とてもじゃないがデバイス選べない。
FPGAの発熱がすごくて基板が変色したこともあった…

小規模ならなんも気にせんけど
736774ワット発電中さん:2005/06/19(日) 01:16:51 ID:tqujOr4u
フロアプランの段階で熱まで予想できるツールもあるが、素人さんが使える値段じゃないね。
737774ワット発電中さん:2005/06/19(日) 02:58:43 ID:J5C8xv0N
ストラタ熱杉
738774ワット発電中さん:2005/06/20(月) 17:10:54 ID:4/+H9ZYi
FPGA用のクリップ+ヒート辛苦ってある?
739774ワット発電中さん:2005/06/21(火) 20:29:05 ID:O3UjfOs8
すんません、初歩的なことだとは思うんですが質問させてください。

・暗黙の了解で、チーム内では全角コメント禁止なんだけど、これはやはり常識なんでしょうか。
・全角コメントで不具合出た合成ツールってあるんですか?

この間、ソフト屋さんのソースを眺める機会があったのですが、
全角コメントばっかりで羨ましかったです。
ソフト屋「だって、デバイスもツールも国産(Renesas)だから」
740774ワット発電中さん:2005/06/21(火) 20:39:29 ID:aEPqYliu
つうか言語仕様で2バイト文字は許されてないでしょ、確か…
741774ワット発電中さん:2005/06/21(火) 21:23:10 ID:O3UjfOs8
(´・ω・`)そうでしたか…アリガトu
742774ワット発電中さん:2005/06/22(水) 07:48:28 ID:JWaSnhuA
フォルダ名にもファイル名にもコメントにも全角文字使うなよ 超ダサい
つーか、全角コメントが羨ましいって心理 本気で理解できないのだが なぜ?
743774ワット発電中さん:2005/06/22(水) 12:15:43 ID:VcF7mubI
gccは長らく2バイトコメントには対応してなかった。
今はどうか知らんが、ソースコードに日本語を含めないのはソフトでも常識だ。
744774ワット発電中さん:2005/06/22(水) 12:18:22 ID:BQwKJBc6
英語の苦手な純朴の日本人だからです。
745774ワット発電中さん:2005/06/22(水) 12:42:23 ID:YtB4QzpG
>>743
へっそうなの? HDL記述に 2ByteCode 入れた事は無いが、Cには良く入れてる。
上司の意向で、関数の頭に日本語コメントするテンプレが付いてるのがデフォなもので・・・
もしかして、こんなソースを外に出すと恥ずかしい?
746774ワット発電中さん:2005/06/22(水) 15:40:27 ID:VcF7mubI
MS XXや Visual XXの日本版はそりゃ日本語対応してるだろうよ。
ソフトでも日本語対応になってないツールも山ほどあるってこった。
わかってから対応するんじゃなくてコメントに日本語使わないとか、
ディレクトリ関係に日本語やSpaceを使わないのは当然の防御策
747774ワット発電中さん:2005/06/22(水) 15:43:12 ID:bq3eWW0g
まずは言語の仕様書をちゃんと読め
748745:2005/06/22(水) 19:38:02 ID:YtB4QzpG
>>746
レスサンクス。 他ツール使った時の防衛策ですね。

>>747
すんません。誤解与えちゃったみたいですね。 私は >>739 さんとは別人です。
>>743 さんのカキコに、つい横から反応しちゃったもので・・・ HDL記述の2byteCodeの件は知ってます。
749774ワット発電中さん:2005/06/22(水) 23:04:22 ID:Hha79Rv9
>>742
それでカッコイイ!!っていうのも理解できん
750774ワット発電中さん:2005/06/22(水) 23:24:50 ID:66LG1gHp
無理して英語で書いて間違ってると…
751774ワット発電中さん:2005/06/22(水) 23:29:06 ID:wqXcHBAC
コメントはあくまでコメントだ。
正確性を期すなら仕様書にきっちり書け
752774ワット発電中さん:2005/06/22(水) 23:38:21 ID:3JyUAAcL
verilogの達人の方へ

clk _| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|

reset  ____________| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄

q _____________| ̄|_______________



上のようなクロック入力に対してリセット後1クロックのみ検出する信号qの作り方教えていただけませんか?

宿題ができずに困っています。

お願いします。
753752:2005/06/22(水) 23:41:34 ID:3JyUAAcL
なんかずれちゃいました。すみません。

リセット後最初のclkを1パルス分のみ検出したいのですが。

お願いします


_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|_| ̄|   clk

____________| ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄   reset 

_____________| ̄|_______________   q
754774ワット発電中さん:2005/06/23(木) 00:06:54 ID:kGTJLsAv
>>753
うーん、これは難しい問題だな。
そもそも こんな難しいのをVerilogで書けるのかぁ?
755774ワット発電中さん:2005/06/23(木) 00:30:37 ID:uHTIDPbd
>>753
どこまで調べてどこまで考えたのか晒せや
756774ワット発電中さん:2005/06/23(木) 01:37:16 ID:ssvNblqJ
どこかにI2Cのスレーブデバイスのsimulation model(verilog)、
転がってませんか?
フリーだと嬉しいんだけど…
757774ワット発電中さん:2005/06/23(木) 03:34:52 ID:ChU/fL9O
assign oneshot = clk & gate;

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

リセット後2クロック目でひげが出るかな?
758774ワット発電中さん:2005/06/23(木) 05:14:35 ID:BHwfbCsY
>>752
それだけでは仕様が不十分
resetは非同期リセットと同期リセットのどっち ?
非同期の場合、clkの立ち上がりと resetの立ち上がりが
同時に起きた場合 qをどう出力すればよいか ?
またresetの立ち上がりから qの highパルスを出力する
まで何クロックのディレイが許容されるのか ?
qはそれ以降の回路でクロック信号として使用されるのか ?
qは clkの highと同じ幅でなくてはならなのか ? 1 clk周期
ではいけないのか ?
さあ、答えれ
759774ワット発電中さん:2005/06/23(木) 06:50:18 ID:qlXt37Qj
釣られ好きだなぁ
760774ワット発電中さん:2005/06/23(木) 11:19:49 ID:2f3SJtDp
こんなキャラクタで波形書いてる暇があったら、HDL書いて試行錯誤してた方が良いと思うぞ
761774ワット発電中さん:2005/06/23(木) 12:14:47 ID:TmPaPWlD
エッジ検出も分からないようならHDL以前にデジタル回路の基礎からやった方がいいのでは?
762757:2005/06/23(木) 15:50:51 ID:5qFT/Ks/
757のリストでは配置配線後(スパ3)のSimlateで案の上ひげが乗ったので改定

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
763757:2005/06/23(木) 16:01:23 ID:5qFT/Ks/
gate ,gate2 を出力してるのはあくまでもデバッグ用なので無視してね。
oneshotが出力
764774ワット発電中さん:2005/06/23(木) 16:35:32 ID:fpaEQY/+
verilog理解できない馬鹿なのでVHDLで書いてみました。

条件はとりあえずパルスは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;
765774ワット発電中さん:2005/06/23(木) 16:48:58 ID:pAFX2Btt
答えを書いてるフリして藁なコードな罠
766774ワット発電中さん:2005/06/23(木) 16:57:16 ID:fpaEQY/+
答えられない香具師に限ってチャチャが好き。
男は黙って答えを書く。
767774ワット発電中さん:2005/06/23(木) 18:45:47 ID:TmPaPWlD
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_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;
768752:2005/06/24(金) 03:32:55 ID:9W82ArEC
だれがVHDLで答えてくれってお願いしたよ。
Verilogできねえ奴はスッコンデロ。
アフォか?ホンマに
769774ワット発電中さん:2005/06/24(金) 05:26:55 ID:SF7gkNx8
宿題できなくて他人任せにしてるくせに態度だけはでかいなw
770774ワット発電中さん:2005/06/24(金) 07:23:03 ID:LMTTDyXo
XilinxのISE WebPACK7.1i使っている人います?
色んな機能が動かなくないですか?チュートリアルを見てやりだしたんだけど
snapshotとか全然効かないし、timing reportが出てこない。
771774ワット発電中さん:2005/06/24(金) 09:02:56 ID:WGCpiX+W
すんませんVerilogでおながいしまつ
772774ワット発電中さん:2005/06/24(金) 09:50:15 ID:TWmzq/xc
どっちのHDLも読めるぐらいにはなっておいた方がいいぞ
大事なのはやり方を覚えることなんだし。
簡単な例だし、ちょうどイイ機会じゃないか?
773752:2005/06/24(金) 11:50:15 ID:4zIlwy/D
>>772
嫌だね。
お前らみたいに下請けの零細企業になんか就職する気はさらさらないから、両方こなす必要なんてまったくない。
もう大手に就職が決まってるんだよ。まぁ、お前らに仕事振ってやるからありがたく思えよ。
774774ワット発電中さん:2005/06/24(金) 12:15:19 ID:SF7gkNx8
あいかわらず態度でかいな。
おまえは研修期間に逃げ出すだろ、どうせ。
っていうか、おまえの上司になる人間がこのスレにいるかもよw
775774ワット発電中さん:2005/06/24(金) 12:18:12 ID:xbY7Umqv
こんなクソ宿題もできないバカを採った企業様ご愁傷様です...。
776774ワット発電中さん:2005/06/24(金) 12:21:15 ID:7PgQ3B9c
>>774
偽者な悪寒
最近質問者に成りすますアホをよくみかけるキガス
777774ワット発電中さん:2005/06/24(金) 12:40:44 ID:HdLZliaP
Q脳の腐敗がさらに進んだのかな・・・・ま、梅雨だしな
778752:2005/06/24(金) 12:46:54 ID:4zIlwy/D
>>775
クソ宿題だと?
じゃ、コード晒せ。それも出来ずにお笑いなんだよアホが!
779774ワット発電中さん:2005/06/24(金) 14:37:05 ID:SF7gkNx8
>>776
いいたい意味がわからん。
774(俺)は773に向けて書いたんで、752になりきろうとか思ってないんだが。
780774ワット発電中さん:2005/06/24(金) 14:54:35 ID:nloQe5rE
スルーしとけって。
781774ワット発電中さん:2005/06/24(金) 15:36:58 ID:vu0ro+8Y
ところで、この宿題の“本当の要求仕様”はどんなもんなんだ?
あの超絶ワケワカランAAではサッパリ?だ
782774ワット発電中さん:2005/06/24(金) 16:22:12 ID:1SWoqVpN
俺は十分意味が理解できたね。何の問題もない。
783774ワット発電中さん:2005/06/24(金) 18:12:16 ID:TWmzq/xc
じゃあHDLじゃなくてCで書いてみ?VBでもなんでも自分が習得してる言語で。
方法がわかってるなら何でも書ける。わかんなきゃ何やってもダメ。
宿題は考えてやるんだよ。考えるのは頭。頭は生きてるうちに使う物だ。がんばれ。
784774ワット発電中さん:2005/06/24(金) 18:18:35 ID:1SWoqVpN
>>783
何をわけわからんこと書いてるんだ?
お前こそがんばれや。
785774ワット発電中さん:2005/06/24(金) 19:50:19 ID:SF7gkNx8
そもそも752が回路設計に必要な知識があるのかどうかが気になる…
786774ワット発電中さん:2005/06/24(金) 20:56:08 ID:pOB0xwE8
>>785
そんなもん無くても構わないだろ、本人が宿題っていっているんだし。
787774ワット発電中さん:2005/06/24(金) 21:45:43 ID:4PHoRlc3
回路図入力が一番簡単だな。
788sage:2005/06/24(金) 23:43:12 ID:N9s+7dXz
module(clk,xrst,datain,q)
reg 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かー。こりゃ、俺にははかけないや。
だれか答えを俺にも教えて。
789774ワット発電中さん:2005/06/25(土) 00:28:47 ID:Il+q3Oeh
module pulse (clk, xrst, q);
inputclk, 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
790758:2005/06/25(土) 01:50:29 ID:RRAZhokE
もれが >>758で書いたことが明確にならんと回路を
実装することはできないんだが、本物の >>752
どこ行った ?

しょうがないからとりあえず、以下の仮定をする。

(1) resetは clkに非同期。
(2) clkの立ち上がりとresetの立ち上がりが同時に
起きた場合 (正確には、使用するフリップフロ
ップの setup timeと hold timeの間に resetの
立ち上がりがあった場合)は出力 qはそれ以外の
場合より遅れてもよい。
(3) resetの立ち上がりから qの highパルスまでは
できる限り短い時間で出力すること。
(4) qはそれ以降の回路でクロック信号として使用さ
れない。
(5) q の high幅は 1clk周期とする。

以下次号
791758:2005/06/25(土) 01:51:25 ID:RRAZhokE
その他

(6) resetにグリッチはないものとする。
(7) モジュール名は mkpulseとする。
(8) Verilog-HDL (RTL)で記述すること。
(9) 負論理なのに resetという名前はいやらしいが、
そういう仕様なので従う。

以下次号
792774ワット発電中さん:2005/06/25(土) 01:53:01 ID:TsEjQbYg
次号マダー?
793758:2005/06/25(土) 01:55:27 ID:RRAZhokE
module mkpulse (
 reset,
 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

以下次号
794758:2005/06/25(土) 01:56:06 ID:RRAZhokE
一方、resetという名前から非同期リセットという
仮定をしたが、今のところそのような指定はない。
よって resetは clkに同期していると仮定することも
できる。

すると、以下次号
795758:2005/06/25(土) 01:58:27 ID:RRAZhokE
module mkpulse (
 reset,
 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

以上
796774ワット発電中さん:2005/06/25(土) 02:17:58 ID:qLwyTd70
ばーーーーか ----->>> >>758 ID:RRAZhokE 死ねよ
797火魔人:2005/06/25(土) 04:37:57 ID:4D+YN02A
reg q;

initial begin
q = 1'b0;
end

always @(posedge reset) begin
@(posedge clk) q = 1'b1 ;
@(posedge clk) q = 1'b0 ;
end

合成できる物って言ってなかったから・・・
798774ワット発電中さん:2005/06/30(木) 20:38:43 ID:cTpDojFz
初心者です

`define STATE1 3'b000

parameter STATE1 3'b000

はどう使い分ければいいのでしょうか?

parameterだとモジュールごとに同じのを書かないとだめみたいだし、
`defineだとレオナルドでは警告がでたし、
同じ定義を複数のモジュールやファイルで共用はできないのでしょうか?



799774ワット発電中さん:2005/07/01(金) 11:46:24 ID:Gq1lU/Xf
>>798
parameterを別のファイルに書いて、`includeで読み込むようにしてたよ。
今はVHDLなんで使ってないが。
800774ワット発電中さん:2005/07/01(金) 18:00:38 ID:4oZSX0ys
VHDLのintegerは32ビットは扱えないの?
801774ワット発電中さん:2005/07/01(金) 19:29:01 ID:UB9KQarK
扱える(符号付)。
802774ワット発電中さん:2005/07/01(金) 21:09:25 ID:4oZSX0ys
符合なし32ビットはダメ?
803774ワット発電中さん:2005/07/01(金) 21:49:57 ID:UB9KQarK
だめ。
Natural, Positiveなどあるがいずれも31bitまで。
804774ワット発電中さん:2005/07/01(金) 22:39:15 ID:4oZSX0ys
知らなかったorz
しょうがないから単純なカウンタなんで
std_logic_vectorにします
805774ワット発電中さん:2005/07/01(金) 23:05:14 ID:6YAH5rTH
つーか、おかしいと思ったら少ないbitのカウンタ等を記述しSimして自分で納得する迄
試せると思うが。
やらないと言う事じゃ所詮その程度の知力と能力しかない証拠だわな。
806774ワット発電中さん:2005/07/02(土) 00:27:55 ID:naY8xhRT
>>805
そこまでは試して31ビットまでは動くことがわかったけど
論理合成で蹴られる理由がわからなくて
もしかして言語仕様かと思ったらあらやっぱりみたいな・・・
807774ワット発電中さん:2005/07/02(土) 00:36:30 ID:GL5nQR4k
(´-`).。oO(なぜ言語仕様を最初に読まないの)
808774ワット発電中さん:2005/07/02(土) 00:43:23 ID:naY8xhRT
>>807
そんなところで引っ掛かると思ってないから
スマソ
809774ワット発電中さん:2005/07/02(土) 08:39:25 ID:Zjc91X2T
これって全てに於いて共通することだよ。>先ず仕様確認

しかし、これで学習しただろう。
このスレに圧倒的に多いパターンなので萎えまくりだが。
810774ワット発電中さん:2005/07/02(土) 18:59:32 ID:aRXfQTr1
すみません、言語仕様が何に書かれてるかもわかりません
811774ワット発電中さん:2005/07/03(日) 20:48:47 ID:BJiFlm7C
> なぜ言語仕様を最初に読まないの
読んでないけど、Integerは32bitとして扱うツールが一般的、って話じゃなかったっけ?
VHDLとしては。
812774ワット発電中さん:2005/07/04(月) 00:40:48 ID:29+tKHsl
>>811
一般的じゃなくてVHDLの仕様ですね。
813774ワット発電中さん:2005/07/04(月) 01:27:25 ID:3sPfcV16
VHDLではまりやすい言語仕様ってどんなものがある?
814774ワット発電中さん:2005/07/04(月) 01:45:54 ID:/UNyKoG7
組み合わせロジックを明示的に記述する文法がない
815774ワット発電中さん:2005/07/04(月) 10:01:40 ID:YFhH4slB
>>814
それは合成ツールの仕様なんじゃないの?
816774ワット発電中さん:2005/07/04(月) 10:55:30 ID:xEY162hW
verilogHDLのモジュールを動かして波形を表示できるフリーソフトって無いですか?
1のLibero 6.0って所に登録してCDが来るまで待たなきゃいけないんですかね…
できてばDL版が欲しいのですが
817774ワット発電中さん:2005/07/04(月) 11:53:18 ID:QhGD2vPG
>>815
Verilogのfunctionに相当する書式がVHDLにあるか?
818774ワット発電中さん:2005/07/04(月) 12:11:26 ID:Ij/MgU4M
>>817
サブプログラムじゃだめ?
819774ワット発電中さん:2005/07/04(月) 17:28:51 ID:FQoAvdtf
サブプログラムが組み合わせロジックになる保障はどこにあるんだ?
820774ワット発電中さん:2005/07/04(月) 21:08:40 ID:K2+JnxjR
verilogだとwireかregかで明示的に書けるけど、
VHDLだとそれが出来ないってことやね。
821774ワット発電中さん:2005/07/04(月) 21:35:22 ID:mFXlXXTD
822774ワット発電中さん:2005/07/05(火) 01:05:45 ID:iMF+7k6+
>>821
おれも普段つかってるよぉ。
あとは文法チェッカがあればのぉ、できればPC-UNIXとWinで使える奴…
823774ワット発電中さん:2005/07/05(火) 07:45:17 ID:EV2MvFVz
>>820
ハァ?まったく違う
824774ワット発電中さん:2005/07/05(火) 10:07:24 ID:VfZmOgLG
>>819
なんだ、戻り値が一個欲しいんじゃないのか(w
825774ワット発電中さん:2005/07/05(火) 11:24:35 ID:C/UCYGWV
function文を何のために使うかわかってないアホ発見-----> >>824
826816:2005/07/05(火) 14:18:37 ID:VAPy/rIO
>>821さんありがとうございます!
ロゴにちょっとビビりましたが、これで宿題が終わりそうです!
827774ワット発電中さん:2005/07/05(火) 23:49:48 ID:4WUJ+4FQ
てか記述量の問題を除けば信号の状態動きをきちんとかけるのはVHDL。
非同期のFFを記述すればVerilogの不完全さがよく解る。
>>820には理解不能だろうけどね。
でも、現実社会では好みと仕事に応じて好きな方を選べばいい。
828774ワット発電中さん:2005/07/05(火) 23:58:05 ID:hhh9apiQ
>>827
別に言語の優劣の話ではなくて、>>813の話を受けてVHDLのはまりやす
い点を挙げただけだと思うけど。
出来る出来ないの話ならどちらかというと分が悪いのは・・・
829774ワット発電中さん:2005/07/05(火) 23:58:47 ID:bVnJSGyJ
つか、論点は何処? 単に記述に関する宗教論なのか?
830774ワット発電中さん:2005/07/06(水) 00:10:09 ID:JKUczYPV
明示的って言葉にアレを持ち出す無知さを笑ってるだけ。
831774ワット発電中さん:2005/07/06(水) 00:30:40 ID:PBXbLLS3
明示的に他モジュールを宣言するcomponentに相当するverilogの記述は
なにかな。
832821:2005/07/07(木) 20:33:45 ID:2EifYSI9
お役に立てたようでよかったです。
学生さん?かな。  今後のことを考えるのであればメジャーなシミュレータにも慣れておいたほうがいいかも。
Model-Simとか。
833774ワット発電中さん:2005/07/07(木) 23:21:28 ID:IJfAtQBC
このスレで既に常識になってる事、過去ログ読めば解る事を一々聞いてる様ではその時点でエンジニアの
素質無し。
既にエンジニアと言い張るなら辞めた方が良い低レベル。
834774ワット発電中さん:2005/07/08(金) 13:55:10 ID:/Zw+xZjk
「そんなこと習ってません!」って逆ギレするエンジニアも辞めた方が良い
835774ワット発電中さん:2005/07/08(金) 13:56:30 ID:/Zw+xZjk
人間を
836774ワット発電中さん:2005/07/08(金) 20:39:21 ID:J+I8gBZp
人間は辞めなくていいよ。そこまでは言わない。
837774ワット発電中さん:2005/07/08(金) 20:42:58 ID:O7AOTj/2
わざわざ時間を使って、過去スレ読むより、新たに問い直したほうが手っ取り早く答えが返ってくる場合が多い。
罵倒するやつにはさせとけばいい。

>>833
わざわざ糞忠告するぐらいならその間に答え書いてやれ。
それが嫌なら、何も書き込む必要は全くない。別にお前に聞いてるわけじゃねえ。黙ってな。
838774ワット発電中さん:2005/07/08(金) 22:48:43 ID:ofL5amLB
>>837
自分で自分の道を拓けぬ者は、人の親切を簡単に無駄に出来る奴だ。

何を言われるか解らないからそんな的外れなレスを返すのだろうね。
そろそろ気付いたらどうだ自分の無能に。
839774ワット発電中さん:2005/07/08(金) 22:55:08 ID:O7AOTj/2
>>838
そろそろ気付いたらどうだ自分の糞ぶりに
840774ワット発電中さん:2005/07/08(金) 23:45:53 ID:ofL5amLB
ここは学校でも親切な人の寄合場でもない。
真摯な意見を聞く勇気がない者は改善も無理だろうね。
841774ワット発電中さん:2005/07/09(土) 00:36:36 ID:EdHgZlXP
>>ID:ofL5amLB
そろそろゴミは死ねや!
842774ワット発電中さん:2005/07/09(土) 10:31:30 ID:75PwG5FO
本当の事を言われて切れ間栗の厨ってマジ格好悪いね。
843774ワット発電中さん:2005/07/09(土) 12:18:21 ID:7VfOAgWB
人間辞めるのはとびきり優秀なエンジニアくらいでしょ?
漏れの知人はいまだに頭の病気で入院中なのだが
844774ワット発電中さん:2005/07/09(土) 21:26:32 ID:xG9jSyxv
> 頭の病気で入院中なのだが
大丈夫。
ナガシマさんだって復活したんだ!
845774ワット発電中さん:2005/07/10(日) 11:00:57 ID:C0xlfYHC
初心者です。おまいら教えてください。
FPGAの評価基板でやってるんだけど、トップモジュールで

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)にすると大丈夫なんですが。
お願いします。
846774ワット発電中さん:2005/07/10(日) 11:23:58 ID:66iy9pzT
両エッジで動作するFFの構造を論理合成ツールに教えてやれよ
847論理合成版「孫子」:2005/07/10(日) 13:55:03 ID:p8SrZu5+
ターゲットデバイスの仕様を知り、己の無知さ加減を思い知れば、百戦危うからず
848774ワット発電中さん:2005/07/10(日) 14:07:40 ID:2MKTggdH
>>846
Xilinxには、両エッジFFがあったと思うぞ。
全てのデバイスにはないと思うけど
849774ワット発電中さん:2005/07/10(日) 15:45:50 ID:8oXrPuTZ
なんとも非常識な使い方だな。
850774ワット発電中さん:2005/07/10(日) 20:29:47 ID:Q0c6Q6wf
寺で実装しようとしたらどうするのかな?
851845:2005/07/11(月) 05:15:38 ID:ZDld/4j6
>>846
でも、他の場所では、使えるたりするんですが、何しろまだ始めたばかり
なんで、いろいろ模索中。
>>848
Spartan-3なんですが、データシートとか読んでいたら、IOブロックは、
二つのFFを組み合わせてDDR用に両エッジ使えるようにしてあると書いてありました。
>>849
あ、本当はcount <= count + 1;とかやって、いたんですが、いろいろ実験
中で。
852774ワット発電中さん:2005/07/11(月) 13:01:01 ID:C0RpkdSn
DDR I/F用なら廉価版のCycloneでも持ってたな
寺で普通のLEで両エッジなんて無かったような。財はあるの?
846の通り、教えてやるしかないんじゃない?
853774ワット発電中さん:2005/07/11(月) 13:34:37 ID:VcyrKdD9
>>851
>でも、他の場所では、使えるたりするんですが、

他の場所って何なんだよ。
立ち上がりと立下りをひとつのalwaysに書いて一体どこの会社の製品がが論理合成できるのか言ってみろや。
854774ワット発電中さん:2005/07/11(月) 14:27:20 ID:biAEerWT
「己の無知さ加減を知る」がまだ足りないようだな
855774ワット発電中さん:2005/07/11(月) 22:51:04 ID:ek6Ebflc
無知の知ってやつな。
856774ワット発電中さん:2005/07/12(火) 00:00:37 ID:+fG7zAXH
>>853
>立ち上がりと立下りをひとつのalwaysに書いて一体どこの会社の製品がが論理合成できるのか言ってみろや。
845じゃないが、普通にできると思うが。XSTやSymplifyでもできる。

できないのは845にあるように両エッジをクロックエッジとして使う場合。
これはいままで合成するツールは見たことが無い。

845さん、Spartan−IIIのDDRレジスタをつかうなら、残念だけれどプリミティブライブラリ
(FDDRSE)とかを使いな。残念ながら合成はできないんだよ。
857774ワット発電中さん:2005/07/12(火) 01:46:29 ID:1cgUSnql
FPGAって、、D-FFじゃなくて
latchとかって使えるの?
チップの入出力がF/Fじゃなくて
Latch構成のものって言われたんですが、、作れるのか不安
858774ワット発電中さん:2005/07/12(火) 09:04:31 ID:BGTRq6vo
>>856
>845じゃないが、普通にできると思うが。XSTやSymplifyでもできる。
あのなぁ

always@(posedge A, negedge B)

はできて当たり前だろうが。そんなことをわざわざ書き込むな。
俺は >>845

always@(posedge A, negedge A)

を言ってるんだ。

>できないのは845にあるように両エッジをクロックエッジとして使う場合。

クロックかどうかは関係ないね。一般に信号線に対して合成できないんだ。
859774ワット発電中さん:2005/07/12(火) 09:10:18 ID:BGTRq6vo
あと

negedge A と posegde Aで処理が独立してる(それぞれ別のレジスタに出力する)場合。

always@(negedge A)

alwasy@(posedge A)

と独立させれば、合成可能だ。
860774ワット発電中さん:2005/07/12(火) 09:34:28 ID:bnsCC1Rn
>857
全てのFPGAで可能かどうかは知らんがXILINXは可能。
別の答えとしてDFF+ゲート回路でgated D latchを作れるよな。
861774ワット発電中さん:2005/07/12(火) 10:33:36 ID:AGOdb+2h
>>857
D-latchのマクロがあるならそれを構造記述で
インスタンスする方法もあるだろうし、
D-FFとMUXの組み合わせでD-latctと同様の動作をする
合成可能な回路を記述することもできるし、
いろいろやり方はあるけど。
862774ワット発電中さん:2005/07/12(火) 11:34:38 ID:gzKS2aJ/
>858
大昔の知識で喋るな。たとえば剤でFDDを推論させるために
always @ (posedge C or negedge C) begin
Q <= D;
end
という実例がライブラリガイドに載っている。
Dual edge FF を推論させるにはこう書くしかないから、
今は書けるようになっているのが普通だ。
863774ワット発電中さん:2005/07/12(火) 12:01:55 ID:BGTRq6vo
>>852
実際7.1のXSTとSynplify 8.1でやってやるからデバイスとオプションを書けや。
それと合成できるというならそのソース示せや。ライブラリじゃなくな。
864774ワット発電中さん:2005/07/12(火) 12:02:32 ID:BGTRq6vo
>>852じゃなくて>>862
865774ワット発電中さん:2005/07/12(火) 12:14:01 ID:BGTRq6vo
Spa3E オプションスイッチデフォルト

always@( posedge A, negedge A ) begin
C <= ~B;
end

その場合のXSTは
The logic for <C> does not match a known FF or Latch template.

でエラーだ。
866774ワット発電中さん:2005/07/12(火) 12:18:53 ID:uwnjmqUs
always@(cocacola)
867774ワット発電中さん:2005/07/12(火) 12:24:06 ID:OUt/xt3H
ねえ、今のFPGAって中にPLL持ってるんだから
素直に2倍クロックでやればいいじゃん
868774ワット発電中さん:2005/07/12(火) 12:28:23 ID:BGTRq6vo
always@( posedge A, negedge A ) begin
C <= ~B;
end

はクールランナーではそのまま合成できるようだな。オプションもデフォでOKだった。

http://edaboard.com/ftopic105815.html
869774ワット発電中さん:2005/07/12(火) 12:38:04 ID:BGTRq6vo
結局、CoolRunner以外Virtex 4, Spa3いずれも合成はできない。

>>862
逃亡か?さっさとソース示せや。
870774ワット発電中さん:2005/07/12(火) 12:56:32 ID:gzKS2aJ/
>869
おまえさんの主張が >858 から >869 まで矮小化してくれれば
俺としては必要十分なんでこれ以上何か書くことはない。すまんね。

871774ワット発電中さん:2005/07/12(火) 13:02:14 ID:BGTRq6vo
>>870
FPGAではライブラリを使わず合成するHDL記述法は全く一般的ではないのに、
何を戯言ほざいてるんだ?CPLDの世界でチマチマ生きとれ。

>今は書けるようになっているのが普通だ。

普通ねー。FPGAではすべてエラーになるのに普通か?
これは、現時点でクールランナーだけはそういう書き方が許されていると表現するんだ。
一部で局所的に成立することを全体がそうであるように言うなアホが。
872774ワット発電中さん:2005/07/12(火) 17:34:06 ID:ZlBvECkI
アホはどっちかな?
873774ワット発電中さん:2005/07/12(火) 18:51:18 ID:uRSf/uPG
とアホの代表が申しております
874774ワット発電中さん:2005/07/12(火) 18:53:28 ID:OUt/xt3H
うわ〜ん!アホゆうやつがアホなんや〜!
875774ワット発電中さん:2005/07/12(火) 21:12:40 ID:bnjcyq7P

私のために喧嘩はやめて
876774ワット発電中さん:2005/07/12(火) 23:36:10 ID:CbBtYPpt
アホという奴がアホってのを数学的に証明する事は可能である。
877774ワット発電中さん:2005/07/13(水) 00:24:48 ID:0RHL68ir
というお前がアホであることは証明するまでもなく明らかである。
878774ワット発電中さん:2005/07/13(水) 01:15:44 ID:TgJ2B+vs
always@(bothedge A)とか記述させてくれんかのぅ。
879774ワット発電中さん:2005/07/13(水) 16:19:17 ID:d/JO85hT
それはalways@(A)と同じでない?
880774ワット発電中さん:2005/07/13(水) 16:46:34 ID:cHpl5gAj
レベルとエッジの違いがわかるかな?
881774ワット発電中さん:2005/07/13(水) 17:27:54 ID:JIV4AdAm
レベルとエッジトリガの違いはあっても目的としては同じことになると思うが?
2値でレベルが変化するってことは信号のエッジが必ずできるってことだよな?
俺としてはalways(A)と書くんじゃなくて

function foo;

assign binbin = foo(A);
とかして組み合わせ回路にしちゃう。
882774ワット発電中さん:2005/07/13(水) 17:38:07 ID:d/JO85hT
両エッジってつまりレベルやん
883774ワット発電中さん:2005/07/13(水) 19:35:17 ID:Nlbzaben
あほか! 「レベルでカウンター回ったらどないなんねん。」 と突っ込んでおこう。
always@(edge A) と記述したいのでは?
884774ワット発電中さん:2005/07/13(水) 22:16:52 ID:JIV4AdAm
レベルでカウンタ回ったら?
Lo->Hiで1回
Hi->Loで1回
それぞれ回るだけだが何か?

always@(A) begin
counter <= counter + 1;
end

だろ?
885774ワット発電中さん:2005/07/13(水) 23:08:35 ID:c0mOAYNS
プププ
886774ワット発電中さん:2005/07/14(木) 00:27:04 ID:wW0Ea4ib
bakadane
887774ワット発電中さん:2005/07/14(木) 02:12:18 ID:rPDoDQn0
> ID:JIV4AdAm
ゆとり教育の弊害なのかな・・・
学生だったら別にいいんだが、社会人だったら君ヤバイ、やばすぎるよ。
あと1年ぐらいはちゃんと設計してからココに書きなよ。
888774ワット発電中さん:2005/07/14(木) 03:15:26 ID:d5PMNJZ3
always@(edge A) と記述したいのでは?
889774ワット発電中さん:2005/07/14(木) 06:55:45 ID:Gb0w2QKU
>>884
釣りなのか? だったらここの住人を見くびりすぎ
マジなのか? だったらスゲェ珍獣を発見した気分 ププ
890774ワット発電中さん:2005/07/14(木) 08:34:45 ID:7IXFkLf+
だからこそ、VHDLがいいんだよ。

VHDLで同じことを考えれば、すぐに分かるのに
891774ワット発電中さん:2005/07/14(木) 10:08:53 ID:ZN8fEffo
>>890
A' event and (ここをどう記述する?)
892774ワット発電中さん:2005/07/14(木) 10:52:46 ID:ypsQmtw+
ちゃうねん>>884は、なんもまちごうてへんねん
ただそんな石がないっちゅうだけやねん
893774ワット発電中さん:2005/07/14(木) 14:10:00 ID:Gb0w2QKU
物理的にありえないデバイスについて物理的に理不尽な状況を
シミュレーションする行為って意味ないよな
894774ワット発電中さん:2005/07/14(木) 14:40:24 ID:ypsQmtw+
あんな、伝えようとする熱意
熱意が世界を切りひらくんやで

…って宇宙人がゆうとった
895774ワット発電中さん:2005/07/14(木) 22:57:49 ID:7IXFkLf+
>>891
event を使わない記述をすればOK
896774ワット発電中さん:2005/07/15(金) 21:04:26 ID:0UzEDW/c
>>893
>物理的に理不尽な状況をシミュレーションする
とは具体的にどういう状況?
897774ワット発電中さん:2005/07/15(金) 21:28:58 ID:Gd7IDYGM
あり得ない前提を持ち出しその点の不備を徹底的に叩く。

詭弁の特徴だな。
898774ワット発電中さん:2005/07/15(金) 21:30:31 ID:grUx+8Ou
>>895
工エエ(´Д`)エエ工
899774ワット発電中さん:2005/07/15(金) 21:33:36 ID:0UzEDW/c
>>897
具体的にというのは、実際のデバイスでいうとどのようなケースなのかという意味です。
今の流れから考えると「両エッジで動作するシミュレーションには意味がない」と言いた
いのかな?
まさかね・・・
900774ワット発電中さん:2005/07/15(金) 23:04:29 ID:Kv4+qPAj
>>899
レベルと両エッジを同じものと考えるのは理不尽だよなって流れだろ
ププッ
901774ワット発電中さん:2005/07/15(金) 23:35:40 ID:0UzEDW/c
「レベルでカウンタ回すって意味わかんねーぞ」っていう反論と思ってOK?
902882:2005/07/16(土) 00:31:26 ID:8vEt7zJD
釣れた釣れた
大漁
903774ワット発電中さん:2005/07/16(土) 01:59:39 ID:T5Rg3XaQ
>>882
>両エッジってつまりレベルやん

ギャッハハハ
間違いにようやく気づいてやんの。大笑
そして見苦しい
904774ワット発電中さん:2005/07/16(土) 11:50:16 ID:SFjO8flD
初心者で申し訳ないのですが、
always @(posedge a or negedge a)

always @(a)
はどちらが良いですか?
905904:2005/07/16(土) 11:55:11 ID:SFjO8flD
というのも、aが X → 0/1 や 0/1 → X などのときにどうなるのかなと
思ったので。的外れだったらすんまそん
906774ワット発電中さん:2005/07/16(土) 21:47:24 ID:NAMFUaRB
H''
907774ワット発電中さん:2005/07/17(日) 16:07:57 ID:64bfE5tu
>>905
だから、VHDL使えと何度言わせれb
908774ワット発電中さん:2005/07/17(日) 23:49:34 ID:9FYnYPei
最近、ロジック記述ばかりで、HDL使ってないなー。
909774ワット発電中さん:2005/07/18(月) 04:53:15 ID:cA2cTElP
スケマチックのことか?
910774ワット発電中さん:2005/07/18(月) 14:48:12 ID:W8ro3qzU
VHDLみたいな糞言語をこの後におよんでなんで今更使わにゃならんのだ?
911学生:2005/07/18(月) 16:54:47 ID:vh1ICOVp
Quartus2でシュミレーションすると
Warning: Design contains 14 input pin(s) that do not drive logic
となるのですがどうすれば動くのでしょうか?
出力波形も出ないのですが、、、
912学生:2005/07/19(火) 00:47:48 ID:/HmVcs/q
ちなみにコンパイルすると、total logic elementsが0のままです。
913774ワット発電中さん:2005/07/19(火) 00:49:45 ID:ZVv5JVsO
最近、MAXIIばかりでカルタス使ってないなー
914774ワット発電中さん:2005/07/19(火) 01:23:00 ID:S3EZyh6u
>>911-912
ソースさらせや。
915911:2005/07/19(火) 01:34:29 ID:6rAB43cm
嫌だね
916774ワット発電中さん:2005/07/19(火) 01:46:07 ID:EYS770us
>>910
信号の状態流れを直接記述出来る言語は今のところVHDLだけです。

どっちが良いとか言わないがそれを解ってないお前はかなりの馬鹿だね。
917774ワット発電中さん:2005/07/19(火) 07:37:11 ID:GnIAr5ZR
>>916
>信号の状態流れを直接記述出来る言語は今のところVHDLだけです。
お前がVHDLしか理解できてないことがよくわかった。
くだらんこと取り上げてVHDLがあたかも優位であるような主張するとはマヌケの極みか?
死んだらどうよ?
918774ワット発電中さん:2005/07/19(火) 09:18:17 ID:rLNouXCV
>>911
死ぬまで悩んでいなさい。

たぶんコードが正しく書かれていないので入力ピンが無効化されている。

シミュレーションの入力データはどうやって作ったかわからんが信号名が間違えている事も考えられる。

14本だと両手じゃ足りないんだろうな。
まず最初はアンドゲート1つだけで確認してみると井伊かも。
片手で間に合う本数だとできるかもよ。
919774ワット発電中さん:2005/07/21(木) 00:02:42 ID:KemUW8Cg
>>917
理解してないのはお前ではないか?
間抜けだなぁ。
920774ワット発電中さん:2005/07/21(木) 00:26:06 ID:duQ1SQQ1
>>917はびへーびあって言葉を知らないのでしょう。
煽りを入れるには未熟すぎて自滅と。(w
夏にはありがちな光景ですが。
921654:2005/07/21(木) 00:32:41 ID:CFOsondZ
このすれでは建設的にたのむよ
922774ワット発電中さん:2005/07/21(木) 01:10:34 ID:KemUW8Cg
罵倒語しか出せない馬鹿が居なければそうなるのにね。
923774ワット発電中さん:2005/07/21(木) 13:12:48 ID:JUESr40s
>>922

>間抜けだなぁ。

>馬鹿が居なければそうなるのにね。

すなわちお前がいなければこのスレが建設的になるってことだな。
夏厨がこのスレに書き込むな。早く宿題仕上げて。ママのおっぱいのんでねんねしな。
924774ワット発電中さん:2005/07/21(木) 20:17:33 ID:MTviURZX
> 罵倒語しか出せない馬鹿が居なければそうなるのにね。
罵倒語レスを無視しつつ、建設的なレスを書ける人がいれば
建設的なスレになるんだがな。結局、無理なんだわ(w
925774ワット発電中さん:2005/07/21(木) 22:58:01 ID:KemUW8Cg
>>923
ご自分のレスをよく見ましょうね。
頭の宜しそうな紳士様。(ゲラ
926774ワット発電中さん:2005/07/21(木) 23:02:35 ID:IgH9tXsh
僕はVHDLしか知りません
Verilogも勉強しといた方が良いですか?
927774ワット発電中さん:2005/07/21(木) 23:25:53 ID:IjhOegXT
せっかくの夏休みだから勉強しておきましょう。
928774ワット発電中さん:2005/07/21(木) 23:42:28 ID:IgH9tXsh
ありがとうございます
がんがります
929774ワット発電中さん:2005/07/22(金) 00:13:50 ID:cgWqWP/a
ID:KemUW8Cg あったまわるいのう。

>間抜けだなぁ。

>馬鹿が居なければそうなるのにね。

>頭の宜しそうな紳士様

じゃまだよお前。
930774ワット発電中さん:2005/07/22(金) 00:20:53 ID:Tuh8Jsq8
何時までも引っ張る厨が一番馬鹿だよ。
多くのネラーはそう思ってる。

つまらない話題を引っ張るなら何か有意義なネタでも投入すればヒーローなのに
何やってるの?
931774ワット発電中さん:2005/07/22(金) 00:24:36 ID:5ZUy12FI
>>929
お前も邪魔。
>>930
お前も引っぱりすぎ。

両方氏ね。一緒に逝ってやるから。
932774ワット発電中さん:2005/07/22(金) 00:48:20 ID:Tuh8Jsq8
あのー、引っ張るって無関係な者ですが何か恨みでも?
良いから何かネタをくれよ。
933774ワット発電中さん:2005/07/22(金) 00:55:58 ID:IT8SpgdD
粘着質は無視で良いと思うよ。>>932
夏になったら湧くのはいつものことだから。
放置が特効薬だと思うわ。
934774ワット発電中さん:2005/07/22(金) 01:06:56 ID:Tuh8Jsq8
この板自体厨が少なかったのに残念だな。
他の板と同じになったら嫌だよね。
935774ワット発電中さん:2005/07/22(金) 03:08:04 ID:xF7oJS15
自演厨はときどき板
936774ワット発電中さん:2005/07/23(土) 01:03:30 ID:uzsEbpJM
そろそろ流れが戻ってる?
937774ワット発電中さん:2005/07/23(土) 05:24:25 ID:ogtiTd3m
「CPLDやFPGAで全加算器を構成する場合、
CLAを実装するのは面積的にも速度的にも無駄」
という記述を見たのですが、具体的によく分かりません。

とりあえず切っ掛けだけでも構いませんので
御指導頂けると有り難いのですが。
938774ワット発電中さん:2005/07/23(土) 09:33:30 ID:OAhy7nRg
>>937
CLA = carry look ahead ってのは理解してる?

最近のCPLD/FPGAは、ロジックセルに加算器のためのキャリー専用パスを
持ってたりするから、HDLで A <= B + C みたいな書き方した方が
一般に良い結果が得られるぞ
939774ワット発電中さん:2005/07/23(土) 13:49:25 ID: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
940939:2005/07/23(土) 14:12:13 ID:SOVJbdin
>>939
自己解決しました。あしからず。
941774ワット発電中さん:2005/07/23(土) 17:49:26 ID:yhOh4SI3

このスレとっとと埋めきっちまおうぜ。

>>939
alwaysのなかでブロッキング代入をわざわざ使う意味は?
942774ワット発電中さん:2005/07/23(土) 18:40:42 ID:uzsEbpJM
無意味な梅は嵐と同じ。
つまらん提案は無用。
943774ワット発電中さん:2005/07/23(土) 22:29:26 ID:ogtiTd3m
>>938
ありがとうございます
944774ワット発電中さん:2005/07/24(日) 01:08:58 ID:OMFCtNMb
>>941
最近はそういう書き方が流行ってるんでしょうよ。
945774ワット発電中さん:2005/07/24(日) 01:23:33 ID:LCgX1MLG
埋 め 立 て カ ウ ン ト ダ ウ ン ス タ ー ト
946774ワット発電中さん:2005/07/24(日) 02:20:20 ID:P1GRkTNY
どっかの誰かが書いたというソース(設計書は無い)を改造するように言われたのですが、

if(いべんと)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で書けばいいと思うのだけど、

こういう書き方はふつうにあるんですか?
947774ワット発電中さん:2005/07/24(日) 03:57:53 ID:kh98zOhF
case文でも良いんじゃないの?
趣味の問題とみるが。
948774ワット発電中さん:2005/07/24(日) 07:21:10 ID:LCgX1MLG
ふつうにあるが何か?
elsifで書くと全くロジックが変わってくる。
つまり、
hwn1==1 かつ hen2 ==1 が成立する場合でもhoge <= 0にしたいんじゃないのか?
949946:2005/07/24(日) 11:01:34 ID: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;

と同じ回路だということでしょうか?
950946:2005/07/24(日) 11:09:07 ID:P1GRkTNY
↑ていうか、シミュレーションすればいいんですよね。
(明日やってみます)

>>944
まじですか?
それとも、嘘を嘘と(ry ですか??

もひとつ重ねて質問なのですが、
このスレでageられるソースにおいて、変数に「hoge」が多用されるのは何故でしょうか。

メソ?
951774ワット発電中さん:2005/07/24(日) 13:58:43 ID:odUXUlSq
>>946

HDL以前に通常のプログラム言語で

if(A) {
}
if(B){
}



if(A){
}else if(B){
}

の違いがわかってないよ。シミュレーションして試行錯誤的に進めるんじゃなくて
もいちど教科書読め
952774ワット発電中さん:2005/07/24(日) 14:34:49 ID:P1GRkTNY
>>951
ありがとうございます ノシ

C言語で

if(A) {
}
if(B){
}

こう書かれたらどう動くはわかるのですが、
HWの記述ではひとつのいべんとがどこで終わるのか迷っておりました。
私が持ってる本ではこういう書き方がなかった……

ちょっと本屋で立ち読みしてきます
953774ワット発電中さん:2005/07/24(日) 21:37:16 ID:XsYkfhxJ
コンカレント文 と シーケンシャル文 の違いを学べ
954774ワット発電中さん:2005/07/24(日) 22:24:13 ID:P1GRkTNY
>>953
ありがとうございます ノシ

コンカレント文で、該当の例文も発見しました…が、やっぱよくわからん。
また後で来ます。ありがとうでした。ノシ
955774ワット発電中さん:2005/07/28(木) 12:52:37 ID:CQeF8FfS
早く使い切ろう。
956774ワット発電中さん:2005/07/29(金) 00:09:12 ID:aL3NfPg3
嵐は去れ
957774ワット発電中さん:2005/07/29(金) 21:39:19 ID:U6VPTzd0
台風一家
958774ワット発電中さん:2005/07/29(金) 23:12:47 ID:b8w75VJ6
カウントダウンスタート



959774ワット発電中さん:2005/07/30(土) 02:40:21 ID:Un4xNoi9
次スレは?
960774ワット発電中さん:2005/07/30(土) 16:01:39 ID:+uPhI5Uz
IcarusVerilogインストール後、コマンドプロンプトにてコンパイル試みましたが、
iverilogは内部コマンド外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。
とのエラーメッセージが出ます。
どうしたら改善されるでしょうか?
961774ワット発電中さん:2005/07/30(土) 22:00:28 ID:wK9JL26l
つ[環境変数のPATH]
962960:2005/07/31(日) 12:13:39 ID:aH35sDFp
>>961さん
*:.。..。.:*・゜(n‘∀‘)η゜・.:*キタワァ
マジサンクスです!!
963774ワット発電中さん:2005/07/31(日) 23:00:49 ID:HJEqkn1U
釣りじゃなかったのか...
964774ワット発電中さん:2005/07/31(日) 23:56:16 ID:jlkS/dls
verilogの前にやることがあるような気がする…
965 ◆YMO/ALTERA :2005/08/02(火) 22:40:45 ID:+446R9zl
とりあえず次擦れ用のテンプレ集め、やらないか?
966774ワット発電中さん:2005/08/02(火) 23:14:14 ID:gVAOvRTc
んじゃ、まずタイトル。

【PALASM】記述言語で論理設計 Project3【ABEL】
967774ワット発電中さん:2005/08/02(火) 23:49:35 ID:S+jApFx5
非同期でか?
968774ワット発電中さん:2005/08/03(水) 00:31:20 ID:ItlmCma/
「言語」って、そもそも何だ?
記号が意味を表すなら、MIL も言語か?
969774ワット発電中さん:2005/08/03(水) 01:00:18 ID:hrwqnBBh
 この板のバやい、マイコン、プログラマブルコントローラーに指令やプログラム
を書き込む為の記号列全般を指すと思われまつ。
970774ワット発電中さん:2005/08/03(水) 02:34:34 ID:Lw9Hhzg5
俺達の友情に言語(ことば)はいらない!
971774ワット発電中さん:2005/08/03(水) 05:58:17 ID:AmPhC6LI
ラダー…のスレを探していたら、機械工学なのか
972774ワット発電中さん:2005/08/03(水) 16:01:39 ID:+j9VL7VV
>965

FPGA
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

まとまってないな・・・スマソ
973774ワット発電中さん:2005/08/03(水) 16:42:25 ID:9DDqUxcA
しんぷりふぁいも無料ライセンスもらえるみたいね、1ヶ月のやつ。
手続き面倒そうだけど・・・
974774ワット発電中さん:2005/08/03(水) 19:53:55 ID:ItlmCma/
>>969
時系列が1つであるという制約を含めるか、それとも含めないか?
975774ワット発電中さん:2005/08/04(木) 00:01:24 ID:dlVi4p0J
>>973
そういう期限付きの場合は,
PCのカレンダを逆戻しすれば永久に使えるんですか?
976774ワット発電中さん:2005/08/04(木) 12:18:16 ID:xehSMnll
大昔のシェアウェアじゃないんだから...
977774ワット発電中さん:2005/08/04(木) 12:20:44 ID:om0dcdEJ
漏れのPCは時計のクロックを100分周して突っ込んでいる
978774ワット発電中さん
>>977
ワロタw