VLSI atau Very Large Scale integrated Circuit merupakan chip yang mengintegrasikan transistor
dalam jumlah yang sangat besar.
VLSI tersusun dari Silicon Die yang dihubungkan oleh Wire Bonding dengan terminal terminal
yang berada pada Lead Frame agar bisa dihubungkan dalam PCB Board.
VLSI mempunyai lebih dari 10.000 gerbang logika. IC dengan level integrasi tinggi mempunyai
beberapa keuntungan yaitu :
Implementasi chip ini sendiri paling banyak digunakan dalam CMOS (Complementary Metal
Oxide Semiconduktor). Keunggulan dari CMOS sendiri yaitu :
- Disipasi daya yang kecil. Hal ini memungkinkan untuk menempatkan lebih banyak
komponen dan rangkaian pada satu chip.
- Impedansi masukan yang tinggi. Hal ini dapat digunakan untuk penyimpan sementara
informasi baik pada rangkaian logika maupun rangkaian memory.
- Ukuran yang semakin kecil. Hal ini memungkinkan untuk mempunyai tingkatan integrasi
yang sangat tinggi dalam satu chip.
- Application Specific Integrated Circuit (ASIC). Mempunyai fungsi tertentu seperti chip
untuk 3G, 4G atau yang lainnya. Chip ini hanya didesain untuk fungsi tertentu.
- General Purpose Processor. Bersifat general purpose, fungsi chip ini ditentukan sesuai
dengan program yang kita masukan kedalam chip ini (Micro Processor, Processor, Pentium,
dll)
- Programmable Logic. Chip yang bisa kita program interkoneksi dari chip itu sendiri.
Perkembangan teknologi chip ini menunjukan trend ukuran dari chip yang semakin kecil. Selain
itu penigkatan densitas 22% pertahun disebabkan oleh:
Selain ukuran yang semakin kecil, kecepatan frekuensi chip menjadi semakin kecil karena
kerapatan transistor atau die yang juga semakin kecil. Kemudian jumlah layer metal yang disediakan
untuk interkoneksi. Semakin banyak layer dibutuhkan agar chip dapat mengadopsi desain yang lebih
kompleks. Semakin kecil teknologi yang digunakan, maka semakin besar kapasitas produk memory
yang dihasilkan. Ukuran wafer menjadi lebih besar sehingga dapat menampung desain yang lebih
kompleks lagi.
Kinerja Chip
Kenerja atau keunggulan dari sebuah chip diukur melalui beberapa parameter :
- Biaya (cost). Semakin kecil biaya makan akan semakin bagus dari chip itu sendiri.
- Kehandalan. Kehandalan dari chip ini bergantung dari desain yang kita buat, semakin
bagus desain yang kita buat maka chip akan semakin handal.
- Skalabilitas. Chip harus lebih mudah untuk dilakukan peningkatan dari masa ke masa.
- Kecepatan yang terdiri dari delay dan operating frekuenci.
- Disipasi daya. Semakin kecil disipasi daya makan akan semakin baik chip yang diproduksi.
- Daya operasi.
- Factor biaya tetap atau NRE adalah factor biaya yang hanya dikeluarkan sekali untuk satu
buah produk. Seperti desain awal sebelum disepakati dan dilakukan produksi masal.
- Factor biaya variable merupakan biaya yang dikeluarkan setipa produksi chip.
MPW atau multi project wafer bertujuan untuk menekan biaya prototyping atau small
production volume dengan menyediakan jasa fabrikasi chip dengan beberapa rancangan dalam satu
wafer.
Chip dibentuk dari wafer yang berbentuk lingkaran. Chip yang belum dikemas tersebut disebut
dengan die. Pada proses pembuatan chip, wafer ini akan dipotong-potong menjadi die. Untuk
menentukan jumlah die per wafer dapat dihitung dengan persamaan berikut :
Perbandingan jumlah die yang baik terhadap total jumlah die dalam wafer disebut dengan
yield (Y) yang bisa dinyatakan :
Wafer cost bervariasi dan bergantung pada teknologi yang digunkan dalam chip. Untuk
teknologi 0.18 mm, wafer cost bervariasi antara 700-800 US dolar. Sementara untuk 90 nano, wafer
cost masih berkisar diantara 1500-200 US dolar. Semakin kecilnya teknologi dari chip maka
development cost nya juga ikut menigkat.
Dengan semakin kecilnya dimensi transistor dan rounting rangkaian di dalam chip, maka
komponen parasitic juga semakin kecil. Semakin tinggi frekuensi dari suatu chip dan kompleksitas
maka konsumsi daya dari chip juga akan semakin meningkat.
Ekosistem Industri Chip
Industry elektronik dimulai dari industry komponen atau processor itu sendiri kemudian
masuk kedalam infustri ODM/OEM yang digunakan untuk memprogram processor sesuai dengan
kebutuhan, setelah itu masuk kedalam industry manufaktur untuk membuat komponen komponen
penunjang lain. Kemudian masuk kedalam industry integrator yang bertugas untuk menggabungkan
semua bagian sehingga menjadi produk yang siap untuk digunakan dan siap untuk dijual.
Untuk industry chip sendiri dimulai dari chip desain -> wafer fabrication -> assembly dan
packing -> testing & measurement -> siap produksi.
Dalam industry IC Packaging dimulai dengan wafer dicing saws -> semi automic die handler ->
automic die bonder -> wire bonder -> ic molding -> trim, form dan singulation.
Dalam industry manufaktur adalah industry paling hilir dari supply chain industry perangkat
elektronika.
Dalam PCB fabrication dimulai dengan drilling and routing -> through hole plating -> UV
Exposure -> developer machine -> etching machine -> multilayer press.
Original Design Manufacture (ODM) adalah industry yang membuat rancang bangun produk
yang siap untuk dimanufaktur, berbasis komponen ataupun reference design yang dihasilkan oleh
vendor komponen. Industry manufaktur memberikann layanan kepada vendor equipment sebagai
berikut :
- Pembelian komponen.
- Circuit board assembly.
- Final assembly.
- Testing.
Jasa ini disebut juga Original Equipment Manufacture (OEM) karena melakukan manufaktur
berdasarkan spesifikasi yang diberikan oleh vendor pemilik merek atau client. Selain melakukan
manufaktur, industry manufaktur juga melakukan testing produk dalam berbagai kondisi dengan
fasilitas khusus.
Keberhasilan implementasi rancangan dalam bentuk chip diukur dari beberapa parameter
berikut ini :
- Kesesuaian spesifikasi.
- Ukuran die.
- Waktu perancangan.
- Kemudahan perencanaan test dan testability.
- Manufacturability.
Semi Custom => perancangan menggunakan modul modul yang sudah ada sebelumnya,
kemudian di test kedalam cell based atau array based. Proses perancangan semi custom dilakukan
secara otomatis menggunakan CAD tools.
Perbedaan mendasar antara custom dan semi custom adalah pada kinerja dari chip yang
dihasilkan. Pada perancangan custom kinerja chip jauh lebih baik dibanding dengan metode semi
custom, tetapi untuk waktu perancangan metode custom membutuhkan waktu yang lebih lama
dibandingkan dengan metode semi custom.
Beberapa parameter justifikasi tipe chip yang cocok untuk implementasi dengan teknologi full
custom ini adalah sebagai berikut :
Teknologi standard cell melakukan proses sintesis dari HDL, seperti Verilog atau VHDL, menjadi
skematik secara otomatis menggunakan CAD Tools seperti Synopsys Design Compiler.
Implementasi menggunakan standard cell memiliki keunggulan yaitu rancangan dalam bentuk
cell hanya perlu dirancang dan diverifikasi satu kali dan untuk selanjutnya dapat digunakan ulang.
Adapun kekukurang dari metode ini adalah :
Untuk memudahkan proses placement and routing oleh CAD tools secara otomatis, maka
standard cell harus memiliki ukutan dan letak yang tetap atau standar dalam hal hal berikut ini :
Rancangan standard cell yang disediakan foundry dapat bervariasi sehingga menigkatkan
flaksibilitas perancangan. Contoh standard cell yang umum digunakan adalah :
- Gerbang logika sederhana => NAND, NOR, XOR, inverters, buffers, latches dan registers.
- Fungsi logika sederhana => decoders, encoders, adders dan comparators.
- Datapath => ALU, register files, shofters, FIFO.
- Memory => RAM dan ROM.
- System Level Block => multipliers, microcontrollers, dan I/O pads
Pada teknologi standard cell, layout dibuat oleh CAD tools. Layout dari standard cell
ditempatkan dalam baris yang dipisahkan oleh routing channel. Berikut adalah standard cell layout.
Untuk menghubungkan cell pada baris yang terpisahkan oleh baris lain, maka digunakan
standard cell khusus yang hanya berfungsi sebagai interkoneksi yang disebut feedthrough cell. Untuk
memberntuk baris yang baik, maka tinggi dari standard cell harus sama. Pada teknologi yang lebih
tinggi, disediakan metal interkoneksi dengan jumlah yang banyak, bisa mencapai 8 layer metal. Power
supply terdistribusi secara horizontal aga dapat digunakan secara bersamaan oleh cell dalam baris
yang sama.
Merupakan sebuah category Programmable digital circuit, dia merupakan IC yang bisa
deprogram circuit didalamnya, sehingga kinerjanya berbeda dengan kita munggunakan
microprocessor. Desired functionality diimplementasi dengan mengkonfigurasi logic block dan
interconectsinya. Adapun keuntungannya adalah :
- Mengurangi biaya manufacturing dan kekompleks an dari system yang dibuat serta
peningkatan performa dari chip.
- Custom IC relative lebih mahal dalap pengembangan dan produksi masal yang cukup lama
karena waktu design yang juga membutuhkan waktu yang cukup lama.
- Setiap switch adalah pass transistor yang dikontrol oleh state dari sebuah bit SRAM.
- FPGA membutuhkan konfigurasi pada power-on.
- Setiap switch adalah sebuah floating-gate transistor yang dapat dimatikan dengan
memberikan charge pada gerbangnya
- Dapat deprogram ulang, walaupun sudah didalam circuit.
Fusible link
- Dibentuk dari low resistance path yang dapat deprogram secara elektrik.
- Bersifat one time programmable.
- Radiation tolerant.
- lacth digunakan untuk :
1. Membuat atau memutus koneksi cross-
point dalam interconeksi.
2. Menentukan fungsi dari logic bloks.
3. Mengatur user option :
a. Dengan logic blocks
b. Pada I/O blocks
c. Global reset/clock
- Configuration bit stream dapat dimuad
dalam user control :
a. Semua latches saling terhubung
dalam sebuah shift chain.
Clock distribution => apabila clock tidak didistribusikan secara khusus maka akan terjadi delay,
sehingga FPGA mempunyai jalur clock sendiri agar tidak terjadi delay.
Embedded memory blocks => hampir semua system digital pasti membutuhkan data memory.
Menentukan spesifikasi desain -> melakukan desai entry/RTL Coding -> melakukan simulasi
RTL (simulasi fungsi, verifikasi model logika dan data flow) -> syntesis (menerjemahkan desain yang
sudah dibuat keadalam perangkat yang lebih spesifik, pengoptimalan untuk mendapatkan area dan
performa yang dibutuhkan) -> place & raoute.
Berikut adalah alur pengimplementasian sebuah desai kedalam sebuah Xilinx Device
Logic array block atau LAB dibagi menjadi 10 logic elemet dengan sebuah local inter koneksi.
Adapun struktur interkoneksinya adalah :
Tersusun dari
- 1 sampai 4 PowerPCs
- 4 sampai 16 multi gigabit transceivers
- 12 sampai 216 multipliers
- 3000 sampai 50000 sel logika
- 200k sampai 4M bits RAM
- 204 sampai 852 I/O
System Generator
Pada awalnya desain system menggunakan software Simulink pada Matlab, akan tetapi terjadi
beberapa gap yang mengkibatkan desain tidak dapat digunakan secara optimal. System Generator
toolbox ini mengisi gap gap itu sehingga desainer dapat mendesain sebuah system DSP dalam sebuah
FPGA. System generator menggunakan Simulink toolbox, Xilinx HDL synthesis, IP CORE Generator
software libraries, dan FPGA implementations tools.
Metodologi Perancangan
Rancangan chip selalu ditutuntut mempunyai kinerja yang semakin baik (konsumsi daya,
kecepatan), harga semakin murah dan waktu pengerjaan semakin cepat. Tahap dan level perancangan
dimulai dari tahap penentuan pendanaan dan spesifikasi, sampai dngan layout yang dapat diproduksi
oleh layout foundry.
1. Budget => parameter budget ini merupakan nilai maksimum atau Batasan dimana spesifikasi
rancangan harus berada di dalam batasan tersebut. Budget sendiri dapat berisi :
o Permintaan customer dalam hal biaya, kinerja dan lain lain.
o Prakiraan feasibility dari cost performance dari chip yang akan dirancang.
o Lama waktu pengembangan (development time).
2. Spesifikasi => merupakan kontrak teknis yang berisi daftar tujuan perancangan yang hendak
dicapai dari sebuah proyek. Kontrak ini sendiri berisi parameter-parameter rancangan, yang
umumnya adalah beberapa hal :
o Speed -> kHz, MHz, GHz
o Power -> mW dan Watt
o Latency -> clocks, ns, ms
o Area -> um2, mm2, cm2
o Configurability -> mode
o Timing diagram -> diagram in ns
o DC/AC characteristic
o Working temperature/humidity
o Fungtion description
Selain daftar spesifikasi diatas, secara praktis parameter detail spesifikasi yang mudah
digunakan untuk perancangan adalah :
5. Logic gates => rancangan dideskripsikan dalam bentuk gerbang-gerbang logika yang
membentuk fungsionalitas sesuai dengan spesifikasi. Hasil rancangan dapat ditampilkan
dalam bentuk skematik ataupun netlist.
6. Circuit => perancangan dideskripsikan dalam bentuk rangkaian transistor yang membentuk
fungsi logika sesuai dengan fungsionalitas system. Rangkaian ini dapat ditampilkan dalam
bentuk skematik diagram atau netlist.
7. Layout => merupakan deskripsi rancangan dalam bentuk geometri fisik transistor dan
interkoneksi dari rancangan. Geometri fisik ini siap untuk dikirim ke chip foundry untuk dapat
difabrikasi diatas platfrom silicon. Simulasi rancangan chip pada level layout ini sudah
memperhitungkan delay gerbang maupun delay interkoneksi. Simulasi ini disebut full-timing
simulation.
Proses perancangan dimulai dengan pemodelan system dengan menggunakan High Level
Programming Language seperti Matlab, C, SystemC, bahkan Verilog ataupun VHDL. Pemodelan ini
bertujuan untuk mengukur kinerja algoritma, merancang arsitektur data path, mencari konfigurasi dan
presisi bit system yang cocok. Pemodelan ini dilakukan bersamaan dengan perancangan arsitektur
system.
Verifikasi adalah proses yang dilakukan untuk menentukan kebenaran suatu desain yang
telah dibuat. Verifikasi berfungsi memastikan atau menjamin bahwa desai telah sesuai dengan
spesifikasi yang dibutuhkan oleh suatu produk.
Arsitektur yang telah ditentukan kemudian dikodekan dalam deskripsi RTL dengan
menggunakan HDL, baik VHDL maupun Verilog. Deskripsi dalam RTL kemudian diverifikasi secara
fungsional dengan menggunakan software HDL simulator seperti synopsys VCS-MX atau
MentorGraphics. Desain yang telah terverifikasi fungsional kemudian disintesis menjadi gate level
netlist dengan software sintesis seperti Synopsys Design Compiler.
Verifikasi system dilakukan dengan tujuan untuk memastikan system berfungsi sesuai
dengan spesifikasi yang ditentukan. Agar proses verifikasi yang dilakukan dapat menjamin
fungsionalitas system yang dirancang, maka diperlukan metodologi verifikasi yang baik. Dalam
verifikasi dilakukan proses debugging atau proses pencarian bug dan mengoreksinya. Adapiun
metodologi verifikasi yang dilakukan adalah :
- Complete RTL debugging => verifikasi ini mencakup proses pengujian desain pada berbagai
level mulai dari block level, system level, sampai full-chip level.
- Gate Level Verification => verifikasi pada gate level dilakukan untuk mendeteksi bug yang
mungkin terjadi pada tahap implementasi di level silicon.
Implementasi akhir desain adalah dalam bentuk chip layout dengan basis standard cell.
Proses implementasi desain meliputi proses :
- Floorplanning
- Placement
- Routing
- Verifikasi akhir
Implementasi akhir dilakukan dengan menggunakan tool seperti Astro dari Synopsys.
Pada metode perancangan Top-Down, system dirancang mulai dari level teratas. Kemudian
dilanjutkan dengan membuat abstraksi level di bawahnya. Ketika proses partisi level atas menjadi level
bawaj, interface antara modul didefinisikan secara detail dan jelas. Proses perancangan masing masing
modul dapat dilakukan oleh tim yang terpisah.
Pada metode Bottom-Up, dimana perancangan dimulai dari perancangan detail modul
modul terkecil. Rancangan pada level lebih tinggi dilakukan berbasis rancangan level yang lebih
rendah. Pada prakteknya, proses perancangan yang baik adalah merupakan kombinasi dari Top-down
dan Bottom-up.
Verifikasi level 0: merupakan verifikasi yang dilakukan pada level komponen, blok, atau unit
secara individual. Tujuannya adalah untuk mengetes komponen secara menyeluruh tanpa
memperhatikan leingkungan dimana komponen tersebut akan diintegrasikan. Desain yang akan dites
bisa berasal dari IP library yang disediakan oleh IP Vendor. Jika demikian, maka testing level 0 harus
dilakukan pada saat penerimaan awal dan uji kesesuaian file desain.
Level 1 : verifikasi dilakukan pada system peta memori dan interkoneksi internal dari suatu
desain. Tes dapat dibuat secara manual atau otomatis menggunakan tool yang dapat membaca system
peta memori dan interkoneksi desain. Pengetesan ini dilakukan untuk mengecek bahwa tiap register
di dalam desain dapat ditulis dan dibaca oleh prosesor. Semua interkoneksi di dalam desain juga harus
diverifikasi dengan melakukam penulisan dan pembacaan kembali melalui semua kemungkinan jalur
data.
Level 2 : verifikasi dilakukan pada level fungsional desain dan interkoneksi eksternal. Tes
ditujukan untuk memeriksa jalur-jalur fungsional utama di dalam setiap blok fungsional dan
memeriksa semua pin input-output.
Level 3 : verifikasi dilakukan pada level system. Tujuannya adalah untuk mengecek
fungsionalitas desain yang sudah digabungkan secara menyeluruh. Pada level ini, perlu juga dilakukan
verifikasi pada corner case, boundary condition, design discontinuity, error condition dan exception
handling untuk memastikan fungsinya secara komprehensif.
Arsitektur VLSI
Kinerja dari sebuah chip secara umum diukur melalui tiga factor utama :
1. Ukuran
2. Konsumsi daya
3. Kecepatan
1. Frekuensi maksimum
2. Latency
3. Throughput
4. Delay
Frekuensi maksimum ditentukan oleh critical path dalam sebuah rancangan. Critical path
adalah jalur dengan jarak atau delay terpanjang dalam rangkaian kombinasional. Critical path harus
lebih kecil dari periode clock system Tclk.
Latency adalah waktu yang diperlukan untuk memproses data dan diukur dari jarak waktu
antara data pertama masuk ke input dampai dengan data pertama keluar dari output.
Throughput adalah jumlah output yang dihasilkan per detik tau jumlah input baru yang
mulai diproses per detik.
Performance = throughput = 1/Latency
Delay adalah satuan kecepatan yang didefinisikan sebagai total waktu yang dibutuhkan
untuk melakukan suatu proses fungsi. Delay = Jumlah Clock Cycle x Periode Clock. Meminimalkan delay
daoat dilakukan dengan melakukan dua hal berikut :
- Mengurangi jumlah clock cycle rancangan
- Mengurangi periode clock
Apabila delay diperkecil atau frekuensi kerja ditingkatkan, maka area yang dibutuhkan oleh
rancangan semakin besar. Titik optimal berarti untuk ukuran implementasi sebuah rancanhan dengan
area tertentu, di dapat delay terkecil, atau sebaliknya, untuk delay tertentu diperoleh area terkecil.
Arsitektur parallel berfungsi untuk melakukan beberapa komputasi secara bersamaan pada
periode clock yang sama. Throughput yang dihasilkan akan meningkat sebanding dengan jumlah level
parallel yang dilakukan. Hal ini dapat terjadi dengan mereplikasi modul perangkat keras sehingga input
rate dapat meningkat.
Arsitektur seial dan arsitektur parallel apabila dianggap sebagai black box, maka dapat
dibedakan sebagai system SISO (single input single output) dan MIMO (multiple input multiple output).
MIMD (multiple instruction, multiple data). Mesin yang menggunakan MMID mempunyai
beberapa processor yang berfungsi secara tidak sinkron dan bekerja sendiri sendiri. Pada beberapa
waktu, processor yang berbeda mungkin dapat mengeksekusi instruksi yang berbeda pada setiap data.