144
oyog‘chalar soni
Diferensial juftlik
o‘yog‘chalar
maksimal soni
60
100
116
133
179
200
240
285
T
ez
kor
lik
va
riantla
ri
Tijorat ijrosi
uchun tezkorlik
variantlari
–2, –3
–2, –3
–2, –3
–2, –3
–2, –3
–2, –3
–2, –3
–2, –3
Sanoat ilovalari
uchun tezkorlik
variantlari
–L1, –
2
–L1, –2
–L1, –2
–L1, –2
–L1, –2
–L1, –2
–L1, –2
–L1, –2
K
o
n
fi
g
u
ra
ts
iy
a
x
ot
ir
as
i
Konfiguratsiya
xotira hajmi, Mbit
2,7
2,7
3,7
6,4
11,8
19,6
26,5
33,7
Boshlang‘ich sozlashlarni qo‘llab HDL-Coder vositasi yordamida NT
algoritmining Simulink modelidan olingan Verilog kodi asosida 8.15-rasmning
chap tomonida ko‘rsatilgan FPGA resurslari ishlatilgan.
Rasm shuni ko‘rsatadiki, jalb qilingan ko‘paytiruvchilar soni bo‘yicha (600),
algoritm tanlangan FPGA (faqat 112 ko‘paytirgich yaratish mumkin) ga to‘g‘ri
kelmaydi.
Hisobotdan, har bir blok foydalanadigan resurslarni batafsil o‘rganib
chiqqandan so‘ng, eng ko‘p ko‘paytiruvchilar tarmoqning ikkinchi qavatida
("Convolution_layer"), - 500 ko‘paytirgichdan foydalanilganligi aniglandi.
Modulda ishlatilgan ko‘paytirgichlarni kamaytirish uchun optimallashtirish
oborilib, bitta blokda 20 xil ko‘paytmani bajarish uchun ishlatiladigan bitta
ko‘paytirgich qo‘lanildi. Bu albatta ko‘paytirgichni 20
marta NT ishchi
chastotasidan tezroq ishlashiga va multipleksorlarni sonini oshishiga olib keladi.
Shunday qilib, FPGA ichidagi resurslarni almashishdan foydalanib,
ishlatilgan ko‘paytiruvchilar sonini sezilarli darajada 600 dan 125 gacha
kamaytirish mumkin bo‘ladi. Optimallashtirilgan kodni xosil qilgan hisoboti 8.15 -
rasmning o‘ng tomonida keltirilgan. Hisobot shuni ko‘rsatadiki, ishlatilgan
registrlar sonini 29 mingdan 4
minggacha, bir bitli registrlar sonini 480 mingdan
145
77 minggacha kamaytirishga erishilgan, ammo faqat uncha sezilarsiz darajada
multipleksorlarning soni 1107 dan 1210 gacha oshgan.
Hozircha, NT algoritmi
FPGA
-dagi
mavjud
ko‘paytirgichga
(112
dona)
qaraganda
ko‘proq
ko‘paytirgichlarni (125 dona) talab qiladi. Biroq, FPGA kod sintezatorlari asosiy
mantiq elementlaridan ko‘paytirgichlar yaratishga qodir va shu imkonyatdan
foydalanish kerak.
8.7. Algoritmni sinovchi-moslashtirgich taxtasida(bosma platasida) tekshirish.
Neyron tarmoq algoritmini sinab ko‘rish uchun FPGA Xilinx Spartan-6
XC6SLX9 sinash paneli ishlatilgan. Sinash taxtasida
algoritmni sinovdan
o‘tkazishdan oldin, NT algoritmi "FPGA in loop" rejimida raqamli ekvivalentligi
tekshiriladi. "FPGA in loop" sinovdan o‘tkazilayotganda, algoritmdan HDL-kod
tuziladi va u kod panelidagi FPGA- chipga yoziladi. Shundan so‘ng, FPGA
algoritmi Simulink modeli bilan birgalikda ishga tushiriladi, kirish ma’lumotlari
Simulink
modelida ishlab chiqariladi, chiqish signallari Simulink -ga qaytariladi,
bu erda natijalar "mos yozuvlar" Simulink modeli natijalari bilan raqamli ravishda
taqqoslanadi. Keyingi bosqichda NT algoritmidan hosil qilingan HDL kodi
algoritmi qayta CAD loyihalash tizimaga ulanadi (8.16 -rasm).
Simulink modelida kodni sinab ko‘rish uchun tasvirning joriy boshi, oxiri va
manzilining sinxronlash pulslarini hosil qilish uchun qo‘shimcha modul qo‘shildi.
Shuningdek, algoritmni sinab ko‘rish uchun 8192x8 bitli xotira moduli loyihaga 8
ta raqamli test tasvirini saqlash uchun qo‘shilgan. Tashqi xotira manzillari SW0-
SW2 kalitlari bilan o‘rnatiladi, bu raqamlarni tasvirini tanib olish uchun qo‘lda
almashtirish imkonini beradi; xotira MATLAB -dan
yaratilgan mat fayli bilan
ishga tushiriladi. Neyron tarmoq moduli 50 MHz chastotada ishlaydi. Raqam
tasvirini neyron tarmoq orqali tanib olish natijasi 10 ta LED chiroglardada
ko‘rsatiladi.
146
8.16-rasm. Neyron tarmoq modulini CAD tizimiga ulash.
Dostları ilə paylaş: