FPGA DAN VHDL
TEORI, ANTARMUKA DAN APLIKASI
Chapter 19
Antarmuka Pada FPGA Xilinx Spartan-3E
Outlines
• Pendahuluan
• Analog Capture Circuit
• Programmable Pre-Amplifier
• Analog-to-Digital Converter (ADC)
• Pemrosesan Sinyal Digital
• Digital-to-Analog Converter (DAC)
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Pendahuluan
Sistem Perancangan Antarmuka Menggunakan FPGA
Analog Capture Circuit
• Mencuplik sinyal analog dan mengubahnya
menjadi sinyal digital kemudian diproses sistem
komputasinya oleh FPGA
• DAC digunakan sebagai keluaran hasil
komputasinya yang berupa sinyal analog
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Analog Capture Circuit
• Analog capture circuit pada FPGA Spartan-3E
Starter Kit terdiri dari programmable scaling
Analog Capture Circuit
• Analog capture circuit terdiri dari Linear
Technology LTC6912-1 pre-amplifier yang dapat
diprogram dengan menskala sinyal analog pada
header J7
• Keluaran pre-amplifier terhubung ke Linear
Technology LTC1407A-1 ADC
• Pre-amplifier dan ADC diprogram secara serial
atau dikendalikan oleh FPGA.
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Analog Capture Circuit
• Mengubah tegangan analog pada VINA atau
VINB dan mengubahnya menjadi representasi
digital 14-bit, D[13:0]
(
)
8192 25 , 1 65 , 1 ) 0 : 13 ( Vin x Gain x Digital Keluaran =-Analog Capture Circuit
• Gain merupakan pengaturan bati yang diisikan
ke programmable pre-amplifier
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Analog Capture Circuit
• Tegangan referensi untuk amplifier dan ADC
adalah 1,65V yang dibangkitkan melalui tegangan pembagi
• Jangkah maksimum ADC adalah +1,25V dari
tegangan referensi 1,65V
• Keluaran ADC merupakan 14-bit keluaran digital
dua komplemen, sehingga nilainya diskala oleh 8192 atau 213.
Analog Capture Circuit
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Analog Capture Circuit
• Nilai digital merupakan representasi signed 14-bit dua komplemen dari jangkah masukan -1,25v sampai +1,25v
• Jika ingin menghubungkan sinyal alternating
current (AC) ke pin masukan VINA atau VINB
pada FPGA Spartan-3E harus melalui kapasitor
untuk menyaring sinyal direct current (DC),
sehingga hanya sinyal AC saja yang akan dilewatkan
Analog Capture Circuit
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Analog Capture Circuit
Programmable Pre
-Amplifier
• LTC6912-1 mempunyai dua inverting amplifier
dengan gain yang dapat diprogram
• Tujuan amplifier adalah untuk menskala
tegangan pada VINA dan arus pada VINB
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Programmable Pre
-Amplifier
Sinyal PinFPGA
Arah Deskripsi
SPI_MOSI T4 FPGA → AD Data serial: keluaran master, masukan slave. Mempunyai 8-bit pengaturan gain yang dapat diprogram sebagaimana didefinisikan dalam tabel 3.2.
AMP_CS N7 FPGA → AMP Pemilih chip active-low. Bati
amplifier diatur ketika sinyal kembali tinggi.
SPI_SCK U16 FPGA → AMP Clock
AMP_SHDN P7 FPGA → AMP Active-high shutdown, reset
AMP_DOUT E18 FPGA → AMP Data serial, melakukan pengulangan pengaturan bati
Programmable Pre
-Amplifier
• Pengaturan gain untuk pre-amplifier
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Rights Reserved 16 A3 A2 A1 A0 Gain Range tegangan masukan B3 B2 B1 B0 minimum maksimum 0 0 0 1 -1 0,4 2,9 0 0 1 0 -2 1,025 2,275 0 0 1 1 -5 1,4 1,9 0 1 0 0 -10 1,525 1,775 0 1 0 1 -20 1,5875 1,7125 0 1 1 0 -50 1,625 1,675 0 1 1 1 -100 1,6375 1,6625
Programmable Pre
-Amplifier
• Komunikasi berbasis SPI antarmuka dengan
amplifier
• Keluaran AMP_DOUT dari amplifier
berulang-ulang mengatur gain sebelumnya, dalam
beberapa aplikasi dapat diabaikan
• Antarmuka amplifier relatif lamban dan hanya
Programmable Pre
-Amplifier
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Programmable Pre
-Amplifier
• AMP_DOUT selalu aktif sehingga tidak dapat
membagi sinyal SDO yang sama sebagaimana
piranti lainnya
• FPGA perlu mentransmisikan masing-masing
byte MSB yang pertama
• VHDL untuk memilih gain slave LTC 2624-1
Programmable Pre
-Amplifier
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Rights Reserved 20
• Deskripsi rangkaian untuk mengendalikan
Amplifier ini menggunakan bahasa VHDL
dengan metode Finite State Machine (FSM)
Programmable Pre
-Amplifier
• Deskripsi rangkaian untuk mengendalikan
Amplifier ini menggunakan bahasa VHDL
dengan metode Finite State Machine (FSM)
Analog-to-Digital
Converter
• Analog Digital Converter (ADC) yang
digunakan adalah LTC 1407A-1 yang
mempunyai dua masukan sinyal, masukan
keduanya berupa sinyal analog yang di-sampling
secara simultan ketika sinyal AD_CONV
diaplikasikan
• ADC ini men-sampling data analog
menggunakan serial peripheral interface (SPI).
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Analog-to-Digital
Converter
Sinyal Pin FPGA Spartan-3E
Arah Deskripsi
SPI_SCK U16 FPGA → ADC Clock
AD_CONV P11 FPGA → ADC Active-High shutdown dan reset
SPI_MISO N10 FPGA → ADC Data serial: masukan master, keluaran serial dan merupakan representasi digital nilai analog
sample sebagai dua 14-bit dua nilai biner komplemen.
Analog-to-Digital
Converter
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Analog-to-Digital
Converter
Pemrosesan Sinyal
Digital
• Proses sinyal digital yang dihasilkan dari ADC
untuk menghasilkan pengukuran daya listrik
bernilai digital dan hasilnya diteruskan ke DAC
menggunakan FPGA Spartan-3E
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Digital-to-Analog
Converter
• Spartan 3E starter kit mempunyai piranti
kompatibel dengan SPI, empat channel,
Digital-to-Analog Converter (DAC) serial
• Piranti DAC yang digunakan adalah Linear
Technology LTC2624 quad DAC dengan resolusi
unsigned 12-bit
• Empat keluaran dari DAC diperlihatkan pada J5
header yang menggunakan format Digilent 6-pin
peripheral module.
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Digital-to-Analog
Converter
Digital-to-Analog
Converter
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Digital-to-Analog
Converter
Sinyal Pin FPGA Arah Deskripsi
SPI_MOSI T4 FPGA → DAC Data serial : keluaran master, masukan slave
DAC_CS N8 FPGA → DAC Pemilih chip active-low. Konversi
digital ke analog mulai ketika sinyal kembali high.
SPI_SCK U16 FPGA → DAC Clock
DAC_CLR P8 FPGA → DAC Asinkron, masukan reset active-low
SPI_MISO N10 FPGA → DAC Data serial: masukan master, keluaran slave.
Digital-to-Analog
Converter
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Rights Reserved 32
Sinyal Piranti yang di-disable Nilai disable
SPI_SS_B SPI serial flash 1
AMP_CS Programmable pre-amplifier 1
AD_CONV Analog-to-Digital Converter (ADC) 0
SF_CE0 StrataFlash Parallel Flash PROM 1
Digital-to-Analog
Converter
Digital-to-Analog
Converter
• Channel A dan B menggunakan tegangan
referensi 3,3V sedangkan channel C dan D
menggunakan referensi 2,5V. Tegangan referensi itu sendiri mempunyai toleransi +5%, sehingga akan ada kaitan variansi pada tegangan keluaran
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All
Rights Reserved 34 REFERENSI OUT
x
V
D
V
4096
]
0
:
11
[
=
Digital-to-Analog
Converter
• Tegangan referensi terkait dengan keluaran DAC
A dan B sekitar 3,3V+5%
• Tegangan referensi terkait dengan keluaran DAC
C dan D sekitar 2,5V+5%
(
3,3 5%)
4096 ] 0 : 11 [ ± = D x V VOUT A atau B(
2,5 5%)
4096 ] 0 : 11 [ ± = D x V VOUT C atau DDigital-to-Analog
Converter
• Pengendali DAC
© Copyright 2014 oleh Ferry Wahyu Wibowo, Deepublish. All