SlideShare a Scribd company logo
1 of 11
Praktikum 3
Program Counter, Memory Address Register dan
Random Access Memory
LUSIANA DIYAN NINGRUM
2210181051
Program Studi Teknik Komputer
Departemen Teknik Informatika dan Komputer
Politeknik Elektronika Negeri Surabaya
1. Tujuan:
a) Mahasiswa dapat menjelaskan dan membuat program Program Counter
b) Mahasiswa dapat menjelaskan dan membuat program Memory Address Register
c) Mahasiswa dapat menjelaskan dan membuat program Random Access Memory
2. Dasar Teori
A. Program Counter
Pencacah Program atau Program Counter disingkat PC adalah bagian unit
kendali yang mencacah dari 0000 sampai 1111. Program disimpan pada bagian
awal dari memori dengan instruksi pertama pada alamat biner 0000, intruksi
kedua pada alamat 0001, instruksi ketiga pada alamat 0010, dan seterusnya.
Tugasnya Program Counter adalah mengirimkan ke memori alamat dari instruksi
berikutnya yang akan diambil dan dilaksanakan.
Pencacah program direset ke 0000 setiap kali sebelum komputer dijalankan.
Ketika komputer mulai bekerja, pencacah program mengirimkan alamat 0000 ke
memori. Kemudian mencacah program meningkatkan angka cacahannya menjadi
0001. Setelah instruksi pertama diambil dan dilaksanakan, pencacah program
mengirimkan alamat 0001 ke memori. Pencacah program kembali meningkatkan
angka cacahannya. Sesudah instruksi kedua diambil dan dieksekusi, pencacah
program mengirimkan alamat 0010 ke memori. Dengan demikian, pencacah
program dapat menentukan instuksi berikutnya yang akan diambil dan
dilaksanakan.
Pencacah program di sini dapat dibayangkan seperti seseorang yang
memakai jarinya untuk menunjuk kepada suatu daftar instruksi ini harus
dilaksanakan pertama, itu kedua, itu ketiga, dan seterusnya. Itu sebabnya
mengapa pencacah program kadang-kadang disebut penunjuk (pointer): pencacah
itu menunjuk kepada suatu alamat tertentu dalam memori yang menyimpan isi
penting pada alamat tsb.
B. Memori Address Register (MAR)
Memory address register disingkat MAR artinya register alamat memori.
Register yang menyimpan sementara alamat memori untuk dikirimkan ke RAM.
MAR adalah bagian dari memori SAR-1. Selama komputer bekerja, alamat dalam
pencacah program ditahan (latched) pada MAR. Sejenak kemudian, MAR
mengirimkan alamat 4 bit ini ke dalam RAM, dimana operasi membaca
dilaksanakan.
C. Random Access Memory (RAM)
Random Access Memory disingkat RAM artinya akses lokasi memori
secara random. Selama komputer beroperasi, RAM menerima alamat 4-bit dari
MAR dan operasi membaca dilaksanakan. Dalam proses ini, instruksi dan kata-
data yang tersimpan dala RAM ditempatkan pada bus W untuk digunakan oleh
beberapa bagian lain dari komputer.
Kotak RAM dalam gambar 1 merupakan sebuah RAM TTL statik 16 x 8
untuk menyimpan program dan data. Kita dapat memprogram RAM dengan
register saklar alamat dan register saklar data. Melalui cara ini kita dapat
memasukkan program dan data ke dalam memori sebelum komputer bekerja.
3. Program
 Program Counter
VHDL MODUL
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_unsigned.ALL;
entity PC is
Port ( nCLK : in STD_LOGIC;
nCLR : in STD_LOGIC;
Cp : in STD_LOGIC;
Ep : in STD_LOGIC;
BUS_Low : out STD_LOGIC_VECTOR (3 downto 0));
end PC;
architecture Behavioral of PC is
signal q: STD_LOGIC_VECTOR (3 downto 0):="0000";
begin
process(nCLK, nCLR, Cp,Ep)
begin
if rising_edge(nCLK) then
if Cp = '1' then q <= q+1; end if;
if nCLR = '1' then q <= "0000"; end if;
end if;
end process;
BUS_Low <= q when Ep='1' else "ZZZZ";
end Behavioral;
VHDL TEST BENCH
 Program MAR
VHDL MODUL
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity MAR is
Port ( CLK : in STD_LOGIC;
nLm : in STD_LOGIC;
inMAR : in STD_LOGIC_VECTOR (3 downto 0);
outMAR : out STD_LOGIC_VECTOR (3 downto 0));
end MAR;
architecture Behavioral of MAR is
signal mar : STD_LOGIC_VECTOR (3 downto 0);
begin
process(CLK, nLm)
begin
if rising_edge(CLK) then
if nLm = '0' then outMAR <= inMAR; end if;
end if;
end process;
end Behavioral;
VHDL TEST BENCH
 Program RAM
VHDL MODUL
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
entity RAM is
Port ( nCe : in STD_LOGIC;
inRAM : in STD_LOGIC_VECTOR (3 downto 0);
outRAM : out STD_LOGIC_VECTOR (7 downto 0));
end RAM;
architecture Behavioral of RAM is
signal ROM : STD_LOGIC_VECTOR (7 downto 0);
begin
process(inRAM)
begin
case inRAM is
when "0000" => ROM <= "00001001";-- LDA 9h
when "0001" => ROM <= "00011010";-- ADD 10h
when "0010" => ROM <= "00101011";-- SUBB 11h
when "0011" => ROM <= "11100000";-- OUT
when "0100" => ROM <= "11110000";-- Halt
when "0101" => ROM <= "00000000";
when "0110" => ROM <= "00000001";
when "0111" => ROM <= "00000010";
when "1000" => ROM <= "00000011";
when "1001" => ROM <= "00000111"; -- 7
when "1010" => ROM <= "00000010"; -- 2
when "1011" => ROM <= "00000101"; -- 5
when "1100" => ROM <= "00000010";
when "1101" => ROM <= "00000000";
when "1110" => ROM <= "00000000";
when "1111" => ROM <= "11110000";
when others => ROM <= "00000000";
end case;
end process;
outRAM <= ROM when nCe='0' else "ZZZZZZZZ";
end Behavioral;
VHDL TEST BENCH
4. Analisa
Pada praktikum ini kami membuat tiga program percobaan yakni program counter,
program MAR (Memory Address Register) dan program RAM (Random Access
Memory).
Program pertama yaitu program counter, pada percobaan ini kami membuat program
untuk mensimulasikan bagaimana counter itu berjalan. Pada program counter, nilai
signal q akan mengalami increment sampai nilai clear sama dengan 1. Sehingga dapat
diketahui bahwa counter bekerja dengan mencacah dari 0000 sampai 1111.
Pada program kedua yakni MAR dengan mencoba bagaimana data MAR dapat dibaca
sehingga data dari MAR bisa sampai ke RA. Cara kerja yang dilakukan yakni MAR akan
menampung data dari counter. Ketika mendapat trigger, MAR akan menyimpan data
counter.
Pada percobaan ketiga yakni program RAM, kami mencoba melihat bagaimana nilai
output RAM dibaca dan ditambah dengan bit paritas. Input RAM terdiri dari 4 bit angka
yang kemudian menghasilkan output 8 bit (ditambah dengan bit paritas). Program
testbench, menunjukkan bahwa nilai output RAM bergantung pada nilai nce yang
merupakan control outputRAM
Ketiga program diatas bekerja saling berkesinambungan dimulai dengan program
counter yang bekerja dengan memanfaatkan clock melalui sebuah trigger kemudian
dilanjutkan dengan pembacaan program counter oleh MAR dan terakhir program dibaca
oleh RAM.
5. Kesimpulan
Berdasarkan hasil percobaan dan analisa di atas dapat ditarik kesimpulan bahwa :
1. Program counter merupakan unit kendali yang bertugas untuk menentukan
instruksi yang akan dieksekusi terlebih dahulu
2. Memory Address Register merupakan register yang menampung sementara
alamat data atau bit – bit instruksi pada main memory yang akan diakses
maupun yang sedang dicacah oleh program counter
3. Random Access Memory berfungsi untuk membaca instruksi sesuai dengan bit –
bit instruksi yang dikirim oleh MAR

More Related Content

What's hot

Bab 3 notasi algoritma
Bab 3 notasi algoritmaBab 3 notasi algoritma
Bab 3 notasi algoritmarisal07
 
Basic avr-microcontroller-tutorial 8535
Basic avr-microcontroller-tutorial 8535Basic avr-microcontroller-tutorial 8535
Basic avr-microcontroller-tutorial 8535LAZY MAGICIAN
 
PC THERMOMETER DENGAN BAHASA VISUAL BASIC
PC THERMOMETER DENGAN BAHASA VISUAL BASICPC THERMOMETER DENGAN BAHASA VISUAL BASIC
PC THERMOMETER DENGAN BAHASA VISUAL BASICHafiyyan Anwaruddin
 
Pertemuan 8 unit pengolahan dasar
Pertemuan 8 unit pengolahan dasarPertemuan 8 unit pengolahan dasar
Pertemuan 8 unit pengolahan dasarjumiathyasiz
 
Pemrograman led pada cvavr
Pemrograman led pada cvavrPemrograman led pada cvavr
Pemrograman led pada cvavrNula123
 
unit kontrol
unit kontrolunit kontrol
unit kontroldewi2093
 
Pressentasi control unit
Pressentasi control unitPressentasi control unit
Pressentasi control unitgea prima
 
Transport layer
Transport layerTransport layer
Transport layerpeces123
 
Tugas tata tulis laporan muhammad riyansyah
Tugas tata tulis laporan muhammad riyansyahTugas tata tulis laporan muhammad riyansyah
Tugas tata tulis laporan muhammad riyansyah5223127190
 
Ali majid memahami dan menganalisis kaidah dan simbol
Ali majid memahami dan menganalisis kaidah dan simbolAli majid memahami dan menganalisis kaidah dan simbol
Ali majid memahami dan menganalisis kaidah dan simbolAli Must Can
 

What's hot (17)

101039856 plc-modul-ii
101039856 plc-modul-ii101039856 plc-modul-ii
101039856 plc-modul-ii
 
Bab 3 notasi algoritma
Bab 3 notasi algoritmaBab 3 notasi algoritma
Bab 3 notasi algoritma
 
Basic avr-microcontroller-tutorial 8535
Basic avr-microcontroller-tutorial 8535Basic avr-microcontroller-tutorial 8535
Basic avr-microcontroller-tutorial 8535
 
PC THERMOMETER DENGAN BAHASA VISUAL BASIC
PC THERMOMETER DENGAN BAHASA VISUAL BASICPC THERMOMETER DENGAN BAHASA VISUAL BASIC
PC THERMOMETER DENGAN BAHASA VISUAL BASIC
 
Pertemuan 8 unit pengolahan dasar
Pertemuan 8 unit pengolahan dasarPertemuan 8 unit pengolahan dasar
Pertemuan 8 unit pengolahan dasar
 
Pemrograman led pada cvavr
Pemrograman led pada cvavrPemrograman led pada cvavr
Pemrograman led pada cvavr
 
UNIT CONTROL Tgs.ppt
 UNIT CONTROL  Tgs.ppt UNIT CONTROL  Tgs.ppt
UNIT CONTROL Tgs.ppt
 
unit kontrol
unit kontrolunit kontrol
unit kontrol
 
Pressentasi control unit
Pressentasi control unitPressentasi control unit
Pressentasi control unit
 
Transport layer
Transport layerTransport layer
Transport layer
 
Tugas tata tulis laporan muhammad riyansyah
Tugas tata tulis laporan muhammad riyansyahTugas tata tulis laporan muhammad riyansyah
Tugas tata tulis laporan muhammad riyansyah
 
Konsep algoritma pemograman
Konsep algoritma pemogramanKonsep algoritma pemograman
Konsep algoritma pemograman
 
Network Scanning & Network Probing
Network Scanning & Network ProbingNetwork Scanning & Network Probing
Network Scanning & Network Probing
 
SIMPLE SYSTEM OPERATING WITH ECLPSE
SIMPLE SYSTEM OPERATING WITH ECLPSESIMPLE SYSTEM OPERATING WITH ECLPSE
SIMPLE SYSTEM OPERATING WITH ECLPSE
 
notasi algoritma
notasi algoritmanotasi algoritma
notasi algoritma
 
Ali majid memahami dan menganalisis kaidah dan simbol
Ali majid memahami dan menganalisis kaidah dan simbolAli majid memahami dan menganalisis kaidah dan simbol
Ali majid memahami dan menganalisis kaidah dan simbol
 
Pemrograman komputer
Pemrograman komputerPemrograman komputer
Pemrograman komputer
 

Similar to PC_MAR_RAM

Pertemuan 4-set-instruksi-arm3
Pertemuan 4-set-instruksi-arm3Pertemuan 4-set-instruksi-arm3
Pertemuan 4-set-instruksi-arm3France Rhezhek
 
Bab vi mikrokontroler
Bab vi mikrokontrolerBab vi mikrokontroler
Bab vi mikrokontrolerIkka Utamy
 
Makalah praktikum mikro
Makalah praktikum mikroMakalah praktikum mikro
Makalah praktikum mikroAnjar OI
 
Kertas penerangan c02 Microprcessor
Kertas penerangan c02 MicroprcessorKertas penerangan c02 Microprcessor
Kertas penerangan c02 Microprcessormuhammad sofi
 
Teknologi Informasi - Pertemuan 5.pptx
Teknologi Informasi - Pertemuan 5.pptxTeknologi Informasi - Pertemuan 5.pptx
Teknologi Informasi - Pertemuan 5.pptxRadenMuhamadFirzatul2
 
Register Instruksi dan Accumulator
Register Instruksi dan AccumulatorRegister Instruksi dan Accumulator
Register Instruksi dan AccumulatorLusiana Diyan
 
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANPENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANAziz Moeslim
 
Basic avr-microcontroller-tutorial v3
Basic avr-microcontroller-tutorial v3Basic avr-microcontroller-tutorial v3
Basic avr-microcontroller-tutorial v3Mabekni Yulianto
 
Dasar pemrograman pascal
Dasar pemrograman pascalDasar pemrograman pascal
Dasar pemrograman pascalSimon Patabang
 
Bahasa pemograman
Bahasa pemogramanBahasa pemograman
Bahasa pemogramanankg44
 
Algorithm i kelompok switch
Algorithm i kelompok switchAlgorithm i kelompok switch
Algorithm i kelompok switchAhmad Exca
 
Presentasi dan video pembelajaran Mikrokontroller
Presentasi dan video pembelajaran MikrokontrollerPresentasi dan video pembelajaran Mikrokontroller
Presentasi dan video pembelajaran Mikrokontrollerirsyadsyawal1
 

Similar to PC_MAR_RAM (20)

Prosessor SAP 1
Prosessor SAP 1Prosessor SAP 1
Prosessor SAP 1
 
about computer systems
about computer systemsabout computer systems
about computer systems
 
Pertemuan 4-set-instruksi-arm3
Pertemuan 4-set-instruksi-arm3Pertemuan 4-set-instruksi-arm3
Pertemuan 4-set-instruksi-arm3
 
Resume komputer sap
Resume komputer sapResume komputer sap
Resume komputer sap
 
Bahan
BahanBahan
Bahan
 
Bab vi mikrokontroler
Bab vi mikrokontrolerBab vi mikrokontroler
Bab vi mikrokontroler
 
Pert.4 set instruksi arm
Pert.4 set instruksi armPert.4 set instruksi arm
Pert.4 set instruksi arm
 
Makalah praktikum mikro
Makalah praktikum mikroMakalah praktikum mikro
Makalah praktikum mikro
 
Kertas penerangan c02 Microprcessor
Kertas penerangan c02 MicroprcessorKertas penerangan c02 Microprcessor
Kertas penerangan c02 Microprcessor
 
Teknologi Informasi - Pertemuan 5.pptx
Teknologi Informasi - Pertemuan 5.pptxTeknologi Informasi - Pertemuan 5.pptx
Teknologi Informasi - Pertemuan 5.pptx
 
Register Instruksi dan Accumulator
Register Instruksi dan AccumulatorRegister Instruksi dan Accumulator
Register Instruksi dan Accumulator
 
Modul praktikum Bahasa assembly
Modul praktikum Bahasa assemblyModul praktikum Bahasa assembly
Modul praktikum Bahasa assembly
 
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMANPENGERTIAN ALGORITMA DAN PEMROGRAMAN
PENGERTIAN ALGORITMA DAN PEMROGRAMAN
 
Basic avr-microcontroller-tutorial v3
Basic avr-microcontroller-tutorial v3Basic avr-microcontroller-tutorial v3
Basic avr-microcontroller-tutorial v3
 
Dasar pemrograman pascal
Dasar pemrograman pascalDasar pemrograman pascal
Dasar pemrograman pascal
 
Arsitektur komputer1
Arsitektur  komputer1Arsitektur  komputer1
Arsitektur komputer1
 
Bahasa pemograman
Bahasa pemogramanBahasa pemograman
Bahasa pemograman
 
Algorithm i kelompok switch
Algorithm i kelompok switchAlgorithm i kelompok switch
Algorithm i kelompok switch
 
Sensor suhu LM 35
Sensor suhu LM 35Sensor suhu LM 35
Sensor suhu LM 35
 
Presentasi dan video pembelajaran Mikrokontroller
Presentasi dan video pembelajaran MikrokontrollerPresentasi dan video pembelajaran Mikrokontroller
Presentasi dan video pembelajaran Mikrokontroller
 

More from Lusiana Diyan

Komunikasi Bisnis yang Efektif
Komunikasi Bisnis yang EfektifKomunikasi Bisnis yang Efektif
Komunikasi Bisnis yang EfektifLusiana Diyan
 
Berkomunikasi dalam Tim
Berkomunikasi dalam TimBerkomunikasi dalam Tim
Berkomunikasi dalam TimLusiana Diyan
 
Berkomunikasi di Dunia dengan Keragaman
Berkomunikasi di Dunia dengan KeragamanBerkomunikasi di Dunia dengan Keragaman
Berkomunikasi di Dunia dengan KeragamanLusiana Diyan
 
Menulis Pesan Bisnis
Menulis Pesan BisnisMenulis Pesan Bisnis
Menulis Pesan BisnisLusiana Diyan
 
Kemampuan Berkomunikasi 6 - Menyelesaikan Pesan Bisnis
Kemampuan Berkomunikasi 6 - Menyelesaikan Pesan BisnisKemampuan Berkomunikasi 6 - Menyelesaikan Pesan Bisnis
Kemampuan Berkomunikasi 6 - Menyelesaikan Pesan BisnisLusiana Diyan
 
Menulis Pesan Bisnis
Menulis Pesan BisnisMenulis Pesan Bisnis
Menulis Pesan BisnisLusiana Diyan
 
Vocabulary Engineering Enrichment 3
Vocabulary Engineering Enrichment 3Vocabulary Engineering Enrichment 3
Vocabulary Engineering Enrichment 3Lusiana Diyan
 
Vocabulary Engineering Enrichment 2
Vocabulary Engineering Enrichment 2Vocabulary Engineering Enrichment 2
Vocabulary Engineering Enrichment 2Lusiana Diyan
 
Vocabulary Engineering Enrichment
Vocabulary Engineering EnrichmentVocabulary Engineering Enrichment
Vocabulary Engineering EnrichmentLusiana Diyan
 
DESIGN THINGKING & PROJECT MANAGEMENT
DESIGN THINGKING & PROJECT MANAGEMENTDESIGN THINGKING & PROJECT MANAGEMENT
DESIGN THINGKING & PROJECT MANAGEMENTLusiana Diyan
 
Tutorial Membuat Simple Crane Menggunakan Coppeliasim
Tutorial Membuat Simple Crane Menggunakan CoppeliasimTutorial Membuat Simple Crane Menggunakan Coppeliasim
Tutorial Membuat Simple Crane Menggunakan CoppeliasimLusiana Diyan
 
CRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQLCRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQLLusiana Diyan
 
Kontrol LED melalui Web Server
Kontrol LED melalui Web ServerKontrol LED melalui Web Server
Kontrol LED melalui Web ServerLusiana Diyan
 
Akses GPIO pada Raspberry Pi
Akses GPIO pada Raspberry PiAkses GPIO pada Raspberry Pi
Akses GPIO pada Raspberry PiLusiana Diyan
 
Building A Simple Robot in VREP
Building A Simple Robot in VREPBuilding A Simple Robot in VREP
Building A Simple Robot in VREPLusiana Diyan
 
Tutorial Menggunakan Software Eagle
Tutorial Menggunakan Software EagleTutorial Menggunakan Software Eagle
Tutorial Menggunakan Software EagleLusiana Diyan
 
Proses Rekayasa Perangkat Lunak
Proses Rekayasa Perangkat LunakProses Rekayasa Perangkat Lunak
Proses Rekayasa Perangkat LunakLusiana Diyan
 
Produk Rekasaya Perangkat Lunak
Produk Rekasaya Perangkat LunakProduk Rekasaya Perangkat Lunak
Produk Rekasaya Perangkat LunakLusiana Diyan
 
Open Loop Analog Control System - Motor DC
Open Loop Analog Control System - Motor DCOpen Loop Analog Control System - Motor DC
Open Loop Analog Control System - Motor DCLusiana Diyan
 

More from Lusiana Diyan (20)

Komunikasi Bisnis yang Efektif
Komunikasi Bisnis yang EfektifKomunikasi Bisnis yang Efektif
Komunikasi Bisnis yang Efektif
 
Berkomunikasi dalam Tim
Berkomunikasi dalam TimBerkomunikasi dalam Tim
Berkomunikasi dalam Tim
 
Berkomunikasi di Dunia dengan Keragaman
Berkomunikasi di Dunia dengan KeragamanBerkomunikasi di Dunia dengan Keragaman
Berkomunikasi di Dunia dengan Keragaman
 
Menulis Pesan Bisnis
Menulis Pesan BisnisMenulis Pesan Bisnis
Menulis Pesan Bisnis
 
Kemampuan Berkomunikasi 6 - Menyelesaikan Pesan Bisnis
Kemampuan Berkomunikasi 6 - Menyelesaikan Pesan BisnisKemampuan Berkomunikasi 6 - Menyelesaikan Pesan Bisnis
Kemampuan Berkomunikasi 6 - Menyelesaikan Pesan Bisnis
 
Menulis Pesan Bisnis
Menulis Pesan BisnisMenulis Pesan Bisnis
Menulis Pesan Bisnis
 
Vocabulary Engineering Enrichment 3
Vocabulary Engineering Enrichment 3Vocabulary Engineering Enrichment 3
Vocabulary Engineering Enrichment 3
 
Vocabulary Engineering Enrichment 2
Vocabulary Engineering Enrichment 2Vocabulary Engineering Enrichment 2
Vocabulary Engineering Enrichment 2
 
Vocabulary Engineering Enrichment
Vocabulary Engineering EnrichmentVocabulary Engineering Enrichment
Vocabulary Engineering Enrichment
 
DESIGN THINGKING & PROJECT MANAGEMENT
DESIGN THINGKING & PROJECT MANAGEMENTDESIGN THINGKING & PROJECT MANAGEMENT
DESIGN THINGKING & PROJECT MANAGEMENT
 
Tutorial Membuat Simple Crane Menggunakan Coppeliasim
Tutorial Membuat Simple Crane Menggunakan CoppeliasimTutorial Membuat Simple Crane Menggunakan Coppeliasim
Tutorial Membuat Simple Crane Menggunakan Coppeliasim
 
CRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQLCRUD pada Android Studio menggunakan MySQL
CRUD pada Android Studio menggunakan MySQL
 
Kontrol LED melalui Web Server
Kontrol LED melalui Web ServerKontrol LED melalui Web Server
Kontrol LED melalui Web Server
 
Installasi NodeMCU
Installasi NodeMCUInstallasi NodeMCU
Installasi NodeMCU
 
Akses GPIO pada Raspberry Pi
Akses GPIO pada Raspberry PiAkses GPIO pada Raspberry Pi
Akses GPIO pada Raspberry Pi
 
Building A Simple Robot in VREP
Building A Simple Robot in VREPBuilding A Simple Robot in VREP
Building A Simple Robot in VREP
 
Tutorial Menggunakan Software Eagle
Tutorial Menggunakan Software EagleTutorial Menggunakan Software Eagle
Tutorial Menggunakan Software Eagle
 
Proses Rekayasa Perangkat Lunak
Proses Rekayasa Perangkat LunakProses Rekayasa Perangkat Lunak
Proses Rekayasa Perangkat Lunak
 
Produk Rekasaya Perangkat Lunak
Produk Rekasaya Perangkat LunakProduk Rekasaya Perangkat Lunak
Produk Rekasaya Perangkat Lunak
 
Open Loop Analog Control System - Motor DC
Open Loop Analog Control System - Motor DCOpen Loop Analog Control System - Motor DC
Open Loop Analog Control System - Motor DC
 

Recently uploaded

Slide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open StudioSlide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open Studiossuser52d6bf
 
Strategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di IndonesiaStrategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di IndonesiaRenaYunita2
 
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptxAnnisaNurHasanah27
 
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptxMuhararAhmad
 
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptxPembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptxmuhammadrizky331164
 
05 Sistem Perencanaan Pembangunan Nasional.ppt
05 Sistem Perencanaan Pembangunan Nasional.ppt05 Sistem Perencanaan Pembangunan Nasional.ppt
05 Sistem Perencanaan Pembangunan Nasional.pptSonyGobang1
 

Recently uploaded (6)

Slide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open StudioSlide Transformasi dan Load Data Menggunakan Talend Open Studio
Slide Transformasi dan Load Data Menggunakan Talend Open Studio
 
Strategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di IndonesiaStrategi Pengembangan Agribisnis di Indonesia
Strategi Pengembangan Agribisnis di Indonesia
 
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx
2021 - 10 - 03 PAPARAN PENDAHULUAN LEGGER JALAN.pptx
 
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
001. Ringkasan Lampiran Juknis DAK 2024_PAUD.pptx
 
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptxPembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
Pembangkit Listrik Tenaga Nuklir Kelompok 1.pptx
 
05 Sistem Perencanaan Pembangunan Nasional.ppt
05 Sistem Perencanaan Pembangunan Nasional.ppt05 Sistem Perencanaan Pembangunan Nasional.ppt
05 Sistem Perencanaan Pembangunan Nasional.ppt
 

PC_MAR_RAM

  • 1. Praktikum 3 Program Counter, Memory Address Register dan Random Access Memory LUSIANA DIYAN NINGRUM 2210181051 Program Studi Teknik Komputer Departemen Teknik Informatika dan Komputer Politeknik Elektronika Negeri Surabaya
  • 2. 1. Tujuan: a) Mahasiswa dapat menjelaskan dan membuat program Program Counter b) Mahasiswa dapat menjelaskan dan membuat program Memory Address Register c) Mahasiswa dapat menjelaskan dan membuat program Random Access Memory 2. Dasar Teori A. Program Counter Pencacah Program atau Program Counter disingkat PC adalah bagian unit kendali yang mencacah dari 0000 sampai 1111. Program disimpan pada bagian awal dari memori dengan instruksi pertama pada alamat biner 0000, intruksi kedua pada alamat 0001, instruksi ketiga pada alamat 0010, dan seterusnya. Tugasnya Program Counter adalah mengirimkan ke memori alamat dari instruksi berikutnya yang akan diambil dan dilaksanakan. Pencacah program direset ke 0000 setiap kali sebelum komputer dijalankan. Ketika komputer mulai bekerja, pencacah program mengirimkan alamat 0000 ke memori. Kemudian mencacah program meningkatkan angka cacahannya menjadi 0001. Setelah instruksi pertama diambil dan dilaksanakan, pencacah program mengirimkan alamat 0001 ke memori. Pencacah program kembali meningkatkan angka cacahannya. Sesudah instruksi kedua diambil dan dieksekusi, pencacah program mengirimkan alamat 0010 ke memori. Dengan demikian, pencacah program dapat menentukan instuksi berikutnya yang akan diambil dan dilaksanakan. Pencacah program di sini dapat dibayangkan seperti seseorang yang memakai jarinya untuk menunjuk kepada suatu daftar instruksi ini harus dilaksanakan pertama, itu kedua, itu ketiga, dan seterusnya. Itu sebabnya mengapa pencacah program kadang-kadang disebut penunjuk (pointer): pencacah itu menunjuk kepada suatu alamat tertentu dalam memori yang menyimpan isi penting pada alamat tsb. B. Memori Address Register (MAR) Memory address register disingkat MAR artinya register alamat memori. Register yang menyimpan sementara alamat memori untuk dikirimkan ke RAM. MAR adalah bagian dari memori SAR-1. Selama komputer bekerja, alamat dalam
  • 3. pencacah program ditahan (latched) pada MAR. Sejenak kemudian, MAR mengirimkan alamat 4 bit ini ke dalam RAM, dimana operasi membaca dilaksanakan. C. Random Access Memory (RAM) Random Access Memory disingkat RAM artinya akses lokasi memori secara random. Selama komputer beroperasi, RAM menerima alamat 4-bit dari MAR dan operasi membaca dilaksanakan. Dalam proses ini, instruksi dan kata- data yang tersimpan dala RAM ditempatkan pada bus W untuk digunakan oleh beberapa bagian lain dari komputer. Kotak RAM dalam gambar 1 merupakan sebuah RAM TTL statik 16 x 8 untuk menyimpan program dan data. Kita dapat memprogram RAM dengan register saklar alamat dan register saklar data. Melalui cara ini kita dapat memasukkan program dan data ke dalam memori sebelum komputer bekerja. 3. Program  Program Counter VHDL MODUL library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_unsigned.ALL; entity PC is Port ( nCLK : in STD_LOGIC; nCLR : in STD_LOGIC; Cp : in STD_LOGIC; Ep : in STD_LOGIC; BUS_Low : out STD_LOGIC_VECTOR (3 downto 0)); end PC; architecture Behavioral of PC is signal q: STD_LOGIC_VECTOR (3 downto 0):="0000"; begin process(nCLK, nCLR, Cp,Ep) begin if rising_edge(nCLK) then if Cp = '1' then q <= q+1; end if; if nCLR = '1' then q <= "0000"; end if; end if; end process; BUS_Low <= q when Ep='1' else "ZZZZ"; end Behavioral;
  • 5.
  • 6.  Program MAR VHDL MODUL library IEEE; use IEEE.STD_LOGIC_1164.ALL; entity MAR is Port ( CLK : in STD_LOGIC; nLm : in STD_LOGIC; inMAR : in STD_LOGIC_VECTOR (3 downto 0); outMAR : out STD_LOGIC_VECTOR (3 downto 0)); end MAR; architecture Behavioral of MAR is signal mar : STD_LOGIC_VECTOR (3 downto 0); begin process(CLK, nLm) begin if rising_edge(CLK) then if nLm = '0' then outMAR <= inMAR; end if; end if; end process; end Behavioral;
  • 8.  Program RAM VHDL MODUL library IEEE; use IEEE.STD_LOGIC_1164.ALL; entity RAM is Port ( nCe : in STD_LOGIC; inRAM : in STD_LOGIC_VECTOR (3 downto 0); outRAM : out STD_LOGIC_VECTOR (7 downto 0)); end RAM; architecture Behavioral of RAM is signal ROM : STD_LOGIC_VECTOR (7 downto 0); begin process(inRAM) begin case inRAM is when "0000" => ROM <= "00001001";-- LDA 9h when "0001" => ROM <= "00011010";-- ADD 10h when "0010" => ROM <= "00101011";-- SUBB 11h when "0011" => ROM <= "11100000";-- OUT when "0100" => ROM <= "11110000";-- Halt when "0101" => ROM <= "00000000"; when "0110" => ROM <= "00000001"; when "0111" => ROM <= "00000010"; when "1000" => ROM <= "00000011"; when "1001" => ROM <= "00000111"; -- 7 when "1010" => ROM <= "00000010"; -- 2 when "1011" => ROM <= "00000101"; -- 5 when "1100" => ROM <= "00000010"; when "1101" => ROM <= "00000000"; when "1110" => ROM <= "00000000"; when "1111" => ROM <= "11110000"; when others => ROM <= "00000000"; end case; end process; outRAM <= ROM when nCe='0' else "ZZZZZZZZ"; end Behavioral;
  • 9.
  • 11. 4. Analisa Pada praktikum ini kami membuat tiga program percobaan yakni program counter, program MAR (Memory Address Register) dan program RAM (Random Access Memory). Program pertama yaitu program counter, pada percobaan ini kami membuat program untuk mensimulasikan bagaimana counter itu berjalan. Pada program counter, nilai signal q akan mengalami increment sampai nilai clear sama dengan 1. Sehingga dapat diketahui bahwa counter bekerja dengan mencacah dari 0000 sampai 1111. Pada program kedua yakni MAR dengan mencoba bagaimana data MAR dapat dibaca sehingga data dari MAR bisa sampai ke RA. Cara kerja yang dilakukan yakni MAR akan menampung data dari counter. Ketika mendapat trigger, MAR akan menyimpan data counter. Pada percobaan ketiga yakni program RAM, kami mencoba melihat bagaimana nilai output RAM dibaca dan ditambah dengan bit paritas. Input RAM terdiri dari 4 bit angka yang kemudian menghasilkan output 8 bit (ditambah dengan bit paritas). Program testbench, menunjukkan bahwa nilai output RAM bergantung pada nilai nce yang merupakan control outputRAM Ketiga program diatas bekerja saling berkesinambungan dimulai dengan program counter yang bekerja dengan memanfaatkan clock melalui sebuah trigger kemudian dilanjutkan dengan pembacaan program counter oleh MAR dan terakhir program dibaca oleh RAM. 5. Kesimpulan Berdasarkan hasil percobaan dan analisa di atas dapat ditarik kesimpulan bahwa : 1. Program counter merupakan unit kendali yang bertugas untuk menentukan instruksi yang akan dieksekusi terlebih dahulu 2. Memory Address Register merupakan register yang menampung sementara alamat data atau bit – bit instruksi pada main memory yang akan diakses maupun yang sedang dicacah oleh program counter 3. Random Access Memory berfungsi untuk membaca instruksi sesuai dengan bit – bit instruksi yang dikirim oleh MAR