遅ればせながらMASTERキートンの新作を読んだ。全体的に寂しい話が多かったような気がする。しみじみしてしまった。このキートンと私はほぼ同じ年齢。歳をとってからDr.を取った(キートンはまだ途中だが)のも同じ。娘が一人も同じ。そして「あきらめない」という言葉が心に残った。
2014年12月の記事 (25 本)
マルキチーズ食べ過ぎたー
再び300円台ワイン
ベッカライブロートハイムのクロワッサン
おせちの昆布巻き
Freixenet Ash Tree Estate 2013
ISEのバグ
XilinxのISEは最終版14.7を使っている.今日も出力ピンがハイインピーダンスで固定されるという,先日出た現象が起きた.プロジェクトを新規に作り直すと直る.同じプロジェクトに対してモジュールをたくさん作ると発生する現象だ.バグの性質が分かっているので,落ち着いて対処できる.これくらいは許そう.クリスマスだしね.
WordPress手動アップグレード
wordpress/wp-content/とwp-config.php以外を上書き
wordpress/wp-content/languages/を上書き
一眼レフ用カメラバッグ(アマゾン謹製)
NIKON 1が来た
予期せぬラッチのなぞ
同期設計では「予期せぬラッチ」は禁じ手となっている.だけど,私はそれがなぜなのか知らない.次はこの問題を考えてみようと思う.例によってめちゃくちゃなこと言っているかもしれないので,鵜呑みにしないように.
同期設計では同一クロックで動くFFが組み合わせ回路を介して延々つながっている.予期せぬラッチってのは,その中のひとつがD-FFではなくD-ラッチになってしまうこと.クロックとは関係なしに入力データが出力される.これがなぜ悪いのか?
ラッチの出力先のFFにとっては迷惑な話だろう.組み合わせ回路2段分の遅延とラッチの遅延が加わったデータがやってくるのだ.それの変化が自分のセットアップ時間とホールド時間の間にたまたま入るかもしれない.そうなったらメタステーブルになってまずい.ラッチ生成が悪いのはこれで分かった.
じゃあ,予期せぬラッチではなくて,予期したラッチなら良いのかってことを考えよう.ラッチ出力を受けるFFのセットアップ時間より早くデータが到着してホールド時間より遅く次のデータが到着してって,待て待て.ラッチ出力を受けるFFはラッチのせいでクロックを1つ飛ばすなんて知らない.1つめのクロックでデータを受けようとするだろう.組み合わせ回路2段分がよほど軽い回路でない限り,セットアップ時間に間に合うとは思えない.じゃあ,間に合えば良いのか?たぶん良い.しかし配置配線ツールのセットアップ時間解析が混乱するだろう.組み合わせ回路2段分+ラッチをひとつの組み合わせ回路として解析しなくてはならない.こんなことを柔軟にやってくれるとは思えない.
結論:ラッチができるとツールが混乱するので,禁じ手なのだ.
ホールドタイムの謎
めちゃくちゃなことを言っているかもしれないので,以下の記述を鵜呑みにしないように.
同期設計では,セットアップ時間よりも早くデータが到着して,そのデータがホールド時間よりも長く維持できていなくてはならないと思っていた.ところが,これが微妙に違っていることに気付いた.セットアップ時間は良いのだが,ホールド時間ってのは,現データを維持するのではなく,ホールド時間が終わるまでに次のデータが来てはいけないって制約らしい.本当か?じゃあ,次のデータが来なければ,ホールド時間中にデータが暴れても良いってこと?そんなはずはないと思うのだが,どうもそうらしい.
FFの中身に立ち戻って考えると理解できるのだろうか.FFの中身って,インバータが二組くるっと回って繋がっている(うわっ,誤解を生みそうな表現だ.インバータ2個のループ回路が前段と後段にあるという意味だ).クロックがHighになると前段のインバータの入り口が遮断される.遮断される直前に入力データが変わってしまうと,前段のインバータ出力が安定した値に落ち着かないかもしれないので,あんまり直前は困るよってのがセットアップ時間.ここまでは良い.
クロックがHighの間は入り口は遮断されているので,入力データがどんなに暴れていようと知ったことじゃない.ここまでも良い.そうこうしているうちにクロックはLowになる.すると入り口が繋がる.これからは入力データが変わると前段のインバータ入力が変わるので,前段の出力はころころ変わるかもしれない.ころころ変わっているのは良いが,次にクロックがHighになるちょっと前(セットアップ時間)までには変わるのは止めてくれよとなる.
これまで書いたことを振り返ると,クロックがHighになった後は入り口は遮断されている訳だから,入力データがどんなに暴れていてもかまわない.つまり,入力データが維持されていなくても良いってことになる.ホールド時間中にデータが暴れても良いってことだ.これで疑問の半分は解けた.もう半分の疑問は,ホールド時間中に次のデータが来てしまったらどうなるかってことだ.入り口が遮断されているのだから,次のデータが来ても良いじゃないかと思う.あれ?おかしいぞ.ホールド時間の意味が無いってことじゃないか.ええっ?どこで間違えたのだろう.
もっと考えてみよう.クロックで開閉するスイッチについて良く考えてみると,クロックがHighになってすぐにFFの入り口が遮断される訳じゃない.Highになってから徐々に遮断されていくだろう.遮断しきる前に入力データが変わってしまっては前段が不安定になる.これがホールド時間ってことじゃないだろうか.たぶんそうだ.これで残り半分の疑問も解決した.めでたし,めでたしかな.
Thinkpad T43+kali linuxでプレゼン可能
Thinkpad X30 + kali linuxで外部ディスプレイに表示できなくて困っていたが,Thinkpad T43を入手したことで解決した.T43にWindows7を入れたものでは,ディスプレイドライバが標準ディスプレイドライバになり,外部ディスプレイには非対応となってしまう.しかし,kali linuxを入れるとFn+F7キーで外部ディスプレイに表示可能となる.ミラーもできるし,追加ディスプレイとすることもできる.ちょっと重いが,プレゼン用にはT43を使うことにしよう.
なぜにハイインピーダンス
Avnet製のS6LX150Tボードを使っているんだが,ある端子の信号がいくらやり直してもハイインピーダンスから動かない現象に悩んでいた.2日ほど悩んだ.ボードを変えてみたりしたが現象は変わらない.あきらめかかっていたんだが,もしやと思い,ISEのプロジェクトを新たに作ってから動かしてみたら解決してしまった.古いプロジェクトからの修正でいじっていたので,ゴミができていたのかもしれない.とりあえず良かった.
プリンタを買うかインクを買うか
何年か前にも同じ事で悩んだように思う。愛用のインクジェットプリンタMP270のヘッドが詰まった。イエローだけ出ない。強力クリーニングを繰り返しても詰まったまま。MP270はインクタンクとヘッドが一体型だ。MP270のヘッドは近所のコジマでは売っていない。たとえ売っていたとしてもプリンタ本体を買うのとそんなに値段が違わないからプリンタを新調しようかと悩んだ。が、楽天とamazonで純正ヘッドが3000円弱で売っていることが分かったので、ヘッドを通販で買うことにした。来週には年賀状が印刷できるだろう。
Thinkpad X30はプレゼンに使えない
プレゼン用のThinkpad T41が昇天したので,代わりにX30を使うことにした.プレゼン用の必須条件は外付けディスプレイがファンクションキーでenableになることである.T41にkali linux(debian7ベース)を入れていたときはこの条件を満たしていたので,X30にもkali linuxを入れた.その後,ファンクションキーで外部ディスプレイを指定すると,エラーメッセージが出てしまう.カーソルだけは外部ディスプレイに表示されるのだが,それ以外は表示されない.惜しいなあ.
わかりやすいFPGA解説サイト見つけた
http://members3.jcom.home.ne.jp/zakii/hdl/0_contents.htm
すごく分かりやすい.こういう解説を待っていた.
Thinkpad T41昇天
kali linuxを入れてご機嫌に使っていたThinkpad T41だったが,今日ロジックボードがお亡くなりになった.電源が入らない.HDDを外して別のT41に入れると動くことから,HDDの異常ではない.10年の寿命だった.T41はもう1台あるので,それの部品取り用として今後も活用させてもらう.これまでごくろうさまと言いたい.
HDDをチェックしていて分かったのだが,T41のリムーバブルHDDケースはThinkpad X30やX31と完全互換であることが分かった.HDDはX30/X31の予備としても使える.さすがはIBMだ.無駄をしない.
SiteGuardでログインできない
SiteGuardというセキュリティを向上させるプラグインを入れた.概ね良好に動作したのだが,capnixではログインできなくなった.こんな場合はpluginディレクトリからsiteguardを削除し,.htaccessからSiteGuard関連の記述を削除すれば直る.capnixはDBのキャラクタコードが特殊だったからかもしれない.
BUFGは16個ある
分かって書いている訳ではないので,とんちんかんなことを言っているかもしれないが,自分のための覚え書きなので勘弁してほしい.
SPARTAN-6には真ん中の辺りにBUFGが16個ある.こいつにクロックをつなげるとデバイス全体にクロックを供給するのに都合が良い.
ALTERAは基本技術文書にFPGA内の構造や配線が図示されていたので,わかりやすかった.それに比べてXilinxは図示が少ないというかほぼ無い.FPGA Editorで配線を辿りながら勉強するしかなかった.このあたりについてはXilinxに対して非常に不満である.初心者に冷たいメーカーは嫌いだ.
FMチューナー > ottava > radiko.jp
ottavaは64kbpsのステレオ.radiko.jpは48kbpsのステレオ,FMチューナーはアナログ.音が一番良いのはFMチューナーだ.私のは40年前に買ったビクターのFMチューナーだが,問題なく高音質の音楽を奏でてくれている.選曲ツマミの糸が切れない限り,現役で使えるだろうな.
維新にいれよう
公務員の給与を地方のレベルに合わせて下げて5兆円の財源を確保すると言っている維新の橋本氏.実現できれば素晴らしいことだ.私が入れなくても自民は圧勝するだろうから,投票は維新にしようと思う.
facebookを使い始める
ザッカーバーグの顔付は胡散臭くて嫌いだし,最初っから望まない広告をばんばん出してくるので,facebookは使うまいと思っていた.ところが,最近はtwitterも広告を出すようになったし,google+も広告の臭いが気につくようになってきた.こうなれば,ザッカーバーグの顔さえ我慢すればfacebookを使ってもよいと思えるようになった.アカウントを作ってみた.本名をネットに晒すのは実はfacebookが初めて.研究者名簿とかには載っているが,SNSで本名を晒すのは初めてってこと.本名を晒した甲斐があるような使い方をしたいな.
ubuntuのバックアップ先
近頃ubuntuマシンのバックアップアプリがエラーを出す.バックアップ先のUbuntu Oneが消滅しているからだ.仕方がないので,無料のサーバースペースを提供していくれているサイトをバックアップ先に変えた.無料ってことはいつなくなるか分からないってことだ.バックアップの意味はないかもしれない.気休めだ.
BPIフラッシュのBはByteのB
SPARTAN-6が載っているボードを使っている.コンフィグレーションにはSPIフラッシュとBPIフラッシュが使える.スピードが速いのでもっぱらBPIフラッシュを使っていた.で,疑問なんだがSPIは"Serial Peripheral Interface"の略なんだが,BPIは何の略なんだろうということだ.パラレルバスなのが特徴なのだからふつうは"Parallel Peripheral Interface"だろうと思うのだが,最初はPではなくてBなのだ.放っておいても良いのだが,気持ち悪いのでググって調べてみた.答はBPIは"Byte Peripheral Interface"の略だった.でも,これはちょっとおかしい.私の使っているBPIフラッシュは16ビットなのだ.Byteじゃないぞ.








