FPGA BBS

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 発言ランク 検索 過去ログ

ログ内検索
・キーワードを複数指定する場合は 半角スペース で区切ってください。
・検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
・[返信]をクリックすると返信ページへ移動します。 (*過去ログは表示されません)
・過去ログから探す場合は検索範囲から過去ログを選択。

キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

全過去ログを検索

<< 0 | 1 | 2 | 3 >>
■255  ISEWebPackでブロックRAMをROMとして使用
□投稿者/ もも -(2004/07/21(Wed) 11:36:59)
    みなさんこんにちは.
    ISEWebPackの最新版を使って,設計を行っています.

    ブロックRAMを使ってROMテーブルを実現しようと思っているのですが,やり方がよくわかりません.具体的には,ブロックRAMのプリミティブにROMの初期データファイル(mifファイル)を指定して,ROMが実現できるのでしょうか?

    ALTERAではLPMライブラリというものがあり,フリーのツールでも簡単に実現できていたので,この手軽さでROMを作ることができたらなぁと思ってます.

    有料のISEには,Coregeneratorがあり,ROMの初期データファイル(mifファイル)を指定すれば,mifの内容に沿ったROMテーブルが簡単にできたのですが...フリーのツールではCoreGenも付いていなさそうですし,無理なんでしょうか?

    みなさんはどのようにROMを作っているのでしょうか?お教えいただければ幸いです.
親記事 /過去ログ1より / 関連記事表示
削除チェック/

■259  Re[1]: ISEWebPackでブロックRAMをROMとして使用
□投稿者/ momomo -(2004/07/22(Thu) 10:01:08)
    2004/07/22(Thu) 10:14:11 編集(投稿者)

    私の場合、XSTにてブロックRAMを推論し、ROMとして使用するには以下のような記述を用いています(データ数4096、データ幅8bitの場合)。

    library IEEE;
    use IEEE.STD_LOGIC_1164.ALL;
    use IEEE.STD_LOGIC_ARITH.ALL;
    use IEEE.STD_LOGIC_UNSIGNED.ALL;

    entity rom is
    port (
    clk : in std_logic;
    adr : in std_logic_vector(11 downto 0);
    dat : out std_logic_vector( 7 downto 0)
    );
    end rom;

    architecture RTL of rom is
    type rom_type is array (0 to 4095) of std_logic_vector ( 7 downto 0);
    constant ROM : rom_type :=(
    "00000001",
    "00000010",

    "11111111"
    );
    begin
    process(clk) begin
    if (clk'event and clk = '1') then
    dat <= ROM(CONV_INTEGER(adr));
    end if;
    end process;
    end RTL

    上記のコードをコピペし、必要な部分のみ変更してよく使っています。

    No255に返信(ももさんの記事)
    > みなさんこんにちは.
    > ISEWebPackの最新版を使って,設計を行っています.
    >
    > ブロックRAMを使ってROMテーブルを実現しようと思っているのですが,やり方がよくわかりません.具体的には,ブロックRAMのプリミティブにROMの初期データファイル(mifファイル)を指定して,ROMが実現できるのでしょうか?
    >
    > ALTERAではLPMライブラリというものがあり,フリーのツールでも簡単に実現できていたので,この手軽さでROMを作ることができたらなぁと思ってます.
    >
    > 有料のISEには,Coregeneratorがあり,ROMの初期データファイル(mifファイル)を指定すれば,mifの内容に沿ったROMテーブルが簡単にできたのですが...フリーのツールではCoreGenも付いていなさそうですし,無理なんでしょうか?
    >
    > みなさんはどのようにROMを作っているのでしょうか?お教えいただければ幸いです.
記事No.255 のレス /過去ログ1より / 関連記事表示
削除チェック/

■359  解決しました!
□投稿者/ ライエル -(2004/09/17(Fri) 16:22:01)
    バサロさま,tomatoさまご意見ありがとうございます.

    問題としていたXilinxの内部RAMの初期化方法がわかりました.
    その解決方法はコア・ジェネレータを用いた解決方法です.
    (tomatoさま>VHDLはシングルポートブロックRAMの場合に限り,VHDLソース上で初期値を設計できることと思います.Verilogの場合,それができないのでVerilog-HDLソース上で初期値を与えることもできません.)

    いままでは,HDLソース上でRAMを書いていましたが,そのRAM別のモジュールに分解します.そのRAMをコア・ジェネレータを用いてIP coregenとして新規作成します.そして,同じくコア・ジェネレータを用いて初期化ファイルを作成し,目当てのRAMに割り当てます.
    この方法を用いるとRAM上に初期設計を書き込むことができます.



    > 現在,XilinxのISE6.2(ファンデーション)とSPARTAN2を用いて,パイプラインプロセッサを作成しています.そのCPUをVerilogHDLコードで記述し,XSTを用いて論理合成を行うと4つのRAMが推測されました(命令メモリ用とレジスタファイル用2個とデータメモリ用.)そのRAMは以下のlogのように(XSTのlogから抜粋)dualポート分散RAMが3つ,singleポート分散RAMが1つ推測されました.
    >
    > # LUT RAMs : 4
    > 32x32-bit dual-port distributed RAM: 3
    > 32x32-bit single-port distributed RAM: 1
    >
    > このCPUをテストするとき,論理合成前はテストベンチ上でテキストファイルを読み込ませてシミュレーションを行っていました.しかし,テストベンチはあたりまえですが論理合成しません.よって論理合成後,これらのRAMにどうやって初期値をあたえる方法が分からないので,停滞しています.
    >
    >
    > これら内部分散RAMに初期値をあたえる方法を教えて下さい.単語として,コアジェネレータやCOEファイル(MEMファイル?)などを使えばよいということはWEBを見てなんとなく分かったのですが,情報が混乱し,結局どうすれば推測された内部RAMに初期値をあたえるのかが分かりません.お恥ずかしいことながら,当初はこのぐらい自分の力で解決しようと思いがんばっていたのですが,一週間WEBや文献を調べてもいまだにこれら4つのRAMの初期化ができない自分がいたので,投稿させていただきました.
    > ご解答,ご意見をいただけたら幸です.
記事No.343 のレス / END /過去ログ1より / 関連記事表示
削除チェック/

■901  Re[1]: Core_Generaterについて
□投稿者/ バサロ -(2005/04/09(Sat) 01:17:49)
    むんくさん こんにちは

    > 初めてXilinxを使用するのですが
    > ISE7.1フリー版をインストールしたところ
    > CreateDesign→IP
    > でメモリー関連の項目がまったく表示されません
    > 使用デバイスはDesignWaveに付属のボードです
    > Free版はMemory関係のコアはつくれないのでしょうか?
    > すいませんが教えていただけますでしょうか?

    はい、有りません。。
    コアジェン(coregen)と、呼んでいますが、IP関係は、
    有料のツールしかついていません。。。

    ただ、メモリーは、使えますよ。
    HDLで、書いてしまえば、いいわけです。
    がんばってくださいね。
    #メモリー内容を教えてくれれば、参考を出しますけど。
記事No.900 のレス /過去ログ1より / 関連記事表示
削除チェック/

■1028  Re[1]: Xilinxの合成エラー対策
□投稿者/ 深紫 -(2005/05/17(Tue) 01:35:11)
    深紫です。
    こんばんわ。

    下記のようなスタイルで設計したことがないので、
    よくわかりませんが・・・。

    下位階層というのは、RAMとかCoreGeneratorで作成した
    ものではなく、RTLで書いた論理ブロックでしょうか?
    だとしたら、NGCではなく、下位階層もEDIFにしてみるとか、
    もしくは、下位階層のEDIFをTOPレベルの回路をsymplifyで
    合成する時に、いっしょにreadして、TOPに全て含まれるように
    するとかって、してみてはどうでしょうか?
    ちなみに、Maplib:661の後のメッセージは何ですか?
    あと、NGCってなんでしたっけ?ngdbuildの出力?

    No1027に返信(むんくさんの記事)
    > こんばんわ むんくです
    >
    > XilinxのISE+symplifyを用いて下記のようなスタイルで
    > FPGAの設計を行っていると、「ERROR:MapLib:661」が出ます
    > Xilinxの「アンサーノート」で調べましたが、思い当たる個所が
    > 無いため、困惑しています。どなたか同じような経験をされた方が
    > おられましたら、そのときの解決法・対策をおしえていただけませんでしょうか?
    >
    > <ISE6.3i>
    > TOP回路:symplify(EDIF出力、下位階層BlackBOX設定)
    > 下位ブロック:ISE(NGC出力)
    >  ↓↓
    > ISEにてTOP回路のEDIFを読み込み(同じ階層にNGCを置く)
    >  ↓↓
    > インプリ→MAPPING
    >  ↓↓
    > 「ERROR:MapLib:661」発生
    >  ↓↓
    > 合成ストップ・・・
    >
    >
記事No.1027 のレス /過去ログ1より / 関連記事表示
削除チェック/

■1240  Re[4]: ハードマクロの使い方
□投稿者/ スパルタス -(2005/07/22(Fri) 14:53:02)
    こんにちはは軽石さん

    > えっとxilinxの場合にはDCMなどと呼ばれていますね。(^^;

    上記についてそう呼ばれているとは、し、知りませんでしたTT。

    > 私の場合はデザインウェーブマガジンなどである程度簡略化された資料を読みま> す。(^^;

    もしよければ何月号か教えて頂けないでしょうか(覚えていたらでいいです)。
    参考にさせていただきたいので。

    > なんか今キャンペーン中らしく、ISE(フリー版じゃないやつ)とスタータキットとセットで 28000円で購入できます。

    2万円台は高いので、今度自腹でmemecさんからスターターキットを買って勉強がてら遊ぼうかと計画中です。

    ハードマクロのひとつである、ブロックラムについても調べてます。
    ISE Web版でCoreGenを呼び出して、ブロックラム作成方法を
    試しているのですが、難しいですねえ。
    マニュアル探さないと無理っぽいです。
記事No.1230 のレス /過去ログ2より / 関連記事表示
削除チェック/

■1241  Re[5]: ハードマクロの使い方
□投稿者/ 軽石 -(2005/07/22(Fri) 15:25:27)
    こんにちはスパルタスさん

    本人そっちのけで盛り上がっていますね。(^^;

    >>えっとxilinxの場合にはDCMなどと呼ばれていますね。(^^;
    >
    > 上記についてそう呼ばれているとは、し、知りませんでしたTT。

    xilinxはDCMの前はDLL(Spartan2)というのがありました。
    ちなみにWindowsのDLLではありません。(^^;

    >>私の場合はデザインウェーブマガジンなどである程度簡略化された資料を読みま> す。(^^;
    >
    > もしよければ何月号か教えて頂けないでしょうか(覚えていたらでいいです)。
    > 参考にさせていただきたいので。

    ちょうど手元にありましたから記憶に頼らなくても大丈夫です。(^-^)
    今年の4月号に記事があります。

    3ページくらいなので脳内メモリをフル稼働すれば記憶できると思います。
    (携帯カメラによるデジタル万引きは駄目です。)

    > 2万円台は高いので、今度自腹でmemecさんからスターターキットを買って勉強がてら遊ぼうかと計画中です。

    Core Generatorを使うと手入力はやってられませんよ。(^^;
    GUIでちょちょっとクリックするとあらできちゃった。(^o^)

    > ハードマクロのひとつである、ブロックラムについても調べてます。
    > ISE Web版でCoreGenを呼び出して、ブロックラム作成方法を
    > 試しているのですが、難しいですねえ。
    > マニュアル探さないと無理っぽいです。

    おっと、それならば上で紹介したのを買うといいですよ。
    ちょうど乗算器、メモリ、クロックマネジャー(DCM)が特集となっています。

    軽石の場合圧倒的に時間が足りない(こんな所見に来ているからという話もある)ので時間をお金で買っています。

    Webから資料をダウンロードして、CRTでちまちま見る暇があれば、本を購入したり、製品版を購入したり(すみませんISE買っていません)して時間を節約します。

    チップの入手はよくないけどついついAlteraに行きたがるのはこの手の手間の問題があります。
    (シミュレーションもすぐできるし・・・・・)(^^;
記事No.1230 のレス /過去ログ2より / 関連記事表示
削除チェック/

■1244  Re[1]: ハードマクロの使い方
□投稿者/ こいしかわ -(2005/07/23(Sat) 14:10:58)
    こんにちは りねさん。

    XILINXではハードマクロのことをプリミティブといっています。
    これをユーザー作成の回路に導入する方法は複数あって、
    たとえばISE/VHDLの場合、
    1.portmap でライブラリからインスタンシエートとする
    この場合パラメータはattributeで設定する
    2.coregenで作ったマクロ(ラッパ)経由でportmapインスタンシエーとする
     この場合、パラメータはcoregen環境で設定する。
    3.systemgeneratorで作ったマクロ
    coregen同様

    回路図の場合でも、ライブラリにシンボルがあるはずです。

    で、資料ですが、xilinxのライブラリマニュアル群
    http://www.xilinx.co.jp/support/sw_manuals/xilinx7/index.htm
    のなかの
    ライブラリ ガイド (日本語版) j_lib.zip j_lib.tar.gz
    をみると、VHDL,verilogでの使い方が参考コードとともに載っています。
    DLL,DCM等はもちろん、PPC(パワーPC)等も載っています。

    要は、論理合成で推論できないようなものは、直接ライブラリ(coregenで作った
    IP等含む)から導入するようにportmap等で指定してやるということです。
    coregenで作る方法は楽ですが、パラメータの変更はcoregen経由でする必要があるので(javaなんでちよっち重い)単純なものは私は直接インスタンシエーとしてます。
記事No.1230 のレス /過去ログ2より / 関連記事表示
削除チェック/

■1245  Re[2]: ハードマクロの使い方 ArchitectureWizard
□投稿者/ こいしかわ -(2005/07/23(Sat) 14:22:58)
    No1244に返信(こいしかわさんの記事)
    > 2.coregenで作ったマクロ(ラッパ)経由でportmapインスタンシエーとする
    >  この場合、パラメータはcoregen環境で設定する。

    ISEwebPACKだと、ArchitectureWizardというcoregenのサブセットみたいのが
    あるんですね。これでDCMなどのテンプレート設定できるようです。
記事No.1230 のレス /過去ログ2より / 関連記事表示
削除チェック/

■1261  Re[2]: ハードマクロの使い方
□投稿者/ スパルタス -(2005/07/28(Thu) 15:38:09)
    こんにちはスパルタスです。
    皆様こんにちは。

    私はISEでこいしかわさんが言っている1番の方法で
    ハードマクロを生成してみました。
    CoreGenでの生成はまだやったことがないので試してみます。
    教えてくれた資料も見てみます。
    ありがとうございます。
記事No.1230 のレス /過去ログ2より / 関連記事表示
削除チェック/

■1795  Re[1]: ModelSIMでブロックRAMのシミュレートって出来るのでしょうか?
□投稿者/ ゴマ -(2005/11/14(Mon) 09:33:18)
    大まかな手順としては、
    1.CoreGenでVHDとVHOを作る。
    2.VHOを参考にできたVHDを組み込む
    3.unisimのライブラリにパスを通す
    でOKのはずですが、ModelSimとISEのバージョンの組み合わせを変更した場合は、そのバージョンでunisimを再コンパイルした方が、良いのかもしれません。
記事No.1780 のレス /過去ログ2より / 関連記事表示
削除チェック/

■1859  WebPackでのDCM
□投稿者/ takepon256 -(2005/11/23(Wed) 01:22:53)
    お世話になっております。
    いままでAlteraしか使用していませんでしたが、
    このたびXilinxにも手を伸ばすことになりました。

    そこで、勉強がてらに自宅でWebPackをダウンロードして、
    DCMを使おうとしたのですが、WebPackってCoreGeneratorがないんですね・・・。
    (Quartus2なら無料版でもMegaFunctionが使えたのですが)

    WebPackではDCMやブロックRAMはどのようにすれば使用できるのでしょうか?
    非常に初歩的なことではありますが、よろしくお願い致します。
親記事 /過去ログ2より / 関連記事表示
削除チェック/

■1860  Re[1]: WebPackでのDCM
□投稿者/ しゅう -(2005/11/23(Wed) 01:54:42)
    > WebPackではDCMやブロックRAMはどのようにすれば使用できるのでしょうか?
    > 非常に初歩的なことではありますが、よろしくお願い致します。

    どちらもLanguage Templates内にTemplateがありますので、
    それを使用してみてはいかがでしょうか。
    (Edit - Language Templates -
    Verilog(VHDL) - Device Primitive Instantiation)

    また、DCMについてはArchitecture Wizardが
    CoreGeneratorと同様のものです。
    (Project - New Source - IP(Architecture Wizard))
記事No.1859 のレス /過去ログ2より / 関連記事表示
削除チェック/

■1872  Re[2]: WebPackでのDCM
□投稿者/ takepon256 -(2005/11/24(Thu) 00:52:35)
    ご回答ありがとうございます。

    > どちらもLanguage Templates内にTemplateがありますので、
    > それを使用してみてはいかがでしょうか。
    > (Edit - Language Templates -
    > Verilog(VHDL) - Device Primitive Instantiation)

    ありがとうございます。
    Tempateは表示するだけで、自分の回路にImportは出来ないんですね・・・。
    テキストのコピーは出来そうなので、メモ帳で別ファイルに保存して使わせていただきます。
    また、最近はライブラリを指定しなくても勝手に内部RAMを使用してくれるようですね。
    http://www.nahitech.com/nahitafu/fpgavhdl/bram/bram.html

    > また、DCMについてはArchitecture Wizardが
    > CoreGeneratorと同様のものです。
    > (Project - New Source - IP(Architecture Wizard))

    こちらは本当にDCMだけしかIPが存在しないんですね^^;
    ですがGUIで操作できるのは有難いです。

    メーカー固有の呼び名が分かっていないと検索も出来ませんので、少々困惑しておりました。
    アドバイス感謝いたします。
記事No.1859 のレス / END /過去ログ2より / 関連記事表示
削除チェック/

■2166  webpack8.1iについて
□投稿者/ さらさら -(2006/01/15(Sun) 12:33:54)
    出ましたね,Xilinx WebPack8.1i.早速DLして使用してみましたが,まずはGUIが大きく変わっているのが目に付きました.一瞬,何をしたらよいのかわからなくなります.5.x⇒6.1⇒7.1と使用してきましたが,GUIは最も大きく変化していると思います.慣れるまで時間がかかるかも知れません.

    8.1iを使用するメリットで今のところ一番だと思われるのは,COREGenが標準搭載されていることでしょうか.やはり豊富に用意されているXilinxのIPが無料で使えるのは大きいです.

    使用してみたみなさん,感想・コメントなどありましたら情報交換しましょう.
親記事 /過去ログ2より / 関連記事表示
削除チェック/

■2180  Re[1]: webpack8.1iについて
□投稿者/ marsee -(2006/01/17(Tue) 09:56:56)
    全体的にかっこよくなってます。
    Coregenもいいですが、FPGA Editorも使えるようになって、とてもよいと思います。
    ISE Text EditorもIndentを1レベル下げるのにバックスペース使えるようになりました。
    ですが、ISE Text Editorの画面をISEの外に出すボタンがなくなったようです。またISE Text Editorで今まで表示していたコメントの日本語が表示できなくなってしまいました。
記事No.2166 のレス /過去ログ2より / 関連記事表示
削除チェック/

■2183  Re[2]: webpack8.1iについて
□投稿者/ 通りすがり -(2006/01/17(Tue) 18:14:04)
    > Coregenもいいですが、FPGA Editorも使えるようになって、とてもよいと思います。

    Coregenは、私はなくてもBRAM、DCM、問題ないので特にいらないですが、
    FPGA Editorが使えるとは、驚きです
    情報ありがとうございます
記事No.2166 のレス /過去ログ2より / 関連記事表示
削除チェック/

■2409  Re[1]: XilinxCoreLib
□投稿者/ たく -(2006/03/02(Thu) 14:22:38)

    > XilinxCoreLibって何ですか?

    Xilinxには、Coregeneratorというコア生成ツールがあります。
    パラメータを渡して、コアを生成してくれます。
    RTLは生成してくれないので、シミュレーションの時に困ります。
    そこで、Xilinxはシミュレーション用のビヘイビアモデルを提供してくれています。これがXilinxCoreLibです。
    ビヘイビアモデルはVHDLやVERILOGでかかれはいますが、合成できない代物です。シミュレータでコンパイルするには、compxlibコマンドを使えば簡単です。
記事No.2400 のレス /過去ログ2より / 関連記事表示
削除チェック/

■2421  Re[1]: 高速非同期FIFOについてお伺いします。
□投稿者/ cdtv -(2006/03/05(Sun) 09:55:56)
    > 120MHz程度を実働領域として非同期FIFOを構成したいと考えています。

    bit幅はどのぐらいでしょう?
    XilinxのCoreGeneratorの非同期FIFOを使うのであれば、
    「120MHz」については出してくれると思います。
    http://www.xilinx.co.jp/ipcenter/catalog/logicore/docs/async_fifo.pdf

    > ブロックRAM、分散RAM、良く分かっていません。FIFOに使えるのは
    > ブロックRAMの容量のみとなるのでしょうか。XC3S2000(Sp3)でも
    > 45KBのFIFO2つが限界となるのでしょうか。

    ブロックRAM=RAM専用領域、
    分散RAM=中のロジック用リソースを使ったRAM(=LUT)

    > 128KByteのFIFOを2つ。が最低限の検討で、MByteがありたいのが本音です。

    XC3S2000だと、ブロックRAM=40個で、1個あたり36bitx511段だったと思います。
    なので、128KBはブロックRAMだけだと構築できません。
    分散RAMも使えばどうにかなるかもしれませんが、1slice=2LUT=32bitだっけな?

    どっちにせよ、128KBx2とか、MBクラスはこのFPGAだけだと無理だと思いますよ。

    > 素人発言で申し訳ありません。ご意見や方法論を頂きたくお願いします。

    こんだけ要求サイズがでかいと、
    非同期入力をいったん同期させて、外付けでDDRSDRAMを用意してFIFOさせてみる??
    ってぐらいしか手が思いつかないっす。(〜_〜
    #これだと、もっと小さなFPGAでいけそう。

    他なにかいい手ありますかねぇ・・・。>各位
記事No.2420 のレス /過去ログ2より / 関連記事表示
削除チェック/

■3414  Re[1]: ISE8.1+ModelSIM XEでのシミュレーション
□投稿者/ marsee -(2006/08/02(Wed) 13:22:24)
    こんにちは。

    以下の手順でやってみるとVHDLのシミュレーションファイルを吐いてくれる様になると思います。

    1.ISEのSourcesウインドウからXAWを選んでください。
    2.Porcessesウインドウを見るとCoregenという項目があるので+をクリックして展開します。
    3.展開するとView HDL Funcional Modelがあるので右クリックしてProperties...を選びます。
    4.Propertiesのダイアログが出るのでそこのFunctional Model Target LanguageをVerilogからVHDLへ変更します。
    5.OKボタンをクリックします。
記事No.3413 のレス /過去ログ3より / 関連記事表示
削除チェック/

次の20件>

<< 0 | 1 | 2 | 3 >>

パスワード/

HOME HELP 新規作成 新着記事 ツリー表示 スレッド表示 トピック表示 発言ランク 検索 過去ログ

- Child Tree -