ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

今日FPGAで学んだこと(10)CからVerilogなどへ書き換えるための手順

2013-10-11 18:34:16 | Weblog
CからVerilogなどのFPGA用HDLに書き換えるための手順について学んできたのでメモメモ

要するに、Cでも、状態遷移に持っていけば、FPGAのステートマシンで記述できる。
なんだけど、Cには、独特な部分があって(ポインタとか)それを、きれいきれい
にしてからでないと・・・とかいうお話。




■CからVerilogなどへ書き換えるための手順

(1)アルゴリズムリファインメント
     →ハードウェア向きへの変更

  ・ポインタ→インデックスへ
     領域がどこまで増えるか
     伝搬性
     構造体のポインタ
     キャスト
     アドレス変換

  ・配列→メモリにマッピング
      (配列へのアクセスを減らす)

  ・関数→最適化
  ・演算子→最適化(式の変換)
  ・500ステップぐらいにわける
  ・並列性、順次性のみきわめ
    ビヘイビアパラレル、ビヘイビアパイプライン
      →シーケンスグラフ
  ・固定小数点(後述)

(2)アーキテクチャリファインメント

  回路サイズ、周波数、消費サイクル、消費電力などで決まる

  固定したアーキテクチャにすると、楽

  ・外部インターフェースは決まっている
    →一般性をもたせる
    →方法:ハンドシェーク

  ・内部
    ステートマシン、レジスタ、パイプライン、ブロックメモリ
    マクロ

  (2-1)システムレベルの関数を考える
     依存性を考慮する

  (2-2)それを細分化し、
      ファンクション内のブロックレベルのシーケンス
      ★プロセス化、モジュール化

  (2-3)トレードオフをどうするか考える
     周波数と速度
     周波数とサイクル
    →これを考えやすくするため、コードサイズを500行ぐらいにわけている
      ★メモリアーキテクチャの検討

  (2-4)ブロック内のスケジューリング
      ★性能解析情報とプロセス間スケジューリング

  (2-5)ステートマシンの作成

(3)RTLの作成
   ・時間に関係ないアルゴリズム

   ・時間軸を入れる

   ・バスサイクル→サイクルを考慮し

   ・RTLへ
     状態遷移図→ステートマシンへ

(4)RTLの検証




■固定小数点化

・対象とする入出力データ確認

・テストベンチ作成

・対象とするデータは・・・
   ・ダイナミックレンジの確認
   ・最大値と最小値の確認

・整数部と小数部の決定
   →最大値、最小値がわかれば、整数の桁数はわかる
    ダイナミックレンジと整数の桁数から小数の桁数は
    決定する

・書き換え

※ポイント
 掛算、割算、三角関数→有効桁数の問題が出るのは・・

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

IE7で複数フォントが使えなかった・・・とか

2013-10-11 12:23:52 | JavaとWeb
きのうの

HTML(CSS)で書体を変えるとき、注意すべきこと
http://blog.goo.ne.jp/xmldtp/e/45957cb7cde8eb5147506d869332f476


をお家で見てびっくり!

明朝体以外、かわっていない・・・

フォントが入っていない環境では、もちろん、変化しない
(デフォルトの文字が表示される)

「コントロールパネル」の「フォント」に出てくる書体
しか、表示されない




それと、複数フォント指定をIE7でやったらうまくいかなかった。
古いIEでは、複数フォント指定(font-familyのところで、
,で区切って複数フォントを書くと、前のフォント指定に無い文字ならば、
後の指定フォントが使われる)が、きかないみたいよ・・・

http://weboook.blog22.fc2.com/blog-entry-330.html

にこんな記述が(以下太字は上記サイトより引用)

複数のフォントを指定するとIE8以下でエラーが起きるそうです。#?を入れると最初のEOT形式だけ読み込んで解決だそうです。難しいですね。




  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ATOKはなぜ、かな漢変換なのか?

2013-10-11 09:15:50 | Weblog
文字を整数に変える    atoi
文字を浮動小数点に変える atof
文字を漢字に変える    atok
  →k=漢字

という意味だと聞いた。都市伝説?

P.S 阿波(a)徳島(tok)という意味も有ると聞いたが・・・

  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする