Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
1
Hardwarová implementace Petriho sítí Vlastní HW implementace a syntéza
2
Shrnutí minulého projektu Implementace z matice propojení Nevhodné s ohledem na designCPN Umožňuje pouze jednobarevné sítě Neumožňuje násobné hrany Vlastní HW implementace nejde přeložit a tudíž ani implementovat
3
Naše koncepce HW implementace Implementovat každý blok Petriho sítě jako component a přeložit výstup designCPN Optimalizaci provede návrhový systém Umožňuje implementovat barevné sítě, stačí podle potřeb upravit přechody Umožňuje libovolný počet násobných hran, vše je navrženo obecně pomocí generic
4
in_width out_width clk res input_netoutput_net output_wr Lze specifikovat šířky portů Plně synchronní Lze specifikovat maximální počet tokenů Počet tokenů = vstup – výstup Lze specifikovat počáteční hodnotu Jeden stav Petriho sítě, blok pn_state
5
Přechod Petriho sítě, blok pn_exchange input_net input_wr input_width ready fire output_net output_width Pokud jsou všechny vstupy aktivní, ready bude 1 Tento součin lze velmi snadno vyměnit za jiné hradlo a tak změnit funkci sítě Pokud bude fire aktivní, pošle se 1 na všechny výstupy a tak dojde k přechodu
6
Výsledky syntézy BlokFunc. Gen FGFunc. Gen HDFF exchange(2,2)100 exchange(2,5)110 state(2,2,4)1034 state(3,2,4)1124 state(4,2,4)1754 state(2,3,4)1024 Použit nástroj Leonardo Spectrum Počet dff závisí na šířce registru uvnitř
7
Testovací síť Přesný přepis sítě pomocí component Postupné očíslování přechodů a stavů, propojovací vodiče označeny podle koncových prvků Nástroj Xillinx Foundation měl potíže se syntézou kvůli velkému počtu generic proměnných
8
Generátor náhodných čísel Náhodné číslo je generováno 16bitovým polynomem V okamžiku, kdy je potřeba nová volba se přenese hodnota do čítače, a ten provede „rozpočítání“ mezi aktivní vodiče Volba trvá proměnný počet taktů K dispozici je i behaviorální model, kde volba trvá jeden takt Mimo obvyklé porty obsahuje i port clk_en na zpoždění hodin
9
Top level návrh fire[1:5] clk_en save_LED set =0 slow ready[1:5] test_pn selector LED_decoder LED_ctrl[6:0] slow – zpomalující čítač selector – random generator LED-decoder – výstup na LED test_pn - vlastní síť
10
Průběh výpočtu clk clk_en save_LED slow Naplnění čítače 00 Výpočet je zpožděnVýpočet probíhá
11
Závěr Vytvořili jsme funkční implementaci Petriho sítě vhodnou pro překlad Tuto síť jsme implementovali v pokusné aplikaci Další předpokládaná práce je tvorba překladače
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.