LIBRARY IEEE :
- math_real
- numeric_bit
- numeric_std
- std_logic_1164
- std_logic_arith
- std_logic_signed
- std_logic_unsigned
- vital_timing
LIBRARY STD :
- standard
- textio
LIBRARY WORK :
semua source code user akan dicompile dan dimasukkan ke dalam library ini
no 2.
= s1 = s2 = Y =
==========
= 0 = 0 = a =
= 0 = 1 = b =
= 1 = 0 = c =
= 1 = 1 = d =
===========
Pertama-tama definisikan entitas multiplexer dengan nama "kepletex" :
entity kepletex is -- mendefinisikan entity "kepletex"
port(
a,b,c,d,s1,s2: in bit; -- terdapat 4 port input, 2 selector, dan 1 output
y:out bit);
end kepletex;
Lalu definisikan arsitektur "mux_arch" dari entity "kepletex" :
architecture mux_arch of kepletex is
begin
proc: process is
begin
if (s1='0' and s2='0') then y <= a;
else if (s1='0' and s2='1') then y <= b;
else if (s1='1' and s2='0') then y <= c;
else if (s1='1' and s2='1') then y <= d;
end if;
end process proc;
end mux_arch;
Arsitektur berfungsi untuk menerangkan bagaimana entity "kepletex" bekerja. Namun kode diatas hanyalah berupa template, sehingga tidak bisa dijalankan untuk simulasi maupun di sintesis karena belum didefinisikan bit input pada masing-masing portnya. Untuk itu kita tambahkan entity "sinyal" dan arsitektur "sinyal_arch" yang berfungsi untuk memberikan input pada entity "kepletex".
entity sinyal is
port(
pa,pb,pc,pd,ps1,ps2:out bit);
end sinyal;
architecture sinyal_arch of sinyal is
begin
pros: process is
begin
pa <= '0';
pb <= '1';
pc <='1';
pd <= '0';
ps1 <= '1';
ps2 <= '0';
end process pros;
end sinyal_arch;
Semua kode vhdl diatas digabung menjadi satu menjadi :
library ieee;
use ieee.std_logic_1164.all;
entity kepletex is -- mendefinisikan entity "kepletex"
port(
a,b,c,d,s1,s2: in bit; -- terdapat 4 port input, 2 selector, dan 1 output
y:out bit);
end kepletex;
architecture mux_arch of kepletex is
begin
proc: process is
begin
if (s1='0' and s2='0') then y <= a;
else if (s1='0' and s2='1') then y <= b;
else if (s1='1' and s2='0') then y <= c;
else if (s1='1' and s2='1') then y <= d;
end if;
end process proc;
end mux_arch;
entity sinyal is
port(
pa,pb,pc,pd,ps1,ps2:out bit);
end sinyal;
architecture sinyal_arch of sinyal is
begin
pros: process is
begin
pa <= '0';
pb <= '1';
pc <='1';
pd <= '0';
ps1 <= '1';
ps2 <= '0';
end process pros;
end sinyal_arch;
-- kode dibawah ini merupakan kode yang berfungsi menjalankan --
-- entity yang telah didefinisikan diatas --
ShareThis
KLIK LIKE BILA ANDA SUKA ARTIKEL INI...!!!
scrolling="no" frameborder="0"
style="border:none; width:450px; height:80px">
Bagikan
Tulisan VHDL
4/
5
Oleh
demonbrando