1 / 11

Hardwarová implementace Petriho sítí

Hardwarová implementace Petriho sítí. Vlastní HW implementace a syntéza. 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.

Download Presentation

Hardwarová implementace Petriho sítí

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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. Jeden stav Petriho sítě, blok pn_state in_width input_net output_net out_width res output_wr clk • 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

  5. Přechod Petriho sítě, blok pn_exchange • 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 input_width input_net ready input_wr fire output_net output_width

  6. Výsledky syntézy • 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 selector • slow – zpomalující čítač • selector – random generator • LED-decoder – výstup na LED • test_pn - vlastní síť slow clk_en =0 set save_LED LED_ctrl[6:0] ready[1:5] fire[1:5] test_pn LED_decoder

  10. Průběh výpočtu clk save_LED Naplnění čítače slow 0 0 clk_en Výpočet probíhá Výpočet je zpožděn

  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

More Related