2024年1月29日月曜日

アヴェンチュラの互換品?

 自転車に乗るときにクーレンズのアヴェンチュラを使っているのだが,買ってから 8 年経つ事もあり,インナーレンズフレームが崩壊して,公式のインナーレンズフレームを買い換えたらレンズが入らなくてフレームぶつ切りにして接着剤でくっつけ,つるも左側は折れてしまい接着剤でくっつけている.クーレンズはめがね事業から撤退してしまったようだ.アヴェンチュラ自体はフレーム+インナーレンズフレーム+アウターガラスレンズ4種(偏光2枚)+ハードケースのコミコミで5000円くらいと激安と当時有名だった.私はインナーレンズ買ったから1万5000円ぐらいしたけれど.

Amazonを見ていると,割とそっくりな商品として FERRY のアイウエアを見つけたので買ってみた.フレーム2つ(ただしツルは1セット)+インナーレンズフレーム+アウターガラスレンズ4種(偏光1枚)+ハードケースで2680円と激安である.


アヴェンチュラは黒だけれど,


FERRY は赤にした.形はすごく似ている.FERRY のロゴがダサい.


比較をしてみる.ツルは形は似ているけれど,根元も取り付け方法も違う.FERRY はなぜか90度回転して外すらしい.


サングラスそのものも形は似ているけれど,詳細は少々異なる感じ.


でも形状の互換性はある程度あってお互いに取り付け自体は可能.なんか隙間空いている?


インナーフレームも形は似ているけれど子細は違うような…….


互換性あるかなってぐいぐい押しつけていたら根元からポキッと折れたorz.まあ年数経っているしな…….結局,インナーレンズだけ接着剤でひっつけて使うのがいいのかね.

2024年1月26日金曜日

半導体クラウド学院

半導体クラウド学院 (半導體雲端學院 Semiconductor Cloud Academy)」という,TSMC が一般向けに作成した Web 教育システムがある事を教えていただいた.メールアドレスを登録すると,集積回路についてその原理から学ぶことができるみたい.コースの動画がかわいくて,中学・高校生が見ても楽しそうである.

なんとびっくり日本語対応である(でも句読点が台湾).

私のブラウザでの振る舞いがおかしくてテストを受けられないのだけれど,テストを受けると認証みたいなものももらえるらしい.

しかし TSMC は大学連携だったり教育だったりに力を入れだしていて,なんだか昔の STARC を一社でやり始めている感じだなぁ.

興味のある人は上記リンクから右上の「学生センター」を選択して登録してね.

2024年1月21日日曜日

sudo で X11 を有効にする

Cadence のインストーラー (installScape) を sudo で起動しようとすると,X11 に繋がらないと怒られる.
sudo で X11 を有効にするためには,xauth を用いてユーザーの X サーバ接続権限情報を sudo に与えてしまう.ユーザー名が [user] だとすると以下のような感じ.
/root/.Xauthorityが無いと怒られる場合は空のファイルを作ってから再実行.


まあ,オチとしては,installScape は root で実行するものではないという事なのですけどね.インストール先のパーミッションを適当な管理者にしてユーザー権限でインストールすべし.

2024年1月18日木曜日

"Error: 'top' doesn't specify a unique design" in DesignCompiler

 学生が以下のような tcl で論理合成中に current_design コマンドでエラーが出ると相談しにきた.
このエラーはファイル中に同じモジュール名の回路が複数ある場合に生じるエラー.しかし読み込んでいる Verilog ファイルは1つしかない.今回の例では,read_file コマンドで Verilog ファイルを読み込み,analyze コマンドで同じ Verilog ファイルを再読込しているため,メモリ中に同じモジュールが2つある事になっていたらしい.この場合,
list_design -show_files
list -designs
などでどのようなモジュールが読み込まれているか表示させてデバッグできる.今回についてはファイル読み込みが重複していたので,read_file コマンドを削除し analyze コマンドだけ実行することで解決した.

参考:
Pran Kurup and Taber Abbasi, "LOGIC SYNTHESIS USING SYNOPSYS® 2nd Ed.", KLUWER ACADEMIC PUBLISHERS

2024年1月15日月曜日

Milkyway でセルが正常に更新されなくて困っていた

オチ:Virtuoso の StreamOut のログとMilkywayのログをちゃんと確認すること.

ASAP7 ではセルを 4x して配置配線するので,1x ライブラリをコピー→ XScale を使って 4x → StreamOut → Milkyway DB → IC Compiler で配置配線をしていたのだが,一部のセルのサイズが変わらなくて困っていた.オチはは OA ライブラリ中に同名の別セルが存在していたことが原因だった (具体的には,4x ライブラリのセルが 1x ライブラリの INVx2_ASAP7_75t_SL をインスタンスとして読んでしまっていた).

StreamOut はちゃんと警告していて,ダブった方を "INVx2_ASAP7_75t_SL_0" とリネーム("_0")している.リネームされたのが 1x セルならよかったのだが,4x セルがリネームされてしまったのであった.

...
WARNING (XSTRM-145): The structure name 'INVx2_ASAP7_75t_SL' has been changed to 'INVx2_ASAP7_75t_SL_0' by the translator. This could be because multiple cells with the same cell name exist in different libraries, the same cell name has been mapped to multiple cell names, or the cell name length is greater than the '32' that was specified using the '-respectGDSIINameLimit' or '-gdsCellNameLength' option.
...

Milkyway の setPRBdry のログを確認すると正しく電源が抽出されているように見えたのだが,

...
Cell [INVx2_ASAP7_75t_SL_0.FRAM] has 2 horizontal p/g rails on MET1.
         the 1 rail's net type is gnd
         the 2 rail's net type is power
Extracting P/G track for cell INVx2_ASAP7_75t_SL_0.FRAM
power/ground track (low, high): (-144, 144) (4176, 4464)
...

これはリネームされた 4x セルで,本来の名前のままの 1x セルは処理中には異なる位置の電源が抽出されており,ちゃんと「電源おかしいで」と警告されていたのであった.

...
Cell [INVx2_ASAP7_75t_SL.FRAM] has 2 horizontal p/g rails on MET1.
         the 1 rail's net type is gnd
         the 2 rail's net type is power
Extracting P/G track for cell INVx2_ASAP7_75t_SL.FRAM
power/ground track (low, high): (-36, 36) (1044, 1116)
WARNING: cell AOI321xp33_ASAP7_75t_SL.FRAM and NAND2x1p5_ASAP7_75t_SL.FRAM have different PG rail extension.
...

余談だけれど,スタセルの外形情報は Milkyway のログから抽出してもいいかもしれない.Virtuoso をゴリゴリスクリプトで動かすのは結構遅いので.