2021年1月18日月曜日

DesignCompilerにてパラメータを伝搬しパラメタライズ化したモジュールをつなぐ

RTLが parameter 文などでパラメタライズドされていると各回路はその初期値でインスタンス化される.そのため上層の回路と下層の回路の parameter文の初期値が異なると,回路の接続をうまく見つける事ができない.

例えばプロセッサコアとその下に命令デコーダがある回路を対象に試してみる.
read_file -format sverilog { \
riscv_id_stage.sv \
riscv_core.sv \
}
current_design ${design} 
check_design



左上のLogical Hierarchyを見てもプロセッサコアしか見つからない.

これを解決するには,analyze文を利用して回路の仕様を中間表現としてライブラリに登録し,elaborate文を利用してその中間表現を読み取って回路を接続する.

file mkdir ./work
define_design_lib WORK -path ./work
analyze -format sverilog {riscv_id_stage.sv riscv_core.sv }
elaborate ${design}
check_design




上層の回路のパラメータが下層にきちんと伝搬して,インスタンス化されたモジュールが見つかり接続されたことがわかる.

参考:Link带参数的Verilog模块(Design Compiler)
https://www.cnblogs.com/kathywh/p/8550670.html

2021年1月17日日曜日

卒論前にパソコンが壊れるというジンクス

 卒論前にパソコンが壊れるというジンクス,そういえば自分の場合どうだったか振り返ってみる.

卒論:ノートPCのメイン基板死亡.写真はジャンクPCの基板と入れ替えているところ.


修論:ノートPCのキーボードのパンタグラフ折れ.写真はキーボードユニットを入れ替えているところ.


博論:ノートPCのメイン基板死亡.画像はバグったGPU出力画面.

結論:3/3の確率で何らか壊れるので,バックアップは確実にね.

2021年1月3日日曜日

Chromebook に Windows10をインストール

東芝2と呼ばれるChromebook(CB35-B3340),2015年にAmazon.comで購入して使っていたのだけれどChrome OSのサポートが2021年に切れる事になった.またブラウザがChromeというのが最大の欠点なので,Windows 10をインストールする事にした.

基本は次のサイトの通りである.

https://coolstar.org/chromebook/windows-install.html?device=gandof#!

ちなみに自分は買って速攻Developer Modeに設定していた.


Write Protectを外す

Windowsをブートさせるために有志が作ったUEFIを書き込むのだが,Write Protectが物理的にかかっているので外す必要がある.

次のサイトの説明の通りなのだが,2つの端子を導電性シートでショートしてProtectしているため,シートを除去するためにヒートシンク兼シールドを一度除去する必要がある.残差があってもだめなので,結構しっかりゴシゴシ剥がす.

プロテクトシール


剥がした後

http://www.fascinatingcaptain.com/projects/install-ubuntu-on-the-toshiba-chromebook-2-in-5-steps/

後は最初のサイトの通りに物事を進めていけばよい.各種ドライバも用意されている.

最終的にインストールできたけれど,Celeron N2480 Dual-Core, 4GB Mem, 16GB eMMC(実質14GB)は動作するにはアップアップな感じ.特にeMMCの容量が足りない….結局WindowsアップデートでeMMCの容量を食い尽くしてしまいまともに動かなかったというオチ.(CPUも2.5GHzのブースト状態でもCore 2 Duo 1.4GHzの70%程度の性能らしい)