【always】Verilog & VHDLスレ【process】

このエントリーをはてなブックマークに追加
1begin
HDLを使った設計者のみなさん、記述方法で悩んでませんか?
初心者からベテランまでカキコどうぞ。

2名無しさん@1周年:02/04/15 19:11 ID:DN36xGyp
デジタル・アナログ混載のをやりたいのですが、
verilog-Aの解説書ありませんか?
3名無しさん@1周年:02/04/15 22:32 ID:kjUfHahP
ABELが一番いい
4あぼーん:あぼーん
あぼーん
5名無しさん@1周年:02/04/15 23:30 ID:W23P60o3
この板は工学者の集まる所だからな。
コーディング屋さんの場所は別の板があるからなあ。
しかも今どき【 】で挟んだタイトルとは。。

a,sousou,kimitachi,jibunwo kougakushadato kanchigaishinaidene wakatta?
6七資産:02/04/15 23:40 ID:qq9lDgMF
↑はいはい、組み立て屋さんの妄想でした(w
7システム屋:02/04/15 23:48 ID:pWMpU3dH
HDL記述で悩んでいる>>1
ゲート使えば回路組めるんだろうね?
8学生:02/04/16 00:12 ID:UKJPRqqf
>>5
もうあんたらの時代は終わったんだよ・・・・
窓際ジジイは記憶力もどんどん衰えて大変ですなー (プ
9学生:02/04/16 00:23 ID:UKJPRqqf
しかし、確かに単なるコーディングに過ぎないなんだよなぁ・・・・
 
11学生:02/04/16 00:29 ID:UKJPRqqf
俺は1じゃないよ
文系です

理系のおっさんは生きてて意味あるの?
12ななし:02/04/16 00:39 ID:BjyvqhhD
スキルのない、文系おっさんよりは生きていて意味がある。
13名無しさん@1周年:02/04/16 00:40 ID:l38qI+sF
>5
HDL書くのはりっぱに工学だよ。TEXTだと回路じゃないと思ってる感覚が古い。
クラゲの回路図書けなくてもHDL書いて論理合成するほうが速いし、LSIの上位
設計はできる。あとの物理レイアウトとかプロセスとかプリント基板実装とか
は縁の下の力持ち諸君におまかせ。台湾や中国に委託って手もある。
>5みたいのは台湾か中国行けば?
14名無しさん@1周年:02/04/16 00:45 ID:hHBCP+J0
spice girls
15システム屋:02/04/16 00:55 ID:IE3kUEG6
>>13
見たいな人が、回路のゲート見積もりも出来ずに
かってなコーディングをやってあとはコンパイラ任せ、
になるんだね。
今のコンパイラは馬鹿ばっかしでちゃんとああせい、こうせいって
指示してやんなきゃちゃんと思った回路を生成しないんだよ。
あ、出来上がり回路なんて想像できないか、ここの一年生は。
16名無しさん@1周年:02/04/16 01:41 ID:eppnN9+r
always @ (posedge age) begin
sage <= sage +1
end
17名無しさん@1周年:02/04/16 01:48 ID:eppnN9+r
endmodule
18名無しさん@1周年:02/04/16 01:49 ID:hHBCP+J0
>>155
なんだか大変ですね。ご苦労さまです。
19ななし:02/04/16 01:54 ID:BjyvqhhD
>>16
sageへの代入行でセミコロンが無いので、文法エラーになります。

>>15
おいおい、だったらいつゲート見積もりしてるんだよ。
で、その見積もり精度の誤差はどれくらいだ?
ゲート見積もりなんてしても、最近はあまり意味が無い場合が多々あるのに プッ
20名無しさん@1周年:02/04/16 01:59 ID:UKJPRqqf
>>5は中国人に仕事を取られた模様です
21名無しさん@1周年:02/04/16 02:09 ID:eppnN9+r
//  >>16 スマソ

always @ (posedge age) begin
   sage <= sage + 1'b1;
end
22名無しさん@1周年:02/04/16 02:15 ID:eppnN9+r
wire age;
assign age = age & sage;
23 :02/04/16 02:47 ID:GKlRN1g/
幼稚…
2449G:02/04/16 08:52 ID:YLDQEjQw
>>165
>一般人にLinuxが受けないのと同じか〜ぁ(ゲラゲラ

スマソ。親分にBSD勧めてこっぴどく怒られた。
お前は技術に傾倒しすぎで、一般人にうけるような
ことを言えと。一般人にもうけるLinuxにしとけって(藁。

>プログラムの書きやすさも大差ないし。
これはマジだが、ループが入ると純粋なRPNはしんどい。
スタックの上が0だとかそういう条件でやるのは結構面倒。
まあ、FORTH使ってたので苦痛ではないのだが、読みにくいね。
2549G:02/04/16 08:54 ID:YLDQEjQw
ごめん、違うスレに書けてしまった。なんでだろう。
2649G:02/04/16 08:58 ID:YLDQEjQw
間違えた記念に一言。

トラ技の付録便利そう。これまでこういうなのいろいろあった
けど、今回のトラ技の結構いいと思う。
27 :02/04/16 09:40 ID:nLbOQHbF
28名無しさん@1周年:02/04/16 22:26 ID:0hnom1xU
デザインウエーブにも書いてあったのですが、HDLではなくジョンソンカウンタなら良い回路です。
HDLはバグがあるので論理式を書くのがいいです。
2949G:02/04/16 22:33 ID:nVehpUyj
>>28
デザインウェーブ、忙しくって最近流し読みなんだけど、そんなの載ってた?
またまたK林荒らし?
30七資:02/04/16 23:34 ID:oSb++jMc
ASCIIでタイミングチャート書いてる人、どんな感じ?
あと、ASCIIで状態遷移をかいている人がいたらおせーて。
31名無しさん@1周年:02/04/16 23:52 ID:vcMt/PuW
>>29
2月特集です。私のような入門者にも分かりやすく書いてあって感動しました。
K林荒らしってなんですか? 何かあったんですか?
32名無しさん@1周年:02/04/17 00:27 ID:XI46R+pZ
組み合わせ論理回路とか順序論理回路を授業でやってます
あとVHDLでCPU設計してますが、これらは何の役に立つのでしょうか?
組み込みですか?
3332:02/04/17 19:54 ID:4pgiOvpR
お前ら組み込みでこーゆー知識を使ってますか?
3449G:02/04/17 21:10 ID:/oGZhfgC
>>31
ホントに狙ってない?(藁。
2月号特集見直したけど、
>HDLではなくジョンソンカウンタなら良い回路です。
>HDLはバグがあるので論理式を書くのがいいです。
こんな極論書いてあるところがまだ見つからない。
今回は色々な回路が淡々と紹介してあるだけだよ。それと、
今までのK林本で抜けていた数値演算回路が付いているので、
2月号の特集は面白いね。数値演算回路の手ごろな参考書が
なかなか無いので、いいかも。5月号にも数値演算のことが
書いてあるけど、この人が参考にしてるのは90年12月号の
インターフェースだった。私もこの号が手放せないよ。
#90年12月号は某社の社員でUNIX機設計部隊#だった。
#某社の売店で買ったな。懐かしい。
3549G:02/04/17 21:15 ID:/oGZhfgC
>>32
ひょっとして、灯台?公務員試験には出ないよ(藁。

という冗談は置いといて、結構役に立つと思いますよ。プロセッサ
作ったら、一応色んな種類の回路作ることになりますし、一度に基
礎が覚えられていいのではないですかね。
3632:02/04/17 21:33 ID:4pgiOvpR
>>35
マジレスありがとうございます。
東大じゃないです。w
偏差値は低いのですが、カリキュラムは一流の様な気がします(?)

これは組み込みの分野でも使われたりするのでしょうか?
自分はハードよりもソフト開発に興味があるもんで・・・・。
3749G:02/04/17 22:47 ID:txdQohYB
>カリキュラムは一流の様な気がします(?)
暫く前はこんなのできる大学が少なかったですから、恵まれて
いんではないでしょうか。

>これは組み込みの分野でも使われたりするのでしょうか?
VHDLを組み込みプログラミングに直接使うことはまずないで
すが、組込み関連の仕事はハード屋に匹敵するハードウェア
の知識を必用とします。なので、やっておいて損はないです。
例えば、組込みのプログラムはその実行時間が問題となる場
合が多いです。この時にCPUのクロックやバスの転送速度、
演算器の演算速度などを計算する必要があります。こういう
時にプロセッサ設計の経験があれば役に立つことでしょう。

一度、ファーム屋がとんでもない外注を呼んできたことが
ありました。RISCの実行速度が計算できんから、このルーチ
ン実行時間が分からんと...。固定クロックのCISCしかやった
ことが無いって....。おまけに、チップのマニュアルに書いて
あるHi-Zって何って....。こんな奴解雇しろ〜。
38ななし:02/04/17 23:15 ID:iYhz5Xcf
ゴメソ
「組み込み」って何? おせーて君。
そして「組み込み」の対義語に相当するハードウェア分野は何ですか?
39名無しさん@1周年:02/04/17 23:19 ID:45UF32Fy
まぁその、>38
この次付くレスから、彼らが語ってることが工学からほど遠い職工さんレベル
である事に気付くのがよろし。
40名無しさん@1周年:02/04/17 23:20 ID:bLltf3aj
電子レンジとか冷蔵庫とかじゃねーの?
41名無しさん@1周年:02/04/17 23:32 ID:FSGK2g3f
>>38

まぁその、>38

この次付くレスから、彼らが語ってることが工学からほど遠い職工さんレベル

である事に気付くのがよろし。


42システム屋:02/04/17 23:33 ID:eCoz6wgv
ここは初心者スレになりました。
43ななし:02/04/17 23:35 ID:iYhz5Xcf
>>39>>41は、知らないなら知らないってハッキリ言えばいいじゃん。
好きなら好きと言っちゃえばいいじゃん。
恥ずかしいことなんて無いよ。
きっと職場でもしったかで、組み込みは〜 なんて会話してるんじゃない?
その点、>>40は親切さん。
4432:02/04/18 00:14 ID:xgTSK0AD
>>37
レスありがとうございます
大変参考になりますです

ところでファームって何なのです?
ファーム屋とかいいますよね。
ハードっぽいってのはわかるのですが、調べてもよくわからんので、教えていただきたいんですが・・・
45名無しさん@1周年:02/04/18 00:21 ID:K5tpVZcv
>>43 
>>39,>41はきっとリストラされたプロセス屋か回路屋で
システム屋を逆恨みしているんだろ。そんな
偏屈なのが多いからな。リストラされたらのんびり
ヒラメの養殖でもしていろってこった。

人間の扱える複雑さには限度があって複雑さが増大する
時には抽象レベルを上げる必要がある。だからHDLやIPは
必然になる。70年代ならレイアウトを管理できた。80年代は
ゲートを何とかがんばった。90年代にHDLの動作記述を
導入した。と、非定型な回路を要求されるシステム屋はどんどん
抽象度を上げていかざるをえない。

クリティカルな部分は全体のごく一部に収まるように
概念設計をするから、その部分はトランジスタを手で
並べてでもがんばるが、他の部分は自動化しなければ
対応できない。また、そこまでクリティカルな処理を
しなくても利益が上がるシステムも多いから
生産量に応じてFPGAを使ったりもする。

全体がレギュラーな構造でセルさえ作れば誰でも出きる
DRAMのようなものは参入障壁が低いから結局は投資が
続かなければ撤退せざるを得ないが、アプリは膨大だから
組みこみシステムはニッチで利益率の高い分野が多い。
(某社のようにリストラ社員を採算度外視して導入して市場を
荒らすのがいなければもっと皆が幸せになれるんだが)
4632:02/04/18 00:24 ID:xgTSK0AD
日立?違うか
47大企業向け人貸し業からの眺望:02/04/18 02:36 ID:r0pO3V+7
やっぱり…他人をののしる事でしか自分の価値を表明できない。
やっぱり人材使い捨て業のドカタくん達は、どこへ行ってもケンカ犬根性丸出し…
こいつらを見てると奉公してる職場のすさみ具合に比例してる。
技術蓄積もなんにも無い。只の職場。その場その場、その日その日のノルマ
をこなして、アマチュアのデジタルマニアに毛が生えた程度の技術的内容を
少々大規模にやってるだけなのに、気分は誇大妄想満帆。
だが盛りがすぎたらもう要らない人々。若い元気な野郎と交換しまーす。減る
までの利用価値しかない歯車。惑星メーテルの歯車。わ、くせぇ!
4849G:02/04/18 21:16 ID:nY6EaU8P
なんか雰囲気違うな。まず
>>38
から。「組込みって何」か。簡単に言うと、コンピュータそのものの
機能が第一の目的でない装置に「組み込まれた」コンピュータシステム
のことを言っているようだ。インターフェース5月号なんか、「組込み
向けCプログラミングの基礎」となっているので、関係者には十分普及
している言葉ななんだろうな。電子レンジとか洗濯機に入ってるマイコ
ンシステムは完全に組み込みだ。が、携帯電話の中のマイコンは組み込
みではあるが、スケジュール管理が付いてるので、コンピュータ機器に
近い。PDAはコンピュータとしての利用なので、用途的な考えでは組み
込みでない。でも、つかっている技術的には携帯電話もPDAも組み込み
と言って良いと思う。逆のものはパソコンをはじめとしたコンピュータ
だね。

>>44
次、ファームウェア。本当はプログラムの一種なんだけど、ハードウェ
アに密着したプログラムのことをファームウェアと呼んでいる。ハード
ウェアとOSの間に存在するプログラムという説明が一般的。PCの場合の
BIOSとか、CD-ROMドライブの中の制御プログラムがファームウェアの例。
大昔は「制御記憶」に入っている「マイクロプログラム」をファームウェ
アと呼んでいたように思う(ユーザがマイクロプログラム組んだ時代はリ
ア厨だった)。
現実にはOSの上しかさわらないAP屋と、ハード密着の部分を担当する
ファーム屋というのに分けてる会社が多いと思う。この定義は会社によ
って多少違うが、概ねファーム屋の方が工学的知識も豊富だ。

>>47:大企業向け人貸し業からの眺望
だったら、まともな奴よこせ。あれで1人分の工数払わされたらたまった
もんじゃないぞ。
49システム屋:02/04/19 00:58 ID:fEKQIqmt
別に煽るわけじゃないけど、なんか知識としてHDLやったのが
ここであれこれ教えてクンやってるみたい。
答えてる人のわりに質問が幼稚すぎる。
聞く前に何か作ってから聞いているんだろうね。
50名無しさん@1周年:02/04/19 01:08 ID:84KkYbmp
じゃー去れ
バイバイ
ぼく、大きくなったら機械の体をもらいに逝くんだ
pupupu
その通りになってヨカッタねえ。>デジタリアン惑星の職工さんたち。
あのアニメが流行った頃、底辺の職工さんといえば新聞社で鉛の活字をコツコツ
拾う人などが居たっけ。ノーミスであることが職工としての唯一の誇りだったろうな。
そして今。なんかコツコツとベリナントカの活字ボタンを押してる姿って、似たりよったり
だと思うよ。つくづく思うよ。君らの働く姿を背後から監視するたびに、小一時間思うよ。
あ、そうそう、大企業の歯車クンたちも、5年もしたら根こそぎメンバーチェンジ
なんだよね。どこにどう換装されたか知らんが二度と顔を合わすことが無いんだよな。
ああ…今まで大言壮語を吐いてたゴリッパくんたち。どこへ消えたんだろうか。
鉛の活字なら溶かして再活用もあったんだろうが。ま、どこへ逝ってもあのふんぞり返り
根性では長続きしなかっただろうがね。。ね。体験的にうなずくだろ?>設計マンパワ技士さん達
52名無しさん@1周年:02/04/19 02:11 ID:E3PqdrAy
>>34
2月号の1章は要は論理式が一番いいんだと理解したんですが、違うんでしょうか?
論理式で書くとには圧縮やジョンソンカウンタの話が大事なんで、後の章があるんだと思いました。

>>47、51
けっきょくどうすればいいんでしょうか? やっぱりHDLは駄目なんですか?
53名無しさん@1周年:02/04/19 04:16 ID:DrMFXP/M
verilog-Aとかってのでアナログのもできるんでしょ。
ソフト方面もバイナリとかアセンブラで書いてらんない→コンパイラに任して高水準言語に
ハード方面もトランジスタとかコンデンサとか結線してくの面倒→記述言語使う
って流れなんじゃないの。
999といえば最後はネジにされそうになるんだっけ。
http://school.2ch.net/test/read.cgi/recruit/1013100517/l50
54名無しさん@1周年:02/04/19 07:10 ID:vAeX3VYX
>>52

をを。スポンヂのやうに吸収する年頃の若者よ、その汚汁だけは吸い込んではいかん!

それのニヲイがつくと視野狭窄になって一生を棒に振るぞ。君にはゼロ番地再起がないはずだ。

5549G:02/04/19 08:36 ID:f9LycVFV
>>52
>要は論理式が一番いいんだと
ちゃうでしょう。著者本人の意向は別として(藁。
答えは>>45さんが書いておられる。
ではなぜ論理式から入るかというと、基礎からやっておかないと、
1.トラブルに対処できない
2.設計手法が変化したとき対応できない
からです。コンパイラに完全に任せると>>15さんの言うとおり
になってしまうし、クリティカルな部分特に外部からの入力など
はかなり気をつけなければなりません。
設計手法は>>45さんの言うとおり10年ごとぐらいに変化していて、
>>47の言うようにならないためには基礎を押さえておく必要があ
る。できれば、抽象代数も知っておいた方がいい。群環体束って
の。ブール束ってのね。

>をを。スポンヂのやうに吸収する年頃の若者よ、その汚汁だけは吸い込んではいかん!
ついでに、若いうちはいろいろなことをやっておいた方がいい。
無線技術にも興味があったので、3年の時必須でもなんでもない
他学科と同じ講義となるマイクロ波工学の授業を受けた。スミス
チャートとかマイクロストリップラインってのをやった。当時は
よく分からなかったのだが、多少でもやっておいて良かったと思
う。役に立ったよ。
5649G:02/04/19 08:38 ID:f9LycVFV
>>51
あのさ、今M1の学生さんの面倒見てるんだけどね、この人ら、
79年生まれなんだそうな。だから、一度も見たことないんだ
ってさ。もうちょっと新しいネタきぼーん。
57B3房:02/04/19 21:04 ID:oWeNz2Bo
出したレポート

ゲートレベル記述では,回路面積が小さく,動作周波数も早い.
RLT記述では,簡単に組めて,変更も簡単だということがわかった.
ファイルの内容はControl Signalsの部分がゲートレベルの方が簡単になっていた.
58名無しさん@1周年:02/04/19 21:09 ID:FxdqoozM
>>57
RTLじゃないの?
59名無しさん@1周年:02/04/19 21:12 ID:oWeNz2Bo
ネットワーク関係のソフト屋になりたいんですが、制御系じゃないと食べていけないでしょうか?
日本では、ソフト屋ってだけで不利ですよねー。

ネットワーク系って、制御とアプリケーションと、あとどんなのがあります?
60あぼーん:あぼーん
あぼーん
61名無しさん@1周年:02/04/19 23:17 ID:r/xmKYoI
>>58
そうだ
レヂスタートランスファーレベル?だっけ?そんな感じ
62名無しさん@1周年:02/04/19 23:20 ID:r/xmKYoI
論理回路組むとき、熱設計とか考慮する?
63名無しさん@1周年:02/04/19 23:20 ID:r/xmKYoI
授業だけだと現場のイメージがイマイチわかんないんだよねー
64システム屋:02/04/20 01:11 ID:fEsdKGOc
ゲートレベルっていうのはシミュレーション以外で使うセリフだったっけ?
RTLは>>61さんの言う通り。レジスタ互換の、とでも言うのかな。
>>57で言ってるのはひょっとしてビヘイビアのことかな?
65矢野左右衛門:02/04/20 06:15 ID:x26AV9+G
>>53
>>ハード方面もトランジスタとかコンデンサとか結線してくの面倒→
>>記述言語使うって流れなんじゃないの。

恰好の事例が御座った。431の質問の起承転結から、何かを学びとって、成長なされぃっ!
http://mentai.2ch.net/test/read.cgi/kikai/1016104730/431-444n
66名無しさん@1周年:02/04/20 12:30 ID:on1NuX0S
MAX+plusUって知ってる?
67名無しさん@1周年:02/04/20 15:26 ID:0gY5dWps
>>66
3年後期の演習で使ったです…
何するソフトだったかもう覚えてない…
68名無しさん@1周年:02/04/20 15:54 ID:UZqQ90OU
>>67
VHDLのシミュレーターだよ

君の学科は?
電気・電子・系?
69名無しさん@1周年:02/04/20 15:56 ID:qG/CAaTg
やっぱりみんなビヘイビアでがんがん大規模回路書いてるの?
俺ViewLogicのCADとかOpenCADから始めたから、どうしても記述がRTL
になってしまう。
会社でHDL使えるの俺一人だから、すごい自己流非効率記述になってる気がして
鬱だ。
70システム屋:02/04/20 17:58 ID:fEsdKGOc
>>68
シミュレータではありません。
ましてやVHDLのシミュレータなんかじゃ
ありません。
71システム屋:02/04/20 18:01 ID:fEsdKGOc
>>69
ビヘイビアな記述をパースできるツールは
実用レベルではまだ存在してません。
論理設計はみんなRTL記述で、100万でも
200万でもかいてます。
72名無しさん@1周年:02/04/20 20:36 ID:qG/CAaTg
>>71
そうなんですか。チョト安心シタヨ。
うちは作るチップも実験用FPGAもたいした規模じゃないから、
百万ゲート規模の設計は想像つかないよ。
それぐらいになると一人で設計とかはムリなのかな。
73名無しさん@1周年:02/04/20 21:23 ID:BpNTa9P4
>>71
パースだけなら大抵のツールはやってるだろう、とつっこんでみるテスト。
ビヘイビア合成ツールも商用レベルで出てるから、実用レベルで存在しないは言い過ぎでわ?
 ttp://www.synopsys.co.jp/products/behavioralcompiler/detail.html
望む性能が出るかどうかは怪しいけど、それは論理合成ツールでも同じで、
どれだけ楽をするかとのトレードオフ問題。

ビヘイビア合成の普及度が低いのは、合成エンジン自体の難しさもあるけど、
今一般的なHDL言語との相性が悪いのも原因な気がする。
もともとVerilogHDLとかは論理シミュレータの発展期に出てきたから、
論理合成目的で書くRTLもけっこう変な記述になってたけど。
SystemCとかの次世代言語が普及すれば、ビヘイビア合成も一般的になるかな?
74名無しさん@1周年:02/04/20 23:07 ID:Cdvcy/EL
>>71,>>73
ビヘイビア合成もC言語合成もどちらも、今のところ最低数千万円の投資になる。
それに見合う効果を今のツールから得られるような職場環境というのは、まだまだ稀。
よほど迅速な開発スピードが要求されて、しかも莫大な個数がでるような設計を行う
所でないとね。

そうでない所が大半だし、CだCだと騒いでるのは今のところツール屋とマスコミだけ。
皆関心は持ってるけど、あくまで様子見の状態。
どうしても今のビヘイビア合成ツールを使わないと技術的に設計できない、という状況には
現時点ではまずならないのも、高い金出してツール買う気にならない理由。
将来いつかは、今の論理合成なみにビヘイビア合成が必要になるだろうとは思うが。

無料合成ツールが出回るくらいに処理系が安価にならないと、広い普及は望めそうもない。
しかしある程度普及しないと値が下がらないんだよね。それがつらいところ。(w
75名無しさん@1周年:02/04/20 23:23 ID:bOAszPmS
>>72
上の何処かにあったようにせこせこシーケンサ作ってるだけなら1Kゲートでも
大規模だけど、演算やデータ加工などでそれなりの性能が出るような回路を作り出すと、
1Kゲートはおろか100K,1Mゲートでもあっという間に食いつぶしていくもんだよ。
色々なIPをてんこ盛りにしたり、性能を上げるためにパイプライン化したり並列化したり
すると、たいしたことしていないのにサイズが2倍4倍8倍…って感じで増える。

おもに並列化でサイズが増えてるだけで、並列化もしないのに単一機能で1Mや10Mゲートに
なるような設計ってのは今のところあまりないな。単一機能についてはRTLで十分間に合う。
一人でも十分組める。

だからツール屋が言うような「サイズが大きいからビヘイビア合成が要る」ってのは当たって
はいない。サイズよりは、どんな処理をしているのかという中身のほうが問題。
だから逆に1000ゲートの回路であっても一人では設計できない場合もあり得る。
非常に複雑きわまりない動作をする回路とかね。
76システム屋:02/04/20 23:26 ID:fEsdKGOc
ビヘイビア記述ツールが普及したと仮定してみると
今度はRTLレベルと違っていろんな制約をつけなきゃ
なんなくなるんだろうね。ソフトウェアでいえば
でかい大まかなところはCで書いて速度が必要になると
アセンブラをつかうようなもんだ。
ちなみにC記述の論理合成ツールは実際見たことがあるけど
なんかイマイチでこいつが標準化されるとはとても思えない、
ってのが正直な感想でした。
77名無しさん@1周年:02/04/20 23:52 ID:bOAszPmS
>>76
ビヘイビア合成がやるのは主に演算のスケジューリングで、スループットやクロックサイクル数、
クロック周波数などが制約条件になるはず。

Cは、最低でも並列性の記述がうまくできるようになることと、RTLやゲートレベルの記述と
柔軟に共存できるようにならないと、価格を議論しないとしても、現場ではまず採用しないん
じゃないかな。今できることは全て同じように出来て、さらにビヘイビア合成もできるという
環境でないと。

今はビヘイビアだけでしか書けないツールとか、並列処理が書けないツールとか(ツール任せになって
人が手を入れられない)、現役ハード技術者を無視して作ったんじゃないかというのが
けっこうあるよ。
まあ今は乱立状態でこれから淘汰が始っていくと思ってるんで、現場では飛びつかないわけよ(w
7872:02/04/21 00:02 ID:C5tMghPc
>>75
確かにFPGAでもちょっと回路追加しただけで、どかんと規模が大きくなることありますね。
なるほどなんとなく肌で感じられます。75氏に限らずこういう話をたくさん聞かせてください。
79名無しさん@1周年:02/04/21 01:39 ID:AgmhRTdA
>>76
C記述の論理合成ツールって、どこの?
興味あるんで、おせーて君になります。
80名無しさん@1周年:02/04/21 02:17 ID:oRL6GWNC

あーあ。見てらんないねーたちまちツールの知識ひけらかし競演か。やっぱりDQN向きな職種だわい。



81名無しさん@1周年:02/04/21 02:26 ID:JQ8KBnJ8
>>80
ラインの方は大変ですね。がんばってください。
82システム屋:02/04/21 22:55 ID:dyvv0O8y
>>79
2年弱前のUSでのEDAツールの展示会で見た。
メーカーは忘れちゃったけど数社が展示していた。
中で一社だけデモやってるところで見てたんだけど
83名無しさん@1周年:02/04/22 02:41 ID:4aZTNYW+
VHDLで、RTLレベルとbehaviorレベルでの記述の
違いはどの辺にあるか教えてケロ。

俺はVHDLではRTLでしか書けないと思うのだが、
 architecture behave of hogehoge is
なんて書く奴を懲らしめるのだ。

84ぷりんちゃん:02/04/22 22:58 ID:m8rDNkSr
>>83とか
シミュレーションするときさビヘイビア記述しねーだかや?
ベンダー提供シミュレーションモデルとかCQでも見るさ!
ためになるでよ。K林みたってのってねーずらぜ!
できりゃー
Cでビヘイブ記述してPLIインタフェースしてやるさ、
なんでもびへいぶできるずらぜ。
85ぷりんちゃん:02/04/22 23:00 ID:m8rDNkSr
VHDLはFLIかや。
86ぷりんちゃん:02/04/22 23:14 ID:m8rDNkSr
>>80単枠(腕力勝負の方へ)
確すかにツール知識は重要だよ。
それ以上にインポテンツ..しぃつぁれいコンテンツ!
が重要なのはどこさいってもおねじずら。

あんたも旋盤の手入れするずらぜ。

87名無しさん@1周年:02/04/22 23:31 ID:VplzIGh2
PLIって使ってないなぁ。

ビヘイビアってスレッドみたいのがないと並列動作が書きにくいと思うんだけど
PLIでスレって立てれる?
88名無しさん@1周年:02/04/23 00:07 ID:kIVi7oyG
>87元々このスレが板違いだから干されるだけだ。やめておけ。
89名無しさん@1周年:02/04/23 00:14 ID:bUpBYrX8
>>83
VHDL使いじゃないので、ちょいと文法忘れたから記述自体は不正確かもしれんけど、
例えばこんな感じでは?

q <= d;
after time := 50 ns;
q <= not d;
after time := 50 ns;

本当ならば process文で clock'event を使って、信号変化を記述すると思うけど、
こんな感じで時間を挿入しても信号変化している。

抽象度が高いレベルでのステートマシン記述したときに、ステート遷移する条件に
時間(wait)を入れるのって、スーパーステートっていうんだっけ?違ったかな?
90名無しさん@1周年:02/04/24 01:54 ID:dTgOXkkF
>>83
 言語の仕様をよく見た?
 VHDLは、かなり抽象的な記述が可能だよ。
91ななし:02/04/24 01:57 ID:XpqE8wZ3
合成可能でないだけってことでしょ>83。

C言語のビヘイビアだけど、データパスには使えそうなのが
出てきた。データパスは順序で動いてないので、向いてる
ようだ。それに、アルゴリズム屋さんはHDLを使えないので
この点でも需要が見込まれるようだね。
ってどこかのスレに書いたような気がするな。
92名無しさん@1周年:02/04/24 02:04 ID:dTgOXkkF
>>91
 でも、最近話題のCとやらを見たのですがなにやら、VHDLに似ていると
言う印象を受けたのは私だけでしょうか?
93カーン:02/04/24 03:09 ID:j3XRjv8a
あなただけでしょう。それがどーしました?
94名無しさん@1周年:02/04/24 03:18 ID:dTgOXkkF
>>93
 追加されたサブセットを知らないと見える。
95ななし:02/04/24 21:18 ID:XpqE8wZ3
>>92
RTL(クロックによって状態遷移する)を書けば何で書こうが
大差ないということだと思う。
96名無しさん@1周年:02/04/24 23:30 ID:pfGwo1Sp
>>95
 確かにそう。Verilogだと記述不可能な回路も存在するしね。(非同期回路だから
書けたとしてもあまり意味は無いと思うけど)
97予想屋:02/04/24 23:41 ID:QP633dPS
歴史はvisualABELに回帰する。
982:02/04/25 02:01 ID:X0Qw2fcC
だからABELがいいて言てるのに
99ななし:02/04/25 11:21 ID:kGMRemwx
デバイスに対して中立性を欠いているツールは難ありだよ。
それに、抽象度の高い記述ができんのも困る。
100名無しさん@1周年:02/04/25 11:56 ID:o20erE32
>>98
 VHDLでもVerilogでも同じ事が出来ますね。
でっ、ABELに戻るメリットとやらを教えてくださいよ。
101名無しさん@1周年:02/04/25 23:45 ID:syVkNx9P
その前に工学でないスレは出ていってくれ。板違いだと思うよ。
102ななし:02/04/26 00:21 ID:YErecDOg
>>101
何をもってそう思う?
103名無しさん@1周年:02/04/26 00:55 ID:aU+aGhHQ
>>101
 電子工学用の板がないから、工学って意味で電子工学が共存
してるんだけど、なんかおかしいか?
 反論があるなら「論理的」に反論しろよ。(w
104名無しさん@1周年:02/04/26 01:24 ID:zDoPxKNv
物理
電磁気
電気回路
電子回路
半導体工学
計算機アーキテクチャ
バイナリ
アセンブラ
C言語
アルゴリズム
・・・
どこから工学なのかな?


105名無しさん@1周年:02/04/26 10:11 ID:EFXE9waO
電子系の仕事という範囲で言えば、全部含まれると思う。
106ななし:02/04/26 17:40 ID:XnXrS3ns
>>105それはそうですね。

物理、電磁気の知識や結果は使うが、まあ理学だね。
計算機アーキテクチャ:昔は電子工学の範疇だったけど最近は情報工学かも。
バイナリ:何を意図しているのか不明。
アセンブラ:書くだけなら工学でないし、それ以外もほぼ工学の範疇から
消えてる。
C言語:書くだけなら工学でない。オプティマイザ関連はまだ工学かもし
れないけど、もう工学として語れる部分は少ない。プログラミング言語
一般については情報工学の分野かな。
アルゴリズム:どちらかというと理学。理学部での論文の方が多いと思う。

なんでもかんでも工学にする方法もある。
教育工学、感性工学etc。
107システム屋:02/04/27 05:38 ID:mLi6A3Az
>>106
みたいのが工学分野のレベルを引き下げている
理学屋に工学がわかるもんか
108名無しさん@1周年:02/04/27 05:54 ID:6sSF9Sxj
んな煽りじゃ誰も引っ掛からねぇよヽ(`Д´)ノ ウワァァン!!
109名無しさん@1周年:02/04/27 10:45 ID:Ck4kZyjZ
>>107
初めて「教育工学」って言葉聞いた時一体何かと思ったよ。
でも、そろそろHDLの話題に戻そう。脱線してスマソ。
110名無しさん@1周年:02/04/27 10:50 ID:hk4JEpTr
>>107
ちょっと乱暴な言い方で表現すると、
  理学:モノをつくらない
  工学:モノをつくる
で区分けするってのは、どう?

次期製品のアーキテクチャの検討っていうのは、理学っぽいけど、工学の部分からの
視点も重要。んでココでの検討したものが結局製品につながってくる訳で、その製造工程
は連続していて、担当者もかぶってくる。だから工学分野なんじゃないかなぁ。
111名無しさん@1周年:02/04/29 01:32 ID:Z5S3qRXq
age
112名無しさん@1周年:02/05/11 10:23 ID:UudpJZTK
揚げ
113初心者:02/06/08 07:45 ID:PSx1vYHU
初心者です。VHDLやり始めたんですがわからないことが
出てきたので来ました。

わからないのは同時処理と、順次処理です。
VHDLといってもゲートでの振る舞いをプログラム化してるだけなので
同時処理で行うというのは理解できます。しかし、process文内の順次処理
は、プログラムにかかれた順に処理されるということですよね?ということは、
if(reset ='1')then
a <= x;
b <= a;
end if;
であれば、実行後のa、bには共にxが格納され、
b <= a;
a <= x;
であればaにはxが格納され、bにはxが格納される前のaが格納さると思うのですが。
どなたか私のもやもやした心を晴らしてください。
114名無しさん@1周年:02/06/08 13:51 ID:dMobCB87
>>113
たしかにわからん。
なんで順次処理文というのか。。。
順次処理文というくらいなら、上から順番に処理するもんじゃないのか?
115 :02/06/08 17:31 ID:3DxKgaYm
シミュレータを使えるなら、ModelSimか何かでsimしてみたら?
俺は分からなくなると、すぐに実験的にsimしちゃう。
いちいち面倒だけど。
116名無しさん@1周年:02/06/08 20:34 ID:q/NXqW9z
 この程度のこと、ちょっと参考書買ってきたら書いてあると思うが・・・。
 それを惜しいと思うならVHDLなんか使わない方は良い。
117名無しさん@1周年:02/06/08 21:03 ID:KML6fTJp
>>116
>>114が回答しているような話しを聞きたいのだと思うよ。

で、
>順次処理文というくらいなら、上から順番に処理するもんじゃないのか?
上から順に処理だけど、if条件の成立している一瞬に順次処理してると
いう解釈だと思う。因みに、非同期リセットは危ないよ。
118名無しさん@1周年:02/06/08 21:13 ID:q/NXqW9z
>>117
 失礼。脊髄反射してしまった。

 多分これは日本語訳したとき、この様な表現になったのでは
ないかと思います。原文を見たらヒョッとすると謎が解けるかも
しれませんよ。
119 :02/06/08 21:18 ID:9WvCuvKS
あ、やっぱり非同期リセットって危ないの?
VHDLの参考書とか、DesignWaveの特集では、よく非同期リセットの記述がされてる。
まぁ、書いている人がほぼ同じっていうのもあるけどね。
スタイルガイドってヤシを見たときは、やっぱり非同期リセットを推奨していた。
ASIC化する場合って、非同期リセット付きF/FをサポートしていないASICベンダも
あるから、基本は同期リセットかなぁって思ってた。
リセットかかるまで不定値が伝播するっていうけど、結局リセットがかかって初期化されるワケだし。
120117:02/06/08 21:27 ID:pWNKewui
>>119
こっちはHDLスレで、デバイスが仮定できませんのでね。
121 :02/06/08 21:48 ID:9WvCuvKS
>>113
下のところのVHDL講座では、process文の条件式が上から順次処理されるって書いてあった。
ttp://vsac.jeita.or.jp/Education/eContents/vhdl_tut/p24.html

ちなみに、あなたの思ったような感じでデータを格納する方法ってわかります?
<= を := に変えるだけだよ。
122初心者:02/06/08 22:44 ID:PSx1vYHU
みなさん、ありがとうございます。
>>121
サイト情報ありがとうございます。
プロセス文にかかれた順に処理は行われるが、その処理による信号代入が
行われるのはプロセス終了時(:=はプロセス内で代入される)ということですね。
ということは、ほとんど同時処理と等価なのでは・・・
123名無しさん@1周年:02/06/08 22:54 ID:9O5wrSZo
NECのCMOSシリーズのマクロはFF全部非同期だったと思うが。
CADでデザインしてた時同期式に変えるのが大変だった覚えが。
124123:02/06/08 22:55 ID:9O5wrSZo
スマソ、非同期→非同期リセット。
125名無しさん@1周年:02/06/09 00:49 ID:HsXeTGPb
>>122
 全然違うって。(w
 非同期でゲートを信号が伝達するイメージと、シフトレジスタ的にクロック同期で
データが伝達していくのは全然違うでしょ。
126初心者:02/06/09 08:06 ID:ASJn8iaX
>>125
いえいえ、そういう意味で言ったんじゃないです。
順次処理という言葉の意味的に考えると、process内で
a <=x;
b <= a;
と書かれていたら、a、b共にxが格納されると思っていたからです。
でも実際は違っていた。だから同時処理的ではないのかと。
127名無しさん@1周年:02/06/09 09:34 ID:099xL0Ls
>>126
 process文内の処理が、イベントごとに順次処理される
(イベントがあるまでは、次の状態に遷移しない)のと、
イベントをトリガに最後まで処理が伝搬しprocess文内の
いくつもの式に同時に影響を与えるのは違いますよね。

 要するに、式単体では無くプロセス文として見ろって
事では無いかと。
128初心者:02/06/09 10:07 ID:ASJn8iaX
>>126
すんません、後半の文の意味がわかんないす。
「イベントをトリガに最後まで処理が伝播し」の部分、よろしくです。
129初心者:02/06/09 10:07 ID:ASJn8iaX
>>127
でした。すんません。
130名無しさん@1周年:02/06/09 13:47 ID:okeA0uJ7
 process文内の式は記述順に上から下に順に処理され、これを持って
順次処理と呼んでいます。

 で、疑問の件は信号代入「<=」の事ですが信号代入の場合その行が
処理されても、すぐには代入されません。これはこの記述の仕様で、
式の評価と実際の反映が別々に行われているからです。
 process文の最後まで式を評価した後代入は最後に行われます。
131名無しさん@1周年:02/06/10 01:47 ID:Kx6ZYHzE
>>129
例ぐらいいっとけよ。礼儀知らず。
132初心者:02/06/10 22:28 ID:ozgjLkrO
>>130
ありがとうございます。
返事が遅くなり、申し訳ありませんでした。
133名無しさん@1周年:02/07/13 23:03 ID:/Fpp3O+M
TVで映画の予告編をやっていて「ロミオ+ジュリエット」とクレジットが出て
「ロミオ・アンド・ジュリエット」とセリフが入った。

プラス記号じゃ、アンドじゃなくてオアとしか読めん、と思ったのは私だけですか?
134名無しさん@1周年:02/07/13 23:15 ID:Xpvvrgj4
>>133
std_logic_arithをきちんとuseしませう
135 :02/07/14 16:07 ID:Oj+dgr9i
この場合のアンドとは、論理演算のアンドでは無いよね?
しいて言うならば、連接かな。
ってことは、
VHDLならば、 映画 <= ロミオ & ジュリエット;
Verilogならば、 assign 映画 = {ロミオ, ジュリエット};

ってな感じ?
136名無しさん@1周年:02/07/23 20:01 ID:jL/3aHEc
順序に関して俺も同じような疑問を持ってた。
順序処理っていう名前はわかりにくいよね。
処理っていうより逐次評価文だよね。

・順序処理文==逐次評価->同時代入
・同時処理文==同時評価+同時代入

を意識して教科書読まないと、文字通りに解釈すると勘違いするよ。
個人的には・・・

process内の

a<=x;
y<=a;

は、評価と代入がそれぞれ異なる時点で行われるから、
(時間tを使って明示的に書けば)

a(t) <= x(t-1);
y(t) <= a(t-1);

が実現できるわけで、一つ前と今の信号の状態を記述してるって意味で
順序処理っていうんだと無理矢理納得させてる。ホントは上から順番に評価
が行われるから順序って名前がついてるんだろうけどね。

順序、同時の名前で悩まないで

process 内部の処理、
architecture 内部の処理

っていう風に読み替えるのがいいかもしれない。順序回路と順序処理文がごちゃ
ごちゃになって丸2日悩んだことがある。

それにしても、VHDLって言語仕様としてゲゲボじゃないか?
俺、知らないだけかもしれないけどCのコンパイルオプションの
#if 〜 #endif
とか
#ifdef #endif
ってのが無いよね。if 〜 generate も同時処理文にしか効果ないし(generate
だからあたりまえか?)。
コメント文も一行にしか効果ない。アセンブラの方がずっと書きやすい。

大体、generic 文ってなんであるの? 定数をpackageで持っといて
useで取り組めば(ちょうどCの#define や const 文を書いた include
ファイル取り組むように)必要ないんじゃないか?どうも、すごく冗長
なことを書いてるような気がするし書きにくい。覚えにくい。

verilog はその点どうか知りたい。両刀使いの方長短コメントしてください。

137名無しさん@1周年:02/07/24 16:51 ID:5IGlWb9t
polarisあぼーん
VCSに置き換えるか(´Д`)
138名無しさん@1周年:02/07/25 05:23 ID:vEVo8jgH
>136
genericだと、ソースを公開しなくても済むからとか?

verilogはビット幅を把握しとかんと、コンパイラでのチェックが
無いから辛い。別途文法チェッカーを併用しないと不安。
139名無しさん@1周年:02/07/25 09:41 ID:n1y/wL2P
>ってのが無いよね。if 〜 generate も同時処理文にしか効果ないし(generate
>だからあたりまえか?)。
順序でもできるけど。??

>コメント文も一行にしか効果ない。アセンブラの方がずっと書きやすい。
アセンブラとの比較??はともかくコメントにかんしては確かにそう思う。
140名無しさん@1周年:02/07/25 12:13 ID:ajzmf2Ru
>>139
コメントについては、複数行を一気にコメントアウトするマクロやらスクリプトを
自作してます。でないと、やってられん。

アセンブラとかのソフトウエア言語との比較は意味ないぞよ >>136
141名無しさん@1周年:02/07/25 20:04 ID:gjBpeQxT
>>139
あれ?if 〜 generate ってprocess内部で書けたっけ?
と思ってやってみたらエラーになりました。書き方が悪いのかと思っていろんな
本調べてみたけど"if〜 generate は同時処理文の選択"ってなってますが?違って
たら教えてmOm

>>139,140
>アセンブラとかのソフトウエア言語との比較は意味ないぞよ
そんなことないって、記述と実動作の比較を論点にするんだと意味ないけど、
単なる表面上の書式をいってるわけだから。少なくとも"言語"であってネット
リストじゃないでしょ?なんで言語を使うか?答えはただ一つ。生産性の向上
でしょ。そもそもが、Adaベースなんだし。後発なんだから他言語(ソフトウェア言語
も含めて)の便利なところは謙虚に取り入れるのがまともだと思うのだが・・・
ただ、spiceネットでも#if 〜 #endif ぐらいはほしいと思うけどね。こっちは、
リストだけいじってると回路図との整合性がわけわからなくなるからと我慢してる。

VHDLってどうもしっくりこない。統合環境上から使ってるからあんまり直接打ち込
むことはないけどarchitectureなんて長ったらしすぎないか?どうもたくさんの人の
手を経てこねくり回された言語仕様って気がするんだけど?違うのかな?簡潔さに欠
ける気がする。そのわりに上のコンパイルオプションなんて重要な機能がプアであっ
たり、抜けてる印象がある。
VHDL命っていう人のコメントを聞きたい。

あとSystem-CやSpecCが使えるシミュレータとか論理合成ツールってもう市販されてる
のか?俺そもそもLSI屋じゃないのでmodelsim,leospec,symplifyぐらいしか知らないん
だけど。
#modelsim 5.6b、leospec 2002c、symplify 7.1proではまだ使えないよね?


142名無しさん@1周年:02/07/25 20:53 ID:ohXwb2ri
>>141
> そんなことないって、記述と実動作の比較を論点にするんだと意味ないけど、
> 単なる表面上の書式をいってるわけだから。少なくとも"言語"であってネット
> リストじゃないでしょ?なんで言語を使うか?答えはただ一つ。生産性の向上
> でしょ。

目標は高いほうがいいが、再利用性などはソフトなどとくらべると格段に落ちる。
論理合成ツールがいろいろある以上、最適なネット作成をするには、
それなりの限定された制約があるということで。

simだけで充分ってなら、現状の言語仕様が貧弱なのは分かる。
でも、それなら最初からCなりC++でやれって感じ。
回路イメージなく、HDL書かれたらたまったもんじゃない。

VHDLはまだましだけど、Verilogなんかをソフトあがりの素人に書かせると
後が大変なので、素人はガチガチのVHDLから学んで欲しいね。

あるよ。つかってないけど。
どの程度の実用性があるのかは知りたい。
143 :02/07/25 21:24 ID:W2wZqM/d
>>142
>VHDLはまだましだけど、Verilogなんかをソフトあがりの素人に書かせると
>後が大変なので、素人はガチガチのVHDLから学んで欲しいね。

言いたいことは分かる、うん。
けど、ソフト屋がVHDLで書くことになったら、絶対途中でイヤになって辞めそう。
最近VHDLで設計することになった。漏れはVerilogからはじめたから特に感じるが、
やはりRTL設計・検証を考えると、VHDLは全然だめぽ。
記述量の多さ(しかも冗長すぎる)は、マジ簡便。
signed/unsignedなんかはVHDLにあるから、演算器とかの回路設計する人に
とってはVHDLのほうがいいのかも。
(Verilog2000?とかでは、そのあたりは解消されてるけどね)
144名無しさん@1周年:02/07/25 21:45 ID:elXIeF+C
>>>139
>あれ?if 〜 generate ってprocess内部で書けたっけ?
>と思ってやってみたらエラーになりました。書き方が悪いのかと思っていろんな
>本調べてみたけど"if〜 generate は同時処理文の選択"ってなってますが?違って
>たら教えてmOm

processの外でかいてみそ。

>VHDLってどうもしっくりこない。統合環境上から使ってるからあんまり直接打ち込
>むことはないけどarchitectureなんて長ったらしすぎないか?どうもたくさんの人の
>手を経てこねくり回された言語仕様って気がするんだけど?違うのかな?簡潔さに欠
>ける気がする。そのわりに上のコンパイルオプションなんて重要な機能がプアであっ
>たり、抜けてる印象がある。
>VHDL命っていう人のコメントを聞きたい。
↑たしかにおっしゃるとおり。生立ちのせいだけど87
から93とかたいして改善してないからいまだに93って
一般的じゃないし?ベリログはシミュレータ言語?
として登場してるから、記述しやすいし2000でも↑が
おっしゃってるように記述量を減らせる工夫がもりこ
まれてるしね。


145名無しさん@1周年:02/07/26 02:01 ID:tD3OV3HK
>processの外でかいてみそ。
順序処理文はprocess内部にしかないでしょ?
process の外にあるのは同時処理文でしょ?
そこでは当然 if generate が機能するのはわかりますけど。

146名無しさん@1周年:02/07/26 02:25 ID:IUDBTBHA
>>142
#if 〜 #endif
は確かにCのプリプロセッサの機能だけど。
これを使えるようにしたからって、論理合成の支障には全くならないよ。
事実Verilog には`ifdef `endif があるじゃないの?

>ソフトあがりの素人に書かせると
電気系の教育を全く受けないでソフト屋やってる人間に書かせること自体
無理があるんじゃないか?ただ、ソフト会社でロジック設計手がけてるところ
多いんだけどね。だから、外注の彼らにちゃんと仕事やってもらうために今更
HDLになんか手を出してるんだけど・・・自分じゃもう設計はしないけど口だけ
出すってか?
147 :02/07/26 23:50 ID:QueFJR7q
>>145
VHDLの順序処理か否かっていう区分けは、processを使っているかどうか、だっけ?
clock eventな記述しているかどうか、じゃないの?
148名無しさん@1周年:02/07/27 01:51 ID:SYCSbheh
>>145
やけにいせいがいいじゃねーか!!
親切におせーてやってるのによー

ぷろせすをif generate でくくってみそと言ったつもりだが?
ひょっとしてソフト上がりか?
どのような回路をきじゅつするか
頭の中でイメージできてるんだろうな?
149 :02/07/27 02:06 ID:yrIK8aU5
clock event として・・・
Verilog は always リストに XXXedge として属性を記述しますが、
process リストに属性を書かないVHDLはそれをクロックと認識するのは
process内部でif(clk'event and clk=1)と記述してはじめてわかります
よね?
いろいろ書物調べたけど俺の頭では
順序処理文はprocess内部、
同時処理文はarchi直下
としか解釈できない。というよりそう書いてるんですけどね。
表面的な理解だけで間違ってる可能性無い訳じゃないので一度
調べていただけませんか?間違ってたら教えて。日本語の書物
やDesign-Wave誌は全て持ってるので、この本のここ読めって言
ってもらえるとありがたい。

ちなみに順序処理文と順'次'処理代入文は使い分けてるんですね。
150名無しさん@1周年:02/07/27 02:10 ID:yrIK8aU5
>>148
おまえあほか?
process そのものは同時処理文になんだよ。
process そのものは if generate でくくれるのはあたりだろうが?
151名無しさん@1周年:02/07/27 02:13 ID:yrIK8aU5
誤字があるからも一回言ってやろう
>>148
おまえあほか?
process そのものは同時処理文になるんだよ。
process そのものは if generate でくくれるのはあたりまえだろうが?
152名無しさん@1周年:02/07/27 02:18 ID:SYCSbheh
アタマカタイネー
ハードなあたまでハードウエア設計

プロセスの戦死日ティりすとにクロックイベント
とクロックのアクティブ論理を記述すれば順序回路が推定できるし、
千氏日ティりすとに入力信号すべて書けば組み合わせになるでしょ。

これが頭の中で合理的に理解できなきゃちょっときびだんご。

だいたい技術者のくせして自分で調べようとしないのは
致命的よ。
153名無しさん@1周年:02/07/27 02:25 ID:yrIK8aU5
おまえホントにわかってないね
全くわかって無くていやになるよ。それでよく金もらえてるな。
根本的な間違いは順序回路と順序処理文完全に混同してるだろ?
もいっかい教科書よみな。
今話題にしてるのは、順序回路と組み合わせ回路じゃないぞ。
154名無しさん@1周年:02/07/27 02:26 ID:SYCSbheh
>っていう風に読み替えるのがいいかもしれない。順序回路と順序処理文がごちゃ
>ごちゃになって丸2日悩んだことがある。
>ってのが無いよね。if 〜 generate も同時処理文にしか効果ないし(generate
>だからあたりまえか?)。

2日プラス今日までの日々
155名無しさん@1周年:02/07/27 02:26 ID:yrIK8aU5
>>152
さらに、
おまえオペアンの使い方もSパラメータも知らないヘナチョコロジック屋じゃな
いだろうな?
アナログがちょっとでも出てくるとしっぽ巻いて逃げるんじゃねぇだろうな
156名無しさん@1周年:02/07/27 02:31 ID:SYCSbheh
じゃ何の話題なの?
直情的ね!会社で人気者だといいね!
157名無しさん@1周年:02/07/27 02:32 ID:SYCSbheh
逃げないよ!
なんか自慢することでもあるの?
158 :02/07/27 02:37 ID:yrIK8aU5
>>156
も一回言うけど
お前、
順序処理文って何か説明してみな?
順序処理文を話題にしてるところで、これか?

>プロセスの戦死日ティりすとにクロックイベント
>とクロックのアクティブ論理を記述すれば順序回路が推定できるし、
>千氏日ティりすとに入力信号すべて書けば組み合わせになるでしょ。

順序回路と組み合わせ回路の説明して、お前がこれまでまったく混同しながら
仕事してきたこと暴露してるだけじゃねぇか。
159名無しさん@1周年:02/07/27 02:51 ID:N61v1tJP
両者ともちょっとずつおかしい?
160名無しさん@1周年:02/07/27 03:10 ID:GdacjFkJ
このスレって電子工学科出身に良くいる
教養が無く教わった手順を理解できぬままこなしているだけのくせに、
プライドだけは富士山より高い人間の体質が、
的確に現れていて楽しいな。

ちっちゃい頭で一生懸命覚えた手順でせいぜい頑張ってくれや。
161名無しさん@1周年:02/07/27 03:38 ID:ihCmbXJv
>if 〜 generate も同時処理文にしか効果ないし

同時処理文中のプロセスの中の順序処理文があるのなら
if 〜 generateも効果があるといえないだろうか?

醜い言葉尻のあらそいなのだが
162名無しさん@1周年:02/07/27 05:45 ID:XSZGo2lz
なんか盛り上がってきてるぞ…

しかし、最終的にはチップが動けば
んなこたぁ〜どうでもイイって言われてしまう罠
163名無しさん@1周年:02/07/27 08:40 ID:Zg053WTe
>>162
ゲートにすることは考えず、単に言語としての仕様で遊んでいるだけだろう。
回路を実際に作る奴はgenerateごときで、ごたごた言わない。
実際にやってみればすぐにわかるから。
164名無しさん@1周年:02/07/27 08:47 ID:zYz4nc5Q
夏になったんだな、と思う今日この頃。
しかし、議論ふっかける割に内容が素人レベルとは見ていて悲しくなる。

>>162
特に揚げ足を取るつもりではないがそれは素人の考えだよ。
偶々偶然動いているだけの腐った回路が出来ている可能性もあるから動いている
事が全てではない。 特にHDLだと余計にそう。
ある程度経験を積んだエンジニアは、こんないい加減な事は言わない。
165名無しさん@1周年:02/07/27 12:53 ID:P7XXgjd7
TTLジジイの悪臭がプンプンしてるスレはここですか
166162:02/07/27 12:55 ID:XSZGo2lz
>164
いや、確かにそうなんだが、そういう上役って多くない?
ロジック的に怪しくても、過去の品種はそれで動いている。
変えて不具合が出る場合のリスクが怖いとかって。

単に、おのれが知らないだけだろうがと、小一時間…したいところ。
167名無しさん@1周年:02/07/27 13:31 ID:udHhTqCX
>>166
いや、「触らないほうがいい」が正解だぞ。

汚い設計を直すのが本人
 →設計能力がもともとないので、根本的解決にならない。

汚い設計を直すのが他人
 →汚いソースを追いかけるよりも、新規設計した方がTATが短い。
168名無しさん@1周年:02/07/27 14:20 ID:UKlS0EWp
 HDLて〜所詮設計ツールで、言語だけを覚えても設計できないよ。
機能分担設計(どこのブロックにこの機能をやらせるかを決める設計)
とタイミング設計(データのタイミングがうまく合っているか合っていないか)
が重要よ。
169名無しさん@1周年:02/07/27 14:35 ID:Wk1espPv
>>68
その通りだよな。
だから=と<=の区別ぐらいで偉そうに煽る奴は出て行って欲しいものだ。
当人は努力してやっとこ理解したので
「=と<=の区別が出来る俺って偉い」
とか思ってるから煽ってるんだろうけどな。

まったくスレが腐るぜ。
170名無しさん@1周年:02/07/27 18:02 ID:zYz4nc5Q
>>166
非同期ばりばりで、ASICのプロセスが変わったら終わるような回路を、解析して
同期化して根本原因の根絶とかをやった実績があるから、「臭い物には蓋」
って言う逃げが嫌なだけだよ。

当然、互換性の問題が無いかはいつも不安ではあるけど、結局そう言った、
互換性が絡む「予期せぬ不具合」を解析する意味でもHDLは役立つという事ですよね。
171名無しさん@1周年:02/09/03 01:17 ID:QdsbxBGu
ソフト屋さんにHDL書かせたら、すべて順次動作になってしまつた
172名無しさん@1周年:02/09/19 01:26 ID:C0YTO/f7
wait until a='1';
上の記述が、
wait until (a'event and a='1');
見たいな動作になって困ってます。
これはVhdlの使用でしょうか?
それともシミュレータのバグでしょうか?
シミュレータはVisualVHDLです。
173名無しさん@1周年:02/09/22 01:32 ID:TtfbaiOG
174名無しさん@1周年:02/09/25 07:10 ID:DO9AZ0/p
>172
ちなみに、想定している動作はどう考えています?
175名無しさん@1周年:02/09/25 16:30 ID:RF7scaL+
VisualVHDLっていうシミュレータを知らないんですが、有名?
176名無しさん@1周年:02/09/25 18:58 ID:k3it/Uo2
>>175
Vが一つ多いぞ。(w
日エレとか読んでるとよく登場するが実際使ってると言う話は一度も聞いた事が無いな。
177名無しさん@1周年:02/09/25 20:01 ID:RKkiIvvn
>>176

>これはVhdlの使用でしょうか?
>それともシミュレータのバグでしょうか?
>シミュレータはVisualVHDLです。
178名無しさん@1周年:02/09/26 01:20 ID:biCOf2+6
>>175-176
間違えましたVisualHDLです。
>>174
wait until a='1'; に期待する動作。
まず、実際のシミュレーションでの振る舞い
 この行に達したときにa='0'で、その後a='1'に変化する場合は、変化した時点
 でこの行を抜けます。
 この行に達したときにすでにa='1'の場合は、この行を抜けて来ません。
 (a='1'のまま変化しない信号なら、ずっと止まっています)
私が期待する動作
 この行に達したときにすでにa='1'の場合は、即時この行を抜けてほしい。
179名無しさん@1周年:02/09/26 07:47 ID:NznG5c9T
>>178
waitをやめてみてはどうでしょう?
っていうか、C言語か何かのように書いてるような。

テストベンチ系の話なんだろうけど、そういうつくりはよくないと思われ
180名無しさん@1周年:02/09/26 20:05 ID:biCOf2+6
>>179
おっしゃる通りテストベンチです。
実際はwait until IrqN='0';となっていて、割り込みが来たら次の処
理を行う流れになっています。
とりあえずは
while(IrqN='1')loop
 wait for 1 ns;
end loop;
とやって対応できました。
wait untilは動作が釈然としないので今後使用しないこととしました。
181名無しさん@1周年:02/09/27 01:39 ID:JOZhgeQN
>>180
wait の使い方を誤っているかもよ。
解説本じゃなくて、IEEEの言語仕様で確認してみそ。
182名無しさん@1周年:02/09/28 07:42 ID:qfuf7pbF
>178
waitだから、aが1に変化するのを待つということで、
動作としてはあっているような気がする。

じゃ、どう書くんじゃ〜といわれたら、神降臨を祈りましょう。
その割り込み部分だけ別のプロセスで書くわけには
いかないんですよね?発想を変えて考えてみると良いかも
183名無しさん@1周年:02/09/28 11:19 ID:0p3mOERC
>>141
> あとSystem-CやSpecCが使えるシミュレータとか論理合成ツールってもう市販されてる
> のか?俺そもそもLSI屋じゃないのでmodelsim,leospec,symplifyぐらいしか知らないん
> だけど。
> #modelsim 5.6b、leospec 2002c、symplify 7.1proではまだ使えないよね?

Symplifyは知らないけど、ModelSimとLeonardoSpectrumはSystem-CやSpecCは
使えないはず。Cから直接論理合成できるツールは無いと思う。一度動作合成して
RTLを出力させて、それから論理合成することになるんじゃないかな?
しかし、ModelSimなら、PLI(だっけ?)接続でなんとかなるかも。
VisualEliteっていうグラフィカルエントリーツールはSystem-CかSpecCかは
知らないけど、Cで書いたのをシミュレーション可能なはず。ただし、それから
RTLを出すのは無理。

>>175
VisualHDLはシミュレータじゃないよ。グラフィカルエントリーツール。
お絵かきをするとHDLを吐き出してくれるツールだよ。逆に、HDLを読ませて
絵を作らせることも可能なので、他人のHDLをもらってきて、絵を出力させて
仕様を理解するのにも使用可能。ブロック図, フローチャート, ステートマシンが
出てくるので、なかなか良い。
ちなみに、VisualHDLはVHDL版とVerilog版があったけど、今は統合して両言語
対応になってVisualEliteに改名してる。
RTLのVHDLをVerilogにコンバートしたり、その逆もできる。
VisualHDLの標準のVHDLシミュレータは遅いから、BorlandのC/C++でコンパイル
するようにした方がいいと思う。かなり速くなるよ。それでもModelSimにはかなわない
ので、ModelSimとの連携が最強。
184名無しさん@1周年:02/09/28 13:48 ID:AxgoCSkp
>>183
>しかし、ModelSimなら、PLI(だっけ?)接続でなんとかなるかも。

たぶん、なんとかならないっぽそう。
PLIまたはFLIを使っても、純粋なCじゃないから、コードの切り出しが必要かもね。
あんまり詳しくないんだけど、いわゆるHDLに比べて抽象度が高いSystemVerilog(Superlogの生まれ変わりだっけ?)
とかだったらPLIなんかを使わなくても、CモデルとSystemVerilogを混在させたシミュレーションが
できるんじゃなかったかな?
ただ、それだとシミュレータにModelSimは使えなさそうだし、回路に落ちる部分を結局CじゃなくってHW用言語で
記述する必要があったりと、まだまだ問題アリのようだけど。

演算器やエンコ/デコ周りは早く使われるかもしれんけど、個人的には、Cを動作合成して
HWを設計するにはあと2年くらいはかかるんじゃないかな、と予想。
関数や処理を並列動作させるような、なんらかの制約の元でCを記述しないとダメそうなんで。
185名無しさん@1周年:02/09/28 14:42 ID:7v+V3aMt
PLIの為にわざわざVCインストールした気が。(w
かなり前フロートの演算器が入ったASICのSIMを手伝った事あるんだけど
演算器がどう論理合成されるんだろ?って楽しみにしてたら、メーカー提供の
ライブラリをネットでつなげただけだったからがっかりした記憶があるな。
今はどうなってるんだろ?論理合成できるのかしら?
186名無しさん@1周年:02/09/28 18:05 ID:AxgoCSkp
DesignCompilerだと、金持ってる企業なんかはDesignWareを買ってるから
適当な演算器に落ちてるかもね。
多段の演算器はやったこと無いからわかんらんけど、Cで書くような感じでHDL書くんじゃなくって
ある程度丁寧にHDL書かないと性能がでないんじゃないかな。
1サイクル間のゲート段数とレイテンシを意識して、何度もHDL<->合成を繰り返すようなこと。
187名無しさん@1周年:02/09/29 03:24 ID:vGSOzxxZ
>>186
なんか昔と変わらないね。って言うか細かく中身を書く必要は
未だにあるって事か。
まあ、300[MHz]でレーテンシ4とかで動く演算器を書くのは
もう嫌だな。(苦藁
188名無しさん@1周年:02/09/29 13:46 ID:SSnN2JQV

アプリケーションの理論(アプリソフトの理論って意味じゃないよ)わかっ
てるわけでも、
システム設計できるわけでも、
Win の売り物ソフトかけるわけでもないHDL技術屋が、それを嫌がってたら
ほかに何ができるの?
189名無しさん@1周年:02/09/29 14:20 ID:vGSOzxxZ
>>188
HDLだけ書いてSIMやってたら仕事した気になれる会社って天国かもな。
って言うかそんな奴はこれから大変だぞ。
190名無しさん@1周年:02/09/29 20:50 ID:6pFO1zwc
>特に揚げ足を取るつもりではないがそれは素人の考えだよ。
>偶々偶然動いているだけの腐った回路が出来ている可能性もあるから動いている
>事が全てではない。 特にHDLだと余計にそう

大昔のschematic時代のなんかのほうがはるかにヒドいと思うけど。
HDL設計ではEDA側でヒドいものの大半は弾いてくれるので。。
191名無しさん@1周年:02/09/29 20:55 ID:6pFO1zwc
>DesignCompilerだと、金持ってる企業なんかはDesignWareを買ってるから
>適当な演算器に落ちてるかもね。
>多段の演算器はやったこと無いからわかんらんけど、Cで書くような感じでHDL書くんじゃなくって
>ある程度丁寧にHDL書かないと性能がでないんじゃないかな。

丁寧に書けば(EDA側が論理圧縮の努力をしなくなって)余計
性能が出なくなるほうが多いと思うけど。

192名無しさん@1周年:02/09/29 22:04 ID:EtK4JL02
>>191
それは、丁寧に書いていないってこと。
前に組込みLSIのプロジェクトにいたころ、ツール任せだと性能が全然出なくって
Cellライブラリとにらめっこして机上計算して合成を繰り返して、ガリガリ丁寧にHDL書いてたよ。
ま、はっきり言って、ネットリストを手書きしている状態(ゲート記述して dont_touch指定)だったけどね。
HDLと言えど、書き方はいろいろ。
193名無しさん@1周年:02/09/29 22:39 ID:h4kHX7Nv
どう圧縮してくれることを期待しているのか、それをわからずにツールに任せるのはいかがかと。

ゲートのイメージのないHDL設計者の書くHDLにロクなものはない。
194名無しさん@1周年:02/09/30 00:00 ID:xNhY2taA
>>190
>>191
得意になって書く程の事か?しかも死ぬ程前の書き込みに・・・。
大した事してないのがばれるからやめとけ。(w
195名無しさん@1周年:02/09/30 00:17 ID:Bt3nnE90
HDLスレがあると、いつもなんで190みたいな奴が出てくるんだ?
DCやらBGには、おだてて豚でも木に登らせてしまう
未知の力があるということなのか?
196名無しさん@1周年:02/09/30 00:48 ID:oVk1DcTn
>>193
> ゲートのイメージのないHDL設計者の書くHDLにロクなものはない。

これ、まさにそうなんだけど、CtoRTLな設計手法になると逆に文句・薀蓄ばっかり言って
仕事にならない気もするんだよね。
そのへんは、時間と回路の質のトレードオフで、割り切って設計できるような人じゃないと無理っぽそう。
あとFPGAなんかだと関係ないかもしれないけど、CtoRTLで設計した場合、テスト容易化設計は
どうするんだろう?
率が出ない回路は、結構RTLをいじくることも必要だと思うんだけどね。
197名無しさん@1周年:02/09/30 02:31 ID:6XPOHbTA
>それは、丁寧に書いていないってこと。
>前に組込みLSIのプロジェクトにいたころ、ツール任せだと性能が全然出なくって
>ellライブラリとにらめっこして机上計算して合成を繰り返して、ガリガリ丁寧にHDL書いてたよ。
>ま、はっきり言って、ネットリストを手書きしている状態(ゲート記述して dont_touch指定)だったけどね

よほどヒドいツールなのか、記述が悪い、オプション設定が悪い、などツールを
使いこなせていないだけだと思うけど。(あるいはツールのバグか)
そもそも論理圧縮のような単純計算は計算機にはかなわんよ。特定の計算で
なんらかの間引きテクニックでも使うてんなりゃ別だが。

>どう圧縮してくれることを期待しているのか、それをわからず
>にツールに任せるのはいかがかと。

なに言ってんだ? 大雑把に論理圧縮に期待するのは
時間と面積の節約、それらのトレードオフ。記述上の構造の
保持を論理圧縮に期待したら論理圧縮にならないと思うが。

>あとFPGAなんかだと関係ないかもしれないけど、CtoRTLで
>設計した場合、テスト容易化設計はどうするんだろう?

CtoRTLなら今のEDAじゃ完全同期設計でしょ。 なら率が
出ないことはないと思うけど。
198名無しさん@1周年:02/09/30 08:25 ID:xCUgovPX
>>197
素人さん、ごくろう。
199名無しさん@1周年:02/09/30 15:42 ID:5IsImy3F
>>197
>よほどヒドいツールなのか、記述が悪い、オプション設定が悪い、などツールを

記述が悪い=丁寧に書いてないってことなんだが、自分で書いてて気がつかなかったか?

>そもそも論理圧縮のような単純計算は計算機にはかなわんよ。

データパス系の回路を作ったことないだろ?
200名無しさん@1周年:02/09/30 16:34 ID:T6Q+DmQZ
>>197
> >あとFPGAなんかだと関係ないかもしれないけど、CtoRTLで
> >設計した場合、テスト容易化設計はどうするんだろう?
>
> CtoRTLなら今のEDAじゃ完全同期設計でしょ。 なら率が
> 出ないことはないと思うけど。

この辺りが痛々しいなぁ。
完全同期であって、回路規模の制約がないならスキャン入れまくってテストはできるが。

197みたいなヤシの会社とは仕事したくないので、社名を教えてちょ。
201名無しさん@1周年:02/09/30 19:40 ID:JaUmRcok
教科書読んで解った気になってそのまま就職できてしまった感じかな。
その程度で許される職場って事だろうからある意味羨ましい。

外に出た時苦労するだろうが。
202名無しさん@1周年:02/09/30 20:13 ID:VKPIbx5z
ツールベンダーって実際の設計現場を知らずに理想的なクリティカルネットを対象に
ツールデバッグするので実際にはうまくいかないこともあるかもよ。

ベンダーでサポートしている人って、ここにいる?
203197:02/09/30 21:14 ID:8KNk23mz
>>199
>>そもそも論理圧縮のような単純計算は計算機にはかなわんよ。
>データパス系の回路を作ったことないだろ?

いまだにゲート設計か。 ご苦労なこった。まあ、敗戦遅延に足
巻かれないようにがんばってくれや。

>>200
>完全同期であって、回路規模の制約がないならスキャン入れまくってテストはできるが。

おまえんとこは完全同期設計まで手作業でDFT、で率上げるってか。
ご苦労なこった。

>197みたいなヤシの会社とは仕事したくないので、社名を教えてちょ。

ここに出現する連中なら(しない連中でも)誰でも知ってる会社だと
は思うが。まあ、おたがいライバルどおし、がんばりましょーや。
204197:02/09/30 21:16 ID:8KNk23mz
>>よほどヒドいツールなのか、記述が悪い、オプション設定が悪い、などツールを
>記述が悪い=丁寧に書いてないってことなんだが、自分で書いてて気がつかなかったか?

良い記述==丁寧? もはや絶句もんだよ。
205あぼーん:あぼーん
あぼーん
206名無しさん@1周年:02/09/30 21:38 ID:WdMgmlka
あーぁ、人材派遣か下請けか知らんが、中小企業は必死だな。
発注してやるから、仕様書どおりに動くもの納期守って収め
てくれや。
207名無しさん@1周年:02/09/30 23:15 ID:xCUgovPX
>>197 が痛いところを突かれて逆ギレの模様。
208名無しさん@1周年:02/10/01 00:09 ID:pgsYLpQ9
>>184
VCSは6.0.1からDirectCと言われる技術が導入されてPLIのoverhead無しに
Cのプログラムを直接リンクできるようになった.

>>200
スキャン入れまくるってあんた,もはや古スキャンは常識だと思うが

209名無しさん@1周年:02/10/01 00:22 ID:tKLYWNz2
ばうんだりーすきゃんとかじぇいたぐってあたりまえとおもっていたのだがなぁ
210184:02/10/01 00:37 ID:mZSEDpPw
>>184
PLIじゃなんともならんかぁ〜。
時間の概念があるSystem-CやSpecCとANSI Cじゃ、確かに違うね。
コードの切り出しなんかやってたら、何のためにわざわざSystem-CやSpecCで
書いたか分かんなくなってしまう。

俺も、Cの動作合成から論理合成というフローが普及するには、もうしばらく
時間が必要だと思う。やはり、アルゴリズムに過ぎないCを(高品位な)RTLに
コンバートするのは大変だと思う。
抽象度が低いCのモデルを書くなら、最初からRTLを書きたくなるだろうし。
抽象度が低いCモデルじゃシミュレーションのスピードも上がらないし。


>>197
>そもそも論理圧縮のような単純計算は計算機にはかなわんよ。

これはそう思う。複数のアルゴリズムを実行して最良のものを採用したりして
くれるし。

>なに言ってんだ? 大雑把に論理圧縮に期待するのは
>時間と面積の節約、それらのトレードオフ。

納得できないこともないけど、最初からツールの論理圧縮に期待するのは邪道かも。
合成時の制約が緩いなら(タイミングが)問題になることは少ないと思うけど、厳しい
パスが存在する時にはツールの論理圧縮まかせではキツいと思う。
211210:02/10/01 00:39 ID:mZSEDpPw
すみません、↑の名前間違えた。
俺は>>183です。。。
212HDL初心者からの質問です。:02/10/01 03:16 ID:5RbmlxWn
今,VerilogでALUを設計しているのですが,assing文の所で,つまずいています。
set on less than命令のassing文の記述の方法ですが、

((alu_cont==slt)&&({read_data[31],read_data[31]}==2'b10))? 1:32’bx;

と,書いてみました。出力ビットは,32ビットに設定しているのですが,
この場合,真の時は,出力はどうなるのでしょうか?
1ビットで(1 or 0)と出力されるのですか?
間違っていれば、どのように書けばよいのか教えてください。
宜しくお願いします。
213名無しさん@1周年:02/10/01 12:35 ID:sd7cEaGS
>>212

その記述は真にはならないから心配しなくてもいいよ。(w)
214あぼーん:あぼーん
あぼーん
215HDL初心者からの質問です。:02/10/01 16:39 ID:PfPYTuRO
>>213
返答、ありがとうございます。
自分なりALUのassing文を書いてみましたが、やはり、コンパイルできません。
どこが間違っているのでしょうか? 以下に、載せてみますので・・・・
お手数ですが、どなたか、間違いを指摘してくださる方、間違いを教えてください。お願いします。

parameter[2:0] and= 3’b000,
or= 3’b001,
add= 3’b010,
sub= 3’b110,
slt= 3’b111,

assign alu_out=(alu_cont==and)?(read_data1 & read_data3):
(alu_cont==or)?(read_data1|read_data3):
(alu_cont==add)?(read_data1+read_data3):
(alu_cont==sub)?(read_data1−read_data3):
((alu_cont==slt)&&({read_data[31],read_data[31]}==2’b00)&&(read_data1 <= read_data3))? 1:
((alu_cont==slt)&&({read_data[31],read_data[31]}==2’b00)&&(read_data1 > read_data3))? 0:
((alu_cont==slt)&&({read_data[31],read_data[31]}==2’b11)&&(read_data1 <= read_data3))? 0:
((alu_cont==slt)&&({read_data[31],read_data[31]}==2’b00)&&(read_data1 > read_data3))? 1:
((alu_cont==slt)&&({read_data[31],read_data[31]}==2’b01))? 0:
((alu_cont==slt)&&({read_data[31],read_data[31]}==2’b10)? 1:
32’bx;
assign zero = (read_data1==read_data3)? 1:0;



216名無しさん@1周年:02/10/01 17:51 ID:gEkm11Nk
>>215
コンパイルエラーログを書いてよ
217名無しさん@1周年:02/10/01 20:12 ID:v5UzWefO
>215
case文で書けよ
読みにくくてしょうがない
218名無しさん@1周年:02/10/01 20:41 ID:p07XBhBe
andとorって、禁則文字じゃない?
219名無しさん@1周年:02/10/01 20:47 ID:p07XBhBe
ひらすら、read_data[31]同士を連接してビット演算しているようなんだけど。
それなら2'b01と2'b10はありえないんじゃない?
(それとも、成り立たないことを承知の上で、ただ単に全ての条件を明記しているだけなのかな)
220名無しさん@1周年:02/10/01 21:08 ID:v5UzWefO
>>215
禁則文字っていうか予約語だよな
221名無しさん@1周年:02/10/01 22:37 ID:p07XBhBe
あ、そうそう。
確か基本的なプリミティブが用意されてるおかげで、ゲート記述できるはずだよね。
222名無しさん@1周年:02/10/01 23:09 ID:rocdCJbl
まじレス付けてるおまいら、やさしいな。

いいかげんネタだと気づけよ。
223名無しさん@1周年:02/10/02 00:03 ID:iFZk1/dw
>>222
そんなこと書いて、わざわざ教えてあげるなんて、おまいこそ可愛げあるな。

コード見ただけじゃ、僕わからん厨なお前は来るな、ボケッ
224名無しさん@1周年:02/10/02 08:35 ID:1fXRH1oV
>>223
逆切れ見苦しい

っていうかそんなことでageるなよ

初心者かな?
225名無しさん@1周年:02/10/02 08:37 ID:1fXRH1oV
>>217
プライオリティデコードしたいんじゃないの?
226名無しさん@1周年:02/10/02 09:29 ID:LOTxI6Gc
>>225
それを言うならエンコードでは?
227HDL初心者からの質問です。:02/10/03 17:56 ID:QYkLi5Gp
top module(テストベンチ)で、回路moduleを、呼び出す時の書き方って、

ex)
[file] [file] (a,b,c);
って、書けばいいんですよね? 間違ってるのかな〜〜〜??

どこかに、書き方が分かりやすく載っているHPありませんか??
228名無しさん@1周年:02/10/03 18:38 ID:Y27BHPZE
>>227
それで合ってるよ。

ところで君は何年生ですか?
229名無しさん@1周年:02/10/04 01:11 ID:jvCHX08Z
>>227

module testbench();

wire a, b, z;
block_a instance_a(a, b, z);
block_b instance_b(z, a, b);

endmodule

ファイル名ではない。
最初は、モジュール宣言したときの名前を書く。
2番目は、適当でいい。

ttp://member.nifty.ne.jp/kumineko/verilog/index.htm
[構造記述]の章でも読んでろ、ボゲッ
230名無しさん@1周年:02/10/05 13:58 ID:Ruk26KeB
もうVHDLいやボ・・・
231名無しさん@1周年:02/10/09 23:08 ID:J50hk/UU
FPGA Advantage って日本とアメリカでそれぞれいくらするの?
安かったら直接輸入したいんだけどね
232名無しさん@1周年:02/10/10 02:02 ID:HXCgxNlH
>>231
値段は分からないけど、直接輸入しようとしたら日本法人を紹介されたりしないかな?
あと、日本法人から買った方がサポート面で安心だと思う。
233名無しさん@1周年:02/10/10 22:25 ID:BmCNRIwv
verilog-HDL、VHDLはどこで入手すればいいのですか?
フリーですか?
234名無しさん@1周年:02/10/10 23:02 ID:uUMuPTF3
>>233

http://www.synopsys.com/corporate/locations/japan.html

ここに問い合わせて値段を聞いてみれ!
VerilogもVHDLも売ってくれるぞ。
235名無しさん@1周年:02/10/11 01:25 ID:8CTWS6If
>>233
逆に聞きたい。
日本語はどこで入手すればいいのですか?フリーですか?
英語はどこで入手すればいいのですか?フリーですか?
韓国語はどこで入手すればいいニダ?幾ら払ってくれるニダ?
236名無しさん@1周年:02/10/11 01:42 ID:bmty+i3D
みんなVerilogとVHDLどっちが好きよ。
俺Verilog.
理由は今月号のデザインウェーブの特集に書いてた理由ほとんどそのまま。
237名無しさん@1周年:02/10/11 02:47 ID:KRY3oP4Y
ABEL
238名無しさん@1周年:02/10/11 05:02 ID:Vn83lGrK
>>236
VHDL

回路的に考えると信号がどの様に変化するか定義する方が自然。
後、どちらも使ってみて思ったのがこちらの意図しない回路が生成
されている可能性は、Verilogの方が高かった気もするけどこれは
単に慣れの問題かな。
しかし、SIMの事を考えるとVerilogの方が自由度は高いね。
239名無しさん@1周年:02/10/11 08:47 ID:LgpSLb/r
>>238
同意見です

自由度が高いVerilogは諸刃の剣ですな。
240名無しさん@1周年:02/10/11 22:41 ID:+Xu/jD35
>>233-235
>>233
Verilogシミュレータだけなら、無償配布されてるFPGA用ツールについて
いるのを使えばタダ。雑誌付録を毎月チェックするか、待てなければFPGA
メーカーのHPからDL.




241名無しさん@1周年:02/10/11 23:55 ID:ttjv6MWU
まぁ、Verilogだな。
VHDLは記述量が多いし、宣言が冗長だし、大文字小文字の区別が無いっていうのは
致命的だと思うんだが。
ModelSimだとWaveWindowで信号名が小文字表記されるし、NC-Simのコンパイラは
大文字で出力するし。
意図しない回路っていうのは、記述が悪いだけで、単なる慣れだと思うな。
あと、ビヘイビア記述がしやすいからテストベンチも作りやすいしね。
242名無しさん@1周年:02/10/12 00:03 ID:sYeKwF++
漏れはどっちも変わらんよ。
VerilogだけじゃなくてVHDLもタダだし、記述量は毎回毎回1文字ずつ打つわけじゃなくて
カット&ペーストするからほとんど気にならないな。
243名無しさん@1周年:02/10/12 00:59 ID:uFufYM0q
>>241
どうだろな?Verilogで解りやすい記述って言うか確実な
記述をした場合、限りなくVHDL風になるような気がするんだが。

ただ、今やVHDLが主流で無くなってるのは事実かもな。
漏れ的には納得いかんが。
244名無しさん@1周年:02/10/12 01:23 ID:2Nrjc4+D
>>243
VHDL風っていうのがわからん(w
どちらもHDLでRTL書くってことは、大体似たようなもんだろ。
そこでの記述上の制限や規約が多いVHDLがオレは嫌いなだけだよん。
あと、ゲートに落ちたときのイメージが無い人は、reg/wire宣言の使い分けに苦労して、
Verilogは使いにくいんじゃない?(そんなことも無いか)
245名無しさん@1周年:02/10/12 02:09 ID:s58II8a2
使い分けっていうよりダブル宣言がちょっと納得いかない。
246名無しさん@1周年:02/10/12 02:45 ID:s58II8a2
>>VerilogだけじゃなくてVHDLもタダだし
クラックばっかしてちゃダメダメ
247名無しさん@1周年:02/10/12 03:03 ID:SmWKP+XM
>>244
reg、wire・・・非常にスマートじゃない気がするのは漏れだけか?
信号の変化えを回路の動作とする方がやはり自然だね。
248名無しさん@1周年:02/10/12 03:04 ID:SmWKP+XM
もう一つ書くと制限が多いからこそバグを作り込む可能性が
低くなるとも言えると思うが。
249名無しさん@1周年:02/10/12 03:26 ID:m3cuT+eI
惚れてしまえば痘痕も靨ってね、こういう百代言をなんぼ続けても不毛の堂々巡りでしかない。
250名無しさん@1周年:02/10/12 03:36 ID:uFufYM0q
>>249
それ言ったら何にもネタにならんだろ。
空気読めよ。
251名無しさん@1周年:02/10/12 03:38 ID:s58II8a2
Adaもやっぱりこうなんかな?
俺が知ってるプログラム言語と比較すると、VHDLってしこたま書きにくいし。
とんでもなく記述量が多いよ。これで仕事しなきゃならないとしたら切れそう・・・
Veriの方がまし。ところでleonardo `ifndef は未だ通らないね。
252名無しさん@1周年:02/10/12 09:16 ID:2Dh7G0Qo
貴様ら、Verilog2001は使ってますか?
Verilog記述の歯痒かったところが色々と改善されてるんですが。
253名無しさん@1周年:02/10/13 01:14 ID:Jv69HzlR
>>251
プログラム言語とHDLを同じように扱うのはマズくない?
プログラム言語はアルゴリズムを書く言語で、HDLはアルゴリズムを具体化した回路動作を書く言語。
Verilogはシミュレーション言語って感じでプログラム言語に近いけど、VHDLはバリバリの回路設計用言語。
VHDLは曖昧さを除去した分、記述量が多めだね。バグが入り込みにくいのが良い。
Verilogは曖昧さが多分にあるけど、書きやすいね。

Leonardoの件だけど、'defineを書き足してやっても通らない?
会社に行けばLeonardoは使えるけど、最近忙しいので試してみる時間が無い。
'ifdefとかってシミュレーション用の(遅延とかの)記述じゃないの?
回路の動作を書くところにそんな記述はしないと思うんだけど。
まぁ、'ifdefとかは無視するべきだとは思うけど、そういうのを書いたファイルを読み込ませてやるのもどうかと。

ところで、Verilogの$readmemhって、VHDLでは同書くか分かる人いますか?
254名無しさん@1周年:02/10/13 13:46 ID:yKXxkV7j
>>253
手順を記述してるか、ロジック回路+タイミングを記述してるかの違いで、
Languageであることに違いはない。HDL自体、既存のプログラム言語を
言語仕様の礎にしてる。本来スケマ入力すればいいところをなんのために
HDL使うか考えれば、見習うべきところは見習う必要があるよ。

>Leonardoの件だけど、'defineを書き足してやっても通らない?
そういう問題じゃなくて、modelsim はVerilog2000に対応してるが
Leonardoは2000対応じゃないから`ifndef は通らない。Leonardo
使うときは `ifdef,`define組み合わせて相当のものを作らなきゃ
いけない。定数のインクルードファイルを2度読みしないようにする
ためには多少工夫しなきゃいけない。というより、

>'ifdefとかってシミュレーション用の(遅延とかの)記述じゃないの?
>回路の動作を書くところにそんな記述はしないと思うんだけど。
>まぁ、'ifdefとかは無視するべきだとは思うけど、そういうのを書いたファイルを読み込ませてやるのもどうかと。

これ見るだけで、すごく非効率的なファイル作ってそうだね。
まともなプログラム言語すら書いたことないんじゃないかね?
255名無しさん@1周年:02/10/13 13:56 ID:yKXxkV7j
>定数のインクルードファイルを2度読みしないようにする
>ためには多少工夫しなきゃいけない。
これが `ifndef と何の関係があるかわかるかい?
256名無しさん@1周年:02/10/13 16:49 ID:H7PiapKX
`defineとか`ifdefとか使うなよ
257名無しさん@1周年:02/10/13 17:52 ID:yKXxkV7j
>>256
アフォ
258253:02/10/13 18:16 ID:e9uNHCY8
>>255
>これが `ifndef と何の関係があるかわかるかい?

大丈夫だ。
AがインクルードされていなかったらBをインクルードするとかだろ?
ポートのビット幅を変数にしておいて、その値は別のファイルに書いておくとか。

>これ見るだけで、すごく非効率的なファイル作ってそうだね。

それはそうかも。
形が決まったモジュールでビット幅が違うだけのものでも全部1ファイル1モジュールだ。
(こういうモジュールは自動生成するプログラムを準備しておけば良い。)
259名無しさん@1周年:02/10/13 21:51 ID:r7A67Wl3
ポートのビット幅可変なら、俺ならparameter使うなぁ
`defineはスコープがないからchipレベルで破綻することがある。
`undefとか使い出すと鬱
260253:02/10/13 22:03 ID:e9uNHCY8
>>259
parameter!それだ!
parameterはいっぱい使うかも。
VHDLのvaliable(だったと思う)と混乱して書けなかった。
parameter思い出して、なんかスッキリした。
261名無しさん@1周年:02/10/14 01:10 ID:IpxMSbyN
parameterだったら、VHDLはvariableというよりconstantのほうが近いと思うんだけど。
262名無しさん@1周年:02/10/14 09:46 ID:dJ/7j8ap
>>259
>`defineはスコープがないからchipレベルで破綻することがある。

グローバルに使っていいところ、グローバルだから使うことに意味ある部分で
使うんだよ。仕様書読んでると必ず遭遇するはずだ。ディジタル・フォーマット
のフレーム長とかね。こんなのをモジュール内部でいちいちparameterで定義す
る意味ないだろ。
263253:02/10/14 15:32 ID:NozeqzbX
>>261
そっか、まだまだ俺の理解が甘いみたい。
言われてみれば納得なんだけどなぁ。constantも知っていても出てこないようでは。。。
264名無しさん@1周年:02/10/14 22:37 ID:82t67daI
>>262
>グローバルに使っていいところ、グローバルだから使うことに意味ある部分で
>使うんだよ。

機能ブロックのreusabilityを考えると、本当にグローバルで意味のある`defineなんて、
DEBUGとかLOGGING_LEVELとかぐらいしか思いつかない。

> 仕様書読んでると必ず遭遇するはずだ。ディジタル・フォーマット
>のフレーム長とかね。こんなのをモジュール内部でいちいちparameterで定義す
>る意味ないだろ。

俺はその場合、parameter定義したファイルをモジュール内部でインクルードする。
あんまりスマートではないけどね。

もっとプログラムっぽくやるなら、
module HogeFormat();
parameter FRAME_LENGTH = 1024;
  :
endmodule
ってフォーマットのみを定義するモジュールを造って HogeFormat.FRAME_LENGTH
として参照すると、某言語風になるけどEDAツールがついてこれなそう。
265名無しさん@1周年:02/10/14 23:47 ID:tZkawAOi
学部3年ですが、verilogやSPICE、レイアウト等集積回路設計で就職できる企業って
選り好みできますか?
玉数が少なそうな気がするんですが。研究室選びで戸惑っています…。
266名無しさん@1周年:02/10/15 01:23 ID:OcD+rWqd
>>264
ある記述部分をenable/disableにしたい場合、ifdefとdefine
つかわにゃ実現できないだろう?いちいち/* */ 書いたり、消したりするのか?
VHDL みたいに -- を行ごとにべたべた書いたり消したりしたいか?
こんなのはハードウェア言語かプログラム言語か全く関係なく当然言語使用として
実現されてなきゃいけない機能だよ.

>defineはスコープがないからchipレベルで破綻することがある。

こんなのは2重定義してた場合ちゃんと合成時やSim コンパイル時にWarningがでるじゃないか。
267259==264:02/10/15 05:03 ID:KZG2I53g
>>266
誤解しないでほしいんだけど俺は`define不要派ではなく使用消極派だよ。
# っていうか >>256 出てこーい。

>こんなのは2重定義してた場合ちゃんと合成時やSim コンパイル時にWarningがでるじゃないか。
たとえばA社で買ってきたIPとB社で買ってきたIPが`define使ってて名前衝突してたら困るよね?
C言語でも#defineの乱用が問題でC++でconstの拡張をして対応してる。
それでも、Cの場合#defineの有効範囲はコンパイル単位に限られるけど
Verilogの`defineの場合*.v読み込む順番に依存して、チップ全体に影響及ぼすし
さらに邪悪だと思う
もしparameterが使えるならそっちを使うし、
Verilog2001のconfigurationやgenerateで解決できるんなら検討すべきと思う。

>こんなのはハードウェア言語かプログラム言語か全く関係なく当然言語使用として
>実現されてなきゃいけない機能だよ.
たしかに条件付コンパイルはシミュレーター・コンパイラ依存部分を切り分けしたりと、
泥臭い作業のために今のところ必要だとは思うけど、言語として必須だとは思わない。
Javaとかはないし。
268理学部物理:02/10/15 13:44 ID:exHzWcjQ
電子工学や電気工学の人って講義でVHDLやverilog-HDLを習っているのですか?
電気・電子系出身なら、ほとんどの人がHDLを使えるのですか?
269あぼーん:あぼーん
あぼーん
270名無しさん@1周年:02/10/15 20:41 ID:wMD5iyJC
>>265
>>268
HDLなんてWSいじれる素養があれば3ヶ月でマスターできる。
学校ではもっと基礎的なことに力を入れておいたほうがいいよ。
271名無しさん@1周年:02/10/16 21:16 ID:ZctUlSQy
>>270
そうそう、HDL を書くために職業を選ぶなんて本末転倒だよ。
一つの設計手法にしかすぎないよ。HDL を自動生成してくれる
状態遷移ツールなんてのもあるし。
学校では専門分野の勉強に精出してくれ。
HDL勉強するのは会社に入ってからでもぜーんぜん遅くないよ。
272名無しさん@1周年:02/10/17 14:06 ID:msT2OUWP
HDLは回路設計の手段にすぎない。
HDLのマスターと設計技術のマスターは別物。
設計技術のマスターは一朝一夕にはいかない。
273名無しさん@1周年:02/10/18 01:25 ID:KWZv6dys
顧客要求を、詳細な仕様へ展開できるヤシのほうが重宝される。
ってことは、基礎的な回路方式にはじまり、学会などで取り上げられている
ネタを知識として身についてくんなまし
274名無しさん@1周年:02/10/18 07:04 ID:c1fECD0H
>>273 禿同

270の様に基礎基礎とお題目を唱える奴がいるが、
基礎だけでは差別化は出来ないんだよ。世の中
どれだけ応用力があるかということが問われる。
だから、HDLを勉強するんじゃなくって、HDLで
実現すべきアプリケーションがどのようになっているか
をケーススタディを含めて充分勉強しておくべき。
その中でHDLは勝手に身に付いて行くだろ。

その上で、自分で実際に動くものを作るというのが大切。
動くものはいい加減な理解では出来ないから、作った
ものが動いたという感動だけではなく、動かすための
緻密な思考が養えるぞ。
(これも教科書の例題程度じゃ役に立たない。もっと
大規模な設計が必要なものに取り組むべし)
275名無しさん@1周年:02/10/18 17:46 ID:LBlq5QQ7
でも結局は応用は基礎の積み重ねだ罠。
どちらかと言えば、どう応用して良いか解るだけの知識と
経験が必要と思うが。
アルゴリズムを知っているなら同時に実装方法も解って
ないと使い物にならないって事だし。

っていってる事は余り変わらんか。(w
276名無しさん@1周年:02/10/18 19:07 ID:fMhBFkdo
>>274
いいかげんでも動くものが出来るから、
HDL使いはバカにされるんだけど。。。
277名無しさん@1周年:02/10/18 23:04 ID:KWZv6dys
>>276
動くって何? ファンクション(機能レベル)シミュレーション上での話?
んなものは、動くうちに入らないよん。
とはいうものの、HDLの場合は昔に比べて設計のハードルが低くなったのは
確かなはずだけどね。
でも、やっぱゲートに落ちたあとでチップ全体をソフトが動かして何ぼの世界っしょ。
シミュレーションだと季節が変わっちゃうってんで、ムニャムニャ
278256:02/10/20 10:28 ID:4YH4KlyT
HDL使いがバカにされる環境ってなんかDQNな香りがするな
279名無しさん@1周年:02/10/20 16:29 ID:VGpUF3de
>>278
動けば良いって考えの腐った回路を生成する奴は
馬鹿にされてしかるべきだと思うがな。(w
HDLも単に使えるだけって奴がもてはやされる会社も
あるから世の中解らんよ。
280名無しさん@1周年:02/10/21 07:03 ID:9i7OrjTe
HDLスレがたつと必ず「HDLは手段にすぎない。設計でもっと大事なことは〜だっ」って話になるのね。
けどHDLやそれを扱うEDA自体を研究するのも大切だと思う。

日本のメーカーだとツール屋よりは回路設計屋(また、回路屋よりはデバイス屋)が偉いみたいな
空気があって、より物理的な"モノ"に近い工程を神聖視する。けど本来技術に貴賎はないはず。

HDL自体にだって、システム記述、形式機能記述などチャレンジングな話題はいろいろある。
アメリカだったら、そういった技術がアカデミックな所で研究されたりベンチャーが立ち上がって
素早く製品に応用されていくけど、それが日本に伝わるのはSynopsysとかCadenceとかが
キャッチアップしたあと、陳腐化した技術になってからになっちゃう。
281名無しさん@1周年:02/10/21 14:42 ID:CCqgrvu0
>けどHDLやそれを扱うEDA自体を研究するのも大切だと思う。

まことにごもっともだけど、日本の大学ではロクな研究してないね。自分で物を
作ってないから、実際の役に立たないピントのずれた話とか、おもちゃみたいな
物しか作れないような話が大半。全部だとは言わないけどね。

といって、メーカーだと今度はツールなんか研究してもどうせSynopsysが標準に
なってしまうからというんで、この不景気ではさらに腰が引けてしまう。
物作る設計屋が自分でEDAも研究するか、それが無理なら設計屋とツール屋が
密接に連携する体制でやらないといけないと思うんだけどね。

>HDL自体にだって、システム記述、形式機能記述などチャレンジングな話題はいろいろある。
>アメリカだったら、そういった技術がアカデミックな所で研究されたりベンチャーが立ち上がって
>素早く製品に応用されていくけど、それが日本に伝わるのはSynopsysとかCadenceとかが
>キャッチアップしたあと、陳腐化した技術になってからになっちゃう。

やっぱり設計屋とEDA屋がうまくリンクしていることが違いなんじゃないかなあ。

>HDLスレがたつと必ず「HDLは手段にすぎない。設計でもっと大事なことは〜だっ」って話になるのね。

いや、設計でもっと大事なことがあるのはそのとおりの事実だよ。HDLやEDAの研究が要らないという
話をしているのではないな。確かにアンチEDAで手作りマンセーのGGyは存在するが、それとこれとは別。

EDA研究が日本で進まないのは、そういう雰囲気のせいもあるかもしれないけど、個人ではどうにも
ならない体制的な問題のほうが大きいんじゃないかな。個人レベルでは、EDAの重要性を認識している人は
いっぱいいるというか、EDAなしで本当にやっていけると思っている設計者ってあまりいないと思うんだが。
282名無しさん@1周年:02/10/21 20:25 ID:KuMZcq+p
自動化されてしかるべきことが分からない連中が多いからか、
分かってはいるが、自動化されると自分の存在価値が減ること
を分かっているからそれに抵抗するのか。。。。

283名無しさん@1周年:02/10/21 20:33 ID:XOzmMlXD
>HDLやそれを扱うEDA自体を研究するのも大切だと思う。
 その通りだけど、日本発の規格ってなかなか標準化しな
いのよ。例外はメディア記録で、この分野だけは相当がんばっ
てるみたいなんだけど、Language関係で日本発の世界標準
規格ってあるの?先ずIEEEXXXやANSIで決まってから10年ぐらい経っ
てJISに取り入れられるものばっか。プログラム言語はJIS
になってるものもいくつかあるけど、HDLってJISになった
のあるのかな?
 SynopsysやCadenceやMentorと対等に商売する勇気のある
EDAメーカ自体日本から出てくること無理なんじゃない?特
に重要なのは論理合成だけど今更勝負挑んで勝てるのかな?
商売する気がなけりゃ研究もできないよね。
ディバイスのほうはAltera/Xilinxと勝負できるところは???
でもまだEDAメーカより可能性はあるよね。
284名無しさん@1周年:02/10/21 21:26 ID:dqy7eb8f
>>283
EDA、規格に関しては、日本が出したら全力で叩き潰しに
来るだろうね。正直そんな現実が見えてるから馬鹿らしくて
参入できないのが現実なんじゃないの?
もうカビが生えたような物で良ければ、SFLとかパルテノン
なんてのがあったけど、既に絶滅状態でしょ?
285名無しさん@1周年:02/10/21 21:47 ID:F9YPnOJT
>>282
よく板金加工でも何でも機械に勝る職人芸がもてはやされるてな具合で、自動は
何でも駄目で人手が良いという精神的風土がけっこうあるとは思うな。おっしゃ
るように、自分の価値を維持するためにあえて自動化を否定する狸じじいもいるが。

別に人手の職人芸を否定するわけじゃないが、自動化を蔑んで否定するばかりなのは
良くないね。
286名無しさん@1周年:02/10/21 21:50 ID:F9YPnOJT
>もうカビが生えたような物で良ければ、SFLとかパルテノン
>なんてのがあったけど、既に絶滅状態でしょ?

あれは優れた先駆的研究としての価値は認めるけど、開発で実用に耐えるかというとちょっとね。
まあ電話屋の研究屋さんが作ったものだから(以下略
287253:02/10/22 01:46 ID:T9RSQ+tX
>日本のメーカーだとツール屋よりは回路設計屋(また、回路屋よりはデバイス屋)が偉いみたいな
>空気があって、より物理的な"モノ"に近い工程を神聖視する。けど本来技術に貴賎はないはず。

ごもっともだね。
うちの上司は回路設計至上主義。回路の設計ができない人を思い切り見下してる。
ソフトウェア技術者やツールのプロには絶対に良い評価を下さない。
まぁ、その分横やりが入らなくて好き勝手やらせてもらっているんだけど。

>EDAメーカ自体日本から出てくること無理なんじゃない?

絶対に無理。日本の文化が物理的なものを神聖視する上、やる気を出しても絶対に
3強に食われてしまう。ViewLogicはSynopsysに食われ、イノベーダはMentorに食われて
しまった。あの3強が存在する限り、出る杭は打たれるよ。
Novasは大丈夫なのかな?

>特に重要なのは論理合成だけど今更勝負挑んで勝てるのかな?

これまた無理!
まず、DC万歳な文化がはびこってる。たとえ優れた論理合成ツールが出てきても、
設計者が受け入れない。新しいツールにチャレンジしようとする設計者って少数派みたい。
BuidGatesやSynplify(スペル自信なし)やLeonardoSpectrumが亜流扱いされてるのが良い
例だと思う。
PC版LeonardoSpectrumはなかなか良いと思うのだけど。
(wire_tableを面積に合わせて自動で選択してくれるとさらに嬉しいのだが。。。)
288名無しさん@1周年:02/10/22 01:59 ID:LWKCZq0W
CASE文で作ったデコーダと回路で書いたデコーダ、どっぢが
解りやすくバグが出にくいかなんて考えるまでも無いのに
そんな単純な事が解らない年寄りが多いね。
早く絶滅しないかなぁ。
289名無しさん@1周年:02/10/22 02:10 ID:mu8wcXKt
一つ忘れてたHDLとは関係ないが図研の
PowerPCBだったかな?これ結構海外で使ってる椰子居るみたいね。
ちょっとびっくり。
Orcad PSD 14.2 vs Protel DXPでもやるか・・・
値段が違いすぎる
290名無しさん@1周年:02/10/22 03:59 ID:7GxvRTJn
innovedaの奴か>PowerPCB
で、見たら
http://www.innoveda.com/default.asp
Mentorになったのかよ・・・
291名無しさん@1周年:02/10/22 07:10 ID:ZzToelEj
>287
確かに。過去の実績からDCっていっても
合成結果をマジメに解析してゲートまで見てる
ケースって、それほど多くないだろうし。
#実際、レイアウト前後のシミュレーションと
#タイミング解析程度しかしないなら、変わらないと思うが…

でも、ソースコードにシノプシスオプション埋めまくりとかなら、
他への移植する際に、そのオプションが無いと、ちょっと不便かも。
292289:02/10/22 07:58 ID:mu8wcXKt
>>290
あれ?zukenじゃなかった?ごめん間違ってたかな?
293名無しさん@1周年:02/10/22 23:06 ID:WnzjJ9aD
100円ショップで売っているスプーンを職人が加工したところで
市場競争力が無く、全く意味が無い。
ミリオンゲート時代において、EDA抜きというのは100円ショップの
スプーンを板金加工職人が手作りするようなも、いやそれどころでなく
バグ混入必須なので余計酷い。
294名無しさん@1周年:02/10/22 23:10 ID:WnzjJ9aD
日本のEDAがあまり見当たらないというのは、いまさら論理合成とかを
やっても、というのはあると思うよ。残っているのはアナログ合成と
動作合成くらいか。まあ、オプト時代に入ったらバックエンド系は
もう一度やり直しになるのでそこは残された機会ではあるのだろうが。

どうせ今からやるなら、システム設計とかUMLとか、プロジェクト
管理システムとの連動まで視野に入ったEDAでないーと。


295名無しさん@1周年:02/10/23 00:35 ID:5gy7coMU
↑既にアナログHDL販売されてますがな。
296名無しさん@1周年:02/10/23 00:47 ID:5gy7coMU
因みに俺としてはアナログのHDLは別に要らない。通常タイミング
は必要ないから現行のネットリスト記述で十分だと思うし、
Spiceで当面は不都合はないと思う。100GHzあたりから
合わなくなるらしいけどね。高周波の方ではADSが相当市民権を得てる。
297名無しさん@1周年:02/10/23 01:43 ID:8K2gj8vI
おいお前ら、VHDLの構文チェックにどんなlintツールを使っているか教えろ。
いや、教えて。
ううん、教えてください。
どうか教えてください、お願いします。

ちなみに、ModelSimやNC-SIMは使ってるけど、ちょっとチェックが弱い。
回路がRTL(いわゆる論理合成可能かどうか)っていうことを見るならば
シンセシスツールを使えばいいと思うんだけど、シミュレーションって話になると、それは
またちょっと違うんで。
Verilogならあるみたいなんだけどね。
298287:02/10/23 02:24 ID:jPG+UkR/
>>297
俺は論理合成ツール(LeonardoSpectrum)を使ってる。
いつか合成するなら、最初から論理合成ツールに食わせてみればOKだと思う。
合成後に動かない可能性もあるけど。
あと、VisualEliteにImportしてコンパイルしてみて、Warningが出てるかどうかも
参考にしてる。

lintツールはよく知らないのでsage。
299298:02/10/23 02:25 ID:jPG+UkR/
て、下げ忘れてるし。すまんかった。
300名無しさん@1周年:02/10/23 02:52 ID:FP+d4kE4
>>297
論理合成ツールのチェック機能は良いと思うぞよ。
試しに、氏のにかけて見るべし。
301名無しさん@1周年:02/10/23 07:58 ID:8K2gj8vI
DCは、check_designコマンドとかlogみて使っておりまふ。
Verilogを普段使ってるんだけど、ちょっと考えが違うのかにゃー
Verilogだと、文法が柔軟だから、lintツールを使ってチェックしたりするけど、
VHDLはシミュレータにしろ、シンセシスにしろ、Errorで落ちるってことかな。
とはいうものの、たまにセンシティビティリストに信号名を書き忘れたりすることが
あって悩むんで(自業自得なんだけど)、便利なものがあったらいいなぁ、なんつって。
302名無しさん@1周年:02/10/23 08:07 ID:yYWEJxtg
>>297
Verilogだけど、iVerilog使ってる。
FreeBSDでも動くのがうれしい。
ノートPCに入れて、出張の新幹線の中でチマチマ書いてる。

それで、シミュレーションの前には論理合成ツール(レオナルド)
を一回通すよ。シンプリシティが使えるときは、そっち使うけど
レオナルドはとりあえずライセンスを気にせずに使えるので、
とりあえずチェックの時にはレオナルドを使う事が多い。
303名無しさん@1周年:02/10/23 10:19 ID:1LUFth5+
>>302
iVerilogがチェックが劇弱だろ。
lint欲しいってのに全然役に立たないじゃないか。
304名無しさん@1周年:02/10/23 18:09 ID:mVhDSMCB
Tフリップフロップって二進カウンタ以外にどのような用途で使われるのですか?
305名無しさん@1周年:02/10/24 00:30 ID:eSQo7EpZ
>>300
me too.
シミュレート->論理合成
って手順はおかしいとおもうよ。
論理合成していけそうだとなったら、シミュレート->論理合成ってのがいいんで
ないかい?
306名無しさん@1周年:02/10/24 00:39 ID:HeADugqs
>>305
場合によりけり。どっちもあるよ。
307名無しさん@1周年:02/10/24 01:20 ID:04STT/Ld
>>306
そだね。論理欠陥があるのに合成してみるというのもおかしな話だし。
ただ小さなサブモジュールで合成してみて全体サイズのあたり付けるとかはするけど。
308名無しさん@1周年:02/10/24 01:34 ID:sH5ZZVDT
当然、職場でのEDA資源にもよるが、やはりHDLの構文解析は専用のものを利用したほうがよいと思われ。
確かにシンセシスツールで解析するのも一つの手だけど、やっぱり不十分なんだよね。少し不親切だし。
かといって、高い金を払って買ったわりには、ひっきりなしに使いまくるツールでも無いし、職場で
コーディングスタイルが決まっていたり、ドツボにはまりにくいHDL記述をしている人からしたら、
シンセシスでも十分だと思うんで、それぞれに合った手段があるはずだね。

使ったことないけど、RT-Qualifyをとりあえず。
ttp://www.hdlab.co.jp/service/rt/rt.html

verilog使いなんで、コレは使ったことある(でも昔のことなんで)
ttp://www-cad.ntt-at.co.jp/news/2001_019.html

そんで>>297の質問のVHDL使いの人(に限ったことでは無いけど)は、
特に専用の構文解析ツールは使っていないってことみたい???
309名無しさん@1周年:02/10/24 20:37 ID:b99KvcgE
バス幅の違うものどおしの演算、alwaysのセンシティビリスト抜け、
RTLでのXやZのアサインなんかは論理合成のWarinig全部見れば
分かる。
不本意なラッチ生成は合成結果からラッチを検索してみれば分かる。
不本意なセットリセットや3ステートも同じく。

最適化無しの最速論理合成スクリプト&grepで不本意セル抜き出し
シェルスクリプトで結構なことが金かけずに出来るよ。
310名無しさん@1周年:02/10/25 18:41 ID:76vbDXJk
そうなんだけど合成って時間かかるんだよね。あれもっと速くならないのかな?
311名無しさん@1周年:02/10/26 00:56 ID:1X/Mwv5n
マシンに依存するだろうから、めちゃくちゃ高い金払って、高級EWSにメモリめいっぱい
積んでみれば?
500万くらいあれば、Sunのマシン買えるだろう。
312287:02/10/26 03:48 ID:uiXQq6Tf
PCの方が速いと思う。少なくともCPUはPCが速い。
あと、論理の最適化を行わせないように設定。これでだいぶ変わるはず。特に、
1つのモジュールを複製させると、複製した分だけ合成するので著しく時間が掛かるよ。
LeonardoSpectrumだと、タイミング解析を自動で行わないようにチェックボックスの
チェックを外すとか。Fanoutの調整もやらせる必要は無いね。

合成で得られる回路を気にしないで合成の可否だけを見るなら、合成を行わずに
エラボレートするだけでOKだと思う。エラボレートしなくても、ファイルの読み込みの
時点でErrorやWarningが出そうだけど。
313名無しさん@1周年:02/10/26 11:31 ID:UOUWENKx
RTQualifyはレポートも親切で使い易いよ
314名無しさん@1周年:02/10/26 14:23 ID:1X/Mwv5n
>>312
それはちょっと乱暴な発言だな。確かにCPUのクロック周波数はそうだけどね。
PCとWSでは、32bitと64bitで違うし、でかいモジュールを合成するとなると、
トップダウンで合成すればメモリいっぱい食うし、ボトムアップで合成するならば
デュアルCPU構成で並列で処理することも可能だ。
ただ、PCは単価が一桁違うから、WS1台買うならばPC10台買うっていうのもある。

単純にPCが処理速いっていうことは無いし、EWSマンセーという訳でもない。
315名無しさん@1周年:02/10/26 14:45 ID:b0U/9+yd
>>314
Linuxを使ってればこの辺りは解消されると思うが。
メモリを死ぬ程実装して、HDDをRAIDで強化したサーバ用の
PCだと今やSunと大して変わらないと言うのが使ってみた感想。
当然DualCPUにも対応してるよ。
まあ、WS並みの信頼性を求めると価格も良い線まで上がるから
PCの意味があるかは疑問だけどね。

あと、Sunでしか動かないってソフトが多いからそう言う場合は
どうしようもないわな。(w
316名無しさん@1周年:02/10/26 14:57 ID:1X/Mwv5n
>>315
Linuxとなるとそうだね。
確かにSolaris vs Linuxでヨーイドンでやったら、並みの負荷だったらLinux勝利したからね。
いまって、手ごろなPCのスペックを知らないんだけど、メモってどれくらい積めるの?2GBくらい?
あとデュアルCPUのって手に入り安いのかな。
ウチの会社はボンビーだから、コストとCPUパワーのバランスを考えて、WSとPC+Linuxの比率を
変えつつあるんだけどね。
ただ、マシンが増えると、今度はQueueの分散処理も考えたりと、いろいろ面倒ちゃんナノダ。
317名無しさん@1周年:02/10/26 15:24 ID:TlOpTPVW
>>PC
24GBまで搭載できるのが有る
http://www.tyan.com/products/html/fam_thunder.html
んで、PCに積めるOSのほとんどで、一つのプロセスが使えるメモリに2GBの制限が有る。
318名無しさん@1周年:02/10/26 15:42 ID:1X/Mwv5n
thx! 24GBはスゲーーー!!
319名無しさん@1周年:02/10/26 17:49 ID:YGEePOgf
つーか、PCベースのツールじゃ、GUI中心でスクリプト化しずらいので

>最適化無しの最速論理合成スクリプト&grepで不本意セル抜き出し
>シェルスクリプト

はやりにくいと思う。

ただ、できればFPGA用無料ツールを使えるのでライセンス数の負担を
かけることないし、何より速いし、得るものは大きいな。
320名無しさん@1周年:02/10/26 23:14 ID:Jbsi2VLp
>>一つのプロセスが使えるメモリに2GB
それなんの制限だ?
セグメントとしては32Bitなんだから4GBだよな。
321名無しさん@1周年:02/10/26 23:49 ID:USC62vsF
Linuxは32bitOSだろ?
322名無しさん@1周年:02/10/26 23:51 ID:HjI3w6Eu
>319
ツール側の作りが良ければcygwinでスクリプトガシガシ。
でもそうでないと、cygpath(だっけ?)でパス変換を
埋めなければならないので、エライ目に遭う。

正直PCベースと言いつつもNT系は遠慮したい。
323名無しさん@1周年:02/10/28 21:20 ID:tlfAmBU9
>>320
チップセット固有のメモリ制御限界のことじゃないの?
324名無しさん@1周年:02/10/30 17:54 ID:Q7kGnX1+
パイプラインレジスタの回路モジュールを作るときって、
箱を一個作って、クロックの立ち上がりで、データの入出力をさせる感じでいいんすかね?
325名無しさん@1周年:02/10/30 20:03 ID:7d4rhAxo
>>324
市販のICで似たものがあったら仕様を調べて
良ければぱくるのも一つの方法。
326名無しさん@1周年:02/11/01 18:12 ID:9sKFfvxV
EN付きDフリップフロップって普通のDフリップフロップとどう違うのですか?
ENなしのDフリップフロップを使って作れるのですか?

ENとかCLRなどの記号は教科書に載っていないので調べようがありませんでした。
すいませんが教えてもらえませんか?
327名無しさん@1周年:02/11/01 18:36 ID:G/JOihuo
>>326
HDLとは関係がないので、スレ違いです。
フロップフロップスレへ行ってください。























ENはイネーブルのことで、これがHのときのみラッチする。
EN無しで実現するには、FFの出力のフィードバックとD入力とのMUXを
FFのDの前に置けばよろしい。
328あぼーん:あぼーん
あぼーん
329名無しさん@1周年:02/11/01 20:08 ID:5FRRWefA
>>326
CMOSトランジスタまで落として考えようね。
330名無しさん@1周年:02/11/02 19:47 ID:rGBATkPz
>>327
探しちゃったよ。フリップフロップスレ。
331名無しさん@1周年:02/11/02 20:41 ID:GaPjswnU
>>330
実は、フロップフロップであって、フリップフロップではない罠
332名無しさん@1周年:02/11/03 00:07 ID:LgA9j6tk
>>331
それじゃ何?
333名無しさん@1周年:02/11/03 00:15 ID:FGZZSKYT
>>327
>>>326
> HDLとは関係がないので、スレ違いです。
> フロップフロップスレへ行ってください。

フロップってどういう意味だったっけ?
334名無しさん@1周年:02/11/03 00:55 ID:WlnzqsQH
>>333
「ぎっとんばっとん」の"ばっとん"と同じ意味では?
335名無しさん@1周年:02/11/03 03:19 ID:5mkK7PWM
フリップフロップスレが見当たらなかったので、一応立てておきますた
ご利用下さい
http://science.2ch.net/test/read.cgi/kikai/1036260991/l50
336名無しさん@1周年:02/11/03 04:39 ID:uCfKthl+
sage
337名無しさん@1周年:02/11/03 04:41 ID:uCfKthl+
電気の質問スレにしたら?内輪スレは嫌われるよ>>335
338名無しさん@1周年:02/11/03 11:43 ID:di/ToDek
HDLの書式語る前にフリップフロップがらみの薀蓄ぐらい語れよ。
スレ違いだとはまったく思わない。
339名無しさん@1周年:02/11/03 18:02 ID:FGZZSKYT
ネタにマジレスする人が多いッすね。
この板の特徴でつか?
それとも(・∀・)でつか?
340名無しさん@1周年:02/11/03 19:36 ID:OwBMQ5qT
>>339
ダサすぎる質問をしたからと言ってそんな誤魔化し方
しなくても良いじゃん。(w
この程度の失敗ならごめんと言ったら普通許されます。
341名無しさん@1周年:02/11/05 20:03 ID:hOwDTt3J
教えてください

VHDLの 「transport 〜 after DELAY」 に相当することをVerilogでやりたいのですが、

assign #DELAY 〜

ではDELAY値以下の変化が伝播してくれません。
どう記述すればいいのでしょうか?
教えてください。お願いします。
342名無しさん@1周年:02/11/05 23:09 ID:XzuBdgSe
ヒント:感性モード
343名無しさん@1周年:02/11/07 02:05 ID:gfxGhUwi
>>341
記述できないっぽい。
変化イベントのキューが1つ、というシミュレーターの仕様が標準みたい。

俺も以前同じ事で困って、仕方が無いので
小さい Delayの wireをたくさん直列に繋いで妥協したよ。
344名無しさん@1周年:02/11/10 13:25 ID:ZrPncMYI
よー
ディジタル土方諸君
数学科では就職できなくて大変みたいなんだよ。
どうか励ましてやってくれ

http://science.2ch.net/test/read.cgi/math/1033095958/l50

大手にいじめられてる愚痴でも語ってやってくれ。
345名無しさん@1周年:02/11/10 17:40 ID:O5QSSQHs
ディジタル
ディジタル
ディジタル
ディジタル
ディジタル
ディジタル
ディジタル
346名無しさん@1周年:02/11/10 20:37 ID:7zOYE6vq
>>344
ディジタルだってよ。

電子回路の知識のないバカは逝ってよしだよ、間抜け。(w
347名無しさん@1周年:02/11/11 02:34 ID:gLJ97gmp
age
348名無しさん@1周年:02/11/11 02:42 ID:gLJ97gmp
ど素人>>346 晒しあげ
349名無しさん@1周年:02/11/11 02:46 ID:VRbhIGOP
【祭り開催中】このスレで晒されてもめてるよ。
警察にも通報したそうだ。
削除依頼もし証拠保全もしてるようだし、
こりゃ、ついに逮捕者が出るのかな
http://money.2ch.net/test/read.cgi/venture/983443343/l50

この辺あたりから名前でてるよ
http://money.2ch.net/test/read.cgi/venture/983443343/672-
ここから晒された奴の削除依頼が読めるよ
http://money.2ch.net/test/read.cgi/venture/983443343/700
350名無しさん@1周年:02/11/11 05:42 ID:ZAStDEfF
>>348
よっぽど悔しかったんだろうな。(ぷ
お前こそ晒し上げ。
351名無しさん@1周年:02/11/16 00:49 ID:ASN9wLfL
>>ディジタルだってよ。
何がおかしいの?
352名無しさん@1周年:02/11/16 11:55 ID:qhzUaNF1
>>351
今時そんなカビの生えた様な言い方する奴を見てみたい。
353名無しさん@1周年:02/11/16 13:07 ID:LjJWb3ED
>>352
プ。本も読んだことないズブズブ素人。
352はデズニーランドっていう大馬鹿野郎。
英語のマニュアルも読めんだろ。藁
354名無しさん@1周年:02/11/16 14:27 ID:jgk280QM
>>352
まともな文献読んだ事無いだろ?
論文などはディジタルって記述しないと査読で怒られる。
355名無しさん@1周年:02/11/16 14:39 ID:LjJWb3ED
>>354
そうそう。論文だけじゃないよね。まともな
技術書でdigitalをデジタルなんて書いてるのないよ。
実際、話し言葉としてはデジタルって言ってても。文書にデジタルと
書く専門家はいない。もしいたら恥ずかしい奴だね。
ただ唯一の例外はNTTなんかは社内用語でデジタルとかトラヒックなんて
書いてるようだから、それに合わせてトラックや仕様書あたりを書き換え
るなんて気の使いようをしてるメーカもあるようだが。
いずれにせよ。>>352はそういう類のことをまったく気にしたことのない
ど素人。もしくは派遣でもやらされてるまさに”デジタル土方”だろ。
同類にされたくないからこのスレから出て行ってくれ。お願いします。
356名無しさん@1周年:02/11/16 15:32 ID:w1Is4nPP
「ディジタル」が正しい

と声高に主張するどーでもいい連中が釣られています。

しっかし、このスレは煽りに弱いなー。
HDLの話が半分くらいしかない (´Д⊂グスン
357名無しさん@1周年:02/11/16 21:08 ID:91VWbdNx
ディジタルが正しいかどうかは知らんけど、普通にdigitalの発音を日本語表記
すると、ディジタルになるわな。
ちなみに、Dはデーと言うことあるけど、Tをテーと言うのには凄く抵抗がある。
358ABO:02/11/16 21:46 ID:RSN1OYtV
質問なんですけど、エレベーターの昇降部分の論理回路ってどうなるかわかります?
それをVerilogで書かなきゃいけないんですよ......
359名無しさん@1周年:02/11/16 21:57 ID:+S2AYt6N
360名無しさん@1周年:02/11/16 21:59 ID:ciRNf6W6
エレベータぐらいの遅くてもかまわない、そして正確なデューティ
が必要ないロジックだとCPUの方が簡単でないかい?
361名無しさん@1周年:02/11/16 22:05 ID:ciRNf6W6
それにしても上の>>346, >>350, >>352
恥さらしもいいとこだね。情けない。こういうアフォの活け作りが
"シュミレーション"って書くんだろな。合掌
362名無しさん@1周年:02/11/16 22:14 ID:ctKE3rHs
富士通ディジタル・テクノロジー http://www.fdt.fujitsu.com に謝罪汁!
363名無しさん@1周年:02/11/16 22:15 ID:ctKE3rHs
富士通ディジタル・テクノロジ だった(スマソ)
364名無しさん@1周年:02/11/16 23:41 ID:x+3nBpIQ
英語で書いておけばええやんw
365名無しさん@1周年:02/11/17 00:11 ID:OuCj2OLS
ハングルで書くニダ
366名無しさん@1周年:02/11/17 00:14 ID:0M9yGZwK
問2 入力SEL,D0,D1 が次の値の時、演算式の出力DOUT はどのような値になるか。
SEL … 1'bx
D0 … 4'b0011
D1 … 4'b1001
wire [3:0] D0, D1, DOUT; wire SEL; assign DOUT = (SEL==1'b0) ? D0: D1;
1 . 4'b0011
2 . 4'b1001
3 . 4'bxxxx
4 . 4'bx0x1
5 .シミュレータに依存するので確定できない。
367名無しさん@1周年:02/11/17 00:23 ID:0M9yGZwK
>360
なにボケたレスをつけているんだか。
エレベータの回路を書け、っていうのはステートマシンを
設計せよ、って意味だろう。速度もデューティも関係ない。
368名無しさん@1周年:02/11/17 01:29 ID:gN+mPjaV
>>366
こらこら、流出はいかんよ。

>>367
MPUでやるだろうなぁ。ふつーは。
369名無しさん@1周年:02/11/17 01:47 ID:0M9yGZwK
問2 100 万ゲート規模のLSI 設計では、ホールドタイム保証(注)を実行した後
にタイミングレポートを出力させても、多量のバッファ及びインバータが挿入
されたパスを発見するのは困難である。どのような方法で、このようなパスが
あるかを確認すればよいか。100 文字以内で述べよ。
370名無しさん@1周年:02/11/17 02:13 ID:1RhbYp5v
>>367
お前何ほざいてるんだ?
エレベータ程度の遅い制御で、しかもステートマシンになるなら何故先ず
簡単なCPUによる実現を考えないんだ?何を使って実現するかを考えない
ボケは一回死んで来い。
371名無しさん@1周年:02/11/17 02:25 ID:0M9yGZwK
ボケといわれたのが気に入らなかったようだな(w
>358はエレベータの論理回路をverilog書く方法を質問をしているのに
CPUで実現しろという答えはボケ以外のなにものでもないだろう。
実際のエレベータの制御をどう実現するかなんてのはまったく別の話。
設計以前に国語を勉強したら?
372名無しさん@1周年:02/11/17 02:30 ID:1RhbYp5v
なるほどね
>>367はたぶん全体構成を考えるような仕事をしたことないんだろうな。
仕様書渡されて”はい。このとおり作ってね”って仕事しかしたことないんだね。
そうじゃなければ、こんな場合の第一の選択肢にFPGAは選ばない。
恐らくグルーロジック用にゲート規模の小さいPLDあたりを使うことになるかも
しれんがね。
373名無しさん@1周年:02/11/17 02:30 ID:0M9yGZwK
誤)verilog書く方法を質問をしているのに
正)verilogで書く方法を質問しているのに
374名無しさん@1周年:02/11/17 02:32 ID:0M9yGZwK
>372の想像力(妄想?)には恐れ入るよ。
375名無しさん@1周年:02/11/17 02:38 ID:yPO3cbXA
お前らHDLの話してください。すれ違いの話題ではageないでください。
376名無しさん@1周年:02/11/17 02:45 ID:0M9yGZwK
雰囲気悪くして正直スマンかった。>375
ところで>366、>369は下記のサイトのサンプル問題。
受ける価値はあると思うかね?
http://www.hdlab.co.jp/service/esa/img/exam_sample1.pdf
http://www.hdlab.co.jp/service/esa/img/exam_sample2.pdf
377名無しさん@1周年:02/11/17 03:20 ID:9wWXeWbV
372はエンジニアとしてはまともなことを言ってるが、それ以前に日本語を勉強して
人(358)の質問に的確に答えるようにしような。日本語が読めないと仕様書も読めないからな。

>>376 別に受けるのが悪いとは思わないけど、わざわざ試験するほどの内容か?
378名無しさん@1周年:02/11/17 05:27 ID:yPO3cbXA
>>376
カイシャ主催でやってたから受けてみたよ。本番もサンプルとほとんど同じ。
大学入試センター試験みたいに、どれも常識的な問題だから、
新しくプロジェクトを立ち上げて、人を集める時の足切りに使えると思う。

うちの会社、結構RTL設計できない人多いから...
スコア分布を調べると、
設計子会社 >> 半導体親会社
平技術者 >> 役職者(プロジェクトリーダー)
とか、なりそうで楽しみ。
外注切れ切れいってる上の方に見てもらって、
自分の会社がいかに使えない技術者を飼っているか解らせたい。

それにしても、教科書となる『デザインスタイルガイド2002』の値段が
1冊 ¥42,000.-(税抜き) とは如何なものか
379名無しさん@1周年:02/11/17 08:24 ID:sqwGsJAA
デジタル、ディジタル論争を始める奴が一番レベルが
低い様に思えるね。下らん覚えて仕事が出来るんなら
世の中甘いんだけどね。
論文だけ書いてりゃ良い実践知らずや、現場しか知らない
脳味噌筋肉・・・どっちも要らない。
380名無しさん@1周年:02/11/17 09:24 ID:1XlWv9CY
>>379
お前が一番要らないな。
381名無しさん@1周年:02/11/17 11:44 ID:ZfvY5MrZ
>>376
この>>369ってホールドが保証されたってことでしょ。
でも多段のインバータチェーンが挿入されて いる/いない を見つけるっていうけど、
どうすりゃいいの?
382名無しさん@1周年:02/11/17 13:41 ID:0M9yGZwK
>教科書となる『デザインスタイルガイド2002』の値段が
>1冊 ¥42,000.-(税抜き) 

中身見たことあるけど、そんな大層な価値のある本ではない。せいぜい出して1000円ぐらい。
システム設計だったら下記の本がおすすめ。
http://www.amazon.co.jp/exec/obidos/ASIN/4621047841/ref=sr_aps_b_/250-4370701-7171436
システムLSI設計のためのリユース・メソドロジ・マニュアル
383名無しさん@1周年:02/11/17 19:26 ID:nWnuypRT
>>380
言葉覚えるだけで仕事できるなら良いね。
384ABO:02/11/17 21:23 ID:XWS25nGp
簡単な論理回路でよろしいんでわかる方います?
385名無しさん@1周年:02/11/17 22:00 ID:kZn+8QJT
>384
もう少し具体的に質問してください。
学校の課題かなにかですか?
386名無しさん@1周年:02/11/18 02:01 ID:rQ4jmCsQ
>>383
言葉も覚えられん奴が仕事のかけらもできるかヴォケ
387名無しさん@1周年:02/11/18 05:06 ID:ieraaOUh
>>386
そう言うつまらん事にしがみつかないとまともな仕事も無い
奴が世の中にいるって事だろうな。
下らない用語一つ覚える時間があったら少しでも綺麗で確実に
動作するHDLを書く努力するし、SIMやデバッグにいそしむわな、
普通。
あんたにとって本質は用語記憶なんですか?つまらん奴だね。
388名無しさん@1周年:02/11/18 13:08 ID:XIOhPwj2
たいして分かっちゃいない奴ほど言葉とか枝葉末節に妙にこだわるんだよね
389名無しさん@1周年:02/11/18 20:47 ID:ZvGhXtC8
>>381
(俺 376 じゃないけど)
うーん、よくわからんなぁ。いいやり方があるんだろうか?
とりあえず、

『ネットリスト中の INV や BUF セルをテキスト置換により
 非常に大きなディレイを持つモジュールに交換後、
 タイミングレポートを取ってワーストを見てみる』

こんな方法しか思いつかん・・・
390名無しさん@1周年:02/11/19 00:43 ID:Qt8kk3pC
>>389
ロジックに必要なインバータやスピードアップ用のドライバまで
全部痴漢されちまうから、くちゃくちゃになっちまうと思うが
391名無しさん@1周年:02/11/19 01:44 ID:Cp13Aygv
インバータ・チェーンが挿入されている箇所をスマートに見つける方法か。
実際、設計していれば回路構造を理解していて見当をつけたりするけど、
それ以外となるとなぁ。
392389:02/11/19 13:19 ID:qg+x9ly4
>>390
うん、もちろん痴漢後のネットは調査専用の捨てネットだよ
タイミングしか見ないので、ディレイを持ったモジュールの中身は
論理無しの素通しとかでいいと思う

>>391
100万ゲート規模とかいう前提だしね・・
393 :02/11/20 01:13 ID:hAJsSm4c
>>392
DesignCompiler/PrimeTimeを使う前提ならば、
1)論理合成後のネットリストで、report_cellかreport_referenceだっけ?で、インバータ/バッファの
セルを特定する。
2)それらのセル一つずつに対して、IV/NIVをスルーするパスを出力するように
オプション指定してreport_timingを出力する。
3)多段になっているかどうかは、目視で確認かな。

ホールド保証のためのバッファ挿入だから、fanout違反が関係あるとは思えないし。
第一、上記の解では合成ツール依存だから本質じゃ無いんだよな。
うーん、こういうのって難しい。そもそものRTL設計でホールド保証をsynthesisに任せてる
ってところに問題があるような気がするんだけど。
394名無しさん@1周年:02/11/20 01:26 ID:PtVBPQw2
>369
「ホールドタイム保証を実行する前に最小遅延パスのタイミングレポートを取り
実行後のタイミングレポートと比較する。遅延値が大きく変化している
部分を見ることで多量のバッファ、インバータの挿入パスを確認できる。」

100文字。 こんなんでどうでしょ。

>366はマジでわからん
395名無しさん@1周年:02/11/20 08:51 ID:QHUiA6vQ
>>394

> >366はマジでわからん

== で不定を判定すると、かならず偽になるということでしょ?
396名無しさん@1周年:02/11/20 08:56 ID:PtVBPQw2
>395
alwaysの中だと確かに偽だけど… if文ではどうだったか忘れた 
皆さん自明ですか?
397名無しさん@1周年:02/11/20 09:10 ID:S1VKgbzK
>>395 に同意
演算子の仕様だから、どこで使われても必ず偽
(だと思うよゴメン未確認)
398名無しさん@1周年:02/11/20 11:28 ID:+o6hhRze
>>397
その通りです。
399名無しさん@1周年:02/11/20 17:56 ID:XL49kxKZ
ところで皆さんシミュレータは何を使ってます?(もしくは何がお勧め?)

今はISEを使っている関係でModelSimXE使ってます。そろそろライセンス購入しようかと考えていますが、
XEのライセンスを購入するか、SEのアカデミックパックにするか悩んでおります(自分が購入する訳ではないけど)

シミュレーションにかかる時間がかなり違うと聞いたんですが、両方試す機会があった方いらっしゃるかな。
つかXEよ、そんなに遅いのなら1ライセンスで13万とかとらんでくれ・・・。
400名無しさん@1周年:02/11/20 18:31 ID:BdaHS0d3
>>399
13万なんて、激安だと思うが…
401名無しさん@1周年:02/11/21 13:24 ID:+V1MV950
貧乏研究室にとっては高い罠
402名無しさん@1周年:02/11/21 14:25 ID:hnEk8huM
もでるSIMって普通に買うと、300万位する。13万は破格だよ。
403名無しさん@1周年:02/11/21 15:11 ID:a2YWJApT
>>402
でも、13万@1week なら、そんなもんかも。
404名無しさん@1周年:02/11/21 23:09 ID:veZEAkZk
>366の問題を Verilog-XL,NCverilog,VCSで確認してみた。

……>395,>397,>398の嘘つき!
405名無しさん@1周年:02/11/21 23:40 ID:ikforBpo
>>366
VCSだと4になるよね
他のシミュレータは使ったことないからわからん
406名無しさん@1周年:02/11/21 23:46 ID:+V1MV950
>>404
4番だたよ。
407名無しさん@1周年:02/11/22 11:20 ID:XX7X1ndi
>>もでるSIMって普通に買うと、300万位する。
あんなので300万!???
じゃ
FPGA Adv っていくらするのよ?
408名無しさん@1周年:02/11/22 13:38 ID:sscpzJhj
>>407
AとかX版は、機能限定で本来のModel SIMとは全然違う物だと思うが。
あんな物ってどこまで使いこなしてんの?
409 :02/11/22 13:59 ID:KGTApPqu
>>366
漏れ、ヴェロロギの構文を勘違いして覚えてたのかにゃー

SEL==0 ? D0 : D1; だったら D1 が選択される。
SEL==1 ? D0 : D1; だったら D0 が選択される。
SEL ? D0 : D1; だったら D0 が選択される。

違うのかなぁ。それともシミュレータ依存が正解なの?
410名無しさん@1周年:02/11/22 14:47 ID:rlCeKhsr
双方向BUSと同じ考えじゃ駄目なのかな。
411名無しさん@1周年:02/11/22 15:42 ID:evzsNkca
>>409
> 漏れ、ヴェロロギの構文を勘違いして覚えてたのかにゃー

っていうか、落ち着いて書いてくれ。
不明な点が多い。

> SEL==0 ? D0 : D1; だったら D1 が選択される。
> SEL==1 ? D0 : D1; だったら D0 が選択される。
> SEL ? D0 : D1; だったら D0 が選択される。

SELが0ならばD0
SELが1ならばD1

不定の場合は、SEL==1’b0 の等号が成り立たないので D1 となる。
が、回路的には不定が伝播しないビットがあるので、
>>405 のような結果になるということか。

つまり、Verilogはバスは各ビット独立に評価演算しているということですね。
SEL==1'bx;
D0==1'b1;
D1==1'b1;
DOUT = (SEL==1'b0) ? D0 : D1;
ということか。
412名無しさん@1周年:02/11/22 20:37 ID:MHt+urke
4番なのか。シミュレータって賢いんだね。
413名無しさん@1周年:02/11/23 01:49 ID:jfqfS9LL
>>408
>あんな物ってどこまで使いこなしてんの?

俺もそう思った。
高速、正確、厳格で使いやすくて最高のシミュレータだと思う。
とはいえ、俺にはフルに使いこなせるほどの力は無いんだけど。

Verilogシミュレータなら良いのがいろいろあるけど、VHDLだと
ModelSimが標準でしょう。
414名無しさん@1周年:02/11/23 18:09 ID:+0miSfjN
↑派遣先のおこぼれで使わせてもらってる椰子が生いうな。
415413:02/11/24 01:53 ID:qCPq1jGA
>>414
想像力が豊かだな。
ModelSimなら、俺は会社で自分専用のライセンスをもらってる。
ModelSimを使わせてもらえないからって、そんなに妬むなよ。
416名無しさん@1周年:02/11/24 02:13 ID:/r18Ncab
25歳。
去年まで金無し君だったけど、オンラインカジノとパチンコで
二年で350万貯めた。一度やってみなよ。
初回のみだけど、1ドル以上のチップを買えば30ドル(4000円くらい)貰える。
もらうだけもらってプレイせずに換金することもできるし、ルーレットで赤か黒に
思い切って賭けてしまえば50パーセントで二倍になる。
金なきゃオフラインでゲームすればいいだけ。暇つぶしになる。
ビデオポーカーとかスロとか色々あるのでマジでお勧め。
http://www.imperialcasino.com/~1j4z/japanese/
417 :02/11/24 10:27 ID:buu3M9CC
>>415
それはそれで、非効率な会社だね。
普通(というと語弊があるけど)は、フローティングライセンスで使用すると思うんだけどな。
一人で2本3本と使いたいときはどうするの?

>>366
これ、if文の場合はどうなる?

always @(SEL or D0 or D1) begin
if (SEL==1'b0) DOUT = D0;
else DOUT = D1;
end
418名無しさん@1周年:02/11/24 16:35 ID:otE+QGi3
>>415
自分専用のライセンスってどうやって管理すんのよ?
つまりお前じゃない誰かが使おうとしたときどうやってそれがわかるんだ?
419 :02/11/24 20:10 ID:I5mhUBOx
Win版Fixed PCライセンスなんじゃない?
ドングルくっつけて。
420名無しさん@1周年:02/11/24 22:55 ID:81L1RaDM
一人で2本3本って?
一台のマシンの上で同時にModelSIM起動できるのか?
そういうライセンスがあるのか?
421名無しさん@1周年:02/11/24 23:11 ID:YJrqJpXP
>>420
1台のマシンで複数走らせるのは別にめずらしくないぞ
422名無しさん@1周年:02/11/24 23:19 ID:FGqE3tVE
413=415=430

無知は恥ではないが、謙虚な態度のほうが得するぞ
423名無しさん@1周年:02/11/25 00:03 ID:6wZq0dRV
複数ライセンスか、良いね。
少ないライセンスを多人数で分け合って使ってる環境だから
羨ましくてしょうがないよ。

安物のSIM環境でも良いは良いんだが一回使ってしまうと
もう戻れないよね。(w

使い込んでる人ならコマンドラインのほうが良い感じで無いかい?(w
424397:02/11/25 17:34 ID:LJaqy07G
>>404 スマン
425名無しさん@1周年:02/11/25 18:05 ID:LJaqy07G
Winでシミュレータ使ったことがなくて湧いた素朴なギモンヌ
ModelSim はPLIも使えるようだけど、Win ではどうするんだろう。
DLLにするんだと思うけど、(コンパイラがあれば)手軽にMakeできるような
環境が付いてくるのかな?
426名無しさん@1周年:02/11/25 18:44 ID:vjPpgxFk
>>425
たしかVCを入れる必要があったはず。
環境作りは結構面倒だよ。
427 :02/11/25 21:26 ID:uPUcI7CL
シグィンじゃダメポ?
428名無しさん@1周年:02/11/25 22:40 ID:sESY5cfp
簡単な質問をさせてください。
メモリーからの出力(32bit)を組み合わせ回路で出力するために
assign data=(条件)?memory[address]:32'bz;
と、書きましたが、論理合成する時にハイ・インピーダンスを出力させるのが
ひっかかり、エラーが出ます。
assign data=(条件)?memory[address]:32'b0;
と書くとまずいので、他の記述を探しています。
条件の時以外には、何も出力させないようにするにはどのようにすればよいのでしょうか?
簡単すぎて、申し訳ありません。

429名無しさん@1周年:02/11/26 00:29 ID:KhpFZYdh
このスレは、日本語に不自由している奴が多いな。

>>428
よーわからんが、3ステートバッファの記述例が知りたいということか?
430名無しさん@1周年:02/11/26 00:47 ID:T3eKYwR2
だからよ
>>428は下手に出ておねがいしてるじゃねぇか。
ちゃんと教えてやれよ。
431名無しさん@1周年:02/11/26 00:47 ID:oW5qXtDd
>>428
3ステートバッファを構造記述
432名無しさん@1周年:02/11/26 01:13 ID:JAzBzpBF
>>428
「ターゲットライブラリに3ステートバッファがない」に1カノッサ
433名無しさん@1周年:02/11/26 02:36 ID:KhpFZYdh
>>430
あんたが教えてやれよ。

>>432
俺もそう思う。っていうか、単に合成ツールの設定をミスっていると思われ
434名無しさん@1周年:02/11/26 08:00 ID:t/vgwfGk
よくこの手の質問を会社でされるんだけど、たいてい
「なんかエラーがでるんだけどどうしたらいいの?」(ママ)
ばっかり。

質問するときは何ていうツールでどんな操作をして、具体的にどんなエラーが出て、
何をしたいのかをちゃんと教えてくださいよ ○○さん!
435425:02/11/26 12:16 ID:k53ZtcE+
>>426
情報ありがとう。 面倒なのかぁ。
DOS窓でMakeとか、プロジェクト開いてビルトとかって形式じゃないって事なのかなぁ・・・

>>427
gccでDLLをMakeする環境を自分で構築しないといけなそうだよね。
手間かかりそう・・・
でももしシグィソ用のMakeが付いてたら全然別。それならスバラシイなぁ。
436end:02/11/28 01:14 ID:lgLuIk/U
これにておしまい
437え?:02/12/06 01:44 ID:uvqO2TGA
おしまい?
438名無しさん@1周年:02/12/06 20:13 ID:dDedaESo
はじめて書込みします。
これからFPGAについて学ぼうと思っているまったくの初心者ですが、VHDLとVerilogのどちらがお勧めでしょうか?また、違いなどを判りやすく教えて頂けると幸いです。
よろしくお願いいたします。
439名無しさん@1周年:02/12/06 20:25 ID:2hqHcfW+
>>438
その手の話は荒れるだけ、不毛きわまりないから質問するな。
そして二度と来るな。
440名無しさん@1周年:02/12/07 23:10 ID:G1YuLTdF
>438
全然記述言語を触った事がないのなら、言語的な制約が厳しいVHDLから
始めた方が変な回路になり「にくい」
やることは同じだから、結局どっちを選んでも大差は無いかも。

>439
まぁ、VHDL&Verilogスレだし。これから学ぶという「意欲」のある人には暖かく…
441名無しさん@1周年:02/12/08 01:18 ID:5r+pltTO
このスレで同じ議論がなされているにも関らず、
同じ質問を繰り返すような輩からは「意欲」を感じませんが。
442end:02/12/08 02:09 ID:e3BBnROo
Verilogの方がつぶし効くだろう
EDAベンダーもVerilogを優先してるよ
VHDLなんてやめとけ
443名無しさん@1周年:02/12/08 02:53 ID:DDqO606V
どっちもやめとけ。これからはSystem C。
444名無しさん@1周年:02/12/08 13:57 ID:HlHW1hro
>>442
素人だね君。
445名無しさん@1周年:02/12/09 23:27 ID:LhDAQv2Y
学校関連ではVHDL,企業(業務)ではVerilogが多い。
446440:02/12/09 23:40 ID:fxh6JxJQ
>441
あ、なるほろ…愛をかんじますな。
>438
とりあえず、今月のデザインウェーブだと触りだけでも
体験できるかも。Verilog/VHDLどっちでも大差は無いとおもう。
身近に知っている人が多い言語が良いんでは?

独学だと、サンプルソースを「探しやすい」方。

コノミだと記述量が増えてもガチガチのVHDLがコノミ。
業務だと、客先次第 or 既存資産次第
447マジで悩んでます:02/12/10 16:42 ID:VYUlmd6/
HDLやるには、ブラインドタッチできなければ
いけませんか?電気工学科3年なのに
いまだにタイプが遅いです。
448名無しさん@1周年:02/12/10 21:32 ID:4PTsh9C6
>>447
そんなことはありませんw
449名無しさん@1周年:02/12/10 22:00 ID:O4174VTm

http://petitmomo.com/mm/
ここがちょっぴりエッチ系のめぐが運営している出会いサイトです。
もしよかったら使ってみて、、、
ヨロシクです。

めぐ(^o^)-☆
450名無しさん@1周年:02/12/11 02:15 ID:txgPrv8d
例えばどーいうところがVHDLがガチガチなのさ?
ASICはVeli派が多いよ。
451名無しさん@1周年:02/12/11 04:37 ID:x/mwsLPP
>>450
取り敢えず、只のツールがあるんだから試せよ。
聞く前に試せない様では君も大したこと無いね。
452440:02/12/13 21:44 ID:06+iBSlE
ビット幅が異なっていてもコンパイルが通過したり、
ビット幅の概念のない値がそのまま代入できたり…

そんなもん、気付かない方がタコって言えるかもしれんが、
コンパイラではじく方が親切。

LINTを買えって言うのは無しね。
453名無しさん@1周年:02/12/14 08:46 ID:JGCTl86M
>ビット幅が異なっていてもコンパイルが通過したり、
>ビット幅の概念のない値がそのまま代入できたり…
これは言語仕様の問題か?
それともvcomとか論理合成ツールの問題なのか?
454名無しさん@1周年:02/12/14 09:03 ID:HCEfyhH8
>>453
vcomじゃなくて、vlogだよね。
455名無しさん@1周年:02/12/14 09:25 ID:JGCTl86M
veri は vlog
vhdl は vcom
だけど。
意味わかったら、えーやないか。
456名無しさん@1周年:02/12/14 10:03 ID:vM9Lfodt
>>454はVHDL型 >>455はVerilog型人間ってことですか。
457名無しさん@1周年:02/12/14 10:36 ID:JGCTl86M
うまい!
age
458名無しさん@1周年:02/12/14 21:35 ID:HCEfyhH8
veri と書いてしまう人がいるのか。ふーん。
logの三文字くらい惜しまず書いてね。
459名無しさん@1周年:02/12/15 00:09 ID:4S7J/jOI
私電気工学科出身でソフトウェア会社で1年働き、転職考えてて
この仕事に興味あるんですが、この仕事の将来性、
また将来どんな立場の人間になるのか知りたいのですが
460名無しさん@1周年:02/12/15 01:40 ID:iWghNtgY
>>459
HDLかける人は、CやVBやJAVA書ける人より数が少ないのでそういう点では有利でしょう。
将来はまったくわかりません。今のまま行くことは絶対ないでしょう。
昔、スケマでバリバリASIC作ってたけどHDLに乗り換えられなかった人は、現在粗大ゴミになってます。
COBOLerより悪い立場だと思う。富士通のバブルメモリ屋と同じくらい冷や飯食ってる。
461名無しさん@1周年:02/12/15 02:05 ID:4S7J/jOI
>>460
レスサンクス
やはり時代のニーズに合った技術を身に付けるってことですね
これがむずかしいけど
462名無しさん@1周年:02/12/15 02:12 ID:A9Co7ay6
回路わからない人が書いたVHDLってめちゃくちゃ
463名無しさん@1周年:02/12/15 04:04 ID:qCeWl2wp
>>459

自分は本職だからHDLは両方さらさら書けるが、C++の機能をしっかり
使えるソフト屋を見るといつもすげぇーなーと思っとります。
組み込みMPU用のANSI-Cは業務でもコーディングするけど、スレッド多用
するようなPC向けのC++はなかなか仕事になるレベルまでは上がらない・・

HDLはあと何年続くか判らんから、今のうちにC++を極めるのに一票。
JAVAとか.netにも応用効くからね。もちろんハードならSystemCとかにも。

うちの部署の新人研修は、ハードもソフト屋と一緒にC++やらしてます。
彼らがC言語によるASIC設計時代を支える予定.. わしらは仕様と業者対応に回るわ。
464名無しさん@1周年:02/12/15 05:44 ID:oIzuvK+V
465名無しさん@1周年:02/12/15 12:19 ID:1xUhTk5P
スレッドそのものはC++でもCでも関係ないでしょう?
Cを十分書ければ自然とC++の仕様に納得できると思う。
十分っていうのはCを見てアセンブラを思い浮かべられる人。
アセンブラを書いたことのない人間のC,C++コードなんて吐き気
がするよ。大体一目見てわかる。
466名無しさん@1周年:02/12/15 12:37 ID:33FQkw0/
>>465
そうだね
最終的に実装が思い浮かばないやつが、高級言語を使ってもダメなんだと思う。

これから10年は飯が食えるソフト屋なら、デバイスドライバ屋はどうかな?
実は、デバイスドライバの世界にも、SMP対応って新しい波がやってきてるんだよ。
SMPのリソース管理知識(割込禁止のかわりにspinlock()使うとか)と
ハードウェア知識の両方を持っていて、デバイスドライバをかける奴は本当に少数。
しばらくは珍重してもらえると思うぞ。
467名無しさん@1周年:02/12/15 13:19 ID:1xUhTk5P
僕はデバドラ屋というかDSP屋だけど、DSPだとたいしたことできないんですよ。
それで力不足を感じてHDLもやろうってことになった。みんな恐らくはじめから
何でもできたわけではなくて専門分野に限界を感じて範囲を広げていくんだと
思う。

上のスレで書かれてたスケマからHDLに乗り換えられなかったっていうのは、本人にとっても
会社にとっても大きな損失だと思う。もともとハードウエアの知識があるんだから一月ぐらい
研修を受けさせればソフト屋にHDL書かせるよりよっぽどいい仕事するんじゃないかと思うが?
仕事の入り口がちょっと変わったぐらいだと思うんだけどな
468名無しさん@1周年:02/12/15 13:22 ID:fVBSXioA
>>465
アセンブラのコメントにCソース書くのはアリですか?w
469名無しさん@1周年:02/12/15 13:32 ID:iWghNtgY
>>468
ハンドコンパイルですか?
470名無しさん@1周年:02/12/15 16:04 ID:wQm4BdLf
全く話が変わっちゃうんですが
verilogで 'defineとparameterってありますよね
あれは一体どう使い分ければいいんでしょうか?
色々本を見て調べたんですがわかりませんでした
ていうか、本によって違ってること書いてあったりして・・・
これだ!っていうお勧めのベリローグの本あったらいいんですけどね
471名無しさん@1周年:02/12/15 18:10 ID:AxzZ81cR
>上のスレで書かれてたスケマからHDLに乗り換えられなかったっていうのは、本人にとっても
>会社にとっても大きな損失だと思う。もともとハードウエアの知識があるんだから一月ぐらい
>研修を受けさせればソフト屋にHDL書かせるよりよっぽどいい仕事するんじゃないかと思うが?

良いほうはそれで問題ないんだけど、ダメなほうは昔の手法発想を無理やり
持ちこむんでダメなんだよね。(由に、乗り換えられなかったんだけど。)

ま、これは新人にしても、入社1年もしないで会社辞めるのがいることを
勘定すれば同じなんだけど。
472名無しさん@1周年:02/12/15 18:39 ID:iWghNtgY
>>471 そうですね。
悪い方法ってわけじゃないが、現在の大規模な設計には持ち込めないっていうか…

いい例えかどうかわからないけど
2KバイトでTinyBASICを実装するためにハンドアセンブルでカリカリにチューンする
手法を、そのままOfficeスィートの開発に持ち込むようなものなんですよ
> over 100万ゲートの規模のチップ開発に、スケマ設計&手配線

確かに、スケマで設計すれば消費電力もゲート数も少なく出来るけど、
そんなやり方で1000万ゲート規模を設計したら、100人が10年たっても
終わらないわけで、HDLでえいやってやるしかないのが現状なんです。

でもHDL開発では、効率悪い回路しか作れないのも事実で(そもそも完全同期回路じゃないとダメだし)、
そういうのが許せない昔かたぎの人は「昔はこうじゃなかった」と言うだけの粗大ゴミとなる。
473459:02/12/15 22:05 ID:n3z/E5li
みなさんいろいろアドバイスどうも
やっぱCは基本ですね、私も今の会社組み込みCとかやりたくて入社したのですが
やったのはVBでの生産管理のシステムとか
HDLとかハードの知識とソフトの知識両方必要だからとても面白そうです
こんどこそいい職場にいけるようにがんばります
474名無しさん@1周年:02/12/15 23:23 ID:hX1MEcNq
>>470
> verilogで 'defineとparameterってありますよね
> あれは一体どう使い分ければいいんでしょうか?

やっぱり、Cなんかと一緒で
コンパイル時に指定できるのが大きな利点だと思われ
475名無しさん@1周年:02/12/16 00:50 ID:qk6kOuht
>>465
アリ。条件判断とかはアセンブラだと一見して判断がつかないから。
アセンブラの内仕をCで書いたりすることもある。これだと自動でフローチャート
書くツールもある。
476名無しさん@1周年:02/12/17 14:53 ID:Jbm7HFrw
s[4:0]<=5'b11111;と入力する場合左辺を5'b111111とかじゃなくて
「全て1」的な記述方法はありますか?
477名無しさん@1周年:02/12/17 15:47 ID:qCkTMhYA
>>476

s <= (others =>'1');
478名無しさん@1周年:02/12/17 20:09 ID:5FfOE4Bl
あれ、verilogって初期値いれられんの?

reg [3:0] r = 4'b0000;

みたいに
479   :02/12/17 22:18 ID:yMwlNP3q
s[4:0] <= 5{1`b1}

s[4:0] <= ~0
480名無しさん@1周年:02/12/18 00:58 ID:buzjlAbn
>>478
Verilog-2001ならOK
481名無しさん@1周年:02/12/18 01:00 ID:buzjlAbn
>>470
'defineじゃなくて`defineです
482名無しさん@1周年:02/12/18 16:01 ID:N1PHNC3w
>>478
それって一般的な記述?
483名無しさん@1周年:02/12/25 06:18 ID:ve0W8u9m
8ビットのレジスタの1になっているビットの数を数えるRTLを書きたいのですが、
合成のことを考慮すると、どのように記述するのが速度、面積的に効率がいいでしょうか?
reg [3:0] count;

count = 0;
for (i = 0; i <= 7; i = i + 1) begin
count = count + reg[i];

だと、合成時に4ビットの加算器が7つできてしまい、あまり効率が良くあり
ません。(ちなみにcountをintegerで宣言したら、32ビットの加算器が7つ
できてしまいました)
ゲートレベルで書けば、ものすごく小さくできそうな回路なのですが。
合成にはDesign Compilerを使っています。
484名無しさん@1周年:02/12/25 07:26 ID:vj+vsmVF
>>483
いわゆるビット重み加算器ですよね。乗算器によく使われます。
合成ツールまかせにするなら

-- for dataflow context (VHDL)
CASE reg is
 WHEN "00000000" => count <= "0000";
 WHEN "00000001" => count <= "0001";
 WHEN "00000010" => count <= "0001";
 WHEN "00000011" => count <= "0010";
 WHEN "00000100" => count <= "0001";
(省略)
 WHEN "11111110" => count <= "0111";
 WHEN "11111111" => count <= "1000";
WHEN OTHERS =>
END CASE;

みたいに、ずらずらって書けばよきにはからってくれます。
少なくとも32ビットの加算器が7つって事はないでしょう。
485名無しさん@1周年:02/12/25 08:53 ID:RrN7JaUi
>>484
私の場合、483さんのやり方に加えて、
そのソースを自動出力するようにスクリプト等で書きます。
手書きだと、ミス入れやすいし、16bitとかだと、書いてられないので。
486名無しさん@1周年:02/12/26 23:03 ID:axFQZ927
>>484
count=((reg[0]+reg[1])+(reg[2]+reg[3]))
+ ((reg[4]+reg[5])+(reg[6]+reg[7]))

とすれば、
1ビット全加算器4個 : (reg[0]+reg[1]) ほか3組
2ビット全加算器2個、: 上の結果の足し算2組
3ビット全加算器3個 : 上の結果の足し算1組
で済むようになると思うけど。
487486:02/12/26 23:04 ID:axFQZ927
486の訂正です。

誤:3ビット全加算器3個 : 上の結果の足し算1組
正:3ビット全加算器1個 : 上の結果の足し算1組
488486:02/12/26 23:13 ID:axFQZ927
つーか、全加算器じゃなくて、半加算器だよーん。

489   :02/12/27 03:25 ID:QZNuGJ0Z
>486の回路はHA7個、FA4個になると思われる。
もう少し工夫すると、HA3個、FA4個でできる可能性あり。
count=((reg[0]+reg[1]+reg[2])+(reg[3]+reg[4]+reg[5])+reg[6])+reg[7] ;


しかし今時こんなところに凝るよりも可読性のよい記述にするのがよいと思われ。
>484の記述からはたぶんアダーは生成できないのであまり効率はよくないでしょうね。
490名無しさん@1周年:02/12/27 07:04 ID:k+VZH2Jf
>>489
たぶん >>484 の記述だと 論理圧縮した積和形式に合成されると思われる。
アダーを組み合わせるより積和の方が面積は大きくなるけど速そう。
アダーだとキャリーチェーンがあるからね。キャリーチェーン対策する回路を
入れると、結局面積は積和で実装したのと変わりないようになると思う。

今のトレンドだと面積より速さ優先だと思うんでどっちもどっちだって感じ。
491名無しさん@1周年:02/12/27 08:54 ID:tYHca8DP
>>489
禿同
中途半端に凝るくらいなら論理合成使うなといいたい
492名無しさん@1周年:02/12/27 12:20 ID:DLgaN/2T
>>486の記述で、「+」演算が加算器として必ず合成されるとは限らないから、
>>490の意見に同意ってことになる。
493   :02/12/28 17:22 ID:U4xcWEGw
>483に便乗ですが、32ビットのデータで、
MSBから数えて初めて1が出てくるのが何ビット目なのかを数えたいのですが
うまい書き方はないでしょうか? ただし>484みたいなCASE文は勘弁してください
494名無しさん@1周年:02/12/28 18:59 ID:9a9j3y9+
>>493
このような回路は、浮動小数点の加減算でよく使われますね。
こんな感じですか?

if din(7)='1' then
 dout <= "0111";
elsif din(6)='1' then
 dout <= "0110";
elsif din(5)='1' then
 dout <= "0101";
elsif din(4)='1' then
 dout <= "0100";
elsif din(3)='1' then
 dout <= "0011";
elsif din(2)='1' then
 dout <= "0010";
elsif din(1)='1' then
 dout <= "0001";
elsif din(0)='1' then
 dout <= "0000";
else
 dout <= "1000"; -- no detect
end if;
495名無しさん@1周年:02/12/28 19:06 ID:vc7F0mcK
>>494 は 8bitの例です。32bitの場合は32回 elsifを並べてください
496名無しさん@1周年:02/12/28 19:32 ID:TMF0o0zu
>>494
CASE文の方がまだマシな罠

しかし、>>493よ、そんなことで悩むより他に目を向けろよ。
その回路に使うゲートは全体の何%になると思っているんだ?
497483:02/12/28 23:27 ID:Rx3v6NzF
>>489
少なくともDesign Compilreは代入先の変数のビット幅によって、
加算器のビット幅が決定されるようです。なので、この場合も加算器の
ビット幅は4ビットになると思われます。

>>493
実際に合成してみたわけではないですが、こんなのはどうでしょ。

always @(din)
for (i = 0; i >= 7; i = i + 1)
if (din[i]) dout = i;
合成時にfor文は展開されてしまうので、これでうまくいくと思います。
LSBから数えさせたければ、for文の順序を逆にしてやります。

for (i = 7; i >= 0; i = i - 1)

case文で書き下すのは、ミスが入りやすいし、機能検証もしにくいので
個人的にはあまり好きではないですね。
256ビット幅とかになったら、コードカバレッジのことは考えたく
なくる・・・。


498名無しさん@1周年:02/12/29 01:26 ID:Tp6iYVRV
>>497
> case文で書き下すのは、ミスが入りやすいし、機能検証もしにくいので
> 個人的にはあまり好きではないですね。
> 256ビット幅とかになったら、コードカバレッジのことは考えたく
> なくる・・・。

だから、perlでもCでもいいから一気にHDLソースを吐くようにしろよ。
そういうのを手書きしようとおもわんでくれ。
499名無しさん@1周年:02/12/29 13:02 ID:jA7wyqnS
これでいいのでは・・・?
process (din)
variable tmp : std_logic_vector (dout'range);
begin
 tmp := (others => '1'); --該当なし
 for n in din'low to din'high loop
  if din(n) = '1' then
   tmp := conv_std_logic_vector(n, dout'length);
  end if;
 end loop;
 dout <= tmp;
end process;
500名無しさん@1周年:02/12/30 11:29 ID:vjwIYW80
>496
MSBから最初にって条件があるから、ifで書かないとダメなのでは??

>499
これはLSBから数え初めて、最後の'1'の部分が代入されるんですよね。
回路としてはどんな感じになるんだろ??
#これを初めからゲートで書け!って言われても漏れには無理…

書ける人いる?
501名無しさん@1周年:02/12/30 12:05 ID:V788bTdx
>>500
>これはLSBから数え初めて、最後の'1'の部分が代入されるんですよね。
>回路としてはどんな感じになるんだろ??

ループがそのまま回路になるわけじゃないから・・・。
ツールにもよるだろうけれど、合成結果は>>494>>499も同じだったヨ。

ところで、みんなコーディングのときタブを何桁にしてますか?
漏れは4。VHDL
502500:02/12/30 12:52 ID:vjwIYW80
>496
すまん、書いてから気が付いた…Caseで書けるし、ifよりはマシ。
WHEN "1xxx" => count <= "0000";
WHEN "01xx" => count <= "0001";
WHEN "001x" => count <= "0010";
WHEN "0001" => count <= "0011";
WHEN OTHERS => count <= "1111";
こんな感じか?

昔の合成だと、頑張って式とかで表すよりも、
力業でcaseで書いた方が、回路は小さかった記憶があるが。
loopで回すと全ビット見ていそうな気もするし。

だれか試しにcaseと>499のやり方とで違いを見て欲しい…
#というか、>493の結果報告希望
503名無しさん@1周年:02/12/30 13:45 ID:zjBPWN20
>>502
残念ながら、VHDLのcase文では '-'や'X'を用いてdon't careの表現と
することはできません。これができると楽なんだけどねぇ

一般論としては >>494のように IF-ELSIF-ELSIF-ELSIF…END IFと書くのが
どんな合成ツールでも合成可能なジェネリックな書き方だと思うよ。
504 :02/12/30 16:00 ID:2vIrTfCZ
>>501
tabstopを4に設定した環境でコーディングされると、他の人が迷惑。
どうせなら全部ブランクに変換してけろ。
505501:02/12/30 16:20 ID:V788bTdx
>>504
やっぱり8が主流なのかなぁ。
現役AHDLなんで(AHDLは4が主流らしい。ライブラリソースの大半がそうだし…)
VHDLで書くときにどうしようか迷っていたんです。

8にすればTABCONV.EXEとオサラバなんですガネ...
506500:02/12/30 16:20 ID:vjwIYW80
>503
げ?そうだっけ…verilogが最近多かったので忘れてしまったか…

>501
結構賢そうですが、嵌ると凄まじい回路になりそうで
loopってあまり信用出来ない。
イメージとしては記述を展開したような形で合成が行われるから
大丈夫だとは思うのですが。

で、tabstop、使うならば4かな。

全部ブランクにするか、TABにするかは初めに決めておけば
問題ないし。中途半端にブランク3とか4とか混在するソースの方がイヤ。

昔はTABがあると通らないツールがあると聞いたけど、そんなものは見た事がないな。
507名無しさん@1周年:02/12/30 17:05 ID:zjBPWN20
hard tabのサイズは 8にしておくのが無難なんじゃないの?

というか、インデント入力の容易性なんてエディタの問題でしょ?
例えば emacsのマイナーモードの設定をちょっと変えるだけの話で
ハードタブのサイズをいじくるなんて乱暴なことをする必要性は皆無
508名無しさん@1周年:02/12/30 22:48 ID:/CnQTlsJ
>昔はTABがあると通らないツールがあると聞いたけど、そんなものは見た事がないな

さすがにメジャーなEDAではそんな恥ずかしい制限は見ないけど、
内製ツールの類じゃ、そうゆうの結構残ってたりするんだよね。
ま、という俺も自作ツールはTABの面倒まで見てたかどうかは
怪しいけど。
509名無しさん@1周年:02/12/30 23:24 ID:BRmMMDE7
>>472

HDLやC言語で設計して、synopsysで自動レイアウトのチップでは、半導体屋は
食えません。ユーザーとして、ASICを設計して自分の組み込みに使うのなら別で
すけど。でも、後者も難しい領域になるとは思いますよ、だって、0.15umで
マスク代が5千万とかいっちゃうし、レイアウトツール代が1本1億円以上、メン
テ代が2千万とかかかりますから。

INTEL/MOT/ibmのMPUみたいに、システムが優れていて、HDLもCも回路図も使い、
自動もマニュアルレイアウトも使うということで、パフォーマンスを上げないと、
劇的に差は出ないなとは思う。

ま、FPGAならユーザーサイドですから、コストは吸収できますが。
510名無しさん@1周年:02/12/31 00:04 ID:c8H+wqyd
>>509
なにも最新のところまで使わなくても、5〜6インチ、
0.5μのファウンダリもまだまだあるよ。
そのへんならマスク料+レイアウト料で数百万ってところじゃ
ないかな。このあたりのテクロノジなら十分枯れているので
レイアウト寄りの失敗はそうないし。まあ、0.5μのGA
でできることならFPGAでやりゃいいじゃないかという
考えもあるけどな。
511名無しさん@1周年:02/12/31 00:24 ID:QchfVpe7
外注のソースのTABも4/8入り混じってます。HDLに限ったことではなくてCなんかも。
その都度エディタの設定変えたりしてたけど、大した手間じゃないので気にしてなかった。
かといってソフトTABは正直鬱陶しい(いいエディタを使えば問題ないのかも知れないけど)
512名無しさん@1周年:02/12/31 00:28 ID:6DEQ5Xhh
>>511
速攻でくそエディタは捨ててしまえ。
513Nanashi_et_al:02/12/31 01:14 ID:TGUKudi/
>>510
なるほど・・セット屋さんですか?半導体屋だと価格が厳しくて、
ロジック製品では技術レベルがそこそこ高いとこには競合が多くて
、利益スレスレの価格でないと売れないというのが現状だなぁ・・

技術がずば抜けて高くないと、マージンが取れないからなぁ・・・
そう思うと、このままでは半導体屋は衰退します。でも、そうする
と、中小のセット屋さんも苦しむだろうなぁ・・・
514名無しさん@1周年:02/12/31 01:35 ID:vlYjIAzd
>>513
しみじみ同感…
515名無しさん@1周年:02/12/31 01:36 ID:KDS6Ufa2
>>513 ま、だから中小はFPGAに流れるんだけど、半導体屋なら
AやX以上に低価格でまともなFPGAをぜひ作ってくれ。
516Nanashi_et_al:02/12/31 16:46 ID:8YxuYi6r
>>515
まぁ、AやXに匹敵するにはなかなぁねぇ・・多くの半導体屋は
かつてPLDをやっていたけど、ほとんど止めたということから、
そんなに簡単ではないやってことでしょ?

んで、低価格のロジック半導体製品は止める方向では
ないかな?MCU/MPUだって、スレスレの価格だもの。
Hだって、H-8とかSHとかは、金を生んではなんじゃな
いかな?

 本業が苦しくなっているんで、何時抜けてもオカシク
はないと思うよ。そうすると、セットメーカーは大変
だろうなぁ・・・特に、価格を厳しく要求する民生は
さぁ。

517名無しさん@1周年:02/12/31 22:04 ID:60g/yoTh
>>516
>Hだって、H-8とかSHとかは、金を生んではなんじゃな
>いかな?
ご冗談でしょう?SHは日立のドル箱です。そりゃ上を見りゃキリがない。
518名無しさん@1周年:03/01/04 05:48 ID:L/y1oszE
非同期シリアル(いわゆるRS-232C)の、
送信と受信、どっちが難しいんでしょうか?
519名無しさん@1周年:03/01/04 09:08 ID:eUiVKYyx
>>518
RXDとTXDだけ使ってる分にはどちらも簡単。
完全に232Cの仕様を満たそうとすると、結構面倒だ。
520名無しさん@1周年:03/01/04 14:16 ID:mBrxHyqD
>>518
一般には、受信の方が面倒でしょ。送信はただ垂れ流すだけでいいけど
受信は入力ストリームからクロックを再生しないといけない。
521名無しさん@1周年:03/01/04 21:11 ID:c1MYedDu
>>520
クロック生成なんて必要なしだよ.

CDRと勘違いしていないか?

UARTなら単にどのタイミングでデータを取り込むかというのを決める回路が増えるだけかと.
だから,通常x16とかのサンプルレートでストローブつくっているよね.

522名無しさん@1周年:03/01/04 21:41 ID:mBrxHyqD
> UARTなら単にどのタイミングでデータを取り込むかというのを決める回路が増えるだけかと.

その処理がクロック再生そのものかと。具体的にはスタートビットで同期をとる。
要は受信部の方が送信部より回路規模が大きくなるってことだな。
523名無しさん@1周年:03/01/05 14:00 ID:1W6kV0zI
>>522
単なるサンプリングをクロック再生とは言わないと思われ。(w
524名無しさん@1周年:03/01/05 15:36 ID:W6uIgw/L
>>523の言う通り、単なるサンプリングをクロック再生とは呼ぶことはないよね。
でも、「どのタイミングでデータを取り込むかというのを決める」のはクロック再生そのものだよね。
525518:03/01/05 20:59 ID:K1FsiApP
理屈上は送信の方が簡単だということはわかってたんですが、
HDL(今回はVerilog使いました)に慣れていないこともあって
あちこち落とし穴にハマり、2日かかってしまいました。

でもなぜか、受信は2時間足らずでできてしまったという…

お前ら、コメントありがとうございました
まあ、もまえら、もちつけもちつけ
526名無しさん@1周年:03/01/06 20:34 ID:BcGpro3s
>、「どのタイミングでデータを取り込むかというのを決める」のはクロック再生そのもの
だよね。
クロック再生というよりリサンプリングかな?
ディジタル無線なんかの同期検波のクロック再生って言うのは受信信号に対して、同期
信号パターンとの相関とって、Peak探して、複数フレーム間の相関Peak to Peakを平均
して、さらにフレーム内でも前半と後半では微調整して、フレーム間隔の伸び縮み、
サンプリングクロックデューティの伸び縮み、原振の精度云々・・・受信側と送信側が
それぞれ独立なクロック、勝手な精度(ppm)で動いてるものをクロックもストローブも無
いデータ信号だけから同期捕捉、追跡するのがすごく面倒なわけ。受信側は自分の原振
から作ったサンプリングクロックを信用できないので、いかにして送信側に合わせてや
るかに配慮しないといけない。UARTの回路構成とは根本的に違うように思うyo。
 受信っていうのは、ひとりよがりじゃ駄目で、規格内の周波数やクロックのずれのあ
る送信に対して正しく同調できなきゃいけない。ディジタル屋、ロジック屋は、同期〜
誤り訂正では送信よりはるかにやることは多いと思う(圧縮なんかは逆でエンコーダの
方が大変だ罠)。
でも、アナログ屋に言わせると、送信っていうのは単純構成で触るところが少ないので
逆に難しいって言う人もいるyo

527名無しさん@1周年:03/01/06 23:40 ID:RtUrCrkr
>>526
いったい何がいいたいねん?
だらだらだらだら薀蓄をたれたがるだけの役立たず隠居ジジイは氏ね
528名無しさん@1周年:03/01/06 23:54 ID:BcGpro3s
>>527
よう!コード書くだけの外注屋元気かい?
529名無しさん@1周年:03/01/07 00:31 ID:Ippq5eQM
移動体無線通信の場合、マルチパスだのフェージングだのドップラー効果だのあるから
クロック再生は難しいよね。
UARTとかEthernetとかの有線の非同期シリアル場合のクロック再生は簡単だよね

でも、どっちもクロック再生だと思うけどどうよ?
530名無しさん@1周年:03/01/07 00:49 ID:w8sQnI2l
>>528
元気だ。


か び の 生 え た 薀 蓄 頑 固 ジジイ は 市 ね
531名無しさん@1周年:03/01/07 01:32 ID:5AxCOcY4
>>530
アホの一つ覚えかい?
ボキャブラリ貧困だねぇ。
勉強しなくて大手に就職できなかったんだからせめて社会に出てからは
勉強に励めよ。次から次から転職繰り返さずに一ところに落ち着いてな!
いつまでたっても安月給でデフレスパイラルに貢献してんじゃねぇぞ
532名無しさん@1周年:03/01/07 02:55 ID:y1wGLdNi
>>530
>>531
どっちもウザイよ。最悪板でやってこいタコ。
533名無しさん@1周年:03/01/07 12:27 ID:0ukjUA5N
生半可な技術しかなくてリアルで相手にされてない香具師ほど、
こういうところで偉そうにするんだよなあ。。。
534名無しさん@1周年:03/01/07 15:41 ID:kSa/rDxP
どうしてもできない所があってご助言おながいします
仮に10bit(想定では64)の入力があって1つだけ"1"が立っています。
他の入力として3が与えられたとすると
10bitの入力が00000_10000とすると出力を00111_10000と入力の3に対し
1の立ってるところから上位に3つ1を立てるという動作をさせたいのですが
どのような記述法がいいでしょうか?
535名無しさん@1周年:03/01/07 16:08 ID:nXNFsMly
>>534
全条件をcaseで記述せよ
536名無しさん@1周年:03/01/07 20:08 ID:tmGSUuYB
>>534
すまん日本語が理解できん。
537名無しさん@1周年:03/01/07 20:10 ID:5AxCOcY4
>>535
もうちょっとちゃんと聞きただせよ。
10bit入力と他方の入力は何bitなんだ?4bitでいいのか?
なら全て記述すると2^14通りだわな。
538名無しさん@1周年:03/01/07 20:12 ID:5AxCOcY4
>>536
このていどが理解できないと仕様書なんか読めんぞ。
539名無しさん@1周年:03/01/07 21:36 ID:lnJ+Ke7+
>534
10bitと4bitなら、上位ビット側はDon'tCareとかOtherで誤魔化せば
組み合わせは少ないかもしれんが…

想定では64bitだとすると、もう一方は6bitか?
書けても合成できるか心配…
#そんな深いCaseは無限のメモリと時間が必要な気がする。
動作速度もワカランし。

マルチステージみたいにして、
何ビットの1が必要なのかを作り出すステージと、
それを指定されたビットの上位にはめ込むステージと
分ければ出来そうか?
540名無しさん@1周年:03/01/07 23:35 ID:5AxCOcY4
>想定では64bitだとすると、もう一方は6bitか?
>書けても合成できるか心配…
こんなもんを羅列するのはそれこそ単なる馬鹿だろう?
だから適切なロジック考えてくれってことだろうな。
最適なロジックは知らないけど、ここは素直に
10bit入力のほうはMSBからbit9,bi8・・・を順番にチェックしていって初め
て1になるビット位置を覚えといて、そのビットより上位ビットを"他方の入力"の示す
ビット桁数分だけ順番に反転してやりゃどうよ?書くだけならそう難しく
ないんじゃないの?
541名無しさん@1周年:03/01/08 00:17 ID:lU1HbcXV
>>540
そんなこともわからんヤシに正攻法を説明しても無駄。
シコシコと64bitのcase文を書いているほうがマシでしょう。

マジに考えれば、数分でロジックが頭に浮かぶでしょ、ふつー。
順番にチェックしたりする必要なんてないよ。
542   :03/01/08 00:20 ID:fOs6yNvO
assign out = ((64'b1 << (n+1)) -1) * p ;
543名無しさん@1周年:03/01/08 00:45 ID:V5J/G2yS
よーし、パパ、宿題にマジレスしちゃうぞ

module foo( dout, din, shift );
parameter WIDTH = 10;
parameter BITS = 4;
input [WIDTH-1:0] din;
input [BITS-1:0] shift;
output [WIDTH-1:0] dout;

integer i;
reg [WIDTH-1:0] dout_r[WIDTH-1:0];
always @(din) begin
dout_r[0] = din;
for (i = 1; i < WIDTH; i = i + 1) begin
dout_r[i] = dout_r[i-1] | (dout_r[i-1] << 1);
end
end
assign dout = dout_r[shift];
endmodule
544某記事筆者:03/01/08 00:50 ID:tX76lE0A
>>543
おれもこれが正解だとおもふ
545名無しさん@1周年:03/01/08 00:57 ID:di2vfhTM
回路を想像すると樹形構造のビットスライスアダーになるかな?
ま記述によってできあがる回路は違ってくるだろうが。
546名無しさん@1周年:03/01/08 01:06 ID:Bu0EyI0+
>>545
アダーなのか??
547名無しさん@1周年:03/01/08 01:11 ID:6v9tbJTI
>>542の方法は
少し変えるだけでパイプライン化できるから
ヨイとおもう。。。
548名無しさん@1周年:03/01/08 02:02 ID:beH9zT5/
いーなぁVerilogはすぐ書いてみようって気になるもんね
549名無しさん@1周年:03/01/08 02:03 ID:AHtJ3xAk
>>546
ビットがどの位置にいくつ立つか書かれてない以上全部の
入力をチェックする必要があるのではないかな?
550名無しさん@1周年:03/01/08 02:14 ID:beH9zT5/
>仮に10bit(想定では64)の入力があって1つだけ"1"が立っています。
よくよく読み返してみれば、はじめから1の立ってるビット位置が
わかってるんじゃないのか?それなら10bitを入力にするんじゃなくて
1であるビット位置そのものを入力にすべきだし、
そうじゃなくて、はじめからどこが1かわからずとも、1がたってるのが
1bitだけであることがわかってるなら10個のcase並べるだけでいいよね。
551534:03/01/09 00:12 ID:JQ3gusWS
皆さんありがとうございます。
初めての回路設計で行き詰ってしまい苦しい所をありがとうございます。
とくにパパ(>>543)ありがとう。
人づてに論理合成はif文やらfor文をあまり使わないようにといわれていた気がしたのですが
こう書いてもOKなんですね…。
DQNなのでCASE文で本気で書こうとまで思い悩んでいました。問題はいくつか残っていますが。
謝辞のページには何とか縦読みでも駆使して2chなりVerilog&VHDLスレなどを
組み込みたいと思います。。。
>>550 1の立ってる位置は決まってなくて64通りあります、説明下手ですみませんでした。
verilogが終わっても別の回路のフルカスタム設計が待っている罠((( ;゚Д゚)))ガクガクブルブル )
552名無しさん@1周年:03/01/09 00:42 ID:Fx2a+IU6
>551
謝辞??
学生というか、課題だったら、もう少し試行錯誤をした方が…
悩むのが課題で、答えを単純に聞き出しちゃ、まずいっす。
せめて、試行錯誤の成果をアピールする表現を加えて
質問するとか(w

仕事で謝辞なんか無いし、縦読みで2chが出てきたら
それはそれで面白いが。
縦読みの埋まった仕様書…
553名無しさん@1周年:03/01/09 00:46 ID:NTRNGmeB
↑ながながと内容のない書きこみだね。マジで頭悪そう
554名無しさん@1周年:03/01/09 01:07 ID:tapUmvMB
このスレの住人は
 ・HDLが書ける
 ・HDLを読めるが書けない。でも、煽りは書ける
の二種類に分かれるね。
555名無しさん@1周年 :03/01/09 01:48 ID:89z/ZR63
>554
もうひとつ追加
・HDLは見たことがないが、煽りは書ける
の3種類にわかれる。
556名無しさん@1周年:03/01/10 01:08 ID:kw1/Hqeh
always @(posedge a or negedge b)
begin
if(a==1)
c<=0;
else if(b==0)
c<=1;
end

論理合成でエラーが出てしまいます。
どうにかしてこれと同じ動作が出来ないでしょうか。
557 :03/01/10 01:21 ID:1HErU7jw
どの合成ツールを使っていて、どういうライブラリを使っていて、どういうメッセージが出てるのかい?
558名無しさん@1周年:03/01/10 02:13 ID:MWxKxRBg
素直に4046買うべし
559名無しさん@1周年:03/01/10 02:16 ID:DvbMsX5y
>>556
ふつーのデバイスではクロックとリセットしか書けねーんじゃネーノ?
560名無しさん@1周年:03/01/10 02:32 ID:MWxKxRBg
ヒマなので作ってみた。VHDLダケド
architecture rtl of himadayo is
signal deta, detb : std_logic;
begin
process (a, detb)
begin
if (deta = '1') and (detb = '1') then
deta <= '0';
elsif rising_edge(a) then
deta <= '1';
end if;
end process;
process (b, deta)
begin
if (detb = '1') and (deta = '1') then
detb <= '0';
elsif falling_edge(b) then
detb <= '1';
end if;
end process;
c <= (deta and not detb) or (detb and not deta);
end;
561名無しさん@1周年:03/01/10 14:49 ID:tKmU6vVS
VHDLなんでこんなに長いの?
どうしても好きになれない
562名無しさん@1周年:03/01/10 15:07 ID:G2vDo77n
VHDLがいいのVerilogがいいのと必死こいて論争してるうちは、はっきり言って素人。
両方使い込んだ人はどちらだって本能的にタイプできるから、長いの短いのなんてことは最早脳裏に浮かばない。
VHDLでもVerilogでも、それが好きになれないのは、1秒触っただけなのにもう全部分かったような気になって、まじめに使ったことはないからにすぎない。
563名無しさん@1周年:03/01/10 15:45 ID:bQib+QrO
>>562
ただ、長くやってると好みは出てくるよ。
行が長いから嫌いってことにはならないけど。

VHDLのtextioの利便性がVerilogにあればなぁ、といつも思う。
564名無しさん@1周年:03/01/10 16:55 ID:8BNChBBV
>>563
逆に俺の場合はVerilogのPLIがVHDLでも用意されていればと思う.
FLI経由でVC++にリンクできるって言うのは知っているけれど,そこにたどり着く
までの手間を考えたら,VHDLであってもMODELSIMで$dumpvars()とかつかえたほうがいい.
565名無しさん@1周年:03/01/10 17:21 ID:bQib+QrO
>>564
PLIがVHDLに欲しいのは同感。

でも、Modelsimに$dumpvars には要らんと思うけど。
write listすれば済むし、動的にダンプしたいならtextioで出来るような。
566名無しさん@1周年:03/01/10 22:14 ID:MWxKxRBg
>>556のverilogも、合成できるように書けば長くなると思う。VHDLほどではないにせよ。
ちなみに>>560のVHDLを、合成できないような書き方にするとこう。
process (a, b)
begin
if rising_edge(a) then
c <= '0';
elsif falling_edge(b) then
c <= '1';
end if;
end;
567名無しさん@1周年:03/01/11 01:23 ID:ezDBPDaC
>>556 はRSラッチをつくりたいんでしょ?
DesignCompilerなら// synopsys async_set_reset "a,b"
を付けてやってみたら?
プライオリティがついてるから余分な回路がつくと思うけど。
568山崎渉:03/01/11 08:06 ID:VbIZyBkm
(^^)
569名無しさん@1周年:03/01/11 20:05 ID:W9HHRBhZ
素直に同期設計しろよ
570名無しさん@1周年:03/01/12 21:40 ID:+9peilIg
>>569
クロック同期のお手本回路しか使わない学生さんでつか?
571名無しさん@1周年:03/01/13 02:14 ID:Q/L75HZE
>VHDLでもVerilogでも、それが好きになれないのは、1秒触っただけなのに
>もう全部分かったような気になって、まじめに使ったことはないからにす
>ぎない。
おう!!流石日々の糞ルーチン仕事をこなすだけのデジタル土方は、何の
問題意識も持たんようだな。そりゃお前ごときが問題意識持っても日銭
稼げんだろうよ。
VHDLもVerilogも言語仕様としてあまりにもpoor過ぎるからCベースなんての
が登場する羽目になるわけよ。実際begin〜end, then なんて邪魔なだけ。
572名無しさん@1周年:03/01/13 03:04 ID:rVf9jLYe
>>571
ふーん、begin end then があると言語仕様としてpoorなんれすか?
Cベースが登場するのは begin end then があって記述が長いかられすか?ふーん。











素 人 は 引 っ 込 ん で ろ
573名無しさん@1周年:03/01/13 08:09 ID:HpIrAX6J
>>571
わらった

そんなの構造化エディタ(死語?)の仕事だろ。HDLの文法がpoorなのではない。
メモ帳程度のエディタしか使えこなせない>>571がpoorなだけ。
574名無しさん@1周年:03/01/13 11:17 ID:w0YQFnlO
>556
always @(posedge a or negedge b)
begin
if(a==1'b1)
c <= 1'b0;
else if(b==1'b0)
c <= 1'b1;
end
575名無しさん@1周年:03/01/13 13:39 ID:rhed3WR1
>>570
大規模回路になると回路の端々まで目が届かないから
チューニングがし辛いのが現実ではないか?

納期に余裕があるか、全部の回路を把握できる程小さい
回路なら別だが。
576   :03/01/13 13:46 ID:d8AttgPP
なんでここの人はすぐ他人を罵倒するんですか?
HDL設計ってストレスがたまる仕事なんですか?
577名無しさん@1周年:03/01/13 14:55 ID:5ZrA9egg
ソフト屋だからじゃない。ハードを扱ってても言語を使うと
ソフト屋気質が出てくるのが面白い。
578名無しさん@1周年:03/01/13 17:22 ID:rVf9jLYe
>>576
ここの人がっていうより、たまたま馬鹿が1人か2人いるだけだと思うけど w
579名無しさん@1周年:03/01/13 17:26 ID:ubBQ+EX3
>>578
その通り。
よほど鬱屈した人生だと推察される。
580名無しさん@1周年:03/01/13 23:26 ID:Q/L75HZE
V*HDLをまともな言語だというソフト屋はいないね。
まともじゃないからCベース言語が期待されてる。

>HDL設計ってストレスがたまる仕事なんですか?
所詮下請け企業の従業員。まともな奴はいない。
581名無しさん@1周年:03/01/13 23:37 ID:jRqB4gvs
たしかに「仕事を受けてあげている」って意識の
DQNは多い。はぁ。。。
582名無しさん@1周年:03/01/13 23:39 ID:HpIrAX6J
回路設計の言語としてはC言語ベースはHDLよりも筋悪すぎだろ。
確かにHDLはテストベンチ用の言語だから回路設計には向かない面もあるけどCよりはマシ
583名無しさん@1周年:03/01/14 00:06 ID:H+RkH+Iu
回路設計という考え方ではなくて、ビヘイビア記述としてCベースが求められている。
回路は人が考えるのではなくて論理合成ツールにお任せしますって感覚じゃないの?
人が特に回路を記述したい部分はソフトコンパイラのasmに相当するものを用意すれば
いいんじゃないかな?でもHDLじゃハードと一対一で対応してるフィールがないからな。
直接ネットリストでも取り込むとかね。
584名無しさん@1周年:03/01/14 00:11 ID:EnUyzBiK
>V*HDLをまともな言語だというソフト屋はいないね。
>まともじゃないからCベース言語が期待されてる。

beginやらendやら、妙に言語の見かけの外面にこだわるなと思ったら、お前やっぱりソフト屋か。
回路設計の言語で、言語の外面なんか後回しなんだよ。そんなことより回路が作れるかがはるかに問題なんだから。

今この瞬間Cベース設計ってのは、ハード屋から見ればろくでもない回路しか作れず、ソフト屋から見ればハードを
知らないと使えないという、中途半端な代物なんだよ。当面は期待できない。




それくらいは勉強しておけ、ソフト屋の
 素 人 ち ゃ ん
二度と来るな
585名無しさん@1周年:03/01/14 01:31 ID:H+RkH+Iu
>DQNは多い。はぁ。。。
その典型か-> >>584

まともな回路を作るっていうならスケマに勝るものはない。それじゃ
生産性が上がらないからHDL書いてるわけよ。
ところが、HDL自体に回路と1対1に対応する部分が見えない。それが最大の問題だ。
HDLの記述してて回路を設計してるっていう意識持てるか?スケマ書いてると
きはそうじゃなかった。今のHDLは回路を設計してるっていうよりやっぱりビヘイビア
を記述してる感覚が強い。もっとビヘイビアに特化した部分と回路に特化した部分の
両方を記述できる必要があるな。
586名無しさん@1周年:03/01/14 02:07 ID:7X6Dtj7s
>>585
ビヘイビアを記述できるHDLってもうあるの?
Verilog HDL も VHDLもまだRTLだと思ったけど??
587名無しさん@1周年:03/01/14 02:26 ID:H+RkH+Iu
ビヘイビアっていうのは振る舞いの意味。
シミュレータで確認する段階はビヘイビアレベルの記述ってこと。
588名無しさん@1周年:03/01/14 02:31 ID:fgjfBVvG
>586
VHDLは元々その為の言語だと思われ。
589名無しさん@1周年:03/01/14 08:03 ID:KKmFabR5
> VHDLは元々その為の言語だと思われ。
まさにその通り。
しったかぶりの知識で、マイ論理を押し付けている連中、うざい。
590名無しさん@1周年:03/01/14 08:57 ID:EnUyzBiK
>HDLの記述してて回路を設計してるっていう意識持てるか?スケマ書いてると
>きはそうじゃなかった。もっとビヘイビアに特化した部分と回路に特化した部分の
>両方を記述できる必要があるな。

ばーか、両方できるじゃん。HDLが最上の開発環境とは決して言わんが、それ以前にお前のHDLの理解はそうとう酷いな。
ろくに使った経験がないのが文から見え見えだぞ(藁
ビヘイビアからの合成が実用になったらCへ以降するだろうが、並列処理の記述と合成品質にまだまだ問題がある。
だからCが簡単に広まらないし、HDLのビヘイビア記述もベンチでしか使わないの。
それくらい知っとけな。
591名無しさん@1周年:03/01/14 09:53 ID:+UuHrhoi
> ビヘイビアからの合成が実用になったら

なりません
そんなの大学の研究屋のネタに過ぎないでしょ
592586:03/01/14 10:17 ID:bYvrR765
>>588
585は論理合成可能な回路についての言及と読める。
このレベルのビヘイビア記述が今、できているのか??

>>590
全く同意です。

>>591
あまり簡単に「できない」って言わない方がいいよ。
593名無しさん@1周年:03/01/14 14:07 ID:57fZQTUq
HDLを不完全だと感じる事はあっても、無い物ねだりをして使えない
なんて事を言う奴は、言語を使ってるんじゃなくて使われてるだけ
じゃないの?
そもそも、両HDLを使っていて出来ない記述がある時点で仕様に
問題があるか仕様をかみ砕いて記述できない本人の能力不足が
大きいのではないかと思うね。

それにしても何となくでも回路を意識せずに回路を「記述」して良い
ものなのか?
594名無しさん@1周年:03/01/15 01:28 ID:bu8NM8mS
どーでもいいじゃん(汗)
595名無しさん@1周年:03/01/16 00:43 ID:KLCnfV11
アセンブラを不完全だと感じる事はあっても、無い物ねだりをして使えない
なんて事を言う奴は、言語を使ってるんじゃなくて使われてるだけ
じゃないの?
そもそも、アセンブリ言語を使っていて出来ない記述がある時点で仕様に
問題があるか仕様をかみ砕いて記述できない本人の能力不足が
大きいのではないかと思うね。

それにしても何となくでもインストラクションを意識せずに
プログラムで「命令」して良いものなのか?
596名無しさん@1周年:03/01/16 00:45 ID:KLCnfV11
吉○家のメニューを不完全だと感じる事はあっても、
無い物ねだりをして「ねぎのみ」なんて事を言う奴は、
牛丼屋を使ってるんじゃなくて使われてるだけじゃないの?
そもそも、吉・松 両牛丼屋を使っていて牛丼を食わない時点で味覚に
問題があるか牛肉をかみ砕いて咀嚼できない本人の能力不足が
大きいのではないかと思うね。

それにしても何となくでも混入した肉片を意識せずに
「肉抜き」をオーダーして良いものなのか?
597名無しさん@1周年:03/01/16 01:23 ID:JnunQhyo
595はEDA業者
Cがまだとても使える状況じゃないと言われたのが、よっぽどくやしかったんだね(藁
598名無しさん@1周年:03/01/16 01:42 ID:13uM+aId
>並列処理の記述と合成品質にまだまだ問題がある。
現状のHDLが並列処理の記述が十分か?そもそも人間の頭のほうが並列処理に向いて
ないじゃんか?
ソフトでもマルチプロセッサのプログラムなんてすごく難しいように思うけどな。
アセンブラじゃとても無理でコンパイラにお任せって部分が多いように思う。
HDLでも記述時点ではよくわからないけど、スケジューリングをコンパイル時に
やってくれてはじめて人間が"あーこうなってるんか”って理解できるんじゃないの?
599名無しさん@1周年:03/01/16 01:59 ID:JnunQhyo
マルチプロセッサの並列処理の難しさと回路を作るときに使っている並列処理の難しさを
混同しないようにしようね。
今は人が十分理解して使いこなせる程度の並列性すら、まともに記述も合成もできないの。
だからロクに使われてないの。










想像で詭弁考えてごたく並べてる暇があったら少しは回路の実際を勉強しる、素人
600名無しさん@1周年:03/01/16 02:06 ID:/SQRgc2+
>>598
釣り師にしては、荒すぎ。(w
マジレスなら痛すぎ。もうちょっと勉強してくれ。
601名無しさん@1周年:03/01/16 02:43 ID:HNvNZvr+
Verilogの並列処理記述なんて、fork...joinと代入を遅延で遅らせられるところぐらいじゃん。
あとは>>598の言うとおりスケジューラが並列に動いているように見せてくれるだけ。

自前でスレッド立てられればそれで済むし、柔軟性がある。
その変わり同期にからむ諸々の問題を抱え込むことになるから
注意深くコーディングしなければならないけど、
クロック同期のRTLで書く分にはHDLと同じ考え方で良い。

HDLの並列処理記述が優れている言うヤシは何を根拠にしている?
ノンブロッキング代入か?(確かに便利だけど)
602名無しさん@1周年:03/01/16 07:53 ID:13uM+aId
>マルチプロセッサの並列処理の難しさと回路を作るときに使っている並列処理の難しさを
>混同しないようにしようね。
大爆笑
603名無しさん@1周年:03/01/16 10:27 ID:pYwIDrBZ
回路の事を知らない奴が、ソフトでハードが作れるからハード屋は
失業するねなんて言って失笑されるパターンって今でもあるんかな?
604名無しさん@1周年:03/01/16 10:38 ID:vo2+4wyJ
C言語もどきで書きにくいのはパイプラインとかデータパスかな
これはHDLの方がずっと楽
605名無しさん@1周年:03/01/16 10:56 ID:q6FSh6VY
>>603
腐るほど沢山あるぞ。598=603みたいなツール屋がセールストークとして言ってる場合も多い。
絵に描いた餅だけはいつも立派(藁
セールスの屁理屈を考えてるくらいなら、早く使えるツールを見せにこいよな。

>>601
HDLの並列記述が優れていると言っている奴はここにもいないぞ。Cもどき<<<<HDLだというだけだな。
606名無しさん@1周年:03/01/16 10:57 ID:q6FSh6VY
598=602だった、すまん > 603
607名無しさん@1周年:03/01/16 12:17 ID:C6L9xjOM
>>598 >現状のHDLが並列処理の記述が十分か?
>>601 >Verilogの並列処理記述なんて、fork...joinと代入を

590氏は「合成可能な回路」の並列処理記述にまだ問題があると言っているのであって、
テストベンチの並列処理記述について言っているのではない。
良く読んでカキコしようね!
608ボキャ貧技術屋2年目:03/01/16 20:04 ID:MkZzQiZT
レベルのひくーい技術論





あおり一発
もう飽きたんだよ。あふぉの一つ覚え。技術屋2年目の僕ちゃんよ
609>>590 ボキャ貧技術屋2年目:03/01/16 20:07 ID:MkZzQiZT
590=・・=599
610名無しさん@1周年:03/01/16 21:44 ID:0g4+jst9
>>596
どの言語を使っても、所詮ファストフード、ジャンクフードの牛丼という認識には
激しく同意。W
611名無しさん@1周年:03/01/16 23:02 ID:juzfCDGq
>>>591
>> ビヘイビアからの合成が実用になったら
>
>なりません
>そんなの大学の研究屋のネタに過ぎないでしょ
ビヘコンは?
使っている人の意見お願いします。

Cベース設計に関しては
583の言っている事が一番マッチしていると思います。

612名無しさん@1周年:03/01/16 23:09 ID:ZgBWipfq
>そもそも、吉・松 両牛丼屋を使っていて牛丼を食わない時点で味覚に

俺はいつもカレーなんだけどな。ってなことはどーでもいいんだったな。

並列動作させっぱなしのHDLと違って、高級プログラミング言語では
並列動作開始後後のリソースが衝突しないようにだとかの管理のために
セマフォだとかスレッドだとか用意されている。それらもHDLで有って、
合成ツールが対応していれば確かに楽になるとは思う。(自分で
衝突回避のシカケを書いていたところを、セマフォの記述から勝手に
衝突回避のハードを合成してくれりゃ楽だしな、ついでに与えた制約
からして衝突がありえない場合、それを勝手に削ってくれたり、複数の
セマフォを1つに束ねてくれたら更に楽だ。)

まあ、並列コンピュータの研究とかパッとしないことからして難しいんだと
は思うが。
613名無しさん@1周年:03/01/16 23:13 ID:ZgBWipfq
>ビヘコンは?
>使っている人の意見お願いします

出力後のRTLがちょっと人が読むには難があるのがな。
読むのに難が有る−>誰も読まない−>質を評価できない。
ってところかな。いずれは必要になる技術だとは頭では思っているには
違いないんだが。
614612&613:03/01/16 23:14 ID:ZgBWipfq
あっ、でもゲート数とかのパイプライン効率とかの基準ならとても
良いツールだと思うよ。
615世直し一揆:03/01/16 23:27 ID:BhI/zA0Q
<血液型A型の一般的な特徴>(見せかけの優しさ・もっともらしさ(偽善)に騙されるな!)
●とにかく気が小さい(神経質、臆病、二言目には「世間」、了見が狭い)
●他人に異常に干渉する(しかも好戦的・ファイト満々でキモイ、自己中心)
●自尊心が異常に強く、自分が馬鹿にされると怒るくせに平気で他人を馬鹿にしようとする
(ただし、相手を表面的・形式的にしか判断できず(早合点・誤解の名人)、実際にはたいてい、内面的・実質的に負けている)
●「常識、常識」と口うるさいが、実はA型の常識はピントがズレまくっている(日本の常識は世界の非常識)
●権力、強者(警察、暴走族…etc)に弱く、弱者には威張り散らす(強い者に弱く、弱い者には強い)
●あら探しだけは名人級(例え10の長所があってもほめることをせず、たった1つの短所を見つけてはけなす)
●基本的に悲観主義でマイナス思考に支配されているため、性格がうっとうしい(根暗)
●一人では何もできない(群れでしか行動できないヘタレ)
●少数派の異質、異文化を排斥する(差別主義者、狭量)
●集団によるいじめのパイオニア&天才(陰湿&陰険)
●悪口、陰口が大好き(A型が3人寄れば他人の悪口、裏表が激しい)
●他人からどう見られているか、体裁をいつも気にしている(「世間体命」、「〜みたい」とよく言う)
●自分の感情をうまく表現できず、コミュニケーション能力に乏しい(同じことを何度も言う、知障)
●表面上意気投合しているようでも、腹は各自バラバラで融通が利かず、頑固(本当は個性・アク強い)
●人を信じられず、疑い深い(自分自身裏表が激しいため、他人に対してもそう思う)
●自ら好んでストイックな生活をし、ストレスを溜めておきながら、他人に猛烈に嫉妬する(不合理な馬鹿)
●執念深く、粘着でしつこい(「一生恨みます」タイプ)
●自分に甘く他人に厳しい(自分のことは棚に上げてまず他人を責める。しかも冷酷)
●男は、女々しいあるいは女の腐ったみたいな考えのやつが多い(他人をけなして相対的に自分の立場を引き上げようとする等)


それと、O♀はエコヒイキきつくて、冷酷だからな。

A♂の異質排除×O♀の冷酷=差別・いじめ とあいなる。
616名無しさん@1周年:03/01/17 00:15 ID:yDs2rXMD
>>611
使い物になっていて、良いものならとっくに普及していると
思われ。やはり生成される回路の質はRTLにはかなわないよ。


Cと言えば普通のC(純粋にVCとか)を、アルゴリズム検証に使い、
回路のエミュレータを作ったりしていたよ。エミュレータに期待値を
吐かせ、それをRTLに食わせて回路を検証するってな開発をして
いたから、その辺りがシームレスになる事を期待したいね。

ま、CでもなんとかRTLは書けるから環境を一本化できるメリットは
現状でもあるかも知れないがそれだとメリットが全然無いよね。(w
617名無しさん@1周年:03/01/17 01:03 ID:WBPAEtoH
>>604
>C言語もどきで書きにくいのはパイプラインとかデータパスかな
>これはHDLの方がずっと楽

HDLってパイプライン書きやすいのかな?
process begin
 @(posedge clk);
 p[0] = func0(in);
 @(posedge clk);
 p[1] = func1(p[0]);
 @(posedge clk);
out = func2(p[1]);
end
みたいに書くのが一番直感的で分かり易いし、
論理合成を試しながらパイプライン段数を調整するのもやり易いとおもうんだ
けど、上の書き方でVerilogでtaskをつくっても、絶対並行動作できないから
テストベンチでしか使えない。

毎クロック、スレッドが立てられれば、単一クロックでイベント待ちしている
限り上の記述はRTLと意味的に等価で、
VerilogタイプのRTLにも間単に変換できる。
(非同期リセットの記述方法は別に考えるとして)

にも関わらず上の記述を合成ツールにそのまま突っ込んだり、
サイクルアキュレートな回路モデルとして使えないのは、
ツール作成の難しさというよりもVerilogの言語としての並列記述能力が
ネックとなっているように思えていつも歯痒い。

低レベルな話でスマソ。
618名無しさん@1周年:03/01/17 02:41 ID:Z6JMRFT7
つまりVerilogは信号属性をalwaysの頭にしか記述できないってことが根本
原因ということなのかな?
619名無しさん@1周年:03/01/17 02:54 ID:yDs2rXMD
確かにVHDLみたいに信号とその変化を記述する方が
理にかなっていると思われ。
センシティビティーリストなんてその典型ではないかな。

ワイヤー、ラッチで信号を定義する言う概念は少々回路
よりなのかも。
620山崎渉:03/01/18 14:05 ID:8FQ0dRpX
(^^)
621名無しさん@1周年:03/01/21 19:09 ID:jhIdRGpj
verilogでパイプラインを実現させようと思ったらどうかけばいいの?
622名無しさん@1周年:03/01/21 21:11 ID:c7aVJKaZ
>>621
回路を意識してRTLで幾らでも書ける。
623名無しさん@3周年:03/01/21 23:08 ID:UEHwWdlu
>>621
622が正しい。パイプラインレジスタを置いてパイプ間の回路を書けばそれで終わり。

回路がまったくイメージできないプログラマは記述の仕方がどうのこうのと言いたがるに違いないが、
ちょっとでも回路がイメージできるなら、はっきり言ってどうとでもできる。何の問題もなし。
624名無しさん@3周年:03/01/22 01:54 ID:EdPGFjGV
>>621
あんまりいい例でないけど>>617のインチキ記述をRTLにすると、
parameter WIDTH=32;
parameter DEPTH=3;
reg [WIDTH-1:0]p[DEPTH-1:0];
always @(posedge clk) p[0] <= func0(in);
always @(posedge clk) p[1] <= func1(p[0]);
always @(posedge clk) p[2] <= func2(p[1]);
普通はこれにコントロール系の入力とリセットが加わります。

ここで2段目のF/Fをショートカットしてレーテンシを稼ぐ修正が入ったとすると、
漏れは
always @(posedge clk) p[0] <= func0(in);
always @(p[0]) p[1] <= func1(p[0]);
always @(posedge clk) p[2] <= func2(p[1]);
のように書き換えます。

まぁ、流儀は色々あるとおもうけど。
625名無しさん@3周年:03/01/22 03:59 ID:iI6I8dcE
つうか回路をある程度解らないとろくな回路が出来ないと思うよ。
特にパイプラインにはなったが速度が上がらないとかさ。
626名無しさん@3周年:03/01/22 07:55 ID:TqinTRY1
CPU設計するとき命令ってどれくらい必要だとおもうよ?
627名無しさん@3周年:03/01/22 19:05 ID:6GrxFV5w
>>626
んで,おまえはどれぐらい必要だと思うのよ.意見だしてから聞けよ.
628名無しさん@3周年:03/01/22 21:14 ID:jAcyTcFT
verilog-HDLの勉強をはじめたいのですが
入門用にはどんな本がお勧めでしょうか?

629名無しさん@3周年:03/01/23 01:19 ID:lsDFmTGZ
modelsimのtcl/tkで何してるよ。
630名無しさん@3周年:03/01/23 14:40 ID:zSvRNiQU
>628
そーいえば、verilogでお勧めの本って聞かないな
631名無しさん@3周年:03/01/23 15:12 ID:OIsqIByi
http://jsweb.muvc.net/index.html
     ★こんなサイト見つけました★
632名無しさん@3周年:03/01/23 15:23 ID:xqRKAedA
>>626
IDがTRYだね。
頑張ってみ。
633名無しさん@3周年:03/01/23 22:41 ID:6lr8r/BV
パタヘネ本だったかな、練習問題に1命令しかないコンピュータ
を紹介してる本があった。実用性はおいといて面白かったな。
634名無しさん@3周年:03/01/24 17:48 ID:dyWNCywi
>>627
うーむ、どれくらいだろ、馬鹿学生なんで本格的なものとか組んだことないから
わからんが、30くらいでアップアップ
635名無しさん@3周年:03/01/24 17:49 ID:dyWNCywi
>>632
貴殿もIDがedAですな
636アナログ屋:03/01/24 20:52 ID:TTVr4Hgw
回路回路って鼻息の荒い奴が多いな。
ロジック回路なんて単なる機能図じゃねぇか。
こんなのでエレクトロニクスをわかった気になるなよ。寂しくなるね。

下で待ってる
http://science.2ch.net/test/read.cgi/sim/1019407526/l50
637名無しさん@3周年:03/01/25 02:43 ID:E16QQYhf
>>636
じゃあお前マイコン設計できるか?
鼻息荒いのはお前の方だろ。
638名無しさん@3周年:03/01/25 12:00 ID:j5+5gBhE
>>637
思い切りレベルが低いな。
どの程度のマイコンを意味してるのか知らんが、
HDLだけで設計できるマイコンなんて所詮知れたもの。
そんなこともわからんところを見るとお前学生だな。
639   :03/01/25 23:04 ID:HE9Yn83n
>638
また変なのがやってきたなぁ。
まあPentium4がHDL(RTレベル)だけで書いてあるとは思わないが、
普通のマイコンはHDLで書いてあるぞ。
だとえばARM11、MIPS5Kシリーズはsynthesizableだ。
>638がこれらのプロセッサより優れたものを設計できるとでもいうなら
何もいう事はないがね。

640名無しさん@3周年:03/01/25 23:05 ID:oudQMXTc
>626
命令の量ってどうやってはかんの?
昔、勉強の為に0から作ってみたら、2週間で出来上がった。できた後にアセンブラを
作らないといけないことに気が付いて鬱。
もちろん、ALUをガリガリ作りこんだりしてない。8080程度のものを合成できる記述で
書いただけ。
641名無しさん@3周年:03/01/25 23:10 ID:oudQMXTc
>639
Pen4はバリバリの物理設計だろ。セルベースでも1GHzぐらいならなんとかなるが
642名無しさん@3周年:03/01/26 00:07 ID:sBY8G/8N
>>641
初心者ですみません。
物理設計、セルベースって何ですか?
643名無しさん@3周年:03/01/26 02:28 ID:S3oC219p
>>638
だから>>637は「まあPentium4がHDL(RTレベル)だけで書いてあるとは思わないが」と書いてあるだろ。
文脈をよく考えてレスしろよ。まさか100%セルベースで設計しているのか?設計にHDLつかわん話はないだろ。

最近ALTERA/XILINXスレもそうだが、脊髄反射のカス技術者が集まってきたな。

>>642
セルベースは初心者にはまったく縁のない、プロセスの話も絡む物理デバイスの種類を示すものだよ。
もっとレベルアップしたら自然にわかるから、いま知らなくてもいいよ。
ちなみに「物理設計」という言葉は意味不明。無視してよいかと。

644名無しさん@3周年:03/01/26 03:16 ID:5IeLm4BD
>>643
最近どうもすぐ煽る馬鹿がいるよね。
なんだか矢鱈にHDLを目の敵にしてけなしたがるんだが、よほど鬱屈してると見える。w
645639:03/01/26 04:53 ID:PKku53T/
>643
オレは>639だが>637ではないよ。

HDL設計やC言語設計を語るのに良い回路ができるかどうかばっかり語るというのはどうかねぇ。
検証環境やテストベクタの生成がこういった設計方式を用いることで
どう効率化されるかにも目をむけたらもう少しレベルの高い論議になるのでは。

あと>643のこの説明↓はなにかの釣りなんでしょうか??? マジレスしてはいけない?

>セルベースは初心者にはまったく縁のない、プロセスの話も絡む物理デバイスの種類
>ちなみに「物理設計」という言葉は意味不明。
646名無しさん@3周年:03/01/26 09:26 ID:Yq3aVNO8
試しにマジレスしてみたら
647名無しさん@3周年:03/01/26 13:13 ID:VEBz1xpj
>>643ってものすごいシッタカ君だな。高校生かなんかの釣り?
648名無しさん@3周年:03/01/26 15:02 ID:QP3A7Wu9
HDL設計者の多くは自意識過剰であることがよくわかるスレですな。
もちょっとマターリやりましょうよ。
649名無しさん@3周年:03/01/26 15:40 ID:kYjKNs7B
648に同意
つか、1の
>HDLを使った設計者のみなさん、記述方法で悩んでませんか?
>初心者からベテランまでカキコどうぞ。
からはかけ離れたな
650名無しさん@3周年:03/01/26 16:05 ID:5IeLm4BD
>HDL設計やC言語設計を語るのに良い回路ができるかどうかばっかり語るというのはどうかねぇ。
>検証環境やテストベクタの生成がこういった設計方式を用いることで
>どう効率化されるかにも目をむけたらもう少しレベルの高い論議になるのでは。

高位記述のそういう利点はみんな分かってるんじゃない?
検証でC++その他の記述を使うという方法は別に目新しいものじゃない。
必要な所では10年以上前からとっくに各自工夫してやっていること。
Cベース設計で議論されてるのは、それをどうやって世間で広く使える統一した方法にするかということ。
世間に広まるためには、合成でそこそこ使える回路が出せるというのは必須条件だから、
そこに関心が集中するのはいたし方ない。
HDLだって合成が使える品質になってようやく使われ始めたんだから、Cベースも同じこと。
合成がちゃんとしないと、高位で何をどう書いたところで絵に描いた餅。
651名無しさん@3周年:03/01/26 17:25 ID:b4OCW1PO
>>638
で君はそのレベルの低い「低速動作」のマイコンは書けるの?(w
口だけはデカそうだね。
652名無しさん@3周年:03/01/26 19:45 ID:Yq3aVNO8
煽る奴がいなければ、初心者がアホな質問しようがしったか君が恥かこうがマトモな
スレになると思うんだが。
アホもしったか君もここで少しでも賢くなれば良い。今まで回りにマトモな奴がいな
かったんだなぁと同情する余裕があってもいいと思う。



といってみるテスト
653新参者:03/01/27 03:43 ID:wkahfUkD
>>563
>VHDLのtextioの利便性がVerilogにあればなぁ、といつも思う。

ここはいかが?
ttp://chris.spear.net/pli/fileio.htm
654名無しさん@3周年:03/01/27 04:18 ID:/8jY6d8a
>>652
つうか煽りの内容を見ていると同情したくならないか?
所詮その程度かよ?ってさ。
まそう言う事だよ。
655名無しさん@3周年:03/01/27 05:13 ID:O9V6Gjft
-------------------------------------------
本日23:00時より祭りを開催いたします。
是非、参加下さいます様、お願いします。
携帯PHS
迷惑メールサイト一斉訪問お祭り開催
http://jbbs.shitaraba.com/news/bbs/read.cgi?BBS=853&KEY=1043335260
-------------------------------------------
656名無しさん@3周年:03/01/28 04:00 ID:i0RfMk87
HDL屋といっていいのかどうかわからんが・・・
1.何か専門分野をもっててそれを具現化するのにHDLという選択肢を使う香具師

2.専門がHDLで別にアプリケーションで専門といえるものがない香具師と
このスレはどっちが多いんだ?
2よ。それで満足してるのかな?
657名無しさん@3周年:03/01/28 04:02 ID:fNeFqp0g
>>656
2だとエンジニア的に終わってる。
658学生:03/01/28 20:11 ID:fZIWHjz5
VHDLってよく聞くのですが、これは何の為に
使うものですか?
また、どういった業種の人たちが使っているのですか?
LSIの設計とかに使うんですかね?
先輩方教えてください。
659名無しさん@3周年:03/01/28 22:14 ID:XDCUWAA2
>>657
ASICのベンダなどには2の仕事をしている人が大勢いる。
この前のリメイクではとてもお世話になった。。
660名無しさん@3周年:03/01/28 22:55 ID:/ZRCpANz
>>658
目的はVerilogと一緒。米軍に収めるときはVHDLでないとだめ。誰かもっと補足してくれ。

>>656
2は大企業にいっぱいいる。しかも大抵それで満足している。
漏れは657に同意。
661名無しさん@3周年:03/01/28 23:15 ID:IwQZwl8G
1.何か専門分野をもっててそれを具現化するのに牛丼という選択肢を使う香具師

2.専門が牛丼で別に日本料理が専門ではない香具師



別に牛丼オンリーでも世界一なら料理人として終わってはいないが
662名無しさん@3周年:03/01/28 23:20 ID:fNeFqp0g
>>661
牛丼は誰でも作れる
663名無しさん@3周年:03/01/29 01:38 ID:PoD5AiOa
>>656
大企業にいるエンジニアってゆーのは多くの場合アプリケーションエンジニアだ。
学校の研究室の延長上の配属先を希望する奴がやっぱり多い。
本人の意思がそのまま通らなくても全く畑違いの分野はやっぱり希望しない場合
が多いように思う。最近はHDL教える学校もあるけど、所詮は設計の一手法だもんな。
HDLだけ書いてる大企業のエンジニアっていうのは事業所毎に設置されたLSI設計を
一括して引き受ける部門だな。でもこの部門はけっしてメイン部門じゃないよ。それに
多くはここを経由して外部業者に発注される。
664名無しさん@3周年:03/01/29 22:12 ID:jCH02e87
んー、何で技術に貴賎をつけたがる香具師が多いのかな?
漏れはASICベンダ側の人間だけど、
逆に日本のLSI開発は一技術者に広く何でもやらせようと
し過ぎに思う。

各種規格書を斜め読みして仕様作って、
再利用に気を使う間もない速度でHDL書いて、
もちろん検証は設計者自身が自分で自分の回路をチェックして、
どっかからコピペしてきたスクリプトで合成・レイアウトして、
テストや評価設計するころには完全なデスマーチになって、
そのまま次の案件に突入する。

そんなだからアドホックなやり方で終始するし
各工程がタンデムに並んだウォーターフォールな開発プロセスから
脱却できない。
665名無しさん@3周年:03/01/29 22:12 ID:jCH02e87

開発スピードとスループットをあげるには、
工程別に各人の専門性を高めて効率化し、
プロジェクト毎に専門家を集めて各工程を一斉に始め、
有機的にコミュニケーションを取り合って、
さっさと開発して解散するのが一番だと思うんだけど、
専門家間で貴賎意識があると巧くいかない。

特に前工程>>後工程、アプリ>>インプリの意識があると、
実際、下流工程は上流工程の日程遅れの割をくって勤務もハードだから、
みんな上流をやりたがりローテションさせるため、
専門分野に対する人材の流動性が高く人もツールもノウハウも育たない。

もっと外注も含め、他の人の仕事をリスペクトすることが大切だと思う。

専門に集中しても、技術者なら自然に周りの技術・応用技術に
気が行くだろうから、専門バカになることはないと思うよ。
666名無しさん@3周年:03/01/30 01:34 ID:m/ONL2zv
>>665
いいこと言うね。
理想ですね、これは。
667名無しさん@3周年:03/01/30 21:01 ID:/un5tfpq
>665
>特に前工程>>後工程、アプリ>>インプリの意識があると、
>実際、下流工程は上流工程の日程遅れの割をくって勤務もハードだから、
>みんな上流をやりたがりローテションさせるため、
>専門分野に対する人材の流動性が高く人もツールもノウハウも育たない。

 こんなことやってる会社ってあるの?大企業2社経験したけど、こんな話聞いたこと無い。

>専門に集中しても、技術者なら自然に周りの技術・応用技術に
>気が行くだろうから、専門バカになることはないと思うよ。

漏れもそう考えてたけど、現実は漏れの周りは専門バカばっか。ウチの部署が
DQNなんかな?
668名無しさん@3周年:03/01/31 21:19 ID:iRXpWkyD
>>667
俺は665でないが、けっこう言えてると思う。

>特に前工程>>後工程、
人気とかはともかく、前工程のほうが高学歴(修士)が配属
される場合が多いよ。労働環境は重装備をしなければならない
前工程の方がずっと悪いと思うけどけどね。

>アプリ>>インプリの意識があると、
アプリ:営業・マーケ寄り、なのでこっちの意見のほうがどうしても
強いんだよねえ。

>専門分野に対する人材の流動性が高く人もツールもノウハウも育たない。
優秀な人ほどさっさと管理職になって現場離れるか、別の会社に
移るかしちゃうからなあ。結局、レースに勝ち残れなかった人達が
残っちゃうのよ。べつにそんなレースに勝ったからといって、そんなのは
どおってことは無いはずだけど、レースに勝てる人達のほうが頭の回転が
速かったり、何やっても要領が良かったり、何を言うにも説得力があったり
するからなあ。
669667:03/01/31 23:59 ID:PtDSccj4
うーん。俺が言いたかったのは、そうじゃないんだよね。
人気はともかくローテーションなんて無かったし、逆に専門性が高すぎて流動的にできない
方が問題になっていた。
個人的には自分以外の工程がしっかりしてるから仕事が成り立っていると考えていたんで、
好き嫌いはおいといて上下は考えたことは無い。
そういう人たちをうまく使わないといけない立場だったからかもしれんけど。
670663:03/02/01 04:54 ID:cM2BuRLR
>アプリ>>インプリの意識があると、
>>アプリ:営業・マーケ寄り、なのでこっちの意見のほうがどうしても
意味が伝わってなかったスマソ
アプリっていうのは直訳すると応用って意味だけど。
僕が意味してたのは専門分野って意味。
例えば、
画像圧縮を専門にしています
とか
CDMAを勉強して来ました
とかね。それを具現化する手段としてHDLも使うよ。ってな感じ。
害虫頼むにしても、一応HDL読めて仕様書も書けるというような
技術者が大手では多いってこと。

例えば(工程というより)仕事の流れでいうと

基礎研究->規格作るための研究->製品作るための研究->製品開発・設計->量産

言い換えると上の研究もこなせるエンジニアがアプリケーションエンジニア。
671名無しさん@3周年:03/02/01 16:12 ID:8hbzEkfk
アメリカファイザー社製バイアグラがどこよりも安い1錠900円!
大人気の超強力漢方バイアグラ「威哥王」、「蟻力神」もネット最安値でご提供しています!
漢方だから副作用無し、しかもその効果は驚異的。一晩中女性を悦ばしてみたいと思いませんか?

妊娠後49日以内であれば、錠剤を服用するだけで自分1人で簡単に中絶が可能なRU486。
1980年にフランスRoussel-Uclaf社により開発され、現在欧米では既に広く利用されていますが
日本ではまだ認可が下りておらず、国内では入手不可能です。
こちらのRU486を海外からどこよりも安いネット最安値でご提供いたします。

緊急避妊薬(アフターピル)や低用量ピル「マーベロン」、抗鬱剤プロザックも超特価!
女性用媚薬も各種取り揃えています。

http://www.kanpouya.com/
672668:03/02/02 00:13 ID:De8B8aDc
>>670
なるほど。
でも、むしろ、正常だと思う。アプリケーションあっての半導体だしね。
会社にしても、勝ち組みの会社は、そうゆう特化したアプリケーションを
持ってるか、強い企業と組んでいるところかだし。
インプリする側(下請けになる場合が多いだろうけど)も、独自のEDA
ノウハウでどこよりも高い生産性を誇るとか、中国やインドのエンジニアを
活用して他よりずっと安くできるとか無いとね。

HDLウンヌンは、今後は仕様書を日本語とか英語とかでなくてC言語やら
UMLやらで書くことが主流になるかもしれないし、それら一通りは身に
つけて置いたほうがよさそうだね。
673名無しさん@3周年:03/02/02 00:58 ID:akliX/K0
>>672
今更だが仕様書を書ける能力こそ設計者としての能力だろ。
674名無しさん@3周年:03/02/02 03:00 ID:FRUzB1/N
verilog関連サイトって少ないですよね(汗
海外のサイトにはいろいろあるみたいだけど…やっぱし英語は大変…

みなさんのお勧めするサイトとかってありますか?
675名無しさん@3周年:03/02/02 10:29 ID:Op2a3P2z
>>674
英語分からないのなら、WEBでちまちま探すような効率悪いことせずに
ベンダー講習会行けよ。
それとも学生か?
676名無しさん@3周年:03/02/02 14:46 ID:UUgdpu9b
>>675
すいません学生です
別に英語が全くわからないわけではないんですが、そんなに得意ではないということです
ベンダー講習会に行っても、多分ちょっと僕にはまだ高度かなぁって思ったりもしてます
まだまだ勉強勉強の段階です
677名無しさん@3周年:03/02/02 20:11 ID:0DwrDzye
>670
言いたいことは判ったが、一般的に言われるアプリケーション・エンジニアとは多分
違う。少なくとも中途採用の募集職種にかいてあるのとは。
678名無しさん@3周年:03/02/02 20:58 ID:Dd/QLFVu
オイそろそろ誰か例題出せや。
679名無しさん@3周年:03/02/03 19:42 ID:OhQqMzze
>>676
英語は必須だよ。
今でこそ、FPGA/PLD関連なんかは競争厳しいし、ASICとか異分野
との競争もあるしで、そっちの営業さんが懇切丁寧に教えてくれる
だろうけど、FPGA/PLDが1,2社に集約されたりしてきたら
果たしてそこまで懇切丁寧にしてくれるかどうか。それに、ASIC向け
EDAではマニュアル類は英語だけってのが大半だしね。

第一、最新の情報は英語でしか手に入らないし。
680名無しさん@3周年:03/02/04 00:41 ID:iyoluxTK
      マチクタビレタ〜   ∧        ∧  マチクタビレタ〜     マチクタビレタ〜
 マチクタビレタ〜       ./  ヽ      ./  ヽ      マチクタビレタ〜
    マチクタビレタ〜    /   ヽ―――/   ヽ   マチクタビレタ〜  マチクタビレタ〜
   マチクタビレタ〜  /       l___l   \        マチクタビレタ〜
            |      ●  |    |  ●  |  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  チン☆  へ    |   へ     ヽ  ./     | < 仕様書まだぁ〜?
    ヽ   \\  \  \\    ヽ/     /   \____________
チン☆       \\  .> \\          ヽ           マチクタビレタ〜
   チン☆     \\/    \\  _       |  マチクタビレタ〜   マチクタビレタ〜
      \ ̄ ̄ ̄ ̄ ̄ ̄ ̄/  / ̄   ヽ    /   _   マチクタビレタ〜
   チン☆  \回回回回回/ ̄ ̄ヽ        / ̄ ̄ /|      マチクタビレタ〜
         \___/ チン☆ ヽ____/   /  .|         マチクタビレタ〜
                               /    |    マチクタビレタ〜
   __________________/     .| マチクタビレタ〜
                             |      |        マチクタビレタ〜
681名無しさん@3周年:03/02/04 01:15 ID:vFVOOhYI
      マチクタビレタ〜   ∧        ∧  マチクタビレタ〜     マチクタビレタ〜
 マチクタビレタ〜       ./  ヽ      ./  ヽ      マチクタビレタ〜
    マチクタビレタ〜    /   ヽ―――/   ヽ   マチクタビレタ〜  マチクタビレタ〜
   マチクタビレタ〜  /       l___l   \        マチクタビレタ〜
            |      ●  |    |  ●  |  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  チン☆  へ    |   へ     ヽ  ./     | < RTLまだぁ〜?
    ヽ   \\  \  \\    ヽ/     /   \____________
チン☆       \\  .> \\          ヽ           マチクタビレタ〜
   チン☆     \\/    \\  _       |  マチクタビレタ〜   マチクタビレタ〜
      \ ̄ ̄ ̄ ̄ ̄ ̄ ̄/  / ̄   ヽ    /   _   マチクタビレタ〜
   チン☆  \回回回回回/ ̄ ̄ヽ        / ̄ ̄ /|      マチクタビレタ〜
         \___/ チン☆ ヽ____/   /  .|         マチクタビレタ〜
                               /    |    マチクタビレタ〜
   __________________/     .| マチクタビレタ〜
                             |      |        マチクタビレタ〜
682名無しさん@3周年:03/02/04 02:44 ID:TpTGpfLs
>>679
だから676は英語はわからないわけじゃないって言ってるじゃないの。
まぁ学生のうちはある日本語の文献で勉強して実務に入ってから英語
と格闘すればいいじゃない。まったく何もわからんうちから英語はきつい罠。
でも、技術英語は簡単だし、すぐに慣れるから心配は要らない。感嘆文もないし、
ほとんど分詞構文もない。日本語訳でわからないものも原書見ればわかることも多い。
ただ特許英語のsaid,said・・・には気が狂いそうになるけどね。
683名無しさん@3周年:03/02/04 07:35 ID:YfwU1zWN
      マチクタビレタ〜   ∧        ∧  マチクタビレタ〜     マチクタビレタ〜
 マチクタビレタ〜       ./  ヽ      ./  ヽ      マチクタビレタ〜
    マチクタビレタ〜    /   ヽ―――/   ヽ   マチクタビレタ〜  マチクタビレタ〜
   マチクタビレタ〜  /       l___l   \        マチクタビレタ〜
            |      ●  |    |  ●  |  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  チン☆  へ    |   へ     ヽ  ./     | < テストベンチまだぁ〜?
    ヽ   \\  \  \\    ヽ/     /   \____________
チン☆       \\  .> \\          ヽ           マチクタビレタ〜
   チン☆     \\/    \\  _       |  マチクタビレタ〜   マチクタビレタ〜
      \ ̄ ̄ ̄ ̄ ̄ ̄ ̄/  / ̄   ヽ    /   _   マチクタビレタ〜
   チン☆  \回回回回回/ ̄ ̄ヽ        / ̄ ̄ /|      マチクタビレタ〜
         \___/ チン☆ ヽ____/   /  .|         マチクタビレタ〜
                               /    |    マチクタビレタ〜
   __________________/     .| マチクタビレタ〜
                             |      |        マチクタビレタ〜
684 :03/02/05 00:42 ID:BMTrADRl
      マチクタビレタ〜   ∧        ∧  マチクタビレタ〜     マチクタビレタ〜
 マチクタビレタ〜       ./  ヽ      ./  ヽ      マチクタビレタ〜
    マチクタビレタ〜    /   ヽ―――/   ヽ   マチクタビレタ〜  マチクタビレタ〜
   マチクタビレタ〜  /       l___l   \        マチクタビレタ〜
            |      ●  |    |  ●  |  / ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  チン☆  へ    |   へ     ヽ  ./     | < バグまだぁ〜?
    ヽ   \\  \  \\    ヽ/     /   \____________
チン☆       \\  .> \\          ヽ           マチクタビレタ〜
   チン☆     \\/    \\  _       |  マチクタビレタ〜   マチクタビレタ〜
      \ ̄ ̄ ̄ ̄ ̄ ̄ ̄/  / ̄   ヽ    /   _   マチクタビレタ〜
   チン☆  \回回回回回/ ̄ ̄ヽ        / ̄ ̄ /|      マチクタビレタ〜
         \___/ チン☆ ヽ____/   /  .|         マチクタビレタ〜
                               /    |    マチクタビレタ〜
   __________________/     .| マチクタビレタ〜
                             |      |        マチクタビレタ〜

685名無しさん@3周年:03/02/05 00:45 ID:wDbNbDtZ
>>684
おい・・・
ま、それがあるから楽しいわけだが・・・
686名無しさん@3周年:03/02/05 15:53 ID:KqyeZc30
ものすごい初心者です。
RTLで記述すると髭が出てくるのですが、これってあたりまえなのですか?
単に記述の仕方がまずいのですかね?
687名無しさん@3周年:03/02/05 17:33 ID:ChzUmrSB
シュミレーション?
実機?どっち?
同期ロジックとかクロックのスキューとか
ああああああああああ
そんなの、原因なんていくらでもあって
漠然としすぎ・・・・
688名無しさん@3周年:03/02/05 21:20 ID:6auDkiJD
>686
どこかで遅延つけてるからでしょ
689名無しさん@3周年:03/02/05 23:04 ID:9cFetKdp
徹夜で検証してると、ひげが伸びてくる・・・

ってそれは無精ひげ
690名無しさん@3周年:03/02/05 23:10 ID:PV0sLevS
>>689
おれ漏れも
691名無しさん@3周年:03/02/06 03:39 ID:n/DDXEtW
シュミレーションか・・・
ネタだよな
今時こんなネタもうはやらない
692639:03/02/06 04:05 ID:ysd7hwDf
>>686
>RTLで記述すると髭が出てくるのですが

スタティックハザードのことでしょう?で、ヒゲがでてなにか問題でも?
まさかヒゲで誤動作するとか?
693686:03/02/06 13:10 ID:6EB2CSAR
686です
すいません。なんかみんなを不機嫌にさせたみたいで・・・
え〜っとシュミレーション上での話です。
誤動作は別にしないと思います
なんとなく気になったもので・・・
694名無しさん@3周年:03/02/06 13:28 ID:JCSi4zix
相変わらずシュミレーションしてるんだな
695686:03/02/06 13:32 ID:6EB2CSAR
>>694
そうです
696名無しさん@3周年:03/02/06 14:41 ID:0iTI/49G
>>694
シュミレーションだろうが
シミュレーションだろうが
分かればいいの!!
英語が母国語じゃないんだから
日本人に発音しやすいほうで発音してんだよ
うっさい、欧米かぶれのクズ・・・
697□□■盗撮ベストランキング■□□:03/02/06 14:52 ID:FUVbNK8s
浜崎あ●み 盗撮ランキング1位
http://www.candyroom.net/wsr-rank/in.cgi?id=arifish
松浦○や 盗撮ランキング2位
http://lt.sakura.ne.jp/~daidai/ranking/ranklink.cgi?id=arifish
安倍な●み 盗撮ランキング3位
http://www.fsc.x0.com/25h/deai/ranklink.cgi?id=arifish
藤本●貴 盗撮ランキング4位
http://bestranking.misty.ne.jp/deai/enter.cgi?action=in&id=arifish
後藤○希 盗撮ランキング5位
http://pink.sakura.ne.jp/~pickup/ranklink/ranklink.cgi?id=arifish


02年間ランキングベスト1はこの人!!!
http://www.pvranking.com/in.asp?ID=6854
698名無しさん@3周年:03/02/06 20:58 ID:hqm+ODtp
こんにちわ
VHDL初心者の大学生です。
今、CQ出版社のDesignWaveマガジンに載っている、
DesignWave設計コンテスト2003のハフマン符号用可変長デコーダの設計書の作成をやっているのですが、
どうしても4ビット上位レジスタの記述の仕方がわかりません。
どなたか詳しい人や、知ってる人ご講義お願いします。
使用ツールはQuartusU2.1で、VHDLで書いています。
宜しくお願いします。
699名無しさん@3周年:03/02/06 21:08 ID:0iTI/49G
4ビットvectorつくって
適当にCLKで叩いとけ!!
700名無しさん@3周年:03/02/06 21:16 ID:hqm+ODtp
すみません、4ビットvectorの意味がわかりません。。
701名無しさん@3周年:03/02/06 22:24 ID:0iTI/49G
>>700
std_logic_vector
って知ってる?
702名無しさん@3周年:03/02/06 22:38 ID:0iTI/49G
http://bw-www.ie.u-ryukyu.ac.jp/~wada/design03/spec_j.html
これのことか?
そんなにシャツがほしいのか????
703カスの北チョンへ:03/02/06 23:22 ID:zXxl7t22
>>696
アホの逝け作りとはお前のこと。
"si"を"シュ"と発音しやすいのか?お前在日北チョソだろ。
金の国へ帰れ。
指摘されて逆切れとはますますチョンらしいやね。

仕様書にシュミレーションと書いとけボケ。
704700:03/02/06 23:25 ID:hqm+ODtp
std_logic_vectorは知ってます。
ためしに4ビット下位レジスタは作ってみたのですが、
どうも4ビット上位レジスタとバレルシフタにCODEを送るタイミングを
制御する方法がわかりません。
カウンタなどをつけようかと思ったのですが、ぜんぜん的外れですかね?
705名無しさん@3周年:03/02/06 23:28 ID:0iTI/49G
>>703
なんで、シミュレーションをシュミレーションと誤記?
するかよく考えたことある?
SIだけみてどうすんの?
全体みろよ・・・

貴様、英語や現地の言葉の発音に忠実すぎた地名呼称
最近までつかってた外務省の役人みたいだな・・・
外務省も改めたんだぞ・・・
706名無しさん@3周年:03/02/07 08:27 ID:+iEDJ8H9
>>704
あんたは、HDLの書き方以前に、動作仕様を決めていないのが問題だ。
まず、仕様をきちんと決めておけ。
HDLは単なる実現手段だ。HDLを書きながら仕様を考えるような真似は入社一年目までしか許されない。
707名無しさん@3周年:03/02/07 11:12 ID:eGFH6gSd
>>705
漏れは703じゃないが、そろそろくだらない話は終わりにしてくれ。
素人なら屁理屈ごねるのは自由だが、
まがりなりにもプロならシュミレーションなんて堂々と言い放ったうえ屁理屈つけて開き直る時点で、
こいつ駄目だなと馬鹿にされて仕事がなくなるのが世の中。
708名無しさん@3周年:03/02/07 16:34 ID:jSqBytHa
>>707
シミュレーションだろうがシュミレーションだろが
どうでもいいじゃん
つかそんなくだなんことをいちいち指摘するほうが
くだらね
709名無しさん@3周年:03/02/07 16:56 ID:jSqBytHa
http://science.2ch.net/test/read.cgi/sim/962652788/
ってのがあった・・・
シミュレーションみたいに発音がこんなに話題になる
外来語って他にどんなのがあるんだろうって
気になった、関係ないけど

で、シムなんですが、無理難題の納期を死守するために
もうほとんどシムすっとばしてASICに固めてしまって
ボロだしまくり、というのを良く聞くけど
どこもそうなのか、気になった
710 :03/02/07 18:55 ID:PoJ74DwL
Handel-C について情報キボン
http://science.2ch.net/test/read.cgi/sim/981553632/26
711よっぱらい:03/02/08 01:44 ID:KcvbkaZ1
>709
業界によって違うと思うな。
エンジン(死語)ではプログラムでなんとかする場合もあるが、
しょせん悪あがき。消費電力関係したりしたら、もう大変(意味深)
カバレッジなんて知らないというやつがいるかと思えば、リカバリ
できるように工夫しいてる香具師もいる。
でも、物理ピン周りはロジックとは違うアナログな罠。(W
712名無しさん@3周年:03/02/08 05:38 ID:009w7y8B
>>705
アフォもいい加減にしろ
己のアフォを指摘されて、反省どころか、
屁理屈つけて詭弁をこね回すやつは仕事でも同じ。
自己弁護にばかりたけて、スキルにおいては何の進歩も
せずに短期間で会社コロコロ変わるのが関の山。
こんなことにも気づかんカス野郎は仕事にそれ相応の仕事しかできん罠
713名無しさん@3周年:03/02/08 22:32 ID:ywk0twnJ
ATPGを「えーてーぴーじー」
フリップフロップを「ふりふり」
って読むな!俺も使ってしまうじゃねえか!!!
714名無しさん@3周年:03/02/09 22:29 ID:Zjae7DuF
>>706
>あんたは、HDLの書き方以前に、動作仕様を決めていないのが問題だ。
>まず、仕様をきちんと決めておけ。
>HDLは単なる実現手段だ。HDLを書きながら仕様を考えるような真

正論だな。といっても、仕様あやふやでもHDL書きに丸投げなんて
現実よくある話だし。
ということで、HDL書き専門にしようと思っても仕様書きの
スキルは必須だよ。逆もそうだけど。
幸運にも両方担当することになったら >>706のとおりの
正攻法を歩みましょう。

715名無しさん@3周年:03/02/09 22:48 ID:1CBBdfyQ
長文スマソ

記述の参考書が先月DWMの栗須さん記事しかない俺に、
Verilog HDLの記述について教えろ。いや、教えてください。

wire xxxx = yyyy;
のような、wire に assign を合体させた記述は合法?

モジュール呼び出しのときに使った、バスでない信号は、
暗黙のwire宣言されたものと等価に扱ってよい?
module instance(out_signal, in_signal);
assign in_signal = out_signal;

reg, wire のバス宣言は
reg [7:0] a, b, c, d, e;
のように、同じバス幅のものを列記してよい?

always @(posedge clk) a <= b;
always @(posedge clk) c <= d;
のように、同じクロックに属するレジスタを、
always 分けて書いてもよい?

他にも疑問があったような気がするのだけど、
本業の疲れで頭がウニってて思い出せない…
とりあえず上記の記述は、手元の処理系
(ISE, Quartus, Leonardo いずれも無償版)で
問題なく喰えてるのだけど、裏付けが取れないので
念のための質問ですた。
716名無しさん@3周年:03/02/10 00:44 ID:9qZ4ZliM
>>715
> wire xxxx = yyyy;
> のような、wire に assign を合体させた記述は合法?

違法ではないが、不法行為です。
バグのもとなので、assignだけにしてください。

> モジュール呼び出しのときに使った、バスでない信号は、
> 暗黙のwire宣言されたものと等価に扱ってよい?

よいです。

> reg, wire のバス宣言は
> reg [7:0] a, b, c, d, e;
> のように、同じバス幅のものを列記してよい?

よいです。
むしろそうすることが多い。

> always @(posedge clk) a <= b;
> always @(posedge clk) c <= d;
> のように、同じクロックに属するレジスタを、
> always 分けて書いてもよい?

そう書くほうがベターです。
まとめて書くのはバグの素。
717715:03/02/10 02:42 ID:i3nvtxvB
>>716
ありがとう。

> 違法ではないが、不法行為です。
> バグのもとなので、assignだけにしてください。

この言いつけは守ります。
元々は守ってたんだけど、ついついCみたく書いたら
問題なく動いちゃってたんで、そのままにしてました。
ちゃんとバラしておきます。
718名無しさん@3周年:03/02/11 17:02 ID:7a8WtpWM
719名無しさん@3周年:03/02/16 20:50 ID:A+xlSp9w
ところでさあ、いつも思うんだけど
検証Toolの吐き出すCode Coverageって何の意味あるの?

良いテストベンチ→Code Coverage高い
Code Coverage高い≠良いテストベンチ

だと思うんだけど。
あのいかれた数値をサインオフの項目に入れるの、止めてくれないかなあ。
だれかうちのアホ上司説得してよ。
そんなの私の所だけ?
720名無しさん@3周年:03/02/16 21:04 ID:4vkaGNBD
>>719
マジレスすると、コードカバレジなんてものを議論している時点で
回路設計の話から遠くなってることに気づいているよね?

HDL自体の検証率を考えるときに、
回路化を無視するなら全パターン検証をやれ。
それくらいの時間は充分にあるはず。
721名無しさん@3周年:03/02/17 06:13 ID:eUOIL+ap
>>720
>マジレスすると、コードカバレジなんてものを議論している時点で
>回路設計の話から遠くなってることに気づいているよね?
混じれ酢サンクスです、
解っているからあえてこんな書き方をしてみました。

でも
>HDL自体の検証率を考えるときに、
>回路化を無視するなら全パターン検証をやれ。
ってのには、少し??なのですが。。。
だって
全パターン検証保障済み=100%Coverage
って事ですよね。

もしDUTが全パターン検証を容易に許すような小規模な設計ではなく、
十分大規模だと仮定しましょう。
Coverage向上のそれなりの努力として
1.Vector生成の抽象化とDUTのモデル化
2.Vector生成時の乱数発生等による統計的アプローチ
などの生産性向上の努力は当たり前に行われていると仮定しています。
この場合は一見「回路設計とはほど遠い」と思われる、
その数値のみが検証パターンの品質を保証しているのでは無いでしょうか?
はい、その通り、「回路設計」のセンスから言うと納得いかない話です。
でもどこかで妥協点を見出さねばなりません。

それに全パターン検証が容易に出来てしまう程度の設計だったら、
近ごろの半導体設計なんて仕事にならないのじゃない??
なんかの下請けか趣味程度で小さい回路作ってるなら別ですが。
722710:03/02/18 20:48 ID:j3iPxtBl
>>718
そのHPは見たのですが,実際に使ってみた方の感想が聞きたいとおもいまして。
Handel-C について、よろしく、おながいします。
723名無しさん@3周年:03/02/19 03:59 ID:nPTWuiYs
>>722
Cで書いたRTL
ハードを知らないとまともに使えず、ハードを知っていると無用の長物
724名無しさん@3周年:03/02/19 12:21 ID:yYTDxz+L
結局ある程度ハードの事を知った上でしかも最終回路をも
意識できないとHDLその物も使いこなせていないのでは?
と思う事が多い。
100万ゲートを越えるASICの開発ではそうも言ってられない
現実があるんだけど、結局バグ、動作不良の温床は論理合成
ツールが悩むような曖昧な記述をした部分である事が多い
と言うのが現実ではないかな。 単なる経験則でしかないけど。

つうかソフトで作ったエミュレータが吐いた結果とHDLでの
シミュレーション結果の照合がシームレスに行える環境を
作っている場合、統合環境ががあればなぁと偶に思っても
全部Cで出来たらなとは思わない。(w
725名無しさん@3周年:03/02/19 22:38 ID:+ZzsO228
>724
実は、その程度のことはルールを決めてしまえば解決してしまう。100万だろうが500万
だろうが関係無い。つーか、規模が大きいほうがシビアだと思うのだが・・・
726名無しさん@3周年:03/02/20 00:21 ID:dNzyESPm
>>725
「その程度の事」が出来ていない所が多いし、また出来ているつもりでも
見落としている事がある。
まルールがきちんと守れてる設計をしているかを確認する事の方が断然
難しいと思われ。 それがQCなんだろうがなかなかまともに出来ないのが
現実かな。
727725:03/02/20 21:50 ID:nOUGXnLq
>724
>つうかソフトで作ったエミュレータが吐いた結果とHDLでのシミュレーション結果の照合がシームレスに行える環境を
>作っている場合、統合環境ががあればなぁと偶に思っても全部Cで出来たらなとは思わない。(w

Cで全部できたら、その照合を行わなくて済むんだが。
728725:03/02/20 22:02 ID:nOUGXnLq
>726
見落とさないためにツールが存在する。現実的にはツールでも100%ではないし人間のミスが
0になるのを期待するのは無理。でも、その辺も最初から織り込んどくのがリーダーの務め。
だが、断然難しいというのは納得いかん。俺らはその類は数年前からやってるし、100〜400万
程度の規模でもそれなりに問題がないレベルでできている。もちろん、慣れていない連中の
手戻りは合成前にいくつか発生している。
多分、726はその工数を確保できない程忙しいだけなんじゃないか?
この手のことは俺自身はもうルーチンワーク化していて、いいかげんLSI設計から足を洗おう
かとさえ思っている。なんか、これってスキルって言えないような気がして。
729名無しさん@3周年:03/02/20 22:17 ID:dNzyESPm
>>728
納期があれば苦労しないわな普通。(w
730名無しさん@3周年:03/02/20 22:20 ID:dNzyESPm
>>727
Cの環境ってそんな便利な物なのか?結局テストベンチを
吐いて自分で食うんじゃないの?
現物に触れる機会がないからどれほど便利な物なのか
さっぱり解らん。
つうか今の環境を棄ててまで乗り換える程の価値がある
物なのか知りたい。
731名無しさん@3周年:03/02/20 22:51 ID:NEceDpmR
>>730
この手のツールを一番欲しているのは、管理者サイド。

工期短縮と、人件費圧縮を考えると、C言語ベースの開発体制は魅力。
なんといっても、C言語をしってる奴は山ほど居る。
FFを知らなくても、Cを知ってる奴なら安く雇える。派遣でも可能。

実際に使い物になるかどうかよりも、可能性への魅力が大きいのだから、
設計者はハード設計経験にあぐらをかかないようにしないと、足元を救われる。

100%使えるHW設計者1人よりも、70%のC言語取得者を5人雇うほうを選ぶ。
732725:03/02/20 23:49 ID:0jnsd02e
>730
すまん。単なる論理設計者だったんですね。
その立場だと何のメリットも無いです。

>731
管理者が欲しがってるとは知らんかった。
確かに、そういう考え方なら欲しがるかも。

スレ違いになってきたので俺はこの辺で...
733名無しさん@3周年:03/02/21 02:19 ID:IE2zuJz+
>>732
> 単なる論理設計者だったんですね。

酷い言われようだね。
設計内容としては、3D用のジオメトリ2Dグラフィックと
結構いろいろやってきたのだが正直ショックだわ。
734名無しさん@3周年:03/02/21 02:54 ID:WFnOspKX
設計の内容、工夫、知恵もろくに知らないくせに
単なる論理設計者、単なるHDL書き、単なるインプリメンターという具合に
人を労働機械としか思わないの香具師も問題があるね。
単なる労働者が多いのも否定はできないが。
735名無しさん@3周年:03/02/21 12:47 ID:ltOaoKvx
HDL設計されている皆さんは論理合成したあと
シュミレーションしながら、レイアウト(チップ内、基盤配線)
も行っているのですか。最近のボード上の信号はRFに近いから
配線やそのシュミレーションがたいへんではないですか
736名無しさん@3周年:03/02/21 13:36 ID:vXfS+QB+
> HDL設計されている皆さんは論理合成したあと
> シュミレーションしながら、レイアウト(チップ内、基盤配線)
> も行っているのですか。

デフォルトの配置配線のままで、仕様にミートすればそこでおしまい。Happy!
でもそんなことはまずないので、いろいろレイアウトいじるよ。

> 最近のボード上の信号はRFに近いから
> 配線やそのシュミレーションがたいへんではないですか

IBISモデルとかSPICEとかのキーワードで検索してみよう
おれはせいぜいパラレル133MHz/シリアル1.25GHzくらいまでしか
やったことないんで、詳しいことはわかりません
737名無しさん@3周年:03/02/21 14:20 ID:ltOaoKvx
736さん、ありがとうございます。
いろいろ見て回りました。パラレル133MHzは
FMラジオの周波数より高いし、シリアル1.25GHz
なんてテレビより高いと思うのですが、伝送線路シュミレータ
フル活用して配線設計しなくても大丈夫ですか?
738名無しさん@3周年:03/02/21 15:28 ID:IE2zuJz+
>>737
133M位迄なら、100Mと大して変わらないルールで配線して
も問題ない(私の場合無かった)です。

DDRで、200M(レート400)って言うのも最近やりましたが、その時は
事前にSimをしました。

ただ、数年前の時点で、80M辺りからだんだん基板上を走る周波数を
上げて行きその要所要所でSimを行い現実とのギャップ、パターン配線
へのフィードバックを行う等の蓄積があったから上手く行っているだけで
いきなり何のノウハウもない状態から高速な信号のパターン配線をSimで
となったら相当の苦労を覚悟した方が良いでしょう。

ちなみに大手のA/W屋でSim出来ますと大風呂敷を広げて仕事を取ろうと
する所がありますが、実際こちらで過去に起こした基板のSimをさせて実力
を見てみると、まだまだという所が結構あります。
酷い所は、集中定数しか扱えないようなシミュレータで解析してきて自慢げに
結果を発表する事があったりで実際にノウハウを持っている所は結構少ない
のが実情のようです。
739名無しさん@3周年:03/02/21 16:31 ID:ltOaoKvx
やはりHDL設計といっても高周波が使えないとダメみたいですね
738さんのところの高周波ノウハウすごそう
やはり分布定数使って、スミスチャート等で
緻密に解析していくのですか
740名無しさん@3周年:03/02/21 17:10 ID:vRdMSQv4
>>739
スミスチャートでパターンの特性を見るという事は偶にしますね。
Simの結果とパターンの特性の関係を見たりするには非常に
便利です。
今付き合ってる、A/W屋さんがICテスターのベッド(円形で数十層
の基板)を作ってる所なので実機の設計製造と測定を出来る環境が
あってノウハウの蓄積がやりやすくて助かっています。

良い外注と付き合う事も実は非常に大きな意味を持つ事と言うわけですね。
お陰でこっちがあまり勉強しなくなったという弊害もありますが。(w
741名無しさん@3周年:03/02/21 17:12 ID:vRdMSQv4
>>739
ただ残念な事に、HDLからシームレスにそこまで行ける訳ではないです。
少なくともウチの環境は。
742名無しさん@3周年:03/02/21 17:41 ID:ltOaoKvx
741さん
HDLからシームレスにそこまで行ける訳ではないです。
というのは、シュミレーションして、実装して、
インサーキットエミュレータなどで測定して、
また練り直してという地道な作業でできあがるということですか。
やはり、ほんとのLSI設計は深く難しいですね
743tantei:03/02/21 18:11 ID:KUm3FJrW
★あなたのお悩み解決致します!!
●浮気素行調査
彼氏、彼女、妻、夫の浮気を調査致します!!
●盗聴器盗撮機発見
あなたの部屋に誰かが仕掛けているかも!!
●行方調査
行方不明になっている家族の消息を調査致します!!
●電話番号から住所割り出し
一般電話、携帯から住所を割り出し致します!!
●ストーカー対策
社会問題ともなっているストーカーを撃退致します!!
その他人生相談からどんなお悩みでも解決いたします!!
 直通  090−8505−3086
URL  http://www.h5.dion.ne.jp/~grobal/
メール  [email protected]
   グローバル探偵事務局 

744名無しさん@3周年:03/02/21 18:50 ID:XTLZHHt4
>>742
ASICを設計したと言っても実は部品、製品の一部を作ってる
と言う認識で次行程の事も考える人は結構少なくて、中には
基板上に乗っかったら自分の仕事ではないなんて考える
奴まで居る位です。(w
ま上から下まで一通り担当して量産試作までは面倒を見ると
言うウチのシステムはしんどいと言えばしんどいけど、製品化
に至る行程で何がネックになっているのかが見れてなかなか
面白いです。
元々ASIC屋では無く、製品開発の中で必要に駆られてASIC
の開発をするようになったって経緯もあるのでしょうが、ASIC
だけを設計すして終わりって言うのは性に合わないですね。
745名無しさん@3周年:03/02/21 21:29 ID:Km11lveB
>744
正直、そういう仕事をしている人がうらやましい。
>おれはせいぜいパラレル133MHz/シリアル1.25GHzくらいまでしか
>やったことないんで、詳しいことはわかりません
なーんてセリフ、吐いてみたいよ。俺はなりたくてなった訳ではないASIC屋だが、実装した
ことまで考えて作りたいのに上司が「必要ない!」と言ってやらせてくれん。皆ASICという
殻に閉じこもっている。
会社名教えてくれ。転職するから(w
(実際転職活動中)
746名無しさん@3周年:03/02/22 17:46 ID:HzJ41lP7
>>745
転職はお勧め出来ないなあ。(w
つうか、社内で一人外注みたいな仕事をしてるから
自然とそうなったのかな。
自分で一通り開発出来るようになりたかったから
職域を乗り越えて色んな事をしてるうちにこうなった
ような気がするなぁ。
そもそを人が少なかったってのが真相な気もするが。(w

将来独立等を考えてるならなるべく色んな事を経験して
全体の行程(当然外注の使い方も含めて)を一通り
覚えないとね。
747名無しさん@3周年:03/02/23 03:38 ID:NqkXECYS
独立すると一体何がいいの?
748名無しさん@3周年:03/02/23 13:13 ID:MfGkCPho
>>747
それが見いだせない様ならそんな事を考え無い事。
749名無しさん@3周年:03/02/23 14:25 ID:NqkXECYS
>>748
独立する気はないから考えないけど独立すると一体何がいいの?
750名無しさん@3周年:03/02/24 14:31 ID:3Clducjm
>>749
世の中君みたいにサラリーマンで満足してる奴ばかりでないと言う事だよ。
嫌な上司の顔見なくて良いだけでも漏れ的にはメリットがあると思うな。
751名無しさん@3周年:03/02/24 22:01 ID:B/n+lRl5
>746
さいですか。このまま今のところにいてもスキルアップは望めないんで、悩んでるんですよね。
ま、746さんは目標があるんで良いってことですか。やっぱ大手はダメですね。かといってでき
れば請負はやりたくないし(今と変わらん)。
752名無しさん@3周年:03/02/24 23:22 ID:Jnpxorf9
>>750
漏れは上司が気に入ってるんで独立する気ないけど、他には何のメリットがあるの?
753名無しさん@3周年:03/02/24 23:36 ID:W9GUHDr0
メリットがわからんやつは、独立なんて無理だから気にするな。
754名無しさん@3周年:03/02/24 23:59 ID:Jnpxorf9
はぐらかす以外にないってことは、結局たいしたメリット無いんだろ?え?(w
755名無しさん@3周年:03/02/25 00:13 ID:ub0GUD1c
独立のメリットって、人から説明されんと判らんほど難しいのか?
756名無しさん@3周年:03/02/25 00:28 ID:/mnbBvVv
煽りは無視すべし。
757名無しさん@3周年:03/02/25 07:59 ID:pjHZMSjd
独立する意味がわからん馬車馬が多いんだね、このスレ
758馬車馬:03/02/25 22:27 ID:a/4y+tGq
そんで何のメリットがあるの?
759名無しさん@3周年:03/02/25 22:38 ID:jdOyBZlR
煽りにマジレスすると、先ず収入面でのメリット。大型の受注を取れれば
億単位も夢ではない。 個人では通常数千万位だと思うけど。
あと時間的なメリット。好きな時に仕事を始め終えられる。

あとは、趣味の開発が出来るって所が最大のメリットかな。

よく見ると全然メリット無いね。(w
760名無しさん@3周年:03/02/25 22:47 ID:pjHZMSjd
>>759
それは個人営業の独立の場合だよね。
数人集まって会社にすれば、それ以上のメリットがあるんだけど
このスレでそんなことを書くのはスレ違いだね。

ま、一つだけ書くとしたら 758や754のような人を雇用できるってことだな。
761名無しさん@3周年:03/02/25 22:53 ID:jdOyBZlR
>>760
> 758や754のような人

要らん。(w
762名無しさん@3周年:03/02/26 12:18 ID:6/oujwVq
独立前よりも収入が減って仕事だけは24時間連続になった、てのをイパーイ知ってるがね
763名無しさん@3周年:03/02/26 13:06 ID:7XuKsixh
>>762
既にスレ違いも良い所だが、それは経営が下手なだけ。
764ステッパ屋:03/02/26 21:36 ID:J9wVIzu3
>762
限りなく迷走を続けるけど、経営だけじゃなく技術も自分の思ってた程じゃなかったとか、
時代の要求や流行から自分の技術がかけ離れてしまったのに、アップデートできなくなったとか、
シパーイする可能性はイパーイあるわな。

自分を振り返ると、5年くらいは1人でもやってけると思うけど、ずっと途切れず食っていくのに
充分な仕事がある?かという不安はぬぐえないよなあ。
765名無しさん@3周年:03/02/26 21:39 ID:WgqGDYlm
>>764
だからこそコネクション作りの方が重要になってくるわけで
それがある意味経営の本質でもあると思います。
766名無しさん@3周年:03/02/26 22:14 ID:Yffp5k1y
だねー。技術もそうだけど、結局人、モノ、金、時間、情報・・・と
そういうのを自分の味方につけてかないと一本立ちはムツカスィ
767スレ違い:03/02/26 22:58 ID:hchW9T+i
某Tを立ち上げたI氏は、最初の2年ぐらいは一人だったらしい。
という話を聞くと、いくら億万長者になる可能性があるとはいえそう簡単には
独立できんわな。
768名無しさん@3周年:03/02/27 00:55 ID:H2Ze8fRa
ソフト屋はPC1台で身軽に独立できるかもしれないが、ハード屋は経費がかかりすぎるんじゃない?
HDLやるだけでもツール買って保守費払って、多少は基板起こしたり工具買ったりで、馬鹿にならない。
個人ハード屋でも億単位の仕事がごろごろあるならかなり割に合うかもしれないが。
769名無しさん@3周年:03/02/27 01:22 ID:bq/sESB9
>>768
HDLのRTL設計だけなら、そんなに費用はかからないぞ。
Simツールも安いの使えばね。
770名無しさん@3周年:03/02/27 01:41 ID:32ZqA1CP
>>768
金掛かるよマジで。中途半端な気持ちで独立すると、半派遣に
近い形で客先に入って委託設計をすると言う形で終わっていく
人が多い。

だから>>769氏の言うように安めのSimツールを上手く使って仕事を
繋ぎながら作業内容をだんだん大きくして行くわけよ。
マジな話、億単位の受注も多くは無いが本当にあるからそれを
狙って頑張ってたりする。

でも大きな仕事を取ろうとすると、設備とかでアドバンテージが無いと
難しくなるからこの辺りはジレンマになったり。さじ加減が難しいよ。
771名無しさん@3周年:03/02/27 01:45 ID:fzqQZimm
>>769
それでも安いもので数十マソ、
第一線で使えるものとなると数百マソになるわけでしょ。
腕一本で喰ってける(かもしれない)ソフト屋に比べると敷居が高い。

それともアレかね、無償版だけ使って論理設計だけって
仕事が転がってるのかね? そんなんだったら
あしたにでもジョブチェンジしちゃうぞおじさん。

という漏れはソフト屋ですが何か?
772名無しさん@3周年:03/02/27 02:09 ID:32ZqA1CP
>>771
出来れば、中途半端にHDLが使えるだけでハード屋気取りの勘違いを
しないで貰えますか?

ってそれはウチの会社の事な。スマソ。
773名無しさん@3周年:03/02/27 08:56 ID:bq/sESB9
>>771
設計仕様書をきちんと書けるなら、無償版程度のツールでも食っていけるぞ。
がんがれ。
774名無しさん@3周年:03/03/03 14:10 ID:4rVg0NQ/
>>720
お前は指数関数も知らん大馬鹿野郎だな。
いったいどこまで暇なんだよ。もいっかい高校から行きなおせ。
一生シミュレーションやってろ糞が。

>>無償版程度のツールでも食っていけるぞ。
まあ。いくらでもやりようはあるでしょうね V^^
これ以上はいわないでおくけど。
775名無しさん@3周年:03/03/03 15:45 ID:NCcEYiYr
>>774
そんな古いレスに息巻くあんたに惚れたよ
776名無しさん@3周年:03/03/04 01:22 ID:kN24MGon
synplify 7.2.2 だけど、
久々にsynplifyを新たにダウンロードしたけど・・・?
RUNボタンがイネーブルにならない???
777age:03/03/05 04:13 ID:gXMrSd6Q
always@( )begin
T <= Q;
B <= E;
emd

process( ) begin
T <= Q;
B <= E;
end process

では、代入されるタイミングって同じ??
…つまり、連続した2つの代入文は同時に代入されるんでしょうかね?
778名無しさん@3周年:03/03/05 05:23 ID:iwdAX9Nn
◆ピンクエンジェル◆↓↓↓↓↓↓↓↓↓
http://www.pink-angel.jp/betu/index.html
779名無しさん@3周年:03/03/07 12:48 ID:tyWgKn4p
>>777
always@( )begin
T <= Q;
B <= E;
emd <<Syntax Error : 624>>
と <<Syntax Error : 624>>

780HDL初心者:03/03/11 01:40 ID:lK57nm/u
どうもしっくりこない。
やっぱりタイミングがよくわからない。
ひとつのalwaysしかなければなんとかわかるんだけど。
複数のalways文があって相互に依存しあってる場合、目視スケジューリング
だとぜーんぜん予測がつかないぞゴルァ。結局タイミングシミュレートして
現物あわせでごまかしてる。鬱
みんなソースコードパッと見てわかるのか?
781名無しさん@3周年:03/03/11 01:58 ID:NPkfDC+u
>>780
では何のためのシミュレーションなんですか?
782名無しさん@3周年:03/03/11 19:04 ID:SLYR3oQ8
>設計仕様書をきちんと書けるなら、無償版程度の
>ツールでも食っていけるぞ。

つーか、設計仕様書をきちんとかけるほどの人材をインプリメンター
とかツールオペレーターとして使うのはもったいなさすぎ。
783名無しさん@3周年:03/03/12 00:57 ID:mEsUeGAc
>>780
想像するに、
 クロック同期のレジスタで色んなフラグをつくり、
 それぞれのフラグに対しalwaysブロックのなかで、
 他のフラグと入力信号を見て、データ系を制御すると同時にフラグの更新を行う
というような書き方になっているのではないでしょうか?
(自分が最初そうだったもので。。)

そのような場合、関連ありそうなフラグをまとめてビット列をつくり、
それをステートマシンの状態と見なしてダイアグラムを書いてみると
すっきりすると思います。
784名無しさん@3周年:03/03/12 02:37 ID:8CpVw/dK
>780
仕事だったら仕様書ぐらい書きなさい。趣味なら知らん。
業務でソース=仕様なんてことやってる奴は×。
785山崎渉:03/03/13 13:25 ID:ezzk8Fhe
(^^)
786名無しさん@3周年:03/03/24 20:40 ID:QOQwMbjb
age
787名無しさん@3周年:03/04/03 04:57 ID:/lM2h0ad
気がついたらム板にこんなスレが勃っていたワケだが。

暇だからVHDLでも書こうかな
http://pc2.2ch.net/test/read.cgi/tech/1043858153/l50

相互リンクしていいものやら。と書いてみるてst
788名無しさん@3周年:03/04/10 13:27 ID:XEEV8xiz
残念だが VHDL の時代は終わったらしい

http://www.eedesign.com/columns/industry_gadfly/OEG20030407S0056
789名無しさん@3周年:03/04/10 14:39 ID:VHq3MLfF
>>788
消える運命なのは仕方が無いとして、VHDLのイベントの概念を
取り入れて貰えないかとはよく思う。

色々と書いていると、どうやってもVerilogでは書きづらい記述が
出てきてしまうからね。
両方使ってるとどうしても互いの悪いところが見えてしまうからなー。
790名無しさん@3周年:03/04/11 01:08 ID:NG2Ndlhi
HDLでBCD1桁同士の加算器をなるべく小さく作りたいのですが、
普通に
 input [3:0] a, b;
wire [3:0] sum = a + b;
wire cout = (a + b) > 10;
とかくと4bit binaryの加算器が合成されます。
それでも機能的に問題ないのですが、
もっと加算部分の回路を小さくする方法って有るのでしょうか?

単純に考えると
- 4bit binary 加算 : 入力が16*16通りの組み合わせ。
- BCD1桁の加算 : 入力が10*10通りの組み合わせ。
でBCDの方が小さくなっても良いんじゃないかと思ったのですが...
791名無しさん@3周年:03/04/11 01:27 ID:jyHAztiQ
頭の中で仕様書はできていて、波形も手書
きで完璧に書いているんですが、何も指示
されないので他人が理解できるような仕様
書を書いていません。それでもいいですか。
792名無しさん@3周年:03/04/11 02:01 ID:RdlGHJnd
>>790
>普通に

とか書いているがデバッグしてないな。
sumの値が間違っている
793名無しさん@3周年:03/04/11 02:31 ID:2Eq5me6g
>>790
加算器くらいゲートで書け
794名無しさん@3周年:03/04/11 02:51 ID:jyHAztiQ
ゲートで書いたらCLA使ってくれない。
795無料デバッガー:03/04/11 03:37 ID:RdlGHJnd
>>790
よく見たらcoutの値も間違っている。 a+b=10のとき。
もっとよく考えろ!
796790:03/04/11 03:45 ID:txURKFp5
>>792
すんません。デバッグしてないです。
自分の欲しい回路が、実は
『1桁BCD加算器ではなく入力にa<10, b<10の制約がある場合の4bit binary加算器』
だったので、間違えました。
carryのとこは、マジバグです

直しました。
input [3:0] a, b;// operand
output [3:0] out;// BCD sum
output cout;// carry
wire [4:0] sum = a + b;
assign cout = (sum >= 10);
assign out = cout ? (sum - 10) : sum;

>>792
HDLスレなのに...

ゲートで考えてもいいのですが、知りたいのは
上記のVerilog記述中の sum=a+b を構成する回路で、
入力a,bのとり得る値が0〜9の範囲であるとき、
半加算器1ヶ+全加算器x3ヶ で構成するよりも回路を小さくできるか?
です。
797名無しさん@3周年:03/04/11 05:40 ID:NwsbmW4a
798名無しさん@3周年:03/04/11 22:36 ID:LLRgvo5N
今月のトランジスタ技術ではVerilogですね。
今まではVHDLの方の記事が多かったと思うのですが、どでしょ?

799名無しさん@3周年:03/04/11 22:40 ID:LLRgvo5N
つっか、どうせ両方やるハメになるんなら、
Verilogから覚えたほうが早いか?、VHDLから覚えたほうが早いか?

なんとなくVerilogの方が、Cに似てない事もないから、とっつきやすい?
800名無しさん@3周年:03/04/11 22:58 ID:Ljfd3Ims
>>799
Cから入るなら、Verilogかな。
どっちも使ったが一長一短。個人的にはVHDLが好きだが
将来はないだろうね。
801名無しさん@3周年:03/04/12 14:19 ID:b92T271X
研究室の院生がpalasm以外使わせてくれません
802名無しさん@3周年:03/04/12 16:40 ID:c38Lvsy0
>>801
そんな研究室は潰れた方が良いよ。
只でももっとましなのがある。(w
803名無しさん@3周年:03/04/12 23:16 ID:GsslnYs0
>>802
確かに一生に一度くらい、方眼紙を使って
16V8用のRS-FFのJEDECヒューズ・マップを手作業で書いてみる

くらいのことをやっても無駄にはならない様な気もする。
804名無しさん@3周年:03/04/12 23:25 ID:qCY7oAjQ
>>803
2回目からは無駄
805名無しさん@3周年:03/04/13 08:30 ID:EGQRFMlR
>>804
いや、だから「一生に一度くらいは」ということで。
プロのエンジニアとして、こんなことやる暇はないだろうが、
学生のうちに1回やっておくのは無駄とは思えない。
(確かに2回目からは無駄なんだが)

きっとエンジニアだって、理屈わからずにVerilog書いている輩は絶対いるぞ
806名無しさん@3周年:03/04/13 11:13 ID:a4JRUoC+
PLDのアーキテクチャを理解するって勉強は必要かもしれんが
だからと言ってヒューズマップを作らなければならないという事には
ならないよ。
てか現状作ってもそれで終わりだろ? そんなカビが生えたような
システムを持ってる所の方が少ないよ。
やっても良いかも知れないが、使えないなら教科書を読んでるのと
大きく変わらない。

それより、CPLDの評価回路を作ってそれにどんどん回路をインプリ、
デバッグして開発とデバッグの全体像を掴む方が重要。
その過程で、どんな回路が生成されているのか、それで良いのか、
設計者の意図する回路を生成させるために必要な要素は、と言った
事を学べるんだから。
ヒューズマップ書いてる時間で随分色んな事が出来るんだからさ。
807名無しさん@3周年:03/04/13 21:39 ID:KsS8GDPs
う〜ん、難しいなぁ
Cコンパイラを使わずアセンブラ(もしくは機械語)でプログラム書け っていうのに近いか?
確かにやっておいたほうがいいかもしれない経験ではあるが。
暇で暇で、しかも回りにPCすらない、例えば法事で田舎の家に1晩泊まった時なんかには
やってもいいかな、っていう程度。
808名無しさん@3周年:03/04/14 08:59 ID:RVgzCx7E
トランジスタ技術を買った高専生なんですが
Cは中学生の頃から使っていました。
Cを知っているならVerilogを学習するほうがいいでしょうか?
トランジスタ技術もVerilogを解説している様なので。
809名無しさん@3周年:03/04/14 09:16 ID:CB7yrWba
>>808
言語その物の文法が殆ど同じだからね。
今後、Cベースに移行していくと考えるとVerilogが良いでしょう。
ただどうせ勉強するならどちらもやっておくと良い、VHDLには、
VHDLの良さもあるから。
810名無しさん@3周年:03/04/14 09:28 ID:IahQZXr4
>>807
Cプログラマでってあっても
アセンブラ書くことは必要だよ。
多分、意図してるのはハンドアセンブラだな。
811名無しさん@3周年:03/04/14 17:44 ID:nkSh5pGO
>>809
VerilogさんもどうせCライクにするんだったら、なんで
if文を if () { } ってな文法にしてくれなかったんかなぁ。
覚えにくくてしょうがない。
812名無しさん@3周年:03/04/14 17:54 ID:3l487p/q
モジュールインスタンスをループで複数個増やすことはできんのか with Verilog
813名無しさん@3周年:03/04/14 20:56 ID:IahQZXr4
>>811
俺もそう思う。
覚えにくいというよりbegin〜endなんかより{}がずっと短くて、見やすいよ。
ついでに`define `ifも#define #ifにしてくれればSystemCなんて要らないってか?
ケラケラ
814名無しさん@3周年:03/04/14 21:31 ID:CB7yrWba
Verilogも嫌いではないのだけど、信号を変化で捉えると言う概念が無いのが
どうも使いにくいな。
ラッチとワイヤーってのはどうも慣れないわ。
815名無しさん@3周年:03/04/15 00:58 ID:TwiRnd6i
>>812
Verilog 200X ならgenerate文でできるけど、
まともに実装しているシミュレーターも合成処理系も知らない。

非標準のプリプロセッサ
http://www.surefirev.com/vpp/
でもできるけど、イマイチ使いにくいかも。
816名無しさん@3周年:03/04/16 22:30 ID:oaowVRuf
>>796
全てをコントロールしようと思うな.
詳細な実装はツールに任せるのが論理合成との正しい付き合い方だ.
どうしても,と言うのであればDesignWareのコンポーネントを構造記述しろ.
以上.
817名無しさん@3周年:03/04/17 00:57 ID:olcZCCQw
使いやすいほうを選べばいい? VHDL Verilog
818790:03/04/17 01:44 ID:jSv6MQf9
>>816
ご助言ありがとうございます。
仰られるような事には普段気をつけているつもりです。

 『a[3:0]<10, b[3:0]<10の入力値制約の元でsum[3:0]=a+bを計算する』
という処理を、HDLで + operator を使って合成すると
DesignWareのbinary adderが合成されました。

今回、携わっている回路で上記処理が多かった(面積的にクリティカルだった)
ので、回路的に本当にBESTなのかと疑問に思ったのです。
ゲートの組み合わせによる構造記述も考えたのですが半加算器x1+全加算器x3の他に
思いつかず、またcase文での総当りを試しても(もちろん)小さくなりませんでした。
819山崎渉:03/04/17 08:43 ID:lBh9QBwB
(^^)
820名無しさん@3周年:03/04/17 14:12 ID:ieNTtFYk
modelsim の examples/mixedHDLのcompare.doを実行すると
いったん立ち上がった直後アボートしちゃうんです。コマンド入力すると

vsim -wlf gold.wlf wotk.top

で死ぬことがわかって、エラーメッセージとして
# Attempting stack trace sig 11
# Signal caught: signo [11]
# vsim_stacktrace.vstf written
# Current time Thu Apr 17 14:04:52 2003
# ModelSim Stack Trace
# Program = vsim
# Id = "5.7c"
# Version = "2003.03"
# Date = "Mar 13 2003"
# Platform = win32
# 0 0x00576082: '<unknown (@0x576082)> + 0xcfd12'
# 1 0x00576242: '<unknown (@0x576242)> + 0xcfed2'

# Corrupt Call Stack

** Fatal: (SIGSEGV) Bad pointer access. Closing vsim.
** Fatal: vsim is exiting with code 211.
(Exit codes are defined in the ModelSim messages appendix
of the ModelSim User's Manual.)

が出ます。同じ症状になった人います?他のPCでは出ないので、ハードウェア
のエラーなんでしょうかね?
memtestでもエラーは出ないんですけどね?
821学生さん:03/04/19 00:23 ID:foe2bAun
このスレのみなさんはご自身のキャリアパスをどのように考えておられますか?
822名無しさん@3周年:03/04/19 14:24 ID:NqQARzRp
>>818
>『a[3:0]<10, b[3:0]<10の入力値制約の元でsum[3:0]=a+bを計算する』
>という処理を、HDLで + operator を使って合成すると
>DesignWareのbinary adderが合成されました。

「入力値制約」ってどうやって指示したの?
とっても疑問
823720:03/04/19 22:13 ID:+rNS31AP
>>822
誤解を与えてすいません。
目的の処理内容には入力値に制約(というか条件?)があるのですが、
HDLや合成制約として、有効な指示を与えることはできませんでした。

一応  sum[3:0] = (a < 10 && b < 10) ? (a + b) : 4'bxxxx;
も試してみましたが、効果ありません。
case文で10*10条件書き下し、full_caseディレクティブを与えれば、
a>=10||b>=10にたいしdon't careという制約が表現できますが
binary加算器を使うよりも小さくはなりませんでした。
824山崎渉:03/04/20 03:54 ID:62iGJiyF
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
825名無しさん@3周年:03/04/20 14:53 ID:ihr8XSu0
条件付き代入文は単にマルチプレクサを推定する記述に過ぎないよ.
だから加算器の構成に(a<10 && b<10)という条件は全く関与しない.
単に入力を選択する論理に接続されるだけ.
Design Compilerがやることは単に+という算術演算子をDesignWareの
ライブラリ中のDW01_addに置き換えるだけ.DW01_addの実装はいくつか
準備されてるが,それはタイミングやエリアの制約条件で最適なものが
選択できるようになっているだけ.

823が望んでいるような”カスタムな”加算器を合成することは初めから
想定されてないよ.どうしても a<10 && b<10 という制約条件下で最適化
された加算器が欲しいなら,論理ゲートレベルで書き下すしかないな.


826名無しさん@3周年:03/04/20 22:37 ID:OdrcH+qX
>821
スレ違いでわ?
別スレ立てるか転職板に行くか
http://science.2ch.net/test/read.cgi/kikai/1012509519/l50にいったほうがいいんじゃない
827名無しさん@3周年:03/04/21 16:45 ID:jhlOnw8g
あげっと
VHDLの記述方法で教えてください。

a <= ( others => '0' ) & b( WIDTH-1 downto 0 );

Aは固定長レジスタ
BはAよりも短い可変長レジスタです。

BをAに代入する時に、上位を「0」で埋めたいのですが、
上記方法ではエラーがでてしまいます。
どのように記述されば良いのでしょうか?
828名無しさん@3周年:03/04/22 05:15 ID:F6DZcUtI
>>826
>821は「このスレのみなさん」に対する質問だから、スレ違いではないYo
質問内容はともかく...
829名無しさん@3周年:03/04/22 13:41 ID:UFwRaQt6
先日Verilogというものの存在を知ったばかりのソフト屋です。
ちょっとお聞きしたいのですが

module test3v(a1,a2,a3,b1,b2,b3,q1,q2,q3);
input a1,a2,a3;
input b1,b2,b3;
output q1,q2,q3;
function fand3;
input i1,i2,i3;
fand3 = i1 & i2 & i3;
endfunction

assign q1 = fand3(a1,a2,a3);
assign q2 = fand3(b1,b2,b1);
assign q3 = q1 & q2;
endmodule

という記述(Cみたいにfnad3のinputの中身をローカル変数っぽく記述する)
っていうのは正しい記法でしょうか?
830名無しさん@3周年:03/04/22 23:41 ID:Iu8dIr8p
>829
正しいというのが良くワカランが、文法としては合っているのでは?
831829:03/04/23 09:59 ID:Yxm6OwG1
>>830
あれでいいんですか?
チラっと見た本では、こういう場合
function fand3;
 input a1,a2,a3;
 fand3 = a1 & a2 & a3;
endfunction
と、assignするポートと同じポートを書いている例ばかりだったので。
Verilogのfunctionって所謂Cでいうところの、 引数−仮引数の関係では無いんじゃないかと
思ったもんで。
832名無しさん@3周年:03/04/23 11:57 ID:i3nzfPYe
>>831
ちょっと違うが(functionを呼んでもソフトウェアみたいにメモリの節約にはならない。
 どっちかというとマクロっぽい)
まぁ、そういう事ですね。
833名無しさん@3周年:03/04/24 00:59 ID:eUMl++KE
>>831
いや、引数−仮引数の関係(値渡し)で正しくて、
Cのマクロよりは関数に近いでしょ。
のようにfunction内でaに代入しても、aの値は変わらない。
moduleのaが、functionローカルなスコープのaに隠されるから。
834833:03/04/24 01:00 ID:eUMl++KE
|module test3(a, b, q);
| input [2:0] a;
| input [2:0] b;
| output [2:0] q;
| function fand3;
|input [2:0] a;
|begin
| fand3 = a[0] & a[1] & a[2];
| a = 3'bxxx;
|end
| endfunction
| assign q[0] = fand3(a);
| assign q[1] = fand3(b);
| assign q[2] = q[0] & q[1];
|endmodule
|module top;
| reg [2:0] a, b;
| wire [2:0] q;
| test3 U0(.q(q), .a(a), .b(b));
| initial begin
| $monitor("%t: %b %b -> %b", $time, a, b, q);
| a = 0; b = 0;
| #10;b = 7;
| #10;a = 7;
| #10;a = 0;
| #10;
| $finish;
| end
|endmodule
835833:03/04/24 01:05 ID:eUMl++KE
スコープ的には
- Verilogのfunction引数 <-> Cの関数の引数
- Verilogのmodule内変数 <-> Cで関数外宣言したstatic変数
のように対比すると考えやすいと思います。

Cのマクロに相当するものは、Verilog200xで導入されたけど、イラネ。
836名無しさん@3周年:03/04/24 12:10 ID:zJnDdjnb
>>833
その「マクロみたい」っていうのは「function使ったってレジスタの節約にはならない」
と言いたかったんじゃないすか?
837833:03/04/25 01:04 ID:O0Ar8rQX
確かに論理合成を考えると、
Verilogをパースして内部表現(GTECHとか)に落とした時点で
functionの構造は破壊されてるから、inline展開されるCのマクロにイメージが近いのかも
# 合成ツールは複数のfunction呼び出しを演算器共有のヒントに使わないのか?

わたしの場合は、シミュレーター実行状態をイメージしていて、
functionはスタックに積んで引数を渡すのに近い(最適化していない場合)
と思ったので、Cの関数に近いと言ってしまいますた

喩え話は誤解を招きやすいっす(>>835も変な喩えだ)
838動画直リン:03/04/25 01:13 ID:4J1jbtGy
839名無しさん@3周年:03/04/25 01:24 ID:1sNSQ3Ap
functionはマクロっぽいけど。それより大事なのは組み合わせ回路ができるってこと。
alwaysでもできるけど、よりはっきりしてる罠
840名無しさん@3周年:03/04/25 03:16 ID:F+eLJ0he
この辺りを見てると、VHDLに戻りたくなるなぁ。
ま好みの問題だけど。
841名無しさん@3周年:03/04/26 01:45 ID:gxmwDZZK
組み合わせ回路をfunctionで書くか、alwaysで書くか、の問題は
Verilogに仕掛けられた最大の罠だねー。
どっち派の派閥の言い分も一理あって、一度抗争が起こると果てし無く発展する。
一見論理的な論争になるが、結局は趣味の問題、適材適所としないと収束しない。
842名無しさん@3周年:03/04/26 15:11 ID:1iyVLQow

こんなのが発売されてるよーー

http://www.solitonwave.co.jp/product/hdl/index.html

電話したらまだ売っていた
843bloom:03/04/26 15:13 ID:BvlXMLH5
844名無しさん@3周年:03/04/26 21:24 ID:UvmM4LR2
>>841
趣味の問題といっても、Verilogを作った人間の意図としては
functionが組み合わせ、alwaysがラッチだろ。
結果は同じだからと、意図を無視する人間は、大概何らかしらの欠陥があるな。
845名無しさん@3周年:03/04/27 00:00 ID:JFdpjBW4
VHDLのパラメタライズ化で悩んでいます。

例えばN進カウンタのNをパラメータで渡すとします。
Nが100だった場合に必要なカウンタのビット幅は7ビットですが、
この7を求めるにはどうしたら良いのでしょうか?
846名無しさん@3周年:03/04/27 00:56 ID:0e9DocbI
>>841
>組み合わせ回路をfunctionで書くか、alwaysで書くか、の問題は
>Verilogに仕掛けられた最大の罠だねー。

通常はalways。 こっちのほうがlint関連とかのトラブルが少ない。
あと、デバッグが楽。
同じ組み合わせ論理を引数替えて複数使うときはfunction。
847名無しさん@3周年:03/04/27 08:32 ID:dUZnOjxv
>>845
そこまで便利ではないよ。
そもそも変数のビット幅とカウンタのビット幅の関係をよく考えてみれば解るはず。
どこをどう取り出すかを先に決めないでどう回路が出来るのだ?
848名無しさん@3周年:03/04/27 13:15 ID:v5jHvIJ3
>>この7を求めるにはどうしたら良いのでしょうか?
それに対して
>>そこまで便利ではないよ。
>>そもそも変数のビット幅とカウンタのビット幅の関係をよく考えてみれば解るはず。
>>どこをどう取り出すかを先に決めないでどう回路が出来るのだ?

何言ってるんだか?
論理としては、
[log2(100)]、[]ガウス記号
Cでやるなら
(int)(log2(100))
VHDLではコンパイルオプションでは無理だな。
Verilogなら`defineでlogをテーラ展開すればなんとかなるかもしれない。
849名無しさん@3周年:03/04/27 13:21 ID:v5jHvIJ3
すまん大訂正・・・カッコ悪
[log2(100)]+1
(int)(log2(100))+1
だった。
850845:03/04/27 15:55 ID:MHTUXFA6
>>848

アドバイス有り難うございます。

>VHDLではコンパイルオプションでは無理だな。

やっぱり無理ですが・・・
最終手段はCかなんかで変換プログラムを作るしか無いのですね。
851名無しさん@3周年:03/04/29 00:21 ID:3X6F+zaN
>>最終手段はCかなんかで変換プログラムを作るしか無いのですね。
これならperlあたりが便利だよ。
でもなぁ・・・そんなことすると統合環境上からだと使いにくいんだよな。
無理やりできても結局開発効率が低下すればHDLなんて使う意味がないんだよね。
Cと同じコンパイルオプションを採用してくれてたら何も問題なかったんだけどね。
852名無しさん@3周年:03/04/30 01:19 ID:nIVrPJAa
>>851
いや、最終手段というのは泥臭くてもなんでもインプレメンテーションすりゃあ良いと
開き直れば、手はいくらでもあるわけでして。
例えば100という数だって2進パラレルで入力されるのが普通だろうから、その並びをMSB側から見ていって
初めて1が表れた所より下のビット数が必要なわけだわな。
仕様が決まって10本入力用意してあるとして、MSBが1なら10bit、MSBが0でその下が1なら9bit必要と、

853名無しさん@3周年:03/05/01 02:38 ID:acfL8d4T
>>827
aが31Bit以下なら(32Bitは不可)
a<=conv_std_logic_vector(conv_integer(b(WIDTH-1 downto 0)),***);
854名無しさん@3周年:03/05/01 02:41 ID:acfL8d4T
>32Bitは不可
「32Bitは危険」に訂正
855名無しさん@3周年:03/05/01 10:31 ID:HlAzk+d6
>>842
お前か。2chで宣伝したのわ?
BBSが2ch臭くなって、パンヂーが誰も寄り付かんわ!

http://bbs1.kze.ne.jp/hdl_trainer/
856名無しさん@3周年:03/05/01 11:45 ID:0X+7dA9C
>>855
書き込みを見てると、下らない事書いてる方が
恥ずかしくなる内容だと・・・。
なんて言うか、本当に頭の悪さが滲み出てますね。
857名無しさん@3周年:03/05/01 23:52 ID:acfL8d4T
>>850
変換プログラム作るぐらいなら、
log2の関数を自分で作るのはだめなの?
858名無しさん@3周年:03/05/02 11:30 ID:1wOhIMuV
えと、XilinXのWeb Pack ISE (5.2.01i)を使っているのですが
module xx(a,b,y1,y2);
 input a,b;
 output y1,y2;

 assign y1 = a & a ;
 assign y2 = a & b ;
endmodule

ってな、ちょっと意味無し論理を合成すると、
出力された回路図を View RTL Schematic で見ると
なんか変 ( y2の入力がbだけになっていて、y1が見当たらない)
なんですが。

 assign y1 = a & !a ;
ってやると、ちゃんと(?) y1が常0になる回路図が出ます。
どでしょか?

859858:03/05/02 11:32 ID:1wOhIMuV
ちなみにImplementDesignは通るし、
ModelSimもちゃんと動作してますので、
ビュアだけの問題かもしれませんが
860名無しさん@3周年:03/05/02 12:10 ID:W2TshvSc
>>858
最適化されただけではないかと。

入力と同じ出力は不要と判断したのかな。
合成ツールのマニュアルを読んでみることを薦めちゃうわ。
861858:03/05/02 12:38 ID:DfBFrWiG
>>860
http://www.kari.to/upload/source/0001.png
いや、それがこうなるんですわ。
862名無しさん@3周年:03/05/02 23:17 ID:cFDUQkdG
>>850
そもそも range 付きの integer で記述するのはだめなのか?
とか聞いてみたり。
863名無しさん@3周年:03/05/02 23:50 ID:W2TshvSc
>>861
あんた、「最適化」の意味わかってるか?
864名無しさん@3周年:03/05/03 00:31 ID:+G3S1K6e
>>858
それはツールのバグちゃう?
865名無しさん@3周年:03/05/07 07:43 ID:VM00j003
スタンダードセルとHDLの相性はどうなんでしょうか?
いまいちスタンダードセルというのがよくわからないです。
866名無しさん@3周年:03/05/07 11:13 ID:Uw18AtH8
>>865
分かっていることを書いてみてよ。
でないとアドバイスのしようがないし。
867名無しさん@3周年:03/05/07 20:54 ID:VM00j003
>>866
今まで経験してきたのは、FPGAだけです。
FPGAだと、RTLでゲートレベルまで突っ込んだ設計はほとんどしないけど、
ASICだと、HDLでも、かなり細かいところまで手を加えると聞いてます。
で、スタンダードセルの場合は、どんな感じなのかなと思って。。。
868名無しさん@3周年:03/05/07 21:15 ID:u4sWa0HD
そもそもスタセルとHDLの相性云々て話を持ち出す事自体
どうかしてると思うな。

DCが生成した回路がまずいと思ったら、少し掘り下げて生成
される回路を意識して書くとかって位ではないか?
その辺りは実際経験してみたらいい。
869名無しさん@3周年:03/05/07 21:46 ID:gSdqqiRL
>867
RTLでゲートレベルまで突っ込んだ設計ってのは矛盾してないかい?その時点でRTLでは無
くなって単なるネットリストになっていると思うが。
合成結果を気にするのなら、俺の経験の範囲内だとVerilogだけで申し訳ないが、FPGAで
動作する記述が書けてればASICで動く記述は書ける。ASICのみの経験で合成結果を考え
ないような設計をしていた連中が、FPGAではまってたのを見たことがある。
ASICはFPGAより制約が無くて楽だと思っていいと思う。
870名無しさん@3周年:03/05/07 22:13 ID:tIyVMY+F
>>869
ま、ネットリストもHDLで書けるからな。
871名無しさん@3周年:03/05/07 22:15 ID:tIyVMY+F
>>869
> ASICはFPGAより制約が無くて楽だと思っていいと思う。

周波数が低いならそれでいいが、
数十MHz以上あって、プロセス0.25以下とかだと、それなりに大変だぞ。
RTLのファンクションを実現するための仕掛けをいろいろとやらないといけない。

FPGAの方が楽だと痛感する。
#失敗しても安いし。
872名無しさん@3周年:03/05/07 23:03 ID:Wgx5Y4MJ
>>869
>ASICはFPGAより制約が無くて楽だと思っていいと思う。

そりゃちょっと言いすぎかもね。まあいろいろある。
873名無しさん@3周年:03/05/08 00:22 ID:mRfmT30d
>871
>数十MHz以上あって、プロセス0.25以下とかだと、それなりに大変だぞ。

逆だろ?100MHz程度、0.13までやったことあるが、全然楽だったぞ。
ま、製品や規模にもよるとは思うけど、経験積んでてどこに注意すればよいか判って
れば、ルーチンワークみたいな感覚だけど。
あくまでHDLの話なんで、コンパイルしてから後のレイアウト等はおいといて。
874bloom:03/05/08 00:25 ID:HviAazGX
875名無しさん@3周年:03/05/08 07:36 ID:STQ2VpWO
>>873
> 逆だろ?100MHz程度、0.13までやったことあるが、全然楽だったぞ。
> ま、製品や規模にもよるとは思うけど、経験積んでてどこに注意すればよいか判って
> れば、ルーチンワークみたいな感覚だけど。

経験でホールドエラーなどを予測できるとは、たいしたもんだよ。
是非とも君に仕事を頼みたい。
876名無しさん@3周年:03/05/08 12:19 ID:QrZzXqmG
>>873
は集中定数分布定数使ったレイアウトを100MHzのバスで組んだことあるんかね・・・?
100MHzとなりゃ、空を飛んでるFMとおなじくらいだから、レイアウト悪いと隣接配線にも乗りまくるわけで・・・
877bloom:03/05/08 12:25 ID:HviAazGX
878名無しさん@3周年:03/05/08 13:23 ID:QrZzXqmG
そういや、PENは基本的にパイプラインを引き継いでるからアドレスラインとデータラインはPIN一個飛びずつ動作してるの利用して
2PINか3PINおきにVCCまたはGNDもうけてコプレーナライン形成し、さらにその上に多層基盤でマイクロストリップライン形成して
最大限にスピードを出せるようLSIも基盤も設計されてるが、単なるLSI屋じゃそこまで考えず整然とバカ正直にA線D線が順番に並んでるからスピードだそうとすれば
基盤屋にしてみれば相互緩衝がどうしても苦悩の種で、LSI屋にしてみればチップだけ作ってあと知らんて感じだからイタイ罠。

879名無しさん@3周年:03/05/08 15:54 ID:34YjL05/
>>878
200M程度ならそこまでしなくても動くぞ。
経験済みっす。
880名無しさん@3周年:03/05/08 16:20 ID:QrZzXqmG
>>879
200Mてチップの?バスだとチップは800Mにもなるからそうだろうな。
バスクロックは50Mか・・・。それでもかなりFMに近い罠。
基盤屋さんが動くように基盤を作ってくれたのだよ。
ところで100M、200Mって、どんな製品?
881名無しさん@3周年:03/05/08 16:22 ID:97IS2YuU
オナニー友の会
http://homepage3.nifty.com/coco-nut/
882bloom:03/05/08 16:25 ID:HviAazGX
883名無しさん@3周年:03/05/08 16:46 ID:QrZzXqmG
そういやよくあるよな。チップ屋がバカみたいに綺麗に順番に並べたバスラインのPINで
並んだまんまのバス配線じゃ動作しないから、PIN一本おきに、ベア作って中間層に持っていて、表層と中間層の間はべたアースのマイクロストリップかましてある手が混んだ基盤が・・・
バカチップ屋のためにそんな基盤設計させられたら基盤コストもかかってしょうがない罠。チップ屋は動く実装基盤見てただ喜ぶだけだろう。配線の実装が実物のようになっている理由なんて考えもしないし、そんな能力ないしな。
で、悪い方に転がって、ジッタがすごくて動きませんとなったときに、どうすればいいか分からなくて慌てふためくんだよな・・・
884名無しさん@3周年:03/05/08 16:54 ID:34YjL05/
>>880
いや、DDRSDRAMのI/Fだから、データバスに限って言えば400Mだったが。
で、基板上で色々と工夫をした物のコプレーナ云々は意識せずに出来たぞ。
当然、Simで伝送路の特性や波形も見たりするわけね。
必要ない部分に無駄な技術を投入することもないって事だよ。

あとさ、基板屋に任せっきりで動いたって思ってる君は甘過ぎだな。
885名無しさん@3周年:03/05/08 16:55 ID:34YjL05/
基板を基盤と書く奴も信用出来んがな。(w
886名無しさん@3周年:03/05/08 17:04 ID:QrZzXqmG
↑バスクロック400Mでそれでよく動いたなぁ。
少なくともライン2,3本に一本はGND入れないと動きそうにないんだが。
当然2層目はベタアースでしょ?
887名無しさん@3周年:03/05/08 17:19 ID:34YjL05/
>>886
まーな、特性インピーダンス50[Ω]保証の基板だし。
IBISやらPSpiceを使ったSimをするから実際には余り
凝った事をしなくてもきちんとマージンまで見越した
設計が出来る所まで来てるんだよ。

もっともっと高周波になると難しいだろうね。

ただ、RAMBUSでも実績があるがあれもそれ程難しい
物で無かったと記憶してるよ。
888素人:03/05/08 18:33 ID:dCnHSWTA
質問なんですけど、32×8のDDR400の石って、どうしてスポットで65ドルもしているのですか?高すぎませんか?
作るのが難しいのですか?ごめんなさい。おばかな質問です。
889名無しさん@3周年:03/05/08 19:52 ID:obrjHHKh
>>887
けっきょくあなたが偉いのではなく、設計ノウハウを持っている基板屋さんが
とっても偉いだけでないの?

どうもこの書かれている内容は、俺の知っている某PCB屋の技術者のような
気がするのだが・・・。

>>888
そんなもんだろう、、、、、うちも、、、
890名無しさん@3周年:03/05/08 22:18 ID:34YjL05/
>>889
基板屋さんが偉いんですか。(w

少なくとも君がよく解ってない奴だって事だけは理解出来た。
インピーダンス管理と、Simを一緒にしてるんか?
891名無しさん@3周年:03/05/08 23:20 ID:obrjHHKh
>>890
いや、悪いがかなり良く知っている。ここで書いてもあなたの文章同様信憑性はないが。

>まーな、特性インピーダンス50[Ω]保証の基板だし。
こんなのは回路設計者は指定するだけで、公差+/-5%などに収めることができる基板屋さんが偉いと
書いたんだ。

まぁ890さん。
よくがんばったよ。これからも日本の技術の更新のために
次のレポートをよろしく
892名無しさん@3周年:03/05/08 23:26 ID:obrjHHKh
スレにそった事を書くけれど
FSM(ステートマシン)オプティマイザって必要あるかい?
俺はVerilog-HDLでコードを書いた瞬間に、合成後のステートマシンの形式は
決まってしまうと思うんだけれど

究極のステートマシンはシフトレジスタです、と聞いたことがあるんだけれどね。

最近の高位合成ツールの説明にFSMオプティマイズがだいたい乗っているから
もし、これが効果的ならこれらサポートのツールを次期導入に進言しようかと。
893名無しさん@3周年:03/05/08 23:48 ID:34YjL05/
てか君の書いてる事って全然たいしたこと無いんだけど。

アホもそこまで行ったら立派だわ。
894名無しさん@3周年:03/05/08 23:49 ID:34YjL05/
的外れな事を大いばりで書くのが最近の流行のようで。(w
895名無しさん@3周年:03/05/09 00:00 ID:RF9rTDfE
>>894
相手してあげようか?
896名無しさん@3周年:03/05/09 00:23 ID:8xbjMy4O
うちの会社の別の部署なんだが、過去にASICもCPLDも殆ど経験無いのに いきなりFPGAを製品に使うことにして
開発は何を考えたか、Cだと。
VerilogもVHDLも分かる人いないからだと。

で、思ったような結果が得られなくて苦しんでるらしい。まあ、マネージャがヴァカなんだな。
高い金額のツールを買えば便利だろうぐらいに思ってCで書いてるようだ、救いがたい。
897bloom:03/05/09 00:25 ID:qyXUH2Id
898名無しさん@3周年:03/05/09 00:27 ID:cWZVblFE
>>894
それ、自分の書きこみを落ち着いてみてみなよ.
あなたのことじゃないかな?

俺以外の人もそれで反応しているんじゃないかい?

バスクロック200Mhzの設計、本当によくがんばったね。
ごくろうさま
899名無しさん@3周年:03/05/09 00:39 ID:A6bamqE+
>>896
EDA営業の糞な嘘宣伝にはめられただけだよね。またちょいちょい聞くんだ、そういう話(w
900名無しさん@3周年:03/05/09 00:46 ID:3kysBjTV
>>896
結局、現状は、CからHDLを吐き出すための中間ツールだからね。
それ以前に、ハードの事をある程度解っていないと、HDLを使う
事はかなり無理があるのを解ってなかったのだろう。
それを導入するなら、シンプリファイかアンプリファイを買った方が
ずっと役に立ったのではないかな。
901892:03/05/09 00:57 ID:cWZVblFE
横レスすみません
それってフィジカルシンセサイザ(Amplifyのほう)の導入のほうがよかったということですか。
さきのFSMもそうですが、フィジカルシンセサイザは非常に有効なツールだとは
聞いているので、ご存知であれば教えてください
902名無しさん@3周年:03/05/09 01:18 ID:3kysBjTV
>>901
いや、漏れもそこまでは知らないですよ。
ただ、使ってる人にはよく勧められます。
五百万がなかなか出せないから導入はすぐってわけに
いかないのが悩み所ですね。

あと、シーケンサに関しては、ワンホットを自前で書いてれば
それ以上高速な回路にはなりようがないのではないかなって
思いますよ。
903892:03/05/09 01:48 ID:cWZVblFE
横レスで回答ありがとうございます

うちも営業が来てフィジカルは薦められているので興味はあるんです
価格はまさにそのとおりであり、たしかに手出しづらいです(汗

シーケンサのほうもそうですよね、、、
ステートマシン系ってオプティマイズさせるようなコードを書くほうが
難しいような気もしてくるのですが、これは設計になれているからカモ
904名無しさん@3周年:03/05/09 02:54 ID:yVpHUubK
>871
>数十MHz以上あって、プロセス0.25以下とかだと、それなりに大変だぞ。

そのクラスだと、ここらに出たような手設計オプティマイズはしない(しても
プロセス&EDAのおかげでするだけの効果/労力が無いし、無理な手設計の結果バグを
誘発するようなことになっては恐いし、そんなオプティマイズする暇あるなら
ほかの検証でもやってな、ってことになる) から、かえって楽かも。

マネージメントにかかる労力は桁違いだが。
905名無しさん@3周年:03/05/09 03:07 ID:J8s6JkNe
ホントのところ200MHzバスクロックのASICって簡単なのかそうじゃないのかどっちなのよ。
最新のFPGAだと何MHzぐらいで動くと世間の相場なのよ?例えば16ビットx16ビットの乗算回路では?
もっと具体例としていいのがあればそれを使ってくれてもいいけど。
906名無しさん@3周年:03/05/09 23:05 ID:X8+OwS+N
FSMのオプティマイズって、面積・スピード方向だと殆ど効果ないと思う。
コンパイラが静的な方法でオプティマイズした結果と、人間がHDLで適当にアサインした結果で
大幅に変わった例を知らない。

けど、消費電力にシビアなシステムでは、オプティマイズにsimのプロファイル結果を反映できると
結構変わりそうな気がする。
907堕天使:03/05/10 21:25 ID:oARjlPaY
908名無しさん@3周年:03/05/10 22:22 ID:qkI9dU/Y
女性は無料で遊べる!逢える!恋愛出きる!
もう寂しい生活とは縁を切ろうね!
愛して 愛される そんな出会いがなきゃ
生きてる 意味がない!
http://www.sweet.st
909動画直リン:03/05/10 22:25 ID:NuXhkOeV
910名無しさん@3周年:03/05/11 18:02 ID:6MQrf2Zh
>最新のFPGAだと何MHzぐらいで動くと世間の相場なのよ?例えば16ビットx16ビットの乗算回路では?

よく知らん。ヒマだったらFPGA会社からツールやライブラリを
ダウンロードして試してちょうだい。
でもこうゆうのってあんまり意味ないよ。
たとえ500MHzで動いても、周りがついていけない。
たとえ20MHzでしか動かなくても、CPUコアやDDR使うなら
それに合わせてバスは50、66、100、133MHzとかに
するだろうから、133MHz7サイクル乗算器とかになるでしょ。
911名無しさん@3周年:03/05/12 01:18 ID:pgzDguhR
>905
今時、200MHz程度ならRTLから合成できる組み込みCPUもある。
ま、俺は200MHzはまだやったことないからちょっとは悩むと思うが、ASIC内なら
そう難しくないと思う。
外に出す場合は最近盛り上がっているように大変だけど、基板屋とちゃんと相談
すれば良いこと。仕事が細分化されてるから、自分のとこだけできれば良いとい
うことでは最終的に良いものはできない。
ただ、これはHDLとは関係無い話だけど。
だんだんスレ違いになってるような・・・
912名無しさん@3周年:03/05/12 03:43 ID:HFcOwNTP
>133MHz7サイクル乗算器とかになるでしょ。
なんで7サイクル?
どうせなら1サイクルを目指してもいいじゃん。
何もPCのペリフェラルに使うことを前提にすることもないと思うんだけどね。
913名無しさん@3周年:03/05/12 06:16 ID:eRKdkDZP
>>911
相談だけでは基板上で、200Mは難しいぞ。
実際現場に乗り込んでSimの結果をどう反映させるか等の
努力が必要。

この辺りが解ってない奴は自分の無能を基板屋の所為に
したりするんだろうが。
914名無しさん@3周年:03/05/12 07:25 ID:PfExja+C
>913
そこら辺の細かいニュアンスは察してくれ。一々細かいことまで書く気はしない。
でも、補足してくれてありがd。
ASICのロジックしか経験してない奴って、そこら辺のこと全然知らないことがある
から、そんな奴がリーダーになって石作るとえらいことになる。一度、「俺は動か
ない石を1年かけて作るのか?」と真剣に悩んだことがあるw
915名無しさん@3周年:03/05/13 23:09 ID:YDkUdJsD
非常に初歩的な質問で申し訳ありませんが入出力端子inoutを持ったmoduleの
テストフィクスチャを書こうとしているのですが、なんと定義したらよいのかわかりません。
regでもないし、wireにしたら文法チェックは通るのですが…。
916名無しさん@3周年:03/05/13 23:30 ID:wyghNHop
>>915
signal でいいですよ。
917名無しさん@3周年:03/05/14 00:03 ID:8mmAjebp
>>912
910はPCペリフェラルとは言ってないぞ。PCコアだからFPGAの上にPCを乗せる話だね。
それで外部にDDR使うならそことのI/Fは133MHzになると言ってる。

まあ乗算器つきのPCシステムオンチップということになるのだろうけど、500MHzで乗算器
動かしても、PCコアが500MHzで走ってない限り意味無いのかも。500MHzはFPGAではまだきつそうだよね?
もし走るとしたら、PCコアの命令拡張という意味では有意義かと。まあ、DSPに近いかね。

コアがI/Fの倍数クロックで動くCPUなんてあたりまえの世界だよね。
あ、結局912と同じ結論か?すまんね。
918915:03/05/14 14:56 ID:Ev2pde1q
>>916
すみません。verilogで書いているのですがsignal宣言はVHDLだけのものなんですよね?(自信なし)
919名無しさん@3周年:03/05/14 16:26 ID:M1knrdCz
>>918
おまいさんのやりたいことがわからん。

質問を的確に書くのも、技術者に必要な素養だぞ。
920名無しさん@3周年:03/05/15 00:54 ID:YCVWO13e
>>915
wireでとおるのなら、テストフィクスチャはそのwireをドライブすれば良いじゃん。
inout使うのなら普通は渡来ステートバスを表現しているのだろうから、
例えばbusifを使ったら?
921名無しさん@3周年:03/05/19 04:41 ID:Wkq3uXML
このスレさぁ。盛り上がるときは
ワッとくるけど、すぐ沈静化しちゃうんだよなぁ。


ネタ振りだけど・・・
ISE5.2i だけど。サービスパックどころかIPアップデータってのが出てるけど・・・
これ大バグバージョンってことなのけ?
922名無しさん@3周年:03/05/19 12:19 ID:NxBMA/cv
HDLでなくて申し訳ないんですが、2つのアナログ値(電圧)を大小比較して
1bitの出力を出す(コンパレータ?)回路で有名どころがあったら名前とか
ご教授いただけないでしょうか・・・。
923名無しさん@3周年:03/05/19 18:03 ID:j6geNrES
>>922
つっか、コンパレータだよな。
オペアンプでもOK? LM358とか?
PICマイコンのアナログコンパレータ搭載機でもOKだっ!
924名無しさん@3周年:03/05/19 18:07 ID:hq0rqus+
>>922
有名どころのコンパレータのデータシートを読めば回路図載ってるよ
CQ出版からでてる規格表しらべてごらん
925名無しさん@3周年:03/05/19 21:10 ID:NxBMA/cv
>>923-924
ありがとうございます。
CMOSでこのような回路を組むにはと色々さがしたのですが。
とりあえず、お二方から頂いた情報を調べてみます。
926名無しさん@3周年:03/05/19 21:37 ID:W/S5mA08
FPGAの場合、Vrefを使う事も出来るよ。>コンパレータ
927名無しさん@3周年:03/05/20 03:50 ID:NXwI49oq
量産品に載せるならそれこそ値段考えてちゃんと設計する必要があるけど。
試作やジグでいいなら>>923がいうようにPICでやるのがてっとりばやいんじゃないの?
でだんだんアナログ回路例なんてのを忘れていく・・・
928名無しさん@3周年:03/05/20 10:17 ID:NY2Giev0
>>927
PICの方がいいか?どう考えてもコンパレータの方がてっとりばやいが。
PICだったらプログラム(というか、設定だけだけど)せにゃならんし。
(後で、やっぱり2ビットパラレルで出したいという変更をせにゃならん
 なんて事にならないかぎり)
929名無しさん@3周年:03/05/23 03:16 ID:EYv/w/22
やっぱりオペアンでしょ。暇ならディスクリートで組んでみるってのはど?
930名無しさん@3周年:03/05/28 03:36 ID:PFsK3hgM
そろそろ新スレたててくれ
931山崎渉:03/05/28 15:01 ID:/6YB7YdC
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
932名無しさん@3周年:03/05/30 20:46 ID:OlxqXjk/
VHDLで書いたのを回路図にできるフリーのソフトってないですか?


933932:03/05/30 21:58 ID:OlxqXjk/
ごめんなさい
Xilinxでできました。

けど、CADで読み込めない…
934名無しさん@3周年:03/05/31 00:46 ID:qQl6bioW
>933
フリーなの?
935名無しさん@3周年:03/05/31 01:33 ID:30nXwoLf
>>934
Webpackの標準機能でできるよ
936名無しさん@3周年:03/05/31 02:19 ID:gWanLwnO
あなたが探してる話題あれはこれでしょ♪
http://angelers.free-city.net/page003.html
937名無しさん@3周年:03/06/06 21:56 ID:NAaMqylW
signal INPUT : std_logic_vector(3 downto 0);
signal TMP : std_logic;
begin

INPUT <= J & K & CK & R;
process ( INPUT ) begin
case INPUT is
when "0111" => TMP <= '0';
when "1011" => TMP <= '1';
when "1111" => TMP <= not TMP;
when "0110" => TMP <= '0';
when "1010" => TMP <= '0';
when "1110" => TMP <= '0';
when "0010" => TMP <= '0';
when others => null;
end case;
end process;
がインプリメントデザインできません。
文法エラーは出ないのですが。
どこを帰ればいいのでしょうか?
938名無しさん@3周年:03/06/07 02:52 ID:39z6mARB
>937
VHDLは久しく見てないので、違ったらスマソ。

> when "1111" => TMP <= not TMP;
これ、アリなの?

processの条件が、
> INPUT <= J & K & CK & R;
> process ( INPUT ) begin
だと、単なるセレクタイメージなんですが…
939938:03/06/07 02:56 ID:39z6mARB
というか、もしかして、F/Fを書こうとしている?
だったら、そこで、caseを使う事自体が間違い…

>937の場合
> どこを帰ればいいのでしょうか?
という答えに、「教科書に帰れ」となってしまうかも。

とりあえず、どんな回路を書きたいの?
940名無しさん@3周年:03/06/07 14:17 ID:wGZF3Fk3
>937
意図する動作になるかはわからないけど、とりあえず
process ( INPUT,TMP ) begin
としてみたら。
941Leliel(れりえる):03/06/07 15:01 ID:oiP1nr77
>>937さんへ
CK=Clockの事だと思うのですが、FFであればCKのエッジを取り込みタイミングにするような
回路を記述するのではないでしょうか?
942名無しさん@3周年:03/06/07 15:03 ID:lGXqlKqW
>>940
基本的に動作のためのキーだから入力だけで回路を
動かす意図なら、TMPをセンシティビティーリストに
入れる必要は無いと思うが。
943名無しさん@3周年:03/06/07 17:09 ID:QWIPkPbL
なんか知らない間に質が落ちてるな。

>>937は、もう一度教科書を読み直したほうがいい。
944名無しさん@3周年:03/06/07 18:21 ID:wGZF3Fk3
>942[
この行があったので、、
 when "1111" => TMP <= not TMP;
センシビティリストは合成時無視されるので(デザインコンパイラだけの話なのかな?)、
RTLでの動作と合成後の動作が異ならないよう、クロック同期以外のプロセス文の場合
すべての入力があったほうがいいのでは?
945名無しさん@3周年:03/06/07 18:26 ID:wGZF3Fk3
補足。
RTLと合成後で結果が違う例。
process(C)begin
 A<=C;
 B<=A
end;

RTLと合成後で結果が同じ例。
process(A,C)begin
 A<=C;
 B<=A
end;
946938:03/06/07 22:13 ID:39z6mARB
>944

言っている事は、正しいが
> RTLでの動作と合成後の動作が異ならないよう
コレは異なる時点でダメでしょう。
(説明が自分でできるレベルならいいけど)

で、>937
セレクタを書きたいのなら、リストにTMPを加えれば良いのではないかと。

どんな回路を作りたいのか、それの動作の「きっかけ」となる信号は何じゃ?
というんを意識すれば宜しいのではないかと…
#これ学生なら許すけど社会人ならステだな。調べ方が間違っているから(w
947名無しさん@3周年:03/06/07 23:38 ID:IH7YWypa
>>946
セレクタを書きたいのなら
>when "1111" => TMP <= not TMP;
が全然駄目だよね。組み合わせ回路がループになるんですが。
948938:03/06/08 00:01 ID:QpYSQEdS
>947
あ、そらそうだ…TMPiとか入力を変えて(ry

というように、文法はOKでも合成できないケースは多々あります。 >937
#そら、テストベンチを書くためには合成の制約は関係ないですから。
ですので「どんな回路を書きたいか?」を意識して書く事が大切です。
#合成ツールは四次元ポケットではありません。そうなら嬉しいけど(w
949名無しさん@3周年:03/06/11 16:41 ID:7yXHKlNP
あの、ちょっとお聞きしたいのですが・・・、
PCのマザーボード等に乗っているCPU,ブリッジLSIなどは、
(フルカスタムLSIというのでしょうか。間違ってたらすいません)
HDLで書いてそれを合成して、レイアウトして、Mebesフォーマットに変換してマスク製造するのですか?
(大事なSIMを省いてしまいましたがスマソデス)
950名無しさん@3周年:03/06/12 17:45 ID:oV0RTRm8
Verilogでシフトレジスタをすっきり&格好良く記述するにはどうすれば良いでしょうか?
いつもは↓なんですが、なんかスッキリこない・・・
ループで書いても記述しても良いのですが、
ひと目みてシフトレジスタだと解らないし。

dbuf[0] <= in;
dbuf[1] <= dbuf[0];
dbuf[2]<= dbuf[1];
dbuf[3]<= dbuf[2];
dbuf[4]<= dbuf[3];
dbuf[5]<= dbuf[4];
dbuf[6]<= dbuf[5];
dbuf[7]<= dbuf[6];
951名無しさん@3周年:03/06/12 20:05 ID:MLPr7DDV
シフトレジスタはこう書くと一番シンプルでは
dbuf[0] <= in;
dbuf[7:1] <= dbuf[6:0];
952名無しさん@3周年:03/06/12 22:02 ID:Uf4rDYro
>>951
いや、ループで書いても「ひとめで分からない」人だから、却下。

ひとめでわかるように、

                                             dbuf[0] <= in;
                                      dbuf[1] <= dbuf[0];
                                dbuf[2]<= dbuf[1];
                          dbuf[3]<= dbuf[2];
                    dbuf[4]<= dbuf[3];
              dbuf[5]<= dbuf[4];
       dbuf[6]<= dbuf[5];
dbuf[7]<= dbuf[6];


と、これくらいにしないとだめ。
953938:03/06/13 00:45 ID:2fx1PNlr
他人のソースとかって探したりしないの > 950

dbuf[7:0] <= {dbuf[6,0],in}

とかって、普通に見るような気がするが…
#dbuf7,dbuf6とかって名前でreg宣言されるとアレですが。
954名無しさん@3周年:03/06/13 20:07 ID:ciGk+xL9
Peak VHDLお試し版使ってみたのですが、compileで
Simulation has not been enable.Please verify that you have registered your software.
とでてできません。ガイドで指定されたように1ファイル50セミコロン以内に抑えて、階層も上位側をテストベンチにしたのですが・・・
ちなみに添付されてるexampleフォルダの中のファイルもコンパイルしても同じように出ます。
本によると、添付されてる例はシミュレーションできるようなことが書いてあったのですが。どうなっちゃてるんでしょう。
おねがいしますゥ(´Д`;;)
955名無しさん@3周年:03/06/13 23:06 ID:n/XjX1vI
>953
ダメですよ。FFを介していれば別ですが、、
FFを介さない下記がどんな回路になるか考えてください。
A <= not A;
956938:03/06/14 01:37 ID:dfySxD4N
>955
ん?
wire A
で、宣言していて、これって書けるの?

暗黙でreg [7:0] dbufと思っていたが。









あ、釣られたか(;_;)
957954:03/06/15 11:54 ID:tMHHtGq9
他のHDL関係のスレで「MEなんか無かったことにしておけ」
というのを見たんですが、も;..、もしかしてMEだと
>>954のPeak VHDLお試し版は動かなかったりしますか?
あぁ、全然進まない・・・。よろしくです。(´Д`;;)
958名無しさん@3周年:03/06/15 19:56 ID:RrahMB9j
>>957
お試し版の説明に何か書いていないか?

ちなみにMeは色々ごちゃごちゃシステムにくっつけているせいでリソースがうんこ少ない
959名無しさん@3周年
>>958
当方、メモリ128MBite、OSはMEなのですが、
Peak VHDLのプロジェクトFileと.hdlファイル(RTLとテストベンチ)立ち上げたときの
システムリソース見てみたのですが、
システムリソース 残り 57%
Userリソース   残り 57%
GDIリソース   残り 85%
でした。足りないですか?