expand_less
メインビジュアル

monologue

第11回:開発環境

第11回は「開発環境」についてです。 LSI・FPGA開発では、設計規模の拡大と短納期化が進む中、安定した開発環境整備の重要性が増しています。個々のツールを使いこなすだけでなく、設計・検証・ビルドを一貫して支える仕組みを整えることで、手戻りや属人化を大幅に減らせます。いまや開発環境の整備は、開発効率と品質を左右する“基盤”と言えるでしょう。

◆開発環境とは

半導体開発で使用される開発環境として、Linux、Windows、Mac OS環境などがあります。
用途によって、主に使用されるOSには傾向があります。 
回路設計・レイアウト設計・検証などの大規模処理には、Linuxが多く用いられます。 
一方、マイコンや組み込みソフトウェア開発ではWindowsが主流です。 
また、AIモデル開発などの分野では、Mac OSが強みを持つケースもあります。
半導体の回路設計・レイアウト設計・検証において、Linux環境は標準的なプラットフォームとして広く普及しています。
この環境では、RTL(Register Transfer Level)記述の作成、検証環境の構築、シミュレーション実行などを行います。 
そのため、Linuxの基本コマンドやシェルスクリプトの理解に加え、エディタ(例:vim)やバージョン管理システムのVCS(Version Control System)などの利用スキルが求められます。

◆Linuxが使われる理由

主な理由の一つは、メモリ管理の強みです。 設計・検証で使用されるツールは大量のメモリを必要とします。 
そのため、もともと64bitの広いアドレス空間を持つUNIX系OS(Linuxの前身)上でツール開発が進められてきました。 
この背景から、現在でもLinuxが標準的な開発環境として広く利用されています。 近年は、Windowsも64bit化され FPGAメーカーを中心にWindowsの開発ツールも増えています。

◆バージョン管理(VCS)とは

VCS(Version Control System)は、ソースコードや設計資産の変更履歴を記録・管理するツールです。
複数人での同時編集や変更点の差分確認、過去の状態への復元(ロールバック)を行うことができます。
従来、広く利用されてきたのが、バージョン管理システムの1つであるSVN(Subversion: サブバージョン)です。
SVNは、多くのメンバーで製品開発を行う場合に、回路記述をしたRTLやライブラリ、検証環境、検証シナリオ、仕様書、検証項目一覧などの各種資料をバージョン管理するのに有効なツールの1つです。

◆SVNの特徴と活用例

SVN(Subversion)は、集中管理型のバージョン管理システムです。 
中央サーバーに全履歴を保存するため、履歴管理や権限管理が一元化しやすいという特徴があります。 
設計データ(RTL、検証環境、仕様書など)を共有し、 
・差分確認 
・履歴管理 
・過去状態への復元(ロールバック) 
といった操作を容易に行えます。

CAREER PLAN

思い描く未来を
MGICと共に成長する