Pasaulinis apibrėžia VHDL

P

pastro

Guest
Hi all, Aš dirbu su VHDL firmware projektas, kuriame dalyvauja apie FPGA krūva. Dauguma FPGA yra panašios programinės įrangos, tik tokie dalykai kaip savo ID keičiasi iš FPGA į FPGA. Aš noriu sukurti VHDL failo konfigūracijos duomenis, kur visi konstantos specifinių FPGA yra išvardytos, o tada jau kai "įtraukti" pareiškimą rūšiavimo nuoroda kas VHDL moduliu konstantas. Kas yra tinkamas būdas tai padaryti? Ačiū!
 
Jūs galite pastatyti visus atitinkamus konstantų paketas pvz., "DEFS" ir importuoti jį į visas projektavimo organizacijos, kuri juo remiasi.
Code:
 paketas DEFS yra pastovus MAJOR_VERSION: integer: = 0; konstanta MINOR_VERSION: integer: = 16; - pabaigoje paketas DEFS; Projektavimo failus SKAITYKLA darbą; NAUDOTI work.defs.all;
Tikrasis vardas DEFS failas gali skirtis, taip pat galite įgyvendinti bendrojo apibrėžia hierarchija ir tikslinės, specifinės apibrėžtys.
 
Atkreipkite dėmesį, kad tai pareikalaus re-compile/synth/PAR už kiekvieną lustą kurio unikalus duomenų srauto per lustą. Jei prietaisai yra faktiškai identiški, išskyrus keletą parametrų, vienas sprendimas galėtų būti leisti šių parametrų bus pakrauti * po konfigūracija ir energijos ant naujo, bet prieš lustas neturi jokios realios darbą. * Įkelta: kai vadovas CPU su rašyti sąsaja viena mikroschema. ar kiekvienas lustas turi logika traukti config iš config eeprom. arba kitu būdu.
 
Jei prietaisai yra faktiškai identiški, išskyrus keletą parametrų, vienas sprendimas galėtų būti leisti šių parametrų bus pakrauti * po konfigūracija ir energijos ant naujo, bet prieš lustas neturi jokios realios darbą.
Runtime konfigūracija yra žinoma alternatyva, ir, mano nuomone, jis neturėtų būti apribotas iki krovimo parametrai "prieš lustas neturi jokios realios darbas". Tačiau be konfigūracijos registrų važtaraščius, jie gali sukelti daug didesnę logika elementas ir maršruto išteklių reikalavimą. Labiausiai svarbus privalumas, pirmiau taupymo rengimo metu yra supaprastinti programinės įrangos variantą sąrašą.
 
Taip pat yra tuo atveju, kai programinė įranga yra sukurta nepriklausomai nuo programinės įrangos ir ji naudoja versija registruotis patikrinkite suderinamumą arba pamatyti, kurios funkcijos yra prieinamos.
 
Kažkas mažai pridėtines gali būti laikyti visų galimų lustai parametrai "krūva" į bitų failą kaip masyvo (-ai). Tada naudokite keletą kitaip nepanaudoti I / O pins, kad statiškai kodas ", kuris lusto / funkcija / ID aš esu?" Tada jūsų parametrai: = PARAM_ARRAY (to_unsigned (IdPins (5 downto 0));
 

Welcome to EDABoard.com

Sponsor

Back
Top