Anda di halaman 1dari 16

BAB I

PENDAHULUAN

1.1 Latar Belakang


HDLC (High-level Data Link Control) adalah sekelompok protokol untuk
transmisi (sinkron) data (Paket) antara (Point-to-Point) node. Di HDLC, data
disusun dalam frame data. Protokol HDLC berada pada layer 2 dari model OSI,
lapisan data link. Ini adalah protokol layer 2 efisien distandarisasi oleh ISO untuk
point-to-point dan multipoint data link. HDLC memberikan overhead minimal
untuk memastikan kontrol aliran, kontrol error, deteksi dan pemulihan untuk
transmisi serial. Frame HDLC sinkron dan karena itu bergantung pada lapisan
fisik untuk menyediakan metode clocking dan sinkronisasi pengiriman dan
penerimaan frame. Frame dipisahkan oleh HDLC berdasarkan urutan flag yang
ditransmisikan antara setiap frame dan setiap kali ada data yang akan dikirimkan.
Untuk menginformasikan stasiun penerima bahwa paket baru tiba dan
mensinkronisasikan menerima waktu dengan waktu saat ditransmisikan pola bit
tertentu dan ditambahkan di depan dan belakang paket. Header paket berisi
alamat HDLC dan bidang kontrol HDLC. Pola bit tertentu digunakan untuk
membubuhkan dengan paket dalam kasus sistem pengendali HDLC adalah
01111110. Panjang address field biasanya 0,8 atau 16 byte per-field. Dalam
banyak kasus address field biasanya hanya satu bit, tapi diperpanjang (EA) bit
dapat digunakan memungkinkan untuk alamat multi-byte. Satu berada di LSB bit
menunjukkan akhir dari field yang panjang field alamat akan 8 bit panjang.
Sebuah nol dalam sedikit lokasi ini sekarang byte pertama dari bidang multi-byte
menunjukkan kelanjutan dari lapangan menambahkan 8 bit tambahan.
Bidang Pengendalian adalah 8 atau 16 bit dan mendefinisikan tipe frame
pengendali atau data untuk menjamin bahwa flag tidak muncul secara tidak
sengaja di tempat lain frame. HDLC menggunakan proses yang disebut bitstuffing. Setiap kali pengguna ingin mengirim urutan bit yang memiliki lebih dari
5 berturut-turut setiap 1 detik, itu menyisipkan (benda) yang berlebihan setelah

seperlima tiap 1 detik. Trailer ditemukan pada akhir frame, dan berisi Cyclic
Redundancy Check (CRC), yang mendeteksi setiap kesalahan yang mungkin
terjadi selama transmisi. Nilai CRC dihasilkan oleh perhitungan yang dilakukan
pada perangkat sumber.
Perangkat tujuan membandingkan nilai ini perhitungan sendiri untuk
menentukan apakah kesalahan terjadi selama transmisi. Pertama, sumber
perangkat melakukan satu set yang telah ditentukan perhitungan atas isi dari paket
yang akan dikirim. Kemudian, sumber menempatkan nilai yang dihitung dalam
paket dan mengirimkan paket ke tujuan. Tujuannya melakukan pengaturan yang
telah ditentukan sama perhitungan atas isi paket dan kemudian membandingkan
nilai yang dihitung dengan yang terkandung dalam paket. Jika nilai-nilai yang
sama, paket akan dianggap sah. Jika nilai-nilai yang tidak sama, paket berisi
kesalahan dan dibuang. Penerima dapat dikonfigurasi ke mode transparan, efektif
menonaktifkan fungsi protokol HDLC. Dalam protokol HDLC biasa dibuat,
semua frame yang diterima disajikan ke host pada output mendaftar. Sebuah
register status disediakan yang dapat digunakan untuk memantau status saluran
penerima, dan menunjukkan jika paket saat ini sedang menerima termasuk
kesalahan.

1.2 Rumusan Masalah


Uraian masalah yang perlu dikaji lebih lanjut, yaitu bagaimana desain
implementasi dan simulasi dari VLSI untuk sistem pengendali HDLC.

1.3 Tujuan
Tujuan penyusunan tugas ini adalah agar dapat mengetahui desain
implementasi dan simulasi dari VLSI untuk sistem pengendali HDLC.

1.4 Batasan Masalah


Pembahasan dalam penelitian ini dibatasi masalah sebagai berikut :
1. Membahas literatur penelitian dari sistem pengendali HDLC.
2. Membahas desain dan implementasi VLSI pada sistem pengendali HDLC
3. Membahas beberapa hasil simulasi tentang sistem pengendali HDLC.

1.5 Manfaat Penulisan


Manfaat dari penyusunan tulisan ini, antara lain :
1. Dapat mengetahui desain implementasi VLSI untuk sistem pengendali
HDLC.
2. Dapat memperluas wawasan pengetahuan pembaca, khususnya tentang
sistem pengendali HDLC.
3. Dapat menjadi acuan dan masukan bagi pengguna layanan protokol untuk
menggunakan realisasi dari sistem pengendali HDLC ini.

BAB II
DASAR TEORI

2.1.

LITERATUR PENELITIAN SISTEM PENGENDALI HDLC


Sistem Pengendali CDAC HDLC beroperasi pada lapisan data link dari

model OSI. Oleh karena itu fokus utama dari penelitian ini adalah untuk
memahami lapisan data link dan mengembangkan protokol yang dapat
menawarkan layanan ke lapisan di atasnya yaitu adalah lapisan jaringan dan
lapisan di bawahnya yaitu lapisan fisik. Fungsi utama dari sistem pengendali
protokol ini adalah untuk melakukan sejumlah kegiatan yang terpisah seperti
pengalamatan fisik, untuk memeriksa kesalahan, flow control dan lain sebagainya.
Konsep berlapis jaringan dikembangkan untuk mengakomodasi perubahan
teknologi. Setiap lapisan dari model jaringan tertentu mungkin bertanggung jawab
untuk fungsi yang berbeda dari jaringan. Setiap lapisan akan menyampaikan
informasi atas dan ke bawah ke lapisan berikutnya berikutnya sebagai data yang
diolah Open System Interconnection (OSI) model merupakan model referensi
yang dikembangkan oleh ISO (International Organization for Standardization)
pada tahun 1984, sebagai kerangka konseptual standar untuk komunikasi dalam
jaringan di seluruh peralatan yang berbeda dan aplikasi oleh vendor yang berbeda.
Sekarang dianggap sebagai model arsitektur utama untuk antar-komputasi dan
komunikasi internetworking. Sebagian besar protokol komunikasi jaringan yang
digunakan saat ini memiliki struktur yang didasarkan pada model OSI.
Model OSI mendefinisikan proses komunikasi menjadi 7 lapisan, yang
membagi tugas terlibat dengan memindahkan informasi antara jaringan komputer
ke tujuh lebih kecil, kelompok tugas yang lebih mudah dikelola. Sebuah tugas
atau kelompok tugas kemudian ditugaskan untuk masing-masing tujuh lapis OSI.
Setiap lapisan cukup mandiri sehingga tugas yang diberikan kepada setiap lapisan
dapat diimplementasikan secara independen.

Hal ini memungkinkan solusi yang ditawarkan oleh satu lapisan diperbarui
tanpa merugikan mempengaruhi lapisan lainnya. Sebuah protokol dalam konteks
jaringan pada dasarnya adalah sebuah sistem aturan yang menentukan bagaimana
data ditransfer dari sumber ke tujuan, pada tingkat yang berbeda dari abstraksi
dari tingkat fisik pulsa elektrik dilakukan melalui kabel atau wireless, atau sinyal
serat optik, ke tingkat yang lebih abstrak dari pesan yang dikirim oleh aplikasi
seperti email. Agar komputer dengan perangkat keras dan sistem operasi yang
berbeda untuk dapat berkomunikasi secara efektif melalui jaringan atau internet,
itu jelas penting untuk itu menjadi satu set seragam protokol dan standar yang
sistem komunikasi dan aplikasi akan sesuai dengan. Hal ini pada gilirannya
menunjukkan kebutuhan untuk organisasi dengan otoritas umum dikenal yang
akan mengembangkan, mendefinisikan dan mempublikasikan standar dalam
domain yang berbeda.
HDLC [High-Level Data Link Control] adalah sekelompok protokol untuk
transmisi [sinkron] Data [Paket] antara [Point-to-Point] node. Di HDLC, data
disusun dalam bingkai. Protokol HDLC tinggal dengan Layer 2 dari model OSI,
lapisan datalink. HDLC menggunakan nol penyisipan/proses penghapusan [bit
isian] untuk memastikan bahwa pola bit bendera pembatas tidak terjadi di bidang
antara bendera. HDLC frame sinkron dan karena itu bergantung pada lapisan fisik
untuk menyediakan metode clocking dan sinkronisasi pengiriman dan penerimaan
frame.
Seluruh desain ini diselenggarakan sebagai kumpulan dari dua bagian yang
bekerja sama untuk efisien melakukan operasi seperti yang ditunjukkan pada
gambar 1.

2.2

BAGIAN PEMANCAR
Antarmuka Pemancar Data menyediakan sebuah lebar antarmuka antara

host transmisi dan inti HDLC Protokol. Mengirimkan data dimuat ke inti di tepi
terbit CLK ketika menulis menegaskan strobe masukan. Awal dan akhir byteframe HDLC ditandai dengan menegaskan sinyal yang sesuai dengan waktu yang
sama dengan byte data. Inti HDLC, pada penerimaan byte pertama dari sebuah
paket baru, mengeluarkan urutan flag yang sesuai dan mengirimkan data frame
menghitung FCS. Ketika byte terakhir dari frame terlihat, FCS ditransmisikan
sepanjang flag penutupan. Nol ekstra dimasukkan ke dalam aliran bit untuk
menghindari penularan urutan flag kontrol dalam frame data. Mentransmisikan
data tersedia di pin TxD dengan setup yang tepat untuk menjadi sampel CLK. Jika
TxEN ini menegaskan kembali, pipa transmisi terhenti, dan pin TXD yang
tristated. Sistem pengendali mengirimkan mendaftar disediakan yang dapat
mengaktifkan atau menonaktifkan saluran, pilih mode transparan di mana protokol
HDLC dinonaktifkan, dan menentukan tindakan inti HDLC pada mengirimkan
FIFO bawah berjalan. Selain itu, adalah mungkin untuk memaksa transmisi
urutan HDLC yang gagal.

Hal ini akan menyebabkan frame saat dikirim terbuang. Inti Pemancar
dapat dikonfigurasi secara otomatis dengan me-restart setelah batalkan, dengan
frame berikutnya, atau tetap terhenti sampai host-microprocesor batal dibersihkan
atau mengirimkan FIFO dalam kondisi berjalan.
2.3 BAGIAN PENERIMA
Receiver menerima aliran bit pada port RxD. Data terkunci di tepi terbit
CLK bawah kendali mengaktifkan input RxEN. Deteksi flag blok diagram untuk
urutan flag untuk menentukan batas-batas frame. Setiap nol stuffed dideteksi dan
dihapus oleh FCS. Frame data ditempatkan pada antarmuka data penerima dan
tersedia bagi host. Selain itu, informasi flag melewati menunjukkan awal dan
akhir byte-frame HDLC serta menunjukkan kondisi kesalahan yang mungkin telah
terdeteksi selama penerimaan frame. Penerima dapat dikonfigurasi ke mode
transparan, efektif menonaktifkan fungsi protokol HDLC. Dalam protokol HDLC
biasa dibuat untuk semua frame yang diterima disajikan ke host pada output
register. Sebuah status register yang disediakan dapat digunakan untuk memantau
status saluran penerima, dan menunjukkan jika paket saat ini sedang menerima
juga mendeteksi kesalahan.

Basic block diagram of CRC16

2.4

CRC (Cyclic Redundancy Check)


CRC (Cyclic Redundancy Check) adalah algoritma untuk memastikan

integritas data dan mengecek kesalahan pada suatu data yang akan ditransmisikan
atau disimpan. Data yang hendak ditransmisikan atau disimpan ke sebuah media
penyimpanan rentan sekali mengalami kesalahan, seperti halnya noise yang terjadi
selama proses transmisi atau memang ada kerusakan perangkat keras. Untuk
memastikan integritas data yang hendak ditransmisikan atau disimpan, CRC dapat
digunakan. CRC bekerja secara sederhana, yakni dengan menggunakan
perhitungan matematika terhadap sebuah bilangan yang disebut sebagai
Checksum, yang dibuat berdasarkan total bit yang hendak ditransmisikan atau
yang hendak disimpan.
Dalam transmisi jaringan, khususnya dalam jaringan berbasis teknologi
Ethernet, checksum akan dihitung terhadap setiap frame yang hendak
ditransmisikan dan ditambahkan ke dalam frame tersebut sebagai informasi dalam
header atau trailer. Penerima frame tersebut akan menghitung kembali apakah
frame yang ia terima benar-benar tanpa kerusakan, dengan membandingkan nilai
frame yang dihitung dengan nilai frame yang terdapat dalam header frame. Jika
dua nilai tersebut berbeda, maka frame tersebut telah berubah dan harus
dikirimkan ulang.
CRC didesain sedemikian rupa untuk memastikan integritas data terhadap
degradasi yang bersifat acak dikarenakan noise atau sumber lainnya (kerusakan
media dan lain-lain). CRC tidak menjamin integritas data dari ancaman modifikasi
terhadap perlakukan yang mencurigakan oleh para hacker, karena memang para
penyerang dapat menghitung ulang checksum dan mengganti nilai checksum yang
lama dengan yang baru untuk penerima.

2.5

Cara Kerja CRC (Cyclic Redudancy Check)


Sebuah sistem kontrol terjadinya error ketika proses transmisi suatu data.

Jadi konsep kerjanya yaitu mendeteksi perubahan yang terjadi pada data antara
sebelum dan sesudah ditransmisikan. Untuk pendeteksian itu CRC melakukan
kalkulasi nilai dari terjemahan data. Jadi CRC menghitung nilai data sebelum
dikirim dan sesudah dikirim. Kalau terjadi perbedaan hasil perhitungan maka data
tersebut dapat dibilang telah berubah. CRC ini merupakan salah ssatu bentuk
algoritma yang menggunakan Fungsi hash. Algoritmanya dikhususkan untuk
mengecek kesalahan pada suatu data yang akan ditransmisikan atau disimpan.
Adanya suatu algoritma untuk pengecekan data ini dikarenakan pada
dasarnya ketika suatu data disimpan atau ditransmisikan bisa saja terjadi
kerusakan seperti karena noise ketika transmisi, atau karena software pengolah
data atau bahkan karena hacker. Jadi CRC sangat berguna meskipun ada juga
hacker yang bisa membobolnya.
Cara kerja CRC sederhana sekali kalau dibandingkan progam algoritma
yang lainnya karena fungsinya yang sangat spesifik juga. CRC menggunakan
perhitungan matematika terhadap sebuah bilangan yang disebut sebagai checksum.
Yaitu perhitungan berdasarkan total bit yang hendak ditransmisikan atau
disimpan. Checksum merupakan penghitungan jumlah frame data yang akan
ditransmisikan kemudian ditambahkan sebagai informasi dalam header atau trailer
data tersebut. Jadi checksum sudah dimiliki tiap data dengan jumlah atau besar
nilai checksum yang berbeda beda sesuai besar kecil space data tersebut.
Kemudian setelah ditransfer, aplikasi penerima data akan menghitung kembali
checksum (jumlah frame data) apa nilainya berubah atau tetap. Dengan
membandingkan nilai frame sebelum dan sesudah transmisi atau penyimpanan,
diketahui data telah berubah atau tidak.
CRC tidak menjamin data dari ancaman modifikasi atau perlakuan yang
bertujuan merubah data oleh para hacker, karena memang para hacker bisa saja

memanipulaasi perhitungan checksum data dan mengganti nilai checksumnya


sesuai kehendak hacker untuk membohongi penerima. Cyclic Redundancy Check
(CRC) cara kerjanya dapat digambarkan sebagai berikut. Dengan adanya blok bit
k-bit, atau pesan, transmitter mengirimkan suatu deretan n-bit data, disebut
sebagai FCS (Frame Check Sequence). Sehingga frame yang dihasilkan terdiri
dari k+n bit. K+N Bit ini dapat dibagi dengan jelas oleh beberapa nomor yang
sebelumnya sudah ditetapkan. Kemudian receiver membagi frame yang dating
dengan nomor tersebut dn, bila tidak ada sisanya berarti data benar dan tidak
terjadi kerusakan transfer.

Ada dua cara perhitungan yaitu :


1.

Modulo 2 Aritmatika
Penjumlahan bilangan biner tanpa menghitung atau memperhatikan
pembawanya, atau biasa dinamakan operasi X-OR (Extradionary
Operation).

2.

Polynomic
Menyatakan semua nilai bilangan biner sebagai suatu polynomial
dengan satu variable.

10

Perhitungan nilai CRC yang berbasis bit akan sangat lama dan tidak
efisien. Cara tersebut dapat diperbaiki dengan melakukan operasi dengan basis
byte. Poly yang digunakan akan dioperasikan dalam bentuk byte, sehingga harus
panjang kelipatan 8 bit (byte). Misalkan sebagai contoh dalam memproses CRC 8
bit (1 byte) agar lebih sederhana. Register akan berisi 8 bit, dan pada sekali shift
akan menggeser sebanyak 4 bit. Misalkan isi awal register : 10110100 Kemudian
4 bit pertama akan digeser (1011), dan memasukkan 4 bit baru misalkan (1101).
Maka 8 bit register sekarang adalah : 01001101 4 bit yang digeser (top bits) :
1011 Polynomial yang digunakan (W=8) : 101011100. Langkah selanjutnya
adalah dengan melakukan XOR terhadap isi register dengan polynomial.
Top Register
1011 01001101
1010 11100 (*1) operasi XOR dimulai
pada bit tertinggi
----------------------+ bernilai 1.
0001 10101101

hasil XOR

Karena Top (isi register yang digeser keluar) masih mengandung nilai 1, maka
ulangi lagi langkah di atas.

2.6

SHIFT REGISTER
Register adalah sekelompok flip-flop yang dapat dipakai untuk

menyimpan dan untuk mengolah informasi dalam bentuk linier. Ada 2 jenis utama
Register yaitu:
1. Storage Register (register penyimpan)
2. Shift Register (register geser)
Register penyimpan (Storage Register) digunakan apabila kita hendak
menyimpan informasi untuk sementara, sebelum informasi itu dibawa ke tempat
lain. Banyaknya kata/bit yang dapat disimpan, tergantung dari banyaknya flip-flop

11

dalam register. Satu flip-flop dapat menyimpan satu bit. Bila kita hendak
menyimpan

informasi

bit

maka

kita

butuhkan

flip-flop.

Contoh: Register yang mengingat bilangan duaan (biner): 1101 terbaca pada
keluaran Q.
Shift Register adalah suatu register dimana informasi dapat bergeser
(digeserkan). Dalam register geser flip-flop saling dikoneksi, sehingga isinya
dapat digeserkan dari satu flip-flop ke flip-flop yang lain, kekiri atau kekanan atas
perintah denyut lonceng (Clock). Dalam alat ukur digit, register dipakai untuk
mengingat data yang sedang ditampilkan. Salah satu penggunaan yang paling
umum dari sebuah register geser adalah untuk mengkonversi antara interface
serial dan paralel. Hal ini berguna karena banyak sirkuit bekerja pada kelompok
bit secara paralel, tapi serial interface yang sederhana untuk membangun. Register
geser dapat digunakan sebagai sirkuit tunda sederhana. Beberapa register geser
dua arah juga bisa dihubungkan secara paralel untuk implementasi hardware dari
tumpukan .
Register geser juga dapat digunakan sebagai extender pulsa. Dibandingkan
dengan multivibrators monostable, waktu tidak memiliki ketergantungan pada
nilai-nilai komponen, namun memerlukan jam eksternal dan ketepatan waktu
dibatasi oleh rincian jam ini. Contoh: Ronja Twister , di mana lima register geser
74.164 menciptakan inti dari logika waktu dengan cara ini ( skema ). Pada
komputer awal, register geser digunakan untuk menangani pengolahan data: dua
nomor yang akan ditambahkan disimpan dalam dua shift register dan clock keluar
menjadi aritmatika dan logika Unit (ALU) dengan hasil diberi makan kembali ke
input dari salah satu pergeseran register (akumulator) yang merupakan salah satu
sedikit lebih lama karena penambahan biner hanya dapat menghasilkan jawaban
yang ukuran yang sama atau sedikit lebih lama.
Banyak bahasa komputer termasuk instruksi untuk 'bergeser ke kanan' dan
'bergeser ke kiri' data dalam register, efektif membagi dua atau mengalikan oleh
dua untuk setiap tempat bergeser. Sangat besar serial-serial-out register geser

12

(ribuan bit dalam ukuran) yang digunakan dengan cara yang sama dengan
sebelumnya memori delay line di beberapa perangkat yang dibangun pada awal
1970-an. Kenangan seperti itu kadang-kadang disebut beredar memori. Sebagai
contoh, Datapoint 3300 terminal disimpan tampilan nya 25 baris dari 72 kolom
karakter huruf menggunakan lima puluh empat 200-bit register geser, diatur dalam
enam lagu dari sembilan bungkus masing-masing, menyediakan penyimpanan
untuk 1800 karakter enam-bit. Desain shift register berarti bahwa bergulir layar
terminal dapat dicapai dengan hanya berhenti output display untuk melewati satu
baris karakter.
2.6

VLSI (VERY-LARGE-SCALE INTEGRATION)


Integrasi yang sangat-skala besar (VLSI) adalah proses menciptakan

sirkuit terpadu dengan menggabungkan ribuan transistor dalam satu chip. VLSI
dimulai pada 1970-an ketika teknologi semikonduktor dan komunikasi yang
kompleks sedang dikembangkan. Mikroprosesor adalah perangkat VLSI. Desain
VLSI terstruktur adalah metodologi modular berasal oleh Carver Mead dan Lynn
Conway untuk menyimpan daerah microchip dengan meminimalkan kain daerah
interkoneksi . Hal ini diperoleh dengan pengaturan berulang blok makro persegi
panjang yang dapat saling berhubungan menggunakan kabel dengan abutment .
Sebuah contoh adalah partisi tata letak penambah menjadi deretan irisan bit sama
sel . Dalam desain yang kompleks penataan ini dapat dicapai dengan hirarki
bersarang .
Desain VLSI terstruktur telah populer pada awal tahun 1980 , namun
kehilangan popularitasnya kemudian karena munculnya penempatan dan alat
routing yang membuang banyak daerah oleh routing, yang ditoleransi karena
kemajuan Hukum Moore . Ketika memperkenalkan perangkat keras bahasa
deskripsi KARL tahun 1970 pertengahan ' , Reiner Hartenstein menciptakan
istilah " terstruktur desain VLSI " ( awalnya sebagai " desain LSI terstruktur " ) ,
bergema pendekatan pemrograman terstruktur Edsger Dijkstra oleh prosedur
bersarang untuk menghindari kekacauan - terstruktur program .

13

BAB III
PEMBAHASAN DAN ANALISA

SIMULASI HDLC CONTROLLER


3.1. Hasil simulasi untuk data 8-bit, 8 bit pengalamatan, dan CRC-16

Untuk data <= 00001110 dan 8 bit alamat <= 11110000, kita
membuat clock = 1, reset = 0, wrtaddresshi = 0 dan wrtaddresslo = 1.
Setelah alamat dan data yang melekat bersama-sama, kita membagi
mereka dengan polinomial konstan dan menambahkan sisa pembagian
sepanjang data dan alamat. Hasil simulasi untuk generasi CRC1 adalah :

14

3.2 Simulasi O/P akhir pada penerima akhir untuk data 8 bit, alamat
8bit dan 16-bit CRC

Pada penerima input data, alamat dan appendedcrc yang dibagi lagi
dengan polinomial konstan yang sama dan jika CRC2 yang datang keluar
menjadi nol, itu menunjukkan penerimaan bebas dari kesalahan paket.
Penerima O/P yaitu rxdatasout <= 00001110 dan rxaddressout <=
0000000011110000 yang sama dengan pemancar.

15

BAB IV
PENUTUP

4.1 Kesimpulan
Berdasarkan analisis data yang telah dilakukan maka terdapat beberapa
kesimpulan, diantaranya :
Sistem Pengendali memiliki kemampuan untuk beroperasi di full
duplex dan half-duplex.
Secara otomatis dapat memeriksa frame berurutan menggunakan
cyclic redundancy check yaitu CRC - 16 dan CRC - 32 untuk
memastikan kesalahan transmisi bebas.
Kompatibel dengan semua protokol hadir pada lapisan yaitu
protokol X.25 fisik dan lapisan jaringan protokol yaitu Internet
(IP).

16