100523_patahene.JPG


またブログに書くのを忘れてたorz

今回から7章の内容に入ったんだけど,前回までのパイプラインが終わってしまったので,なんか盛り下がった感じがするw

以下適当にメモなど。


概要

  • 日時:'10/05/23 17:30~21:00
  • 場所:短歌会館
  • 参加者:3人
  • 7.1~7.3読み合わせ+MIPSエミュレータの製作


7.1 はじめに

  • 学期末レポートはwikipediaからコピペですね,わかります。
  • 2004年時点の1GB当たりのコストだからデータ古くね?
  • 最近の博士論文の点数とか言われても,ねぇ?


7.2 キャッシュの基礎

  • 近くに置いておけば遠くまで取りに行かなくてもいいよね,とかそんな話。
  • ダイレクトマップ方式は元アドレスの下位アドレスをキャッシュのアドレスにそのまま使う。当然かぶるので元の上位アドレスをキャッシュ内に持っていて,これで識別する。
  • 小数点以下切捨ての記号を始めてみた。これ一般的に使うの?それともこの本だけ?
  • キャッシュミス時の対応としては,単純にストール(nop)してメインメモリからデータが読み出されるのを待つだけ。
  • ライトスルー方式:書き込み時,メインメモリとキャッシュの両方を更新。
  • ライトバック方式:書き込み時,キャッシュのみ更新。キャッシュが追い出される時,その内容を該当のメインメモリに書き込む。


7.3 キャッシュの性能の測定と改善

  • キャッシュミスは滅茶苦茶痛い,とかそんな話。
  • ダイレクトマップ方式:メインメモリとキャッシュの対応は固定。
  • フルアソシアティブ方式:メインメモリとキャッシュの対応は任意。そのかわりキャッシュ内のどこにあるか分からないので,全部検索しないといけない。
  • セットアソシアティブ方式:上記2つの折衷案。キャッシュがセットという単位に分割されていて,メインメモリといずれかのセットとの対応は固定,セット内は任意。
  • セット内のブロック数を連想度というらしい。
  • ヒット時間とミス率がトレードオフになっている?
  • いかにメインメモリへのアクセスを避けるか。
  • L1キャッシュは,まだうしろにL2キャッシュが控えているから多少ミスしてもいいのでとにかく急げ!という発想。
  • L2キャッシュは,もうあとが無いのでミスしないようにゆっくり頑張れ!という発想。


MIPSエミュレータの製作

  • 前回指摘されたことを自分のソースに反映しつつ,これからどうしようか考えてた。
  • 命令中の任意のエリアを取ってくるメソッドがあれば便利。こんな感じ?
  • public int getField(int inst,int endIndex,int beginIndex){
    	return ((inst << (31 - endIndex)) >>> beginIndex);
    }
    

前回の続き。

今回はVHDLの基本的な文法とか教えてもらった。

よくよく考えたら学生時代にVHDLでコード書いてたので,あぁそう言えばこんなのあったなぁとか,そんな感じだった。

以下適当にメモなど。

  • そもそもハードウェア記述言語が作られたのは,ICを設計しているうちにプロセス微細化がどんどん進んでしまって,いざ製造しようとしたらプロセスルールが古いけど今更こんなの作るの?ってなっちゃうから。(最近はそこまで進歩早くないけど,昔はムーアの法則とかあったじゃん。)
  • SystemCは今後期待らしいよ。
  • レポートファイルちゃんと読めたら,もう少しデバッグとか早くなりそう。
  • RTLレベルは別名ゲートレベルともいう。ゲートレベルって言った方がピンと来る。
  • 最初のうちはRTLで書いて,どういう回路に落ちるかを確認しながら勉強するといいよ。
  • Verilogでは大文字小文字区別するけど,VHDLでは区別しない。
  • ライブラリの宣言はおまじない。entityに回路の入出力ピンを書く。architectureに処理内容を書く。
  • パラで動くっていうのが,ソフト屋さんには分からないらしい。
  • <=は代入の意味だけど,if文の中だと以上という意味になる。キモイ。
  • バスの宣言の仕方で,std_logic_vector(7 downto 4)というふうにも書ける。上半分だよ!っていうのを強調したい時に使ったりするらしいけど,まぁあんまり使う必要は無いかも。
  • シーケンシャルに処理させたい場合は,process文を使う。process文の中ではif文,case文,variable宣言とかが使えて便利。
  • if文はCと同じような感じ。case文も雰囲気で分かる。case文はif文使うよりコンパクトな回路に落ちる場合が多いのでうまく使い分けること。
  • case文の最後はwhen others => null;とも書けるけど,あまり推奨されないらしい。when others => '0'とかはっきり決めた方がいい。
  • 配置配線はXilinxの場合はPlanAhedっていうソフトで行う。これやるとピン配情報とかが記載されたUCFファイルってのが生成される。
  • 同期ってのは笛の音に合わせてバケツリレーする感じ。非同期ってのは次の人が手空いてるならバケツ渡す感じ。非同期の方が一般的には高速になるけど,有効な設計手法が無いんだとか。
  • クロックスキューとは,モジュールごとにクロックが遅延して届く現象。クロックに同期させるつもりが,それぞれバラバラで動いちゃう。
  • VHDLではソース内で立上がりと立下りの両方を使うことは推奨されていない。どっちか決め打ちして使うこと。→クロックのONとOFFの幅が必ずしも一緒じゃないから。
  • 別々のプロセスで出力信号を書き換えるな。正常に動作しないよ!
  • 同じ出力信号に値を2回代入すると,あとのヤツが優先される。→ラダープログラムの二重コイルみたいな感じ。
  • component使えばみんな幸せになれる。
人体 失敗の進化史 (光文社新書)
遠藤 秀紀
光文社
売り上げランキング: 15362


進化って最適化していってるんじゃないの?とか思ってたけど,この本を読んだら必ずしもそうじゃないっぽい。

むしろ失敗とか場当たり的な設計変更が多いことに気付かされた。

あと偶然とか。

骨は栄養素(カルシウムとかね)を体に蓄えてたら,なんか硬くなっちゃった的な感じらしい。

二足歩行も,乾燥で森林が平地になったのをきっかけに,樹上で生活していた猿が大地に降りてきたからなんだとか。

んで,そもそも二足歩行するような設計になってないから,人体には不都合な箇所がいろいろある。

まず,内臓を支えるために骨盤頑張れな状況になってる。

上半身の体重とかほとんど腰が支えてる。

脳にちゃんと血液を送るには血圧高くないと駄目なのに,足とかは重力あるから低くてもおkとか。結局そこら辺のバランス考えたら,脳にはギリギリな感じの血液供給らしい。

姿勢によって血液供給の度合いが変わっちゃうよね?→エコノミー症候群とか。

こういう古典的な生物学って面白いと思うんだけど,昨今は人材も金も集まらないらしく,少し残念な感じがする。(逆にバイオとかが流行ってるの??万能細胞とかよく聞くけど。)

なんというか生物学っていい意味で未成熟だよなぁ,,とか思った。

100605_fpga.JPG


なんかもうツールの使い方とかそんなんだったので,たいした内容じゃなかった。

以下適当にメモなど。

  • XilinxのFPGAはCLB(LUT+FF+セレクタ)で出来てる。
  • CPLDはAND-ORマトリクスが基本要素になってるんだとか。
  • Xilinxの代理店は東京エレクトロンデバイスで,Alteraの代理店がアルティマ。
  • FPGAはASICとCPUの中間とかいう説明があったけど,どう考えてもASIC側だろ。
  • バウンダリスキャンというテスト用規格がある。実際の業務ではこれを使ってデバッグとかするらしい。→BGAとか物理的にプロービング出来ないし,FPGA内部信号とかも見れないので,非接触でのデバッグ技術が必要になってきたとかいう背景があるらしい。
  • 具体的には,はじめからチップ内部にテスト用機能(接続用の配線+記憶用レジスタ?)を持たせておいて,ツールからの操作(プログラム??)で見たい信号を見るとかそんな感じらしい。チップとはJTAG(Joint Test Action Group)という機器を介してつなぐ。JTAGとチップはシリアル通信してるだけ。
  • なんかJTAGってICEみたいなもんと思えばいいの?よくわからん。
  • FPGAはメモリと構造が似ているから,時代とともにチップシュリンクしやすいらしい。
  • 配置配線はコンパイルオプション的な感じで,スピード重視とか面積重視とか出来るみたい。
  • 配置配線する画面では2次元だけど,実際のデバイス内部では3次元なの?(層になってるの?)
  • FPGA→ASICへの置換えでどういうところが問題になるの?
  • シミュレーション画面ではトリガで引っ掛けて動作確認とかする。

100523_buturi.JPG


前回に引き続き相対論のおはなしです。

以下適当にメモなど。


概要

  • 日時:'10/05/23 14:30~17:00
  • 場所:どえりゃあ
  • 参加者:3人
  • 内容:「第16章 相対論的エネルギーと運動量」の読み合わせ


16-1 相対性と哲学者

  • パーティー哲学者ってのはなんちゃってのこと。
  • 群盲象をなでる→皆それぞれ表面的なことを行っている状態。
  • P.225 すまして落付いて→すまして落付いた
  • フーコーの振子っていう小説があるんだとか。
  • 直進運動だと止まっているのか等速度運動しているのかは気付けない。→実は太陽系とかも動いてたりするのかな?
  • 回転運動だと遠心力(見かけ上の加速度的な?)が生じるから,等速回転だとしても回転していることに気付ける。
  • 長い物に巻かれちゃ駄目だ!間違ってることもあるんだ!
  • 好む好まないはあれだけど,美しい美しくないとかはあるよね?
  • 対称性のやぶれですね,わかります。


16-2 ふたごのパラドックス

  • 日本で言うところのうらしま効果,とかそんな話。
  • 海彦,山彦は日本書紀が元ネタらしいよ。


16-3 速度の変換

  • ローレンツ変換を逆に解いても速度にマイナスがつくだけ。→つじつま合うよね,とかそんな話。
  • 相対速度は単純な足し算引き算じゃない。(これはニュートン力学の考え方。速度が十分遅い場合。)


16-4 相対論的質量

  • 同じ物体が同じ速度で近付いて,くっついて静止した場合を考える。これを運動量保存則とセットで考えると面白いことが分かる。→運動量保存則が成り立つためには,衝突後静止しても,出来上がった物体の質量は2つの物体の静止質量の和よりも大きくなる!
  • まぁでも,そもそもくっついて静止するって何さ?
  • めっちゃ速い速度でぶつかって静止したら,それはめっちゃ重くなるってことでおk?


16-5 相対論的エネルギー

  • 結局さっきの例は,運動エネルギーが投入されてるってことらしいよ?→だから質量はエネルギーとかいう考え方が出てくる。
  • エネルギーは慣性を持っている?ナニソレ?
  • 逆に分裂を考えると,
  • という式が出てきて,この分が外に放出される。→原子爆弾だ!
  • ファインマン先生はダチョウ倶楽部的なノリで爆発するところを見ちゃったの?

プロフィール:ttl

  • ・勉強と運動が好きです。
  • ・カエルさんも好きです。
  • ・λはもっと好きです。
  • 購読する このブログを購読

最近のコメント

アーカイブ

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.27-ja