SlideShare a Scribd company logo
1 of 27
VHDL
Bahasa Pemodelan Perangkat Keras
Lanjutan
9.7 Arsitektur
Arsitektur berisi implementasi intitas dapat berupa deskripsi
prilaku (pada level prilaku atau, jika dapat disintesis, pada level
RTL) atau netlist struktural.
Suatu arsitektur hanya terhubung dengan sutu entitas tertentu.
Sebaliknya entitas akan sangat baik jika memiliki beberapa
arsitetur, misal implementasi algoritma yang sama atau level
abstraksi yang berbeda. Beberapa arsitektur yang berada pada
entitas yang sama harus diberi nama yang berbeda untuk
membedakan pengaksesannya.
Nama arsitektur ditempatkam setelah kata kunci ‘architecture’
yang dimulai dengan statemen architecture. pada contoh
dibawah digunakan nama ARS. kemudian diikuti oleh kata
kunci ‘of’ dan nama entitas yang digunakan sebagai
antarmuka, di sini ‘HALF_ADDER’. Bagian pembuka arsitektur
diakhiri dengan kata kunci ‘is’ seperti dalam statemen entitas.
Kata kunci ‘end’ , diikuti oleh nama arsitektur. Pada saat kode
VHDL disentesis, ARS dipilih sebagai nama arsitektur. Pada
kasus fungsi yang sederhana ini, tidak terdapat perbedaan
pada deskripsi perilaku.
entity HALF_ADDER is
port(
A, B: in bit;
SUM, CARRY: out bit);
end HALF_ADDER;
architecture ARS of HALF_ADDER is
begin
SUM <= A xor B;
CARRY <= A and B;
end ARS;
--VHDL’93: end architecture ARS;
+
SUM
CARRY
A
B
Struktur Arsitektur
Setiap arsitektur terdiri dri dua bagian deklarasi dan definisi
bagian deklarasi terletak antara kata kuci ‘is’ dan ‘begin’. Pada
bagian ini didefinisikan konstanta, tipe data dan sinyal sub
program.
Bagian definisi diawali dengan kata kunci ‘begin’ di dalamnya
berisi statemen-statemen yang dikerjakan secara serempak
(concurrent). Karena dikerjakan secara serempak maka urutan
statemen dalam kode VHDL tidak penting. Misalnya sinyal SUM
selalu menghasilkan (6+8), terbabas dari lokasi dua assignment
sinyal DIGIT_X dan DIGIT_Y.
architecture CONTOH of STRUKTUR is
subtype BILANGAN is integer range 0 to 7;
constant BASE: integer : = 10 ;
signal BIL_X, BIL_Y: BILANGAN;
signal CARRY : BILANGAN
begin
BIL_X <= 6;
SUM <= BIL_X + BIL_Y;
BIL_y <= 8;
CARRY <= 0 when SUM < BASE else 1;
end CONTOH;
9.8 Mode port pada Entitas
Mode port entitas berfungsi menandakan arah aliran data. Mode port ‘in’
digunakn untuk mengklasifikasikan hanya sinyal sinyal yang dibaca
pada arsitektur tersebut. Yidak mungkin untuk mengubah nilanya. Begitu
juga, mode port ‘out’ menandakan sinyal yang nilainya dihasailkan oleh
arsitektur. Nilainya tidak dapat digunakan untuk mempengaruhi perilaku
dalam berbagai bentuk. Jika nilai output sekarang harus digunakan
sebagai masukan pada nilai sinyal berikutnya, misal dalam modul
pencacah, maka kita harus mendeklarasikan sinyal antara. Sinyal antara
ini adlah sinyal internal tidak memiliki arah aliran data.
Sebagai alternatif kita bisa menggunakan mode port ‘bufer’. Ini berguna
untuk menghilangkan kebutuhan deklarasi sinyal tambahan. Hanya ada
satu sumber sinyal yang diperbolehkan untuk sinyal-sinyal tersebut.
Pada pemodelan bus, terdapat banyak bagian komponen yang
mengakses satu jalur yang sama, kita bisa membuat mode port yang
sesuai kebutuhan baik mode port ‘out’ yang harus digunakan, jika setiap
unit hanya menulis pada bus data ini, atau mode port ‘inout’ yang
bertujuan membuat aliran data dua arah.
Mode port harus sesuai, jika port output submodel terhubung langsung
dengan port output entitas pada level hirarki yang lebih tinggi. Kalau
tidak sama maka kita harus mendefinisikan sinyal antara yang
memetakan.
Mode port dalam VHDL:
 In: sinyal masuk hanya bisa dibaca
 Out: Sinyal keluar, hanya bisa ditulisi
 Buffer: Sinyal dapat dibaca dan hanya memiliki 1 driver
 Inout: Sinyal dua arah dapat ditulis maupun dibaca
9.9 Deklarasi Komponen
Pada bagian ini akan dibahas fungsi komponen dalam arsitektur, pada
contoh berikut entitas Full_adder dapat diturunkan langsung dari
diagram blok. Diperlukan input A dan B, seperti halnya masukan
CARRY_IN, bersama dengan sinyal SUM dan CARRY yang berperan
sebagai keluaran.
Full_adder ini terdiri dari beberapa submodul yang harus didefinisikan
terlebih dahulu. dalam deklarasi komponen semua tipe modul yang akan
digunakan harus dideklarasikan. deklasi ini harus dilakukan sebelum kata
kunci ‘begin’
Deklarasi komponen dapat dibandingkan dengan definisi soket, yang
dapat digunakan sekali atau beberapa kali dan disispkan kemudian pada
entitas yang sesuai
Dalam contoh dibawah ini, hanya dua soket yang berbeda, dengan nama
soket HALF_ADDER dan OR_GATE. Nama lain dapat digunakan , tetapi
lebih baik menggunakan nama entitas yang akan digunakan kemudian,
untuk memudahkan membaca.
Berikut ini Contoh penerapan komponen arsitektur:
entity FULL_ADDER is
port (A, B, : in bit;
SUM, CARRY: out bit);
end FULL_ADDER
architecture STRUCT of FULL_ADDER is
singal W_SUM, W_CARRY1, W_CARRY2 : bit;
component HALF_ADDER
port (A, B, : in bit;
SUM, CARRY: out bit);
end component;
component OR_GATE
port (A, B, : in bit;
RES : out bit;
end component;
begin
---
Perwujudan komponen (Instantiasi)
Komponen yang telah dideklarasikan dapat digunakan sesuai dengan
keperluan. Cara untuk menggunakan adalah dalam bentuk instantiasi
komponen, di mana soket aslinya dibuat. Hal ini, dapat dibandingkan
dengan penempatan soket dalam PCB (printed circuit board). Pasangan
entitas/arsitektur yang menyediakan fungsionalitas komponen disisipkan
kemudian ke dalam soket pada saat konfigurasi rancangan VHDL dibuat.
Instantiasi komponen diberi nama yang unik bersama dengan nama
komponennya. Instantiasi komponen dilakukan pada bagian definisi
arsitektur (setelah kata kunsi ‘begin’). Pilihan komponen terbatas pada
nama yang telah dideklarasikan, baik pada bagian deklerasi arsitektur
atau dalam paket.
Pada saat port komponen atau jalur soket dihubungkan dengan bagian
rangkaian yang lain, maka diperlukan statemen pemetaan port (port
map). Dalam pemetaan port ditulis nama-nama sinyal arsitektur yang
digunakan. Aturan dasarnya berlaku asosisasi posisi, yaitu posisi
menentukan urutan pemetaan. Misal sinyal pertama pada pemetaan port
terhubung dengan port pertama pada deklarasi komponen, dan
seterusnya.
carchitecture STRUCTUR of FULL_ADDER is
component HALF_ADDER
porrt (A, B : in bit);
end component ;
component OR_GATE
port ( A, B : in bit;
RES : out bit );
end component;
signal W_SUM, W_CARRY1, W_CARRY2: bit;
begin
MODULE1: HALF_ADDER
port map (A, B, W_SUM, W_CARRY1);
MODULE2: HALF_ADDER
port map (W_SUM, CARRY_IN,
SUM, W_CARRY2);
end STRUCT;
Berikut contoh perwujudan komponen.
Perwujudan Komponen: Asosiasi Penamaan Sinyal
Selain menggunakan asosiasi posisi seperti yang telah dijelaskan
sebelumnya kita mungkin juga memetakan port berdasar asosiasi nama.
Pada asosiasi penamaan urutan sinyal tidak kaku, tidak harus tetap.
Nama port dari deklarasi komponen atau disebut ‘formal’, diasosiasikan
dengan menggunakan tanda ‘=>’ dengan sinyal entiras (‘actual’).
Dalam contoh berikut , port keluaran SUM dideklarasikan pada urutan
ketiga dalam deklarasi komponen. Dalam statemen port map, port ini
dihubungkan dengan sinyal W_SUM pada tempat kedua.
Berikut ini contoh pemetaan port berdasarkan penamaan.
architentity FULL_ADDER is
port (A, B, CARRY_IN: in bit;
SUM, CARRY: out bit);
end FULL_ADDERecture STRUCT of FULL_ADDER is
component HALF_ADDER
port (A, B: in bit;
SUM, CARRY: out bit);
end component;
…
signal W_SUM, W_CARRY1, W_CARRY2: bit;
begin
MODULE1: HALF_ADDER
port map (A => A,
SUM => W_SUM,
B => B,
CARRY => W_CARRY1);
…
end STRUCT;
9.10 Konfigurasi
Konfigurasi VHDL bertugas untuk menghubungkan komponen dengan
pasangan entitas/arsitektur untuk membangun rancangan keseluruhan.
Gambaran singkatnya: deklarasi komponen menyediakan jenis soket
tertentu yang dapat ditempatkan dalam rangkaian sesuai keperluan
dengan instantiasi komponen. Penyisipan perangkat nyata ke dalam
instantiasi soket dilakukan oleh konfigurasi.
Dalam VHDL’93 dimungkinkan untuk mengabaikan deklarasi komponen
dan langsung instantiasi entitas. berikut contoh deklarasi komponen.
entity HAFL_ADDER is
port (A, B, : in bit;
SUM, CARRY: out bit);
end HALF_ADDER;
…
component HALF_ADDER
port (A, B, : in bit;
SUM, CARRY: out bit);
end HALF_ADDER;
singal W_SUM, W_CARRY1, W_CARRY2 : bit;
…
MODULE1 : HALF_ADDER
port map (A, B, W_SUM, W_CARRY1);
Konfigurasi: Tugas dan Aplikasi
Keterhubungan antara entitas dan arsitektur yang digunakan pada
simulasi, pada awalnya dibangun dalam konfigurasi. Konfigurasi
adalah object VHDL yang disimulasikan atau disintesis.
Nama komponen harus sesuai dengan nama entitasnya. Nama
port, mode dan tipe data harus serupa-urutan port dalam deklarasi
komponen dibaikan.
Contoh berikut menunjukkan konfigurasi dasar untuk arsitektur
struktural. Terdapat simulator yang mengharuskan adanya
definisi konfigurasi yang eksplisit untuk jenis entitas level-atas
ini. Konfigurasi mengacu pada entitas tertentu, pada contoh ini
FULL_ADDER. Arsitektur STRUCT dipilih dengan statemen ‘for’
yang pertama. Ketika tidak ada perintah konfigurasi tambahan
diberikan digunakan aturan asal untuk semua komponen.
entity FULL_ADDER is
…
end FULL_ADDER;
architecture STRUCT of FULL_ADDER is
…
end STRUCT;
configuration CFG_FULL_ADDER of FULL_ADDER is
for STRUCT -- select architecture STRUCT
-- use default configuration rules
end for;
end configuration CFG_FULL_ADDER;
Konfigurasi: Contoh
Berikut ini contoh rinci kode VHDL untuk memahami konfigurasi
yang lebih rinci:
Pada bagian akhir, Full_adder akan disimulasikan lagi. Struktur
Full_adder ini sama dengan contoh sebelumnya, yaitu
menggunakan dua buah half-adder. Setiap half _adder yang
dideklarasi kan memiliki dua sinyal tipe data ‘bit’ sebagai input
dan output, berturut-turut. Port komponen dihuubungkan dengan
sinyal arsitektur berdasarkan asosiasi posisi, yaitu sinyal pertama
dihubungkan dengan port pertama.
Di sini digunakan dua entitas A dan B yang juga memiliki nama
arsitektur yang berbeda RTL dan GATE. Kedua entitas tersebut
sesuai dengan port pada deklarasi komponen.
entity A is
port (A, B : in bit;
SUM, CARRY: out bit);
end A;
architecture RTL of A is
…
entity B is
port (U, V : in bit;
X, Y : out bit;
…
entity FULL_ADDER is
port (A, B, CARRY_IN: in bit;
SUM, CARRY : out bit);
end FULL_ADDER;
architecture STRUCT of FULL_ADDER is
component HALF_ADDER
port (A, B: in bit;
SUM, CARRY: out bit);
…
signal W_SUM, W_CARRY1, W_CARRY2: bit;
begin
MODULE1: HALF_ADDER
port map (A, B, W_SUM, W_CARRY1);
MODULE2: HALF_ADDER
port map (W_SUM, CARRY_IN, SUM, W_CARRY2);
…
end STRUCT;
Konfigurasi: Contoh 2
Entitas dan arsitekture untuk komponen yang ada di bawahnya
diplih dalam liupan ‘for’ pada statemen for Nama pertama setelah
kata kunci ‘for’ adalah nama instantiasi komponen, diikuti oleh ’:’
(titik dua) dan nama komponennya. Kata kunci ‘all’ dapat
digunakan juga jika semua instantiasi komponen akan disebutkan.
Dalam liupan ‘for’, statement yang digunakan memilih entitas
dengan menentukan jalur absolut ke objek. Tanpa perubahan
eksplisit, semua objek VHDL dikompilasi ke dalam librari kerja.
Arsitekture untuk entitas yang dipilih ditutup dengan sepasang
‘(‘dan’)’.
Ketika nama port entitas B tidak sama dengan nama port dari
deklarasi komponen, maka diperlukan statemen port map.
Dimungkinkan juga untuk memetakan nama dangan asosiasi
posisi maupun asosiasi nama. Asosiasi nama lebih disarankan
untuk memudahkan pembacaan. Dalam kasus ini, parameter
formal adalah nama port entitas, sementara nama port komponen
digunakan sebagai parameter aktual.
Memungkinkan juga menyebutkan semua komponen yang belum
dikonfigurasikan dengan kata konci ‘others’. Klausa port map
tidak diperlukan sebagai nama port entitas yang sama dengan
nama komponen. Semua komponen lain yang mungkin ada
diperlukan mengacu pada aturan konfigurasi dasar.
Untuk menyederhanakan definisi hirarki dari rancangan yang luas
biasanya konfigurasi didefinisikan untuk submodul dan mengacu
konfigurasi dari level atas. Berikut contoh konfigurasi:
configuration CFG_FULL_ADDER of FULL_ADDER is
for STRUCT
for MODULE2: HALF_ADDER
use entity work. B (GATE);
port map (U => A,
V => B,
X => SUM,
Y => CARRY);
end for;
for others : HALF_ADDER
use entity work.A(RTL);
end for;
end for;
end CFG_FULL_ADDER;
Proses
Ide dasar proses adalah berawal dari perilaku sistem dalam VHDL
yang mengeksekusi seluruh statemen secara serempak
(concurrent). Pada tahap ini diperlukan suatu cara untuk
mengeksekusi instruksi secara berurutan, sekuensial.
Proses adalah satu statemen untuk mendefinisikan instruksi-
instruksi yang dikerjakan secara berurutan. Prosesnya sendiri
dikerjakan serempak dengan yang lain. Eksekusi proses dipicu
oleh kejadian tertentu.
Statemen proses mulai dengan label nama proses (boleh ada atau
tidak) dan simbul ‘:’, diikuti oleh kata kunci ‘process’. Daftar
parameter ditulis di antara sepasang kurung antara ‘(‘dan’)’. Mirip
dengan statemen arsitektur , bagian deklarasi berada antara
kode pembuka dan kata kunci ‘begin’. Statemen sekuensial
berada antara ‘begin’ dan ‘end process’. Kata kunci ‘process’
harus diikutkan. Jika label dipilih untuk proses, maka harus
diikutkan pada akhir statemen.
entity AND_OR_XOR is
port (A, B : in bit;
Z_OR, Z_AND, Z_XOR: out bit);
end AND_OR_XOR;
architecture ARS of AND _OR_XOR is
begin
A_O_X: process (A, B)
begin
Z_OR <= A or B;
Z_AND <= A and B;
Z_XOR <= A xor B;
end process A_O_X;
end ARS;
Statemen proses adalah statemen yang dikerjakan serempak
dengan statemen lain, sementara instruksi berada dalam setiap
proses dieksekusi secara sekuensial, yaitu satu per satu. Semua
proses dalam rancangan VHDL berjalan secara paralel, tidak
masalah di mana entitas atau level hirarki berada. Satu sama lain
berkomunikasi melalui sinyal. Sinyal tersebut perlu di-port-kan ke
entitas jika proses dari arsitektur lain tergatung dari yang lainnya.
9. 11 Paket (Package)
Paket adalah kumpulan definisi tipe data, subprogram, konstanta
dan lain-lain. paket berguna khususnya dalam situasi kerja tim
dimana setiap orang harus bekerja dengan tipe data yang sama,

More Related Content

Similar to Pert 11

Materi rsi 8 diagram rsi
Materi rsi 8 diagram rsiMateri rsi 8 diagram rsi
Materi rsi 8 diagram rsidonasiilmu
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahBraga Rezpect
 
Awal dasar belajar c++
Awal dasar belajar c++Awal dasar belajar c++
Awal dasar belajar c++farizky berian
 
Modul Pascal.pdf
Modul Pascal.pdfModul Pascal.pdf
Modul Pascal.pdfsylaaulia
 
Modul Pascal Mengenal Flowchart
Modul Pascal Mengenal FlowchartModul Pascal Mengenal Flowchart
Modul Pascal Mengenal FlowchartIrwien Andriyanto
 
Modul pascal
Modul pascalModul pascal
Modul pascaldanver98
 
Modul pascal
Modul pascalModul pascal
Modul pascalshediazz
 
Ringkasan materi teori algoritma
Ringkasan materi teori algoritmaRingkasan materi teori algoritma
Ringkasan materi teori algoritmaAkhmad Asari
 
Modul simulasi pemograman mikrokontroler
Modul simulasi pemograman mikrokontrolerModul simulasi pemograman mikrokontroler
Modul simulasi pemograman mikrokontrolerpersonal
 
Modularisasi – function dalam c++
Modularisasi – function dalam c++Modularisasi – function dalam c++
Modularisasi – function dalam c++Akmal Fajar
 
Dasar dasar turbo pascal
Dasar dasar turbo pascalDasar dasar turbo pascal
Dasar dasar turbo pascalDuriani
 

Similar to Pert 11 (20)

Materi rsi 8 diagram rsi
Materi rsi 8 diagram rsiMateri rsi 8 diagram rsi
Materi rsi 8 diagram rsi
 
Dasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliahDasar Pemrograman materi kuliah
Dasar Pemrograman materi kuliah
 
Awal dasar belajar c++
Awal dasar belajar c++Awal dasar belajar c++
Awal dasar belajar c++
 
C++ lengkap
C++ lengkap C++ lengkap
C++ lengkap
 
Modul Pascal.pdf
Modul Pascal.pdfModul Pascal.pdf
Modul Pascal.pdf
 
Modul Pascal Mengenal Flowchart
Modul Pascal Mengenal FlowchartModul Pascal Mengenal Flowchart
Modul Pascal Mengenal Flowchart
 
Algoritma flowchart
Algoritma flowchartAlgoritma flowchart
Algoritma flowchart
 
Modul pascal
Modul pascalModul pascal
Modul pascal
 
Modul pascal
Modul pascalModul pascal
Modul pascal
 
Ringkasan materi teori algoritma
Ringkasan materi teori algoritmaRingkasan materi teori algoritma
Ringkasan materi teori algoritma
 
Modul simulasi pemograman mikrokontroler
Modul simulasi pemograman mikrokontrolerModul simulasi pemograman mikrokontroler
Modul simulasi pemograman mikrokontroler
 
Modularisasi – function dalam c++
Modularisasi – function dalam c++Modularisasi – function dalam c++
Modularisasi – function dalam c++
 
Pengenalan bahasa c++
Pengenalan bahasa c++Pengenalan bahasa c++
Pengenalan bahasa c++
 
Dasar dasar turbo pascal
Dasar dasar turbo pascalDasar dasar turbo pascal
Dasar dasar turbo pascal
 
Modul pascal
Modul pascalModul pascal
Modul pascal
 
Kbp dengan-c
Kbp dengan-cKbp dengan-c
Kbp dengan-c
 
Operasi Seleksi
Operasi SeleksiOperasi Seleksi
Operasi Seleksi
 
Modul praktikum c++
Modul praktikum c++Modul praktikum c++
Modul praktikum c++
 
Algoritma modul
Algoritma modulAlgoritma modul
Algoritma modul
 
Algoritma
AlgoritmaAlgoritma
Algoritma
 

Recently uploaded

RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...Kanaidi ken
 
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMKAksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMKgamelamalaal
 
Salinan dari JUrnal Refleksi Mingguan modul 1.3.pdf
Salinan dari JUrnal Refleksi Mingguan modul 1.3.pdfSalinan dari JUrnal Refleksi Mingguan modul 1.3.pdf
Salinan dari JUrnal Refleksi Mingguan modul 1.3.pdfWidyastutyCoyy
 
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.pptHAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.pptnabilafarahdiba95
 
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...Kanaidi ken
 
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...pipinafindraputri1
 
LATAR BELAKANG JURNAL DIALOGIS REFLEKTIF.ppt
LATAR BELAKANG JURNAL DIALOGIS REFLEKTIF.pptLATAR BELAKANG JURNAL DIALOGIS REFLEKTIF.ppt
LATAR BELAKANG JURNAL DIALOGIS REFLEKTIF.pptPpsSambirejo
 
Panduan Memahami Data Rapor Pendidikan 2024
Panduan Memahami Data Rapor Pendidikan 2024Panduan Memahami Data Rapor Pendidikan 2024
Panduan Memahami Data Rapor Pendidikan 2024RahmadLalu1
 
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdfAksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdfJarzaniIsmail
 
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdfAndiCoc
 
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024ssuser0bf64e
 
DEMONSTRASI KONTEKSTUAL MODUL 1.3 CGP 10.pptx
DEMONSTRASI KONTEKSTUAL MODUL 1.3 CGP 10.pptxDEMONSTRASI KONTEKSTUAL MODUL 1.3 CGP 10.pptx
DEMONSTRASI KONTEKSTUAL MODUL 1.3 CGP 10.pptxwawan479953
 
Konseptual Model Keperawatan Jiwa pada manusia
Konseptual Model Keperawatan Jiwa pada manusiaKonseptual Model Keperawatan Jiwa pada manusia
Konseptual Model Keperawatan Jiwa pada manusiaharnosuharno5
 
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptxBAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptxJuliBriana2
 
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptx
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptxTEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptx
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptxMOHDAZLANBINALIMoe
 
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...nuraji51
 
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...Kanaidi ken
 
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdfProv.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdfIwanSumantri7
 
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdfAndiCoc
 
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKAKELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKAppgauliananda03
 

Recently uploaded (20)

RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
RENCANA & Link2 Materi Pelatihan_ "Teknik Perhitungan TKDN, BMP, Preferensi H...
 
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMKAksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
Aksi Nyata Disiplin Positif Keyakinan Kelas untuk SMK
 
Salinan dari JUrnal Refleksi Mingguan modul 1.3.pdf
Salinan dari JUrnal Refleksi Mingguan modul 1.3.pdfSalinan dari JUrnal Refleksi Mingguan modul 1.3.pdf
Salinan dari JUrnal Refleksi Mingguan modul 1.3.pdf
 
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.pptHAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
HAK DAN KEWAJIBAN WARGA NEGARA ppkn i.ppt
 
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
PELAKSANAAN (dgn PT SBI) + Link2 Materi Pelatihan _"Teknik Perhitungan TKDN, ...
 
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
Modul 2 - Bagaimana membangun lingkungan belajar yang mendukung transisi PAUD...
 
LATAR BELAKANG JURNAL DIALOGIS REFLEKTIF.ppt
LATAR BELAKANG JURNAL DIALOGIS REFLEKTIF.pptLATAR BELAKANG JURNAL DIALOGIS REFLEKTIF.ppt
LATAR BELAKANG JURNAL DIALOGIS REFLEKTIF.ppt
 
Panduan Memahami Data Rapor Pendidikan 2024
Panduan Memahami Data Rapor Pendidikan 2024Panduan Memahami Data Rapor Pendidikan 2024
Panduan Memahami Data Rapor Pendidikan 2024
 
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdfAksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
Aksi Nyata Sosialisasi Profil Pelajar Pancasila.pdf
 
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdfMODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
MODUL AJAR MATEMATIKA KELAS 3 KURIKULUM MERDEKA.pdf
 
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
BAHAN PAPARAN UU DESA NOMOR 3 TAHUN 2024
 
DEMONSTRASI KONTEKSTUAL MODUL 1.3 CGP 10.pptx
DEMONSTRASI KONTEKSTUAL MODUL 1.3 CGP 10.pptxDEMONSTRASI KONTEKSTUAL MODUL 1.3 CGP 10.pptx
DEMONSTRASI KONTEKSTUAL MODUL 1.3 CGP 10.pptx
 
Konseptual Model Keperawatan Jiwa pada manusia
Konseptual Model Keperawatan Jiwa pada manusiaKonseptual Model Keperawatan Jiwa pada manusia
Konseptual Model Keperawatan Jiwa pada manusia
 
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptxBAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
BAB 5 KERJASAMA DALAM BERBAGAI BIDANG KEHIDUPAN.pptx
 
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptx
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptxTEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptx
TEKNIK MENJAWAB RUMUSAN SPM 2022 - UNTUK MURID.pptx
 
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
Aksi Nyata Menyebarkan (Pemahaman Mengapa Kurikulum Perlu Berubah) Oleh Nur A...
 
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
PELAKSANAAN + Link2 Materi BimTek _PTK 007 Rev-5 Thn 2023 (PENGADAAN) & Perhi...
 
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdfProv.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
Prov.Jabar_1504_Pengumuman Seleksi Tahap 2_CGP A11 (2).pdf
 
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdfMODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
MODUL AJAR BAHASA INGGRIS KELAS 6 KURIKULUM MERDEKA.pdf
 
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKAKELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
KELAS 10 PERUBAHAN LINGKUNGAN SMA KURIKULUM MERDEKA
 

Pert 11

  • 2. 9.7 Arsitektur Arsitektur berisi implementasi intitas dapat berupa deskripsi prilaku (pada level prilaku atau, jika dapat disintesis, pada level RTL) atau netlist struktural. Suatu arsitektur hanya terhubung dengan sutu entitas tertentu. Sebaliknya entitas akan sangat baik jika memiliki beberapa arsitetur, misal implementasi algoritma yang sama atau level abstraksi yang berbeda. Beberapa arsitektur yang berada pada entitas yang sama harus diberi nama yang berbeda untuk membedakan pengaksesannya.
  • 3. Nama arsitektur ditempatkam setelah kata kunci ‘architecture’ yang dimulai dengan statemen architecture. pada contoh dibawah digunakan nama ARS. kemudian diikuti oleh kata kunci ‘of’ dan nama entitas yang digunakan sebagai antarmuka, di sini ‘HALF_ADDER’. Bagian pembuka arsitektur diakhiri dengan kata kunci ‘is’ seperti dalam statemen entitas. Kata kunci ‘end’ , diikuti oleh nama arsitektur. Pada saat kode VHDL disentesis, ARS dipilih sebagai nama arsitektur. Pada kasus fungsi yang sederhana ini, tidak terdapat perbedaan pada deskripsi perilaku.
  • 4. entity HALF_ADDER is port( A, B: in bit; SUM, CARRY: out bit); end HALF_ADDER; architecture ARS of HALF_ADDER is begin SUM <= A xor B; CARRY <= A and B; end ARS; --VHDL’93: end architecture ARS; + SUM CARRY A B
  • 5. Struktur Arsitektur Setiap arsitektur terdiri dri dua bagian deklarasi dan definisi bagian deklarasi terletak antara kata kuci ‘is’ dan ‘begin’. Pada bagian ini didefinisikan konstanta, tipe data dan sinyal sub program. Bagian definisi diawali dengan kata kunci ‘begin’ di dalamnya berisi statemen-statemen yang dikerjakan secara serempak (concurrent). Karena dikerjakan secara serempak maka urutan statemen dalam kode VHDL tidak penting. Misalnya sinyal SUM selalu menghasilkan (6+8), terbabas dari lokasi dua assignment sinyal DIGIT_X dan DIGIT_Y.
  • 6. architecture CONTOH of STRUKTUR is subtype BILANGAN is integer range 0 to 7; constant BASE: integer : = 10 ; signal BIL_X, BIL_Y: BILANGAN; signal CARRY : BILANGAN begin BIL_X <= 6; SUM <= BIL_X + BIL_Y; BIL_y <= 8; CARRY <= 0 when SUM < BASE else 1; end CONTOH;
  • 7. 9.8 Mode port pada Entitas Mode port entitas berfungsi menandakan arah aliran data. Mode port ‘in’ digunakn untuk mengklasifikasikan hanya sinyal sinyal yang dibaca pada arsitektur tersebut. Yidak mungkin untuk mengubah nilanya. Begitu juga, mode port ‘out’ menandakan sinyal yang nilainya dihasailkan oleh arsitektur. Nilainya tidak dapat digunakan untuk mempengaruhi perilaku dalam berbagai bentuk. Jika nilai output sekarang harus digunakan sebagai masukan pada nilai sinyal berikutnya, misal dalam modul pencacah, maka kita harus mendeklarasikan sinyal antara. Sinyal antara ini adlah sinyal internal tidak memiliki arah aliran data.
  • 8. Sebagai alternatif kita bisa menggunakan mode port ‘bufer’. Ini berguna untuk menghilangkan kebutuhan deklarasi sinyal tambahan. Hanya ada satu sumber sinyal yang diperbolehkan untuk sinyal-sinyal tersebut. Pada pemodelan bus, terdapat banyak bagian komponen yang mengakses satu jalur yang sama, kita bisa membuat mode port yang sesuai kebutuhan baik mode port ‘out’ yang harus digunakan, jika setiap unit hanya menulis pada bus data ini, atau mode port ‘inout’ yang bertujuan membuat aliran data dua arah.
  • 9. Mode port harus sesuai, jika port output submodel terhubung langsung dengan port output entitas pada level hirarki yang lebih tinggi. Kalau tidak sama maka kita harus mendefinisikan sinyal antara yang memetakan. Mode port dalam VHDL:  In: sinyal masuk hanya bisa dibaca  Out: Sinyal keluar, hanya bisa ditulisi  Buffer: Sinyal dapat dibaca dan hanya memiliki 1 driver  Inout: Sinyal dua arah dapat ditulis maupun dibaca
  • 10. 9.9 Deklarasi Komponen Pada bagian ini akan dibahas fungsi komponen dalam arsitektur, pada contoh berikut entitas Full_adder dapat diturunkan langsung dari diagram blok. Diperlukan input A dan B, seperti halnya masukan CARRY_IN, bersama dengan sinyal SUM dan CARRY yang berperan sebagai keluaran. Full_adder ini terdiri dari beberapa submodul yang harus didefinisikan terlebih dahulu. dalam deklarasi komponen semua tipe modul yang akan digunakan harus dideklarasikan. deklasi ini harus dilakukan sebelum kata kunci ‘begin’
  • 11. Deklarasi komponen dapat dibandingkan dengan definisi soket, yang dapat digunakan sekali atau beberapa kali dan disispkan kemudian pada entitas yang sesuai Dalam contoh dibawah ini, hanya dua soket yang berbeda, dengan nama soket HALF_ADDER dan OR_GATE. Nama lain dapat digunakan , tetapi lebih baik menggunakan nama entitas yang akan digunakan kemudian, untuk memudahkan membaca.
  • 12. Berikut ini Contoh penerapan komponen arsitektur: entity FULL_ADDER is port (A, B, : in bit; SUM, CARRY: out bit); end FULL_ADDER architecture STRUCT of FULL_ADDER is singal W_SUM, W_CARRY1, W_CARRY2 : bit; component HALF_ADDER port (A, B, : in bit; SUM, CARRY: out bit); end component; component OR_GATE port (A, B, : in bit; RES : out bit; end component; begin ---
  • 13. Perwujudan komponen (Instantiasi) Komponen yang telah dideklarasikan dapat digunakan sesuai dengan keperluan. Cara untuk menggunakan adalah dalam bentuk instantiasi komponen, di mana soket aslinya dibuat. Hal ini, dapat dibandingkan dengan penempatan soket dalam PCB (printed circuit board). Pasangan entitas/arsitektur yang menyediakan fungsionalitas komponen disisipkan kemudian ke dalam soket pada saat konfigurasi rancangan VHDL dibuat. Instantiasi komponen diberi nama yang unik bersama dengan nama komponennya. Instantiasi komponen dilakukan pada bagian definisi arsitektur (setelah kata kunsi ‘begin’). Pilihan komponen terbatas pada nama yang telah dideklarasikan, baik pada bagian deklerasi arsitektur atau dalam paket.
  • 14. Pada saat port komponen atau jalur soket dihubungkan dengan bagian rangkaian yang lain, maka diperlukan statemen pemetaan port (port map). Dalam pemetaan port ditulis nama-nama sinyal arsitektur yang digunakan. Aturan dasarnya berlaku asosisasi posisi, yaitu posisi menentukan urutan pemetaan. Misal sinyal pertama pada pemetaan port terhubung dengan port pertama pada deklarasi komponen, dan seterusnya.
  • 15. carchitecture STRUCTUR of FULL_ADDER is component HALF_ADDER porrt (A, B : in bit); end component ; component OR_GATE port ( A, B : in bit; RES : out bit ); end component; signal W_SUM, W_CARRY1, W_CARRY2: bit; begin MODULE1: HALF_ADDER port map (A, B, W_SUM, W_CARRY1); MODULE2: HALF_ADDER port map (W_SUM, CARRY_IN, SUM, W_CARRY2); end STRUCT; Berikut contoh perwujudan komponen.
  • 16. Perwujudan Komponen: Asosiasi Penamaan Sinyal Selain menggunakan asosiasi posisi seperti yang telah dijelaskan sebelumnya kita mungkin juga memetakan port berdasar asosiasi nama. Pada asosiasi penamaan urutan sinyal tidak kaku, tidak harus tetap. Nama port dari deklarasi komponen atau disebut ‘formal’, diasosiasikan dengan menggunakan tanda ‘=>’ dengan sinyal entiras (‘actual’). Dalam contoh berikut , port keluaran SUM dideklarasikan pada urutan ketiga dalam deklarasi komponen. Dalam statemen port map, port ini dihubungkan dengan sinyal W_SUM pada tempat kedua.
  • 17. Berikut ini contoh pemetaan port berdasarkan penamaan. architentity FULL_ADDER is port (A, B, CARRY_IN: in bit; SUM, CARRY: out bit); end FULL_ADDERecture STRUCT of FULL_ADDER is component HALF_ADDER port (A, B: in bit; SUM, CARRY: out bit); end component; … signal W_SUM, W_CARRY1, W_CARRY2: bit; begin MODULE1: HALF_ADDER port map (A => A, SUM => W_SUM, B => B, CARRY => W_CARRY1); … end STRUCT;
  • 18. 9.10 Konfigurasi Konfigurasi VHDL bertugas untuk menghubungkan komponen dengan pasangan entitas/arsitektur untuk membangun rancangan keseluruhan. Gambaran singkatnya: deklarasi komponen menyediakan jenis soket tertentu yang dapat ditempatkan dalam rangkaian sesuai keperluan dengan instantiasi komponen. Penyisipan perangkat nyata ke dalam instantiasi soket dilakukan oleh konfigurasi. Dalam VHDL’93 dimungkinkan untuk mengabaikan deklarasi komponen dan langsung instantiasi entitas. berikut contoh deklarasi komponen. entity HAFL_ADDER is port (A, B, : in bit; SUM, CARRY: out bit); end HALF_ADDER; … component HALF_ADDER port (A, B, : in bit; SUM, CARRY: out bit); end HALF_ADDER; singal W_SUM, W_CARRY1, W_CARRY2 : bit; … MODULE1 : HALF_ADDER port map (A, B, W_SUM, W_CARRY1);
  • 19. Konfigurasi: Tugas dan Aplikasi Keterhubungan antara entitas dan arsitektur yang digunakan pada simulasi, pada awalnya dibangun dalam konfigurasi. Konfigurasi adalah object VHDL yang disimulasikan atau disintesis. Nama komponen harus sesuai dengan nama entitasnya. Nama port, mode dan tipe data harus serupa-urutan port dalam deklarasi komponen dibaikan. Contoh berikut menunjukkan konfigurasi dasar untuk arsitektur struktural. Terdapat simulator yang mengharuskan adanya definisi konfigurasi yang eksplisit untuk jenis entitas level-atas ini. Konfigurasi mengacu pada entitas tertentu, pada contoh ini FULL_ADDER. Arsitektur STRUCT dipilih dengan statemen ‘for’ yang pertama. Ketika tidak ada perintah konfigurasi tambahan diberikan digunakan aturan asal untuk semua komponen.
  • 20. entity FULL_ADDER is … end FULL_ADDER; architecture STRUCT of FULL_ADDER is … end STRUCT; configuration CFG_FULL_ADDER of FULL_ADDER is for STRUCT -- select architecture STRUCT -- use default configuration rules end for; end configuration CFG_FULL_ADDER;
  • 21. Konfigurasi: Contoh Berikut ini contoh rinci kode VHDL untuk memahami konfigurasi yang lebih rinci: Pada bagian akhir, Full_adder akan disimulasikan lagi. Struktur Full_adder ini sama dengan contoh sebelumnya, yaitu menggunakan dua buah half-adder. Setiap half _adder yang dideklarasi kan memiliki dua sinyal tipe data ‘bit’ sebagai input dan output, berturut-turut. Port komponen dihuubungkan dengan sinyal arsitektur berdasarkan asosiasi posisi, yaitu sinyal pertama dihubungkan dengan port pertama. Di sini digunakan dua entitas A dan B yang juga memiliki nama arsitektur yang berbeda RTL dan GATE. Kedua entitas tersebut sesuai dengan port pada deklarasi komponen.
  • 22. entity A is port (A, B : in bit; SUM, CARRY: out bit); end A; architecture RTL of A is … entity B is port (U, V : in bit; X, Y : out bit; … entity FULL_ADDER is port (A, B, CARRY_IN: in bit; SUM, CARRY : out bit); end FULL_ADDER; architecture STRUCT of FULL_ADDER is component HALF_ADDER port (A, B: in bit; SUM, CARRY: out bit); … signal W_SUM, W_CARRY1, W_CARRY2: bit; begin MODULE1: HALF_ADDER port map (A, B, W_SUM, W_CARRY1); MODULE2: HALF_ADDER port map (W_SUM, CARRY_IN, SUM, W_CARRY2); … end STRUCT;
  • 23. Konfigurasi: Contoh 2 Entitas dan arsitekture untuk komponen yang ada di bawahnya diplih dalam liupan ‘for’ pada statemen for Nama pertama setelah kata kunci ‘for’ adalah nama instantiasi komponen, diikuti oleh ’:’ (titik dua) dan nama komponennya. Kata kunci ‘all’ dapat digunakan juga jika semua instantiasi komponen akan disebutkan. Dalam liupan ‘for’, statement yang digunakan memilih entitas dengan menentukan jalur absolut ke objek. Tanpa perubahan eksplisit, semua objek VHDL dikompilasi ke dalam librari kerja. Arsitekture untuk entitas yang dipilih ditutup dengan sepasang ‘(‘dan’)’. Ketika nama port entitas B tidak sama dengan nama port dari deklarasi komponen, maka diperlukan statemen port map. Dimungkinkan juga untuk memetakan nama dangan asosiasi posisi maupun asosiasi nama. Asosiasi nama lebih disarankan untuk memudahkan pembacaan. Dalam kasus ini, parameter formal adalah nama port entitas, sementara nama port komponen digunakan sebagai parameter aktual.
  • 24. Memungkinkan juga menyebutkan semua komponen yang belum dikonfigurasikan dengan kata konci ‘others’. Klausa port map tidak diperlukan sebagai nama port entitas yang sama dengan nama komponen. Semua komponen lain yang mungkin ada diperlukan mengacu pada aturan konfigurasi dasar. Untuk menyederhanakan definisi hirarki dari rancangan yang luas biasanya konfigurasi didefinisikan untuk submodul dan mengacu konfigurasi dari level atas. Berikut contoh konfigurasi: configuration CFG_FULL_ADDER of FULL_ADDER is for STRUCT for MODULE2: HALF_ADDER use entity work. B (GATE); port map (U => A, V => B, X => SUM, Y => CARRY); end for; for others : HALF_ADDER use entity work.A(RTL); end for; end for; end CFG_FULL_ADDER;
  • 25. Proses Ide dasar proses adalah berawal dari perilaku sistem dalam VHDL yang mengeksekusi seluruh statemen secara serempak (concurrent). Pada tahap ini diperlukan suatu cara untuk mengeksekusi instruksi secara berurutan, sekuensial. Proses adalah satu statemen untuk mendefinisikan instruksi- instruksi yang dikerjakan secara berurutan. Prosesnya sendiri dikerjakan serempak dengan yang lain. Eksekusi proses dipicu oleh kejadian tertentu. Statemen proses mulai dengan label nama proses (boleh ada atau tidak) dan simbul ‘:’, diikuti oleh kata kunci ‘process’. Daftar parameter ditulis di antara sepasang kurung antara ‘(‘dan’)’. Mirip dengan statemen arsitektur , bagian deklarasi berada antara kode pembuka dan kata kunci ‘begin’. Statemen sekuensial berada antara ‘begin’ dan ‘end process’. Kata kunci ‘process’ harus diikutkan. Jika label dipilih untuk proses, maka harus diikutkan pada akhir statemen.
  • 26. entity AND_OR_XOR is port (A, B : in bit; Z_OR, Z_AND, Z_XOR: out bit); end AND_OR_XOR; architecture ARS of AND _OR_XOR is begin A_O_X: process (A, B) begin Z_OR <= A or B; Z_AND <= A and B; Z_XOR <= A xor B; end process A_O_X; end ARS; Statemen proses adalah statemen yang dikerjakan serempak dengan statemen lain, sementara instruksi berada dalam setiap proses dieksekusi secara sekuensial, yaitu satu per satu. Semua proses dalam rancangan VHDL berjalan secara paralel, tidak masalah di mana entitas atau level hirarki berada. Satu sama lain berkomunikasi melalui sinyal. Sinyal tersebut perlu di-port-kan ke entitas jika proses dari arsitektur lain tergatung dari yang lainnya.
  • 27. 9. 11 Paket (Package) Paket adalah kumpulan definisi tipe data, subprogram, konstanta dan lain-lain. paket berguna khususnya dalam situasi kerja tim dimana setiap orang harus bekerja dengan tipe data yang sama,