オープンソース PDK で遊ぼう4(セルライブラリ編)
このシリーズ『オープンソース PDK で遊ぼう』も、いよいよ第4弾! 前回は、MintLinux を入れたミニ PC で OpenLane を動かして、自分で書いた RTL(shift_reg2)をチップにするまでを体験しました。
あのとき出来上がった GDS を眺めていて、ふと気づいたんです。「このチップの中、ぜんぶセル
でできてるじゃん!」って。nand2_1、dfxtp_1、inv_2......名前だけでもなんだかかっこいい。でもこれ、どうやって作られてるんだろう?
ということで、今回は──自分で標準セルを作って、OpenLane で流してみよう!
という、ちょっとディープなテーマに挑戦します。
題材は「リセットなしのフリップフロップ(DFF)」ひとつ。それを、いま使っている 8 トラックセルよりちょっと低い7 トラックセル として作ってみます。つまり、セルの背を少し縮めた「スリム版」セルを目指すわけです。やることはおおまかに3つ:トランジスタレベルでレイアウトを描く、DRC を通す、LEF を作って OpenLane で配置配線してみる。
もちろん、プロのような正確さまでは目指しません。「とりあえず動いた!」を味わえたら、それで OK。実際に手を動かすことで、標準セルがどんな構造で、どうやってツールの中で使われているのかが、ぐっと実感できるはずです。難しそうに見えても、始めてみれば案外なんとかなるもの。今回も、手探りで、ゆるく、楽しくやっていきましょう。
紙版500円 電子版0円