トップページ⇒denki
1001コメント354KB

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

■ このスレッドは過去ログ倉庫に格納されています
0001792= ◆YMO/ALTERA 04/09/03 12:21ID:p+kby74r
HDLの処理系も、それを実際に動かすシミュレータ・評価基板も
安価で入手できるようになってきました。

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

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

前スレ
【Verilog】プログラムで作る回路 Project1【VHDL】
http://science3.2ch.net/test/read.cgi/denki/1072330555/l50
0367774ワット発電中さん05/01/22 19:39:07ID:VeKFfALg
>>363
通信に双方向が許されてないとかってのもあった気がするな。
バッファは244かその相当品に限るとか。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

casex(1)
(a & b & (c==123) & d) : 処理A;
(e | f) : 処理B;
:
:

これじゃ case 文でいいよなぁ
じゃあこうかな?

casex( {a,b,(c==123),d,e,f} )
6'b1111xx : 処理A;
6'bxxxxx1 ,
6'bxxxx1x : 処理B;
:
:

もし上記のいずれかなら自分は if else だな

if (a && b && (c==123) && d)
 処理A ;
else if (e || f)
 処理B ;
else if (...
:
:

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

  3'b1xx: 処理;

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

訂正1:例えば、ホスト側がずーっとメモリにアクセスしっぱなしだとFIFOが溢れるように思うんですけど?
訂正2: 因みに、コントローラ自身は外部ホストからのリクエストでメモリにアクセスして
0465774ワット発電中さん05/02/11 23:52:11ID:VxQeqSfB
しらふで出直してこい
0466774ワット発電中さん05/02/12 00:09:11ID:LI1JaXD0
>>465
わからんもんなぁ。おまえのおつむじゃ
■ このスレッドは過去ログ倉庫に格納されています