Anda di halaman 1dari 30

Tugas Mandiri Matakuliah Arsitektur dan Organisasi Komputer Dosen : Ir.

Yan Everhard, MT

Mengintip ke dalam Arsitektur Mikro Intel Nehalem

Disusun oleh : NIM 1211600612 1211600695 1211600703 1211600802 : : : : Nama DONZILIO ANTONIO M. YOHANES SETIAWAN R BURHAM ISNANTO F HALIM AGUNG Kelompok XC

PROGRAM STUDI MAGISTER KOMPUTER UNIVERSITAS BUDI LUHUR JAKARTA GASAL 2012/2013

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

DAFTAR ISI
ALASAN PEMILIHAN JUDUL ....................................................................................... LATAR BELAKANG ....................................................................................................... PENGANTAR ................................................................................................................... KONTROLER MEMORI TERINTEGRASI .................................................................... CACHE MEMORI ............................................................................................................. PENINGKATAN SALURAN CPU .................................................................................. PENINGKATAN MANAJEMEN DAYA ........................................................................ MODUS TURBO ............................................................................................................... FITUR LAINNYA ............................................................................................................. KESIMPULAN .................................................................................................................. REFERENSI URL ............................................................................................................. 2 3 4 10 13 15 20 22 24 27 29

Kelompok XC

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

ALASAN PEMILIHAN JUDUL


Adapun alasan yang melatarbelakangi pilihan untuk membahas arsitektur Nehalem pada tulisan ilmiah ini adalah sebagai berikut : 1. Nehalem merupakan penerus Intel untuk Core 2 yang memiliki pondasi kuat dalam perkembangan Intel selanjutnya. 2. Dengan fitur Core-wise dan clock for clock, Nehalem mampu meningkatkan kinerja hingga 15%-20% dibandingkan dengan Penryn yang sama-sama menggunakan metode manufacturing 45-nm. 3. Secara filosofi teknologi, terobosan yang dilakukan oleh Intel pada arsitektur Nehalem telah memungkinkan mereka (dan produsen microprocessor pada umumnya) untuk memenuhi dan melanjutkan prinsip pengembangan teknologi microprocessor yang diuraikan di dalam Hukum Moore, baik secara bisnis maupun secara teknologi. 4. Secara teknis, teknologi proses yang digunakan oleh Nehalem adalah terobosan besar yang bukan saja terjadi pada internal Intel sebagai produsennya, melainkan juga merupakan pencapaian baru dalam sejarah industri microprocessor pada umumnya.

Kelompok XC

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

LATAR BELAKANG
Processor atau Central Processing Unit (CPU) merupakan bagian yang sangat penting dari sebuah komputer mengingat fungsinya sebagai otak dari komputer. Tanpa CPU, komputer hanyalah sebuah mesin yang tidak bisa apa-apa. Perkembangan CPU dari tahun ke tahun selalu mengalami peningkatan yang sangat cepat, bahkan para pionir CPU seperti Intel dan AMD selalu bersaing. Core 2 Duo merupakan pemicu terjadinya revolusi Intel. Di akhir tahun 2008, kebanyakan konsumen mungkin tidak mengingat hari-hari suram Netburst dan Pentium 4 saat Arsitektur K8 AMD dan chip Athlon 64 menguasai pasar. Core 2 Duo dan Quad membawa kinerja cemerlang dengan titik harga yang menarik, hal inilah yang mendukung Intel kembali ke posisi yang lebih baik. Jadi, harus diakui bahwa Nehalem merupakan penerus Intel untuk Core 2 yang memiliki pondasi kuat dalam perkembangan Intel selanjutnya.

Kelompok XC

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

PENGANTAR
Arsitektur mikro (microarchitecture, arch, uarch) adalah sebuah konsep yang memiliki beberapa alternatif penjelasan sebagai berikut : Menurut Wikipedia : Microarchitecture consists of a set of microprocessor design techniques used to implement the instruction set (including microcode, pipelining, cache systems, etc.). Menurut Bruce Shriver dan Bennet Smith : Microarchitecture is the term used to describe the resources and methods used to achieve architecture specification. The term typically includes the way in which these resources are organized as well as the design techniques used in the processor to reach the target cost and performance goals. The microarchitecture essentially forms a specification for the logical implementation.

Dari kedua defenisi tersebut, dapat ditarik sebuah kesimpulan mengenai apa yang dimaksud istilah atau konsep arsitektur mikro, yakni sebuah konsep yang terdiri dari beberapa bagian spesifik yang berfungsi untuk melakukan fungsi-fungsi kelas obyek (komponen) untuk mendukung fungsi arsitektur secara keseluruhan. Dengan bahasa yang lebih sederhana, arsitektur mikro adalah sebuah sub sistem dari sebuah arsitektur secara keseluruhan. Dalam kaitannya dengan arsitektur komputer, arsitektur mikro adalah salah satu konsep yang esensial. Jika arsitektur berbicara tentang interkoneksi perangkat keras komputer, maka arsitektur mikro berbicara tentang bagaimana melakukan koneksi-koneksi tersebut, instruksi apa yang harus dijalankan dan hal-hal khusus lainnya. Dengan demikian, pada level yang lebih khusus, arsitektur mikro menentukan desain inti dan konsep-konsep teknis yang akan dijalankan di dalam proses microprocessor. Hal ini yang kemudian membedakan prinsip dan tujuan arsitektural dengan tujuan serta prinsip arsitektural mikro. Jika peningkatan performa sistem adalah tujuan utama pada level arsitektural, maka tujuan dari pengembangan pada level arsitektural mikro adalah : Pengembangan chip dengan mempertimbangkan biaya produksi. Penanganan penggunaan sumber daya. Kompleksitas sistem. Kemudahan interkoneksi. Kelompok XC

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013 Fabrikasi. Kemudahan debugging. Ketersediaan test tools.

Tuntutan akan ketersediaan sistem komputer yang memiliki performa tinggi telah menyebabkan perubahan-perubahan pendekatan dan teknik perancangan sistem pada level arsitektural mikro. Pada era komputer modern, pendekatan-pendekatan tersebut adalah : 1. Pemilihan instruction set yang tepat Pemilihan ISA (Instruction Set Architecture) adalah salah satu pendekatan paling penting. Jenis ISA yang digunakan akan menentukan tingkat fleksibilitas dan kompleksitas hubungan antara microprocessor dengan perangkat keras lainnya. 2. Penggunaan teknik instruction pipelining Instruction pipelining adalah salah satu pendekatan tertua, terefisien dan paling powerfull untuk meningkatkan performa microprocessor. Dengan menggunakan teknik ini, pemrosesan instruksi pada microprocessor tidak mengalami idle yang terlalu lama. 3. Penggunaan cache Penggunaan cache berangkat dari ketersediaan ruang di dalam chip, yang dimungkinkan oleh semakin majunya proses fabrikasi. CPU modern dikembangkan dengan konsep IC (integrated circuit), dengan memampatkan berjuta-juta transistor ke dalam satu keping chip. Ini memungkinkan manufaktur untuk menempatkan cache memory ke dalam chip yang sama. Dalam proses kerjanya, kombinasi antara cache dan prinsip pipelining menghasilkan kinerja yang cukup memuaskan. 4. Teknik branch prediction dan speculative execution Untuk memaksimalkan kinerja, desain microprocessor modern menggunakan dua teknik dalam menjalankan instruksi, yakni branch prediction dan speculative execution. Branch prediction adalah sebuah teknik untuk menentukan eksekusi pada sebuah instruksi bercabang. Sedangkan speculative execution adalah teknik untuk mengeksekusi sebuah kode secara spekulatif. Kedua teknik ini digunakan dalam microprocessor modern yang telah mengadopsi konsep pipelining. 5. Out-of-order execution Out-of-Order Execution (OoOE) adalah sebuah pendekatan untuk memangkas waktu delay (stall) dengan menggunakan delay tersebut untuk melakukan proses pada instruksi lainnya. Kebanyakan delay yang terjadi pada CPU disebabkan karena ketiadaan

Kelompok XC

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013 (keterlambatan) data, dan konsep ini diciptakan untuk mengisi delay tersebut dengan memproses instruksi yang lengkap sebelum kemudian melakukan rekonstruksi pada program order dan data order untuk memberikan output yang teratur sesuai dengan urutan instruksi yang diterima. 6. Superskalar Pada awalnya, CPU melakukan eksekusi terhadap satu buah instruksi lengkap pada satu kesempatan. Program komputer dapat dieksekusi lebih cepat jika beberapa instruksi diproses secara bersamaan. CPU superskalar mengeksekusi lebih dari satu instruksi pada satu clock cycle dengan melakukan dispatching beberapa instruksi secara bersamaan ke dalam beberapa unit instruksi ke dalam CPU seperti ALU, FPU, dan bit shifter. 7. Register renaming Register renaming adalah teknik yang digunakan untuk memperbolehkan banyak instruksi untuk dijalankan tanpa harus menimbulkan konflik antara berbagai unit eksekusi yang menggunakan satu register secara bersamaan. Teknik ini dilakukan dengan cara meletakkan satu set (bukan satu buah) register ke dalam CPU dalam waktu yang bersamaan. 8. Multiprocessing dan multithreading Multiprocessing adalah kemampuan CPU untuk melakukan beberapa proses dalam waktu yang bersamaan. Ada perbedaan dengan multithreading, dimana multithreading adalah kemampuan CPU untuk memecahkan proses ke dalam beberapa thread yang berbeda, dimana masing-masing thread tersebut dapat menggunakan sumber daya yang berbeda-beda, namun dapat dijalankan secara independen. 9. Simultaneous multithreading Simultaneous multithreading (SMT) adalah pengembangan dari konsep

multithreading, yang masih merupakan fitur yang berupa obyek penelitian dan pengembangan. Pada CPU multithreading, eksekusi dijalankan secara linear, sedangkan pada SMT, hal tersebut diubah dengan mengizinkan tiap thread untuk melakukan proses secara paralel.

Nehalam merupakan nama sandi (code name) dari CPU Intel dengan kontroler memori terintegrasi yang biasanya dikenal dengan sebutan Core i7. CPU berdasarkan arsitektur Nehalam akan memiliki sebuah kontroler memori tertanam yang mendukung tiga kanal DDR3, tiga tingkat cache, teknologi Hyper-Threading, bus eksternal yang disebut QuickPath,

Kelompok XC

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013 dan sebagainya. Di bawah ini merupakan kesimpulan fitur utama dari Nehalem dan kami akan menjelaskan apa yang dimaksud kemudian : Berdasarkan arsitektur mikro Intel Core. Memiliki dua sampai delapan inti. Kontroler memori tiga kanal DDR3 terintegrasi. Cache memori L2 256 KB tersendiri untuk tiap inti. Cache memori L3 8 MB. Susunan intruksi SSE 4.2 baru (terdapat 7 buah instruksi baru). Teknologi Hyper-Threading. Modus Turbo (overclocking otomatis). Peningkatan arsitektur mikro (mendukung perpaduan makro di bawah modus 64-bit, meningkatkan pendeteksi urutan pengulangan atau Loop Stream Detector, 6 port pengiriman, dsb). Peningkatan unit prediksi, dengan penambahan Branch Target Buffer (BTB) kedua. Sebuah entri 512 Translation Look-aside Buffer (TLB) kedua. Dioptimalkan untuk instruksi SSE yang tidak selaras. Meningkatkan kinerja virtualisasi (menurut Intel, pada virtualisasi arus bolak balik latency meningkat 60% dibandingkan dengan CPU Core 2 65-nm dan meningkat 20% jika dibandingkan dengan CPU Core 2 45-nm). Bus eksternal QuickPath Interconnect. Unit kontrol daya yang baru. Pada saat diluncurkan menggunakan teknologi manufaktur 45-nm, dengan model masa depan 32 nm (nama sandi CPU Westmere). Socket dengan 1366 pin.

Nehalem masih menggunakan metode manufacturing 45-nm yang sama dengan Penryn. Nama Nehalem sendiri diambil dari sungai Nehalem yang ada di daerah Oregan, Amerika Serikat. Berikut beberapa keunggulan yang dimiliki Nehalem dibandingkan dengan Penryn: 1.1x sampai 1.25x single threaded atau 1.2x sampai 2x untuk multithreaded pada keadaan kondisi daya yang normal. Penggunaan daya lebih hemat 30% untuk kinerja yang sama.

Kelompok XC

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013 Dengan fitur Core-wise dan clock for clock, Nehalem mampu meningkatkan kinerja hingga 15%-20% dibandingkan dengan Penryn.

Penting diingat bahwa CPU Core 2 diproduksi di bawah teknologi 45-nm memiliki fitur ekstra dibandingkan CPU Core 2 yang diproduksi di bawah teknologi 65-nm. Semua fitur tersebut dihadirkan pada CPU berbasis Nehalem, fitur yang paling penting adalah : Susunan instruksi SSE 4.1 (47 instruksi SSE baru). Teknologi hemat konsumsi daya atau deep power down technology (hanya pada CPU mobile, juga dikenal sebagai status C6). Teknologi akselerasi dinamis Intel yang ditingkatkan (hanya pada CPU mobile). Pembagi Radix-16 yang cepat (peningkatan FPU). Mesin pengocok super (peningkatan FPU). Teknologi virtualisasi yang ditingkatkan (peningkatan kinerja diantara 25% dan 75% pada waktu transisi mesin virtual).

Generasi terakhir CPU Intel dibangun dengan arsitektur mikro inti atau core (dengan nama sandi Conroe), kemudian ditingkatkan menggunakan proses 45-nm (dengan nama sandi Penryn). Selain itu, kinerja CPU AMD Phenom tidak dapat bersaing dengan chip Penryn, sehingga tidak dapat dikatakan bahwa Intel merebut kompetisi yang ada. Dengan demikian, Intel membuktikan teori Gordon Moore (yang menyatakan bahwa jumlah transistor dalam sirkuit terintegrasi akan berlipat ganda setiap dua tahun) adalah benar, dan memasukkan lebih banyak transistor ke dalam CPU-nya. Strategi perkembangan Intel dengan model perkembangan berputar (cycle) Tick/Tock dilakukan untuk mengantisipasi kebutuhan konsumen akan perlunya generasi chip yang baru dan perbaikan pada kecepatan CPU. Setiap Tick menandai perbaikan pada proses kerja arsitektur mikronya, sedangkan setiap Tock menandai munculnya arsitektur yang baru. Jeda antara Tick dan Tock adalah 2 tahun waktu perputaran. Nehalem merupakan periode Tock yang mengikuti teknologi Tick-nya yaitu Penryn dan disini ada banyak sekali hal baru yang sangat menarik, bukan hanya karena Nehalem menjadi arsitektur fundamental yang merupakan perbaikan dari teknologi Intel sebelumnya dalam jangka waktu 13 tahun. Semua orang yang tertarik pada Nehalem pasti tahu bahwa Nehalem adalah mainstream pertama dari Intel yang menggunakan Front-Side Bus dalam memperbaiki

Kelompok XC

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013 Common System Interface, yaitu dengan adanya Intel QuickPath Interconnect (QPI). Dari perkembangan ini sudah dibuktikan bahwa Core 2 Duo bekerja lebih cepat tanpa perlu adanya integrasi dengan kontroler memori sekaligus menyembunyikan kekurangan kinerjanya dengan cara seperti menambahkan massa ekstra on-die cache. Proses pengintegrasian kontroler memori tidak dilakukan sepenuhnya dengan Nehalem, meskipun ada sedikit perkembangannya dinilai kontroversial jika dibandingkan pada saat Pentium 4 atau Netburst dengan multithreading simultan-nya. Dengan teknologi HyperThreading yang kembali diterapkan memungkinkan masing-masing inti Nehalem mampu menjalankan dua thread pada waktu yang bersamaan. Pada akhirnya Intel juga memberikan Nehalem beberapa fitur manajemen daya cukup memadai. Dengan berfokus tidak hanya pada penghematan daya, tetapi juga untuk membuat penggunaan terbaik dari daya yang digunakan oleh CPU.

Kelompok XC

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

KONTROLER MEMORI TERINTEGRASI


Sebelum ditemukannya Nehalem, Intel telah terjebak dengan sebuah metodologi CPU yang meyakini bahwa CPU berkomunikasi dengan seluruh sistem melalui antarmuka FrontSide Bus (FSB). Namun hal itu bisa dimaklumi karena FSB telah mencapai batasnya dan diperlukan sebuah solusi untuk mendapatkan CPU yang bisa bekerja maksimal, bukan hanya sekedar melakukan tweak pada CPU sebanyak banyaknya. Sejak awal, CPU Intel menggunakan eksternal bus yang dinamakan Front Side Bus yang dibagi pakai (shared) antara permintaan memori dan I/O. CPU berbasis Nehalem memiliki sebuah kontroler memori tertanam dan menyediakan dua bus eksternal : satu bus memori untuk menghubungkan CPU ke memori dan satu bus I/O untuk menghubungkan CPU ke dunia luar. Perubahan ini jauh meningkatkan kinerja sistem untuk dua alasan utama. Pertama, memiliki path data yang terpisah untuk akses I/O dan memori. Kedua, akses memori lebih cepat sama seperti CPU karena tidak memerlukan komunikasi dengan kontroler eksternal terlebih dahulu. Pada Gambar 1 dan 2, kami membandingkan arsitektur tradisional yang digunakan CPU Intel dan arsitektur baru yang digunakan CPU Intel dengan sebuah kontroler memori terintegrasi.

Gambar 1 : Arsitektur yang digunakan CPU Intel sekarang.

Kelompok XC

10

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

Gambar 2 : Arsitektur yang digunakan CPU Intel dengan kontroler memori yang tertanam.

Bus eksternal baru ini disebut QuickPath Interconnect (QPI) dan bus ini menyediakan dua path data yang terpisah (satu untuk mengirim data dan yang lainnya untuk menerima data) agar CPU dapat berkomunikasi dengan chipset atau dengan CPU yang lain (dimana jika di sebuah server terdapat lebih dari satu CPU). Seperti yang dapat dilihat, bus ini setara dengan bus HyperTransport yang digunakan pada CPU AMD. Generasi pertama dari QuickPath Interconnect berjalan pada 3.2 GHz yang mentransfer dua data 16-bit per clock tick, yang sama dengan teori maksimum laju transfer 12.6 GB/s di tiap arah. Pada dasarnya QPI berfungsi sama dengan FSB, tapi dengan pendekatan yang lebih baik. Pada FSB, jalur yang dihubungkan adalah transfer data antara CPU dengan Memory Controller Hub (MCH), sedangkan pada QPI yang dihubungkan adalah CPU dengan IOH (Input/Output Hub). IOH sendiri difungsikan sebagai pengganti MCH pada sistem Core i7. QPI meningkatkan kemampuan transfer sistem CPU, karena menggabungkan kontroler memori langsung ke CPU. Pada dasarnya QPI bukanlah sebuah bus layaknya FSB, tetapi merupakan sistem point-to-point yang menghubungkan transfer data antara CPU dengan RAM, dan CPU ke sistem eksternal (chipset IOH di Motherboard).

Kelompok XC

11

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013 CPU pada komputer desktop hanya akan memiliki satu QuickPath Interconnect (QPI), sementara CPU server akan memiliki dua buah bus yang idependen untuk mengijinkan bus tersebut dapat terkoneksi bersama pada lingkungan SMP (Symmetric Multiprocessing). Kontroler memori terintegrasi ini merupakan pengendali memori utama yang menjadi satu bagian dengan CPU, sehingga tidak lagi menyebabkan adanya latency melalui FSB yang dapat membuat pemrosesan menjadi lambat. Pada CPU berbasis Nehalem, kontroler memori yang terintegrasi menyediakan tiga buah kanal memori, sebagai contoh kemampuan mengakses tiga modul memori pada waktu yang sama secara paralel, dalam hal meningkatkan kinerja dalam teori arsitektur tiga kanal menyediakan 50% peningkatan dari ketersedian bandwidth dibandingkan dengan arsitektur dua kanal yang berjalan pada laju clock yang sama. Sehingga untuk mencapai kinerja terbaik dengan CPU berbasis Nehalem seperti Core i7, Anda perlu menginstall tiga atau enam modul memori (tentunya jika motherboard Anda mendukung enam socket memori). Anda wajib memperhatikan pengubahan ini, karena kebanyakan orang sekarang menggunakan PC dengan 2 GB atau 4 GB (dua atau empat modul memori dalam hal untuk mencocokkan sistem dua kanal memori) sementara untuk Core i7 dan CPU berbasis Nehalem Anda mesti memiliki PC dengan 1.5 GB, 3 GB atau 6 GB untuk kinerja terbaik (tiga atau enam modul memori dalam hal untuk mencocokkan sistem tiga kanal memori).

Kelompok XC

12

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

CACHE MEMORI
Pada sisi cache memori, Intel menggunakan susunan cache yang sama dengan AMD, yaitu menggunakan CPU Phenom, sebagai contoh cache L2 tersendiri untuk tiap inti dan cache memori L3 yang terbagi. Setiap cache memori L2 akan menjadi 256 KB dan cache L3 akan menjadi 8 MB, pada akhirnya untuk model pertama yang diluncurkan Intel akan meluncurkan CPU Xeon berbasis Nehalem dengan lebih banyak cache. Cache L1 berjumlah sama dengan Core 2 Duo yaitu 64 KB (32 KB untuk instruksi dan 32 KB untuk data). L3 cache ini dibagi pakai oleh keempat inti. Bila yang digunakan hanya 1 inti (misalnya menjalankan aplikasi yang sifatnya single-threaded), inti tersebut bisa

mengakses sepenuhnya 8 MB cache tersebut. CPU Core 2 Duo hanya memiliki satu cache memori L2 yang dibagi pakai ke seluruh inti CPU, tapi untuk CPU quad-core dari Intel seperti Core 2 Quad dan Core 2 Extreme memiliki dua cache L2, masing-masing dibagi pakai oleh tiap kelompok dari kedua inti. Agar mudah dipahami, kami meringkas arsitektur cache yang tersedia pada Gambar 3 dan 4.

Gambar 3: Perbandingan antara arsitektur cache. Kelompok XC

13

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

Gambar 4: Perbandingan antara arsitektur cache.

Kelompok XC

14

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

PENINGKATAN SALURAN CPU


Seperti yang dijelaskan, Nehalem (Core i7) berdasarkan arsitektur yang digunakan oleh Core 2 Duo, membawa beberapa peningkatan pada jalan arus instruksi di dalam CPU. Berikut akan dijelaskan peningkatan yang dimaksud. Bagaimanapun, Core 2 Duo berbasis Pentium M, yang pada gilirannya berdasarkan Pentium III. Semua CPU tersebut merupakan generasi CPU Intel ke-6 (jika Anda menjalankan instruksi CPUID kesemuanya akan menghasilkan 6 pada field Family). Pentium 4 merupakan generasi CPU Intel ke-7, menggunakan arsitektur mikro yang benarbenar beda CPU Core 2 dan Core i7 tidak memiliki hubungan apapun yang bisa dilakukan dengan Pentium 4. Anda mungkin menemukan kejanggalan mengapa produsen kembali ke arsitektur jadul tetapi itulah yang terjadi (arsitektur mikro jadul membuktikan lebih efisien dibandingkan arsitektur yang terbaru). Untuk mengerti silsilah dari arsitektur mikro Nehalem yang baru dapat mengacu pada Gambar 5. Kami juga menambahkan peningkatan utama yang ada pada setiap CPU yang baru; setiap CPU memiliki semua yang ada pada CPU sebelumnya ditambah peningkatan yang disebutkan. Tentu saja tiap CPU memiliki peningkatan minor lainnya; disini kami hanya menampilkan yang penting saja.

Kelompok XC

15

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

Gambar 5: Pohon silsilah arsitektur mikro Nehalem. Kelompok XC

16

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013 Dalam rangka memahami peningkatan yang dibawa oleh arsitektur mikro baru ini, Anda perlu mengingat bahwa program tersebut ditulis menggunakan instruksi x86 (juga disebut macro-op atau instruksi), yang tidak dimengerti oleh unit eksekusi CPU. Mereka harus terlebih dahulu diterjemahkan ke dalam instruksi mikro (juga disebut micro-op atau op). Arsitektur ini merupakan hybrid CISC/RISC dan telah diperkenalkan oleh Pentium Pro : CPU menerima instruksi x86 (CISC), tetapi mengeksekusi hak milik instruksi mikro (RISC). Arsitektur mikro inti yang digunakan pada CPU Core 2, mengenalkan macro-fusion dengan kemampuan menterjemahkan dua instruksi x86 hanya dalam satu instruksi mikro (juga dikenal sebagai micro-ops) untuk dieksekusi di dalam CPU, meningkatkan kinerja dan mengecilkan konsumsi daya CPU, setelah mengeksekusi hanya satu malahan dua instruksi mikro. Bagaimanapun skema ini hanya bekerja untuk membandingkan dan kondisi instruksi bercabang (contoh, CMP atau TEST ditambah instruksi Jcc). Arsitektur mikro Nehalem meningkatkan macro-fusion dengan dua cara. Pertama menambahkan dukungan untuk intruksi bercabang yang berlainan yang tidak dapat digabungkan pada CPU Core 2. Dan kedua, pada CPU berbasis Nehalem macro-fusion digunakan baik pada modus 32bit maupun 64bit, sementara pada CPU Core 2 macro-fusion hanya bekerja saat CPU bekerja pada modus 32-bit. Arsitektur mikro inti juga menambahkan pendeteksi aliran perulangan (loop stream detector), biasanya berupa cache 18 instruksi kecil diantara unit pengambil dan penterjemah dari CPU. Ketika CPU menjalankan perulangan (bagian dari program yang diulang pada saat yang berlainan), CPU tidak memerlukan pengambilan intruksi yang dibutuhkan lagi dari cache instruksi L1: dikarenakan telah mendekati unit penterjemah. Ditambahkan, CPU sebenarnya mematikan unit prediksi pengambilan dan percabangan ketika menjalankan perulangan yang terdeteksi, hal ini tentu menghemat beberapa daya. Pada CPU berbasis Nehalem, cache kecil tersebut telah dipindahkan setelah unit penterjemah. Jadi bukan memegang instruksi x86 seperti CPU Core 2, melainkan memegang micro-ops (sampai 28). Peningkatan kinerja ini dikarenakan saat CPU menjalankan perulangan, tidak dibutuhkan penterjemahan instruksi yang ada di perulangan: perulangan tersebut akan diterjemahkan di dalam cache kecil ini. CPU juga dapat mematikan unit penterjemah sebagai tambahan untuk unit prediksi pengambilan dan percabangan saat menjalankan perulangan yang terdeteksi sehingga lebih menghemat daya.

Kelompok XC

17

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

Gambar 6: Lokasi Pendeteksi Aliran perulangan pada CPU Core dan Nehalem

Arsitektur Nehalem menambahkan satu buah port pengiriman ekstra dan memiliki 12 unit eksekusi yang bisa dilihat pada gambar di bawah. Dengan basis CPU tersebut, arsitektur ini dapat memiliki lebih banyak instruksi mikro yang dieksekusi pada waktu yang sama dibandingkan dengan CPU sebelumnya.

Gambar 7: Unit port pengiriman dan eksekusi Kelompok XC

18

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013 Arsitektur mikro Nehalem juga menambahkan dua buffer ekstra: entri 512 Translation Look-aside Buffer (TLB) kedua dan Branch Target Buffer (BTB) kedua. Penambahan buffer ini meningkatkan kinerja CPU. TLB merupakan sebuah tabel yang digunakan untuk konversi alamat fisik ke alamat virtual dengan sirkuit memori virtual. Memori virtual merupakan teknik dimana CPU mensimulasikan lebih banyak memori RAM pada sebuah file yang ada di harddisk (disebut file swap) untuk mengijinkan komputer melanjutkan operasi walaupun tidak terdapat cukup RAM yang tersedia (CPU mendapatkan apa yang ada pada memori RAM, menyimpan ke dalam file swap ini dan kemudian membersihkan memori agar bisa digunakan). Transition Lookaside Buffer (TLB) memainkan peran vital dalam kinerja cache. Bila halaman memori dipetakan dalam TLB, halaman memori tersebut dapat diakses dengan cepat dalam cache. Ketika TLB terlalu kecil, kesalahan lebih sering terjadi. TLB dalam arsitektur Nehalem jauh lebih besar daripada arsitektur sebelumnya yang memungkinkan lebih banyak referensi halaman memori untuk tetap berada di TLB. Prediksi percabangan merupakan sebuah sirkuit yang mencoba menebak langkah program selanjutnya, memuat intruksi ke dalam CPU dengan memikirkan apa yang CPU coba untuk muat selanjutnya. Jika tebakan tepat, CPU tidak akan menghabiskan waktu memuat instruksi dari memori, karena instruksi tersebut sudah ada di dalam CPU. Peningkatan ukuran BTB (atau menambahkan yang kedua dalam kasus CPU berbasis Nehalem) mengijinkan sirkuit ini fmemuat lebih banyak instruksi secara lanjutan yang meningkatkan kinerja CPU.

Kelompok XC

19

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

PENINGKATAN MANAJEMEN DAYA


Transistor di dalam CPU bekerja sebagai switch, dengan dua kemungkinan status: konduktif (modus saturasi) bekerja sebagai switch penutup, dan non konduktif (modus pintas) bekerja sebagai switch pembuka. Masalahnya ada pada status non-konduktif yang teorinya menyatakan mereka tidak mengijinkan arus untuk mengalir, tetapi jumlah kecil arus masih dapat mengalir. Jumlah kecil arus tersebut dikenal sebagai kebocoran arus dan jika Anda menambah kebocoran arus yang ada, Anda akan mendapatkan arus dalam jumlah yang banyak (termasuk daya) dihabiskan dan menghasilkan panas yang tidak diinginkan. Salah satu tantangan dalam mendesain CPU adalah mengatasi kebocoran arus tersebut. Nehalem menghadirkan unit kontrol daya di dalam CPU dengan tujuan manajemen daya yang lebih baik (lihat Gambar 8). Unit ini mengurangi kebocoran arus dan juga mengjinkan Modus Turbo baru. Pada dasarnya, CPU dapat memiliki voltase dan frekuensi yang berbeda untuk tiap inti, untuk unit diluar inti, untuk kontroler memori, untuk cache, dan untuk unit I/O. Pada CPU sebelumnya, semua inti berjalan pada laju clock yang sama, tetapi pada CPU berbasis Nehalem tiap inti dapat diprogram untuk berjalan pada laju clock yang berbeda dalam menghemat daya.

Gambar 8: Unit kontrol daya. Kelompok XC

20

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013 Unit kontrol daya yang ditanam dapat mematikan tiap inti CPU, tetapi fitur ini tidak tersedia pada CPU Core 2 mobile. Pada faktanya CPU dapat meletakkan tiap inti ke status daya C6 (menghemat daya secara mendalam) secara independen dari status suatu inti yang sedang berjalan. Hal ini mengijinkan penghematan energi ketika Anda menjalankan PC secara normal, tetapi satu atau beberapa inti menjadi siaga atau idle dan dapat dimatikan. Inti Nehalem dapat berada dalam salah satu dari empat status, yaitu C0, C1, C3, dan C6. Status ini saling bergantian. Pergantian ini sendiri terjadi 56 persen lebih cepat dibandingkan dengan arsitektur Penryn. Pada status C0, CPU sepenuhnya aktif dan mengambil daya secara penuh, C1 akan terjadi penambahan kecepatan clock CPU (dan tegangan) sehingga mengambil daya kira-kira setengahnya, C3 mematikan PLLs dan flushes cache lokal inti untuk yang lain sehingga mengakibatkan terjadinya 50 persen daya berkurang, dan pada status C6 akan mematikan hampir semua daya. Sementara pada keadaan sleep, akan daya yang digunakan sangat kecil sehingga membutuhkan waktu yang lebih lama untuk bangun dari keadaan sleep tadi.

Kelompok XC

21

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

MODUS TURBO
Unit kontrol daya yang ditanam juga menambahkan sensor daya untuk tiap inti. Tujuannya agar CPU mengetahui seberapa banyak daya yang dikonsumsi tiap inti dan berapa banyak panas yang tidak teratur. Hal ini mengijinkan penambahan Modus Turbo pada CPU. Modus Turbo ini selanjutnya lebih dikenal sebagai Intel Turbo Boost Technology. Dengan fitur Intel Turbo Boost Technology, inti CPU secara otomatis meningkatkan frekuensi clock-speed jika diperlukan, asal masih di bawah limit daya, arus dan suhu temperatur yang diijinkan. Sebagai contoh : pada saat user menggunakan satu aplikasi kelas berat yang membutuhkan kecepatan tinggi (seperti Game), maka Turbo Boost akan mengaktifkan fiturnya agar mencapai kecepatan maksimal secara dinamis sehingga aplikasi dapat dijalankan dengan nyaman. Modus Turbo mengijinkan CPU meningkatkan laju clock dari inti yang aktif. Ide ini termasuk tidak baru dan Core i7 bukan CPU pertama yang menggunakannya. Tetapi pada inkarnasi teknologi sebelumnya hanya dapat digunakan saat inti proses yang lain sedang siaga. Modus baru ini merupakan sebuah sistem perulangan tertutup. CPU terus menerus mengawasi temperatur dan konsumsi daya. CPU akan meng-overclock inti yang aktif sampai CPU mencapai jumlah maksimum yang diijinkan TDP berdasarkan sistem pendinginan yang Anda gunakan. Hal ini dapat dikonfigurasikan pada pengaturan motherboard. Sebagai contoh, jika pendingin CPU Anda dapat memakai 130 W, CPU akan menambah (atau mengurangi) clock yang ada sehingga daya yang dipakai CPU cocok dengan jumlah daya yang dipakai pendingin CPU. Jadi jika Anda mengganti pendingin CPU Anda dengan pendingin yang lebih baik, Anda perlu memasuki pengaturan motherboard untuk menkonfigurasikan TDP pendingin yang baru (sebagai contoh batas maksimum daya panas yang dapat dipakai) dengan tujuan membuat Modus Turbo untuk lebih sering meningkatkan clock CPU. Perhatikan bahwa CPU tidak perlu mematikan inti yang tidak digunakan untuk mengaktifkan Modus Turbo. Tetapi sejak teknik overclock dinamis ini berdasarkan seberapa banyak daya yang masih dapat dipakai menggunakan pendingin CPU Anda, mematikan inti yang tidak digunakan akan mengurangi konsumsi daya CPU dan hal ini dapat meningkatkan overclock yang lebih tinggi. Modus Turbo baru merupakan ekstensi teknologi SpeedStep yang dilihat oleh sistem sebagai fitur SpeedStep. Teknologi ini hanya dapat digunakan untuk inti CPU, jadi kontroler Kelompok XC

22

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013 memori dan cache memori tidak akan terpengaruh oleh teknologi ini. Sayangnya, Modus Turbo hanya akan tersedia pada model Extreme Edition. Setiap inti Nehalem dalam operasi normal mendapat bagian yang sama dari beban kerja yang ditugaskan ke CPU dan masing-masing akan meningkatkan atau menurunkan clock tergantung pada beban kerja. Terkadang, dalam menjaga beban kerjanya agar dapat terdistribusi secara merata pada semua intinya, Nehalem akan meningkatkan kecepatan clock pada putaran yang tinggi sehingga mengakibatkan daya yang digunakan akan lebih tinggi dari penggunaan listrik yang dibutuhkan. Dengan Modus Turbo, Nehalem dapat mengetahui kapan waktunya untuk membagi beban ke semua inti sehingga dapat meminimalkan penggunaan daya.

Gambar 9: Modus Turbo Nehalem. Dalam situasi adanya beban yang tidak terlalu banyak, ketika salah satu inti mendapatkan beban yang ringan sementara inti yang lain tidak digunakan sama sekali, CPU akan mematikan inti yang sedang bekerja tadi dan mendistribusikan beban kerjanya ke seluruh inti yang tersisa.

Gambar 10: Pengoptimalan Kinerja dan Efisiensi Energi pada Modus Turbo Nehalem.

Kelompok XC

23

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

FITUR LAINNYA
Berikut ini penjelasan mengenai dua fitur penting lainnya dari Nehalem, yaitu HyperThreading dan optimalisasi untuk instruksi SSE yang tidak selaras. Teknologi Hyper-Threading mengijinkan tiap inti CPU dikenal sebagai dua CPU. Jadi jika Anda memiliki Core i7 dengan empat inti, sistem operasi akan mengenalinya memiliki delapan inti. Teknologi ini berdasarkan fakta yang menyatakan ketika inti CPU sedang berjalan terdapat sirkuit tertentu di dalamnya yang siaga sehingga dapat digunakan. Semula dirilis untuk CPU Pentium 4, teknologi ini pertama kalinya tersedia pada generasi ke-6 CPU Intel. Teknologi ini biasanya juga disebut SMT atau Simultaneous Multi-Threading. Teknologi SMT merupakan teknologi yang memungkinkan setiap inti pada CPU dapat memproses 2 arus instruksi secara sekaligus. Hal ini tentu dapat meningkatkan kinerja aplikasi yang sifatnya multi-thread dan multi-tasking. Tetapi, teknologi SMT tidak menyediakan kinerja yang didapat sama seperti inti CPU sesungguhnya (contoh CPU dengan 8 inti lebih cepat dibandingkan CPU dengan 4 inti dan teknologi HT, diasumsikan bahwa CPU tersebut bekerja pada laju clock yang sama dan berdasarkan arsitekstur yang sama), bagaimanapun Anda akan mendapatkan inti CPU ekstra ini secara cuma-cuma. CPU berbasis Nehalem mendukung Intel Streaming SIMD Extension (SSE) 4.2 yang merupakan penambahan 7 instruksi baru dari SSE sebelumnya. Kinerja CPU pada tatanan multimedia menjadi lebih baik. Ada dua jenis instruksi SSE yang mengakses memori, selaras dan tidak selaras. Instruksi sederhana memerlukan data yang diminta di dalam format batas pengalamatan 16-byte (128bit), sementara instruksi tidak selaras tidak perlu. Sebagai ilustrasi silahkan lihat Gambar 11.

Aligned Request

Kelompok XC

24

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

Unaligned (misaligned) Request

Gambar 11: Instruksi Selaras dan Tidak Selaras

Gambar di atas dapat dijelaskan seperti berikut. Bayangkan sebuah sistem dengan memori dua kanal. Kontroler memori akan mengakses memori sebanyak 128 bit setiap kalinya. Jadi memori akan dibagi ke dalam 128 bit (16 byte) blok. Teorinya, alamat yang Anda minta harus dimulai dari awal pada setiap blok sehingga 128 bit tadi dapat dibaca (atau ditulis) dan mendapatkan apa yang Anda inginkan hanya dalam satu permintaan. Permintaan selaras ini ditunjukkan pada bagian atas Gambar 11. Tapi misalkan Anda memberikan perintah untuk membaca sebuah data dari memori tetapi dengan menggunakan alamat pertama di dalam blok, yang Anda minta adalah alamat yang ada di tengah blok. Sejak Anda meminta data 128 bit, yang akan terjadi adalah setengah data akan berada pada blok pertama dan setengah lainnya berada pada blok berikutnya hal ini ditunjukkan pada Gambar 11 bagian bawah. Saat data yang Anda minta dibagi ke dalam dua blok yang berbeda, kontroler memori akan membaca dua blok memori, tidak hanya satu sebagaimana yang terjadi pada contoh sebelumnya. Pada pembacaan yang pertama Anda akan mendapatkan setengah data yang Anda inginkan dan pada pembacaan yang kedua Anda akan mendapatkan sisanya. Walaupun permintaan selaras lebih efisien, permintaan ini lebih sulit bagi programmer karena perlu diketahui organisasi memorinya terlebih dahulu. Karena itulah, kebanyakan programmer hanya menggunakan instruksi tidak selaras. CPU Intel sebelumnya dioptimalkan untuk instruksi selaras, instruksi tidak selaras lebih lambat dan diterjemahkan ke dalam beberapa micro-ops dengan kata lain, instruksi tidak selaras lebih mudah bagi programmer tetapi berjalan lebih lambat. CPU berbasis Nehalem dioptimalkan untuk instruksi tidak selaras, mencapai kecepatan yang sama seperti instruksi selaras. Ringkasan penjelasan di atas dapat dilihat pada potongan slide pada Gambar 12.

Kelompok XC

25

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

Gambar 12: Nehalem dioptimalkan untuk instruksi SSE tidak selaras.

Kelompok XC

26

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

KESIMPULAN
Semua CPU Intel dengan nama Core i dibangun dengan dasar arsitektur yang diberi nama Nehalem. Secara sederhana, arsitektur Nehalem menawarkan performa yang lebih tinggi dengan pengaturan konsumsi daya yang jauh lebih baik. Ada beberapa hal yang merupakan keunggulan dari arsitektur Nehalem secara umum jika dibandingkan dengan arsitektur Core yang sudah ada sebelumnya.

1. Penggabungan komponen Pada Nehalem, ada beberapa komponen yang digabungkan menjadi satu di dalam CPU. Hal yang paling penting adalah penggabungan pengendali memori (RAM) ke dalam CPU yang sebelumnya terletak di luar CPU. Dengan dimasukkannya pengendali memori ke dalam CPU, kecepatan aliran data antara CPU dan memori menjadi lebih tinggi. Pada CPU Core i3 M, Core i5 M, dan Core i7 M, Intel bahkan memasukkan VGA-nya ke dalam CPU. Hal tersebut tentu membuat kemampuan VGA menjadi lebih baik dibandingkan VGA onboard terdahulu.

2. Efisiensi daya, maksimalisasi kinerja Pada Core 2 Duo (CPU dengan 2 inti), jika kecepatannya adalah 3 GHz, itu berarti kedua inti bekerja dengan kecepatan 3 GHz. Saat CPU beristirahat, kecepatannya keduanya akan turun secara bersamaan. Jadi, kalau ada software yang hanya bisa menggunakan 1 inti, kedua inti akan bekerja pada kecepatan tertingginya (3 GHz). Satu inti bekerja mengolah data, sementara inti lainnya hanya ikut-ikutan menaikkan kecepatan tanpa mengolah data. Pada Nehalem, kondisinya berbeda. Contohnya pada Core i3 (2 inti), kondisi di atas hanya akan membuat 1 inti bekerja dengan menggunakan kecepatan maksimumnya. Sementara inti yang tidak terpakai akan tetap beristirahat untuk menghemat energi.

3. Hyper-threading (HT) Sebuah inti CPU yang memiliki teknologi HT akan dikenal oleh sistem operasi sebagai CPU 2 inti. Jadi, sistem operasi dapat memberikan 2 pekerjaan pada sebuah inti. Hal ini membuat CPU berbasis Nehalem mampu bekerja lebih maksimal dibandingkan pendahulunya. Kelompok XC

27

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013 4. Turbo boost Kemampuan ini adalah fitur unggulan dari sebagian besar CPU berbasis Nehalem. Ide dasarnya adalah HUGI (Hurry Up and Get Idle), dimana jika sebuah pekerjaan diselesaikan lebih cepat, CPU akan bisa beristirahat lebih cepat dan menghemat lebih banyak energi.

5. Kontroler Memori Terintegrasi Dengan kontroler memori yang terintegrasi pada CPU, keterbatasan Front Side Bus (FSB), yang selama ini merupakan jalur penghubung CPU dengan chipset, dapat ditiadakan. Sebagai gantinya digunakan interkoneksi baru, yaitu Intel QuickPath Interconnect (QPI). CPU dan memori utama berhubungan langsung. Karena chipset dan CPU menangani tugasnya masing-masing, maka otomatis berimbas pada akses yang lebih singkat dan cepat.

Kelompok XC

28

[Mengintip ke dalam Arsitektur Mikro Intel Nehalem] ArOrKom Gasal 2012/2013

REFERENSI URL
1. Gabriel Torres, Inside Intel Nehalem Microarchitecture, http://www.hardwaresecrets.com/article/Inside-Intel-Nehalem-Microarchitecture/535/, Update 26 Agustus 2008 2. Hugo Jobling, Intel Core i7 (Nehalem) Architecture Overview, http://www.trustedreviews.com/opinions/intel-core-i7-nehalem-architecture-overview, 3 November 2008 3. Dr David Levinthal PhD., Performance Analysis Guide for Intel Core i7 Processor and Intel Xeon 5500 Processors, http://software.intel.com/sites/products/collateral/hpc/vtune/performance_analysis_guide. pdf, 2008-2009 4. Hakiki 456, ARSITEKTUR PROCESSOR TERHADAP DOTHAN, NEHALEM, DAN SANDY BRIGDE, http://hakiki456.wordpress.com/2012/09/23/arsitektur-procesoorterhadap-dothan-nehalem-dan-sandy-brigde/, 23 September 2012 5. Perkembangan Processor Intel, http://blog.ub.ac.id/rosikhan/perkembangan-processorintel/, 18 Oktober 2011 6. Ichakhy, Tentang INTEL NAHALEM, http://ugottaknowit.wordpress.com/tag/perkembangan-intel-dari-masa-ke-masa/, 29 Oktober 2010 7. Arif Setiawan, FITUR BARU INTEL CORE i7, http://paperittelkom.files.wordpress.com/2010/01/fitur_baru_intel_core_i7.pdf 8. Aulia Rakhmawati , INTEL COREi7, http://paperittelkom.files.wordpress.com/2010/03/intel_core_i7.pdf 9. Trent Rolf, Cache Organization and Memory Management of the Intel Nehalem Computer Architecture, http://rolfed.com/nehalem/nehalemPaper.pdf, Desember 2009 10. Microarchitecture, http://en.wikipedia.org/wiki/Microarchitecture, Januari 2010

Kelompok XC

29