Layout Editor - Mau sebesar apa?

Ini contoh open source yang dikembangkan di universitas di Eropa.
http://www-asim.lip6.fr/recherche/alliance/

Saya lagi mikir-mikir buat open source untuk mengimbangi produk komersil, tapi yang sederhana dulu seperti layout viewer dan editor (manual & programmatic editor), at least capable untuk bisa buka GDSII a few GBs comfortably. Saat ini cuma produk komersil yang bisa begitu. Yang free belum bisa. Alasannya simple aja, katakan untuk 45nm Node, untuk contact layer ada 60 juta contact hole per mm2. Maksimum mask size 26mm x 33mm, jadi sekitar 50 milyard contact. Tanpa OPC, 1 contact direpresentasikan dengan simple ‘box’ (5 point), tapi setelah OPC, satu contact bisa jadi beberapa segmen, katakan jumlah pointnya jadi 3x lipat, jadi total 750 milyard points. Kalo ada scattering bar, jumlahnya bisa meningkat 4 x lipat atau bisa mencapat 3 trilyun points.

Sekarang kalo mau bikin software harus bisa look ahead 2 atau 3 generasi, yang berarti 2^2 atau 2^3 density saat ini. Hmm, kira-kira ada ide bagaimana caranya untuk buka, mapping, dan pengolahan (boolean, flattening, cropping) 24 trilyun points dalam waktu yang “reasonable” dan computer spec yang affordable?

Ada beberapa alternatif setelah diskusi dengan beberapa pakar software :

- Berbasis database. 24 trilyun point itu biasa, katanya. Tapi syaratnya harus dibantu dengan index.

- Index apa yang bisa mengolah 2D? Setelah research di web dan wikipedia, ada beberapa solusi : kd tree, quadtree, r-tree, apalagi? Saya sedang mengembangkan yang saya namakan bit-packed quadtree. Tunggu ulasannya sebentar lagi. Dari segi performance sepertinya punya harapan.

- Paralelisme, memanfaatkan multi prosesor/multi core? Ini harus karena pada saat membuat index membutuhkan O(n*k), di mana n adalah jumlah data, dan k adalah konstanta efisiensi. kd tree misalnya butuh O(n*log(n)) untuk membuat index. Jadi tanpa paralelisme, tidak mungkin membuat software yang bisa mengolah 24 trilyun titik pada waktu yang “reasonable”

Ada ide lain?

Comments are closed.