01. Arsitektur dan Orgasnisai Komputer.pptx

43
Indroduction COMPUTER ORGANIZATION , ARCHITECTURE DESIGNING & PERFORMANCE

Transcript of 01. Arsitektur dan Orgasnisai Komputer.pptx

ORGANIZATION & ARCHITECTURE

IndroductionCOMPUTER ORGANIZATION , ARCHITECTURE DESIGNING & PERFORMANCE1 Atribut-atribut sistem yang nampak (visible) ke programmer yang mempunyai pengaruh langsung pada lojik eksekusi program.Computer Architecture 2 Such as:Instruction set,Jumlah bit-bit untuk yg digunakan utk merepresentasikan berbagai data, Mekanisme I/O, Teknik-teknik pengalamatan memory.DllComputer Architecture 3Unit-unit operasional dan interkoneksinya untuk merealisasikan atribut-atribut arsitektural.Detail hardware/tidak nampak ke programmer,

Computer Organization4Seperti:Control signals, Antar-muka antara komputer dan peripherals,Teknologi memory yang digunakan. Dll

Computer Organization5All Intel x86 family share the same basic architectureThe IBM System/370 family share the same basic architecture This gives code compatibilityOrganization differs between different versionsArchitecture and organization Example :6STRUCTURE & FUNCTIONStructure : cara di mana komponen-komponen berhubungan satu sama lainnya.Function : operasi masing-masing komponen individu sebagai bagian dari struktur (structure)7FUNCTION of ComputerCommunication linesPeripheralsCOMPUTERStorageProcessingData MovementControlData ProcessingData StorageData MovementControl8FUNCTION of ComputerData movement apparatusControl mecha-nismData storage facilityData proce-ssing facilityOperating environment (source and destination of data)Communication linesPeripheralsCOMPUTERStorageProcessingData MovementControl9STRUCTUREEmpat komponen struktural utama komputer:ComputerMain MemoryInputOutputSystemsInterconnectionPeripheralsCommunicationlinesCentralProcessing UnitComputer10STRUCTURECentral Processing Unit (CPU) : Mengontrol operasi komputer dan menyelenggarakan fungsi-fungsi pemrosesan data. sering disebut jg dengan Processor.Main memory (MM): Menyimpan data.I/O : Memindah data antara komputer dan lingkungan eksternalnya.System interconnection : Mekanisme-mekanisme yang menyediakan komunikasi antara CPU, Main Memory, dan I/O.Empat komponen struktural utama komputer:11ControlUnitComputerArithmeticand Login UnitInternal CPUInterconnectionRegistersCPUI/OMemorySystemBusCPUKomponen struktural utama CPU:STRUCTURESTRUCTUREControl Unit Mengontrol operasi CPU dan berarti juga komputerArithmetic and logic unit (ALU) menyelenggarakan fungsi-fungsi pemrosesan data komputerRegister Menyediakan tempat penyimpan (storage) internal terhadap CPUCPU interconnection Mekanisme-mekanisme yang menyiapkan terjadinya komunikasi antara Control Unit, ALU, dan Registers.Komponen struktural utama CPU:13CPUControlMemoryControl Unit Registers and DecodersSequencingLogicControlUnitALURegistersInternalBusControl Unitkomponen struktural utama CU:STRUCTUREI/OMMSystemBus Sequencing logic Control unit registers and decoders Control memoryFungsi CU:STRUCTURE15Princeton Institute for Advanced StudiesMain Memory (MM)ALU (CA)Program control unit (CC)I/O equipt-ment (I, O)CPUStruktur Komputer IASIAS Computer16Memory IAS terdiri dari 1000 lokasi storage, disebut words masing-masing 40 bits (1000 x 40 bit word).0 1 39Word untuk Bilangan (40 bit)Sign bit0 8 20 28 39Instruksi kiriInstruksi kananOpcodeAddressAddress

OpcodeWord untuk Instruksi (2 x 20 bit)IAS ComputerDetails17Memory buffer register (MBR) : memuat word yang akan disimpan di memory, atau digunakan untuk menerima word dari memory.Memory address register (MAR) : menentukan address dalam memory dari word yang akan disimpan (ditulis written) dari atau dibaca (read) ke MBR.Instruction register (IR) : memuat 8-bit opcode instruction yang sedang dieksekusi.Instruction buffer register (IBR) : digunakan untuk menampung sementara instruksi sisi-kanan (right hand instruction) dari word di dalam memory.IAS ComputerDetailsSet of registers (storage in CPU)18Program counter (PC) : memuat address dari pasangan instruction berikutnya yang akan di-fetch dari memory.Accumulator (AC) dan multiplier quotient (MQ) : digunakan untuk menampung sementara operan-operan dan hasil-hasil dari operasi ALU. Sebagai contoh, hasil perkalian dua bilangan 40-bit adalah bilangan 80-bit; the most significant 40-bit disimpan di AC dan the least significant dalam MQ.IAS ComputerDetailsSet of registers (storage in CPU)19ACMQArithmetic-logic circuitsMBRALUIBRPCIRMARControl circuitControl signalsI/O EquiptmentMain memory MAddressesInstructions and dataProgram control unit (ALU)IAS Computer20IAS Computer mempunyai 21 instruksi, bisa dikelompokkan sebagai berikut :Data transfer : memindah data antara memory dan ALU register atau antara dua ALU register.Unconditional branch : normalnya, control unit mengeksekusi instruksi secara berurutan dari memory. Urutan ini bisa dirubah oleh instruksi bercabang (branch instruction).Conditional branch : pencabangan bisa terjadi ketika condition nya dipenuhi.Arithmetic : operasi-operasi yang diselenggarakan oleh ALU.Address modify : memungkinkan perhitungan address dilakukan di ALU dan kemudian disisipkan ke dalam instruksiinstruksi yang tersimpan di dalam memory. Menyebabkan fleksibilitas pengalamatan (addressing flexibility).IAS Computer21THE IAS COMPUTER SETTipe InstruksiOpcode Kode operasiRepresentasi SimbolikPenjelasanData Transfer00001010LOAD MQMenstransfer isi register MQ ke accumulator AC00001001LOAD MQ, M(X)Mentransfer isi lokasi memory X ke MQ00100001STOR M(X)Menstransfer isi accumulator AC ke lokasi memory X00000001LOAD M(X)Mentransfer M(X) ke accumulator AC00000010LOAD M(X)Mentransfer M(X) ke accumulator AC00000011LOAD |M(X)|Mentransfer nilai mutlak M(X) ke accumulator AC00000100LOAD -|M(X)|Mentransfer |M(X)| ke accumulator AC22THE IAS COMPUTER SET CONT Tipe InstruksiOpcode Kode operasiRepresentasi SimbolikPenjelasanUnconditional00001101JUMP M(X,0:19)Mengambil instruksi berikutnya dari separoh kirinya M(X)branch00001110JUMP M(X,20:39)Mengambil instruksi berikutnya dari separoh kanannya M(X)Conditional00001111JUMP +M(X,0:19)Jika bilangan di dalam accumulator tidak negatif, ambil instruksi berikutnya dari separoh kirinya M(X)branch00010000JUMP +M(X,20:39)Jika bilangan di dalam accumulator tidak negatif, ambil instruksi berikutnya dari separoh kanannya M(X)23THE IAS COMPUTER SETTipe InstruksiOpcode Kode operasiRepresentasi SimbolikPenjelasanArithmetic00000101ADD M(X)Menambah M(X) ke AC; menempatkan hasil dalam AC00000111ADD |M(X)|Menambah |M(X)| ke AC; menempatkan hasil dalam AC00000110SUB M(X)Mengurangkan M(X) dari AC; menempatkan hasil dalam AC00001000SUB |M(X)|Mengurangkan |M(X)| dari AC; menempatkan hasil dalam AC00001011MUL M(X)Mengalikan M(X) dengan MQ; menempatkan most significant bits hasil dalam AC, menempatkan least significant bits dalam MQ24THE IAS COMPUTER SETTipe InstruksiOpcode Kode operasiRepresentasi SimbolikPenjelasanArithmetic00001100DIV M(X)Membagi AC oleh M(X); menempatkan hasil bagi (quotient) dalam MQ dan sisa (remainder) dalam AC00010100LSHMengalikan accumulator dengan 2 (yaitu, shift left satu posisi bit)00010101RSHMembagi accumulator dengan 2 (yaitu, shift right satu posisi bit)Address modify00010010STOR M(X,8:19)Mengganti field address kiri di M(X) dengan 12 right-most bits dari AC00010011STOR M(X,28:39)Mengganti field address kanan di M(X) dengan 12 right-most bits dari AC25MICROPROCESSOR SPEEDBranch prediction : processor melihat kedepan kode instruksi yang di-fetched dari memory dan memprediksi cabang mana atau kelompok instruksi yang mungkin akan diproses berikutnya.Data flow analysis : processor menganalisa instruksi mana yang tergantung pada hasil instruksi lain, atau data untuk membentuk jadwal instruksi yang teroptimasi.Speculative execution : menggunakan prediksi cabang dan analisa aliran data, processor mengeksekusi instruksi lebih awal dari yang seharusnya secara spekulatif.26COMPUTER COMPONENTS012...

n-2n-1InstructionInstructionDataDataBuffersPCMARIRMBRExecution unitI/O ARI/O BRI/O moduleCPUSystem busMain memory

27COMPUTER FUNCTIONFungsi utama yang harus dilakukan komputer adalah eksekusi program, yang terdiri dari sekumpulan instruksi yang tersimpan di dalam memory.Ekeskusi instruksi melibatkan aksi-aksi STARTFetch next instructionExecute instructionHALTFetch cycleExecution cycle28COMPUTER FUNCTION - CONTKarakteristik Mesin HipotetikOpcodeAddress0 3 4 15Format instruksi (4 bit opcode, 12 bit addreseSMagnitudeFormat integer 0 1 15Program counter (PC) = counter alamat instruksiInstruction register (IR) = instruksi yang sedang dieksekusiAccumulator (AC) = penyimpan sementara0001 = load isi memory ke AC0010 = store isi AC ke memory0101 = add ke AC dari memoryRegister-register CPU internalDaftar sebagian dari opcodes29 1 9 4 0 5 9 4 1 2 9 4 1 0 0 0 3 0 0 0 2 3 0 01 9 4 0300301302940941PCACIRMemoryCPU RegistersLangkah 1DataAddresCOMPUTER FUNCTION - CONTopcodeaddres30 1 9 4 0 5 9 4 1 2 9 4 1 0 0 0 3 0 0 0 2 3 0 11 9 4 0300301302940941PCACIRMemoryCPU RegistersLangkah 20 0 0 3COMPUTER FUNCTION - CONT35COMPUTER FUNCTION - CONT 1 9 4 0 5 9 4 1 2 9 4 1 0 0 0 3 0 0 0 2 3 0 15 9 4 1300301302940941PCACIRMemoryCPU RegistersLangkah 30 0 0 336 1 9 4 0 5 9 4 1 2 9 4 1 0 0 0 3 0 0 0 2 3 0 25 9 4 1300301302940941PCACIRMemoryCPU RegistersLangkah 40 0 0 53 + 2 = 5COMPUTER FUNCTION - CONT37 1 9 4 0 5 9 4 1 2 9 4 1 0 0 0 3 0 0 0 2 3 0 22 9 4 1300301302940941MemoryCPU RegistersLangkah 50 0 0 5COMPUTER FUNCTION - CONTPCACIR38COMPUTER FUNCTION - CONT 1 9 4 0 5 9 4 1 2 9 4 1 0 0 0 3 0 0 0 5 3 0 32 9 4 1300301302940941PCACIRMemoryCPU RegistersLangkah 60 0 0 539INSTRUCTION CYCLEUntuk setiap instruction cycle (siklus instruksi), suatu state bisa null dan yang lain bisa dikunjungi lebih dari satu kali. State-state yang dimaksud adalah :Instruction address calculation (iac)Instruction fetch (if)Instruction operation decoding (iod)Operand address calculation (oac)Operand fetch (of)Data operation (do)Operand store (os)40INSTRUCTION CYCLE STATE DIAGRAMInstruction fetchOperand fetchOperand storeInstruction address calculationInstruction operation decodingOperand address calculationData operationOperand address calculationMultiple resultsMultiple operandsInstruksi selesai, fetch instruksi berikutnyaKembalian string data atau vector data41INTERRUPTSSemua komputer menyediakan suatu mekanisme di mana modul-modul lain (seperti I/O, memory) mungkin interrupt pemrosesan normal suatu processor.Interrupt disediakan utamanya sebagai cara untuk meningkatkan efisiensi pemrosesan. Sebagai contoh, kebanyakan external devices jauh lebih lambat dibanding processor. Seandainya processor mentransfer data ke printer, maka setelah masing-masing operasi write, processor harus pause dan tetap idle sampai printer bisa menyamai. Lamanya pause bisa dalam order beberapa ratus bahkan ribuan siklus instruksi yang tidak melibatkan memory.42CLASSES OF INTERRUPTSProgramTerbentuk karena suatu kondisi yang muncul sebagai hasil dari eksekusi sebuah instruksi, seperti arithmetic overflow, divison by zero, mencoba mengeksekusi suatu instruksi mesin tidak syah. TimerDihasilkan oleh timer internal processor. Yg digunakan dalam pre emptive multi taskingI/ODihasilkan oleh I/O controller, untuk memberi tanda selesainya sebuah operasi atau memberi tanda beberapa kondisi error.HardwareDihasilkan oleh suatu kesalahan, seperti power failure atau memory parity error.43